on xenial help sign in
Merged albert branch
commit5d59c1718d85b04a0ba2ef8d93bdbdd23824e7b9 authorAndrea Cimitan <andrea.cimitan@gmail.com> dateFri 22 Jan 2016, 12:18 (11 years ago) parent2892641c81c82e
6 files changed+15−48
qml/Components/ResponsiveGridView.qml+2−4 qml/Dash/CardGrid.qml+3−1 qml/Dash/GenericScopeView.qml+4−1 tests/mocks/Unity/fake_categories.cpp+1−1 tests/qmltests/Components/tst_ResponsiveGridView.qml−36 tests/qmltests/Dash/tst_GenericScopeView.qml+5−5
qml/Components/ResponsiveGridView.qml+2−4
@@ -18,12 +18,10 @@ import QtQuick 2.4
1818import Ubuntu.Components 1.3
1919
2020/*
21− Essentially a GridView where you can specify the maximum number of columns it can have.
21+ Essentially a GridView
2222 */
2323Item {
2424 property int minimumHorizontalSpacing: units.gu(0.5)
25− // property int minimumNumberOfColumns: 2 // FIXME: not implemented
26− property int maximumNumberOfColumns: 6
2725 readonly property int columns: gridView.columns
2826 property alias verticalSpacing: gridView.verticalSpacing
2927 readonly property alias margins: gridView.margin
@@ -81,7 +79,7 @@ Item {
8179 }
8280
8381 property real allocatableHorizontalSpace: parent.width - columns * delegateWidth
84− property int columns: Math.min(columnsForSpacing(minimumHorizontalSpacing), maximumNumberOfColumns)
82+ property int columns: columnsForSpacing(minimumHorizontalSpacing)
8583 property real horizontalSpacing: spacingForColumns(columns)
8684 property real verticalSpacing: horizontalSpacing
8785 property int margin: allocatableHorizontalSpace - columns * horizontalSpacing
qml/Dash/CardGrid.qml+3−1
@@ -20,12 +20,14 @@ import "../Components"
2020DashRenderer {
2121 id: root
2222
23+ readonly property real defaultMinimumHorizontalSpacing: units.gu(1)
2324 readonly property int collapsedRows: {
2425 if (!cardTool || !cardTool.template || typeof cardTool.template["collapsed-rows"] != "number") return 2;
2526 return cardTool.template["collapsed-rows"];
2627 }
2728 property string artShapeStyle: "inset";
2829 property string backgroundShapeStyle: "inset";
30+ property alias minimumHorizontalSpacing: grid.minimumHorizontalSpacing
2931
3032 expandedHeight: grid.totalContentHeight
3133 collapsedHeight: Math.min(grid.contentHeightForRows(collapsedRows, grid.cellHeight), expandedHeight)
@@ -45,7 +47,7 @@ DashRenderer {
4547 ResponsiveGridView {
4648 id: grid
4749 anchors.fill: parent
48− minimumHorizontalSpacing: units.gu(1)
50+ minimumHorizontalSpacing: root.defaultMinimumHorizontalSpacing
4951 delegateWidth: cardTool.cardWidth
5052 delegateHeight: cardTool.cardHeight
5153 verticalSpacing: units.gu(1)
qml/Dash/GenericScopeView.qml+4−1
@@ -385,12 +385,15 @@ FocusScope {
385385 // Yeah, hackish :/
386386 if (scopeView.width > units.gu(45)) {
387387 if (scopeView.width >= units.gu(70)) {
388− cardTool.cardWidth = units.gu(9);
388+ cardTool.cardWidth = units.gu(11);
389+ item.minimumHorizontalSpacing = units.gu(5);
390+ return;
389391 } else {
390392 cardTool.cardWidth = units.gu(10);
391393 }
392394 }
393395 cardTool.artShapeSize = Qt.size(units.gu(8), units.gu(7.5));
396+ item.minimumHorizontalSpacing = item.defaultMinimumHorizontalSpacing;
394397 }
395398 }
396399
tests/mocks/Unity/fake_categories.cpp+1−1
@@ -141,7 +141,7 @@ ResultsModel* Categories::resultModel(int row) const
141141 ResultsModel *result = m_resultsModels[row];
142142 if (!result) {
143143 Categories *that = const_cast<Categories*>(this);
144− result = new ResultsModel(15, row, that);
144+ result = new ResultsModel(25, row, that);
145145 m_resultsModels[row] = result;
146146 }
147147 return result;
tests/qmltests/Components/tst_ResponsiveGridView.qml−36
@@ -32,12 +32,6 @@ Item {
3232 height: parent.height
3333 anchors.top: parent.top
3434 anchors.right: parent.right
35− ListItem.ValueSelector {
36− id: maxColumnsSelector
37− text: "maximumNumberOfColumns"
38− values: [2,4,8,13,1000]
39− selectedIndex: 1
40− }
4135 ListItem.ValueSelector {
4236 id: minHSpacingSelector
4337 text: "minHorizontalSpacing"
@@ -86,8 +80,6 @@ Item {
8680 minimumHorizontalSpacing:
8781 minHSpacingSelector.values[minHSpacingSelector.selectedIndex]
8882 verticalSpacing: units.gu(2)
89− maximumNumberOfColumns:
90− maxColumnsSelector.values[maxColumnsSelector.selectedIndex]
9183 delegateWidth: units.gu(6)
9284 delegateHeight: units.gu(6)
9385
@@ -123,31 +115,6 @@ Item {
123115 name: "ResponsiveGridView"
124116 when: windowShown
125117
126− function test_maximumNumberOfColumns_data() {
127− var data = new Array()
128−
129− data.push({selectedIndex: 0, maxColumnCount:2, columnCount: 2})
130− data.push({selectedIndex: 1, maxColumnCount:4, columnCount: 4})
131− data.push({selectedIndex: 2, maxColumnCount:8, columnCount: 8})
132− data.push({selectedIndex: 4, maxColumnCount:1000, columnCount: 13})
133−
134− return data
135− }
136−
137− /* Change ResponsiveGridView's maximumNumberOfColumns property and check
138− that the resulting number of columns matches expectations */
139− function test_maximumNumberOfColumns(data) {
140− minHSpacingSelector.selectedIndex = 0
141−
142− // sanity checks
143− compare(maxColumnsSelector.values[data.selectedIndex], data.maxColumnCount)
144− compare(minHSpacingSelector.values[0], 0)
145−
146− maxColumnsSelector.selectedIndex = data.selectedIndex
147− tryCompareFunction(countGridDelegatesOnFirstRow, data.columnCount);
148− compare(grid.columns, data.columnCount)
149− }
150−
151118 function test_minimumHorizontalSpacing_data() {
152119 var data = new Array()
153120
@@ -162,10 +129,7 @@ Item {
162129 /* Change ResponsiveGridView's minimumHorizontalSpacing property and check
163130 that the resulting number of columns matches expectations */
164131 function test_minimumHorizontalSpacing(data) {
165− maxColumnsSelector.selectedIndex = 4
166−
167132 // sanity checks
168− compare(maxColumnsSelector.values[4], 1000)
169133 compare(minHSpacingSelector.values[data.selectedIndex], data.minHSpacing)
170134
171135 minHSpacingSelector.selectedIndex = data.selectedIndex
tests/qmltests/Dash/tst_GenericScopeView.qml+5−5
@@ -238,7 +238,7 @@ Item {
238238
239239 openPreview(4, 0);
240240
241− compare(testCase.subPageLoader.count, 12, "There should only be 12 items in preview.");
241+ compare(testCase.subPageLoader.count, 16, "There should only be 16 items in preview.");
242242
243243 closePreview();
244244 }
@@ -413,7 +413,7 @@ Item {
413413 var previewListViewList = findChild(subPageLoader.item, "listView");
414414
415415 // flick to the next previews
416− tryCompare(testCase.subPageLoader, "count", 15);
416+ tryCompare(testCase.subPageLoader, "count", 25);
417417 for (var i = 1; i < testCase.subPageLoader.count; ++i) {
418418 mouseFlick(testCase.subPageLoader.item, testCase.subPageLoader.width - units.gu(1),
419419 testCase.subPageLoader.height / 2,
@@ -487,7 +487,7 @@ Item {
487487 mockScope.setName("Mock Scope");
488488 mockScope.categories.setCount(2);
489489 mockScope.categories.resultModel(0).setResultCount(50);
490− mockScope.categories.resultModel(1).setResultCount(15);
490+ mockScope.categories.resultModel(1).setResultCount(25);
491491 mockScope.categories.setLayout(0, "grid");
492492 mockScope.categories.setLayout(1, "grid");
493493 mockScope.categories.setHeaderLink(0, "");
@@ -529,7 +529,7 @@ Item {
529529 mockScope.setId("mockScope");
530530 mockScope.setName("Mock Scope");
531531 mockScope.categories.setCount(2);
532− mockScope.categories.resultModel(0).setResultCount(15);
532+ mockScope.categories.resultModel(0).setResultCount(25);
533533 mockScope.categories.resultModel(1).setResultCount(50);
534534 mockScope.categories.setLayout(0, "grid");
535535 mockScope.categories.setLayout(1, "grid");
@@ -679,7 +679,7 @@ Item {
679679
680680 var cardTool = findChild(categorypredefined, "cardTool");
681681
682− compare(cardTool.cardWidth, units.gu(9));
682+ compare(cardTool.cardWidth, units.gu(11));
683683 shell.width = units.gu(46);
684684 waitForRendering(genericScopeView);
685685 compare(cardTool.cardWidth, units.gu(10));