on xenial help sign in
Merge from trunk
c560213Michael Terry
Components/IconUtil.js+5−5
@@ -26,17 +26,17 @@ function from_gicon(name) {
26 var base_icon_re = /'base-icon':.+?'(.+?)'/;
26 var base_icon_re = /'base-icon':.+?'(.+?)'/;
27 var base_icon = name.toString().match(base_icon_re);
27 var base_icon = name.toString().match(base_icon_re);
28 icon_name = base_icon[1];
28 icon_name = base_icon[1];
29− }
30− else {
29+ } else {
31 var themed_re = /^. GThemedIcon\s*([^\s]+)\s*/;
30 var themed_re = /^. GThemedIcon\s*([^\s]+)\s*/;
32 var themed = name.match(themed_re);
31 var themed = name.match(themed_re);
33 if (themed) {
32 if (themed) {
34 return "image://gicon/" + themed[1];
33 return "image://gicon/" + themed[1];
35 }
34 }
36 }
35 }
37− var remote_re = /^http/;
36+ var name_re = /^[a-z0-9\._-]+$/;
38− if (remote_re.test(icon_name)) {
37+ if (name_re.test(icon_name)) {
38+ return "image://gicon/" + icon_name;
39+ } else {
39 return icon_name;
40 return icon_name;
40 }
41 }
41− return "image://gicon/" + icon_name;
42}
42}
Dash/Apps/ApplicationsFilterGrid.qml+3−2
@@ -17,11 +17,12 @@
17import QtQuick 2.0
17import QtQuick 2.0
18import "../../Components"
18import "../../Components"
19import "../../Applications"
19import "../../Applications"
20+import "../../Components/IconUtil.js" as IconUtil
20
21
21FilterGrid {
22FilterGrid {
22 id: filterGrid
23 id: filterGrid
23
24
24− filter: true
25+ filter: false
25 expandable: false
26 expandable: false
26 minimumHorizontalSpacing: units.gu(0.5)
27 minimumHorizontalSpacing: units.gu(0.5)
27 maximumNumberOfColumns: 6
28 maximumNumberOfColumns: 6
@@ -50,7 +51,7 @@ FilterGrid {
50 text: model.column_5 ? model.column_5 : application.name // FIXME: this is temporary
51 text: model.column_5 ? model.column_5 : application.name // FIXME: this is temporary
51 imageWidth: units.gu(8)
52 imageWidth: units.gu(8)
52 imageHeight: units.gu(7.5)
53 imageHeight: units.gu(7.5)
53− source: icon.indexOf("/") == -1 ? "image://gicon/" + icon : icon
54+ source: IconUtil.from_gicon(icon)
54 onClicked: filterGrid.clicked(index, application.desktopFile);
55 onClicked: filterGrid.clicked(index, application.desktopFile);
55 }
56 }
56}
57}
Greeter/Lockscreen.qml+7−1
@@ -41,7 +41,14 @@ Showable {
41 signal cancel()
41 signal cancel()
42 signal emergencyCall()
42 signal emergencyCall()
43
43
44+ onRequiredChanged: {
45+ if (required && pinPadLoader.item) {
46+ pinPadLoader.item.clear(false);
47+ }
48+ }
49+
44 function reset() {
50 function reset() {
51+ // This causes the loader below to destry and recreate the source
45 pinPadLoader.resetting = true;
52 pinPadLoader.resetting = true;
46 pinPadLoader.resetting = false;
53 pinPadLoader.resetting = false;
47 }
54 }
@@ -140,7 +147,6 @@ Showable {
140 }
147 }
141 if (LightDM.Greeter.authenticated) {
148 if (LightDM.Greeter.authenticated) {
142 root.unlocked();
149 root.unlocked();
143− pinPadLoader.item.clear(false);
144 } else {
150 } else {
145 pinPadLoader.item.clear(true);
151 pinPadLoader.item.clear(true);
146 }
152 }
Shell.qml+1−1
@@ -380,7 +380,7 @@ FocusScope {
380 } else {
380 } else {
381 lockscreen.alphaNumeric = true
381 lockscreen.alphaNumeric = true
382 }
382 }
383− lockscreen.placeholderText = i18n.tr("Please enter %1:").arg(text);
383+ lockscreen.placeholderText = i18n.tr("Please enter %1").arg(text);
384 lockscreen.show();
384 lockscreen.show();
385 }
385 }
386 }
386 }
debian/changelog+14
@@ -1,3 +1,17 @@
1+unity8 (7.81.1) saucy; urgency=low
2+
3+ * Translation updates.
4+
5+ [ Michał Sawicz ]
6+ * Don't limit installed apps.
7+ * Pre-optimize PNGs to speed-up builds.
8+ * Clean up build scripts.
9+
10+ [ Daniel d'Andrada ]
11+ * Use DirectionalDragArea in BottomBar.
12+
13+ -- Michał Sawicz <michal.sawicz@canonical.com> Fri, 21 Jun 2013 17:37:02 +0200
14+
1unity8 (7.81.0) saucy; urgency=low
15unity8 (7.81.0) saucy; urgency=low
2
16
3 * Translation updates.
17 * Translation updates.
plugins/Unity/categories.cpp+26−17
@@ -30,6 +30,7 @@ Categories::Categories(QObject* parent)
30 m_roles[Categories::RoleName] = "name";
30 m_roles[Categories::RoleName] = "name";
31 m_roles[Categories::RoleIcon] = "icon";
31 m_roles[Categories::RoleIcon] = "icon";
32 m_roles[Categories::RoleRenderer] = "renderer";
32 m_roles[Categories::RoleRenderer] = "renderer";
33+ m_roles[Categories::RoleContentType] = "content_type";
33 m_roles[Categories::RoleHints] = "hints";
34 m_roles[Categories::RoleHints] = "hints";
34 m_roles[Categories::RoleResults] = "results";
35 m_roles[Categories::RoleResults] = "results";
35 m_roles[Categories::RoleCount] = "count";
36 m_roles[Categories::RoleCount] = "count";
@@ -111,22 +112,30 @@ Categories::data(const QModelIndex& index, int role) const
111 return QVariant();
112 return QVariant();
112 }
113 }
113
114
115+ switch (role) {
114− if (role == RoleId) {
116+ case RoleId:
115− return QVariant::fromValue(index.row());
117+ return QVariant::fromValue(index.row());
116− } else if (role == RoleName) {
118+ case RoleName:
117− return QVariant::fromValue(DeeListModel::data(index, 1)); //DISPLAY_NAME
119+ return QVariant::fromValue(DeeListModel::data(index, 1)); //DISPLAY_NAME
118− } else if (role == RoleIcon) {
120+ case RoleIcon:
119− return QVariant::fromValue(DeeListModel::data(index, 2)); //ICON_HINT
121+ return QVariant::fromValue(DeeListModel::data(index, 2)); //ICON_HINT
120− } else if (role == RoleRenderer) {
122+ case RoleRenderer:
121− return QVariant::fromValue(DeeListModel::data(index, 3)); //RENDERER_NAME
123+ return QVariant::fromValue(DeeListModel::data(index, 3)); //RENDERER_NAME
124+ case RoleContentType:
125+ {
126+ auto hints = QVariant::fromValue(DeeListModel::data(index, 4)).toHash();
127+ return hints.contains("content-type") ? hints["content-type"] : QVariant(QString("default"));
128+ }
122− } else if (role == RoleHints) {
129+ case RoleHints:
123− return QVariant::fromValue(DeeListModel::data(index, 4)); //HINTS
130+ return QVariant::fromValue(DeeListModel::data(index, 4)); //HINTS
124− } else if (role == RoleResults) {
131+ case RoleResults:
125− return QVariant::fromValue(getFilter(index.row()));
132+ return QVariant::fromValue(getFilter(index.row()));
126− } else if (role == RoleCount) {
133+ case RoleCount:
134+ {
127− CategoryFilter* filter = getFilter(index.row());
135+ CategoryFilter* filter = getFilter(index.row());
128− return QVariant::fromValue(filter->rowCount());
136+ return QVariant::fromValue(filter->rowCount());
129− } else {
137+ }
138+ default:
130− return QVariant();
139+ return QVariant();
131 }
140 }
132}
141}
plugins/Unity/categories.h+1
@@ -46,6 +46,7 @@ public:
46 RoleName,
46 RoleName,
47 RoleIcon,
47 RoleIcon,
48 RoleRenderer,
48 RoleRenderer,
49+ RoleContentType,
49 RoleHints,
50 RoleHints,
50 RoleResults,
51 RoleResults,
51 RoleCount
52 RoleCount
po/ar.po+7−7
@@ -8,14 +8,14 @@ msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
11−"PO-Revision-Date: 2013-06-14 21:09+0000\n"
11+"PO-Revision-Date: 2013-06-22 16:15+0000\n"
12"Last-Translator: Ibrahim Saed <ibraheem5000@gmail.com>\n"
12"Last-Translator: Ibrahim Saed <ibraheem5000@gmail.com>\n"
13"Language-Team: Arabic <ar@li.org>\n"
13"Language-Team: Arabic <ar@li.org>\n"
14"MIME-Version: 1.0\n"
14"MIME-Version: 1.0\n"
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2013-06-20 06:36+0000\n"
17+"X-Launchpad-Export-Date: 2013-06-23 05:56+0000\n"
18−"X-Generator: Launchpad (build 16673)\n"
18+"X-Generator: Launchpad (build 16677)\n"
19
19
20#: Applications/applications.js:23
20#: Applications/applications.js:23
21msgid "Phone"
21msgid "Phone"
@@ -195,16 +195,16 @@ msgstr "المؤلف:"
195
195
196#: Greeter/Lockscreen.qml:126
196#: Greeter/Lockscreen.qml:126
197msgid "Emergency call"
197msgid "Emergency call"
198−msgstr ""
198+msgstr "مكالمة طوارئ"
199
199
200#: Greeter/PassphraseLockscreen.qml:59
200#: Greeter/PassphraseLockscreen.qml:59
201#, qt-format
201#, qt-format
202msgid "Hello %1"
202msgid "Hello %1"
203−msgstr ""
203+msgstr "مرحبا %1"
204
204
205#: Greeter/PassphraseLockscreen.qml:59
205#: Greeter/PassphraseLockscreen.qml:59
206msgid "Hello"
206msgid "Hello"
207−msgstr ""
207+msgstr "مرحبًا"
208
208
209#: Hud/HudParametrizedActionsPage.qml:132
209#: Hud/HudParametrizedActionsPage.qml:132
210msgid "Confirm"
210msgid "Confirm"
@@ -249,4 +249,4 @@ msgstr "الشاشة الرئيسية"
249#: Shell.qml:380
249#: Shell.qml:380
250#, qt-format
250#, qt-format
251msgid "Please enter %1:"
251msgid "Please enter %1:"
252−msgstr ""
252+msgstr "رجاءً أدخِل %1:"
po/de.po+8−8
@@ -8,14 +8,14 @@ msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
11−"PO-Revision-Date: 2013-06-15 20:04+0000\n"
11+"PO-Revision-Date: 2013-06-23 18:17+0000\n"
12−"Last-Translator: Eduard Gotwig <eduardgotwig@gmail.com>\n"
12+"Last-Translator: Phillip Sz <Unknown>\n"
13"Language-Team: German <de@li.org>\n"
13"Language-Team: German <de@li.org>\n"
14"MIME-Version: 1.0\n"
14"MIME-Version: 1.0\n"
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2013-06-20 06:36+0000\n"
17+"X-Launchpad-Export-Date: 2013-06-24 05:27+0000\n"
18−"X-Generator: Launchpad (build 16673)\n"
18+"X-Generator: Launchpad (build 16677)\n"
19
19
20#: Applications/applications.js:23
20#: Applications/applications.js:23
21msgid "Phone"
21msgid "Phone"
@@ -195,16 +195,16 @@ msgstr "Autor:"
195
195
196#: Greeter/Lockscreen.qml:126
196#: Greeter/Lockscreen.qml:126
197msgid "Emergency call"
197msgid "Emergency call"
198−msgstr ""
198+msgstr "Notruf"
199
199
200#: Greeter/PassphraseLockscreen.qml:59
200#: Greeter/PassphraseLockscreen.qml:59
201#, qt-format
201#, qt-format
202msgid "Hello %1"
202msgid "Hello %1"
203−msgstr ""
203+msgstr "Hallo %1"
204
204
205#: Greeter/PassphraseLockscreen.qml:59
205#: Greeter/PassphraseLockscreen.qml:59
206msgid "Hello"
206msgid "Hello"
207−msgstr ""
207+msgstr "Hallo"
208
208
209#: Hud/HudParametrizedActionsPage.qml:132
209#: Hud/HudParametrizedActionsPage.qml:132
210msgid "Confirm"
210msgid "Confirm"
@@ -249,4 +249,4 @@ msgstr "Startseite"
249#: Shell.qml:380
249#: Shell.qml:380
250#, qt-format
250#, qt-format
251msgid "Please enter %1:"
251msgid "Please enter %1:"
252−msgstr ""
252+msgstr "Bitte geben Sie %1 ein:"
po/en_GB.po+7−7
@@ -8,14 +8,14 @@ msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
11−"PO-Revision-Date: 2013-06-14 12:43+0000\n"
11+"PO-Revision-Date: 2013-06-23 22:34+0000\n"
12"Last-Translator: Andi Chandler <Unknown>\n"
12"Last-Translator: Andi Chandler <Unknown>\n"
13"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
13"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
14"MIME-Version: 1.0\n"
14"MIME-Version: 1.0\n"
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2013-06-20 06:37+0000\n"
17+"X-Launchpad-Export-Date: 2013-06-24 05:27+0000\n"
18−"X-Generator: Launchpad (build 16673)\n"
18+"X-Generator: Launchpad (build 16677)\n"
19
19
20#: Applications/applications.js:23
20#: Applications/applications.js:23
21msgid "Phone"
21msgid "Phone"
@@ -195,16 +195,16 @@ msgstr "Author:"
195
195
196#: Greeter/Lockscreen.qml:126
196#: Greeter/Lockscreen.qml:126
197msgid "Emergency call"
197msgid "Emergency call"
198−msgstr ""
198+msgstr "Emergency call"
199
199
200#: Greeter/PassphraseLockscreen.qml:59
200#: Greeter/PassphraseLockscreen.qml:59
201#, qt-format
201#, qt-format
202msgid "Hello %1"
202msgid "Hello %1"
203−msgstr ""
203+msgstr "Hello %1"
204
204
205#: Greeter/PassphraseLockscreen.qml:59
205#: Greeter/PassphraseLockscreen.qml:59
206msgid "Hello"
206msgid "Hello"
207−msgstr ""
207+msgstr "Hello"
208
208
209#: Hud/HudParametrizedActionsPage.qml:132
209#: Hud/HudParametrizedActionsPage.qml:132
210msgid "Confirm"
210msgid "Confirm"
@@ -249,4 +249,4 @@ msgstr "Home screen"
249#: Shell.qml:380
249#: Shell.qml:380
250#, qt-format
250#, qt-format
251msgid "Please enter %1:"
251msgid "Please enter %1:"
252−msgstr ""
252+msgstr "Please enter %1:"
po/ru.po+11−11
@@ -8,14 +8,14 @@ msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
11−"PO-Revision-Date: 2013-06-05 22:20+0000\n"
11+"PO-Revision-Date: 2013-06-21 10:08+0000\n"
12−"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12+"Last-Translator: Andrey Dedikov <iamawesome.ndr@gmail.com>\n"
13"Language-Team: Russian <ru@li.org>\n"
13"Language-Team: Russian <ru@li.org>\n"
14"MIME-Version: 1.0\n"
14"MIME-Version: 1.0\n"
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2013-06-20 06:36+0000\n"
17+"X-Launchpad-Export-Date: 2013-06-22 06:26+0000\n"
18−"X-Generator: Launchpad (build 16673)\n"
18+"X-Generator: Launchpad (build 16677)\n"
19
19
20#: Applications/applications.js:23
20#: Applications/applications.js:23
21msgid "Phone"
21msgid "Phone"
@@ -63,7 +63,7 @@ msgstr ""
63
63
64#: Applications/applications.js:86
64#: Applications/applications.js:86
65msgid "Evernote"
65msgid "Evernote"
66−msgstr ""
66+msgstr "Evernote"
67
67
68#: Applications/applications.js:91
68#: Applications/applications.js:91
69msgid "Map"
69msgid "Map"
@@ -71,11 +71,11 @@ msgstr ""
71
71
72#: Applications/applications.js:96
72#: Applications/applications.js:96
73msgid "Pinterest"
73msgid "Pinterest"
74−msgstr ""
74+msgstr "Pinterest"
75
75
76#: Applications/applications.js:101
76#: Applications/applications.js:101
77msgid "SoundCloud"
77msgid "SoundCloud"
78−msgstr ""
78+msgstr "SoundCloud"
79
79
80#: Applications/applications.js:106
80#: Applications/applications.js:106
81msgid "Wikipedia"
81msgid "Wikipedia"
@@ -143,7 +143,7 @@ msgstr ""
143
143
144#: Dash/DashMusic.qml:29 Dash/DashVideos.qml:30
144#: Dash/DashMusic.qml:29 Dash/DashVideos.qml:30
145msgid "New Releases"
145msgid "New Releases"
146−msgstr ""
146+msgstr "Новые релизы"
147
147
148#: Dash/DashMusic.qml:30
148#: Dash/DashMusic.qml:30
149msgid "Top Charting"
149msgid "Top Charting"
@@ -163,7 +163,7 @@ msgstr ""
163
163
164#: Dash/DashPeople.qml:33
164#: Dash/DashPeople.qml:33
165msgid "New Contacts"
165msgid "New Contacts"
166−msgstr ""
166+msgstr "Новые контакты"
167
167
168#: Dash/DashPeople.qml:34
168#: Dash/DashPeople.qml:34
169msgid "A-Z"
169msgid "A-Z"
@@ -183,11 +183,11 @@ msgstr "Видео"
183
183
184#: Dash/Video/VideoPreview.qml:98
184#: Dash/Video/VideoPreview.qml:98
185msgid "Directed by:"
185msgid "Directed by:"
186−msgstr ""
186+msgstr "Режиссёр"
187
187
188#: Dash/Video/VideoPreview.qml:121
188#: Dash/Video/VideoPreview.qml:121
189msgid "Starring:"
189msgid "Starring:"
190−msgstr ""
190+msgstr "В главных ролях"
191
191
192#: Dash/Video/VideoPreview.qml:144
192#: Dash/Video/VideoPreview.qml:144
193msgid "Author:"
193msgid "Author:"
po/tr.po+31−31
@@ -8,58 +8,58 @@ msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
11−"PO-Revision-Date: 2013-06-05 22:20+0000\n"
11+"PO-Revision-Date: 2013-06-24 17:24+0000\n"
12−"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12+"Last-Translator: Adar Cem EREN <adarcemeren34@gmail.com>\n"
13"Language-Team: Turkish <tr@li.org>\n"
13"Language-Team: Turkish <tr@li.org>\n"
14"MIME-Version: 1.0\n"
14"MIME-Version: 1.0\n"
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2013-06-20 06:37+0000\n"
17+"X-Launchpad-Export-Date: 2013-06-25 06:00+0000\n"
18−"X-Generator: Launchpad (build 16673)\n"
18+"X-Generator: Launchpad (build 16677)\n"
19
19
20#: Applications/applications.js:23
20#: Applications/applications.js:23
21msgid "Phone"
21msgid "Phone"
22−msgstr ""
22+msgstr "Telefon"
23
23
24#: Applications/applications.js:29
24#: Applications/applications.js:29
25msgid "Camera"
25msgid "Camera"
26−msgstr ""
26+msgstr "Kamera"
27
27
28#: Applications/applications.js:35
28#: Applications/applications.js:35
29msgid "Gallery"
29msgid "Gallery"
30−msgstr ""
30+msgstr "Galeri"
31
31
32#: Applications/applications.js:40
32#: Applications/applications.js:40
33msgid "Facebook"
33msgid "Facebook"
34−msgstr ""
34+msgstr "Facebook"
35
35
36#: Applications/applications.js:46
36#: Applications/applications.js:46
37msgid "Browser"
37msgid "Browser"
38−msgstr ""
38+msgstr "Tarayıcı"
39
39
40#: Applications/applications.js:51
40#: Applications/applications.js:51
41msgid "Twitter"
41msgid "Twitter"
42−msgstr ""
42+msgstr "Twitter"
43
43
44#: Applications/applications.js:57
44#: Applications/applications.js:57
45msgid "GMail"
45msgid "GMail"
46−msgstr ""
46+msgstr "GMail"
47
47
48#: Applications/applications.js:62
48#: Applications/applications.js:62
49msgid "Weather"
49msgid "Weather"
50−msgstr ""
50+msgstr "Hava Durumu"
51
51
52#: Applications/applications.js:68
52#: Applications/applications.js:68
53msgid "Notepad"
53msgid "Notepad"
54−msgstr ""
54+msgstr "Not Defteri"
55
55
56#: Applications/applications.js:74
56#: Applications/applications.js:74
57msgid "Calendar"
57msgid "Calendar"
58−msgstr ""
58+msgstr "Takvim"
59
59
60#: Applications/applications.js:80
60#: Applications/applications.js:80
61msgid "Media Player"
61msgid "Media Player"
62−msgstr ""
62+msgstr "Ortam Oynatıcı"
63
63
64#: Applications/applications.js:86
64#: Applications/applications.js:86
65msgid "Evernote"
65msgid "Evernote"
@@ -67,7 +67,7 @@ msgstr ""
67
67
68#: Applications/applications.js:91
68#: Applications/applications.js:91
69msgid "Map"
69msgid "Map"
70−msgstr ""
70+msgstr "Harita"
71
71
72#: Applications/applications.js:96
72#: Applications/applications.js:96
73msgid "Pinterest"
73msgid "Pinterest"
@@ -79,15 +79,15 @@ msgstr ""
79
79
80#: Applications/applications.js:106
80#: Applications/applications.js:106
81msgid "Wikipedia"
81msgid "Wikipedia"
82−msgstr ""
82+msgstr "Vikipedi"
83
83
84#: Applications/applications.js:111
84#: Applications/applications.js:111
85msgid "YouTube"
85msgid "YouTube"
86−msgstr ""
86+msgstr "YouTube"
87
87
88#: Components/PageHeader.qml:300
88#: Components/PageHeader.qml:300
89msgid "Recent searches"
89msgid "Recent searches"
90−msgstr "Son aramalar"
90+msgstr "Son Arananlar"
91
91
92#: Dash/DashApps.qml:65
92#: Dash/DashApps.qml:65
93msgid "Running apps"
93msgid "Running apps"
@@ -131,15 +131,15 @@ msgstr "Çevrimiçi Yaygın Videolar"
131
131
132#: Dash/DashHome.qml:197 plugins/Unity/lenses.cpp:38
132#: Dash/DashHome.qml:197 plugins/Unity/lenses.cpp:38
133msgid "Home"
133msgid "Home"
134−msgstr "Ev"
134+msgstr "Ana Sayfa"
135
135
136#: Dash/DashMusic.qml:27 Dash/DashVideos.qml:28
136#: Dash/DashMusic.qml:27 Dash/DashVideos.qml:28
137msgid "Featured"
137msgid "Featured"
138−msgstr ""
138+msgstr "Öne Çıkanlar"
139
139
140#: Dash/DashMusic.qml:28 Dash/DashVideos.qml:29
140#: Dash/DashMusic.qml:28 Dash/DashVideos.qml:29
141msgid "Recent"
141msgid "Recent"
142−msgstr ""
142+msgstr "En Son"
143
143
144#: Dash/DashMusic.qml:29 Dash/DashVideos.qml:30
144#: Dash/DashMusic.qml:29 Dash/DashVideos.qml:30
145msgid "New Releases"
145msgid "New Releases"
@@ -155,7 +155,7 @@ msgstr "Müzik"
155
155
156#: Dash/DashPeople.qml:31
156#: Dash/DashPeople.qml:31
157msgid "Favourites"
157msgid "Favourites"
158−msgstr ""
158+msgstr "Favoriler"
159
159
160#: Dash/DashPeople.qml:32
160#: Dash/DashPeople.qml:32
161msgid "Recently in touch"
161msgid "Recently in touch"
@@ -163,11 +163,11 @@ msgstr ""
163
163
164#: Dash/DashPeople.qml:33
164#: Dash/DashPeople.qml:33
165msgid "New Contacts"
165msgid "New Contacts"
166−msgstr ""
166+msgstr "Yeni Kişiler"
167
167
168#: Dash/DashPeople.qml:34
168#: Dash/DashPeople.qml:34
169msgid "A-Z"
169msgid "A-Z"
170−msgstr ""
170+msgstr "A-Z"
171
171
172#: Dash/DashPeople.qml:123
172#: Dash/DashPeople.qml:123
173msgid "People"
173msgid "People"
@@ -175,7 +175,7 @@ msgstr "Kişiler"
175
175
176#: Dash/DashVideos.qml:31
176#: Dash/DashVideos.qml:31
177msgid "Popular Online"
177msgid "Popular Online"
178−msgstr ""
178+msgstr "Genellikle Çevrimiçi"
179
179
180#: Dash/DashVideos.qml:155
180#: Dash/DashVideos.qml:155
181msgid "Videos"
181msgid "Videos"
@@ -183,7 +183,7 @@ msgstr "Videolar"
183
183
184#: Dash/Video/VideoPreview.qml:98
184#: Dash/Video/VideoPreview.qml:98
185msgid "Directed by:"
185msgid "Directed by:"
186−msgstr ""
186+msgstr "Yönetmen"
187
187
188#: Dash/Video/VideoPreview.qml:121
188#: Dash/Video/VideoPreview.qml:121
189msgid "Starring:"
189msgid "Starring:"
@@ -191,11 +191,11 @@ msgstr ""
191
191
192#: Dash/Video/VideoPreview.qml:144
192#: Dash/Video/VideoPreview.qml:144
193msgid "Author:"
193msgid "Author:"
194−msgstr ""
194+msgstr "Yazar:"
195
195
196#: Greeter/Lockscreen.qml:126
196#: Greeter/Lockscreen.qml:126
197msgid "Emergency call"
197msgid "Emergency call"
198−msgstr ""
198+msgstr "Acil Arama"
199
199
200#: Greeter/PassphraseLockscreen.qml:59
200#: Greeter/PassphraseLockscreen.qml:59
201#, qt-format
201#, qt-format
@@ -204,7 +204,7 @@ msgstr ""
204
204
205#: Greeter/PassphraseLockscreen.qml:59
205#: Greeter/PassphraseLockscreen.qml:59
206msgid "Hello"
206msgid "Hello"
207−msgstr ""
207+msgstr "Merhaba"
208
208
209#: Hud/HudParametrizedActionsPage.qml:132
209#: Hud/HudParametrizedActionsPage.qml:132
210msgid "Confirm"
210msgid "Confirm"
@@ -232,7 +232,7 @@ msgstr "Aygıt"
232
232
233#: Panel/Menus/Overview/FlightModeWidget.qml:42
233#: Panel/Menus/Overview/FlightModeWidget.qml:42
234msgid "Flight mode"
234msgid "Flight mode"
235−msgstr "Uçak kipi"
235+msgstr "Uçak Modu"
236
236
237#: Panel/SearchIndicator.qml:26 plugins/Unity/lenses.cpp:40
237#: Panel/SearchIndicator.qml:26 plugins/Unity/lenses.cpp:40
238msgid "Search"
238msgid "Search"
po/ug.po+30−30
@@ -8,22 +8,22 @@ msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
11−"PO-Revision-Date: 2013-06-06 07:40+0000\n"
11+"PO-Revision-Date: 2013-06-25 08:02+0000\n"
12−"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12+"Last-Translator: Gheyret T.Kenji <Unknown>\n"
13"Language-Team: Uyghur <ug@li.org>\n"
13"Language-Team: Uyghur <ug@li.org>\n"
14"MIME-Version: 1.0\n"
14"MIME-Version: 1.0\n"
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2013-06-20 06:37+0000\n"
17+"X-Launchpad-Export-Date: 2013-06-26 06:20+0000\n"
18−"X-Generator: Launchpad (build 16673)\n"
18+"X-Generator: Launchpad (build 16681)\n"
19
19
20#: Applications/applications.js:23
20#: Applications/applications.js:23
21msgid "Phone"
21msgid "Phone"
22−msgstr ""
22+msgstr "تېلېفون"
23
23
24#: Applications/applications.js:29
24#: Applications/applications.js:29
25msgid "Camera"
25msgid "Camera"
26−msgstr ""
26+msgstr "كامېرا"
27
27
28#: Applications/applications.js:35
28#: Applications/applications.js:35
29msgid "Gallery"
29msgid "Gallery"
@@ -31,59 +31,59 @@ msgstr ""
31
31
32#: Applications/applications.js:40
32#: Applications/applications.js:40
33msgid "Facebook"
33msgid "Facebook"
34−msgstr ""
34+msgstr "فېيىسبۇك(Facebook)"
35
35
36#: Applications/applications.js:46
36#: Applications/applications.js:46
37msgid "Browser"
37msgid "Browser"
38−msgstr ""
38+msgstr "توركۆرگۈ"
39
39
40#: Applications/applications.js:51
40#: Applications/applications.js:51
41msgid "Twitter"
41msgid "Twitter"
42−msgstr ""
42+msgstr "تىۋىتتېر(Twitter)"
43
43
44#: Applications/applications.js:57
44#: Applications/applications.js:57
45msgid "GMail"
45msgid "GMail"
46−msgstr ""
46+msgstr "GMail"
47
47
48#: Applications/applications.js:62
48#: Applications/applications.js:62
49msgid "Weather"
49msgid "Weather"
50−msgstr ""
50+msgstr "ھاۋا رايى"
51
51
52#: Applications/applications.js:68
52#: Applications/applications.js:68
53msgid "Notepad"
53msgid "Notepad"
54−msgstr ""
54+msgstr "خاتىرە دەپتەر(Notepad)"
55
55
56#: Applications/applications.js:74
56#: Applications/applications.js:74
57msgid "Calendar"
57msgid "Calendar"
58−msgstr ""
58+msgstr "يىلنامە"
59
59
60#: Applications/applications.js:80
60#: Applications/applications.js:80
61msgid "Media Player"
61msgid "Media Player"
62−msgstr ""
62+msgstr "ۋاسىتە قويغۇ"
63
63
64#: Applications/applications.js:86
64#: Applications/applications.js:86
65msgid "Evernote"
65msgid "Evernote"
66−msgstr ""
66+msgstr "Evernote"
67
67
68#: Applications/applications.js:91
68#: Applications/applications.js:91
69msgid "Map"
69msgid "Map"
70−msgstr ""
70+msgstr "خەرىتە"
71
71
72#: Applications/applications.js:96
72#: Applications/applications.js:96
73msgid "Pinterest"
73msgid "Pinterest"
74−msgstr ""
74+msgstr "Pinterest"
75
75
76#: Applications/applications.js:101
76#: Applications/applications.js:101
77msgid "SoundCloud"
77msgid "SoundCloud"
78−msgstr ""
78+msgstr "SoundCloud"
79
79
80#: Applications/applications.js:106
80#: Applications/applications.js:106
81msgid "Wikipedia"
81msgid "Wikipedia"
82−msgstr ""
82+msgstr "ۋىكىپېدىيە"
83
83
84#: Applications/applications.js:111
84#: Applications/applications.js:111
85msgid "YouTube"
85msgid "YouTube"
86−msgstr ""
86+msgstr "YouTube"
87
87
88#: Components/PageHeader.qml:300
88#: Components/PageHeader.qml:300
89msgid "Recent searches"
89msgid "Recent searches"
@@ -135,15 +135,15 @@ msgstr "ماكان"
135
135
136#: Dash/DashMusic.qml:27 Dash/DashVideos.qml:28
136#: Dash/DashMusic.qml:27 Dash/DashVideos.qml:28
137msgid "Featured"
137msgid "Featured"
138−msgstr ""
138+msgstr "داڭلىق"
139
139
140#: Dash/DashMusic.qml:28 Dash/DashVideos.qml:29
140#: Dash/DashMusic.qml:28 Dash/DashVideos.qml:29
141msgid "Recent"
141msgid "Recent"
142−msgstr ""
142+msgstr "يېقىنقى"
143
143
144#: Dash/DashMusic.qml:29 Dash/DashVideos.qml:30
144#: Dash/DashMusic.qml:29 Dash/DashVideos.qml:30
145msgid "New Releases"
145msgid "New Releases"
146−msgstr ""
146+msgstr "يېڭى ئېلان قىلىنغانلىرى"
147
147
148#: Dash/DashMusic.qml:30
148#: Dash/DashMusic.qml:30
149msgid "Top Charting"
149msgid "Top Charting"
@@ -159,15 +159,15 @@ msgstr ""
159
159
160#: Dash/DashPeople.qml:32
160#: Dash/DashPeople.qml:32
161msgid "Recently in touch"
161msgid "Recently in touch"
162−msgstr ""
162+msgstr "يېقىندا ئالاقە قىلغانلار"
163
163
164#: Dash/DashPeople.qml:33
164#: Dash/DashPeople.qml:33
165msgid "New Contacts"
165msgid "New Contacts"
166−msgstr ""
166+msgstr "يېڭى ئالاقەداشلار"
167
167
168#: Dash/DashPeople.qml:34
168#: Dash/DashPeople.qml:34
169msgid "A-Z"
169msgid "A-Z"
170−msgstr ""
170+msgstr "A-Z"
171
171
172#: Dash/DashPeople.qml:123
172#: Dash/DashPeople.qml:123
173msgid "People"
173msgid "People"
@@ -191,11 +191,11 @@ msgstr ""
191
191
192#: Dash/Video/VideoPreview.qml:144
192#: Dash/Video/VideoPreview.qml:144
193msgid "Author:"
193msgid "Author:"
194−msgstr ""
194+msgstr "ئاپتور:"
195
195
196#: Greeter/Lockscreen.qml:126
196#: Greeter/Lockscreen.qml:126
197msgid "Emergency call"
197msgid "Emergency call"
198−msgstr ""
198+msgstr "جىددىي تېلېفون"
199
199
200#: Greeter/PassphraseLockscreen.qml:59
200#: Greeter/PassphraseLockscreen.qml:59
201#, qt-format
201#, qt-format
@@ -204,7 +204,7 @@ msgstr ""
204
204
205#: Greeter/PassphraseLockscreen.qml:59
205#: Greeter/PassphraseLockscreen.qml:59
206msgid "Hello"
206msgid "Hello"
207−msgstr ""
207+msgstr "سالام"
208
208
209#: Hud/HudParametrizedActionsPage.qml:132
209#: Hud/HudParametrizedActionsPage.qml:132
210msgid "Confirm"
210msgid "Confirm"
@@ -249,4 +249,4 @@ msgstr "ماكان ئېكران"
249#: Shell.qml:380
249#: Shell.qml:380
250#, qt-format
250#, qt-format
251msgid "Please enter %1:"
251msgid "Please enter %1:"
252−msgstr ""
252+msgstr "%1 نى كىرگۈزۈڭ:"
po/uk.po+7−7
@@ -8,14 +8,14 @@ msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
11−"PO-Revision-Date: 2013-06-14 11:26+0000\n"
11+"PO-Revision-Date: 2013-06-25 08:08+0000\n"
12"Last-Translator: Yuri Chornoivan <yurchor@gmail.com>\n"
12"Last-Translator: Yuri Chornoivan <yurchor@gmail.com>\n"
13"Language-Team: Ukrainian <uk@li.org>\n"
13"Language-Team: Ukrainian <uk@li.org>\n"
14"MIME-Version: 1.0\n"
14"MIME-Version: 1.0\n"
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2013-06-20 06:37+0000\n"
17+"X-Launchpad-Export-Date: 2013-06-26 06:20+0000\n"
18−"X-Generator: Launchpad (build 16673)\n"
18+"X-Generator: Launchpad (build 16681)\n"
19
19
20#: Applications/applications.js:23
20#: Applications/applications.js:23
21msgid "Phone"
21msgid "Phone"
@@ -195,16 +195,16 @@ msgstr "Автор:"
195
195
196#: Greeter/Lockscreen.qml:126
196#: Greeter/Lockscreen.qml:126
197msgid "Emergency call"
197msgid "Emergency call"
198−msgstr ""
198+msgstr "Екстрений виклик"
199
199
200#: Greeter/PassphraseLockscreen.qml:59
200#: Greeter/PassphraseLockscreen.qml:59
201#, qt-format
201#, qt-format
202msgid "Hello %1"
202msgid "Hello %1"
203−msgstr ""
203+msgstr "Привіт, %1"
204
204
205#: Greeter/PassphraseLockscreen.qml:59
205#: Greeter/PassphraseLockscreen.qml:59
206msgid "Hello"
206msgid "Hello"
207−msgstr ""
207+msgstr "Привіт!"
208
208
209#: Hud/HudParametrizedActionsPage.qml:132
209#: Hud/HudParametrizedActionsPage.qml:132
210msgid "Confirm"
210msgid "Confirm"
@@ -249,4 +249,4 @@ msgstr "Екран домівки"
249#: Shell.qml:380
249#: Shell.qml:380
250#, qt-format
250#, qt-format
251msgid "Please enter %1:"
251msgid "Please enter %1:"
252−msgstr ""
252+msgstr "Будь ласка, введіть %1:"
po/zh_CN.po+8−8
@@ -8,14 +8,14 @@ msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
10"POT-Creation-Date: 2013-06-19 17:06+0200\n"
11−"PO-Revision-Date: 2013-06-13 11:35+0000\n"
11+"PO-Revision-Date: 2013-06-22 21:20+0000\n"
12−"Last-Translator: Wylmer Wang <Unknown>\n"
12+"Last-Translator: Anthony Wong <anthony.wong@canonical.com>\n"
13"Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
13"Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
14"MIME-Version: 1.0\n"
14"MIME-Version: 1.0\n"
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2013-06-20 06:37+0000\n"
17+"X-Launchpad-Export-Date: 2013-06-23 05:56+0000\n"
18−"X-Generator: Launchpad (build 16673)\n"
18+"X-Generator: Launchpad (build 16677)\n"
19
19
20#: Applications/applications.js:23
20#: Applications/applications.js:23
21msgid "Phone"
21msgid "Phone"
@@ -195,16 +195,16 @@ msgstr "作者:"
195
195
196#: Greeter/Lockscreen.qml:126
196#: Greeter/Lockscreen.qml:126
197msgid "Emergency call"
197msgid "Emergency call"
198−msgstr ""
198+msgstr "紧急呼救"
199
199
200#: Greeter/PassphraseLockscreen.qml:59
200#: Greeter/PassphraseLockscreen.qml:59
201#, qt-format
201#, qt-format
202msgid "Hello %1"
202msgid "Hello %1"
203−msgstr ""
203+msgstr "你好,%1"
204
204
205#: Greeter/PassphraseLockscreen.qml:59
205#: Greeter/PassphraseLockscreen.qml:59
206msgid "Hello"
206msgid "Hello"
207−msgstr ""
207+msgstr "你好"
208
208
209#: Hud/HudParametrizedActionsPage.qml:132
209#: Hud/HudParametrizedActionsPage.qml:132
210msgid "Confirm"
210msgid "Confirm"
@@ -249,4 +249,4 @@ msgstr "主页"
249#: Shell.qml:380
249#: Shell.qml:380
250#, qt-format
250#, qt-format
251msgid "Please enter %1:"
251msgid "Please enter %1:"
252−msgstr ""
252+msgstr "请输入 %1:"
run_on_device+23−5
@@ -15,6 +15,8 @@ PINLOCK=false
15KEYLOCK=false
15KEYLOCK=false
16SUDO="echo $PASSWORD | sudo -S"
16SUDO="echo $PASSWORD | sudo -S"
17NUM_JOBS='$(( `grep -c ^processor /proc/cpuinfo` + 1 ))'
17NUM_JOBS='$(( `grep -c ^processor /proc/cpuinfo` + 1 ))'
18+FLIPPED=false
19+CHROOT_PREFIX="/data/ubuntu"
18
20
19usage() {
21usage() {
20 echo "usage: run_on_device [OPTIONS]\n"
22 echo "usage: run_on_device [OPTIONS]\n"
@@ -35,7 +37,11 @@ exec_with_ssh() {
35}
37}
36
38
37exec_with_adb() {
39exec_with_adb() {
40+ if $FLIPPED; then
41+ adb shell $@
42+ else
38− adb shell chroot /data/ubuntu /usr/bin/env -i PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin "$@"
43+ adb shell chroot /data/ubuntu /usr/bin/env -i PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin "$@"
44+ fi
39}
45}
40
46
41adb_root() {
47adb_root() {
@@ -45,7 +51,7 @@ adb_root() {
45
51
46install_ssh_key() {
52install_ssh_key() {
47 ssh-keygen -R $TARGET_IP
53 ssh-keygen -R $TARGET_IP
48− HOME_DIR=/data/ubuntu/home/phablet
54+ HOME_DIR="${CHROOT_PREFIX}/home/phablet"
49 adb push ~/.ssh/id_rsa.pub $HOME_DIR/.ssh/authorized_keys
55 adb push ~/.ssh/id_rsa.pub $HOME_DIR/.ssh/authorized_keys
50 adb shell chown $USER_ID:$USER_ID $HOME_DIR/.ssh
56 adb shell chown $USER_ID:$USER_ID $HOME_DIR/.ssh
51 adb shell chown $USER_ID:$USER_ID $HOME_DIR/.ssh/authorized_keys
57 adb shell chown $USER_ID:$USER_ID $HOME_DIR/.ssh/authorized_keys
@@ -79,14 +85,15 @@ build() {
79}
85}
80
86
81run() {
87run() {
82− SERVICEFILE="/data/ubuntu/etc/device-services"
88+ SERVICEFILE="${CHROOT_PREFIX}/etc/device-services"
83 adb shell "egrep '$BINARY|qml-phone-shell' $SERVICEFILE"
89 adb shell "egrep '$BINARY|qml-phone-shell' $SERVICEFILE"
84 CONTAINS_SHELL=$?
90 CONTAINS_SHELL=$?
85 if [ $CONTAINS_SHELL -eq 0 ]; then
91 if [ $CONTAINS_SHELL -eq 0 ]; then
86 echo "Modifying $SERVICEFILE on device. Old contents will be saved in $SERVICEFILE.backup"
92 echo "Modifying $SERVICEFILE on device. Old contents will be saved in $SERVICEFILE.backup"
87 adb shell cp $SERVICEFILE $SERVICEFILE.backup
93 adb shell cp $SERVICEFILE $SERVICEFILE.backup
88 adb shell sed -i "/$BINARY\\\\\|qml-phone-shell/d" $SERVICEFILE
94 adb shell sed -i "/$BINARY\\\\\|qml-phone-shell/d" $SERVICEFILE
95+ if $FLIPPED; then exec_with_adb /usr/bin/service ubuntu-touch-session restart
89− adb shell "chroot /data/ubuntu /usr/bin/service ubuntu-session restart"
96+ else exec_with_adb /usr/bin/service ubuntu-session restart; fi
90 fi
97 fi
91 adb shell pkill qml-phone-shell
98 adb shell pkill qml-phone-shell
92 adb shell pkill $BINARY
99 adb shell pkill $BINARY
@@ -106,7 +113,8 @@ run() {
106 if [ $CONTAINS_SHELL -eq 0 ]; then
113 if [ $CONTAINS_SHELL -eq 0 ]; then
107 echo "Restoring $SERVICEFILE on device from $SERVICEFILE.backup"
114 echo "Restoring $SERVICEFILE on device from $SERVICEFILE.backup"
108 adb shell cp $SERVICEFILE.backup $SERVICEFILE
115 adb shell cp $SERVICEFILE.backup $SERVICEFILE
116+ if $FLIPPED; then exec_with_adb /usr/bin/service ubuntu-touch-session restart
109− adb shell "chroot /data/ubuntu /usr/bin/service ubuntu-session restart"
117+ else exec_with_adb /usr/bin/service ubuntu-session restart; fi
110 fi
118 fi
111}
119}
112
120
@@ -130,6 +138,16 @@ done
130adb_root
138adb_root
131[ "${TARGET_IP}" = "127.0.0.1" ] && setup_adb_forwarding
139[ "${TARGET_IP}" = "127.0.0.1" ] && setup_adb_forwarding
132
140
141+if [ "`adb shell 'grep -q Ubuntu /etc/lsb-release 2> /dev/null && echo -n FLIPPED'`" = "FLIPPED" ]; then
142+ FLIPPED=true
143+ CHROOT_PREFIX=""
144+ if [ "${TARGET_IP}" != "127.0.0.1" ]; then
145+ echo "ERROR: Flipped image detected, adb over TCP/IP isn't supported, yet :/"
146+ echo "Unset TARGET_IP and try again."
147+ exit 2
148+ fi
149+fi
150+
133if $SETUP; then
151if $SETUP; then
134 echo "Setting up environment for building shell.."
152 echo "Setting up environment for building shell.."
135 install_ssh_key
153 install_ssh_key
tests/qmltests/Greeter/tst_Lockscreen.qml+7−1
@@ -187,8 +187,8 @@ Rectangle {
187 unlockedCheckBox.checked = false
187 unlockedCheckBox.checked = false
188 LightDM.Greeter.authenticate(data.username)
188 LightDM.Greeter.authenticate(data.username)
189
189
190+ var inputField = findChild(lockscreen, "pinentryField")
190 if (data.alphanumeric) {
191 if (data.alphanumeric) {
191− var inputField = findChild(lockscreen, "pinentryField")
192 mouseClick(inputField, units.gu(1), units.gu(1))
192 mouseClick(inputField, units.gu(1), units.gu(1))
193 typeString(data.password)
193 typeString(data.password)
194 keyClick(Qt.Key_Enter)
194 keyClick(Qt.Key_Enter)
@@ -200,6 +200,12 @@ Rectangle {
200 }
200 }
201 }
201 }
202 tryCompare(unlockedCheckBox, "checked", data.unlockedSignal)
202 tryCompare(unlockedCheckBox, "checked", data.unlockedSignal)
203+ if (!data.unlockedSignal) {
204+ // make sure the input is cleared on wrong input
205+ tryCompareFunction(function() {return inputField.text.length == 0}, true)
206+ } else {
207+ tryCompareFunction(function() {return inputField.text.length > 0}, true)
208+ }
203 }
209 }
204 }
210 }
205}
211}