on xenial help sign in
Enable SearchHistoryModel to dynamicaly set search history size
commitdeb050344417704d9c86a921a6f1ec27d3665f9d authorJosh Arenson <joshua.arenson@canonical.com> dateMon 25 Apr 2016, 14:13 (11 years ago) parent9f5b716
2 files changed+37−2
qml/Components/SearchHistoryModel/SearchHistoryModel.qml+5−2 tests/qmltests/Dash/tst_DashPageHeader.qml+32
qml/Components/SearchHistoryModel/SearchHistoryModel.qml+5−2
@@ -20,6 +20,9 @@ import QtQuick 2.4
2020// TODO sanitize input, move to persistent storage
2121
2222ListModel {
23+
24+ property int searchesToRemember: 3
25+
2326 function addQuery(newQuery) {
2427 // strip whitespaces
2528 newQuery = newQuery.replace(/^\s+|\s+$/g, '');
@@ -34,9 +37,9 @@ ListModel {
3437 }
3538 // add a new entry
3639 insert(0, { "query": newQuery })
37− if (count > 3) {
40+ if (count > searchesToRemember) {
3841 // remove entries if there's more than three
39− remove(3)
42+ remove(searchesToRemember)
4043 }
4144 }
4245}
tests/qmltests/Dash/tst_DashPageHeader.qml+32
@@ -320,6 +320,38 @@ Item {
320320 }
321321 }
322322
323+ Row {
324+ spacing: units.gu(1)
325+ anchors {
326+ left: parent.left
327+ right: parent.right
328+ }
329+
330+ Label {
331+ text: "Searches to remember: " + pageHeader.searchHistory.searchesToRemember
332+ anchors.verticalCenter: parent.verticalCenter
333+ }
334+ }
335+
336+ Row {
337+ id: sliderRow
338+ spacing: units.gu(1)
339+ anchors {
340+ left: parent.left
341+ right: parent.right
342+ margins: units.gu(1)
343+ }
344+
345+ Slider {
346+ id: slider
347+ maximumValue: 20
348+ minimumValue: 1
349+ width: units.gu(40)
350+ value: pageHeader.searchHistory.searchesToRemember
351+ onValueChanged: pageHeader.searchHistory.searchesToRemember = Math.round(value)
352+ }
353+ }
354+
323355 Row {
324356 spacing: units.gu(1)
325357 anchors {