on xenial help sign in
PageHeader: Unfocus search field when search entry is selected
687e62fAlbert Astals
qml/Components/PageHeader.qml+2
@@ -306,6 +306,7 @@ Item {
306
306
307 Repeater {
307 Repeater {
308 id: recentSearches
308 id: recentSearches
309+ objectName: "recentSearches"
309 model: searchHistory
310 model: searchHistory
310
311
311 delegate: Standard {
312 delegate: Standard {
@@ -315,6 +316,7 @@ Item {
315 searchHistory.addQuery(text);
316 searchHistory.addQuery(text);
316 searchTextField.text = text;
317 searchTextField.text = text;
317 closePopup();
318 closePopup();
319+ unfocus();
318 }
320 }
319 }
321 }
320 }
322 }
tests/qmltests/Components/tst_PageHeader.qml+10
@@ -173,6 +173,16 @@ Item {
173 tryCompareFunction(function() { return headerContainer.popover !== null; }, true);
173 tryCompareFunction(function() { return headerContainer.popover !== null; }, true);
174
174
175 tryCompare(headerContainer.popover, "visible", true);
175 tryCompare(headerContainer.popover, "visible", true);
176+
177+ var searchTextField = findChild(pageHeader, "searchTextField");
178+ compare(searchTextField.focus, true);
179+
180+ var recentSearches = findChild(headerContainer.popover, "recentSearches");
181+ mouseClick(recentSearches.itemAt(0), 0, 0);
182+
183+ compare(pageHeader.searchQuery, "Search2");
184+ tryCompareFunction(function() { return headerContainer.popover === null; }, true);
185+ compare(searchTextField.focus, false);
176 }
186 }
177
187
178 function test_popup_closing_data() {
188 function test_popup_closing_data() {