on xenial help sign in
new solution
36fd342Michael Zanetti
Dash/DashContent.qml+2−7
@@ -64,13 +64,8 @@ Item {
64 }
64 }
65 set_current_index = undefined;
65 set_current_index = undefined;
66
66
67− if (dashContentList.count > index) {
67+ if (dashContentList.count > index)
68−
68+ {
69− // collapse any currently shown preview
70− if (dashContentList.currentItem && dashContentList.currentItem.item.previewShown) {
71− dashContentList.currentItem.item.previewShown = false;
72− }
73−
74 dashContentList.currentIndex = index
69 dashContentList.currentIndex = index
75
70
76 if (reset) {
71 if (reset) {
Dash/GenericScopeView.qml+3−1
@@ -21,10 +21,11 @@ import "../Components/ListItems" as ListItems
21
21
22ScopeView {
22ScopeView {
23 id: scopeView
23 id: scopeView
24− property alias previewShown: previewLoader.open
24+ readonly property alias previewShown: previewLoader.onScreen
25
25
26 onIsCurrentChanged: {
26 onIsCurrentChanged: {
27 pageHeader.resetSearch();
27 pageHeader.resetSearch();
28+ previewLoader.open = false;
28 }
29 }
29
30
30 onMovementStarted: categoryView.showHeader()
31 onMovementStarted: categoryView.showHeader()
@@ -246,6 +247,7 @@ ScopeView {
246 }
247 }
247
248
248 Loader {
249 Loader {
250+ objectName: "previewLoader"
249 id: previewLoader
251 id: previewLoader
250 property var previewData
252 property var previewData
251 height: effect.bottomGapPx - effect.topGapPx
253 height: effect.bottomGapPx - effect.topGapPx
tests/qmltests/Dash/tst_DashContent.qml−18
@@ -178,24 +178,6 @@ Item {
178 compare(dashContent.currentIndex, currentScopeIndex, "Scope should not change if changing to greater index than count");
178 compare(dashContent.currentIndex, currentScopeIndex, "Scope should not change if changing to greater index than count");
179 }
179 }
180
180
181− function test_set_current_scope_index_closes_preview() {
182− var dashContentList = findChild(dashContent, "dashContentList");
183− tryCompare(dashContentList, "count", 5);
184− dashContentList.currentIndex = 0;
185− tryCompare(dashContentList.currentItem, "progress", 1);
186− var itemBeforeSwitching = dashContentList.currentItem;
187−
188− waitForRendering(itemBeforeSwitching)
189−
190− itemBeforeSwitching.item.previewShown = true;
191−
192− var next_index = 1;
193−
194− dashContent.setCurrentScopeAtIndex(next_index, true, false);
195− tryCompare(dashContent, "currentIndex", next_index);
196− compare(itemBeforeSwitching.item.previewShown, false);
197− }
198−
199 function get_current_item_object_name() {
181 function get_current_item_object_name() {
200 var dashContentList = findChild(dashContent, "dashContentList");
182 var dashContentList = findChild(dashContent, "dashContentList");
201 verify(dashContentList != undefined);
183 verify(dashContentList != undefined);
tests/qmltests/Dash/tst_GenericScopeView.qml+3
@@ -44,10 +44,13 @@ Item {
44
44
45 function test_isCurrent() {
45 function test_isCurrent() {
46 var pageHeader = findChild(genericScopeView, "pageHeader");
46 var pageHeader = findChild(genericScopeView, "pageHeader");
47+ var previewLoader = findChild(genericScopeView, "previewLoader");
47 genericScopeView.isCurrent = true
48 genericScopeView.isCurrent = true
48 pageHeader.searchQuery = "test"
49 pageHeader.searchQuery = "test"
50+ previewLoader.open = true
49 genericScopeView.isCurrent = false
51 genericScopeView.isCurrent = false
50 tryCompare(pageHeader, "searchQuery", "")
52 tryCompare(pageHeader, "searchQuery", "")
53+ tryCompare(genericScopeView, "previewShown", false);
51 }
54 }
52 }
55 }
53 }
56 }