on xenial help sign in
Better looking application scopes for wide screens

Removes the maximum number of columns as discussed with Design it doesn't make sense and made the cards a bit wider Approved by: Michael Zanetti, Michael Terry

commit59205c1eeecf261a2ea4897d3ed6dd03406a82e2 authorAlbert Astals Cid <albert.astals@canonical.com> dateFri 29 Jan 2016, 11:52 (11 years ago) parent42d84efc81c82e
6 files changed+10−46
qml/Components/ResponsiveGridView.qml+2−4 qml/Dash/CardGrid.qml+1 qml/Dash/GenericScopeView.qml+2−1 tests/mocks/Unity/fake_categories.cpp+1−1 tests/qmltests/Components/tst_ResponsiveGridView.qml−36 tests/qmltests/Dash/tst_GenericScopeView.qml+4−4
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+1
@@ -26,6 +26,7 @@ DashRenderer {
2626 }
2727 property string artShapeStyle: "inset";
2828 property string backgroundShapeStyle: "inset";
29+ property alias minimumHorizontalSpacing: grid.minimumHorizontalSpacing
2930
3031 expandedHeight: grid.totalContentHeight
3132 collapsedHeight: Math.min(grid.contentHeightForRows(collapsedRows, grid.cellHeight), expandedHeight)
qml/Dash/GenericScopeView.qml+2−1
@@ -365,7 +365,8 @@ FocusScope {
365365 // Yeah, hackish :/
366366 if (scopeView.width > units.gu(45)) {
367367 if (scopeView.width >= units.gu(70)) {
368− cardTool.cardWidth = units.gu(9);
368+ cardTool.cardWidth = units.gu(11);
369+ item.minimumHorizontalSpacing = units.gu(5)
369370 } else {
370371 cardTool.cardWidth = units.gu(10);
371372 }
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+4−4
@@ -239,7 +239,7 @@ Item {
239239
240240 openPreview(4, 0);
241241
242− compare(testCase.subPageLoader.count, 12, "There should only be 12 items in preview.");
242+ compare(testCase.subPageLoader.count, 16, "There should only be 16 items in preview.");
243243
244244 closePreview();
245245 }
@@ -414,7 +414,7 @@ Item {
414414 var previewListViewList = findChild(subPageLoader.item, "listView");
415415
416416 // flick to the next previews
417− tryCompare(testCase.subPageLoader, "count", 15);
417+ tryCompare(testCase.subPageLoader, "count", 25);
418418 for (var i = 1; i < testCase.subPageLoader.count; ++i) {
419419 mouseFlick(testCase.subPageLoader.item, testCase.subPageLoader.width - units.gu(1),
420420 testCase.subPageLoader.height / 2,
@@ -488,7 +488,7 @@ Item {
488488 mockScope.setName("Mock Scope");
489489 mockScope.categories.setCount(2);
490490 mockScope.categories.resultModel(0).setResultCount(50);
491− mockScope.categories.resultModel(1).setResultCount(15);
491+ mockScope.categories.resultModel(1).setResultCount(25);
492492 mockScope.categories.setLayout(0, "grid");
493493 mockScope.categories.setLayout(1, "grid");
494494 mockScope.categories.setHeaderLink(0, "");
@@ -530,7 +530,7 @@ Item {
530530 mockScope.setId("mockScope");
531531 mockScope.setName("Mock Scope");
532532 mockScope.categories.setCount(2);
533− mockScope.categories.resultModel(0).setResultCount(15);
533+ mockScope.categories.resultModel(0).setResultCount(25);
534534 mockScope.categories.resultModel(1).setResultCount(50);
535535 mockScope.categories.setLayout(0, "grid");
536536 mockScope.categories.setLayout(1, "grid");