on xenial help sign in
More changes to review
446556aAndrea Cimitan
qml/Dash/GenericScopeView.qml+9−4
@@ -106,7 +106,7 @@ FocusScope {
106
106
107 onIsCurrentChanged: {
107 onIsCurrentChanged: {
108 if (pageHeaderLoader.item && showPageHeader) {
108 if (pageHeaderLoader.item && showPageHeader) {
109− pageHeaderLoader.item.resetSearch();
109+ pageHeaderLoader.item.resetSearch();
110 }
110 }
111 subPageLoader.closeSubPage();
111 subPageLoader.closeSubPage();
112 }
112 }
@@ -439,6 +439,7 @@ FocusScope {
439 }
439 }
440
440
441 onBackClicked: scopeView.backClicked()
441 onBackClicked: scopeView.backClicked()
442+
442 onSettingsClicked: subPageLoader.openSubPage("settings")
443 onSettingsClicked: subPageLoader.openSubPage("settings")
443 }
444 }
444 }
445 }
@@ -473,13 +474,14 @@ FocusScope {
473
474
474 function openSubPage(page) {
475 function openSubPage(page) {
475 subPage = page;
476 subPage = page;
477+ open = true;
476 }
478 }
477
479
478 function closeSubPage() {
480 function closeSubPage() {
479 open = false;
481 open = false;
480 }
482 }
481
483
482− source: subPage && (subPage == "preview" ? "PreviewListView.qml" : "ScopeSettingsPage.qml") || ""
484+ source: visible && subPage && (subPage == "preview" ? "PreviewListView.qml" : "ScopeSettingsPage.qml") || ""
483
485
484 onLoaded: {
486 onLoaded: {
485 if (status === Loader.Ready) {
487 if (status === Loader.Ready) {
@@ -490,13 +492,16 @@ FocusScope {
490 item.initialIndex = Qt.binding(function() { return subPageLoader.initialIndex } )
492 item.initialIndex = Qt.binding(function() { return subPageLoader.initialIndex } )
491 item.model = Qt.binding(function() { return subPageLoader.model } )
493 item.model = Qt.binding(function() { return subPageLoader.model } )
492 }
494 }
493− open = true;
494 }
495 }
495 }
496 }
496
497
497 onOpenChanged: pageHeaderLoader.item.unfocus();
498 onOpenChanged: pageHeaderLoader.item.unfocus();
498
499
499− onVisibleChanged: if (!visible) subPage = "";
500+ onVisibleChanged: {
501+ if (!visible) {
502+ subPage = "";
503+ }
504+ }
500
505
501 Connections {
506 Connections {
502 target: subPageLoader.item
507 target: subPageLoader.item
qml/Dash/PreviewListView.qml+4−2
@@ -82,8 +82,10 @@ Item {
82 }
82 }
83
83
84 onCountChanged: {
84 onCountChanged: {
85+ if (count > 0) {
85− if (count > 0) currentIndex = initialIndex;
86+ currentIndex = initialIndex;
86− if (initialIndex >= 0) initialIndex = -1;
87+ if (initialIndex >= 0) initialIndex = -1;
88+ }
87 }
89 }
88
90
89 delegate: Previews.Preview {
91 delegate: Previews.Preview {
tests/qmltests/Dash/tst_GenericScopeView.qml+1−5
@@ -276,7 +276,6 @@ Item {
276 mouseClick(tile, tile.width / 2, tile.height / 2);
276 mouseClick(tile, tile.width / 2, tile.height / 2);
277 tryCompare(testCase.subPageLoader, "open", true);
277 tryCompare(testCase.subPageLoader, "open", true);
278 tryCompare(testCase.subPageLoader, "x", 0);
278 tryCompare(testCase.subPageLoader, "x", 0);
279− tryCompare(testCase.subPageLoader, "visible", true);
280 }
279 }
281
280
282 function closePreview() {
281 function closePreview() {
@@ -284,12 +283,10 @@ Item {
284 mouseClick(closePreviewMouseArea, units.gu(2), units.gu(2));
283 mouseClick(closePreviewMouseArea, units.gu(2), units.gu(2));
285
284
286 tryCompare(testCase.subPageLoader, "open", false);
285 tryCompare(testCase.subPageLoader, "open", false);
287− tryCompare(testCase.subPageLoader, "visible", false);
288 }
286 }
289
287
290 function test_previewOpenClose() {
288 function test_previewOpenClose() {
291 tryCompare(testCase.subPageLoader, "open", false);
289 tryCompare(testCase.subPageLoader, "open", false);
292− tryCompare(testCase.subPageLoader, "visible", false);
293
290
294 var categoryListView = findChild(genericScopeView, "categoryListView");
291 var categoryListView = findChild(genericScopeView, "categoryListView");
295 categoryListView.positionAtBeginning();
292 categoryListView.positionAtBeginning();
@@ -374,12 +371,11 @@ Item {
374
371
375 // open
372 // open
376 tryCompare(testCase.subPageLoader, "open", false);
373 tryCompare(testCase.subPageLoader, "open", false);
377− tryCompare(testCase.subPageLoader, "visible", false);
378 var settings = findChild(innerHeader, "settings_header_button");
374 var settings = findChild(innerHeader, "settings_header_button");
379 mouseClick(settings, settings.width / 2, settings.height / 2);
375 mouseClick(settings, settings.width / 2, settings.height / 2);
380 tryCompare(testCase.subPageLoader, "open", true);
376 tryCompare(testCase.subPageLoader, "open", true);
381 tryCompareFunction(function() { return ("" + subPageLoader.source).indexOf("ScopeSettingsPage.qml") != -1; }, true);
377 tryCompareFunction(function() { return ("" + subPageLoader.source).indexOf("ScopeSettingsPage.qml") != -1; }, true);
382− tryCompare(genericScopeView, "subPageShown", true);
378+ compare(genericScopeView.subPageShown, true);
383 compare(testCase.subPageLoader.subPage, "settings");
379 compare(testCase.subPageLoader.subPage, "settings");
384 tryCompare(testCase.subPageLoader, "x", 0);
380 tryCompare(testCase.subPageLoader, "x", 0);
385
381