on xenial help sign in
New design for rating review, should hide the box until you rate when you require a rating
1217ebeAndrea Cimitan
qml/Dash/Previews/PreviewRatingInput.qml+12−2
@@ -40,7 +40,7 @@ PreviewWidget {
40 switch(widgetData["visible"]) {
40 switch(widgetData["visible"]) {
41 default:
41 default:
42 case "both":
42 case "both":
43− return ratingLabelAndWidgetContainer.implicitHeight + reviewContainer.implicitHeight;
43+ return ratingLabelAndWidgetContainer.implicitHeight + (reviewContainer.visible ? reviewContainer.implicitHeight : 0);
44 case "rating":
44 case "rating":
45 return ratingLabelAndWidgetContainer.implicitHeight;
45 return ratingLabelAndWidgetContainer.implicitHeight;
46 case "review":
46 case "review":
@@ -114,7 +114,17 @@ PreviewWidget {
114 bottom: parent.bottom
114 bottom: parent.bottom
115 topMargin: ratingLabelAndWidgetContainer.visible ? reviewContainer.innerMargin : 0
115 topMargin: ratingLabelAndWidgetContainer.visible ? reviewContainer.innerMargin : 0
116 }
116 }
117+ visible: {
117− visible: widgetData["visible"] !== "rating"
118+ switch(widgetData["visible"]) {
119+ default:
120+ case "both":
121+ return widgetData["required"] === "review" || rating.value > 0;
122+ case "rating":
123+ return false;
124+ case "review":
125+ return true;
126+ }
127+ }
118
128
119 Label {
129 Label {
120 objectName: "reviewLabel"
130 objectName: "reviewLabel"
tests/qmltests/Dash/Previews/tst_PreviewRatingInput.qml+7−3
@@ -120,8 +120,11 @@ Rectangle {
120
120
121 previewRatingInput.widgetData = data.widgetData;
121 previewRatingInput.widgetData = data.widgetData;
122
122
123+ if (data.widgetData["visible"] === "both" && data.widgetData["required"] === "both")
124+ compare(reviewTextArea.visible, false);
125+
123 if (data.widgetData["visible"] !== "review") {
126 if (data.widgetData["visible"] !== "review") {
124− verify(rating.visible === true);
127+ compare(rating.visible, true);
125
128
126 rating.value = data.inputRating;
129 rating.value = data.inputRating;
127 if (data.widgetData["required"] !== "rating" ||
130 if (data.widgetData["required"] !== "rating" ||
@@ -136,7 +139,8 @@ Rectangle {
136 }
139 }
137
140
138 if (data.widgetData["visible"] !== "rating") {
141 if (data.widgetData["visible"] !== "rating") {
142+ if (data.widgetData["visible"] === "review" || data.widgetData["required"] === "review")
139− verify(reviewTextArea.visible === true);
143+ compare(reviewTextArea.visible, true);
140
144
141 reviewTextArea.text = data.inputText;
145 reviewTextArea.text = data.inputText;
142 mouseClick(submitButton);
146 mouseClick(submitButton);
@@ -164,7 +168,7 @@ Rectangle {
164 }
168 }
165 }
169 }
166 } else {
170 } else {
167− verify(reviewTextArea.visible === false);
171+ compare(reviewTextArea.visible, false);
168 }
172 }
169
173
170 compare(spy.count === 1, data.emitted);
174 compare(spy.count === 1, data.emitted);