Merge lp:~jonas-drange/ubuntu-system-settings/slotslayouts into lp:ubuntu-system-settings

Proposed by Jonas G. Drange
Status: Merged
Merged at revision: 1678
Proposed branch: lp:~jonas-drange/ubuntu-system-settings/slotslayouts
Merge into: lp:ubuntu-system-settings
Prerequisite: lp:~phablet-team/ubuntu-system-settings/settings-listitems
Diff against target: 4348 lines (+1210/-1134)
60 files modified
plugins/about/EntryComponent.qml (+3/-5)
plugins/about/PageComponent.qml (+50/-54)
plugins/about/settings-about.svg (+136/-35)
plugins/battery/PageComponent.qml (+63/-51)
plugins/bluetooth/DevicePage.qml (+24/-46)
plugins/bluetooth/PageComponent.qml (+55/-93)
plugins/brightness/PageComponent.qml (+10/-10)
plugins/cellular/Components/MultiSim.qml (+8/-12)
plugins/cellular/Components/Sim.qml (+5/-1)
plugins/cellular/Components/SingleSim.qml (+18/-23)
plugins/cellular/PageCarrierAndApn.qml (+6/-6)
plugins/cellular/PageCarriersAndApns.qml (+35/-52)
plugins/cellular/PageChooseApn.qml (+18/-49)
plugins/cellular/PageComponent.qml (+0/-1)
plugins/flight-mode/EntryComponent.qml (+6/-6)
plugins/flight-mode/flight-mode.settings (+1/-1)
plugins/hotspot/HotspotSetup.qml (+18/-43)
plugins/hotspot/PageComponent.qml (+6/-5)
plugins/language/KeyboardLayoutItem.qml (+21/-30)
plugins/language/PageComponent.qml (+42/-51)
plugins/language/SpellChecking.qml (+3/-3)
plugins/language/SubsetView.qml (+5/-4)
plugins/language/settings-language.svg (+112/-75)
plugins/orientation-lock/EntryComponent.qml (+7/-7)
plugins/orientation-lock/orientation-lock.settings (+1/-1)
plugins/phone/CallForwardItem.qml (+10/-8)
plugins/phone/CallForwarding.qml (+1/-2)
plugins/phone/CallWaiting.qml (+30/-43)
plugins/phone/MultiSim.qml (+5/-12)
plugins/phone/NoSims.qml (+5/-11)
plugins/phone/PageComponent.qml (+4/-6)
plugins/phone/ServiceInfo.qml (+6/-5)
plugins/phone/Services.qml (+3/-4)
plugins/phone/SingleSim.qml (+5/-12)
plugins/reset/EntryComponent.qml (+2/-4)
plugins/reset/PageComponent.qml (+54/-19)
plugins/sound/PageComponent.qml (+36/-34)
plugins/time-date/ChooseTimeZone.qml (+3/-2)
plugins/time-date/PageComponent.qml (+8/-8)
plugins/time-date/Scroller.qml (+6/-7)
plugins/time-date/TimePicker.qml (+0/-1)
plugins/time-date/settings-time-date.svg (+139/-55)
plugins/wifi/AccessPoint.qml (+11/-22)
plugins/wifi/DivMenuItem.qml (+3/-3)
plugins/wifi/FramedMenuItem.qml (+7/-3)
plugins/wifi/MenuItemFactory.qml (+5/-5)
plugins/wifi/NetworkDetails.qml (+25/-28)
plugins/wifi/NetworkDetailsBrief.qml (+17/-16)
plugins/wifi/PageComponent.qml (+8/-12)
plugins/wifi/PreviousNetworks.qml (+2/-3)
plugins/wifi/SectionMenuItem.qml (+14/-29)
plugins/wifi/StandardMenuItem.qml (+5/-27)
plugins/wifi/SwitchMenuItem.qml (+1/-1)
src/CMakeLists.txt (+1/-1)
src/SystemSettings/qmldir (+1/-0)
src/qml/CategorySection.qml (+13/-24)
src/qml/EntryComponent.qml (+5/-49)
src/qml/MainWindow.qml (+19/-6)
src/ui.qrc (+1/-1)
tests/autopilot/ubuntu_system_settings/tests/indicatornetwork.py (+102/-7)
To merge this branch: bzr merge lp:~jonas-drange/ubuntu-system-settings/slotslayouts
Reviewer Review Type Date Requested Status
PS Jenkins bot continuous-integration Needs Fixing
Ubuntu Touch System Settings Pending
Review via email: mp+278323@code.launchpad.net

This proposal supersedes a proposal from 2015-11-18.

Commit message

migrating to slotslayout and new designs

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote : Posted in a previous version of this proposal
review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote : Posted in a previous version of this proposal
review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote : Posted in a previous version of this proposal
review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
1581. By Jonas G. Drange

merge latest from listitems

1582. By Jonas G. Drange

change to find instead of search icon, and swap FM with orientation lock

1583. By Jonas G. Drange

change icons that we have

1584. By Jonas G. Drange

start working on battery panel

1585. By Jonas G. Drange

undoing drawaxes change

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'plugins/about/EntryComponent.qml'
--- plugins/about/EntryComponent.qml 2015-08-10 13:31:45 +0000
+++ plugins/about/EntryComponent.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>6 * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
7 *7 *
@@ -19,15 +19,13 @@
19 */19 */
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem
2424
25ListItem.Standard {25SettingsListItems.IconProgression {
26 id: root26 id: root
2727
28 objectName: "entryComponent-about"28 objectName: "entryComponent-about"
29 iconSource: Qt.resolvedUrl(model.icon)29 iconSource: Qt.resolvedUrl(model.icon)
30 iconFrame: false
31 text: i18n.tr(model.displayName)30 text: i18n.tr(model.displayName)
32 progression: true
33}31}
3432
=== modified file 'plugins/about/PageComponent.qml'
--- plugins/about/PageComponent.qml 2015-10-29 15:48:06 +0000
+++ plugins/about/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -21,8 +21,9 @@
21import QtQuick 2.421import QtQuick 2.4
22import QtSystemInfo 5.022import QtSystemInfo 5.0
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.ListItems 1.3 as ListItem26import Ubuntu.Components.ListItems 1.3 as ListItems
26import Ubuntu.SystemSettings.StorageAbout 1.027import Ubuntu.SystemSettings.StorageAbout 1.0
27import Ubuntu.SystemSettings.Update 1.028import Ubuntu.SystemSettings.Update 1.0
28import MeeGo.QOfono 0.229import MeeGo.QOfono 0.2
@@ -69,31 +70,30 @@
69 anchors.left: parent.left70 anchors.left: parent.left
70 anchors.right: parent.right71 anchors.right: parent.right
7172
72 ListItem.Empty {73 Column {
73 height: ubuntuLabel.height + deviceLabel.height + units.gu(6)74 anchors.left: parent.left
7475 anchors.right: parent.right
75 Column {76 Label {
76 anchors.left: parent.left77 id: ubuntuLabel
77 anchors.right: parent.right78 anchors {
78 anchors.centerIn: parent79 left: parent.left
79 spacing: units.gu(2)80 right: parent.right
80 Label {81 }
81 id: ubuntuLabel82 height: contentHeight + units.gu(2)
82 anchors.horizontalCenter: parent.horizontalCenter83 horizontalAlignment: Text.AlignHCenter
83 text: ""84 verticalAlignment: Text.AlignVCenter
84 fontSize: "x-large"85 text: ""
85 }86 fontSize: "x-large"
86 Label {87 }
87 id: deviceLabel88 Label {
88 objectName: "deviceLabel"89 id: deviceLabel
89 anchors.horizontalCenter: parent.horizontalCenter90 objectName: "deviceLabel"
90 text: deviceInfos.manufacturer() ? deviceInfos.manufacturer() + " " + deviceInfos.model() : backendInfos.vendorString91 anchors.horizontalCenter: parent.horizontalCenter
91 }92 text: deviceInfos.manufacturer() ? deviceInfos.manufacturer() + " " + deviceInfos.model() : backendInfos.vendorString
92 }93 }
93 highlightWhenPressed: false
94 }94 }
9595
96 ListItem.SingleValue {96 SettingsListItems.SingleValue {
97 id: serialItem97 id: serialItem
98 objectName: "serialItem"98 objectName: "serialItem"
99 text: i18n.tr("Serial")99 text: i18n.tr("Serial")
@@ -101,7 +101,7 @@
101 visible: backendInfos.serialNumber101 visible: backendInfos.serialNumber
102 }102 }
103103
104 ListItem.SingleValue {104 SettingsListItems.SingleValue {
105 objectName: "imeiItem"105 objectName: "imeiItem"
106 property string imeiNumber106 property string imeiNumber
107 imeiNumber: deviceInfos.imei(0)107 imeiNumber: deviceInfos.imei(0)
@@ -111,21 +111,21 @@
111 visible: modemsSorted.length <= 1111 visible: modemsSorted.length <= 1
112 }112 }
113113
114 ListItem.MultiValue {114 // ListItem.MultiValue {
115 text: "IMEI"115 // text: "IMEI"
116 objectName: "imeiItems"116 // objectName: "imeiItems"
117 values: {117 // values: {
118 var imeis = [];118 // var imeis = [];
119 modemsSorted.forEach(function (path, i) {119 // modemsSorted.forEach(function (path, i) {
120 var imei = deviceInfos.imei(i);120 // var imei = deviceInfos.imei(i);
121 imei ? imeis.push(imei) : imeis.push(i18n.tr("None"));121 // imei ? imeis.push(imei) : imeis.push(i18n.tr("None"));
122 });122 // });
123 return imeis;123 // return imeis;
124 }124 // }
125 visible: modemsSorted.length > 1125 // visible: modemsSorted.length > 1
126 }126 // }
127127
128 ListItem.SingleValue {128 SettingsListItems.SingleValue {
129 property string address: wlinfo.macAddress(NetworkInfo.WlanMode, 0)129 property string address: wlinfo.macAddress(NetworkInfo.WlanMode, 0)
130 text: i18n.tr("Wi-Fi address")130 text: i18n.tr("Wi-Fi address")
131 value: address ? address.toUpperCase() : ""131 value: address ? address.toUpperCase() : ""
@@ -133,7 +133,7 @@
133 showDivider: bthwaddr.visible133 showDivider: bthwaddr.visible
134 }134 }
135135
136 ListItem.SingleValue {136 SettingsListItems.SingleValue {
137 id: bthwaddr137 id: bthwaddr
138 text: i18n.tr("Bluetooth address")138 text: i18n.tr("Bluetooth address")
139 value: network.bluetoothMacAddress139 value: network.bluetoothMacAddress
@@ -141,15 +141,14 @@
141 showDivider: false141 showDivider: false
142 }142 }
143143
144 ListItem.Divider {}144 ListItems.Divider {}
145145
146 ListItem.SingleValue {146 SettingsListItems.SingleValueProgression {
147 id: storageItem147 id: storageItem
148 objectName: "storageItem"148 objectName: "storageItem"
149 text: i18n.tr("Storage")149 text: i18n.tr("Storage")
150 /* TRANSLATORS: that's the free disk space, indicated in the most appropriate storage unit */150 /* TRANSLATORS: that's the free disk space, indicated in the most appropriate storage unit */
151 value: i18n.tr("%1 free").arg(Utilities.formatSize(backendInfos.getFreeSpace("/home")))151 value: i18n.tr("%1 free").arg(Utilities.formatSize(backendInfos.getFreeSpace("/home")))
152 progression: true
153 onClicked: pageStack.push(Qt.resolvedUrl("Storage.qml"))152 onClicked: pageStack.push(Qt.resolvedUrl("Storage.qml"))
154 }153 }
155154
@@ -158,7 +157,7 @@
158 text: i18n.tr("Software:")157 text: i18n.tr("Software:")
159 }158 }
160159
161 ListItem.SingleValue {160 SettingsListItems.SingleValueProgression {
162 property string versionIdentifier: {161 property string versionIdentifier: {
163 var num = UpdateManager.currentBuildNumber;162 var num = UpdateManager.currentBuildNumber;
164 var ota = UpdateManager.detailedVersionDetails['tag'];163 var ota = UpdateManager.detailedVersionDetails['tag'];
@@ -170,21 +169,21 @@
170 value: "Ubuntu %1%2"169 value: "Ubuntu %1%2"
171 .arg(deviceInfos.version(DeviceInfo.Os))170 .arg(deviceInfos.version(DeviceInfo.Os))
172 .arg(versionIdentifier ? " (%1)".arg(versionIdentifier) : "")171 .arg(versionIdentifier ? " (%1)".arg(versionIdentifier) : "")
173 progression: true
174 onClicked: pageStack.push(Qt.resolvedUrl("Version.qml"), {172 onClicked: pageStack.push(Qt.resolvedUrl("Version.qml"), {
175 version: versionIdentifier173 version: versionIdentifier
176 })174 })
177 }175 }
178176
179 ListItem.SingleValue {177 SettingsListItems.SingleValueProgression {
180 objectName: "lastUpdatedItem"178 objectName: "lastUpdatedItem"
181 text: i18n.tr("Last updated")179 text: i18n.tr("Last updated")
182 value: UpdateManager.lastUpdateDate && !isNaN(UpdateManager.lastUpdateDate) ?180 value: UpdateManager.lastUpdateDate && !isNaN(UpdateManager.lastUpdateDate) ?
183 Qt.formatDate(UpdateManager.lastUpdateDate) : i18n.tr("Never")181 Qt.formatDate(UpdateManager.lastUpdateDate) : i18n.tr("Never")
184 }182 }
185183
186 ListItem.SingleControl {184 SettingsListItems.SingleControl {
187 control: Button {185
186 Button {
188 objectName: "updateButton"187 objectName: "updateButton"
189 text: i18n.tr("Check for updates")188 text: i18n.tr("Check for updates")
190 width: parent.width - units.gu(4)189 width: parent.width - units.gu(4)
@@ -209,26 +208,23 @@
209 text: i18n.tr("Legal:")208 text: i18n.tr("Legal:")
210 }209 }
211210
212 ListItem.Standard {211 SettingsListItems.StandardProgression {
213 objectName: "licenseItem"212 objectName: "licenseItem"
214 text: i18n.tr("Software licenses")213 text: i18n.tr("Software licenses")
215 progression: true
216 onClicked: pageStack.push(Qt.resolvedUrl("Software.qml"))214 onClicked: pageStack.push(Qt.resolvedUrl("Software.qml"))
217 }215 }
218216
219 ListItem.Standard {217 SettingsListItems.StandardProgression {
220 property var regulatoryInfo:218 property var regulatoryInfo:
221 pluginManager.getByName("regulatory-information")219 pluginManager.getByName("regulatory-information")
222 text: i18n.tr("Regulatory info")220 text: i18n.tr("Regulatory info")
223 progression: true
224 visible: regulatoryInfo221 visible: regulatoryInfo
225 onClicked: pageStack.push(regulatoryInfo.pageComponent)222 onClicked: pageStack.push(regulatoryInfo.pageComponent)
226 }223 }
227224
228 ListItem.SingleValue {225 SettingsListItems.SingleValueProgression {
229 objectName: "devmodeItem"226 objectName: "devmodeItem"
230 text: i18n.tr("Developer mode")227 text: i18n.tr("Developer mode")
231 progression: true
232 onClicked: pageStack.push(Qt.resolvedUrl("DevMode.qml"))228 onClicked: pageStack.push(Qt.resolvedUrl("DevMode.qml"))
233 }229 }
234 }230 }
235231
=== modified file 'plugins/about/settings-about.svg'
--- plugins/about/settings-about.svg 2013-06-18 19:17:18 +0000
+++ plugins/about/settings-about.svg 2015-11-27 13:34:19 +0000
@@ -9,14 +9,15 @@
9 xmlns="http://www.w3.org/2000/svg"9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 width="90"12 width="96"
13 height="90"13 height="96"
14 id="svg3180"14 id="svg4874"
15 version="1.1"15 version="1.1"
16 inkscape:version="0.48+devel r12322"16 inkscape:version="0.91+devel r"
17 sodipodi:docname="setting-about.svg">17 viewBox="0 0 96 96.000001"
18 sodipodi:docname="info.svg">
18 <defs19 <defs
19 id="defs3182" />20 id="defs4876" />
20 <sodipodi:namedview21 <sodipodi:namedview
21 id="base"22 id="base"
22 pagecolor="#ffffff"23 pagecolor="#ffffff"
@@ -24,18 +25,94 @@
24 borderopacity="1.0"25 borderopacity="1.0"
25 inkscape:pageopacity="0.0"26 inkscape:pageopacity="0.0"
26 inkscape:pageshadow="2"27 inkscape:pageshadow="2"
27 inkscape:zoom="7.9580786"28 inkscape:zoom="8.7812488"
28 inkscape:cx="25.634328"29 inkscape:cx="5.3352279"
29 inkscape:cy="36.849347"30 inkscape:cy="44.122411"
30 inkscape:document-units="px"31 inkscape:document-units="px"
31 inkscape:current-layer="layer1"32 inkscape:current-layer="g4780"
32 showgrid="false"33 showgrid="true"
34 showborder="true"
33 fit-margin-top="0"35 fit-margin-top="0"
34 fit-margin-left="0"36 fit-margin-left="0"
35 fit-margin-right="0"37 fit-margin-right="0"
36 fit-margin-bottom="0" />38 fit-margin-bottom="0"
39 inkscape:snap-bbox="true"
40 inkscape:bbox-paths="true"
41 inkscape:bbox-nodes="true"
42 inkscape:snap-bbox-edge-midpoints="true"
43 inkscape:snap-bbox-midpoints="true"
44 inkscape:object-paths="true"
45 inkscape:snap-intersection-paths="true"
46 inkscape:object-nodes="true"
47 inkscape:snap-smooth-nodes="true"
48 inkscape:snap-midpoints="true"
49 inkscape:snap-object-midpoints="true"
50 inkscape:snap-center="true"
51 showguides="true"
52 inkscape:guide-bbox="true">
53 <inkscape:grid
54 type="xygrid"
55 id="grid5451"
56 empspacing="8" />
57 <sodipodi:guide
58 orientation="1,0"
59 position="8,-8.0000001"
60 id="guide4063" />
61 <sodipodi:guide
62 orientation="1,0"
63 position="4,-8.0000001"
64 id="guide4065" />
65 <sodipodi:guide
66 orientation="0,1"
67 position="-8,88.000001"
68 id="guide4067" />
69 <sodipodi:guide
70 orientation="0,1"
71 position="-8,92.000001"
72 id="guide4069" />
73 <sodipodi:guide
74 orientation="0,1"
75 position="104,4"
76 id="guide4071" />
77 <sodipodi:guide
78 orientation="0,1"
79 position="-5,8.0000001"
80 id="guide4073" />
81 <sodipodi:guide
82 orientation="1,0"
83 position="92,-8.0000001"
84 id="guide4075" />
85 <sodipodi:guide
86 orientation="1,0"
87 position="88,-8.0000001"
88 id="guide4077" />
89 <sodipodi:guide
90 orientation="0,1"
91 position="-8,84.000001"
92 id="guide4074" />
93 <sodipodi:guide
94 orientation="1,0"
95 position="12,-8.0000001"
96 id="guide4076" />
97 <sodipodi:guide
98 orientation="0,1"
99 position="-5,12"
100 id="guide4078" />
101 <sodipodi:guide
102 orientation="1,0"
103 position="84,-9.0000001"
104 id="guide4080" />
105 <sodipodi:guide
106 position="48,-8.0000001"
107 orientation="1,0"
108 id="guide4170" />
109 <sodipodi:guide
110 position="-8,48"
111 orientation="0,1"
112 id="guide4172" />
113 </sodipodi:namedview>
37 <metadata114 <metadata
38 id="metadata3185">115 id="metadata4879">
39 <rdf:RDF>116 <rdf:RDF>
40 <cc:Work117 <cc:Work
41 rdf:about="">118 rdf:about="">
@@ -50,29 +127,53 @@
50 inkscape:label="Layer 1"127 inkscape:label="Layer 1"
51 inkscape:groupmode="layer"128 inkscape:groupmode="layer"
52 id="layer1"129 id="layer1"
53 transform="translate(456.42857,-738.79075)">130 transform="translate(67.857146,-78.50504)">
54 <g131 <g
55 transform="translate(-2219.4286,118.57139)"132 transform="matrix(0,-1,-1,0,373.50506,516.50504)"
56 id="g3270">133 id="g4845"
57 <rect134 style="display:inline">
58 style="color:#000000;fill:none;stroke:none;stroke-width:7.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"135 <g
59 id="rect3272"136 inkscape:export-ydpi="90"
60 width="90"137 inkscape:export-xdpi="90"
61 height="90"138 inkscape:export-filename="next01.png"
62 x="1763"139 transform="matrix(-0.9996045,0,0,1,575.94296,-611.00001)"
63 y="620.21936" />140 id="g4778"
64 <rect141 inkscape:label="Layer 1">
65 style="color:#000000;fill:none;stroke:none;stroke-width:6;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"142 <g
66 id="rect3274"143 transform="matrix(-1,0,0,1,575.99999,611)"
67 width="90"144 id="g4780"
68 height="90"145 style="display:inline">
69 x="1763"146 <rect
70 y="620.21936" />147 style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:none;stroke-width:4;marker:none;enable-background:accumulate"
71 <path148 id="rect4782"
72 inkscape:connector-curvature="0"149 width="96.037987"
73 style="fill:#808080;fill-opacity:1"150 height="96"
74 d="m 1808,635.21936 c -16.5688,0 -30,13.4314 -30,30 0,16.5675 13.4311,30 30,30 16.5686,0 30,-13.4325 30,-30 C 1838,648.65076 1824.5688,635.21936 1808,635.21936 z m 9.9375,8.3438 c 0.7694,-0.055 1.5628,0.1167 2.2813,0.5312 1.9159,1.1067 2.5752,3.553 1.4687,5.4688 -1.1053,1.9157 -3.553,2.575 -5.4687,1.4687 -1.9146,-1.1053 -2.5739,-3.554 -1.4688,-5.4687 C 1815.4418,644.36576 1816.6552,643.65406 1817.9375,643.56316 z m -9.9375,4.25 c 1.6106,0 3.176,0.2477 4.6562,0.6562 0.2611,1.6096 1.2269,3.0898 2.75,3.9688 1.5205,0.8764 3.2896,0.9503 4.8126,0.375 2.9615,2.9125 4.8754,6.8692 5.1562,11.2812 l -5.7188,0.094 c -0.5263,-5.9763 -5.5443,-10.6563 -11.6562,-10.6563 -1.7607,0 -3.4091,0.397 -4.9062,1.0937 l -2.7813,-5 C 1802.6368,648.47516 1805.2312,647.81316 1808,647.81316 z m -9.625,2.9374 2.9062,4.9063 c -3.0083,2.1176 -4.9687,5.6043 -4.9687,9.5625 0,3.9583 1.9604,7.4462 4.9687,9.5625 l -2.9062,4.9063 c -3.5057,-2.3425 -6.1366,-5.9003 -7.2188,-10.0938 1.2644,-1.0317 2.0938,-2.6155 2.0938,-4.375 0,-1.7605 -0.8294,-3.312 -2.0938,-4.3438 C 1792.2398,656.68336 1794.8707,653.09306 1798.375,650.75056 z m -10.75,10.4688 c 2.2119,0 4,1.787 4,4 0,2.2119 -1.7881,4 -4,4 -2.2132,0 -4,-1.7881 -4,-4 C 1783.625,663.00636 1785.4118,661.21936 1787.625,661.21936 z m 32.0312,5.0312 5.7188,0.094 c -0.2808,4.412 -2.1947,8.3687 -5.1562,11.2812 -1.523,-0.5753 -3.291,-0.4716 -4.8126,0.4063 -1.5227,0.8805 -2.4889,2.3592 -2.75,3.9687 -1.48,0.4098 -3.0456,0.625 -4.6562,0.625 -2.769,0 -5.3632,-0.6606 -7.6875,-1.8124 l 2.7813,-4.9688 c 1.497,0.6966 3.1455,1.0938 4.9062,1.0938 C 1814.1121,676.93806 1819.1311,672.22846 1819.6562,666.25056 z m -1.9374,12.6563 c 1.5484,-0.1918 3.1398,0.5329 3.9687,1.9687 1.1065,1.916 0.4468,4.3635 -1.4687,5.4688 -1.9158,1.1065 -4.3635,0.447 -5.4688,-1.4688 -1.1067,-1.9147 -0.447,-4.3622 1.4688,-5.4687 C 1816.6973,679.13056 1817.2026,678.97076 1817.7188,678.90686 Z"151 x="-438.00244"
75 id="path3" />152 y="345.36221"
153 transform="scale(-1,1)" />
154 <path
155 style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:none;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4.00079107;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
156 d="m 432,393.36133 c 0,23.17268 -18.83506,42 -42.01562,42 -23.18057,0 -42.01758,-18.82732 -42.01758,-42 0,-23.17268 18.83701,-42 42.01758,-42 23.18056,0 42.01562,18.82732 42.01562,42 z m -4.00195,0 c 0,-21.00964 -16.99444,-37.99805 -38.01367,-37.99805 -21.01924,0 -38.01563,16.98841 -38.01563,37.99805 0,21.00963 16.99639,38 38.01563,38 21.01923,0 38.01367,-16.99037 38.01367,-38 z"
157 id="path4116"
158 inkscape:connector-curvature="0" />
159 <rect
160 style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.00118685;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate"
161 id="rect4173"
162 width="5.9999971"
163 height="32.012661"
164 x="-396.36221"
165 y="-397.98663"
166 transform="matrix(0,-1,-1,0,0,0)" />
167 <ellipse
168 style="color:#000000;display:inline;overflow:visible;visibility:visible;opacity:1;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate"
169 id="path4175"
170 cx="-393.36221"
171 cy="-408.99097"
172 transform="matrix(0,-1,-1,0,0,0)"
173 rx="5.0000143"
174 ry="5.0019927" />
175 </g>
176 </g>
76 </g>177 </g>
77 </g>178 </g>
78</svg>179</svg>
79180
=== modified file 'plugins/battery/PageComponent.qml'
--- plugins/battery/PageComponent.qml 2015-08-13 13:13:57 +0000
+++ plugins/battery/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Sebastien Bacher <sebastien.bacher@canonical.com>6 * Contact: Sebastien Bacher <sebastien.bacher@canonical.com>
7 *7 *
@@ -23,8 +23,8 @@
23import QtQuick 2.423import QtQuick 2.4
24import QtSystemInfo 5.024import QtSystemInfo 5.0
25import SystemSettings 1.025import SystemSettings 1.0
26import SystemSettings.ListItems 1.0 as SettingsListItems
26import Ubuntu.Components 1.327import Ubuntu.Components 1.3
27import Ubuntu.Components.ListItems 1.3 as ListItem
28import Ubuntu.SystemSettings.Battery 1.028import Ubuntu.SystemSettings.Battery 1.0
29import Ubuntu.SystemSettings.SecurityPrivacy 1.029import Ubuntu.SystemSettings.SecurityPrivacy 1.0
30import Ubuntu.Settings.Components 0.1 as USC30import Ubuntu.Settings.Components 0.1 as USC
@@ -99,7 +99,7 @@
99 anchors.left: parent.left99 anchors.left: parent.left
100 anchors.right: parent.right100 anchors.right: parent.right
101101
102 ListItem.SingleValue {102 SettingsListItems.SingleValue {
103 id: chargingLevel103 id: chargingLevel
104 text: i18n.tr("Charge level")104 text: i18n.tr("Charge level")
105 value: {105 value: {
@@ -262,7 +262,7 @@
262 }262 }
263 }263 }
264264
265 ListItem.SingleValue {265 SettingsListItems.SingleValue {
266 id: chargingEntry266 id: chargingEntry
267 text: {267 text: {
268 if (indicatorPower.deviceState === "charging")268 if (indicatorPower.deviceState === "charging")
@@ -271,6 +271,8 @@
271 return i18n.tr("Last full charge")271 return i18n.tr("Last full charge")
272 else if (indicatorPower.deviceState === "fully-charged")272 else if (indicatorPower.deviceState === "fully-charged")
273 return i18n.tr("Fully charged")273 return i18n.tr("Fully charged")
274 else
275 return ""
274 }276 }
275277
276 value: {278 value: {
@@ -290,44 +292,6 @@
290 text: i18n.tr("Ways to reduce battery use:")292 text: i18n.tr("Ways to reduce battery use:")
291 }293 }
292294
293 ListItem.Standard {
294 text: i18n.tr("Display brightness")
295 progression: true
296 onClicked: pageStack.push(
297 pluginManager.getByName("brightness").pageComponent)
298 }
299
300 ListItem.SingleValue {
301 property bool lockOnSuspend:
302 securityPrivacy.securityType !==
303 UbuntuSecurityPrivacyPanel.Swipe
304 text: lockOnSuspend ? i18n.tr("Lock when idle") : i18n.tr("Sleep when idle")
305 value: {
306 if (batteryBackend.powerdRunning ) {
307 var timeout = Math.round(powerSettings.activityTimeout/60)
308 return (powerSettings.activityTimeout != 0) ?
309 // TRANSLATORS: %1 is the number of minutes
310 i18n.tr("After %1 minute",
311 "After %1 minutes",
312 timeout).arg(timeout) :
313 i18n.tr("Never")
314 }
315 else {
316 var timeout = Math.round(powerSettings.idleDelay/60)
317 return (powerSettings.idleDelay != 0) ?
318 // TRANSLATORS: %1 is the number of minutes
319 i18n.tr("After %1 minute",
320 "After %1 minutes",
321 timeout).arg(timeout) :
322 i18n.tr("Never")
323 }
324 }
325 progression: true
326 onClicked: pageStack.push(
327 Qt.resolvedUrl("SleepValues.qml"),
328 { title: text, lockOnSuspend: lockOnSuspend })
329 }
330
331 QDBusActionGroup {295 QDBusActionGroup {
332 id: networkActionGroup296 id: networkActionGroup
333 busType: 1297 busType: 1
@@ -337,10 +301,12 @@
337 Component.onCompleted: start()301 Component.onCompleted: start()
338 }302 }
339303
340 ListItem.Standard {304 SettingsListItems.Icon {
341 // TRANSLATORS: “Wi-Fi used for hotspot” is hidden.305 // TRANSLATORS: “Wi-Fi used for hotspot” is hidden.
342 text: showAllUI ? i18n.tr("Wi-Fi used for hotspot") : i18n.tr("Wi-Fi")306 text: showAllUI ? i18n.tr("Wi-Fi used for hotspot") : i18n.tr("Wi-Fi")
343 control: Loader {307 iconName: "wifi-high"
308
309 Loader {
344 active: networkActionGroup.enabled.state != null310 active: networkActionGroup.enabled.state != null
345 sourceComponent: Switch {311 sourceComponent: Switch {
346 id: wifiSwitch312 id: wifiSwitch
@@ -371,10 +337,12 @@
371 Component.onCompleted: start()337 Component.onCompleted: start()
372 }338 }
373339
374 ListItem.Standard {340 SettingsListItems.Icon {
375 id: btListItem341 id: btListItem
376 text: i18n.tr("Bluetooth")342 text: i18n.tr("Bluetooth")
377 control: Loader {343 iconName: "bluetooth-active"
344
345 Loader {
378 active: bluetoothActionGroup.enabled.state != null346 active: bluetoothActionGroup.enabled.state != null
379 sourceComponent: Switch {347 sourceComponent: Switch {
380 id: btSwitch348 id: btSwitch
@@ -404,10 +372,15 @@
404 Component.onCompleted: start()372 Component.onCompleted: start()
405 }373 }
406374
407 ListItem.Standard {375 SettingsListItems.Icon {
408 id: gpsListItem376 id: gpsListItem
409 text: i18n.tr("GPS")377 text: i18n.tr("GPS")
410 control: Loader {378 layout.summary.text: i18n.tr(
379 "Accurate location detection requires GPS and/or Wi-Fi."
380 )
381 iconName: "gps"
382
383 Loader {
411 active: locationActionGroup.enabled.state != null384 active: locationActionGroup.enabled.state != null
412 sourceComponent: Switch {385 sourceComponent: Switch {
413 id: gpsSwitch386 id: gpsSwitch
@@ -426,9 +399,48 @@
426 visible: locationActionGroup.enabled.state !== undefined399 visible: locationActionGroup.enabled.state !== undefined
427 }400 }
428401
429 ListItem.Caption {402 SettingsListItems.SingleValueProgression {
430 text: i18n.tr("Accurate location detection requires GPS and/or Wi-Fi.")403 property bool lockOnSuspend:
431 visible: gpsListItem.visible404 securityPrivacy.securityType !==
405 UbuntuSecurityPrivacyPanel.Swipe
406 text: lockOnSuspend ? i18n.tr("Lock when idle") : i18n.tr("Sleep when idle")
407 value: {
408 if (batteryBackend.powerdRunning ) {
409 var timeout = Math.round(powerSettings.activityTimeout/60)
410 return (powerSettings.activityTimeout != 0) ?
411 // TRANSLATORS: %1 is the number of minutes
412 i18n.tr("After %1 minute",
413 "After %1 minutes",
414 timeout).arg(timeout) :
415 i18n.tr("Never")
416 }
417 else {
418 var timeout = Math.round(powerSettings.idleDelay/60)
419 return (powerSettings.idleDelay != 0) ?
420 // TRANSLATORS: %1 is the number of minutes
421 i18n.tr("After %1 minute",
422 "After %1 minutes",
423 timeout).arg(timeout) :
424 i18n.tr("Never")
425 }
426 }
427
428 Icon {
429 width: units.gu(2.5)
430 height: width
431 name: "network-secure"
432 SlotsLayout.position: SlotsLayout.First
433 }
434
435 onClicked: pageStack.push(
436 Qt.resolvedUrl("SleepValues.qml"),
437 { title: text, lockOnSuspend: lockOnSuspend })
438 }
439
440 SettingsListItems.StandardProgression {
441 text: i18n.tr("Display brightness")
442 onClicked: pageStack.push(
443 pluginManager.getByName("brightness").pageComponent)
432 }444 }
433 }445 }
434 }446 }
435447
=== modified file 'plugins/bluetooth/DevicePage.qml'
--- plugins/bluetooth/DevicePage.qml 2015-11-12 09:53:00 +0000
+++ plugins/bluetooth/DevicePage.qml 2015-11-27 13:34:19 +0000
@@ -21,9 +21,9 @@
21import QMenuModel 0.121import QMenuModel 0.1
22import QtQuick 2.022import QtQuick 2.0
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.Popups 1.326import Ubuntu.Components.Popups 1.3
26import Ubuntu.Components.ListItems 1.3 as ListItem
27import Ubuntu.SystemSettings.Bluetooth 1.027import Ubuntu.SystemSettings.Bluetooth 1.0
2828
29Page {29Page {
@@ -96,63 +96,37 @@
96 right: parent.right96 right: parent.right
97 }97 }
9898
99 ListItem.SingleValue {99 SettingsListItems.SingleValue {
100 text: i18n.tr("Name")100 text: i18n.tr("Name")
101 value: backend.selectedDevice &&101 value: backend.selectedDevice &&
102 backend.selectedDevice.name.length > 0 ?102 backend.selectedDevice.name.length > 0 ?
103 backend.selectedDevice.name :103 backend.selectedDevice.name :
104 i18n.tr("None")104 i18n.tr("None")
105 }105 }
106 ListItem.Standard {106 SettingsListItems.SingleValue {
107 Rectangle {107 text: i18n.tr("Type")
108 color: "transparent"108 value: getTypeString(backend.selectedDevice ? backend.selectedDevice.type : Device.OTHER)
109 anchors.fill: parent109 Image {
110 anchors.topMargin: units.gu(1)110 height: units.gu(4)
111 anchors.leftMargin: units.gu(2)111 width: units.gu(4)
112 anchors.rightMargin: units.gu(2)112 source: backend.selectedDevice ? backend.selectedDevice.iconName : ""
113113 visible: source
114 Label {114 SlotsLayout.position: SlotsLayout.Trailing-1
115 anchors {
116 top: parent.top
117 left: parent.left
118 topMargin: units.gu(1)
119 }
120 height: units.gu(3)
121 text: i18n.tr("Type")
122 }
123 Image {
124 anchors {
125 right: deviceType.left
126 rightMargin: units.gu(1)
127 }
128 height: units.gu(4)
129 width: units.gu(4)
130 source: backend.selectedDevice ? backend.selectedDevice.iconName : ""
131 }
132 Label {
133 id: deviceType
134 anchors {
135 top: parent.top
136 right: parent.right
137 topMargin: units.gu(1)
138 }
139 height: units.gu(3)
140 text: getTypeString(backend.selectedDevice ? backend.selectedDevice.type : Device.OTHER)
141 }
142 }115 }
143 }116 }
144 ListItem.SingleValue {117 SettingsListItems.SingleValue {
145 text: i18n.tr("Status")118 text: i18n.tr("Status")
146 value: getStatusString(backend.selectedDevice ? backend.selectedDevice.connection : Device.Disconnected)119 value: getStatusString(backend.selectedDevice ? backend.selectedDevice.connection : Device.Disconnected)
147 }120 }
148 ListItem.SingleValue {121 SettingsListItems.SingleValue {
149 text: i18n.tr("Signal Strength")122 text: i18n.tr("Signal Strength")
150 value: getSignalString(backend.selectedDevice ? backend.selectedDevice.strength : Device.None)123 value: getSignalString(backend.selectedDevice ? backend.selectedDevice.strength : Device.None)
151 }124 }
152 ListItem.Standard {125 SettingsListItems.Standard {
153 id: trustedCheck126 id: trustedCheck
154 text: i18n.tr("Connect automatically when detected:")127 text: i18n.tr("Connect automatically when detected:")
155 control: CheckBox {128
129 CheckBox {
156 property bool serverChecked: backend.selectedDevice ? backend.selectedDevice.trusted : false130 property bool serverChecked: backend.selectedDevice ? backend.selectedDevice.trusted : false
157 onServerCheckedChanged: checked = serverChecked131 onServerCheckedChanged: checked = serverChecked
158 Component.onCompleted: checked = serverChecked132 Component.onCompleted: checked = serverChecked
@@ -163,8 +137,10 @@
163 }137 }
164 }138 }
165 }139 }
166 ListItem.SingleControl {140
167 control: Button {141 SettingsListItems.SingleControl {
142
143 Button {
168 text: backend.selectedDevice && (backend.selectedDevice.connection == Device.Connected || backend.selectedDevice.connection == Device.Connecting) ? i18n.tr("Disconnect") : i18n.tr("Connect")144 text: backend.selectedDevice && (backend.selectedDevice.connection == Device.Connected || backend.selectedDevice.connection == Device.Connecting) ? i18n.tr("Disconnect") : i18n.tr("Connect")
169 width: parent.width - units.gu(8)145 width: parent.width - units.gu(8)
170 onClicked: {146 onClicked: {
@@ -184,8 +160,10 @@
184 enabled: backend.selectedDevice && backend.powered ? (backend.isSupportedType(backend.selectedDevice.type) || backend.selectedDevice.connection != Device.Disconnected) : false160 enabled: backend.selectedDevice && backend.powered ? (backend.isSupportedType(backend.selectedDevice.type) || backend.selectedDevice.connection != Device.Disconnected) : false
185 }161 }
186 }162 }
187 ListItem.SingleControl {163
188 control: Button {164 SettingsListItems.SingleControl {
165
166 Button {
189 text: i18n.tr("Forget this device")167 text: i18n.tr("Forget this device")
190 width: parent.width - units.gu(8)168 width: parent.width - units.gu(8)
191 onClicked: {169 onClicked: {
192170
=== modified file 'plugins/bluetooth/PageComponent.qml'
--- plugins/bluetooth/PageComponent.qml 2015-11-20 08:47:27 +0000
+++ plugins/bluetooth/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -21,9 +21,9 @@
21import QMenuModel 0.121import QMenuModel 0.1
22import QtQuick 2.422import QtQuick 2.4
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.Popups 1.326import Ubuntu.Components.Popups 1.3
26import Ubuntu.Components.ListItems 1.3 as ListItem
27import Ubuntu.SystemSettings.Bluetooth 1.027import Ubuntu.SystemSettings.Bluetooth 1.0
28import Ubuntu.Settings.Components 0.1 as USC28import Ubuntu.Settings.Components 0.1 as USC
2929
@@ -215,9 +215,10 @@
215 Component.onCompleted: start()215 Component.onCompleted: start()
216 }216 }
217217
218 ListItem.Standard {218 SettingsListItems.Standard {
219 text: i18n.tr("Bluetooth")219 text: i18n.tr("Bluetooth")
220 control: Switch {220
221 Switch {
221 id: btSwitch222 id: btSwitch
222 property bool serverChecked: bluetoothActionGroup.enabled.state != undefined ? bluetoothActionGroup.enabled.state : false223 property bool serverChecked: bluetoothActionGroup.enabled.state != undefined ? bluetoothActionGroup.enabled.state : false
223 USC.ServerPropertySynchroniser {224 USC.ServerPropertySynchroniser {
@@ -232,77 +233,59 @@
232 }233 }
233234
234 // Discoverability235 // Discoverability
235 ListItem.Standard {236 SettingsListItems.SingleValue {
237 text: backend.discoverable ? i18n.tr("Discoverable") : i18n.tr("Not discoverable")
238 value: backend.discoverable ? backend.adapterName() : ""
236 enabled: bluetoothActionGroup.enabled239 enabled: bluetoothActionGroup.enabled
237 showDivider: false240 showDivider: false
238241
239 Rectangle {242 ActivityIndicator {
240 color: "transparent"243 visible: backend.powered && !backend.discoverable
241 anchors.fill: parent244 running: visible
242 anchors.topMargin: units.gu(1)
243 anchors.leftMargin: units.gu(2)
244 anchors.rightMargin: units.gu(2)
245
246 Label {
247 anchors {
248 top: parent.top
249 left: parent.left
250 topMargin: units.gu(1)
251 }
252 height: units.gu(3)
253 text: backend.discoverable ? i18n.tr("Discoverable") : i18n.tr("Not discoverable")
254 }
255
256 Label {
257 anchors {
258 top: parent.top
259 right: parent.right
260 topMargin: units.gu(1)
261 }
262 height: units.gu(3)
263 text: backend.discoverable ? backend.adapterName() : ""
264 color: "darkgrey"
265 visible: backend.discoverable
266 enabled: false
267 }
268
269 ActivityIndicator {
270 anchors {
271 top: parent.top
272 right: parent.right
273 topMargin: units.gu(1)
274 }
275 visible: backend.powered && !backend.discoverable
276 running: visible
277 }
278 }245 }
279 }246 }
280247
281 ListItem.Standard {248 SettingsItemTitle {
282 id: connectedHeader249 id: connectedHeader
283 text: i18n.tr("Connected devices:")250 text: i18n.tr("Connect a device")
284
285 enabled: bluetoothActionGroup.enabled251 enabled: bluetoothActionGroup.enabled
286 visible: connectedList.visible252 visible: connectList.visible
253
254 ActivityIndicator {
255 anchors {
256 right: parent.right
257 top: parent.top
258 margins: units.gu(1.5)
259 }
260 visible: backend.powered && backend.discovering
261 running: visible
262 }
287 }263 }
288264
289 Column {265 Column {
290 id: connectedList266
291 anchors {267 anchors {
292 left: parent.left268 left: parent.left
293 right: parent.right269 right: parent.right
294 }270 }
295 visible: (bluetoothActionGroup.enabled.state != undefined && bluetoothActionGroup.enabled.state) && (connectedRepeater.count > 0)
296 objectName: "connectedList"
297271
298 Repeater {272 ListView {
299 id: connectedRepeater273 id: connectList
274 height: contentItem.height
275 anchors {
276 left: parent.left
277 right: parent.right
278 }
279 visible: (bluetoothActionGroup.enabled.state != undefined && bluetoothActionGroup.enabled.state)
280 objectName: "connectedList"
300 model: backend.connectedDevices281 model: backend.connectedDevices
301 delegate: ListItem.Standard {282 delegate: SettingsListItems.IconProgression {
302 iconSource: iconPath283 iconSource: iconPath
303 iconFrame: false
304 text: getDisplayName(type, displayName)284 text: getDisplayName(type, displayName)
305 control: ActivityIndicator {285 layout.subtitle.text: connection == Device.Connecting ? i18n.tr("Connecting…") : i18n.tr("Connected")
286 layout.subtitle.color: UbuntuColors.green
287
288 ActivityIndicator {
306 visible: connection == Device.Connecting289 visible: connection == Device.Connecting
307 running: visible290 running: visible
308 }291 }
@@ -310,50 +293,31 @@
310 backend.setSelectedDevice(addressName);293 backend.setSelectedDevice(addressName);
311 pageStack.push(Qt.resolvedUrl("DevicePage.qml"), {backend: backend, root: root});294 pageStack.push(Qt.resolvedUrl("DevicePage.qml"), {backend: backend, root: root});
312 }295 }
313 progression: true296 }
314 }297 }
315 }298
316 }299 ListView {
317300 id: disconnectedList
318 SettingsItemTitle {301 height: contentItem.height
319 id: disconnectedHeader302 anchors {
320 text: connectedList.visible ? i18n.tr("Connect another device:") : i18n.tr("Connect a device:")303 left: parent.left
321 enabled: bluetoothActionGroup.enabled.state != undefined ? bluetoothActionGroup.enabled.state : false304 right: parent.right
322 control: ActivityIndicator {305 }
323 visible: backend.powered && backend.discovering
324 running: visible
325 }
326 }
327
328 Column {
329 id: disconnectedList
330 anchors {
331 left: parent.left
332 right: parent.right
333 }
334 visible: (bluetoothActionGroup.enabled.state != undefined && bluetoothActionGroup.enabled.state) && (disconnectedRepeater.count > 0)
335 objectName: "disconnectedList"
336
337 Repeater {
338 id: disconnectedRepeater
339 model: backend.disconnectedDevices306 model: backend.disconnectedDevices
340 delegate: ListItem.Standard {307 delegate: SettingsListItems.IconProgression {
341 iconSource: iconPath308 iconSource: iconPath
342 iconFrame: false
343 text: getDisplayName(type, displayName)309 text: getDisplayName(type, displayName)
344 onClicked: {310 onClicked: {
345 backend.setSelectedDevice(addressName);311 backend.setSelectedDevice(addressName);
346 pageStack.push(Qt.resolvedUrl("DevicePage.qml"), {backend: backend, root: root});312 pageStack.push(Qt.resolvedUrl("DevicePage.qml"), {backend: backend, root: root});
347 }313 }
348 progression: true
349 }314 }
350 }315 }
351 }316
352 ListItem.Standard {317 SettingsListItems.Standard {
353 id: disconnectedNone318 text: i18n.tr("None detected")
354 text: i18n.tr("None detected")319 visible: connectList.count === 0 && disconnectedList.count === 0
355 visible: !disconnectedList.visible && disconnectedHeader.visible320 }
356 enabled: false
357 }321 }
358322
359 SettingsItemTitle {323 SettingsItemTitle {
@@ -374,15 +338,13 @@
374 Repeater {338 Repeater {
375 id: autoconnectRepeater339 id: autoconnectRepeater
376 model: backend.autoconnectDevices340 model: backend.autoconnectDevices
377 delegate: ListItem.Standard {341 delegate: SettingsListItems.IconProgression {
378 iconSource: iconPath342 iconSource: iconPath
379 iconFrame: false
380 text: getDisplayName(type, displayName)343 text: getDisplayName(type, displayName)
381 onClicked: {344 onClicked: {
382 backend.setSelectedDevice(addressName);345 backend.setSelectedDevice(addressName);
383 pageStack.push(Qt.resolvedUrl("DevicePage.qml"), {backend: backend, root: root});346 pageStack.push(Qt.resolvedUrl("DevicePage.qml"), {backend: backend, root: root});
384 }347 }
385 progression: true
386 }348 }
387 }349 }
388 }350 }
389351
=== modified file 'plugins/brightness/PageComponent.qml'
--- plugins/brightness/PageComponent.qml 2015-08-10 13:31:45 +0000
+++ plugins/brightness/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013-14 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Iain Lane <iain.lane@canonical.com>6 * Contact: Iain Lane <iain.lane@canonical.com>
7 *7 *
@@ -21,8 +21,8 @@
21import GSettings 1.021import GSettings 1.0
22import QtQuick 2.422import QtQuick 2.4
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.ListItems 1.3 as ListItem
26import Ubuntu.SystemSettings.Brightness 1.026import Ubuntu.SystemSettings.Brightness 1.0
27import Ubuntu.Settings.Menus 0.1 as Menus27import Ubuntu.Settings.Menus 0.1 as Menus
28import Ubuntu.Settings.Components 0.1 as USC28import Ubuntu.Settings.Components 0.1 as USC
@@ -53,7 +53,7 @@
53 Component.onCompleted: start()53 Component.onCompleted: start()
54 }54 }
5555
56 ListItem.Standard {56 SettingsListItems.Standard {
57 text: i18n.tr("Display brightness")57 text: i18n.tr("Display brightness")
58 showDivider: false58 showDivider: false
59 }59 }
@@ -84,12 +84,17 @@
84 }84 }
85 }85 }
8686
87 ListItem.Standard {87 SettingsListItems.Standard {
88 id: adjust88 id: adjust
89 text: i18n.tr("Adjust automatically")89 text: i18n.tr("Adjust automatically")
90 visible: brightnessPanel.powerdRunning &&90 visible: brightnessPanel.powerdRunning &&
91 brightnessPanel.autoBrightnessAvailable91 brightnessPanel.autoBrightnessAvailable
92 control: CheckBox {92
93 layout.summary.text: i18n.tr(
94 "Brightens and dims the display to suit the surroundings."
95 )
96
97 CheckBox {
93 id: autoAdjustCheck98 id: autoAdjustCheck
94 property bool serverChecked: gsettings.autoBrightness99 property bool serverChecked: gsettings.autoBrightness
95 onServerCheckedChanged: checked = serverChecked100 onServerCheckedChanged: checked = serverChecked
@@ -98,11 +103,6 @@
98 }103 }
99 showDivider: false104 showDivider: false
100 }105 }
101 ListItem.Caption {
102 text: i18n.tr(
103 "Brightens and dims the display to suit the surroundings.")
104 visible: adjust.visible
105 }
106 }106 }
107107
108 GSettings {108 GSettings {
109109
=== modified file 'plugins/cellular/Components/MultiSim.qml'
--- plugins/cellular/Components/MultiSim.qml 2015-09-18 14:18:11 +0000
+++ plugins/cellular/Components/MultiSim.qml 2015-11-27 13:34:19 +0000
@@ -20,8 +20,9 @@
20import QtQuick 2.420import QtQuick 2.4
21import GSettings 1.021import GSettings 1.0
22import SystemSettings 1.022import SystemSettings 1.0
23import SystemSettings.ListItems 1.0 as SettingsListItems
23import Ubuntu.Components 1.324import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem25import Ubuntu.Components.ListItems 1.3 as ListItems
2526
26/* This is a temporary solution to the issue of Hotspots failing on mako. If27/* This is a temporary solution to the issue of Hotspots failing on mako. If
27the device is mako, we hide the hotspot entry. Will be removed once lp:143459128the device is mako, we hide the hotspot entry. Will be removed once lp:1434591
@@ -53,20 +54,17 @@
53 anchors { left: parent.left; right: parent.right }54 anchors { left: parent.left; right: parent.right }
54 }55 }
5556
56 ListItem.Standard {57 SettingsListItems.StandardProgression {
57 id: dataUsage58 id: dataUsage
58 text: i18n.tr("Data usage statistics")59 text: i18n.tr("Data usage statistics")
59 progression: true
60 visible: showAllUI60 visible: showAllUI
61 }61 }
6262
63 ListItem.Divider {}63 SettingsListItems.SingleValueProgression {
64
65 ListItem.SingleValue {
66 text: i18n.tr("Carriers")64 text: i18n.tr("Carriers")
67 id: chooseCarrier65 id: chooseCarrier
68 objectName: "carrierApnEntry"66 objectName: "carrierApnEntry"
69 progression: enabled67 progressionVisible: enabled
70 showDivider: false68 showDivider: false
71 onClicked: {69 onClicked: {
72 pageStack.push(Qt.resolvedUrl("../PageCarriersAndApns.qml"), {70 pageStack.push(Qt.resolvedUrl("../PageCarriersAndApns.qml"), {
@@ -75,26 +73,24 @@
75 }73 }
76 }74 }
7775
78 ListItem.Divider {}
79
80 SimEditor {76 SimEditor {
81 anchors { left: parent.left; right: parent.right }77 anchors { left: parent.left; right: parent.right }
82 }78 }
8379
84 ListItem.Divider {}80 ListItems.Divider {}
8581
86 DefaultSim {82 DefaultSim {
87 anchors { left: parent.left; right: parent.right }83 anchors { left: parent.left; right: parent.right }
88 }84 }
8985
90 ListItem.Divider {}86 ListItems.Divider {}
9187
92 SettingsItemTitle { text: i18n.tr("Connection type:") }88 SettingsItemTitle { text: i18n.tr("Connection type:") }
9389
94 Repeater {90 Repeater {
95 model: sims91 model: sims
9692
97 ListItem.ItemSelector {93 ListItems.ItemSelector {
98 id: radio94 id: radio
99 property var sim: modelData95 property var sim: modelData
10096
10197
=== modified file 'plugins/cellular/Components/Sim.qml'
--- plugins/cellular/Components/Sim.qml 2015-08-10 13:31:45 +0000
+++ plugins/cellular/Components/Sim.qml 2015-11-27 13:34:19 +0000
@@ -37,6 +37,10 @@
37 return name + (number ? " (" + number + ")" : "");37 return name + (number ? " (" + number + ")" : "");
38 }38 }
3939
40 function getTechString () {
41 return techToString(radioSettings.technologyPreference);
42 }
43
40 function techToString (tech) {44 function techToString (tech) {
41 var strings = {45 var strings = {
42 'gsm': i18n.tr("2G only (saves battery)"),46 'gsm': i18n.tr("2G only (saves battery)"),
@@ -44,7 +48,7 @@
44 'lte': i18n.tr("2G/3G/4G (faster)")48 'lte': i18n.tr("2G/3G/4G (faster)")
45 };49 };
46 strings['umts_enable'] = strings['umts'];50 strings['umts_enable'] = strings['umts'];
47 return strings[tech];51 return strings[tech] || "";
48 }52 }
4953
50 // adds umts_enable to an copy of model54 // adds umts_enable to an copy of model
5155
=== modified file 'plugins/cellular/Components/SingleSim.qml'
--- plugins/cellular/Components/SingleSim.qml 2015-08-21 14:03:29 +0000
+++ plugins/cellular/Components/SingleSim.qml 2015-11-27 13:34:19 +0000
@@ -18,9 +18,9 @@
18 *18 *
19*/19*/
20import QtQuick 2.420import QtQuick 2.4
21import SystemSettings 1.021import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.SystemSettings.Cellular 1.0
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem
2424
25Column {25Column {
2626
@@ -32,10 +32,11 @@
32 @prevOnlineModem path to modem that was online before this event */32 @prevOnlineModem path to modem that was online before this event */
33 signal umtsModemChanged (var sim, string prevOnlineModem);33 signal umtsModemChanged (var sim, string prevOnlineModem);
3434
35 ListItem.Standard {35 SettingsListItems.Standard {
36 id: selector36 id: selector
37 text: i18n.tr("Cellular data:")37 text: i18n.tr("Cellular data:")
38 control: Switch {38
39 Switch {
39 id: dataControl40 id: dataControl
40 objectName: 'data'41 objectName: 'data'
41 property bool serverChecked: sim.connMan.powered42 property bool serverChecked: sim.connMan.powered
@@ -45,11 +46,12 @@
45 }46 }
46 }47 }
4748
48 ListItem.Standard {49 SettingsListItems.Standard {
49 id: dataRoamingItem50 id: dataRoamingItem
50 text: i18n.tr("Data roaming")51 text: i18n.tr("Data roaming")
51 enabled: sim.connMan.powered52 enabled: sim.connMan.powered
52 control: Switch {53
54 Switch {
53 id: dataRoamingControl55 id: dataRoamingControl
54 objectName: "roaming"56 objectName: "roaming"
55 property bool serverChecked: sim.connMan.roamingAllowed57 property bool serverChecked: sim.connMan.roamingAllowed
@@ -59,31 +61,24 @@
59 }61 }
60 }62 }
6163
62 ListItem.Standard {64 SettingsListItems.StandardProgression{
63 text: i18n.tr("Data usage statistics")65 text: i18n.tr("Data usage statistics")
64 progression: true
65 visible: showAllUI66 visible: showAllUI
66 }67 }
6768
68 ListItem.Divider {69 SettingsListItems.SingleValueProgression {
69 visible: radio.visible70 text: i18n.tr("Carrier & APN");
70 }
71
72 RadioSingleSim {
73 id: radio
74 anchors { left: parent.left; right: parent.right }
75 visible: radio.enabled
76 }
77
78 ListItem.Divider {}
79
80 ListItem.SingleValue {
81 text: i18n.tr("Carrier");
82 id: chooseCarrier71 id: chooseCarrier
83 objectName: "carrierApnEntry"72 objectName: "carrierApnEntry"
84 progression: enabled73 value: sim.netReg.name || ""
85 onClicked: pageStack.push(Qt.resolvedUrl("../PageCarrierAndApn.qml"), {74 onClicked: pageStack.push(Qt.resolvedUrl("../PageCarrierAndApn.qml"), {
86 sim: sim75 sim: sim
87 })76 })
88 }77 }
78
79 RadioSingleSim {
80 id: radio
81 anchors { left: parent.left; right: parent.right }
82 visible: radio.enabled
83 }
89}84}
9085
=== modified file 'plugins/cellular/PageCarrierAndApn.qml'
--- plugins/cellular/PageCarrierAndApn.qml 2015-08-10 13:31:45 +0000
+++ plugins/cellular/PageCarrierAndApn.qml 2015-11-27 13:34:19 +0000
@@ -19,12 +19,12 @@
19*/19*/
20import QtQuick 2.420import QtQuick 2.4
21import SystemSettings 1.021import SystemSettings 1.0
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem
2424
25ItemPage {25ItemPage {
26 id: root26 id: root
27 title: i18n.tr("Carrier")27 title: i18n.tr("Carrier & APN")
28 objectName: "carrierApnPage"28 objectName: "carrierApnPage"
29 flickable: null29 flickable: null
3030
@@ -40,23 +40,23 @@
40 anchors.left: parent.left40 anchors.left: parent.left
41 anchors.right: parent.right41 anchors.right: parent.right
4242
43 ListItem.SingleValue {43 SettingsListItems.SingleValueProgression {
44 text: i18n.tr("Carrier")44 text: i18n.tr("Carrier")
45 objectName: "carrier"45 objectName: "carrier"
46 value: sim.netReg.name ? sim.netReg.name : i18n.tr("None")46 value: sim.netReg.name ? sim.netReg.name : i18n.tr("None")
47 enabled: (sim.netReg.status !== "") &&47 enabled: (sim.netReg.status !== "") &&
48 (sim.netReg.mode !== "auto-only")48 (sim.netReg.mode !== "auto-only")
49 progression: enabled49 progressionVisible: enabled
50 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseCarrier.qml"), {50 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseCarrier.qml"), {
51 sim: sim,51 sim: sim,
52 title: i18n.tr("Carrier")52 title: i18n.tr("Carrier")
53 })53 })
54 }54 }
5555
56 ListItem.Standard {56 SettingsListItems.SingleValueProgression {
57 text: i18n.tr("APN")57 text: i18n.tr("APN")
58 objectName: "apn"58 objectName: "apn"
59 progression: enabled59 progressionVisible: enabled
60 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseApn.qml"), {60 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseApn.qml"), {
61 sim: sim61 sim: sim
62 })62 })
6363
=== modified file 'plugins/cellular/PageCarriersAndApns.qml'
--- plugins/cellular/PageCarriersAndApns.qml 2015-08-10 13:31:45 +0000
+++ plugins/cellular/PageCarriersAndApns.qml 2015-11-27 13:34:19 +0000
@@ -19,12 +19,12 @@
19*/19*/
20import QtQuick 2.420import QtQuick 2.4
21import SystemSettings 1.021import SystemSettings 1.0
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem
2424
25ItemPage {25ItemPage {
26 id: root26 id: root
27 title: i18n.tr("Carriers")27 title: i18n.tr("Carriers & APNs")
28 objectName: "carrierApnPage"28 objectName: "carrierApnPage"
29 flickable: null29 flickable: null
3030
@@ -40,56 +40,39 @@
40 anchors.left: parent.left40 anchors.left: parent.left
41 anchors.right: parent.right41 anchors.right: parent.right
4242
43 SettingsItemTitle {43 Repeater {
44 text: sims[0].title44 model: sims
45 }45
4646 Column {
47 ListItem.SingleValue {47 anchors.left: parent.left
48 text: i18n.tr("Carrier")48 anchors.right: parent.right
49 objectName: sims[0].path + "_carriers"49
50 value: sims[0].netReg.name ? sims[0].netReg.name :50 SettingsItemTitle {
51 i18n.tr("None")51 text: sims[index].title
52 enabled: (sims[0].netReg.status !== "") &&52 }
53 (sims[0].netReg.mode !== "auto-only")53
54 progression: enabled54 SettingsListItems.SingleValueProgression {
55 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseCarrier.qml"), {55 text: i18n.tr("Carrier")
56 sim: sims[0],56 objectName: sims[index].path + "_carriers"
57 title: sims[0].title57 value: sims[index].netReg.name ? sims[index].netReg.name :
58 })58 i18n.tr("None")
59 }59 enabled: (sims[index].netReg.status !== "") &&
6060 (sims[index].netReg.mode !== "auto-only")
61 ListItem.Standard {61 progressionVisible: enabled
62 text: i18n.tr("APN")62 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseCarrier.qml"), {
63 progression: enabled63 sim: sims[index],
64 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseApn.qml"), {64 title: sims[index].title
65 sim: sims[0]65 })
66 })66 }
67 }67
6868 SettingsListItems.StandardProgression {
69 SettingsItemTitle {69 text: i18n.tr("APN")
70 text: sims[1].title70 progressionVisible: enabled
71 }71 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseApn.qml"), {
7272 sim: sims[index]
73 ListItem.SingleValue {73 })
74 text: i18n.tr("Carrier")74 }
75 objectName: sims[1].path + "_carriers"75 }
76 value: sims[1].netReg.name ? sims[1].netReg.name :
77 i18n.tr("None")
78 enabled: (sims[1].netReg.status !== "") &&
79 (sims[1].netReg.mode !== "auto-only")
80 progression: enabled
81 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseCarrier.qml"), {
82 sim: sims[1],
83 title: sims[1].title
84 })
85 }
86
87 ListItem.Standard {
88 text: i18n.tr("APN")
89 progression: enabled
90 onClicked: pageStack.push(Qt.resolvedUrl("PageChooseApn.qml"), {
91 sim: sims[1]
92 })
93 }76 }
94 }77 }
95 }78 }
9679
=== modified file 'plugins/cellular/PageChooseApn.qml'
--- plugins/cellular/PageChooseApn.qml 2015-08-10 13:31:45 +0000
+++ plugins/cellular/PageChooseApn.qml 2015-11-27 13:34:19 +0000
@@ -25,9 +25,9 @@
2525
26import QtQuick 2.426import QtQuick 2.4
27import SystemSettings 1.027import SystemSettings 1.0
28import SystemSettings.ListItems 1.0 as SettingsListItems
28import Ubuntu.Components 1.329import Ubuntu.Components 1.3
29import Ubuntu.Components.Popups 1.330import Ubuntu.Components.Popups 1.3
30import Ubuntu.Components.ListItems 1.3 as ListItem
31import MeeGo.QOfono 0.231import MeeGo.QOfono 0.2
32import Ubuntu.SystemSettings.Cellular 1.032import Ubuntu.SystemSettings.Cellular 1.0
33import "apn_manager.js" as Manager33import "apn_manager.js" as Manager
@@ -283,16 +283,24 @@
283 Component {283 Component {
284 id: apnDelegate284 id: apnDelegate
285285
286 ListItem.Standard {286
287
288 SettingsListItems.StandardProgression {
287 id: apnListItem289 id: apnListItem
288 property alias text: apnItemName.text290 text: qml.name
291 layout.subtitle.text: qml.typeString
289 objectName: "edit_" + qml.name292 objectName: "edit_" + qml.name
290 height: units.gu(6)293
291 removable: true294 leadingActions: ListItemActions {
292 confirmRemoval: true295 actions: [
293 progression: true296 Action {
294297 iconName: "delete"
295 onItemRemoved: Manager.removeContext(path);298 name: i18n.tr("Delete")
299 onTriggered: Manager.removeContext(path)
300 }
301 ]
302 }
303
296 onClicked: {304 onClicked: {
297 editor = pageStack.push(Qt.resolvedUrl("PageApnEditor.qml"), {305 editor = pageStack.push(Qt.resolvedUrl("PageApnEditor.qml"), {
298 manager: Manager,306 manager: Manager,
@@ -303,7 +311,7 @@
303 });311 });
304 }312 }
305313
306 control: CheckBox {314 CheckBox {
307 id: check315 id: check
308 objectName: qml.name + "_preferred"316 objectName: qml.name + "_preferred"
309 property bool serverChecked: qml && qml.preferred317 property bool serverChecked: qml && qml.preferred
@@ -311,45 +319,6 @@
311 Component.onCompleted: checked = serverChecked319 Component.onCompleted: checked = serverChecked
312 onTriggered: Manager.setPreferred.call(this, qml, checked)320 onTriggered: Manager.setPreferred.call(this, qml, checked)
313 }321 }
314
315 Item {
316 anchors {
317 top: parent.top
318 bottom: parent.bottom
319 left: parent.left
320 leftMargin: units.gu(2)
321 right: parent.right
322 }
323
324 Label {
325 id: apnItemName
326 anchors {
327 topMargin: units.gu(1)
328 top: parent.top
329 left: parent.left
330 right: parent.right
331 }
332
333 text: qml.name
334 elide: Text.ElideRight
335 opacity: apnListItem.enabled ? 1.0 : 0.5
336 }
337
338 Label {
339 id: apnItemType
340 anchors {
341 left: parent.left
342 right: parent.right
343 top: apnItemName.bottom
344 }
345
346 text: qml.typeString
347 color: Theme.palette.normal.backgroundText
348 fontSize: "small"
349 wrapMode: Text.Wrap
350 maximumLineCount: 5
351 }
352 }
353 }322 }
354 }323 }
355324
356325
=== modified file 'plugins/cellular/PageComponent.qml'
--- plugins/cellular/PageComponent.qml 2015-08-13 13:13:57 +0000
+++ plugins/cellular/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -22,7 +22,6 @@
22import SystemSettings 1.022import SystemSettings 1.0
23import Ubuntu.SystemSettings.Cellular 1.023import Ubuntu.SystemSettings.Cellular 1.0
24import Ubuntu.Components 1.324import Ubuntu.Components 1.3
25import Ubuntu.Components.ListItems 1.3 as ListItem
26import MeeGo.QOfono 0.225import MeeGo.QOfono 0.2
27import QMenuModel 0.126import QMenuModel 0.1
28import "Components" as LocalComponents27import "Components" as LocalComponents
2928
=== modified file 'plugins/flight-mode/EntryComponent.qml'
--- plugins/flight-mode/EntryComponent.qml 2015-08-10 13:31:45 +0000
+++ plugins/flight-mode/EntryComponent.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>6 * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
7 *7 *
@@ -19,17 +19,17 @@
19 */19 */
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem
24import Ubuntu.SystemSettings.FlightMode 1.0 as FlightMode24import Ubuntu.SystemSettings.FlightMode 1.0 as FlightMode
25import Ubuntu.Settings.Components 0.1 as USC25import Ubuntu.Settings.Components 0.1 as USC
2626
27ListItem.Standard {27SettingsListItems.Icon {
28 id: root28 id: root
29 iconSource: model.icon29 iconSource: model.icon
30 iconFrame: false
31 text: i18n.tr(model.displayName)30 text: i18n.tr(model.displayName)
32 control: Switch {31
32 Switch {
33 id: switchItem33 id: switchItem
3434
35 USC.ServerPropertySynchroniser {35 USC.ServerPropertySynchroniser {
@@ -42,7 +42,7 @@
42 }42 }
43 }43 }
4444
45 FlightMode.Helper {45 resources: FlightMode.Helper {
46 id: helper46 id: helper
47 }47 }
48}48}
4949
=== modified file 'plugins/flight-mode/flight-mode.settings'
--- plugins/flight-mode/flight-mode.settings 2014-09-24 17:10:03 +0000
+++ plugins/flight-mode/flight-mode.settings 2015-11-27 13:34:19 +0000
@@ -3,7 +3,7 @@
3 "icon": "airplane-mode",3 "icon": "airplane-mode",
4 "translations": "ubuntu-system-settings",4 "translations": "ubuntu-system-settings",
5 "category": "uncategorized-top",5 "category": "uncategorized-top",
6 "priority": 1,6 "priority": 0,
7 "keywords": [7 "keywords": [
8 "flight",8 "flight",
9 "plane",9 "plane",
1010
=== modified file 'plugins/hotspot/HotspotSetup.qml'
--- plugins/hotspot/HotspotSetup.qml 2015-09-18 14:18:11 +0000
+++ plugins/hotspot/HotspotSetup.qml 2015-11-27 13:34:19 +0000
@@ -19,8 +19,9 @@
19import QtQuick 2.419import QtQuick 2.4
20import QtQuick.Layouts 1.120import QtQuick.Layouts 1.1
21import SystemSettings 1.021import SystemSettings 1.0
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem24import Ubuntu.Components.ListItems 1.3 as ListItems
24import Ubuntu.Components.Popups 1.325import Ubuntu.Components.Popups 1.3
25import Ubuntu.Connectivity 1.026import Ubuntu.Connectivity 1.0
26import Ubuntu.SystemSettings.Cellular 1.027import Ubuntu.SystemSettings.Cellular 1.0
@@ -187,35 +188,23 @@
187 width: parent.width188 width: parent.width
188 }189 }
189190
190 ListItem.Empty {191 SettingsListItems.Standard {
191 id: passwordRequired192 id: passwordRequired
192 onClicked: passwordRequiredToggle.trigger()193 text: i18n.tr("Require a password (recommended):")
194 showDivider: false
195 layout.padding.leading: 0
196 SlotsLayout.padding.leading: 0
193197
194 CheckBox {198 CheckBox {
195 id: passwordRequiredToggle199 id: passwordRequiredToggle
196 objectName: "passwordRequiredToggle"200 objectName: "passwordRequiredToggle"
197 checked: Connectivity.hotspotAuth === "wpa-psk"201 checked: Connectivity.hotspotAuth === "wpa-psk"
198 anchors {202 SlotsLayout.position: SlotsLayout.First
199 left: parent.left203 SlotsLayout.padding.leading: 0
200 verticalCenter: parent.verticalCenter
201 }
202 // FIXME: Workaround for lp:1415023204 // FIXME: Workaround for lp:1415023
203 activeFocusOnPress: false205 activeFocusOnPress: false
204 }206 }
205207 onClicked: passwordRequiredToggle.trigger()
206 Label {
207 id: passwordRequiredLabel
208 anchors {
209 left: passwordRequiredToggle.right
210 leftMargin: units.gu(1)
211 right: parent.right
212 verticalCenter: parent.verticalCenter
213 }
214
215 // FIXME: Workaround for label not wrapping (lp:1442851)
216 wrapMode: Text.Wrap
217 text: i18n.tr("Require a password (recommended):")
218 }
219 }208 }
220209
221 TextField {210 TextField {
@@ -229,39 +218,25 @@
229 width: parent.width218 width: parent.width
230 }219 }
231220
232 ListItem.Empty {221 SettingsListItems.Standard {
233 id: passwordVisible222 id: passwordVisible
234 enabled: passwordRequiredToggle.checked223 enabled: passwordRequiredToggle.checked
235 onClicked: passwordVisibleToggle.trigger()224 text: i18n.tr("Show password")
225 layout.padding.leading: 0
226 SlotsLayout.padding.leading: 0
236227
237 CheckBox {228 CheckBox {
238 id: passwordVisibleToggle229 id: passwordVisibleToggle
239 enabled: parent.enabled230 enabled: parent.enabled
240 anchors {231 SlotsLayout.position: SlotsLayout.First
241 left: parent.left232 SlotsLayout.padding.leading: 0
242 verticalCenter: parent.verticalCenter
243 }
244
245 // FIXME: Workaround for lp:1415023233 // FIXME: Workaround for lp:1415023
246 activeFocusOnPress: false234 activeFocusOnPress: false
247 }235 }
248236 onClicked: passwordVisibleToggle.trigger()
249 Label {
250 id: passwordVisibleLabel
251
252 /* FIXME: use enabled when lp:1491802 is fixed, or use
253 CheckBox.text once lp:1323238 is fixed. */
254 opacity: passwordRequiredToggle.checked ? 1 : 0.5
255 anchors {
256 left: passwordVisibleToggle.right
257 leftMargin: units.gu(1)
258 verticalCenter: parent.verticalCenter
259 }
260 text: i18n.tr("Show password")
261 }
262 }237 }
263238
264 ListItem.Caption {239 ListItems.Caption {
265 id: enableWifiCaption240 id: enableWifiCaption
266 anchors {241 anchors {
267 left: parent.left242 left: parent.left
268243
=== modified file 'plugins/hotspot/PageComponent.qml'
--- plugins/hotspot/PageComponent.qml 2015-09-18 14:18:11 +0000
+++ plugins/hotspot/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -20,8 +20,9 @@
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings 1.022import SystemSettings 1.0
23import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components.ListItems 1.3 as ListItems
23import Ubuntu.Components 1.325import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem
25import Ubuntu.Components.Popups 1.326import Ubuntu.Components.Popups 1.3
26import Ubuntu.Connectivity 1.027import Ubuntu.Connectivity 1.0
2728
@@ -77,15 +78,15 @@
77 }78 }
78 spacing: units.gu(1)79 spacing: units.gu(1)
7980
80 ListItem.Standard {81 SettingsListItems.Standard {
81 id: hotspotItem82 id: hotspotItem
82 text: i18n.tr("Hotspot")83 text: i18n.tr("Hotspot")
83 enabled: Connectivity.hotspotStored84 enabled: Connectivity.hotspotStored
84 onClicked: hotspotSwitch.trigger()85 onClicked: hotspotSwitch.trigger()
85 control: Switch {86
87 Switch {
86 id: hotspotSwitch88 id: hotspotSwitch
87 objectName: "hotspotSwitch"89 objectName: "hotspotSwitch"
88 enabled: parent.enabled
89 checked: Connectivity.hotspotEnabled90 checked: Connectivity.hotspotEnabled
90 onTriggered: Connectivity.hotspotEnabled = checked91 onTriggered: Connectivity.hotspotEnabled = checked
9192
@@ -101,7 +102,7 @@
101 }102 }
102 }103 }
103104
104 ListItem.Caption {105 ListItems.Caption {
105 anchors {106 anchors {
106 left: parent.left107 left: parent.left
107 right: parent.right108 right: parent.right
108109
=== modified file 'plugins/language/KeyboardLayoutItem.qml'
--- plugins/language/KeyboardLayoutItem.qml 2015-08-10 13:31:45 +0000
+++ plugins/language/KeyboardLayoutItem.qml 2015-11-27 13:34:19 +0000
@@ -20,18 +20,18 @@
2020
21import QtQuick 2.421import QtQuick 2.4
22import Ubuntu.Components 1.322import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem23
2424ListItem {
25ListItem.Base {25 property string name
26 property alias name: name.text26 property alias checked: checkBox.checked
27 property alias checked: checkBox.checked27 property alias shortName: shortName.text
28 property alias shortName: shortName.text28
2929 height: layout.height + divider.height
30 Row {30
31 anchors.top: parent.top31 ListItemLayout {
32 anchors.left: parent.left32 id: layout
33 anchors.bottom: parent.bottom33
34 spacing: units.gu(1)34 title.text: name
3535
36 Rectangle {36 Rectangle {
37 width: units.gu(3.0)37 width: units.gu(3.0)
@@ -40,8 +40,6 @@
4040
41 color: Theme.palette.normal.backgroundText41 color: Theme.palette.normal.backgroundText
4242
43 anchors.verticalCenter: parent.verticalCenter
44
45 Label {43 Label {
46 id: shortName44 id: shortName
4745
@@ -50,21 +48,14 @@
5048
51 anchors.centerIn: parent49 anchors.centerIn: parent
52 }50 }
53 }51
5452 SlotsLayout.position: SlotsLayout.First
55 Label {53 }
56 id: name54
5755 CheckBox {
58 anchors.verticalCenter: parent.verticalCenter56 id: checkBox
59 }57 SlotsLayout.position: SlotsLayout.Trailing
60 }58 }
6159 }
62 CheckBox {
63 id: checkBox
64
65 anchors.right: parent.right
66 anchors.verticalCenter: parent.verticalCenter
67 }
68
69 onClicked: checked = !checked60 onClicked: checked = !checked
70}61}
7162
=== modified file 'plugins/language/PageComponent.qml'
--- plugins/language/PageComponent.qml 2015-08-10 13:31:45 +0000
+++ plugins/language/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -21,9 +21,9 @@
21import QtQuick 2.421import QtQuick 2.4
22import GSettings 1.022import GSettings 1.0
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.Popups 1.326import Ubuntu.Components.Popups 1.3
26import Ubuntu.Components.ListItems 1.3 as ListItem
27import Ubuntu.Settings.Menus 0.1 as Menus27import Ubuntu.Settings.Menus 0.1 as Menus
28import Ubuntu.SystemSettings.LanguagePlugin 1.028import Ubuntu.SystemSettings.LanguagePlugin 1.0
2929
@@ -96,53 +96,56 @@
96 anchors.left: parent.left96 anchors.left: parent.left
97 anchors.right: parent.right97 anchors.right: parent.right
9898
99 Menus.StandardMenu {99 SettingsItemTitle {
100 iconSource: "image://theme/language-chooser"100 text: i18n.tr("Language")
101 }
102
103 SettingsListItems.Standard {
104 id: base
105 height: layout.height + divider.height
106 objectName: "displayLanguage"
107 property int currentLanguage: plugin.currentLanguage
101 text: i18n.tr("Display language…")108 text: i18n.tr("Display language…")
102 objectName: "displayLanguage"109 layout.subtitle.text: plugin.languageNames[plugin.currentLanguage]
103 component: Label {110 layout.subtitle.objectName: "currentLanguage"
104 property int currentLanguage: plugin.currentLanguage111
105 objectName: "currentLanguage"112 Icon {
106 text: plugin.languageNames[plugin.currentLanguage]113 source: "image://theme/language-chooser"
107 elide: Text.ElideRight114 height: units.gu(2.5)
108 opacity: enabled ? 1.0 : 0.5115 width: height
116 SlotsLayout.position: SlotsLayout.First
109 }117 }
110
111 onClicked: PopupUtils.open(displayLanguage)118 onClicked: PopupUtils.open(displayLanguage)
112 }119 }
113120
114 ListItem.Divider {121 SettingsListItems.SingleValueProgression {
115 }
116
117 ListItem.SingleValue {
118 text: i18n.tr("Keyboard layouts")122 text: i18n.tr("Keyboard layouts")
119 value: plugin.keyboardLayoutsModel.subset.length == 1 ?123 value: plugin.keyboardLayoutsModel.subset.length == 1 ?
120 plugin.keyboardLayoutsModel.superset[plugin.keyboardLayoutsModel.subset[0]][0] :124 plugin.keyboardLayoutsModel.superset[plugin.keyboardLayoutsModel.subset[0]][0] :
121 plugin.keyboardLayoutsModel.subset.length125 plugin.keyboardLayoutsModel.subset.length
122 progression: true
123126
124 onClicked: pageStack.push(keyboardLayouts)127 onClicked: pageStack.push(keyboardLayouts)
125 }128 }
126129
127 ListItem.Divider {130 SettingsItemTitle {
131 text: i18n.tr("Correction")
128 }132 }
129133
130 ListItem.SingleValue {134 SettingsListItems.SingleValueProgression {
131 visible: showAllUI135 visible: showAllUI
132136
133 text: i18n.tr("Spell checking")137 text: i18n.tr("Spell checking")
134 value: plugin.spellCheckingModel.subset.length == 1 ?138 value: plugin.spellCheckingModel.subset.length == 1 ?
135 plugin.spellCheckingModel.superset[plugin.spellCheckingModel.subset[0]][0] :139 plugin.spellCheckingModel.superset[plugin.spellCheckingModel.subset[0]][0] :
136 plugin.spellCheckingModel.subset.length140 plugin.spellCheckingModel.subset.length
137 progression: true
138141
139 onClicked: pageStack.push(spellChecking)142 onClicked: pageStack.push(spellChecking)
140 }143 }
141144
142 ListItem.Standard {145 SettingsListItems.Standard {
143 text: i18n.tr("Spell checking")146 text: i18n.tr("Spell checking")
144147
145 control: Switch {148 Switch {
146 property bool serverChecked: settings.spellChecking149 property bool serverChecked: settings.spellChecking
147 onServerCheckedChanged: checked = serverChecked150 onServerCheckedChanged: checked = serverChecked
148 Component.onCompleted: checked = serverChecked151 Component.onCompleted: checked = serverChecked
@@ -150,10 +153,10 @@
150 }153 }
151 }154 }
152155
153 ListItem.Standard {156 SettingsListItems.Standard {
154 text: i18n.tr("Auto correction")157 text: i18n.tr("Auto correction")
155158
156 control: Switch {159 Switch {
157 property bool serverChecked: settings.autoCompletion160 property bool serverChecked: settings.autoCompletion
158 onServerCheckedChanged: checked = serverChecked161 onServerCheckedChanged: checked = serverChecked
159 Component.onCompleted: checked = serverChecked162 Component.onCompleted: checked = serverChecked
@@ -161,10 +164,10 @@
161 }164 }
162 }165 }
163166
164 ListItem.Standard {167 SettingsListItems.Standard {
165 text: i18n.tr("Word suggestions")168 text: i18n.tr("Word suggestions")
166169
167 control: Switch {170 Switch {
168 property bool serverChecked: settings.predictiveText171 property bool serverChecked: settings.predictiveText
169 onServerCheckedChanged: checked = serverChecked172 onServerCheckedChanged: checked = serverChecked
170 Component.onCompleted: checked = serverChecked173 Component.onCompleted: checked = serverChecked
@@ -172,13 +175,13 @@
172 }175 }
173 }176 }
174177
175 ListItem.Divider {178 SettingsListItems.Standard {
176 }
177
178 ListItem.Standard {
179 text: i18n.tr("Auto capitalization")179 text: i18n.tr("Auto capitalization")
180 layout.summary.text: i18n.tr(
181 "Turns on Shift to capitalize the first letter of each sentence."
182 )
180183
181 control: Switch {184 Switch {
182 property bool serverChecked: settings.autoCapitalization185 property bool serverChecked: settings.autoCapitalization
183 onServerCheckedChanged: checked = serverChecked186 onServerCheckedChanged: checked = serverChecked
184 Component.onCompleted: checked = serverChecked187 Component.onCompleted: checked = serverChecked
@@ -186,17 +189,13 @@
186 }189 }
187 }190 }
188191
189 ListItem.Caption {192 SettingsListItems.Standard {
190 text: i18n.tr("Turns on Shift to capitalize the first letter of each sentence.")
191 }
192
193 ListItem.ThinDivider {
194 }
195
196 ListItem.Standard {
197 text: i18n.tr("Auto punctuation")193 text: i18n.tr("Auto punctuation")
198194
199 control: Switch {195 /* TODO: update the string to mention quotes/brackets once the osk does that */
196 layout.summary.text: i18n.tr("Inserts a period when you tap Space twice.")
197
198 Switch {
200 property bool serverChecked: settings.doubleSpaceFullStop199 property bool serverChecked: settings.doubleSpaceFullStop
201 onServerCheckedChanged: checked = serverChecked200 onServerCheckedChanged: checked = serverChecked
202 Component.onCompleted: checked = serverChecked201 Component.onCompleted: checked = serverChecked
@@ -204,18 +203,10 @@
204 }203 }
205 }204 }
206205
207 ListItem.Caption {206 SettingsListItems.Standard {
208 /* TODO: update the string to mention quotes/brackets once the osk does that */
209 text: i18n.tr("Inserts a period when you tap Space twice.")
210 }
211
212 ListItem.ThinDivider {
213 }
214
215 ListItem.Standard {
216 text: i18n.tr("Keyboard sound")207 text: i18n.tr("Keyboard sound")
217208
218 control: Switch {209 Switch {
219 property bool serverChecked: settings.keyPressFeedback210 property bool serverChecked: settings.keyPressFeedback
220 onServerCheckedChanged: checked = serverChecked211 onServerCheckedChanged: checked = serverChecked
221 Component.onCompleted: checked = serverChecked212 Component.onCompleted: checked = serverChecked
@@ -223,10 +214,10 @@
223 }214 }
224 }215 }
225216
226 ListItem.Standard {217 SettingsListItems.Standard {
227 text: i18n.tr("Keyboard vibration")218 text: i18n.tr("Keyboard vibration")
228219
229 control: Switch {220 Switch {
230 property bool serverChecked: settings.keyPressHapticFeedback221 property bool serverChecked: settings.keyPressHapticFeedback
231 onServerCheckedChanged: checked = serverChecked222 onServerCheckedChanged: checked = serverChecked
232 Component.onCompleted: checked = serverChecked223 Component.onCompleted: checked = serverChecked
233224
=== modified file 'plugins/language/SpellChecking.qml'
--- plugins/language/SpellChecking.qml 2015-08-10 13:31:45 +0000
+++ plugins/language/SpellChecking.qml 2015-11-27 13:34:19 +0000
@@ -21,8 +21,8 @@
21import QtQuick 2.421import QtQuick 2.4
22import GSettings 1.022import GSettings 1.0
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.ListItems 1.3 as ListItem
26import Ubuntu.SystemSettings.LanguagePlugin 1.026import Ubuntu.SystemSettings.LanguagePlugin 1.0
2727
28ItemPage {28ItemPage {
@@ -38,12 +38,12 @@
38 schema.id: "com.canonical.keyboard.maliit"38 schema.id: "com.canonical.keyboard.maliit"
39 }39 }
4040
41 ListItem.Standard {41 SettingsListItems.Standard {
42 id: item42 id: item
4343
44 text: i18n.tr("Spell checking")44 text: i18n.tr("Spell checking")
4545
46 control: Switch {46 Switch {
47 property bool serverChecked: settings.spellChecking47 property bool serverChecked: settings.spellChecking
48 onServerCheckedChanged: checked = serverChecked48 onServerCheckedChanged: checked = serverChecked
49 Component.onCompleted: checked = serverChecked49 Component.onCompleted: checked = serverChecked
5050
=== modified file 'plugins/language/SubsetView.qml'
--- plugins/language/SubsetView.qml 2015-08-10 13:31:45 +0000
+++ plugins/language/SubsetView.qml 2015-11-27 13:34:19 +0000
@@ -20,8 +20,8 @@
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings 1.022import SystemSettings 1.0
23import SystemSettings.ListItems 1.0 as SettingsListItems
23import Ubuntu.Components 1.324import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem
2525
26ListView {26ListView {
27 id: root27 id: root
@@ -41,13 +41,14 @@
41 flickableDirection: Flickable.VerticalFlick41 flickableDirection: Flickable.VerticalFlick
4242
43 section.property: "subset"43 section.property: "subset"
44 section.delegate: ListItem.Standard {44 section.delegate: SettingsItemTitle {
45 text: section == "true" ? subsetLabel : supersetLabel45 text: section == "true" ? subsetLabel : supersetLabel
46 }46 }
4747
48 delegate: ListItem.Standard {48 delegate: SettingsListItems.Standard {
49 text: model.display49 text: model.display
50 control: CheckBox {50
51 CheckBox {
51 checked: model.checked52 checked: model.checked
52 onCheckedChanged: {53 onCheckedChanged: {
53 var element = model.index < root.model.subset.length ?54 var element = model.index < root.model.subset.length ?
5455
=== modified file 'plugins/language/settings-language.svg'
--- plugins/language/settings-language.svg 2013-06-28 14:53:07 +0000
+++ plugins/language/settings-language.svg 2015-11-27 13:34:19 +0000
@@ -9,14 +9,15 @@
9 xmlns="http://www.w3.org/2000/svg"9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 width="90"12 width="96"
13 height="90"13 height="96"
14 id="svg4230"14 id="svg4874"
15 version="1.1"15 version="1.1"
16 inkscape:version="0.48+devel r12277"16 inkscape:version="0.91+devel r"
17 sodipodi:docname="setting-language-text.svg">17 viewBox="0 0 96 96.000001"
18 sodipodi:docname="language-chooser.svg">
18 <defs19 <defs
19 id="defs4232" />20 id="defs4876" />
20 <sodipodi:namedview21 <sodipodi:namedview
21 id="base"22 id="base"
22 pagecolor="#ffffff"23 pagecolor="#ffffff"
@@ -24,18 +25,91 @@
24 borderopacity="1.0"25 borderopacity="1.0"
25 inkscape:pageopacity="0.0"26 inkscape:pageopacity="0.0"
26 inkscape:pageshadow="2"27 inkscape:pageshadow="2"
27 inkscape:zoom="5.0931703"28 inkscape:zoom="3.5967995"
28 inkscape:cx="21.204866"29 inkscape:cx="-41.870567"
29 inkscape:cy="6.4792647"30 inkscape:cy="69.839831"
30 inkscape:document-units="px"31 inkscape:document-units="px"
31 inkscape:current-layer="layer1-57"32 inkscape:current-layer="g4780"
32 showgrid="false"33 showgrid="true"
34 showborder="true"
33 fit-margin-top="0"35 fit-margin-top="0"
34 fit-margin-left="0"36 fit-margin-left="0"
35 fit-margin-right="0"37 fit-margin-right="0"
36 fit-margin-bottom="0" />38 fit-margin-bottom="0"
39 inkscape:snap-bbox="true"
40 inkscape:bbox-paths="true"
41 inkscape:bbox-nodes="true"
42 inkscape:snap-bbox-edge-midpoints="true"
43 inkscape:snap-bbox-midpoints="true"
44 inkscape:object-paths="true"
45 inkscape:snap-intersection-paths="true"
46 inkscape:object-nodes="true"
47 inkscape:snap-smooth-nodes="true"
48 inkscape:snap-midpoints="true"
49 inkscape:snap-object-midpoints="true"
50 inkscape:snap-center="true"
51 showguides="true"
52 inkscape:guide-bbox="true"
53 inkscape:snap-global="true">
54 <inkscape:grid
55 type="xygrid"
56 id="grid5451"
57 empspacing="8" />
58 <sodipodi:guide
59 orientation="1,0"
60 position="8,-8.0000001"
61 id="guide4063" />
62 <sodipodi:guide
63 orientation="1,0"
64 position="4,-8.0000001"
65 id="guide4065" />
66 <sodipodi:guide
67 orientation="0,1"
68 position="-8,88.000001"
69 id="guide4067" />
70 <sodipodi:guide
71 orientation="0,1"
72 position="-8,92.000001"
73 id="guide4069" />
74 <sodipodi:guide
75 orientation="0,1"
76 position="104,4"
77 id="guide4071" />
78 <sodipodi:guide
79 orientation="0,1"
80 position="-5,8.0000001"
81 id="guide4073" />
82 <sodipodi:guide
83 orientation="1,0"
84 position="88,-8.0000001"
85 id="guide4077" />
86 <sodipodi:guide
87 orientation="0,1"
88 position="-8,84.000001"
89 id="guide4074" />
90 <sodipodi:guide
91 orientation="1,0"
92 position="12,-8.0000001"
93 id="guide4076" />
94 <sodipodi:guide
95 orientation="1,0"
96 position="84,-8.0000001"
97 id="guide4080" />
98 <sodipodi:guide
99 position="48,-8.0000001"
100 orientation="1,0"
101 id="guide4170" />
102 <sodipodi:guide
103 position="-8,48"
104 orientation="0,1"
105 id="guide4172" />
106 <sodipodi:guide
107 position="92,-8.0000001"
108 orientation="1,0"
109 id="guide4760" />
110 </sodipodi:namedview>
37 <metadata111 <metadata
38 id="metadata4235">112 id="metadata4879">
39 <rdf:RDF>113 <rdf:RDF>
40 <cc:Work114 <cc:Work
41 rdf:about="">115 rdf:about="">
@@ -50,72 +124,35 @@
50 inkscape:label="Layer 1"124 inkscape:label="Layer 1"
51 inkscape:groupmode="layer"125 inkscape:groupmode="layer"
52 id="layer1"126 id="layer1"
53 transform="translate(-0.7143,-261.64789)">127 transform="translate(67.857146,-78.50504)">
54 <g128 <g
55 transform="translate(0.7143,-700.42863)"129 transform="matrix(0,-1,-1,0,373.50506,516.50504)"
56 id="g4081"130 id="g4845"
57 inkscape:label="Layer 1">131 style="display:inline">
58 <g132 <g
59 transform="translate(0,-1.1427923)"133 inkscape:export-ydpi="90"
60 id="layer1-57"134 inkscape:export-xdpi="90"
135 inkscape:export-filename="next01.png"
136 transform="matrix(-0.9996045,0,0,1,575.94296,-611.00001)"
137 id="g4778"
61 inkscape:label="Layer 1">138 inkscape:label="Layer 1">
62 <g139 <g
63 id="g4136"140 transform="matrix(-1,0,0,1,575.99999,611)"
64 transform="matrix(1.875,0,0,1.875,-990,-829.95977)">141 id="g4780"
65 <rect142 style="display:inline">
66 style="color:#000000;fill:none;stroke:none;stroke-width:7.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"143 <rect
67 id="rect4134"144 style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:none;stroke-width:4;marker:none;enable-background:accumulate"
68 width="48"145 id="rect4782"
69 height="48"146 width="96.037987"
70 x="528"147 height="96"
71 y="544"148 x="-438.00244"
72 transform="translate(0,412.36217)" />149 y="345.36221"
73 </g>150 transform="scale(-1,1)" />
74 <g151 <path
75 transform="translate(-528,48.000013)"152 style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1.99960446;marker:none;enable-background:accumulate"
76 id="g3466">153 d="M 48 6.0019531 C 24.82764 6.0019531 6 24.828928 6 48 C 6 71.171082 24.82764 89.998047 48 89.998047 C 71.17237 89.998047 90 71.171082 90 48 C 90 24.828928 71.17237 6.0019531 48 6.0019531 z M 42.53125 10.396484 C 33.296711 20.093908 28.462948 32.967067 28.013672 46 L 10.056641 46 C 10.99887 27.755915 24.765744 12.950862 42.53125 10.396484 z M 53.46875 10.396484 C 71.235181 12.950074 85.003049 27.75526 85.945312 46 L 67.986328 46 C 67.537031 32.967051 62.70334 20.093716 53.46875 10.396484 z M 48 10.671875 C 58.121521 19.777207 63.428064 32.787817 63.914062 46 L 32.085938 46 C 32.571943 32.787634 37.878206 19.777225 48 10.671875 z M 10.056641 50 L 28.013672 50 C 28.462948 63.032933 33.296711 75.906092 42.53125 85.603516 C 24.766398 83.048936 10.999752 68.243289 10.056641 50 z M 32.085938 50 L 63.914062 50 C 63.428064 63.212183 58.121521 76.222793 48 85.328125 C 37.878206 76.222775 32.571943 63.212366 32.085938 50 z M 67.986328 50 L 85.945312 50 C 85.002167 68.243944 71.234526 83.049724 53.46875 85.603516 C 62.703024 75.906274 67.536746 63.032634 67.986328 50 z "
77 <rect154 transform="matrix(0,-1,-1.0003957,0,438.00245,441.36222)"
78 y="915.2193"155 id="rect3011" />
79 x="528"
80 height="90"
81 width="90"
82 id="rect3474"
83 style="color:#000000;fill:none;stroke:none;stroke-width:7.5;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" />
84 <path
85 style="fill:#808080;fill-opacity:1;display:inline"
86 d="M 28.96875 16 C 16.52725 16.1641 15 17.5 15 28 L 15 46 C 15 55.9093 16.3891 57.60545 27 57.90625 L 27 70 L 39 58 L 55 58 C 73 58 75 58 75 46 L 75 28 C 75 16 73 16 55 16 L 35 16 C 32.75 16 30.74605 15.9766 28.96875 16 z M 42.78125 24.21875 L 47.1875 24.21875 C 48.04962 26.041523 48.87464 27.877967 49.6875 29.75 C 50.50036 31.622033 51.312147 33.587157 52.125 35.65625 C 52.962493 37.725343 53.82538 39.934587 54.6875 42.25 C 55.574253 44.565407 56.476853 47.07834 57.4375 49.8125 L 52.4375 49.8125 C 52.092647 48.802587 51.71323 47.79778 51.34375 46.8125 C 50.97427 45.827213 50.626097 44.815797 50.28125 43.78125 L 39.5 43.78125 C 39.155153 44.815797 38.80698 45.833837 38.4375 46.84375 L 37.375 49.8125 L 32.5625 49.8125 C 33.523147 47.07834 34.419123 44.565407 35.28125 42.25 C 36.14337 39.934587 36.968397 37.725343 37.78125 35.65625 C 38.618743 33.587157 39.468397 31.622033 40.28125 29.75 C 41.09411 27.877967 41.91913 26.041523 42.78125 24.21875 z M 44.875 29.15625 C 44.308467 30.46175 43.676467 32.065467 42.9375 33.9375 C 42.223173 35.80954 41.475727 37.839003 40.6875 40.03125 L 49.09375 40.03125 C 48.305523 37.839003 47.55146 35.771673 46.8125 33.875 C 46.07354 31.978333 45.416907 30.412483 44.875 29.15625 z "
87 transform="translate(528,915.2193)"
88 id="path3962" />
89 <path
90 sodipodi:type="arc"
91 style="color:#000000;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
92 id="path3965"
93 sodipodi:cx="1731"
94 sodipodi:cy="1545"
95 sodipodi:rx="3"
96 sodipodi:ry="3"
97 d="m 1734,1545 c 0,1.6569 -1.3431,3 -3,3 -1.6569,0 -3,-1.3431 -3,-3 0,-1.6569 1.3431,-3 3,-3 C 1732.6569,1542 1734,1543.3431 1734,1545 Z"
98 transform="matrix(1.3333333,0,0,1.3333333,-1708.9999,-1072.7807)" />
99 <path
100 transform="matrix(1.3333333,0,0,1.3333333,-1720.9999,-1072.7807)"
101 d="m 1734,1545 c 0,1.6569 -1.3431,3 -3,3 -1.6569,0 -3,-1.3431 -3,-3 0,-1.6569 1.3431,-3 3,-3 C 1732.6569,1542 1734,1543.3431 1734,1545 Z"
102 sodipodi:ry="3"
103 sodipodi:rx="3"
104 sodipodi:cy="1545"
105 sodipodi:cx="1731"
106 id="path3976"
107 style="color:#000000;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
108 sodipodi:type="arc" />
109 <path
110 sodipodi:type="arc"
111 style="color:#000000;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"
112 id="path3978"
113 sodipodi:cx="1731"
114 sodipodi:cy="1545"
115 sodipodi:rx="3"
116 sodipodi:ry="3"
117 d="m 1734,1545 c 0,1.6569 -1.3431,3 -3,3 -1.6569,0 -3,-1.3431 -3,-3 0,-1.6569 1.3431,-3 3,-3 C 1732.6569,1542 1734,1543.3431 1734,1545 Z"
118 transform="matrix(1.3333333,0,0,1.3333333,-1732.9999,-1072.7807)" />
119 </g>156 </g>
120 </g>157 </g>
121 </g>158 </g>
122159
=== modified file 'plugins/orientation-lock/EntryComponent.qml'
--- plugins/orientation-lock/EntryComponent.qml 2015-08-10 13:31:45 +0000
+++ plugins/orientation-lock/EntryComponent.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>6 * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
7 *7 *
@@ -21,16 +21,16 @@
21import GSettings 1.021import GSettings 1.0
22import QtQuick 2.422import QtQuick 2.4
23import QtQuick.Window 2.123import QtQuick.Window 2.1
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.ListItems 1.3 as ListItem26
2627
2728SettingsListItems.Icon {
28ListItem.Standard {
29 id: root29 id: root
30 iconSource: model.icon30 iconSource: model.icon
31 iconFrame: false
32 text: i18n.tr(model.displayName)31 text: i18n.tr(model.displayName)
33 control: Switch {32
33 Switch {
34 id: control34 id: control
35 objectName: "orientationLockSwitch"35 objectName: "orientationLockSwitch"
3636
3737
=== modified file 'plugins/orientation-lock/orientation-lock.settings'
--- plugins/orientation-lock/orientation-lock.settings 2014-11-03 22:01:37 +0000
+++ plugins/orientation-lock/orientation-lock.settings 2015-11-27 13:34:19 +0000
@@ -3,7 +3,7 @@
3 "name": "Rotation Lock",3 "name": "Rotation Lock",
4 "translations": "ubuntu-system-settings",4 "translations": "ubuntu-system-settings",
5 "category": "uncategorized-top",5 "category": "uncategorized-top",
6 "priority": 0,6 "priority": 1,
7 "form-factors": [7 "form-factors": [
8 "phone",8 "phone",
9 "tablet"9 "tablet"
1010
=== modified file 'plugins/phone/CallForwardItem.qml'
--- plugins/phone/CallForwardItem.qml 2015-11-06 12:22:09 +0000
+++ plugins/phone/CallForwardItem.qml 2015-11-27 13:34:19 +0000
@@ -19,8 +19,9 @@
19 */19 */
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem24import Ubuntu.Components.ListItems 1.0 as ListItems
24import Ubuntu.Components.Themes.Ambiance 0.125import Ubuntu.Components.Themes.Ambiance 0.1
25import MeeGo.QOfono 0.226import MeeGo.QOfono 0.2
26import "callForwardingUtils.js" as Utils27import "callForwardingUtils.js" as Utils
@@ -135,12 +136,13 @@
135 }136 }
136 ]137 ]
137138
138 ListItem.ThinDivider { anchors { left: parent.left; right: parent.right }}139 ListItems.ThinDivider { anchors { left: parent.left; right: parent.right }}
139140
140 ListItem.Standard {141 SettingsListItems.Standard {
141 id: control142 id: control
142 onClicked: check.trigger(!check.checked)143 onClicked: check.trigger(!check.checked)
143 control: CheckBox {144
145 CheckBox {
144 id: check146 id: check
145 objectName: "check_" + rule147 objectName: "check_" + rule
146 checked: callForwarding[rule] !== ""148 checked: callForwarding[rule] !== ""
@@ -149,13 +151,13 @@
149 }151 }
150 }152 }
151153
152 ListItem.Standard {154 SettingsListItems.Standard {
153 id: input155 id: input
154 visible: false156 visible: false
155 height: visible ? units.gu(6) : 0
156 /* TRANSLATORS: This string will be truncated on smaller displays. */157 /* TRANSLATORS: This string will be truncated on smaller displays. */
157 text: i18n.tr("Forward to")158 text: i18n.tr("Forward to")
158 control: TextField {159
160 TextField {
159 id: field161 id: field
160 objectName: "field_" + rule162 objectName: "field_" + rule
161 horizontalAlignment: TextInput.AlignRight163 horizontalAlignment: TextInput.AlignRight
@@ -198,7 +200,7 @@
198 }200 }
199 }201 }
200202
201 ListItem.SingleValue {203 SettingsListItems.SingleValue {
202 id: current204 id: current
203 objectName: "current_" + rule205 objectName: "current_" + rule
204 visible: value206 visible: value
205207
=== modified file 'plugins/phone/CallForwarding.qml'
--- plugins/phone/CallForwarding.qml 2015-11-05 16:40:24 +0000
+++ plugins/phone/CallForwarding.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact:6 * Contact:
7 * Sebastien Bacher <sebastien.bacher@canonical.com>7 * Sebastien Bacher <sebastien.bacher@canonical.com>
@@ -164,7 +164,6 @@
164 SettingsItemTitle {164 SettingsItemTitle {
165 id: fwdSomeTitle165 id: fwdSomeTitle
166 text: i18n.tr("Forward incoming calls when:")166 text: i18n.tr("Forward incoming calls when:")
167 showDivider: false
168 }167 }
169168
170 CallForwardItem {169 CallForwardItem {
171170
=== modified file 'plugins/phone/CallWaiting.qml'
--- plugins/phone/CallWaiting.qml 2015-08-10 13:31:45 +0000
+++ plugins/phone/CallWaiting.qml 2015-11-27 13:34:19 +0000
@@ -20,8 +20,9 @@
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings 1.022import SystemSettings 1.0
23import SystemSettings.ListItems 1.0 as SettingsListItems
23import Ubuntu.Components 1.324import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem25import Ubuntu.Components.ListItems 1.3 as ListItems
25import MeeGo.QOfono 0.226import MeeGo.QOfono 0.2
2627
27ItemPage {28ItemPage {
@@ -42,7 +43,7 @@
42 callWaitingIndicator.running = false;43 callWaitingIndicator.running = false;
43 }44 }
44 onVoiceCallWaitingComplete: {45 onVoiceCallWaitingComplete: {
45 //When the property change is complete, the value of checked should always be in sync with serverChecked 46 //When the property change is complete, the value of checked should always be in sync with serverChecked
46 callWaitingSwitch.checked = callWaitingSwitch.serverChecked47 callWaitingSwitch.checked = callWaitingSwitch.serverChecked
47 /* Log some additional output to help debug when things don't work */48 /* Log some additional output to help debug when things don't work */
48 console.warn('callSettings, onVoiceCallWaitingComplete modem: ' + modemPath + ' success: ' + success + ' ' + voiceCallWaiting);49 console.warn('callSettings, onVoiceCallWaitingComplete modem: ' + modemPath + ' success: ' + success + ' ' + voiceCallWaiting);
@@ -50,54 +51,40 @@
50 }51 }
51 }52 }
5253
53 ActivityIndicator {
54 id: callWaitingIndicator
55 running: true
56 visible: running && attached
57 }
58
59 Switch {
60 id: callWaitingSwitch
61 objectName: "callWaitingSwitch"
62 visible: !callWaitingIndicator.running
63 enabled: callSettings.ready && attached
64 property bool serverChecked: callSettings.voiceCallWaiting !== "disabled"
65 onServerCheckedChanged: checked = serverChecked
66 Component.onCompleted: checked = serverChecked
67 onTriggered: {
68 callWaitingIndicator.running = true;
69 if (checked)
70 callSettings.voiceCallWaiting = "enabled";
71 else
72 callSettings.voiceCallWaiting = "disabled";
73 }
74 }
75
76 Column {54 Column {
77 anchors.fill: parent55 anchors.fill: parent
7856
79 ListItem.Standard {57 SettingsListItems.Standard {
80 id: callWaitingItem58 id: callWaitingItem
81 text: i18n.tr("Call waiting")59 text: i18n.tr("Call waiting")
82 control: callWaitingIndicator.running ?
83 callWaitingIndicator : callWaitingSwitch
84 }
8560
86 ListItem.Base {61 Switch {
87 height: textItem.height + units.gu(2)62 id: callWaitingSwitch
88 Label {63 objectName: "callWaitingSwitch"
89 id: textItem64 visible: !callWaitingIndicator.running
90 anchors {65 enabled: callSettings.ready && attached
91 left: parent.left66 property bool serverChecked: callSettings.voiceCallWaiting !== "disabled"
92 right: parent.right67 onServerCheckedChanged: checked = serverChecked
93 verticalCenter: parent.verticalCenter68 Component.onCompleted: checked = serverChecked
69 onTriggered: {
70 callWaitingIndicator.running = true;
71 if (checked)
72 callSettings.voiceCallWaiting = "enabled";
73 else
74 callSettings.voiceCallWaiting = "disabled";
94 }75 }
9576 }
96 text: i18n.tr("Lets you answer or start a new call while on another call, and switch between them")77
97 horizontalAlignment: Text.AlignHCenter78 ActivityIndicator {
98 wrapMode: Text.WordWrap79 id: callWaitingIndicator
99 }80 running: callWaitingIndicator.running
100 showDivider: false81 visible: running && attached
82 }
83
84 }
85
86 ListItems.Caption {
87 text: i18n.tr("Lets you answer or start a new call while on another call, and switch between them")
101 }88 }
102 }89 }
103}90}
10491
=== modified file 'plugins/phone/MultiSim.qml'
--- plugins/phone/MultiSim.qml 2015-11-05 16:40:24 +0000
+++ plugins/phone/MultiSim.qml 2015-11-27 13:34:19 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014 Canonical Ltd2 * Copyright (C) 2014-2015 Canonical Ltd
3 *3 *
4 * This program is free software: you can redistribute it and/or modify4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 3 as5 * it under the terms of the GNU General Public License version 3 as
@@ -21,8 +21,8 @@
21import QtQuick 2.421import QtQuick 2.4
22import GSettings 1.022import GSettings 1.0
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.ListItems 1.3 as ListItem
2626
27Column {27Column {
2828
@@ -37,20 +37,18 @@
3737
38 SettingsItemTitle { text: sims[index].title }38 SettingsItemTitle { text: sims[index].title }
3939
40 ListItem.Standard {40 SettingsListItems.StandardProgression {
41 objectName: "callWaitSim" + index41 objectName: "callWaitSim" + index
42 text: i18n.tr("Call waiting")42 text: i18n.tr("Call waiting")
43 progression: true
44 onClicked: pageStack.push(Qt.resolvedUrl("CallWaiting.qml"), {43 onClicked: pageStack.push(Qt.resolvedUrl("CallWaiting.qml"), {
45 sim: sims[index],44 sim: sims[index],
46 headerTitle: sims[index].title45 headerTitle: sims[index].title
47 })46 })
48 }47 }
4948
50 ListItem.SingleValue {49 SettingsListItems.SingleValueProgression {
51 objectName: "callFwdSim" + index50 objectName: "callFwdSim" + index
52 text: i18n.tr("Call forwarding")51 text: i18n.tr("Call forwarding")
53 progression: true
54 value: sims[index].getCallForwardingSummary()52 value: sims[index].getCallForwardingSummary()
55 onClicked: pageStack.push(Qt.resolvedUrl("CallForwarding.qml"), {53 onClicked: pageStack.push(Qt.resolvedUrl("CallForwarding.qml"), {
56 sim: sims[index],54 sim: sims[index],
@@ -58,10 +56,9 @@
58 })56 })
59 }57 }
6058
61 ListItem.Standard {59 SettingsListItems.StandardProgression {
62 objectName: "simServicesSim" + index60 objectName: "simServicesSim" + index
63 text: i18n.tr("Services")61 text: i18n.tr("Services")
64 progression: true
65 enabled: {62 enabled: {
66 var num;63 var num;
67 var map = sims[index].simMng.serviceNumbers;64 var map = sims[index].simMng.serviceNumbers;
@@ -82,10 +79,6 @@
82 })79 })
83 }80 }
8481
85 ListItem.Divider {
86 visible: index !== (sims.length - 1)
87 }
88
89 Binding {82 Binding {
90 target: sims[index]83 target: sims[index]
91 property: "name"84 property: "name"
9285
=== modified file 'plugins/phone/NoSims.qml'
--- plugins/phone/NoSims.qml 2015-08-10 13:31:45 +0000
+++ plugins/phone/NoSims.qml 2015-11-27 13:34:19 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014 Canonical Ltd2 * Copyright (C) 2014-2015 Canonical Ltd
3 *3 *
4 * This program is free software: you can redistribute it and/or modify4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 3 as5 * it under the terms of the GNU General Public License version 3 as
@@ -19,28 +19,22 @@
19 *19 *
20*/20*/
21import QtQuick 2.421import QtQuick 2.4
22import Ubuntu.Components 1.322import SystemSettings.ListItems 1.0 as SettingsListItems
23import Ubuntu.Components.ListItems 1.3 as ListItem
2423
25Column {24Column {
2625
27 ListItem.Standard {26 SettingsListItems.StandardProgression {
28 text: i18n.tr("Call forwarding")27 text: i18n.tr("Call forwarding")
29 progression: true
30 enabled: false28 enabled: false
31 }29 }
3230
33 ListItem.Standard {31 SettingsListItems.StandardProgression {
34 text: i18n.tr("Call waiting")32 text: i18n.tr("Call waiting")
35 progression: true
36 enabled: false33 enabled: false
37 }34 }
3835
39 ListItem.Divider {}36 SettingsListItems.StandardProgression {
40
41 ListItem.Standard {
42 text: i18n.tr("Services")37 text: i18n.tr("Services")
43 progression: true
44 enabled: false38 enabled: false
45 }39 }
46}40}
4741
=== modified file 'plugins/phone/PageComponent.qml'
--- plugins/phone/PageComponent.qml 2015-08-10 13:31:45 +0000
+++ plugins/phone/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Iain Lane <iain.lane@canonical.com>6 * Contact: Iain Lane <iain.lane@canonical.com>
7 *7 *
@@ -20,8 +20,8 @@
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings 1.022import SystemSettings 1.0
23import SystemSettings.ListItems 1.0 as SettingsListItems
23import Ubuntu.Components 1.324import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem
25import Ubuntu.SystemSettings.Sound 1.025import Ubuntu.SystemSettings.Sound 1.0
26import MeeGo.QOfono 0.226import MeeGo.QOfono 0.2
27import "sims.js" as Sims27import "sims.js" as Sims
@@ -89,10 +89,8 @@
89 anchors { left: parent.left; right: parent.right }89 anchors { left: parent.left; right: parent.right }
90 }90 }
9191
92 ListItem.Divider {}92 SettingsListItems.Standard {
9393 Switch {
94 ListItem.Standard {
95 control: Switch {
96 objectName: "dialpadSounds"94 objectName: "dialpadSounds"
97 property bool serverChecked: soundPlugin.dialpadSoundsEnabled95 property bool serverChecked: soundPlugin.dialpadSoundsEnabled
98 onServerCheckedChanged: checked = serverChecked96 onServerCheckedChanged: checked = serverChecked
9997
=== modified file 'plugins/phone/ServiceInfo.qml'
--- plugins/phone/ServiceInfo.qml 2015-10-16 13:42:50 +0000
+++ plugins/phone/ServiceInfo.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Sebastien Bacher <sebastien.bacher@canonical.com>6 * Contact: Sebastien Bacher <sebastien.bacher@canonical.com>
7 *7 *
@@ -20,8 +20,8 @@
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings 1.022import SystemSettings 1.0
23import SystemSettings.ListItems 1.0 as SettingsListItems
23import Ubuntu.Components 1.324import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem
25import Ubuntu.History 0.125import Ubuntu.History 0.1
26import "dateUtils.js" as DateUtils26import "dateUtils.js" as DateUtils
2727
@@ -83,7 +83,7 @@
83 verticalCenter: parent.verticalCenter83 verticalCenter: parent.verticalCenter
84 }84 }
8585
86 ListItem.Base {86 Item {
87 anchors.left: parent.left87 anchors.left: parent.left
88 anchors.right: parent.right88 anchors.right: parent.right
89 height: lastCalledCol.height + units.gu(6)89 height: lastCalledCol.height + units.gu(6)
@@ -112,9 +112,10 @@
112 }112 }
113 }113 }
114114
115 ListItem.SingleControl {115 SettingsListItems.SingleControl {
116 anchors.bottom: parent.bottom116 anchors.bottom: parent.bottom
117 control: Button {117
118 Button {
118 width: parent.width - units.gu(4)119 width: parent.width - units.gu(4)
119 text: i18n.tr("Call")120 text: i18n.tr("Call")
120 onClicked: Qt.openUrlExternally("tel:///" + encodeURIComponent(121 onClicked: Qt.openUrlExternally("tel:///" + encodeURIComponent(
121122
=== modified file 'plugins/phone/Services.qml'
--- plugins/phone/Services.qml 2015-08-10 13:31:45 +0000
+++ plugins/phone/Services.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Sebastien Bacher <sebastien.bacher@canonical.com>6 * Contact: Sebastien Bacher <sebastien.bacher@canonical.com>
7 *7 *
@@ -20,8 +20,8 @@
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings 1.022import SystemSettings 1.0
23import SystemSettings.ListItems 1.0 as SettingsListItems
23import Ubuntu.Components 1.324import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem
2525
26ItemPage {26ItemPage {
27 id: root27 id: root
@@ -60,8 +60,7 @@
60 Repeater {60 Repeater {
61 model: names61 model: names
6262
63 ListItem.Standard {63 SettingsListItems.StandardProgression {
64 progression: true
65 text: modelData64 text: modelData
66 onClicked: pageStack.push(Qt.resolvedUrl("ServiceInfo.qml"), {serviceName: modelData, serviceNumber: sim.serviceNumbers[modelData]})65 onClicked: pageStack.push(Qt.resolvedUrl("ServiceInfo.qml"), {serviceName: modelData, serviceNumber: sim.serviceNumbers[modelData]})
67 }66 }
6867
=== modified file 'plugins/phone/SingleSim.qml'
--- plugins/phone/SingleSim.qml 2015-11-05 16:40:24 +0000
+++ plugins/phone/SingleSim.qml 2015-11-27 13:34:19 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright (C) 2014 Canonical Ltd2 * Copyright (C) 2014-2015 Canonical Ltd
3 *3 *
4 * This program is free software: you can redistribute it and/or modify4 * This program is free software: you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License version 3 as5 * it under the terms of the GNU General Public License version 3 as
@@ -19,8 +19,8 @@
19 *19 *
20*/20*/
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem
2424
25Column {25Column {
2626
@@ -29,30 +29,23 @@
29 property string carrierString: carrierName ? carrierName : i18n.tr("SIM")29 property string carrierString: carrierName ? carrierName : i18n.tr("SIM")
3030
3131
32 ListItem.Standard {32 SettingsListItems.StandardProgression {
33 objectName: "callWait"33 objectName: "callWait"
34 text: i18n.tr("Call waiting")34 text: i18n.tr("Call waiting")
35 progression: true
36 onClicked: pageStack.push(Qt.resolvedUrl("CallWaiting.qml"), {sim: sim})35 onClicked: pageStack.push(Qt.resolvedUrl("CallWaiting.qml"), {sim: sim})
37 }36 }
3837
39 ListItem.SingleValue {38 SettingsListItems.SingleValueProgression {
40 objectName: "callFwd"39 objectName: "callFwd"
41 text: i18n.tr("Call forwarding")40 text: i18n.tr("Call forwarding")
42 showDivider: false
43 progression: true
44 value: sim.getCallForwardingSummary()41 value: sim.getCallForwardingSummary()
45 onClicked: pageStack.push(Qt.resolvedUrl("CallForwarding.qml"), {sim: sim})42 onClicked: pageStack.push(Qt.resolvedUrl("CallForwarding.qml"), {sim: sim})
46 }43 }
4744
48 ListItem.Divider {}45 SettingsListItems.StandardProgression {
49
50 ListItem.Standard {
51 objectName: "simServices"46 objectName: "simServices"
52 // TRANSLATORS: %1 is the name of the (network) carrier47 // TRANSLATORS: %1 is the name of the (network) carrier
53 text: i18n.tr("%1 Services").arg(carrierString)48 text: i18n.tr("%1 Services").arg(carrierString)
54 progression: true
55 showDivider: false
56 enabled: {49 enabled: {
57 var num;50 var num;
58 var map = sim.simMng.serviceNumbers;51 var map = sim.simMng.serviceNumbers;
5952
=== modified file 'plugins/reset/EntryComponent.qml'
--- plugins/reset/EntryComponent.qml 2015-08-10 13:31:45 +0000
+++ plugins/reset/EntryComponent.qml 2015-11-27 13:34:19 +0000
@@ -19,14 +19,12 @@
19 */19 */
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem
2424
25ListItem.Standard {25SettingsListItems.IconProgression {
26 id: root26 id: root
27 objectName: "entryComponent-reset"27 objectName: "entryComponent-reset"
28 iconSource: model.icon28 iconSource: model.icon
29 iconFrame: false
30 text: i18n.tr(model.displayName)29 text: i18n.tr(model.displayName)
31 progression: true
32}30}
3331
=== modified file 'plugins/reset/PageComponent.qml'
--- plugins/reset/PageComponent.qml 2015-08-10 13:31:45 +0000
+++ plugins/reset/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -21,8 +21,8 @@
21import GSettings 1.021import GSettings 1.0
22import QtQuick 2.422import QtQuick 2.4
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.ListItems 1.3 as ListItem
26import Ubuntu.Components.Popups 1.326import Ubuntu.Components.Popups 1.3
27import Ubuntu.SystemSettings.Reset 1.027import Ubuntu.SystemSettings.Reset 1.0
2828
@@ -66,46 +66,81 @@
66 anchors.left: parent.left66 anchors.left: parent.left
67 anchors.right: parent.right67 anchors.right: parent.right
6868
69 ListItem.SingleControl {69 Label {
70 control: Button {70 anchors {
71 left: parent.left
72 right: parent.right
73 margins: units.gu(2)
74 }
75 text: i18n.tr("Reset Launcher")
76 color: UbuntuColors.orange
77 height: units.gu(6)
78 verticalAlignment: Text.AlignVCenter
79 }
80
81 SettingsListItems.Standard {
82
83 Button {
71 id: resetLauncherHomeButton84 id: resetLauncherHomeButton
72 objectName: "resetLauncher"85 objectName: "resetLauncher"
73 text: i18n.tr("Reset Launcher")86 text: i18n.tr("Reset Launcher")
74 width: parent.width - units.gu(4)
75 onClicked: {87 onClicked: {
76 buttonActions.source = "ResetLauncherHome.qml";88 buttonActions.source = "ResetLauncherHome.qml";
77 root.popup = PopupUtils.open(buttonActions.item);89 root.popup = PopupUtils.open(buttonActions.item);
78 }90 }
79 }91 }
80 showDivider: false92 }
81 }93
8294 Label {
83 ListItem.SingleControl {95 anchors {
84 visible: false // enabled when backend is ready/useful96 left: parent.left
85 control: Button {97 right: parent.right
98 margins: units.gu(2)
99 }
100 visible: showAllUI
101 text: i18n.tr("Reset all system settings…")
102 color: UbuntuColors.orange
103 height: units.gu(6)
104 verticalAlignment: Text.AlignVCenter
105 }
106
107 SettingsListItems.Standard {
108 visible: showAllUI
109
110 Button {
86 id: resetAllSettingsButton111 id: resetAllSettingsButton
87 text: i18n.tr("Reset all system settings…")112 text: i18n.tr("Reset all system settings…")
88 width: parent.width - units.gu(4)
89 onClicked: {113 onClicked: {
90 buttonActions.source = "ResetAllSettings.qml";114 buttonActions.source = "ResetAllSettings.qml";
91 root.popup = PopupUtils.open(buttonActions.item);115 root.popup = PopupUtils.open(buttonActions.item);
92 }116 }
93 }117 }
94 showDivider: false118 }
95 }119
96120 Label {
97 ListItem.SingleControl {121 anchors {
98 control: Button {122 left: parent.left
123 right: parent.right
124 margins: units.gu(2)
125 }
126 text: i18n.tr("Erase & Reset All")
127 color: UbuntuColors.orange
128 height: units.gu(6)
129 verticalAlignment: Text.AlignVCenter
130 }
131
132 SettingsListItems.Standard {
133
134 Button {
99 id: eraseEverythingButton135 id: eraseEverythingButton
100 objectName: "factoryReset"136 objectName: "factoryReset"
101 text: i18n.tr("Erase & Reset Everything…")137
102 width: parent.width - units.gu(4)138 text: i18n.tr("Erase & Reset All")
103 onClicked: {139 onClicked: {
104 buttonActions.source = "EraseEverything.qml";140 buttonActions.source = "EraseEverything.qml";
105 root.popup = PopupUtils.open(buttonActions.item);141 root.popup = PopupUtils.open(buttonActions.item);
106 }142 }
107 }143 }
108 showDivider: false
109 }144 }
110 }145 }
111 }146 }
112147
=== modified file 'plugins/sound/PageComponent.qml'
--- plugins/sound/PageComponent.qml 2015-10-23 14:57:26 +0000
+++ plugins/sound/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -21,8 +21,8 @@
21import GSettings 1.021import GSettings 1.0
22import QtQuick 2.422import QtQuick 2.4
23import Ubuntu.Components 1.323import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem
25import SystemSettings 1.024import SystemSettings 1.0
25import SystemSettings.ListItems 1.0 as SettingsListItems
26import Ubuntu.SystemSettings.Sound 1.026import Ubuntu.SystemSettings.Sound 1.0
27import Ubuntu.Settings.Menus 0.1 as Menus27import Ubuntu.Settings.Menus 0.1 as Menus
28import Ubuntu.Settings.Components 0.1 as USC28import Ubuntu.Settings.Components 0.1 as USC
@@ -66,8 +66,10 @@
66 anchors.left: parent.left66 anchors.left: parent.left
67 anchors.right: parent.right67 anchors.right: parent.right
6868
69 ListItem.Standard {69 SettingsListItems.Standard {
70 control: Switch {70 text: i18n.tr("Silent Mode")
71
72 Switch {
71 id: silentModeSwitch73 id: silentModeSwitch
72 objectName: "silentMode"74 objectName: "silentMode"
73 property bool serverChecked: soundActionGroup.silentMode.state75 property bool serverChecked: soundActionGroup.silentMode.state
@@ -81,7 +83,6 @@
81 onSyncTriggered: soundActionGroup.silentMode.activate()83 onSyncTriggered: soundActionGroup.silentMode.activate()
82 }84 }
83 }85 }
84 text: i18n.tr("Silent Mode")
85 }86 }
8687
87 SettingsItemTitle {88 SettingsItemTitle {
@@ -123,7 +124,7 @@
123 }124 }
124 }125 }
125126
126 ListItem.Standard {127 SettingsListItems.Standard {
127 id: highVolumeWarning128 id: highVolumeWarning
128 visible: soundActionGroup.highVolume.state == true129 visible: soundActionGroup.highVolume.state == true
129 text: i18n.tr("High volume can damage your hearing.")130 text: i18n.tr("High volume can damage your hearing.")
@@ -133,22 +134,22 @@
133 text: i18n.tr("Phone calls:")134 text: i18n.tr("Phone calls:")
134 }135 }
135136
136 ListItem.SingleValue {137 SettingsListItems.SingleValueProgression {
137 text: i18n.tr("Ringtone")138 text: i18n.tr("Ringtone")
138 value: Utilities.buildDisplayName(139 value: Utilities.buildDisplayName(backendInfo.incomingCallSound)
139 backendInfo.incomingCallSound)140
140 progression: true
141 onClicked: pageStack.push(141 onClicked: pageStack.push(
142 Qt.resolvedUrl("SoundsList.qml"),142 Qt.resolvedUrl("SoundsList.qml"), {
143 { title: i18n.tr("Ringtone"),143 title: i18n.tr("Ringtone"),
144 showStopButton: true,144 showStopButton: true,
145 soundType: 0,145 soundType: 0,
146 soundsDir:146 soundsDir: "/usr/share/sounds/ubuntu/ringtones/"
147 "/usr/share/sounds/ubuntu/ringtones/" })147 }
148 )
148 }149 }
149150
150 ListItem.Standard {151 SettingsListItems.Standard {
151 control: CheckBox {152 CheckBox {
152 objectName: "callVibrate"153 objectName: "callVibrate"
153 property bool serverChecked: backendInfo.incomingCallVibrate154 property bool serverChecked: backendInfo.incomingCallVibrate
154 onServerCheckedChanged: checked = serverChecked155 onServerCheckedChanged: checked = serverChecked
@@ -158,8 +159,8 @@
158 text: i18n.tr("Vibrate on ring")159 text: i18n.tr("Vibrate on ring")
159 }160 }
160161
161 ListItem.Standard {162 SettingsListItems.Standard {
162 control: CheckBox {163 CheckBox {
163 objectName: "callVibrateSilentMode"164 objectName: "callVibrateSilentMode"
164 property bool serverChecked: backendInfo.incomingCallVibrateSilentMode165 property bool serverChecked: backendInfo.incomingCallVibrateSilentMode
165 onServerCheckedChanged: checked = serverChecked166 onServerCheckedChanged: checked = serverChecked
@@ -169,8 +170,8 @@
169 text: i18n.tr("Vibrate in Silent Mode")170 text: i18n.tr("Vibrate in Silent Mode")
170 }171 }
171172
172 ListItem.Standard {173 SettingsListItems.Standard {
173 control: Switch {174 Switch {
174 objectName: "dialpadSounds"175 objectName: "dialpadSounds"
175 property bool serverChecked: backendInfo.dialpadSoundsEnabled176 property bool serverChecked: backendInfo.dialpadSoundsEnabled
176 onServerCheckedChanged: checked = serverChecked177 onServerCheckedChanged: checked = serverChecked
@@ -184,11 +185,10 @@
184 text: i18n.tr("Messages:")185 text: i18n.tr("Messages:")
185 }186 }
186187
187 ListItem.SingleValue {188 SettingsListItems.SingleValueProgression {
188 text: i18n.tr("Message received")189 text: i18n.tr("Message received")
189 value:Utilities.buildDisplayName(190 value:Utilities.buildDisplayName(
190 backendInfo.incomingMessageSound)191 backendInfo.incomingMessageSound)
191 progression: true
192 onClicked: pageStack.push(192 onClicked: pageStack.push(
193 Qt.resolvedUrl("SoundsList.qml"),193 Qt.resolvedUrl("SoundsList.qml"),
194 { title: i18n.tr("Message received"),194 { title: i18n.tr("Message received"),
@@ -197,8 +197,8 @@
197 "/usr/share/sounds/ubuntu/notifications/" })197 "/usr/share/sounds/ubuntu/notifications/" })
198 }198 }
199199
200 ListItem.Standard {200 SettingsListItems.Standard {
201 control: CheckBox {201 CheckBox {
202 objectName: "messageVibrate"202 objectName: "messageVibrate"
203 property bool serverChecked: backendInfo.incomingMessageVibrate203 property bool serverChecked: backendInfo.incomingMessageVibrate
204 onServerCheckedChanged: checked = serverChecked204 onServerCheckedChanged: checked = serverChecked
@@ -208,8 +208,8 @@
208 text: i18n.tr("Vibrate with message sound")208 text: i18n.tr("Vibrate with message sound")
209 }209 }
210210
211 ListItem.Standard {211 SettingsListItems.Standard {
212 control: CheckBox {212 CheckBox {
213 objectName: "messageVibrateSilentMode"213 objectName: "messageVibrateSilentMode"
214 property bool serverChecked: backendInfo.incomingMessageVibrateSilentMode214 property bool serverChecked: backendInfo.incomingMessageVibrateSilentMode
215 onServerCheckedChanged: checked = serverChecked215 onServerCheckedChanged: checked = serverChecked
@@ -223,10 +223,10 @@
223 text: i18n.tr("Other sounds:")223 text: i18n.tr("Other sounds:")
224 }224 }
225225
226 ListItem.Standard {226 SettingsListItems.Standard {
227 text: i18n.tr("Keyboard sound")227 text: i18n.tr("Keyboard sound")
228228
229 control: Switch {229 Switch {
230 objectName: "keyboardSoundSwitch"230 objectName: "keyboardSoundSwitch"
231 property bool serverChecked: keyboardSettings.keyPressFeedback231 property bool serverChecked: keyboardSettings.keyPressFeedback
232 onServerCheckedChanged: checked = serverChecked232 onServerCheckedChanged: checked = serverChecked
@@ -235,20 +235,22 @@
235 }235 }
236 }236 }
237237
238 ListItem.Standard {238 SettingsListItems.Standard {
239 id: lockSound239 id: lockSound
240 control: Switch {240
241 Switch {
241 checked: false242 checked: false
242 }243 }
243 text: i18n.tr("Lock sound")244 text: i18n.tr("Lock sound")
244 visible: showAllUI245 visible: showAllUI
245 }246 }
246247
247 ListItem.Divider {}248 // FIXME: Add spacing here.
248249
249 ListItem.Standard {250 SettingsListItems.Standard {
250 text: i18n.tr("Other vibrations")251 text: i18n.tr("Other vibrations")
251 control: Switch {252
253 Switch {
252 objectName: "otherVibrateSwitch"254 objectName: "otherVibrateSwitch"
253 property bool serverChecked: backendInfo.otherVibrate255 property bool serverChecked: backendInfo.otherVibrate
254 onServerCheckedChanged: checked = serverChecked256 onServerCheckedChanged: checked = serverChecked
255257
=== modified file 'plugins/time-date/ChooseTimeZone.qml'
--- plugins/time-date/ChooseTimeZone.qml 2015-10-16 13:42:50 +0000
+++ plugins/time-date/ChooseTimeZone.qml 2015-11-27 13:34:19 +0000
@@ -20,6 +20,7 @@
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings 1.022import SystemSettings 1.0
23import SystemSettings.ListItems 1.0 as SettingsListItems
23import Ubuntu.Components 1.324import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem25import Ubuntu.Components.ListItems 1.3 as ListItem
25import Ubuntu.SystemSettings.TimeDate 1.026import Ubuntu.SystemSettings.TimeDate 1.0
@@ -52,7 +53,7 @@
52 visible: showAllUI53 visible: showAllUI
53 }54 }
5455
55 ListItem.Standard {56 SettingsListItems.Standard {
56 anchors.top: setTimeZoneSelector.bottom57 anchors.top: setTimeZoneSelector.bottom
57 text: timeDatePanel.timeZone58 text: timeDatePanel.timeZone
58 enabled: false59 enabled: false
@@ -96,7 +97,7 @@
9697
97 model: timeDatePanel.timeZoneModel98 model: timeDatePanel.timeZoneModel
98 visible: setTimeZoneSelector.selectedIndex == 1 && count > 099 visible: setTimeZoneSelector.selectedIndex == 1 && count > 0
99 delegate: ListItem.Standard {100 delegate: SettingsListItems.Standard {
100 text: displayName101 text: displayName
101 // If a timezone is manually selected, record which one so that102 // If a timezone is manually selected, record which one so that
102 // we highlight that one only. Usually all cities in that timezone103 // we highlight that one only. Usually all cities in that timezone
103104
=== modified file 'plugins/time-date/PageComponent.qml'
--- plugins/time-date/PageComponent.qml 2015-10-16 13:42:50 +0000
+++ plugins/time-date/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Iain Lane <iain.lane@canonical.com>6 * Contact: Iain Lane <iain.lane@canonical.com>
7 *7 *
@@ -20,8 +20,9 @@
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings 1.022import SystemSettings 1.0
23import SystemSettings.ListItems 1.0 as SettingsListItems
23import Ubuntu.Components 1.324import Ubuntu.Components 1.3
24import Ubuntu.Components.ListItems 1.3 as ListItem25import Ubuntu.Components.ListItems 1.3 as ListItems
25import Ubuntu.Components.Popups 1.326import Ubuntu.Components.Popups 1.3
26import Ubuntu.SystemSettings.TimeDate 1.027import Ubuntu.SystemSettings.TimeDate 1.0
2728
@@ -62,13 +63,12 @@
6263
63 SettingsItemTitle { text: i18n.tr ("Time zone:") }64 SettingsItemTitle { text: i18n.tr ("Time zone:") }
6465
65 ListItem.SingleValue {66 SettingsListItems.SingleValueProgression {
66 objectName: "timeZone"67 objectName: "timeZone"
67 id: timeZone68 id: timeZone
68 //e.g. America/New_York -> America/New York69 //e.g. America/New_York -> America/New York
69 text: timeDatePanel.timeZone.replace("_", " ")70 text: timeDatePanel.timeZone.replace("_", " ")
70 value: getUTCOffset()71 value: getUTCOffset()
71 progression: true
72 onClicked: pageStack.push(Qt.resolvedUrl("ChooseTimeZone.qml"), {72 onClicked: pageStack.push(Qt.resolvedUrl("ChooseTimeZone.qml"), {
73 timeDatePanel: timeDatePanel73 timeDatePanel: timeDatePanel
74 })74 })
@@ -78,7 +78,7 @@
78 text: i18n.tr ("Set the time and date:")78 text: i18n.tr ("Set the time and date:")
79 }79 }
8080
81 ListItem.ItemSelector {81 ListItems.ItemSelector {
82 id: setTimeAutomatically82 id: setTimeAutomatically
83 objectName: "timeItemSelector"83 objectName: "timeItemSelector"
84 model: [ i18n.tr("Automatically") , i18n.tr("Manually")]84 model: [ i18n.tr("Automatically") , i18n.tr("Manually")]
@@ -109,11 +109,11 @@
109 TimePicker {}109 TimePicker {}
110 }110 }
111111
112 ListItem.Standard {112 SettingsListItems.StandardProgression {
113 id: currentTime113 id: currentTime
114 objectName: "currentTime"114 objectName: "currentTime"
115 progression: setTimeAutomatically.selectedIndex === 1 // Manually115 progressionVisible: setTimeAutomatically.selectedIndex === 1 // Manually
116 enabled: progression116 enabled: progressionVisible
117 onClicked: {117 onClicked: {
118 Qt.inputMethod.hide()118 Qt.inputMethod.hide()
119 var popupObj = PopupUtils.open(timePicker);119 var popupObj = PopupUtils.open(timePicker);
120120
=== modified file 'plugins/time-date/Scroller.qml'
--- plugins/time-date/Scroller.qml 2015-08-10 13:31:45 +0000
+++ plugins/time-date/Scroller.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,8 @@
1/*1/*
2 * Copyright (C) 2013 Michael Zanetti <michael_zanetti@gmx.net>2 * Copyright (C) 2013 Michael Zanetti <michael_zanetti@gmx.net>
3 * (C) 2013 Canonical Ltd3 * (C) 2013-2015 Canonical Ltd
4 * Canonical modifications by Iain Lane <iain.lane@canonical.com>4 * Canonical modifications by Iain Lane <iain.lane@canonical.com>,
5 * Jonas G. Drange <jonas.drange@canonical.com>
5 *6 *
6 * This program is free software; you can redistribute it and/or modify7 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by8 * it under the terms of the GNU General Public License as published by
@@ -17,6 +18,7 @@
17 */18 */
1819
19import QtQuick 2.420import QtQuick 2.4
21import SystemSettings.ListItems 1.0 as SettingsListItems
20import Ubuntu.Components 1.322import Ubuntu.Components 1.3
21import Ubuntu.Components.ListItems 1.3 as ListItems23import Ubuntu.Components.ListItems 1.3 as ListItems
2224
@@ -106,13 +108,10 @@
106 preferredHighlightEnd: 0.5108 preferredHighlightEnd: 0.5
107 clip: true109 clip: true
108110
109 delegate: ListItems.Standard {111 delegate: SettingsListItems.Standard {
110 width: parent.width112 width: parent.width
111 highlightWhenPressed: false113 highlightWhenPressed: false
112 Label {114 text: modelData
113 anchors.centerIn: parent
114 text: modelData
115 }
116 showDivider: false115 showDivider: false
117 onClicked: listView.currentIndex = index116 onClicked: listView.currentIndex = index
118 }117 }
119118
=== modified file 'plugins/time-date/TimePicker.qml'
--- plugins/time-date/TimePicker.qml 2015-08-10 13:31:45 +0000
+++ plugins/time-date/TimePicker.qml 2015-11-27 13:34:19 +0000
@@ -18,7 +18,6 @@
1818
19import QtQuick 2.419import QtQuick 2.4
20import Ubuntu.Components 1.320import Ubuntu.Components 1.3
21import Ubuntu.Components.ListItems 1.3 as ListItem
22import Ubuntu.Components.Popups 1.321import Ubuntu.Components.Popups 1.3
2322
24Dialog {23Dialog {
2524
=== modified file 'plugins/time-date/settings-time-date.svg'
--- plugins/time-date/settings-time-date.svg 2013-06-28 15:20:36 +0000
+++ plugins/time-date/settings-time-date.svg 2015-11-27 13:34:19 +0000
@@ -9,14 +9,15 @@
9 xmlns="http://www.w3.org/2000/svg"9 xmlns="http://www.w3.org/2000/svg"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 width="90"12 width="96"
13 height="90"13 height="96"
14 id="svg3180"14 id="svg4874"
15 version="1.1"15 version="1.1"
16 inkscape:version="0.48+devel r12322"16 inkscape:version="0.91+devel r"
17 sodipodi:docname="setting-time-date.svg">17 viewBox="0 0 96 96.000001"
18 sodipodi:docname="calendar.svg">
18 <defs19 <defs
19 id="defs3182" />20 id="defs4876" />
20 <sodipodi:namedview21 <sodipodi:namedview
21 id="base"22 id="base"
22 pagecolor="#ffffff"23 pagecolor="#ffffff"
@@ -24,18 +25,95 @@
24 borderopacity="1.0"25 borderopacity="1.0"
25 inkscape:pageopacity="0.0"26 inkscape:pageopacity="0.0"
26 inkscape:pageshadow="2"27 inkscape:pageshadow="2"
27 inkscape:zoom="5.0931703"28 inkscape:zoom="7.0249991"
28 inkscape:cx="45.796623"29 inkscape:cx="-11.409258"
29 inkscape:cy="25.966145"30 inkscape:cy="72.576504"
30 inkscape:document-units="px"31 inkscape:document-units="px"
31 inkscape:current-layer="g3855"32 inkscape:current-layer="g4780"
32 showgrid="false"33 showgrid="true"
34 showborder="true"
33 fit-margin-top="0"35 fit-margin-top="0"
34 fit-margin-left="0"36 fit-margin-left="0"
35 fit-margin-right="0"37 fit-margin-right="0"
36 fit-margin-bottom="0" />38 fit-margin-bottom="0"
39 inkscape:snap-bbox="true"
40 inkscape:bbox-paths="true"
41 inkscape:bbox-nodes="true"
42 inkscape:snap-bbox-edge-midpoints="true"
43 inkscape:snap-bbox-midpoints="true"
44 inkscape:object-paths="true"
45 inkscape:snap-intersection-paths="true"
46 inkscape:object-nodes="true"
47 inkscape:snap-smooth-nodes="true"
48 inkscape:snap-midpoints="true"
49 inkscape:snap-object-midpoints="true"
50 inkscape:snap-center="true"
51 showguides="true"
52 inkscape:guide-bbox="true"
53 inkscape:snap-global="true">
54 <inkscape:grid
55 type="xygrid"
56 id="grid5451"
57 empspacing="8" />
58 <sodipodi:guide
59 orientation="1,0"
60 position="8,-8.0000001"
61 id="guide4063" />
62 <sodipodi:guide
63 orientation="1,0"
64 position="4,-8.0000001"
65 id="guide4065" />
66 <sodipodi:guide
67 orientation="0,1"
68 position="-8,88.000001"
69 id="guide4067" />
70 <sodipodi:guide
71 orientation="0,1"
72 position="-8,92.000001"
73 id="guide4069" />
74 <sodipodi:guide
75 orientation="0,1"
76 position="104,4"
77 id="guide4071" />
78 <sodipodi:guide
79 orientation="0,1"
80 position="-5,8.0000001"
81 id="guide4073" />
82 <sodipodi:guide
83 orientation="1,0"
84 position="92,-8.0000001"
85 id="guide4075" />
86 <sodipodi:guide
87 orientation="1,0"
88 position="88,-8.0000001"
89 id="guide4077" />
90 <sodipodi:guide
91 orientation="0,1"
92 position="-8,84.000001"
93 id="guide4074" />
94 <sodipodi:guide
95 orientation="1,0"
96 position="12,-8.0000001"
97 id="guide4076" />
98 <sodipodi:guide
99 orientation="0,1"
100 position="-5,12"
101 id="guide4078" />
102 <sodipodi:guide
103 orientation="1,0"
104 position="84,-9.0000001"
105 id="guide4080" />
106 <sodipodi:guide
107 position="48,-8.0000001"
108 orientation="1,0"
109 id="guide4170" />
110 <sodipodi:guide
111 position="-8,48"
112 orientation="0,1"
113 id="guide4172" />
114 </sodipodi:namedview>
37 <metadata115 <metadata
38 id="metadata3185">116 id="metadata4879">
39 <rdf:RDF>117 <rdf:RDF>
40 <cc:Work118 <cc:Work
41 rdf:about="">119 rdf:about="">
@@ -50,49 +128,55 @@
50 inkscape:label="Layer 1"128 inkscape:label="Layer 1"
51 inkscape:groupmode="layer"129 inkscape:groupmode="layer"
52 id="layer1"130 id="layer1"
53 transform="translate(456.42857,-738.79075)">131 transform="translate(67.857146,-78.50504)">
54 <g132 <g
55 transform="translate(-2258.4286,438.42854)"133 transform="matrix(0,-1,-1,0,373.50506,516.50504)"
56 id="g3855">134 id="g4845"
57 <rect135 style="display:inline">
58 style="opacity:0.00100002;color:#000000;fill:#000000;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"136 <g
59 id="rect3508"137 inkscape:export-ydpi="90"
60 width="90"138 inkscape:export-xdpi="90"
61 height="90"139 inkscape:export-filename="next01.png"
62 x="1802"140 transform="matrix(-0.9996045,0,0,1,575.94296,-611.00001)"
63 y="300.36221" />141 id="g4778"
64 <path142 inkscape:label="Layer 1">
65 style="opacity:0.25;color:#000000;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"143 <g
66 d="M 42.03125 17.90625 C 28.696483 17.90625 17.90625 28.696483 17.90625 42.03125 C 17.90625 55.366017 28.696483 66.1875 42.03125 66.1875 C 42.375083 66.1875 42.722167 66.170482 43.0625 66.15625 L 43.0625 57.03125 C 43.0623 57.01015 43.0623 56.9587 43.0625 56.9375 C 43.0754 55.34598 43.14325 53.93091 43.59375 52.4375 C 44.10005 50.75898 45.19045 49.17944 46.90625 48.28125 C 48.739875 47.321381 50.599515 47.104599 52.875 47.0625 C 54.240291 47.037241 55.760413 47.0625 57.5 47.0625 L 64.5 47.0625 C 64.920635 47.0625 65.261076 47.066095 65.65625 47.0625 C 65.999321 45.441705 66.1875 43.75422 66.1875 42.03125 C 66.1875 28.696483 55.366017 17.90625 42.03125 17.90625 z "144 transform="matrix(-1,0,0,1,575.99999,611)"
67 transform="translate(1802,300.36221)"145 id="g4780"
68 id="path3510" />146 style="display:inline">
69 <path147 <rect
70 style="font-size:xx-small;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;color-interpolation:sRGB;color-interpolation-filters:linearRGB;fill:#808080;fill-opacity:1;stroke:none;stroke-width:3.3547709;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;clip-rule:nonzero;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;font-family:sans-serif;-inkscape-font-specification:sans-serif"148 style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;stroke:none;stroke-width:4;marker:none;enable-background:accumulate"
71 d="M 42.03125 15 C 27.12175 15 15 27.12173 15 42.03125 C 15 56.94077 27.12175 69.09375 42.03125 69.09375 C 42.372987 69.09375 42.723784 69.075144 43.0625 69.0625 C 43.062407 69.05177 43.062588 69.041996 43.0625 69.03125 C 43.0624 69.01715 43.0625 68.98285 43.0625 68.96875 L 43.0625 65.03125 C 42.720305 65.046238 42.377238 65.0625 42.03125 65.0625 C 29.28355 65.0625 19 54.779 19 42.03125 C 19 29.28349 29.28355 19 42.03125 19 C 54.77905 19 65.0625 29.28349 65.0625 42.03125 C 65.0625 43.758289 64.857909 45.445501 64.5 47.0625 C 66.037863 47.0625 67.386959 47.021872 68.625 47.03125 C 68.929484 45.410259 69.09375 43.738953 69.09375 42.03125 C 69.09375 27.12173 56.94075 15 42.03125 15 z "149 id="rect4782"
72 transform="translate(1802,300.36221)"150 width="96.037987"
73 id="path3512" />151 height="96"
74 <path152 x="-438.00244"
75 style="font-size:xx-small;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;color-interpolation:sRGB;color-interpolation-filters:linearRGB;fill:#808080;fill-opacity:1;stroke:none;stroke-width:3.99999976;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;clip-rule:nonzero;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;font-family:sans-serif;-inkscape-font-specification:sans-serif"153 y="345.36221"
76 d="m 1846,323.34375 -4,0.0312 0,2 0.031,16.0625 0,2 4,-0.0312 0,-2 L 1846,325.34375 1846,323.34375 Z"154 transform="scale(-1,1)" />
77 id="path3516"155 <g
78 inkscape:connector-curvature="0" />156 transform="matrix(0,-0.99980223,-1.0001978,0,0,0)"
79 <path157 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:48.03580475px;line-height:125%;font-family:Ubuntu;-inkscape-font-specification:Ubuntu;text-align:end;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:end;fill:#808080;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
80 style="font-size:xx-small;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;color-interpolation:sRGB;color-interpolation-filters:linearRGB;fill:#808080;fill-opacity:1;stroke:none;stroke-width:3.99999976;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;clip-rule:nonzero;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;font-family:sans-serif;-inkscape-font-specification:sans-serif"158 id="text4416">
81 d="m 1831,340.375 0,4 2,0 11,0 2,0 0,-4 -2,0 -11,0 L 1831,340.375 Z"159 <path
82 id="path3518"160 d="m -397.70209,-392.6432 q 0,1.72929 -0.72054,3.36251 -0.6725,1.58518 -1.82536,3.17036 -1.15286,1.53715 -2.59393,3.0743 -1.44108,1.48911 -2.88215,2.93018 -0.81661,0.81661 -1.92143,1.92143 -1.05679,1.10483 -2.01751,2.30572 -0.96071,1.2009 -1.63321,2.30572 -0.62447,1.10482 -0.62447,1.92143 l 15.32342,0 0,3.79483 -20.17503,0 q -0.048,-0.28821 -0.048,-0.57643 0,-0.28821 0,-0.52839 0,-2.25769 0.72054,-4.17912 0.76857,-1.96947 1.96946,-3.69876 1.2009,-1.72928 2.69001,-3.26643 1.48911,-1.53715 2.93018,-2.97822 1.2009,-1.15286 2.25769,-2.25768 1.10482,-1.15286 1.92143,-2.25769 0.86464,-1.15286 1.345,-2.35375 0.5284,-1.2009 0.5284,-2.5459 0,-1.44107 -0.48036,-2.44982 -0.43233,-1.00876 -1.2009,-1.68126 -0.76857,-0.6725 -1.82536,-0.96071 -1.00875,-0.33625 -2.16161,-0.33625 -1.39304,0 -2.5459,0.38428 -1.15286,0.38429 -2.06554,0.91268 -0.91268,0.48036 -1.53714,1.05679 -0.62447,0.52839 -0.96072,0.81661 l -2.20965,-3.17036 q 0.43233,-0.48036 1.29697,-1.15286 0.86465,-0.72054 2.06554,-1.34501 1.2009,-0.62446 2.69001,-1.05678 1.48911,-0.43233 3.21839,-0.43233 5.23591,0 7.82984,2.44983 2.64197,2.40179 2.64197,6.82108 z"
83 inkscape:connector-curvature="0" />161 style=""
84 <path162 id="path4162" />
85 style="color:#000000;fill:#808080;fill-opacity:1;stroke:none;stroke-width:3.99999976;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"163 <path
86 d="M 54.34375 51 C 47.853339 51.092144 47.042087 51.799787 47 57 L 47 69 C 47.048 74.94321 48.1185 75 57.5 75 L 64.5 75 C 73.8815 75 74.952 74.94309 75 69 L 75 57 C 74.9519 51.05662 73.8815 51 64.5 51 L 57.5 51 C 56.327312 51 55.270952 50.986837 54.34375 51 z M 55.375 57 C 55.800753 56.993511 56.274025 57 56.8125 57 L 57.1875 57 C 61.4953 57 61.9779 57.02469 62 60 L 62 66 C 61.9779 68.9752 61.4953 69 57.1875 69 L 56.8125 69 C 52.5047 69 52.022 68.97523 52 66 L 52 60 C 52.019338 57.3967 52.394732 57.045423 55.375 57 z M 66 57 L 69 57 L 69 69 L 66 69 L 66 61 L 64 61 L 64 59 L 66 57 z "164 d="m -383.46173,-388.31997 q 7.25341,0.28821 10.61592,3.17036 3.41054,2.88215 3.41054,7.82984 0,2.20964 -0.76857,4.08304 -0.72054,1.8734 -2.25769,3.2184 -1.48911,1.345 -3.79482,2.11357 -2.30572,0.76858 -5.47609,0.76858 -1.24893,0 -2.54589,-0.19215 -1.29697,-0.19214 -2.40179,-0.48035 -1.10483,-0.28822 -1.96947,-0.57643 -0.86465,-0.28822 -1.24893,-0.48036 l 0.86464,-3.8909 q 0.81661,0.38428 2.64197,1.00875 1.8734,0.62447 4.5634,0.62447 2.16161,0 3.60269,-0.48036 1.48911,-0.48036 2.40179,-1.29697 0.91268,-0.81661 1.29696,-1.8734 0.43233,-1.10482 0.43233,-2.30571 0,-1.82537 -0.62447,-3.2184 -0.62446,-1.44108 -2.20965,-2.40179 -1.58518,-0.96072 -4.22715,-1.44108 -2.64197,-0.52839 -6.67697,-0.52839 0.28821,-2.35376 0.43232,-4.4193 0.19214,-2.06554 0.33625,-4.035 0.14411,-1.96947 0.24018,-3.8909 0.0961,-1.96947 0.19214,-4.13108 l 16.04396,0 0,3.79483 -12.15306,0 q -0.048,0.72053 -0.14411,1.96946 -0.0961,1.2009 -0.19214,2.5459 -0.0961,1.29697 -0.19214,2.5459 -0.0961,1.24893 -0.19215,1.96947 z"
87 transform="translate(1802,300.36221)"165 style=""
88 id="path3520" />166 id="path4164" />
89 <rect167 </g>
90 style="color:#000000;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate"168 <path
91 id="rect3544"169 style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:4.00079155;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
92 width="4"170 d="M 23.976562 8.0019531 C 18.943803 8.0601401 15.26124 7.881546 12.25 9.5429688 C 10.74438 10.37368 9.5531414 11.778707 8.8945312 13.533203 C 8.2359314 15.287699 7.9980469 17.369641 7.9980469 20 L 7.9980469 48.001953 L 7.9980469 76 C 7.9980469 78.630359 8.2359314 80.714254 8.8945312 82.46875 C 9.5531414 84.223246 10.74438 85.62632 12.25 86.457031 C 15.26124 88.118454 18.943803 87.941823 23.976562 88 L 23.988281 88 L 47.998047 88 L 72.009766 88 L 72.021484 88 C 77.054244 87.94182 80.736807 88.118454 83.748047 86.457031 C 85.253667 85.62632 86.444916 84.223246 87.103516 82.46875 C 87.762113 80.714254 88 78.630359 88 76 L 88 48.001953 L 83.998047 48.001953 L 83.998047 76 C 83.998047 78.369642 83.747742 80.022711 83.357422 81.0625 C 82.967112 82.102279 82.547973 82.550368 81.814453 82.955078 C 80.350163 83.762988 77.036307 83.941223 71.998047 84 L 71.974609 84 L 47.998047 84 L 24.021484 84 L 24 84 C 18.96042 83.941263 15.648104 83.763108 14.183594 82.955078 C 13.450074 82.550368 13.030935 82.102279 12.640625 81.0625 C 12.250305 80.022711 12 78.369642 12 76 L 12 48.001953 L 12 32 C 12 29.630358 12.250305 27.977279 12.640625 26.9375 C 13.030935 25.897711 13.450074 25.449632 14.183594 25.044922 C 15.650624 24.235492 18.967304 24.058477 24.021484 24 L 47.998047 24 L 71.998047 24 C 77.036307 24.05877 80.350163 24.237002 81.814453 25.044922 C 82.547973 25.449632 82.967112 25.897711 83.357422 26.9375 C 83.747742 27.977279 83.998047 29.630358 83.998047 32 L 83.998047 48 L 88 48 L 88 20 C 88 17.369641 87.762116 15.287699 87.103516 13.533203 C 86.444916 11.778707 85.253667 10.37368 83.748047 9.5429688 C 80.736807 7.881546 77.054244 8.0601301 72.021484 8.0019531 L 72.009766 8.0019531 L 72 8.0019531 L 72 16 L 66 16 L 66 8.0019531 L 30 8.0019531 L 30 16 L 24 16 L 24 8.0019531 L 23.988281 8.0019531 L 23.976562 8.0019531 z "
93 height="6"171 transform="matrix(0,-1,-1.0003957,0,438.00245,441.36222)"
94 x="1857"172 id="path4410" />
95 y="360.36221" />173 <path
174 style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:#808080;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:10;marker:none;enable-background:accumulate"
175 d="M 30 0 L 24 1 L 24 8 L 30 8 L 30 0 z M 72 0 L 66 1 L 66 8 L 72 8 L 72 0 z "
176 transform="matrix(0,-1,-1.0003957,0,438.00245,441.36222)"
177 id="path4430" />
178 </g>
179 </g>
96 </g>180 </g>
97 </g>181 </g>
98</svg>182</svg>
99183
=== modified file 'plugins/wifi/AccessPoint.qml'
--- plugins/wifi/AccessPoint.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/AccessPoint.qml 2015-11-27 13:34:19 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright 2013 Canonical Ltd.2 * Copyright 2013-2015 Canonical Ltd.
3 *3 *
4 * This program is free software; you can redistribute it and/or modify4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by5 * it under the terms of the GNU General Public License as published by
@@ -28,19 +28,6 @@
28 property bool secure: false28 property bool secure: false
29 property bool adHoc: false29 property bool adHoc: false
30 property int signalStrength: 030 property int signalStrength: 0
31
32 signal activate()
33
34 onCheckedChanged: {
35 // Can't rely on binding. Checked is assigned on click.
36 checkBoxActive.checked = checked;
37
38 // if stack has NetworkDetailsBrief, pop it
39 if (pageStack.depth === 3) {
40 pageStack.pop();
41 }
42 }
43
44 iconName: {31 iconName: {
45 var imageName = "nm-signal-100"32 var imageName = "nm-signal-100"
4633
@@ -61,16 +48,18 @@
61 }48 }
62 return imageName;49 return imageName;
63 }50 }
6451 layout.subtitle.text: checked ? i18n.tr("Connected") : ""
65 iconFrame: false52
66 control: CheckBox {53 signal activate()
67 id: checkBoxActive54
6855 onCheckedChanged: {
69 onClicked: {56 // if stack has NetworkDetailsBrief, pop it
70 accessPoint.activate();57 if (pageStack.depth === 3) {
58 pageStack.pop();
71 }59 }
72 }60 }
73 progression: checked61
62 progressionVisible: checked
74 onClicked: {63 onClicked: {
75 if (checked) {64 if (checked) {
76 pageStack.push(Qt.resolvedUrl("NetworkDetailsBrief.qml"),65 pageStack.push(Qt.resolvedUrl("NetworkDetailsBrief.qml"),
7766
=== modified file 'plugins/wifi/DivMenuItem.qml'
--- plugins/wifi/DivMenuItem.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/DivMenuItem.qml 2015-11-27 13:34:19 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright 2013 Canonical Ltd.2 * Copyright 2013-2015 Canonical Ltd.
3 *3 *
4 * This program is free software; you can redistribute it and/or modify4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by5 * it under the terms of the GNU General Public License as published by
@@ -18,8 +18,8 @@
18 */18 */
1919
20import QtQuick 2.420import QtQuick 2.4
21import Ubuntu.Components.ListItems 1.3 as ListItem21import Ubuntu.Components 1.3
2222
23ListItem.Empty {23ListItemLayout {
24 height: units.gu(3)24 height: units.gu(3)
25}25}
2626
=== modified file 'plugins/wifi/FramedMenuItem.qml'
--- plugins/wifi/FramedMenuItem.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/FramedMenuItem.qml 2015-11-27 13:34:19 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright 2013 Canonical Ltd.2 * Copyright 2013-2015 Canonical Ltd.
3 *3 *
4 * This program is free software; you can redistribute it and/or modify4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by5 * it under the terms of the GNU General Public License as published by
@@ -19,7 +19,11 @@
19 */19 */
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem
2424
25ListItem.Standard {}25SettingsListItems.IconProgression {
26 // FIXME: use padding + padding + icon width
27 divider.anchors.leftMargin: units.gu(6)
28 layout.subtitle.color: UbuntuColors.green
29}
2630
=== modified file 'plugins/wifi/MenuItemFactory.qml'
--- plugins/wifi/MenuItemFactory.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/MenuItemFactory.qml 2015-11-27 13:34:19 +0000
@@ -1,5 +1,5 @@
1/*1/*
2 * Copyright 2013 Canonical Ltd.2 * Copyright 2013-2015 Canonical Ltd.
3 *3 *
4 * This program is free software; you can redistribute it and/or modify4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by5 * it under the terms of the GNU General Public License as published by
@@ -15,7 +15,7 @@
15 *15 *
16 * Authors:16 * Authors:
17 * Nick Dedekind <nick.dedekind@canonical.com>17 * Nick Dedekind <nick.dedekind@canonical.com>
18 */18 */
1919
20import QtQuick 2.420import QtQuick 2.4
21import QMenuModel 0.1 as QMenuModel21import QMenuModel 0.1 as QMenuModel
@@ -65,7 +65,7 @@
65 property int menuIndex: -165 property int menuIndex: -1
6666
67 text: menu && menu.label ? menu.label : ""67 text: menu && menu.label ? menu.label : ""
68 icon: menu ? menu.icon : ""68 iconName: menu ? menu.icon : ""
69 checkable: menu ? (menu.isCheck || menu.isRadio) : false69 checkable: menu ? (menu.isCheck || menu.isRadio) : false
70 checked: checkable ? menu.isToggled : false70 checked: checkable ? menu.isToggled : false
71 enabled: menu ? menu.sensitive : false71 enabled: menu ? menu.sensitive : false
@@ -106,7 +106,7 @@
106 property int menuIndex: -1106 property int menuIndex: -1
107 property var extendedData: menu && menu.ext || undefined107 property var extendedData: menu && menu.ext || undefined
108 text: menu && menu.label ? menu.label : ""108 text: menu && menu.label ? menu.label : ""
109 busy: getExtendedProperty(extendedData, "xCanonicalBusyAction", false)109 busy: getExtendedProperty(extendedData, "xCanonicalBusyAction", false) || true
110110
111 onMenuModelChanged: {111 onMenuModelChanged: {
112 loadAttributes();112 loadAttributes();
@@ -150,7 +150,7 @@
150 loadAttributes();150 loadAttributes();
151 }151 }
152152
153 USC.ServerPropertySynchroniser {153 resources: USC.ServerPropertySynchroniser {
154 userTarget: apItem154 userTarget: apItem
155 userProperty: "active"155 userProperty: "active"
156 userTrigger: "onActivate"156 userTrigger: "onActivate"
157157
=== modified file 'plugins/wifi/NetworkDetails.qml'
--- plugins/wifi/NetworkDetails.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/NetworkDetails.qml 2015-11-27 13:34:19 +0000
@@ -21,8 +21,8 @@
21import QtQuick 2.421import QtQuick 2.4
22import QtQuick.Layouts 1.122import QtQuick.Layouts 1.1
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.ListItems 1.3 as ListItem
26import Ubuntu.SystemSettings.Wifi 1.026import Ubuntu.SystemSettings.Wifi 1.0
2727
28ItemPage {28ItemPage {
@@ -53,29 +53,24 @@
53 anchors.left: parent.left53 anchors.left: parent.left
54 anchors.right: parent.right54 anchors.right: parent.right
5555
56 ListItem.Standard {56 SettingsListItems.SingleValue {
57 text: i18n.tr("Name")57 text: i18n.tr("Name")
58 control: Label {58 value: networkName
59 text: networkName
60 }
61 }59 }
6260
63 ListItem.Standard {61 SettingsListItems.SingleValue {
64 id: lastLabel62 id: lastLabel
65 text: i18n.tr("Last connected")63 text: i18n.tr("Last connected")
66 control: Label {64 value: networkDetails.lastUsed.length !== 0 ?
67 id: lastField65 networkDetails.lastUsed : i18n.tr("Never")
68
69 text: networkDetails.lastUsed.length !== 0 ?
70 networkDetails.lastUsed : i18n.tr("Never")
71 }
72 }66 }
7367
74 ListItem.Standard {68 SettingsListItems.Standard {
75 id: passwordLabel69 id: passwordLabel
76 text: i18n.tr("Password")70 text: i18n.tr("Password")
77 visible: networkDetails.password.length !== 071 visible: networkDetails.password.length !== 0
78 control: TextInput {72
73 TextInput {
79 id: passwordField74 id: passwordField
80 readOnly: true75 readOnly: true
81 text: networkDetails.password76 text: networkDetails.password
@@ -84,28 +79,30 @@
84 }79 }
85 }80 }
8681
87 ListItem.Standard {82 SettingsListItems.Standard {
88 id: passwordVisible83 id: passwordVisible
89 text: i18n.tr("Show password")84 text: i18n.tr("Show password")
90 visible: networkDetails.password.length !== 085 visible: networkDetails.password.length !== 0
91 control: Switch {86
87 Switch {
92 id: passwordVisibleSwitch88 id: passwordVisibleSwitch
93 }89 }
94 }90 }
9591
96 ListItem.Divider {}92 SettingsListItems.SingleControl {
9793
98 Button {94 Button {
99 objectName: "forgetNetwork"95 objectName: "forgetNetwork"
100 text : i18n.tr("Forget this network")96 text : i18n.tr("Forget this network")
101 anchors {97 anchors {
102 left: parent.left98 left: parent.left
103 right: parent.right99 right: parent.right
104 margins: units.gu(2)100 margins: units.gu(2)
105 }101 }
106 onClicked : {102 onClicked : {
107 DbusHelper.forgetConnection(dbusPath);103 DbusHelper.forgetConnection(dbusPath);
108 pageStack.pop();104 pageStack.pop();
105 }
109 }106 }
110 }107 }
111 }108 }
112109
=== modified file 'plugins/wifi/NetworkDetailsBrief.qml'
--- plugins/wifi/NetworkDetailsBrief.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/NetworkDetailsBrief.qml 2015-11-27 13:34:19 +0000
@@ -21,8 +21,8 @@
21import QtQuick 2.421import QtQuick 2.4
22import QtQuick.Layouts 1.122import QtQuick.Layouts 1.1
23import SystemSettings 1.023import SystemSettings 1.0
24import SystemSettings.ListItems 1.0 as SettingsListItems
24import Ubuntu.Components 1.325import Ubuntu.Components 1.3
25import Ubuntu.Components.ListItems 1.3 as ListItem
26import Ubuntu.SystemSettings.Wifi 1.026import Ubuntu.SystemSettings.Wifi 1.0
2727
28ItemPage {28ItemPage {
@@ -48,27 +48,28 @@
48 anchors.left: parent.left48 anchors.left: parent.left
49 anchors.right: parent.right49 anchors.right: parent.right
5050
51 ListItem.Divider {}51 SettingsListItems.SingleControl {
5252 Button {
53 Button {53 text : i18n.tr("Forget this network")
54 text : i18n.tr("Forget this network")54 anchors {
55 anchors {55 left: parent.left
56 left: parent.left56 right: parent.right
57 right: parent.right57 margins: units.gu(2)
58 margins: units.gu(2)58 }
59 }59 onClicked: {
60 onClicked: {60 if (DbusHelper.forgetActiveDevice()) {
61 if (DbusHelper.forgetActiveDevice()) {61 accessPoint.checked = false;
62 accessPoint.checked = false;62 accessPoint.checkedChanged(false)
63 accessPoint.checkedChanged(false)63 }
64 }64 }
65 }65 }
66 }66 }
6767
68 ListItem.Standard {68 SettingsListItems.Standard {
69 text: i18n.tr("IP address")69 text: i18n.tr("IP address")
70 id: addressItem70 id: addressItem
71 control: TextField {71
72 TextField {
72 text: DbusHelper.wifiIp4Address73 text: DbusHelper.wifiIp4Address
73 readOnly: true74 readOnly: true
74 horizontalAlignment: TextInput.AlignRight75 horizontalAlignment: TextInput.AlignRight
7576
=== modified file 'plugins/wifi/PageComponent.qml'
--- plugins/wifi/PageComponent.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/PageComponent.qml 2015-11-27 13:34:19 +0000
@@ -16,8 +16,8 @@
1616
17import QtQuick 2.417import QtQuick 2.4
18import SystemSettings 1.018import SystemSettings 1.0
19import SystemSettings.ListItems 1.0 as SettingsListItems
19import Ubuntu.Components 1.320import Ubuntu.Components 1.3
20import Ubuntu.Components.ListItems 1.3 as ListItem
21import Ubuntu.Components.Popups 1.321import Ubuntu.Components.Popups 1.3
22import Ubuntu.SystemSettings.Wifi 1.022import Ubuntu.SystemSettings.Wifi 1.0
23import QMenuModel 0.123import QMenuModel 0.1
@@ -81,7 +81,6 @@
81 right: parent.right81 right: parent.right
82 }82 }
83 height: loader.height83 height: loader.height
84 visible: height > 0
8584
86 Loader {85 Loader {
87 id: loader86 id: loader
@@ -124,16 +123,7 @@
124 }123 }
125 }124 }
126125
127 ListItem.Divider {}126 SettingsListItems.Standard {
128
129 ListItem.SingleValue {
130 objectName: "previousNetwork"
131 text: i18n.tr("Previous networks")
132 progression: true
133 onClicked: pageStack.push(Qt.resolvedUrl("PreviousNetworks.qml"))
134 }
135
136 ListItem.SingleValue {
137 objectName: "connectToHiddenNetwork"127 objectName: "connectToHiddenNetwork"
138 text: i18n.tr("Connect to hidden network…")128 text: i18n.tr("Connect to hidden network…")
139 visible : wifibase.wifiEnabled129 visible : wifibase.wifiEnabled
@@ -143,6 +133,12 @@
143 }133 }
144 }134 }
145135
136 SettingsListItems.StandardProgression {
137 objectName: "previousNetwork"
138 text: i18n.tr("Previous networks")
139 onClicked: pageStack.push(Qt.resolvedUrl("PreviousNetworks.qml"))
140 }
141
146 Loader {142 Loader {
147 id: otherNetworLoader143 id: otherNetworLoader
148 asynchronous: false144 asynchronous: false
149145
=== modified file 'plugins/wifi/PreviousNetworks.qml'
--- plugins/wifi/PreviousNetworks.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/PreviousNetworks.qml 2015-11-27 13:34:19 +0000
@@ -16,8 +16,8 @@
1616
17import QtQuick 2.417import QtQuick 2.4
18import SystemSettings 1.018import SystemSettings 1.0
19import SystemSettings.ListItems 1.0 as SettingsListItems
19import Ubuntu.Components 1.320import Ubuntu.Components 1.3
20import Ubuntu.Components.ListItems 1.3 as ListItem
21import Ubuntu.SystemSettings.Wifi 1.021import Ubuntu.SystemSettings.Wifi 1.0
22import QMenuModel 0.122import QMenuModel 0.1
2323
@@ -54,9 +54,8 @@
54 duration: UbuntuAnimation.SnapDuration54 duration: UbuntuAnimation.SnapDuration
55 }55 }
56 }56 }
57 delegate: ListItem.Standard {57 delegate: SettingsListItems.StandardProgression {
58 text: name58 text: name
59 progression: true
60 onClicked: {59 onClicked: {
61 pageStack.push(Qt.resolvedUrl("NetworkDetails.qml"),60 pageStack.push(Qt.resolvedUrl("NetworkDetails.qml"),
62 {networkName : name, password : password, lastUsed : lastUsed,61 {networkName : name, password : password, lastUsed : lastUsed,
6362
=== modified file 'plugins/wifi/SectionMenuItem.qml'
--- plugins/wifi/SectionMenuItem.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/SectionMenuItem.qml 2015-11-27 13:34:19 +0000
@@ -18,37 +18,22 @@
18 */18 */
1919
20import QtQuick 2.420import QtQuick 2.4
21import SystemSettings 1.0
21import Ubuntu.Components 1.322import Ubuntu.Components 1.3
22import Ubuntu.Components.ListItems 1.3 as ListItem23
2324SettingsItemTitle {
24BaseMenuItem {25 property alias busy: indicator.running
25 id: menuItem26
26 property alias text: header.text27 ActivityIndicator {
27 property bool busy: false28 id: indicator
28
29 implicitHeight: text !== "" ? header.height : 0
30
31 ListItem.Header {
32 id: header
33
34 height: units.gu(4)
35 anchors {29 anchors {
36 left: parent.left30 top: parent.top
31 topMargin: units.gu(3)
37 right: parent.right32 right: parent.right
38 top: parent.top33 rightMargin: units.gu(2)
39 }34 }
40 visible: text != ""35 height: parent.height - (anchors.topMargin * 1.25)
4136 width: height
42 ActivityIndicator {37 visible: running
43 id: indicator
44 running: busy
45 anchors {
46 margins: units.gu(0.5)
47 right: parent.right
48 }
49 height: parent.height - (anchors.margins * 2)
50 width: height
51 anchors.verticalCenter: parent.verticalCenter
52 }
53 }38 }
54}39}
5540
=== modified file 'plugins/wifi/StandardMenuItem.qml'
--- plugins/wifi/StandardMenuItem.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/StandardMenuItem.qml 2015-11-27 13:34:19 +0000
@@ -28,34 +28,12 @@
2828
29 signal activate()29 signal activate()
3030
31 onCheckedChanged: {31 layout.subtitle.text: checked ? i18n.tr("Connected") : ""
32 // Can't rely on binding. Checked is assigned on click.
33 if (checkable) {
34 checkbox.checked = checked;
35 }
36 }
3732
33 progressionVisible: checked
38 onClicked: {34 onClicked: {
39 if (checkable) {35 if (!checked) {
40 checkbox.clicked();36 menuItem.activate();
41 } else {37 }
42 menuItem.activate();
43 }
44 }
45
46 control: CheckBox {
47 id: checkbox
48
49 Component.onCompleted: {
50 checked = menuItem.checked;
51 }
52
53 // FIXME : should use Checkbox.toggled signal
54 // lp:~nick-dedekind/ubuntu-ui-toolkit/checkbox.toggled
55 onClicked: {
56 menuItem.activate();
57 }
58
59 visible: checkable
60 }38 }
61}39}
6240
=== modified file 'plugins/wifi/SwitchMenuItem.qml'
--- plugins/wifi/SwitchMenuItem.qml 2015-08-10 13:31:45 +0000
+++ plugins/wifi/SwitchMenuItem.qml 2015-11-27 13:34:19 +0000
@@ -33,7 +33,7 @@
33 switcher.checked = checked;33 switcher.checked = checked;
34 }34 }
3535
36 control: Switch {36 Switch {
37 id: switcher37 id: switcher
3838
39 Component.onCompleted: {39 Component.onCompleted: {
4040
=== modified file 'src/CMakeLists.txt'
--- src/CMakeLists.txt 2014-10-31 14:53:32 +0000
+++ src/CMakeLists.txt 2015-11-27 13:34:19 +0000
@@ -20,7 +20,7 @@
20)20)
2121
22set(QML_SOURCES22set(QML_SOURCES
23 qml/CategoryGrid.qml23 qml/CategorySection.qml
24 qml/EntryComponent.qml24 qml/EntryComponent.qml
25 qml/MainWindow.qml25 qml/MainWindow.qml
26 qml/UncategorizedItemsView.qml26 qml/UncategorizedItemsView.qml
2727
=== modified file 'src/SystemSettings/qmldir'
--- src/SystemSettings/qmldir 2014-10-31 08:45:10 +0000
+++ src/SystemSettings/qmldir 2015-11-27 13:34:19 +0000
@@ -1,3 +1,4 @@
1module SystemSettings1module SystemSettings
2
2ItemPage 1.0 ItemPage.qml3ItemPage 1.0 ItemPage.qml
3SettingsItemTitle 1.0 SettingsItemTitle.qml4SettingsItemTitle 1.0 SettingsItemTitle.qml
45
=== renamed file 'src/qml/CategoryGrid.qml' => 'src/qml/CategorySection.qml'
--- src/qml/CategoryGrid.qml 2015-08-10 13:31:45 +0000
+++ src/qml/CategorySection.qml 2015-11-27 13:34:19 +0000
@@ -1,6 +1,8 @@
1import QtQuick 2.41import QtQuick 2.4
2import SystemSettings 1.0
3import SystemSettings.ListItems 1.0 as SettingsListItems
2import Ubuntu.Components 1.34import Ubuntu.Components 1.3
3import Ubuntu.Components.ListItems 1.3 as ListItem5
46
5Column {7Column {
6 anchors {8 anchors {
@@ -14,32 +16,17 @@
1416
15 objectName: "categoryGrid-" + category17 objectName: "categoryGrid-" + category
1618
17 ListItem.Standard {19 SettingsItemTitle {
18 id: header20 id: header
19
20 highlightWhenPressed: false
21 showDivider: false
22 text: categoryName21 text: categoryName
23 visible: repeater.count > 022 visible: repeater.count > 0
24 }23 }
2524
26 Grid {25 Column {
27 property int itemWidth: units.gu(12)26 id: col
2827 anchors {
29 // The amount of whitespace, including column spacing28 left: parent.left
30 property int space: parent.width - columns * itemWidth29 right: parent.right
31
32 // The column spacing is 1/n of the left/right margins
33 property int n: 4
34
35 columnSpacing: space / ((2 * n) + (columns - 1))
36 rowSpacing: units.gu(3)
37 width: (columns * itemWidth) + columnSpacing * (columns - 1)
38 anchors.horizontalCenter: parent.horizontalCenter
39 columns: {
40 var items = Math.floor(parent.width / itemWidth)
41 var count = repeater.count
42 return count < items ? count : items
43 }30 }
4431
45 Repeater {32 Repeater {
@@ -49,7 +36,10 @@
4936
50 delegate: Loader {37 delegate: Loader {
51 id: loader38 id: loader
52 width: parent.itemWidth39 anchors {
40 left: col.left
41 right: col.right
42 }
53 sourceComponent: model.item.entryComponent43 sourceComponent: model.item.entryComponent
54 active: model.item.visible44 active: model.item.visible
55 Connections {45 Connections {
@@ -66,5 +56,4 @@
66 }56 }
67 }57 }
68 }58 }
69 ListItem.ThinDivider { visible: header.visible }
70}59}
7160
=== modified file 'src/qml/EntryComponent.qml'
--- src/qml/EntryComponent.qml 2015-08-10 13:31:45 +0000
+++ src/qml/EntryComponent.qml 2015-11-27 13:34:19 +0000
@@ -1,7 +1,7 @@
1/*1/*
2 * This file is part of system-settings2 * This file is part of system-settings
3 *3 *
4 * Copyright (C) 2013 Canonical Ltd.4 * Copyright (C) 2013-2015 Canonical Ltd.
5 *5 *
6 * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>6 * Contact: Alberto Mardegan <alberto.mardegan@canonical.com>
7 *7 *
@@ -19,58 +19,14 @@
19 */19 */
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Settings.Components 0.1
2424
25Item {25SettingsListItems.IconProgression {
26 id: root26 id: root
2727
28 signal clicked
29
30 height: button.height
31
32 objectName: "entryComponent-" + model.item.baseName28 objectName: "entryComponent-" + model.item.baseName
3329
34 AbstractButton {30 text: i18n.dtr(model.item.translations, model.displayName)
35 id: button31 iconSource: model.icon
36 anchors.left: parent.left
37 anchors.right: parent.right
38 onClicked: root.clicked()
39
40 height: col.height
41
42 Column {
43 id: col
44 anchors.left: parent.left
45 anchors.right: parent.right
46
47 Icon {
48 id: icon
49 anchors.horizontalCenter: parent.horizontalCenter
50 width: height
51 height: units.gu(4)
52 source: model.icon
53 }
54
55 Label {
56 anchors.horizontalCenter: parent.horizontalCenter
57 text: i18n.dtr(model.item.translations, model.displayName)
58 width: col.width
59 horizontalAlignment: Text.AlignHCenter
60 fontSize: "small"
61 wrapMode: Text.WrapAtWordBoundaryOrAnywhere
62 }
63 }
64 }
65
66 UbuntuShape {
67 z: -1
68 visible: button.pressed
69 anchors{
70 fill: root
71 margins: -units.gu(0.25)
72 }
73 backgroundColor: UbuntuColors.darkGrey
74 opacity: 0.15
75 }
76}32}
7733
=== modified file 'src/qml/MainWindow.qml'
--- src/qml/MainWindow.qml 2015-08-10 13:31:45 +0000
+++ src/qml/MainWindow.qml 2015-11-27 13:34:19 +0000
@@ -19,8 +19,8 @@
19 */19 */
2020
21import QtQuick 2.421import QtQuick 2.4
22import SystemSettings.ListItems 1.0 as SettingsListItems
22import Ubuntu.Components 1.323import Ubuntu.Components 1.3
23import Ubuntu.Components.ListItems 1.3 as ListItem
24import SystemSettings 1.024import SystemSettings 1.0
2525
26MainView {26MainView {
@@ -112,6 +112,16 @@
112 visible: false112 visible: false
113 flickable: mainFlickable113 flickable: mainFlickable
114114
115 head.actions: [
116 Action {
117 iconName: "find"
118 onTriggered: {
119 pluginManager.filter = "";
120 search.visible = !search.visible;
121 }
122 }
123 ]
124
115 Flickable {125 Flickable {
116 id: mainFlickable126 id: mainFlickable
117 anchors.fill: parent127 anchors.fill: parent
@@ -125,9 +135,11 @@
125 anchors.left: parent.left135 anchors.left: parent.left
126 anchors.right: parent.right136 anchors.right: parent.right
127137
128 ListItem.SingleControl {138 SettingsListItems.SingleControl {
129 id: search139 id: search
130 control: TextField {140 visible: false
141 TextField {
142 id: searchField
131 width: parent.width - units.gu(4)143 width: parent.width - units.gu(4)
132 placeholderText: i18n.tr("Search")144 placeholderText: i18n.tr("Search")
133 objectName: "searchTextField"145 objectName: "searchTextField"
@@ -135,23 +147,24 @@
135 onDisplayTextChanged:147 onDisplayTextChanged:
136 pluginManager.filter = displayText148 pluginManager.filter = displayText
137 }149 }
150 onVisibleChanged: if (visible) searchField.forceActiveFocus()
138 }151 }
139152
140 UncategorizedItemsView {153 UncategorizedItemsView {
141 model: pluginManager.itemModel("uncategorized-top")154 model: pluginManager.itemModel("uncategorized-top")
142 }155 }
143156
144 CategoryGrid {157 CategorySection {
145 category: "network"158 category: "network"
146 categoryName: i18n.tr("Network")159 categoryName: i18n.tr("Network")
147 }160 }
148161
149 CategoryGrid {162 CategorySection {
150 category: "personal"163 category: "personal"
151 categoryName: i18n.tr("Personal")164 categoryName: i18n.tr("Personal")
152 }165 }
153166
154 CategoryGrid {167 CategorySection {
155 category: "system"168 category: "system"
156 categoryName: i18n.tr("System")169 categoryName: i18n.tr("System")
157 }170 }
158171
=== modified file 'src/ui.qrc'
--- src/ui.qrc 2014-01-31 15:07:01 +0000
+++ src/ui.qrc 2015-11-27 13:34:19 +0000
@@ -1,6 +1,6 @@
1<!DOCTYPE RCC><RCC version="1.0">1<!DOCTYPE RCC><RCC version="1.0">
2<qresource>2<qresource>
3 <file>qml/CategoryGrid.qml</file>3 <file>qml/CategorySection.qml</file>
4 <file>qml/EntryComponent.qml</file>4 <file>qml/EntryComponent.qml</file>
5 <file>qml/MainWindow.qml</file>5 <file>qml/MainWindow.qml</file>
6 <file>qml/UncategorizedItemsView.qml</file>6 <file>qml/UncategorizedItemsView.qml</file>
77
=== modified file 'tests/autopilot/ubuntu_system_settings/tests/indicatornetwork.py'
--- tests/autopilot/ubuntu_system_settings/tests/indicatornetwork.py 2015-08-17 15:39:14 +0000
+++ tests/autopilot/ubuntu_system_settings/tests/indicatornetwork.py 2015-11-27 13:34:19 +0000
@@ -17,6 +17,8 @@
17BUS_NAME = 'com.canonical.indicator.network'17BUS_NAME = 'com.canonical.indicator.network'
18MAIN_IFACE = 'org.gtk.Actions'18MAIN_IFACE = 'org.gtk.Actions'
19MAIN_OBJ = '/com/canonical/indicator/network'19MAIN_OBJ = '/com/canonical/indicator/network'
20MENU_IFACE = 'org.gtk.Menus'
21PHONE_WIFI_OBJ = '/com/canonical/indicator/network/phone_wifi_settings'
20SYSTEM_BUS = False22SYSTEM_BUS = False
2123
22NOT_IMPLEMENTED = '''raise dbus.exceptions.DBusException(24NOT_IMPLEMENTED = '''raise dbus.exceptions.DBusException(
@@ -41,8 +43,12 @@
41 return list(self.actions)43 return list(self.actions)
4244
4345
44def set_state(self, action_name, parameters, platform_data):46def start(self, groups):
45 eval(NOT_IMPLEMENTED)47 return dbusmock.get_object(MAIN_OBJ).menus
48
49
50def end(self, groups):
51 pass
4652
4753
48@dbus.service.method(dbusmock.MOCK_IFACE,54@dbus.service.method(dbusmock.MOCK_IFACE,
@@ -62,12 +68,87 @@
62 mock.describe = describe68 mock.describe = describe
63 mock.describe_all = describe_all69 mock.describe_all = describe_all
64 mock.list_actions = list_actions70 mock.list_actions = list_actions
65 mock.set_state = set_state
6671
67 mock.actions = parameters.get('actions', {72 mock.actions = parameters.get('actions', {
68 'wifi.enable': (True, '', [True]),73 'wifi.enable': (True, '', [True]),
74 'accesspoint.0': (True, '', [True]),
75 'accesspoint.0::strength': (True, '', [44]),
76 'accesspoint.1': (True, '', [False]),
77 'accesspoint.1::strength': (True, '', [100]),
78 'accesspoint.2': (True, '', [False]),
79 'accesspoint.2::strength': (True, '', [74]),
80 'accesspoint.3': (False, '', [False]),
69 })81 })
7082
83 mock.menus = parameters.get('menus', dbus.Array([
84 (
85 dbus.UInt32(0), dbus.UInt32(0),
86 [
87 {
88 'action': 'indicator.wifi.enable',
89 'x-canonical-type': 'com.canonical.indicator.switch',
90 'label': 'Wi-Fi'
91 },
92 {
93 'x-canonical-type': 'com.canonical.indicator.section',
94 'label': 'Available Wi-Fi networks'
95 },
96 {
97 ':section': dbus.Struct(
98 (dbus.UInt32(0), dbus.UInt32(1)), signature='(uu)'
99 )
100 }
101 ]
102 ),
103 (
104 dbus.UInt32(0), dbus.UInt32(1),
105 [
106 {
107 'x-canonical-wifi-ap-is-secure': True,
108 'x-canonical-wifi-ap-is-enterprise': False,
109 'label': 'Secure',
110 'x-canonical-type':
111 'unity.widgets.systemsettings.tablet.accesspoint',
112 'x-canonical-wifi-ap-strength-action':
113 'indicator.accesspoint.0::strength',
114 'action': 'indicator.accesspoint.0',
115 'x-canonical-wifi-ap-is-adhoc': False
116 },
117 {
118 'x-canonical-wifi-ap-is-secure': False,
119 'x-canonical-wifi-ap-is-enterprise': False,
120 'label': 'Insecure',
121 'x-canonical-type':
122 'unity.widgets.systemsettings.tablet.accesspoint',
123 'x-canonical-wifi-ap-strength-action':
124 'indicator.accesspoint.1::strength',
125 'action': 'indicator.accesspoint.1',
126 'x-canonical-wifi-ap-is-adhoc': False
127 },
128 {
129 'x-canonical-wifi-ap-is-secure': True,
130 'x-canonical-wifi-ap-is-enterprise': True,
131 'label': 'Enterprise',
132 'x-canonical-type':
133 'unity.widgets.systemsettings.tablet.accesspoint',
134 'x-canonical-wifi-ap-strength-action':
135 'indicator.accesspoint.2::strength',
136 'action': 'indicator.accesspoint.2',
137 'x-canonical-wifi-ap-is-adhoc': False
138 },
139 {
140 'x-canonical-wifi-ap-is-secure': False,
141 'x-canonical-wifi-ap-is-enterprise': False,
142 'label': 'Unknown',
143 'x-canonical-type':
144 'unknown-type',
145 'action': 'indicator.accesspoint.3',
146 'x-canonical-wifi-ap-is-adhoc': False
147 }
148 ]
149 )
150 ], signature='a(uuaa{sv})'))
151
71 mock.AddMethods(152 mock.AddMethods(
72 MAIN_IFACE,153 MAIN_IFACE,
73 [154 [
@@ -85,9 +166,23 @@
85 (166 (
86 'List', '', 'as',167 'List', '', 'as',
87 'ret = self.list_actions(self)'168 'ret = self.list_actions(self)'
88 ),
89 (
90 'SetState', 'sva{sv}', '',
91 'self.set_state(self, args[0], args[1], args[2])'
92 )169 )
93 ])170 ])
171
172 mock.AddObject(
173 PHONE_WIFI_OBJ,
174 MENU_IFACE, {}, [
175 (
176 'Start', 'au', 'a(uuaa{sv})',
177 'ret = self.start(self, args[0])'
178 ),
179 (
180 'End', 'au', '',
181 'ret = self.end(self, args[0])'
182 )
183 ]
184 )
185
186 phone_wifi_obj = dbusmock.get_object(PHONE_WIFI_OBJ)
187 phone_wifi_obj.start = start
188 phone_wifi_obj.end = end

Subscribers

People subscribed via source and target branches