on xenial help sign in
Merge from -refactor
f9fc496Michael Terry
build.sh+4−1
@@ -61,7 +61,10 @@ install_dependencies() {
61}
61}
62
62
63mk_build_deps() {
63mk_build_deps() {
64+ if [ ! -f control -o $CODE_DIR/debian/control -nt control ]; then
65+ sed 's/\:native//g' $CODE_DIR/debian/control > control
64− [ ! -f unity8-build-deps*deb -o $CODE_DIR/debian/control -nt unity8-build-deps*deb ] && mk-build-deps --install --root-cmd sudo $CODE_DIR/debian/control
66+ mk-build-deps --install --root-cmd sudo control
67+ fi
65}
68}
66
69
67if [ -f "/usr/bin/ccache" ] ; then
70if [ -f "/usr/bin/ccache" ] ; then
debian/changelog+29
@@ -1,3 +1,32 @@
1+unity8 (8.02+15.04.20150113.1-0ubuntu1) vivid; urgency=low
2+
3+ [ Andrea Cimitan ]
4+ * support background on horizontal cards with summary (LP: #1393008)
5+
6+ [ Gerry Boland ]
7+ * DashCommunicator: replace QDBusInterface with a non-blocking
8+ simplification which does not introspect the service on creation
9+ (LP: #1403508)
10+
11+ [ Leo Arias ]
12+ * Added an autopilot test for the edges demo.
13+
14+ [ Albert Astals ]
15+ * Don't show the manage dash pull up arrow on temp scopes (LP:
16+ #1401869)
17+ * Remove hack, newer Qt already support keyClick(char)
18+ * Tests: Add Qt 5.5 removal TODOs
19+ * Make sure we use fPIC when compiling files for the static library
20+ too
21+ * Make sure changing a scope doesn't trigger creation/destruction of
22+ delegates until it's finished (LP: #1410122)
23+
24+ [ Michael Zanetti ]
25+ * patch debian/control file before using it to make it work with mk-
26+ build-deps
27+
28+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 13 Jan 2015 20:58:08 +0000
29+
1unity8 (8.02+15.04.20150109.2-0ubuntu1) vivid; urgency=low
30unity8 (8.02+15.04.20150109.2-0ubuntu1) vivid; urgency=low
2
31
3 [ Michał Sawicz ]
32 [ Michał Sawicz ]
plugins/Dash/CardCreator.js+1−1
@@ -320,7 +320,7 @@ function cardString(template, components) {
320 var hasSummary = components["summary"] || false;
320 var hasSummary = components["summary"] || false;
321 var artAndSummary = hasArt && hasSummary;
321 var artAndSummary = hasArt && hasSummary;
322 var isHorizontal = template["card-layout"] === "horizontal";
322 var isHorizontal = template["card-layout"] === "horizontal";
323− var hasBackground = !isHorizontal && (template["card-background"] || components["background"] || artAndSummary);
323+ var hasBackground = (hasSummary || !isHorizontal) && (template["card-background"] || components["background"] || artAndSummary);
324 var hasTitle = components["title"] || false;
324 var hasTitle = components["title"] || false;
325 var hasMascot = components["mascot"] || false;
325 var hasMascot = components["mascot"] || false;
326 var hasEmblem = components["emblem"] && !(hasMascot && template["card-size"] === "small") || false;
326 var hasEmblem = components["emblem"] && !(hasMascot && template["card-size"] === "small") || false;
plugins/Unity/DashCommunicator/dashconnection.cpp+30
@@ -19,12 +19,42 @@
19#include <QDBusInterface>
19#include <QDBusInterface>
20#include <QDBusPendingCall>
20#include <QDBusPendingCall>
21
21
22+/* The default implementation of AbstractDBusServiceMonitor creates a QDBusInterface when the service
23+ * appears on the bus.
24+ *
25+ * On construction QDBusInterface synchronously introspects the service, which will block the GUI
26+ * thread of this process if the service is busy. QDBusAbstractInterface does not perform this
27+ * introspection, so let's subclass that and avoid the blocking scenario.
28+ *
29+ * However we lose Qt's wrapping of the DBus service with a MetaObject, with the result that we
30+ * cannot easily connect to DBus signals with the usual connect() calls. So this approach only
31+ * suited to push communication with the DBus service.
32+ */
33+class AsyncDBusInterface : public QDBusAbstractInterface
34+{
35+public:
36+ AsyncDBusInterface(const QString &service, const QString &path,
37+ const QString &interface, const QDBusConnection &connection,
38+ QObject *parent = 0)
39+ : QDBusAbstractInterface(service, path, interface.toLatin1().data(), connection, parent)
40+ {}
41+ ~AsyncDBusInterface() = default;
42+};
43+
44+
22DashConnection::DashConnection(const QString &service, const QString &path, const QString &interface, QObject *parent):
45DashConnection::DashConnection(const QString &service, const QString &path, const QString &interface, QObject *parent):
23 AbstractDBusServiceMonitor(service, path, interface, SessionBus, parent)
46 AbstractDBusServiceMonitor(service, path, interface, SessionBus, parent)
24{
47{
25
48
26}
49}
27
50
51+/* Override the default implementation to create a non-blocking DBus interface (see note above). */
52+QDBusAbstractInterface* DashConnection::createInterface(const QString &service, const QString &path,
53+ const QString &interface, const QDBusConnection &connection)
54+{
55+ return new AsyncDBusInterface(service, path, interface, connection);
56+}
57+
28void DashConnection::setCurrentScope(int index, bool animate, bool isSwipe)
58void DashConnection::setCurrentScope(int index, bool animate, bool isSwipe)
29{
59{
30 if (dbusInterface()) {
60 if (dbusInterface()) {
plugins/Unity/DashCommunicator/dashconnection.h+4−1
@@ -20,7 +20,6 @@
20// local
20// local
21#include "abstractdbusservicemonitor.h"
21#include "abstractdbusservicemonitor.h"
22
22
23−
24class DashConnection: public AbstractDBusServiceMonitor
23class DashConnection: public AbstractDBusServiceMonitor
25{
24{
26 Q_OBJECT
25 Q_OBJECT
@@ -29,6 +28,10 @@ public:
29
28
30public Q_SLOTS:
29public Q_SLOTS:
31 void setCurrentScope(int index, bool animate, bool isSwipe);
30 void setCurrentScope(int index, bool animate, bool isSwipe);
31+
32+private:
33+ QDBusAbstractInterface* createInterface(const QString &service, const QString &path,
34+ const QString &interface, const QDBusConnection &connection) override;
32};
35};
33
36
34#endif
37#endif
po/ca.po+92−88
@@ -8,26 +8,26 @@ 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: 2014-12-10 10:55+0100\n"
10"POT-Creation-Date: 2014-12-10 10:55+0100\n"
11−"PO-Revision-Date: 2014-11-10 09:22+0000\n"
11+"PO-Revision-Date: 2015-01-13 13:15+0000\n"
12"Last-Translator: David Planella <david.planella@ubuntu.com>\n"
12"Last-Translator: David Planella <david.planella@ubuntu.com>\n"
13"Language-Team: Catalan <ca@li.org>\n"
13"Language-Team: Catalan <ca@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"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2014-12-13 07:11+0000\n"
18+"X-Launchpad-Export-Date: 2015-01-15 06:06+0000\n"
19−"X-Generator: Launchpad (build 17286)\n"
19+"X-Generator: Launchpad (build 17303)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:130
21#: plugins/LightDM/Greeter.cpp:130
22msgid "Password: "
22msgid "Password: "
23msgstr "Contrasenya: "
23msgstr "Contrasenya: "
24
24
25#: plugins/Unity/Launcher/launcheritem.cpp:45
25#: plugins/Unity/Launcher/launcheritem.cpp:45
26−#: plugins/Unity/Launcher/launcheritem.cpp:100
26+#: plugins/Unity/Launcher/launcheritem.cpp:91
27msgid "Pin shortcut"
27msgid "Pin shortcut"
28msgstr "Enganxa la drecera"
28msgstr "Enganxa la drecera"
29
29
30−#: plugins/Unity/Launcher/launcheritem.cpp:100
30+#: plugins/Unity/Launcher/launcheritem.cpp:91
31msgid "Unpin shortcut"
31msgid "Unpin shortcut"
32msgstr "Desenganxa la drecera"
32msgstr "Desenganxa la drecera"
33
33
@@ -54,45 +54,45 @@ msgid_plural "Please wait %1 minutes and then try again…"
54msgstr[0] "Espereu %1 minut i torneu-ho a intentar..."
54msgstr[0] "Espereu %1 minut i torneu-ho a intentar..."
55msgstr[1] "Espereu %1 minuts i torneu-ho a intentar..."
55msgstr[1] "Espereu %1 minuts i torneu-ho a intentar..."
56
56
57−#: qml/Components/Dialogs.qml:70
57+#: qml/Components/Dialogs.qml:74
58msgid "Log out"
58msgid "Log out"
59msgstr "Surt"
59msgstr "Surt"
60
60
61−#: qml/Components/Dialogs.qml:71
61+#: qml/Components/Dialogs.qml:75
62msgid "Are you sure you want to log out?"
62msgid "Are you sure you want to log out?"
63msgstr "Segur que voleu sortir?"
63msgstr "Segur que voleu sortir?"
64
64
65−#: qml/Components/Dialogs.qml:73 qml/Components/Dialogs.qml:97
65+#: qml/Components/Dialogs.qml:77 qml/Components/Dialogs.qml:101
66−#: qml/Components/Dialogs.qml:122
66+#: qml/Components/Dialogs.qml:126
67msgid "No"
67msgid "No"
68msgstr "No"
68msgstr "No"
69
69
70−#: qml/Components/Dialogs.qml:80 qml/Components/Dialogs.qml:104
70+#: qml/Components/Dialogs.qml:84 qml/Components/Dialogs.qml:108
71−#: qml/Components/Dialogs.qml:129
71+#: qml/Components/Dialogs.qml:133
72msgid "Yes"
72msgid "Yes"
73msgstr "Sí"
73msgstr "Sí"
74
74
75−#: qml/Components/Dialogs.qml:94
75+#: qml/Components/Dialogs.qml:98
76msgid "Shut down"
76msgid "Shut down"
77msgstr "Apaga"
77msgstr "Apaga"
78
78
79−#: qml/Components/Dialogs.qml:95
79+#: qml/Components/Dialogs.qml:99
80msgid "Are you sure you want to shut down?"
80msgid "Are you sure you want to shut down?"
81msgstr "Segur que voleu apagar?"
81msgstr "Segur que voleu apagar?"
82
82
83−#: qml/Components/Dialogs.qml:119
83+#: qml/Components/Dialogs.qml:123
84msgid "Reboot"
84msgid "Reboot"
85msgstr "Reinicia"
85msgstr "Reinicia"
86
86
87−#: qml/Components/Dialogs.qml:120
87+#: qml/Components/Dialogs.qml:124
88msgid "Are you sure you want to reboot?"
88msgid "Are you sure you want to reboot?"
89msgstr "Segur que voleu reiniciar?"
89msgstr "Segur que voleu reiniciar?"
90
90
91−#: qml/Components/Dialogs.qml:144
91+#: qml/Components/Dialogs.qml:148
92msgid "Power"
92msgid "Power"
93msgstr "Energia"
93msgstr "Energia"
94
94
95−#: qml/Components/Dialogs.qml:145
95+#: qml/Components/Dialogs.qml:149
96msgid ""
96msgid ""
97"Are you sure you would like\n"
97"Are you sure you would like\n"
98"to power off?"
98"to power off?"
@@ -100,15 +100,15 @@ msgstr ""
100"Segur que voleu\n"
100"Segur que voleu\n"
101"apagar?"
101"apagar?"
102
102
103−#: qml/Components/Dialogs.qml:147
103+#: qml/Components/Dialogs.qml:151
104msgid "Power off"
104msgid "Power off"
105msgstr "Apaga"
105msgstr "Apaga"
106
106
107−#: qml/Components/Dialogs.qml:157
107+#: qml/Components/Dialogs.qml:161
108msgid "Restart"
108msgid "Restart"
109msgstr "Reinicia"
109msgstr "Reinicia"
110
110
111−#: qml/Components/Dialogs.qml:167
111+#: qml/Components/Dialogs.qml:171
112msgid "Cancel"
112msgid "Cancel"
113msgstr "Cancel·la"
113msgstr "Cancel·la"
114
114
@@ -116,49 +116,49 @@ msgstr "Cancel·la"
116msgid "Skip intro"
116msgid "Skip intro"
117msgstr "Omet la introducció"
117msgstr "Omet la introducció"
118
118
119−#: qml/Components/EdgeDemo.qml:125
119+#: qml/Components/EdgeDemo.qml:112
120msgid "Right edge"
120msgid "Right edge"
121msgstr "Vora dreta"
121msgstr "Vora dreta"
122
122
123−#: qml/Components/EdgeDemo.qml:126
123+#: qml/Components/EdgeDemo.qml:113
124msgid "Try swiping from the right edge to unlock the phone"
124msgid "Try swiping from the right edge to unlock the phone"
125msgstr ""
125msgstr ""
126"Proveu de lliscar el dit des de la vora dreta per desblocar el telèfon"
126"Proveu de lliscar el dit des de la vora dreta per desblocar el telèfon"
127
127
128−#: qml/Components/EdgeDemo.qml:157
128+#: qml/Components/EdgeDemo.qml:144
129msgid "Top edge"
129msgid "Top edge"
130msgstr "Vora superior"
130msgstr "Vora superior"
131
131
132−#: qml/Components/EdgeDemo.qml:158
132+#: qml/Components/EdgeDemo.qml:145
133msgid "Try swiping from the top edge to access the indicators"
133msgid "Try swiping from the top edge to access the indicators"
134msgstr ""
134msgstr ""
135"Proveu de lliscar el dit des de la vora superior per accedir als indicadors"
135"Proveu de lliscar el dit des de la vora superior per accedir als indicadors"
136
136
137−#: qml/Components/EdgeDemo.qml:183
137+#: qml/Components/EdgeDemo.qml:170
138msgid "Close"
138msgid "Close"
139msgstr "Tanca"
139msgstr "Tanca"
140
140
141−#: qml/Components/EdgeDemo.qml:184
141+#: qml/Components/EdgeDemo.qml:171
142msgid "Swipe up again to close the settings screen"
142msgid "Swipe up again to close the settings screen"
143msgstr ""
143msgstr ""
144"Llisqueu el dit cap amunt una altra vegada per tancar la pantalla de "
144"Llisqueu el dit cap amunt una altra vegada per tancar la pantalla de "
145"configuració"
145"configuració"
146
146
147−#: qml/Components/EdgeDemo.qml:214
147+#: qml/Components/EdgeDemo.qml:201
148msgid "Left edge"
148msgid "Left edge"
149msgstr "Vora esquerra"
149msgstr "Vora esquerra"
150
150
151−#: qml/Components/EdgeDemo.qml:215
151+#: qml/Components/EdgeDemo.qml:202
152msgid "Swipe from the left to reveal the launcher for quick access to apps"
152msgid "Swipe from the left to reveal the launcher for quick access to apps"
153msgstr ""
153msgstr ""
154"Llisqueu el dit des de la vora esquerra per mostrar el llançador i accedir "
154"Llisqueu el dit des de la vora esquerra per mostrar el llançador i accedir "
155"ràpidament a les aplicacions"
155"ràpidament a les aplicacions"
156
156
157−#: qml/Components/EdgeDemo.qml:242
157+#: qml/Components/EdgeDemo.qml:229
158msgid "Well done"
158msgid "Well done"
159msgstr "Enhorabona!"
159msgstr "Enhorabona!"
160
160
161−#: qml/Components/EdgeDemo.qml:243
161+#: qml/Components/EdgeDemo.qml:230
162msgid ""
162msgid ""
163"You have now mastered the edge gestures and can start using the "
163"You have now mastered the edge gestures and can start using the "
164"phone<br><br>Tap on the screen to start"
164"phone<br><br>Tap on the screen to start"
@@ -166,44 +166,44 @@ msgstr ""
166"Ja heu après com utilitzar els gestos de les vores per fer servir el "
166"Ja heu après com utilitzar els gestos de les vores per fer servir el "
167"telèfon<br><br>Feu un toc a la pantalla per començar"
167"telèfon<br><br>Feu un toc a la pantalla per començar"
168
168
169−#: qml/Components/Lockscreen.qml:238
169+#: qml/Components/Lockscreen.qml:223
170msgid "Return to Call"
170msgid "Return to Call"
171msgstr "Torna a la trucada"
171msgstr "Torna a la trucada"
172
172
173−#: qml/Components/Lockscreen.qml:238
173+#: qml/Components/Lockscreen.qml:223
174msgid "Emergency Call"
174msgid "Emergency Call"
175msgstr "Trucada d'emergència"
175msgstr "Trucada d'emergència"
176
176
177−#: qml/Components/Lockscreen.qml:270
177+#: qml/Components/Lockscreen.qml:255
178msgid "OK"
178msgid "OK"
179msgstr "D'acord"
179msgstr "D'acord"
180
180
181−#: qml/Dash/GenericScopeView.qml:431 qml/Dash/GenericScopeView.qml:588
181+#: qml/Dash/GenericScopeView.qml:434 qml/Dash/GenericScopeView.qml:591
182msgid "See less"
182msgid "See less"
183msgstr "Mostra'n menys"
183msgstr "Mostra'n menys"
184
184
185−#: qml/Dash/GenericScopeView.qml:431
185+#: qml/Dash/GenericScopeView.qml:434
186msgid "See all"
186msgid "See all"
187msgstr "Mostra-ho tot"
187msgstr "Mostra-ho tot"
188
188
189−#: qml/Dash/GenericScopeView.qml:493 qml/Dash/PageHeader.qml:267
189+#: qml/Dash/GenericScopeView.qml:496 qml/Dash/PageHeader.qml:268
190#: qml/Panel/SearchIndicator.qml:27
190#: qml/Panel/SearchIndicator.qml:27
191msgid "Search"
191msgid "Search"
192msgstr "Cerca"
192msgstr "Cerca"
193
193
194−#: qml/Dash/PageHeader.qml:260
194+#: qml/Dash/PageHeader.qml:261
195msgid "Store"
195msgid "Store"
196msgstr "Botiga"
196msgstr "Botiga"
197
197
198−#: qml/Dash/PageHeader.qml:277
198+#: qml/Dash/PageHeader.qml:278
199msgid "Settings"
199msgid "Settings"
200msgstr "Paràmetres"
200msgstr "Paràmetres"
201
201
202−#: qml/Dash/PageHeader.qml:284
202+#: qml/Dash/PageHeader.qml:285
203msgid "Remove from Favorites"
203msgid "Remove from Favorites"
204msgstr "Suprimeix dels preferits"
204msgstr "Suprimeix dels preferits"
205
205
206−#: qml/Dash/PageHeader.qml:284
206+#: qml/Dash/PageHeader.qml:285
207msgid "Add to Favorites"
207msgid "Add to Favorites"
208msgstr "Afegeix als preferits"
208msgstr "Afegeix als preferits"
209
209
@@ -237,15 +237,15 @@ msgstr "Deixeu anar per actualitzar..."
237
237
238#: qml/Dash/ScopesList.qml:63
238#: qml/Dash/ScopesList.qml:63
239msgid "Manage"
239msgid "Manage"
240−msgstr ""
240+msgstr "Gestiona"
241
241
242#: qml/Dash/ScopesList.qml:107
242#: qml/Dash/ScopesList.qml:107
243msgid "Home"
243msgid "Home"
244−msgstr ""
244+msgstr "Inici"
245
245
246#: qml/Dash/ScopesList.qml:108
246#: qml/Dash/ScopesList.qml:108
247msgid "Also installed"
247msgid "Also installed"
248−msgstr ""
248+msgstr "També instal·lat"
249
249
250#: qml/Greeter/Greeter.qml:174
250#: qml/Greeter/Greeter.qml:174
251msgid "Unlock"
251msgid "Unlock"
@@ -299,49 +299,49 @@ msgstr "Desbloca la SIM"
299msgid "Roaming"
299msgid "Roaming"
300msgstr "Itinerància"
300msgstr "Itinerància"
301
301
302−#: qml/Shell.qml:367
302+#: qml/Shell.qml:402
303#, qt-format
303#, qt-format
304msgid "Enter %1"
304msgid "Enter %1"
305msgstr "Introduïu: %1"
305msgstr "Introduïu: %1"
306
306
307−#: qml/Shell.qml:368 qml/Wizard/Pages/passwd-set.qml:60
307+#: qml/Shell.qml:394
308msgid "Enter passphrase"
308msgid "Enter passphrase"
309msgstr "Introduïu la contrasenya"
309msgstr "Introduïu la contrasenya"
310
310
311−#: qml/Shell.qml:369
311+#: qml/Shell.qml:398
312msgid "Enter passcode"
312msgid "Enter passcode"
313msgstr "Introduïu el codi d'accés"
313msgstr "Introduïu el codi d'accés"
314
314
315−#: qml/Shell.qml:370
315+#: qml/Shell.qml:403
316#, qt-format
316#, qt-format
317msgid "Sorry, incorrect %1"
317msgid "Sorry, incorrect %1"
318msgstr "Incorrecte (%1)"
318msgstr "Incorrecte (%1)"
319
319
320−#: qml/Shell.qml:371
320+#: qml/Shell.qml:395
321msgid "Sorry, incorrect passphrase"
321msgid "Sorry, incorrect passphrase"
322msgstr "La contrasenya no és correcta"
322msgstr "La contrasenya no és correcta"
323
323
324−#: qml/Shell.qml:372
324+#: qml/Shell.qml:396
325msgid "Please re-enter"
325msgid "Please re-enter"
326msgstr "Torneu-ho a introduir"
326msgstr "Torneu-ho a introduir"
327
327
328−#: qml/Shell.qml:373
328+#: qml/Shell.qml:399
329msgid "Sorry, incorrect passcode"
329msgid "Sorry, incorrect passcode"
330msgstr "El codi d'accés no és correcte"
330msgstr "El codi d'accés no és correcte"
331
331
332−#: qml/Shell.qml:467 qml/Wizard/Pages/passwd-confirm.qml:53
332+#: qml/Shell.qml:444
333msgid "Sorry, incorrect passphrase."
333msgid "Sorry, incorrect passphrase."
334msgstr "La contrasenya és incorrecta"
334msgstr "La contrasenya és incorrecta"
335
335
336−#: qml/Shell.qml:468 qml/Wizard/Pages/passwd-confirm.qml:54
336+#: qml/Shell.qml:445
337msgid "Sorry, incorrect passcode."
337msgid "Sorry, incorrect passcode."
338msgstr "El codi d'accés no és correcte"
338msgstr "El codi d'accés no és correcte"
339
339
340−#: qml/Shell.qml:469
340+#: qml/Shell.qml:446
341msgid "This will be your last attempt."
341msgid "This will be your last attempt."
342msgstr "Aquest serà el darrer intent."
342msgstr "Aquest serà el darrer intent."
343
343
344−#: qml/Shell.qml:471
344+#: qml/Shell.qml:448
345msgid ""
345msgid ""
346"If passphrase is entered incorrectly, your phone will conduct a factory "
346"If passphrase is entered incorrectly, your phone will conduct a factory "
347"reset and all personal data will be deleted."
347"reset and all personal data will be deleted."
@@ -350,7 +350,7 @@ msgstr ""
350"reinicialitzarà a l'estat de fàbrica i se suprimiran totes les dades "
350"reinicialitzarà a l'estat de fàbrica i se suprimiran totes les dades "
351"personals."
351"personals."
352
352
353−#: qml/Shell.qml:472
353+#: qml/Shell.qml:449
354msgid ""
354msgid ""
355"If passcode is entered incorrectly, your phone will conduct a factory reset "
355"If passcode is entered incorrectly, your phone will conduct a factory reset "
356"and all personal data will be deleted."
356"and all personal data will be deleted."
@@ -361,86 +361,86 @@ msgstr ""
361
361
362#: qml/Wizard/Page.qml:89
362#: qml/Wizard/Page.qml:89
363msgid "Back"
363msgid "Back"
364−msgstr ""
364+msgstr "Enrere"
365
365
366#: qml/Wizard/Pages/10-welcome.qml:27
366#: qml/Wizard/Pages/10-welcome.qml:27
367msgid "Hi!"
367msgid "Hi!"
368−msgstr ""
368+msgstr "Hola!"
369
369
370#: qml/Wizard/Pages/10-welcome.qml:44
370#: qml/Wizard/Pages/10-welcome.qml:44
371msgid "Welcome to your Ubuntu phone."
371msgid "Welcome to your Ubuntu phone."
372−msgstr ""
372+msgstr "Us donem la benvinguda al vostre telèfon Ubuntu."
373
373
374#: qml/Wizard/Pages/10-welcome.qml:52
374#: qml/Wizard/Pages/10-welcome.qml:52
375msgid "Let’s get started."
375msgid "Let’s get started."
376−msgstr ""
376+msgstr "Comencem."
377
377
378#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
378#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
379#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
379#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
380#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
380#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
381#: qml/Wizard/Pages/passwd-set.qml:90
381#: qml/Wizard/Pages/passwd-set.qml:90
382msgid "Continue"
382msgid "Continue"
383−msgstr ""
383+msgstr "Continua"
384
384
385#: qml/Wizard/Pages/20-sim.qml:25
385#: qml/Wizard/Pages/20-sim.qml:25
386msgid "Add a SIM card and restart your device"
386msgid "Add a SIM card and restart your device"
387−msgstr ""
387+msgstr "Afegiu una targeta SIM i reinicieu el dispositiu"
388
388
389#: qml/Wizard/Pages/20-sim.qml:55
389#: qml/Wizard/Pages/20-sim.qml:55
390msgid "Without it, you won’t be able to make calls or use text messaging."
390msgid "Without it, you won’t be able to make calls or use text messaging."
391−msgstr ""
391+msgstr "Sense ella, no podreu fer trucades o enviar missatges de text."
392
392
393#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
393#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
394msgid "Skip"
394msgid "Skip"
395−msgstr ""
395+msgstr "Omet"
396
396
397#: qml/Wizard/Pages/30-passwd-type.qml:39
397#: qml/Wizard/Pages/30-passwd-type.qml:39
398msgid "Lock security"
398msgid "Lock security"
399−msgstr ""
399+msgstr "Seguretat del bloqueig"
400
400
401#: qml/Wizard/Pages/30-passwd-type.qml:74
401#: qml/Wizard/Pages/30-passwd-type.qml:74
402msgid "Please select how you’d like to unlock your phone."
402msgid "Please select how you’d like to unlock your phone."
403−msgstr ""
403+msgstr "Seleccioneu com voleu desblocar el telèfon."
404
404
405#: qml/Wizard/Pages/30-passwd-type.qml:97
405#: qml/Wizard/Pages/30-passwd-type.qml:97
406msgid "Swipe"
406msgid "Swipe"
407−msgstr ""
407+msgstr "Lliscament amb el dit"
408
408
409#: qml/Wizard/Pages/30-passwd-type.qml:98
409#: qml/Wizard/Pages/30-passwd-type.qml:98
410msgid "No security"
410msgid "No security"
411−msgstr ""
411+msgstr "Sense seguretat"
412
412
413#: qml/Wizard/Pages/30-passwd-type.qml:100
413#: qml/Wizard/Pages/30-passwd-type.qml:100
414msgid "Passcode"
414msgid "Passcode"
415−msgstr ""
415+msgstr "Codi d'accés"
416
416
417#: qml/Wizard/Pages/30-passwd-type.qml:101
417#: qml/Wizard/Pages/30-passwd-type.qml:101
418msgid "4 digits only"
418msgid "4 digits only"
419−msgstr ""
419+msgstr "Només 4 dígits"
420
420
421#: qml/Wizard/Pages/30-passwd-type.qml:103
421#: qml/Wizard/Pages/30-passwd-type.qml:103
422msgid "Passphrase"
422msgid "Passphrase"
423−msgstr ""
423+msgstr "Contrasenya"
424
424
425#: qml/Wizard/Pages/30-passwd-type.qml:104
425#: qml/Wizard/Pages/30-passwd-type.qml:104
426msgid "Numbers and letters"
426msgid "Numbers and letters"
427−msgstr ""
427+msgstr "Números i lletres"
428
428
429#: qml/Wizard/Pages/40-wifi.qml:28
429#: qml/Wizard/Pages/40-wifi.qml:28
430msgid "Connect to Wi‑Fi"
430msgid "Connect to Wi‑Fi"
431−msgstr ""
431+msgstr "Connecta't a la Wi-Fi"
432
432
433#: qml/Wizard/Pages/40-wifi.qml:147
433#: qml/Wizard/Pages/40-wifi.qml:147
434msgid "Available networks…"
434msgid "Available networks…"
435−msgstr ""
435+msgstr "Xarxes disponibles..."
436
436
437#: qml/Wizard/Pages/40-wifi.qml:148
437#: qml/Wizard/Pages/40-wifi.qml:148
438msgid "No available networks."
438msgid "No available networks."
439−msgstr ""
439+msgstr "No hi ha xarxes disponibles"
440
440
441#: qml/Wizard/Pages/50-location.qml:27
441#: qml/Wizard/Pages/50-location.qml:27
442msgid "Location"
442msgid "Location"
443−msgstr ""
443+msgstr "Ubicació"
444
444
445#: qml/Wizard/Pages/50-location.qml:62
445#: qml/Wizard/Pages/50-location.qml:62
446msgid "Let the phone detect your location:"
446msgid "Let the phone detect your location:"
@@ -471,70 +471,74 @@ msgstr ""
471
471
472#: qml/Wizard/Pages/60-reporting.qml:24
472#: qml/Wizard/Pages/60-reporting.qml:24
473msgid "Improving your experience"
473msgid "Improving your experience"
474−msgstr ""
474+msgstr "Millora de l'experiència"
475
475
476#: qml/Wizard/Pages/60-reporting.qml:36
476#: qml/Wizard/Pages/60-reporting.qml:36
477msgid ""
477msgid ""
478"Your phone is set up to automatically report errors to Canonical and its "
478"Your phone is set up to automatically report errors to Canonical and its "
479"partners, the makers of the operating system."
479"partners, the makers of the operating system."
480msgstr ""
480msgstr ""
481+"Aquest telèfon està configurat per enviar errors de manera automàtica a "
482+"Canonical i associats, els creadors del sistema operatiu."
481
483
482#: qml/Wizard/Pages/60-reporting.qml:43
484#: qml/Wizard/Pages/60-reporting.qml:43
483msgid ""
485msgid ""
484"This can be disabled in <b>System Settings</b> under <b>Security &amp; "
486"This can be disabled in <b>System Settings</b> under <b>Security &amp; "
485"Privacy</b>"
487"Privacy</b>"
486msgstr ""
488msgstr ""
489+"Podeu inhabilitar-ho a <b>Configuració del sistema</b>, a la secció "
490+"<b>Seguretat i privadesa</b>"
487
491
488#: qml/Wizard/Pages/80-finished.qml:24
492#: qml/Wizard/Pages/80-finished.qml:24
489msgid "All done"
493msgid "All done"
490−msgstr ""
494+msgstr "Tot fet"
491
495
492#: qml/Wizard/Pages/80-finished.qml:39
496#: qml/Wizard/Pages/80-finished.qml:39
493msgid "Nice work!"
497msgid "Nice work!"
494−msgstr ""
498+msgstr "Bona feina!"
495
499
496#: qml/Wizard/Pages/80-finished.qml:46
500#: qml/Wizard/Pages/80-finished.qml:46
497msgid "Your phone is now ready to use."
501msgid "Your phone is now ready to use."
498−msgstr ""
502+msgstr "Ja podeu utilitzar el vostre telèfon."
499
503
500#: qml/Wizard/Pages/80-finished.qml:53
504#: qml/Wizard/Pages/80-finished.qml:53
501msgid "Finish"
505msgid "Finish"
502−msgstr ""
506+msgstr "Finalitza"
503
507
504#: qml/Wizard/Pages/here-terms.qml:27
508#: qml/Wizard/Pages/here-terms.qml:27
505msgid "Terms & Conditions"
509msgid "Terms & Conditions"
506−msgstr ""
510+msgstr "Condicions generals"
507
511
508#: qml/Wizard/Pages/passwd-confirm.qml:49
512#: qml/Wizard/Pages/passwd-confirm.qml:49
509msgid "Confirm passphrase"
513msgid "Confirm passphrase"
510−msgstr ""
514+msgstr "Confirmeu la contrasenya"
511
515
512#: qml/Wizard/Pages/passwd-confirm.qml:50
516#: qml/Wizard/Pages/passwd-confirm.qml:50
513msgid "Confirm passcode"
517msgid "Confirm passcode"
514−msgstr ""
518+msgstr "Confirmeu el codi d'accés"
515
519
516#: qml/Wizard/Pages/passwd-confirm.qml:53
520#: qml/Wizard/Pages/passwd-confirm.qml:53
517#: qml/Wizard/Pages/passwd-confirm.qml:54
521#: qml/Wizard/Pages/passwd-confirm.qml:54
518msgid "Please try again."
522msgid "Please try again."
519−msgstr ""
523+msgstr "Torneu-ho a intentar."
520
524
521#: qml/Wizard/Pages/passwd-set.qml:61
525#: qml/Wizard/Pages/passwd-set.qml:61
522msgid "Choose your passcode"
526msgid "Choose your passcode"
523−msgstr ""
527+msgstr "Trieu el codi d'accés"
524
528
525#: qml/Wizard/Pages/passwd-set.qml:68
529#: qml/Wizard/Pages/passwd-set.qml:68
526msgid "Passphrase must be 4 characters long"
530msgid "Passphrase must be 4 characters long"
527−msgstr ""
531+msgstr "La contrasenya ha de tenir 4 caràcters com a mínim"
528
532
529#: qml/Wizard/StackButton.qml:39
533#: qml/Wizard/StackButton.qml:39
530#, qt-format
534#, qt-format
531msgid "〈 %1"
535msgid "〈 %1"
532−msgstr ""
536+msgstr "〈 %1"
533
537
534#: qml/Wizard/StackButton.qml:42
538#: qml/Wizard/StackButton.qml:42
535#, qt-format
539#, qt-format
536msgid "%1 〉"
540msgid "%1 〉"
537−msgstr ""
541+msgstr "%1 〉"
538
542
539#~ msgid "Confirm"
543#~ msgid "Confirm"
540#~ msgstr "Confirma"
544#~ msgstr "Confirma"
po/fa.po+96−88
@@ -8,26 +8,26 @@ msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\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: 2014-12-10 10:55+0100\n"
10"POT-Creation-Date: 2014-12-10 10:55+0100\n"
11−"PO-Revision-Date: 2014-12-10 12:53+0000\n"
11+"PO-Revision-Date: 2015-01-09 15:59+0000\n"
12"Last-Translator: Danial Behzadi <dani.behzi@gmail.com>\n"
12"Last-Translator: Danial Behzadi <dani.behzi@gmail.com>\n"
13"Language-Team: Persian <fa@li.org>\n"
13"Language-Team: Persian <fa@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"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2014-12-13 07:11+0000\n"
18+"X-Launchpad-Export-Date: 2015-01-10 07:18+0000\n"
19−"X-Generator: Launchpad (build 17286)\n"
19+"X-Generator: Launchpad (build 17298)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:130
21#: plugins/LightDM/Greeter.cpp:130
22msgid "Password: "
22msgid "Password: "
23msgstr "گذرواژه: "
23msgstr "گذرواژه: "
24
24
25#: plugins/Unity/Launcher/launcheritem.cpp:45
25#: plugins/Unity/Launcher/launcheritem.cpp:45
26−#: plugins/Unity/Launcher/launcheritem.cpp:100
26+#: plugins/Unity/Launcher/launcheritem.cpp:91
27msgid "Pin shortcut"
27msgid "Pin shortcut"
28msgstr "سنجاق کردن میانبر"
28msgstr "سنجاق کردن میانبر"
29
29
30−#: plugins/Unity/Launcher/launcheritem.cpp:100
30+#: plugins/Unity/Launcher/launcheritem.cpp:91
31msgid "Unpin shortcut"
31msgid "Unpin shortcut"
32msgstr "برداشتن سنجاق میانبر"
32msgstr "برداشتن سنجاق میانبر"
33
33
@@ -50,45 +50,45 @@ msgid "Please wait %1 minute and then try again…"
50msgid_plural "Please wait %1 minutes and then try again…"
50msgid_plural "Please wait %1 minutes and then try again…"
51msgstr[0] "لطفاُ %1 دقیقه صبر نموده و سپس مجدّداً تلاش نمایید…"
51msgstr[0] "لطفاُ %1 دقیقه صبر نموده و سپس مجدّداً تلاش نمایید…"
52
52
53−#: qml/Components/Dialogs.qml:70
53+#: qml/Components/Dialogs.qml:74
54msgid "Log out"
54msgid "Log out"
55msgstr "خروج از حساب"
55msgstr "خروج از حساب"
56
56
57−#: qml/Components/Dialogs.qml:71
57+#: qml/Components/Dialogs.qml:75
58msgid "Are you sure you want to log out?"
58msgid "Are you sure you want to log out?"
59msgstr "مطمئنید که می‌خواهید از حساب خارج شوید"
59msgstr "مطمئنید که می‌خواهید از حساب خارج شوید"
60
60
61−#: qml/Components/Dialogs.qml:73 qml/Components/Dialogs.qml:97
61+#: qml/Components/Dialogs.qml:77 qml/Components/Dialogs.qml:101
62−#: qml/Components/Dialogs.qml:122
62+#: qml/Components/Dialogs.qml:126
63msgid "No"
63msgid "No"
64msgstr "خیر"
64msgstr "خیر"
65
65
66−#: qml/Components/Dialogs.qml:80 qml/Components/Dialogs.qml:104
66+#: qml/Components/Dialogs.qml:84 qml/Components/Dialogs.qml:108
67−#: qml/Components/Dialogs.qml:129
67+#: qml/Components/Dialogs.qml:133
68msgid "Yes"
68msgid "Yes"
69msgstr "بله"
69msgstr "بله"
70
70
71−#: qml/Components/Dialogs.qml:94
71+#: qml/Components/Dialogs.qml:98
72msgid "Shut down"
72msgid "Shut down"
73msgstr "خاموش کردن"
73msgstr "خاموش کردن"
74
74
75−#: qml/Components/Dialogs.qml:95
75+#: qml/Components/Dialogs.qml:99
76msgid "Are you sure you want to shut down?"
76msgid "Are you sure you want to shut down?"
77msgstr "مطمئنید که می‌خواهید خاموش کنید؟"
77msgstr "مطمئنید که می‌خواهید خاموش کنید؟"
78
78
79−#: qml/Components/Dialogs.qml:119
79+#: qml/Components/Dialogs.qml:123
80msgid "Reboot"
80msgid "Reboot"
81msgstr "راه‌اندازی مجدّد"
81msgstr "راه‌اندازی مجدّد"
82
82
83−#: qml/Components/Dialogs.qml:120
83+#: qml/Components/Dialogs.qml:124
84msgid "Are you sure you want to reboot?"
84msgid "Are you sure you want to reboot?"
85msgstr "مطمئنید که می‌خواهید مجدّداً راه‌اندازی کنسد؟"
85msgstr "مطمئنید که می‌خواهید مجدّداً راه‌اندازی کنسد؟"
86
86
87−#: qml/Components/Dialogs.qml:144
87+#: qml/Components/Dialogs.qml:148
88msgid "Power"
88msgid "Power"
89msgstr "توان"
89msgstr "توان"
90
90
91−#: qml/Components/Dialogs.qml:145
91+#: qml/Components/Dialogs.qml:149
92msgid ""
92msgid ""
93"Are you sure you would like\n"
93"Are you sure you would like\n"
94"to power off?"
94"to power off?"
@@ -96,15 +96,15 @@ msgstr ""
96"آیا مطمئن هستید که\n"
96"آیا مطمئن هستید که\n"
97"می‌خواهید خاموش کنید؟"
97"می‌خواهید خاموش کنید؟"
98
98
99−#: qml/Components/Dialogs.qml:147
99+#: qml/Components/Dialogs.qml:151
100msgid "Power off"
100msgid "Power off"
101msgstr "خاموش کردن"
101msgstr "خاموش کردن"
102
102
103−#: qml/Components/Dialogs.qml:157
103+#: qml/Components/Dialogs.qml:161
104msgid "Restart"
104msgid "Restart"
105msgstr "شروع مجدّد"
105msgstr "شروع مجدّد"
106
106
107−#: qml/Components/Dialogs.qml:167
107+#: qml/Components/Dialogs.qml:171
108msgid "Cancel"
108msgid "Cancel"
109msgstr "لغو"
109msgstr "لغو"
110
110
@@ -112,43 +112,43 @@ msgstr "لغو"
112msgid "Skip intro"
112msgid "Skip intro"
113msgstr "پرش از مقدّمه"
113msgstr "پرش از مقدّمه"
114
114
115−#: qml/Components/EdgeDemo.qml:125
115+#: qml/Components/EdgeDemo.qml:112
116msgid "Right edge"
116msgid "Right edge"
117msgstr "لبه‌ی راست"
117msgstr "لبه‌ی راست"
118
118
119−#: qml/Components/EdgeDemo.qml:126
119+#: qml/Components/EdgeDemo.qml:113
120msgid "Try swiping from the right edge to unlock the phone"
120msgid "Try swiping from the right edge to unlock the phone"
121msgstr "برای باز کردن قفل تلفن، از لبه‌ی راست بکشید"
121msgstr "برای باز کردن قفل تلفن، از لبه‌ی راست بکشید"
122
122
123−#: qml/Components/EdgeDemo.qml:157
123+#: qml/Components/EdgeDemo.qml:144
124msgid "Top edge"
124msgid "Top edge"
125msgstr "لبه‌ی بالا"
125msgstr "لبه‌ی بالا"
126
126
127−#: qml/Components/EdgeDemo.qml:158
127+#: qml/Components/EdgeDemo.qml:145
128msgid "Try swiping from the top edge to access the indicators"
128msgid "Try swiping from the top edge to access the indicators"
129msgstr "برای دست‌رسی به نشانگرها، از لبه‌ی بالا بکشید"
129msgstr "برای دست‌رسی به نشانگرها، از لبه‌ی بالا بکشید"
130
130
131−#: qml/Components/EdgeDemo.qml:183
131+#: qml/Components/EdgeDemo.qml:170
132msgid "Close"
132msgid "Close"
133msgstr "بستن"
133msgstr "بستن"
134
134
135−#: qml/Components/EdgeDemo.qml:184
135+#: qml/Components/EdgeDemo.qml:171
136msgid "Swipe up again to close the settings screen"
136msgid "Swipe up again to close the settings screen"
137msgstr "برای بستن صفحه‌ی تنظیمات، دوباره به بالا بکشپد"
137msgstr "برای بستن صفحه‌ی تنظیمات، دوباره به بالا بکشپد"
138
138
139−#: qml/Components/EdgeDemo.qml:214
139+#: qml/Components/EdgeDemo.qml:201
140msgid "Left edge"
140msgid "Left edge"
141msgstr "لبه‌ی چپ"
141msgstr "لبه‌ی چپ"
142
142
143−#: qml/Components/EdgeDemo.qml:215
143+#: qml/Components/EdgeDemo.qml:202
144msgid "Swipe from the left to reveal the launcher for quick access to apps"
144msgid "Swipe from the left to reveal the launcher for quick access to apps"
145msgstr "برای آشکار شدن اجراگر به منظور دست‌رسی سریع به اپ‌ها از سمت چپ بکشید"
145msgstr "برای آشکار شدن اجراگر به منظور دست‌رسی سریع به اپ‌ها از سمت چپ بکشید"
146
146
147−#: qml/Components/EdgeDemo.qml:242
147+#: qml/Components/EdgeDemo.qml:229
148msgid "Well done"
148msgid "Well done"
149msgstr "عالی بود"
149msgstr "عالی بود"
150
150
151−#: qml/Components/EdgeDemo.qml:243
151+#: qml/Components/EdgeDemo.qml:230
152msgid ""
152msgid ""
153"You have now mastered the edge gestures and can start using the "
153"You have now mastered the edge gestures and can start using the "
154"phone<br><br>Tap on the screen to start"
154"phone<br><br>Tap on the screen to start"
@@ -156,44 +156,44 @@ msgstr ""
156"هم اکنون در استفاده از ژست های حرکتی مهارت لازم را دارید و می‌توانید استفاده "
156"هم اکنون در استفاده از ژست های حرکتی مهارت لازم را دارید و می‌توانید استفاده "
157"از تلفن را آغاز کنید<br><br>برای شروع صفحه را لمس کنید"
157"از تلفن را آغاز کنید<br><br>برای شروع صفحه را لمس کنید"
158
158
159−#: qml/Components/Lockscreen.qml:238
159+#: qml/Components/Lockscreen.qml:223
160msgid "Return to Call"
160msgid "Return to Call"
161msgstr "بازگشت به تماس"
161msgstr "بازگشت به تماس"
162
162
163−#: qml/Components/Lockscreen.qml:238
163+#: qml/Components/Lockscreen.qml:223
164msgid "Emergency Call"
164msgid "Emergency Call"
165msgstr "تماس اضطراری"
165msgstr "تماس اضطراری"
166
166
167−#: qml/Components/Lockscreen.qml:270
167+#: qml/Components/Lockscreen.qml:255
168msgid "OK"
168msgid "OK"
169msgstr "قبول"
169msgstr "قبول"
170
170
171−#: qml/Dash/GenericScopeView.qml:431 qml/Dash/GenericScopeView.qml:588
171+#: qml/Dash/GenericScopeView.qml:434 qml/Dash/GenericScopeView.qml:591
172msgid "See less"
172msgid "See less"
173msgstr "کم‌تر ببینید"
173msgstr "کم‌تر ببینید"
174
174
175−#: qml/Dash/GenericScopeView.qml:431
175+#: qml/Dash/GenericScopeView.qml:434
176msgid "See all"
176msgid "See all"
177msgstr "دیدن همه"
177msgstr "دیدن همه"
178
178
179−#: qml/Dash/GenericScopeView.qml:493 qml/Dash/PageHeader.qml:267
179+#: qml/Dash/GenericScopeView.qml:496 qml/Dash/PageHeader.qml:268
180#: qml/Panel/SearchIndicator.qml:27
180#: qml/Panel/SearchIndicator.qml:27
181msgid "Search"
181msgid "Search"
182msgstr "جست‌وجو"
182msgstr "جست‌وجو"
183
183
184−#: qml/Dash/PageHeader.qml:260
184+#: qml/Dash/PageHeader.qml:261
185msgid "Store"
185msgid "Store"
186msgstr "فروشگاه"
186msgstr "فروشگاه"
187
187
188−#: qml/Dash/PageHeader.qml:277
188+#: qml/Dash/PageHeader.qml:278
189msgid "Settings"
189msgid "Settings"
190msgstr "تنظیمات"
190msgstr "تنظیمات"
191
191
192−#: qml/Dash/PageHeader.qml:284
192+#: qml/Dash/PageHeader.qml:285
193msgid "Remove from Favorites"
193msgid "Remove from Favorites"
194msgstr "برداشتن از برگزیده‌ها"
194msgstr "برداشتن از برگزیده‌ها"
195
195
196−#: qml/Dash/PageHeader.qml:284
196+#: qml/Dash/PageHeader.qml:285
197msgid "Add to Favorites"
197msgid "Add to Favorites"
198msgstr "افزودن به برگزیده‌ها"
198msgstr "افزودن به برگزیده‌ها"
199
199
@@ -289,49 +289,49 @@ msgstr "باز کردن قفل سیم‌کارت"
289msgid "Roaming"
289msgid "Roaming"
290msgstr "رومینگ"
290msgstr "رومینگ"
291
291
292−#: qml/Shell.qml:367
292+#: qml/Shell.qml:402
293#, qt-format
293#, qt-format
294msgid "Enter %1"
294msgid "Enter %1"
295msgstr "%1 را وارد کنید"
295msgstr "%1 را وارد کنید"
296
296
297−#: qml/Shell.qml:368 qml/Wizard/Pages/passwd-set.qml:60
297+#: qml/Shell.qml:394
298msgid "Enter passphrase"
298msgid "Enter passphrase"
299msgstr "عبارت‌عبور را وارد کنید"
299msgstr "عبارت‌عبور را وارد کنید"
300
300
301−#: qml/Shell.qml:369
301+#: qml/Shell.qml:398
302msgid "Enter passcode"
302msgid "Enter passcode"
303msgstr "رمزعبور را وارد کنید"
303msgstr "رمزعبور را وارد کنید"
304
304
305−#: qml/Shell.qml:370
305+#: qml/Shell.qml:403
306#, qt-format
306#, qt-format
307msgid "Sorry, incorrect %1"
307msgid "Sorry, incorrect %1"
308msgstr "متأسّفیم، %1 نادرست بود"
308msgstr "متأسّفیم، %1 نادرست بود"
309
309
310−#: qml/Shell.qml:371
310+#: qml/Shell.qml:395
311msgid "Sorry, incorrect passphrase"
311msgid "Sorry, incorrect passphrase"
312msgstr "متأسّفیم، عبارت‌عبور نادرست بود"
312msgstr "متأسّفیم، عبارت‌عبور نادرست بود"
313
313
314−#: qml/Shell.qml:372
314+#: qml/Shell.qml:396
315msgid "Please re-enter"
315msgid "Please re-enter"
316msgstr "لطفاً دوباره وارد کنید"
316msgstr "لطفاً دوباره وارد کنید"
317
317
318−#: qml/Shell.qml:373
318+#: qml/Shell.qml:399
319msgid "Sorry, incorrect passcode"
319msgid "Sorry, incorrect passcode"
320msgstr "متأسّفیم، رمزعبور نادرست بود"
320msgstr "متأسّفیم، رمزعبور نادرست بود"
321
321
322−#: qml/Shell.qml:467 qml/Wizard/Pages/passwd-confirm.qml:53
322+#: qml/Shell.qml:444
323msgid "Sorry, incorrect passphrase."
323msgid "Sorry, incorrect passphrase."
324msgstr "متأسّفیم، عبارت‌عبور نادرست است."
324msgstr "متأسّفیم، عبارت‌عبور نادرست است."
325
325
326−#: qml/Shell.qml:468 qml/Wizard/Pages/passwd-confirm.qml:54
326+#: qml/Shell.qml:445
327msgid "Sorry, incorrect passcode."
327msgid "Sorry, incorrect passcode."
328msgstr "متأسّفیم، رمزعبور نادرست است."
328msgstr "متأسّفیم، رمزعبور نادرست است."
329
329
330−#: qml/Shell.qml:469
330+#: qml/Shell.qml:446
331msgid "This will be your last attempt."
331msgid "This will be your last attempt."
332msgstr "این آخرین تلاش شما خواهد بود."
332msgstr "این آخرین تلاش شما خواهد بود."
333
333
334−#: qml/Shell.qml:471
334+#: qml/Shell.qml:448
335msgid ""
335msgid ""
336"If passphrase is entered incorrectly, your phone will conduct a factory "
336"If passphrase is entered incorrectly, your phone will conduct a factory "
337"reset and all personal data will be deleted."
337"reset and all personal data will be deleted."
@@ -339,7 +339,7 @@ msgstr ""
339"اگر عبارت‌عبور نادرست وارد شود، تلفن شما بازنشانی کارخانه خواهد شد و تمامی "
339"اگر عبارت‌عبور نادرست وارد شود، تلفن شما بازنشانی کارخانه خواهد شد و تمامی "
340"اطّلاعات شخصی حذف خواهند شد."
340"اطّلاعات شخصی حذف خواهند شد."
341
341
342−#: qml/Shell.qml:472
342+#: qml/Shell.qml:449
343msgid ""
343msgid ""
344"If passcode is entered incorrectly, your phone will conduct a factory reset "
344"If passcode is entered incorrectly, your phone will conduct a factory reset "
345"and all personal data will be deleted."
345"and all personal data will be deleted."
@@ -349,98 +349,100 @@ msgstr ""
349
349
350#: qml/Wizard/Page.qml:89
350#: qml/Wizard/Page.qml:89
351msgid "Back"
351msgid "Back"
352−msgstr ""
352+msgstr "بازگشت"
353
353
354#: qml/Wizard/Pages/10-welcome.qml:27
354#: qml/Wizard/Pages/10-welcome.qml:27
355msgid "Hi!"
355msgid "Hi!"
356−msgstr ""
356+msgstr "سلام!"
357
357
358#: qml/Wizard/Pages/10-welcome.qml:44
358#: qml/Wizard/Pages/10-welcome.qml:44
359msgid "Welcome to your Ubuntu phone."
359msgid "Welcome to your Ubuntu phone."
360−msgstr ""
360+msgstr "به تلفن اوبونتوی خودتان خوش آمدید."
361
361
362#: qml/Wizard/Pages/10-welcome.qml:52
362#: qml/Wizard/Pages/10-welcome.qml:52
363msgid "Let’s get started."
363msgid "Let’s get started."
364−msgstr ""
364+msgstr "بیایید شروع کینم."
365
365
366#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
366#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
367#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
367#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
368#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
368#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
369#: qml/Wizard/Pages/passwd-set.qml:90
369#: qml/Wizard/Pages/passwd-set.qml:90
370msgid "Continue"
370msgid "Continue"
371−msgstr ""
371+msgstr "ادامه"
372
372
373#: qml/Wizard/Pages/20-sim.qml:25
373#: qml/Wizard/Pages/20-sim.qml:25
374msgid "Add a SIM card and restart your device"
374msgid "Add a SIM card and restart your device"
375−msgstr ""
375+msgstr "سیم‌کارتی افزوده و دستگاهتان را شروع مجدّد کنید"
376
376
377#: qml/Wizard/Pages/20-sim.qml:55
377#: qml/Wizard/Pages/20-sim.qml:55
378msgid "Without it, you won’t be able to make calls or use text messaging."
378msgid "Without it, you won’t be able to make calls or use text messaging."
379msgstr ""
379msgstr ""
380+"بدون آن، نخواهید توانست تماس گرفته با از پیام‌رسانی متنی استفاده کنید."
380
381
381#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
382#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
382msgid "Skip"
383msgid "Skip"
383−msgstr ""
384+msgstr "پرش"
384
385
385#: qml/Wizard/Pages/30-passwd-type.qml:39
386#: qml/Wizard/Pages/30-passwd-type.qml:39
386msgid "Lock security"
387msgid "Lock security"
387−msgstr ""
388+msgstr "امنیت قفل"
388
389
389#: qml/Wizard/Pages/30-passwd-type.qml:74
390#: qml/Wizard/Pages/30-passwd-type.qml:74
390msgid "Please select how you’d like to unlock your phone."
391msgid "Please select how you’d like to unlock your phone."
391−msgstr ""
392+msgstr "لطفاً برگزینید که می‌خواهید چگونه قفل تلفنتان را باز کنید."
392
393
393#: qml/Wizard/Pages/30-passwd-type.qml:97
394#: qml/Wizard/Pages/30-passwd-type.qml:97
394msgid "Swipe"
395msgid "Swipe"
395−msgstr ""
396+msgstr "لغزش"
396
397
397#: qml/Wizard/Pages/30-passwd-type.qml:98
398#: qml/Wizard/Pages/30-passwd-type.qml:98
398msgid "No security"
399msgid "No security"
399−msgstr ""
400+msgstr "بدون امنیت"
400
401
401#: qml/Wizard/Pages/30-passwd-type.qml:100
402#: qml/Wizard/Pages/30-passwd-type.qml:100
402msgid "Passcode"
403msgid "Passcode"
403−msgstr ""
404+msgstr "رمزعبور"
404
405
405#: qml/Wizard/Pages/30-passwd-type.qml:101
406#: qml/Wizard/Pages/30-passwd-type.qml:101
406msgid "4 digits only"
407msgid "4 digits only"
407−msgstr ""
408+msgstr "فقط ۴ رقم"
408
409
409#: qml/Wizard/Pages/30-passwd-type.qml:103
410#: qml/Wizard/Pages/30-passwd-type.qml:103
410msgid "Passphrase"
411msgid "Passphrase"
411−msgstr ""
412+msgstr "عبارت‌عبور"
412
413
413#: qml/Wizard/Pages/30-passwd-type.qml:104
414#: qml/Wizard/Pages/30-passwd-type.qml:104
414msgid "Numbers and letters"
415msgid "Numbers and letters"
415−msgstr ""
416+msgstr "اعداد و حروف"
416
417
417#: qml/Wizard/Pages/40-wifi.qml:28
418#: qml/Wizard/Pages/40-wifi.qml:28
418msgid "Connect to Wi‑Fi"
419msgid "Connect to Wi‑Fi"
419−msgstr ""
420+msgstr "اتّصال به بی‌سیم"
420
421
421#: qml/Wizard/Pages/40-wifi.qml:147
422#: qml/Wizard/Pages/40-wifi.qml:147
422msgid "Available networks…"
423msgid "Available networks…"
423−msgstr ""
424+msgstr "شبکه‌های موجود…"
424
425
425#: qml/Wizard/Pages/40-wifi.qml:148
426#: qml/Wizard/Pages/40-wifi.qml:148
426msgid "No available networks."
427msgid "No available networks."
427−msgstr ""
428+msgstr "هیچ شبکه‌ای موجود نیست."
428
429
429#: qml/Wizard/Pages/50-location.qml:27
430#: qml/Wizard/Pages/50-location.qml:27
430msgid "Location"
431msgid "Location"
431−msgstr ""
432+msgstr "موقعیت"
432
433
433#: qml/Wizard/Pages/50-location.qml:62
434#: qml/Wizard/Pages/50-location.qml:62
434msgid "Let the phone detect your location:"
435msgid "Let the phone detect your location:"
435−msgstr ""
436+msgstr "اجازه به تلفن برای تشخیص موقعیّتتان:"
436
437
437#: qml/Wizard/Pages/50-location.qml:69
438#: qml/Wizard/Pages/50-location.qml:69
438msgid "Using GPS only (less accurate)"
439msgid "Using GPS only (less accurate)"
439−msgstr ""
440+msgstr "فقط با استفاده از جی‌پی‌اس (دقّت کم‌تر)"
440
441
441#: qml/Wizard/Pages/50-location.qml:86
442#: qml/Wizard/Pages/50-location.qml:86
442msgid "Using GPS, anonymized Wi-Fi and cellular network info (recommended)"
443msgid "Using GPS, anonymized Wi-Fi and cellular network info (recommended)"
443msgstr ""
444msgstr ""
445+"با استفاده از جی‌پی‌اس، بی‌سیم ناشناس و اطّلاعات شبکه‌ی سلّولی (پیشنهاد شده)"
444
446
445#. TRANSLATORS: HERE is a trademark for Nokia's location service, you probably shouldn't translate it
447#. TRANSLATORS: HERE is a trademark for Nokia's location service, you probably shouldn't translate it
446#: qml/Wizard/Pages/50-location.qml:103
448#: qml/Wizard/Pages/50-location.qml:103
@@ -448,81 +450,87 @@ msgid ""
448"By selecting this option you agree to the Nokia HERE <a href='#'>terms and "
450"By selecting this option you agree to the Nokia HERE <a href='#'>terms and "
449"conditions</a>."
451"conditions</a>."
450msgstr ""
452msgstr ""
453+"با انتخاب این گزینه، با <a href='#'>شرایط و ضوابط</a> HERE نوکیا موافقت "
454+"می‌کنید."
451
455
452#: qml/Wizard/Pages/50-location.qml:112
456#: qml/Wizard/Pages/50-location.qml:112
453msgid "Not at all"
457msgid "Not at all"
454−msgstr ""
458+msgstr "به هیچ وجه"
455
459
456#: qml/Wizard/Pages/50-location.qml:124
460#: qml/Wizard/Pages/50-location.qml:124
457msgid "You can change your mind later in <b>System Settings</b>."
461msgid "You can change your mind later in <b>System Settings</b>."
458−msgstr ""
462+msgstr "می‌توانید بعدها نظرتان را در <b>تنظیمات سامانه</b> تغییر دهید."
459
463
460#: qml/Wizard/Pages/60-reporting.qml:24
464#: qml/Wizard/Pages/60-reporting.qml:24
461msgid "Improving your experience"
465msgid "Improving your experience"
462−msgstr ""
466+msgstr "ارتقای تجربه‌ی شما"
463
467
464#: qml/Wizard/Pages/60-reporting.qml:36
468#: qml/Wizard/Pages/60-reporting.qml:36
465msgid ""
469msgid ""
466"Your phone is set up to automatically report errors to Canonical and its "
470"Your phone is set up to automatically report errors to Canonical and its "
467"partners, the makers of the operating system."
471"partners, the makers of the operating system."
468msgstr ""
472msgstr ""
473+"تلفن شما تنظیم شده تا خطاها را به صورت خودکار به سازندگان سیستم‌عامل یعنی "
474+"شرکت کنونیکال و شرکایش گزارش دهد."
469
475
470#: qml/Wizard/Pages/60-reporting.qml:43
476#: qml/Wizard/Pages/60-reporting.qml:43
471msgid ""
477msgid ""
472"This can be disabled in <b>System Settings</b> under <b>Security &amp; "
478"This can be disabled in <b>System Settings</b> under <b>Security &amp; "
473"Privacy</b>"
479"Privacy</b>"
474msgstr ""
480msgstr ""
481+"این می‌تواند در <b>تنظیمات سامانه</b> ذیل <b>امنیت و محرمانگی</b> غیرفعَال "
482+"شود"
475
483
476#: qml/Wizard/Pages/80-finished.qml:24
484#: qml/Wizard/Pages/80-finished.qml:24
477msgid "All done"
485msgid "All done"
478−msgstr ""
486+msgstr "همه‌چیز انجام شد"
479
487
480#: qml/Wizard/Pages/80-finished.qml:39
488#: qml/Wizard/Pages/80-finished.qml:39
481msgid "Nice work!"
489msgid "Nice work!"
482−msgstr ""
490+msgstr "عالی بود!"
483
491
484#: qml/Wizard/Pages/80-finished.qml:46
492#: qml/Wizard/Pages/80-finished.qml:46
485msgid "Your phone is now ready to use."
493msgid "Your phone is now ready to use."
486−msgstr ""
494+msgstr "هم‌اکنون تلفن شما آماده‌ی استفاده است."
487
495
488#: qml/Wizard/Pages/80-finished.qml:53
496#: qml/Wizard/Pages/80-finished.qml:53
489msgid "Finish"
497msgid "Finish"
490−msgstr ""
498+msgstr "پایان"
491
499
492#: qml/Wizard/Pages/here-terms.qml:27
500#: qml/Wizard/Pages/here-terms.qml:27
493msgid "Terms & Conditions"
501msgid "Terms & Conditions"
494−msgstr ""
502+msgstr "شرایط و ضوابط"
495
503
496#: qml/Wizard/Pages/passwd-confirm.qml:49
504#: qml/Wizard/Pages/passwd-confirm.qml:49
497msgid "Confirm passphrase"
505msgid "Confirm passphrase"
498−msgstr ""
506+msgstr "تأیید عبارت‌عبور"
499
507
500#: qml/Wizard/Pages/passwd-confirm.qml:50
508#: qml/Wizard/Pages/passwd-confirm.qml:50
501msgid "Confirm passcode"
509msgid "Confirm passcode"
502−msgstr ""
510+msgstr "تأیید رمزعبور"
503
511
504#: qml/Wizard/Pages/passwd-confirm.qml:53
512#: qml/Wizard/Pages/passwd-confirm.qml:53
505#: qml/Wizard/Pages/passwd-confirm.qml:54
513#: qml/Wizard/Pages/passwd-confirm.qml:54
506msgid "Please try again."
514msgid "Please try again."
507−msgstr ""
515+msgstr "لطفاً دوباره سعی کنید."
508
516
509#: qml/Wizard/Pages/passwd-set.qml:61
517#: qml/Wizard/Pages/passwd-set.qml:61
510msgid "Choose your passcode"
518msgid "Choose your passcode"
511−msgstr ""
519+msgstr "رمزعبور خود را انتخاب کنید"
512
520
513#: qml/Wizard/Pages/passwd-set.qml:68
521#: qml/Wizard/Pages/passwd-set.qml:68
514msgid "Passphrase must be 4 characters long"
522msgid "Passphrase must be 4 characters long"
515−msgstr ""
523+msgstr "عبارت‌عبور باید ۴ نویسه طول داشته باشد"
516
524
517#: qml/Wizard/StackButton.qml:39
525#: qml/Wizard/StackButton.qml:39
518#, qt-format
526#, qt-format
519msgid "〈 %1"
527msgid "〈 %1"
520−msgstr ""
528+msgstr "〈 %1"
521
529
522#: qml/Wizard/StackButton.qml:42
530#: qml/Wizard/StackButton.qml:42
523#, qt-format
531#, qt-format
524msgid "%1 〉"
532msgid "%1 〉"
525−msgstr ""
533+msgstr "%1 〉"
526
534
527#~ msgid "Type or say a command"
535#~ msgid "Type or say a command"
528#~ msgstr "دستوری را بنویسید یا بگویید"
536#~ msgstr "دستوری را بنویسید یا بگویید"
po/nl.po+98−91
@@ -8,26 +8,26 @@ 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: 2014-12-10 10:55+0100\n"
10"POT-Creation-Date: 2014-12-10 10:55+0100\n"
11−"PO-Revision-Date: 2014-11-05 08:19+0000\n"
11+"PO-Revision-Date: 2015-01-13 20:27+0000\n"
12"Last-Translator: rob <linuxned@gmail.com>\n"
12"Last-Translator: rob <linuxned@gmail.com>\n"
13"Language-Team: Dutch <nl@li.org>\n"
13"Language-Team: Dutch <nl@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"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2014-12-13 07:11+0000\n"
18+"X-Launchpad-Export-Date: 2015-01-15 06:06+0000\n"
19−"X-Generator: Launchpad (build 17286)\n"
19+"X-Generator: Launchpad (build 17303)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:130
21#: plugins/LightDM/Greeter.cpp:130
22msgid "Password: "
22msgid "Password: "
23msgstr "Wachtwoord: "
23msgstr "Wachtwoord: "
24
24
25#: plugins/Unity/Launcher/launcheritem.cpp:45
25#: plugins/Unity/Launcher/launcheritem.cpp:45
26−#: plugins/Unity/Launcher/launcheritem.cpp:100
26+#: plugins/Unity/Launcher/launcheritem.cpp:91
27msgid "Pin shortcut"
27msgid "Pin shortcut"
28msgstr "Snelkoppeling vastzetten"
28msgstr "Snelkoppeling vastzetten"
29
29
30−#: plugins/Unity/Launcher/launcheritem.cpp:100
30+#: plugins/Unity/Launcher/launcheritem.cpp:91
31msgid "Unpin shortcut"
31msgid "Unpin shortcut"
32msgstr "Snelkoppeling losmaken"
32msgstr "Snelkoppeling losmaken"
33
33
@@ -54,45 +54,45 @@ msgid_plural "Please wait %1 minutes and then try again…"
54msgstr[0] "Wacht a.u.b. %1 minuut en probeer het dan opnieuw…"
54msgstr[0] "Wacht a.u.b. %1 minuut en probeer het dan opnieuw…"
55msgstr[1] "Wacht a.u.b. %1 minuten en probeer het dan opnieuw…"
55msgstr[1] "Wacht a.u.b. %1 minuten en probeer het dan opnieuw…"
56
56
57−#: qml/Components/Dialogs.qml:70
57+#: qml/Components/Dialogs.qml:74
58msgid "Log out"
58msgid "Log out"
59msgstr "Afmelden"
59msgstr "Afmelden"
60
60
61−#: qml/Components/Dialogs.qml:71
61+#: qml/Components/Dialogs.qml:75
62msgid "Are you sure you want to log out?"
62msgid "Are you sure you want to log out?"
63msgstr "Weet u zeker dat u zich wilt afmelden?"
63msgstr "Weet u zeker dat u zich wilt afmelden?"
64
64
65−#: qml/Components/Dialogs.qml:73 qml/Components/Dialogs.qml:97
65+#: qml/Components/Dialogs.qml:77 qml/Components/Dialogs.qml:101
66−#: qml/Components/Dialogs.qml:122
66+#: qml/Components/Dialogs.qml:126
67msgid "No"
67msgid "No"
68msgstr "Nee"
68msgstr "Nee"
69
69
70−#: qml/Components/Dialogs.qml:80 qml/Components/Dialogs.qml:104
70+#: qml/Components/Dialogs.qml:84 qml/Components/Dialogs.qml:108
71−#: qml/Components/Dialogs.qml:129
71+#: qml/Components/Dialogs.qml:133
72msgid "Yes"
72msgid "Yes"
73msgstr "Ja"
73msgstr "Ja"
74
74
75−#: qml/Components/Dialogs.qml:94
75+#: qml/Components/Dialogs.qml:98
76msgid "Shut down"
76msgid "Shut down"
77msgstr "Uitschakelen"
77msgstr "Uitschakelen"
78
78
79−#: qml/Components/Dialogs.qml:95
79+#: qml/Components/Dialogs.qml:99
80msgid "Are you sure you want to shut down?"
80msgid "Are you sure you want to shut down?"
81msgstr "Weet u zeker dat u het apparaat wilt uitschakelen?"
81msgstr "Weet u zeker dat u het apparaat wilt uitschakelen?"
82
82
83−#: qml/Components/Dialogs.qml:119
83+#: qml/Components/Dialogs.qml:123
84msgid "Reboot"
84msgid "Reboot"
85msgstr "Herstarten"
85msgstr "Herstarten"
86
86
87−#: qml/Components/Dialogs.qml:120
87+#: qml/Components/Dialogs.qml:124
88msgid "Are you sure you want to reboot?"
88msgid "Are you sure you want to reboot?"
89msgstr "Weet u zeker dat u het apparaat wilt herstarten?"
89msgstr "Weet u zeker dat u het apparaat wilt herstarten?"
90
90
91−#: qml/Components/Dialogs.qml:144
91+#: qml/Components/Dialogs.qml:148
92msgid "Power"
92msgid "Power"
93msgstr "Energie"
93msgstr "Energie"
94
94
95−#: qml/Components/Dialogs.qml:145
95+#: qml/Components/Dialogs.qml:149
96msgid ""
96msgid ""
97"Are you sure you would like\n"
97"Are you sure you would like\n"
98"to power off?"
98"to power off?"
@@ -100,15 +100,15 @@ msgstr ""
100"Weet u zeker dat u het apparaat\n"
100"Weet u zeker dat u het apparaat\n"
101"wilt uitschakelen?"
101"wilt uitschakelen?"
102
102
103−#: qml/Components/Dialogs.qml:147
103+#: qml/Components/Dialogs.qml:151
104msgid "Power off"
104msgid "Power off"
105msgstr "Uitschakelen"
105msgstr "Uitschakelen"
106
106
107−#: qml/Components/Dialogs.qml:157
107+#: qml/Components/Dialogs.qml:161
108msgid "Restart"
108msgid "Restart"
109msgstr "Herstarten"
109msgstr "Herstarten"
110
110
111−#: qml/Components/Dialogs.qml:167
111+#: qml/Components/Dialogs.qml:171
112msgid "Cancel"
112msgid "Cancel"
113msgstr "Annuleren"
113msgstr "Annuleren"
114
114
@@ -116,43 +116,43 @@ msgstr "Annuleren"
116msgid "Skip intro"
116msgid "Skip intro"
117msgstr "Intro overslaan"
117msgstr "Intro overslaan"
118
118
119−#: qml/Components/EdgeDemo.qml:125
119+#: qml/Components/EdgeDemo.qml:112
120msgid "Right edge"
120msgid "Right edge"
121msgstr "Rechterrand"
121msgstr "Rechterrand"
122
122
123−#: qml/Components/EdgeDemo.qml:126
123+#: qml/Components/EdgeDemo.qml:113
124msgid "Try swiping from the right edge to unlock the phone"
124msgid "Try swiping from the right edge to unlock the phone"
125msgstr "Veeg vanuit de rechterrand om het scherm te ontgrendelen"
125msgstr "Veeg vanuit de rechterrand om het scherm te ontgrendelen"
126
126
127−#: qml/Components/EdgeDemo.qml:157
127+#: qml/Components/EdgeDemo.qml:144
128msgid "Top edge"
128msgid "Top edge"
129msgstr "Bovenrand"
129msgstr "Bovenrand"
130
130
131−#: qml/Components/EdgeDemo.qml:158
131+#: qml/Components/EdgeDemo.qml:145
132msgid "Try swiping from the top edge to access the indicators"
132msgid "Try swiping from the top edge to access the indicators"
133msgstr "Veeg vanuit de bovenrand om de indicatoren te bekijken"
133msgstr "Veeg vanuit de bovenrand om de indicatoren te bekijken"
134
134
135−#: qml/Components/EdgeDemo.qml:183
135+#: qml/Components/EdgeDemo.qml:170
136msgid "Close"
136msgid "Close"
137msgstr "Sluiten"
137msgstr "Sluiten"
138
138
139−#: qml/Components/EdgeDemo.qml:184
139+#: qml/Components/EdgeDemo.qml:171
140msgid "Swipe up again to close the settings screen"
140msgid "Swipe up again to close the settings screen"
141msgstr "Veeg nogmaals omhoog om het instellingenscherm te sluiten"
141msgstr "Veeg nogmaals omhoog om het instellingenscherm te sluiten"
142
142
143−#: qml/Components/EdgeDemo.qml:214
143+#: qml/Components/EdgeDemo.qml:201
144msgid "Left edge"
144msgid "Left edge"
145msgstr "Linkerrand"
145msgstr "Linkerrand"
146
146
147−#: qml/Components/EdgeDemo.qml:215
147+#: qml/Components/EdgeDemo.qml:202
148msgid "Swipe from the left to reveal the launcher for quick access to apps"
148msgid "Swipe from the left to reveal the launcher for quick access to apps"
149msgstr "Veeg vanaf links om de Starter te tonen voor snelle toegang tot apps"
149msgstr "Veeg vanaf links om de Starter te tonen voor snelle toegang tot apps"
150
150
151−#: qml/Components/EdgeDemo.qml:242
151+#: qml/Components/EdgeDemo.qml:229
152msgid "Well done"
152msgid "Well done"
153msgstr "Goed gedaan"
153msgstr "Goed gedaan"
154
154
155−#: qml/Components/EdgeDemo.qml:243
155+#: qml/Components/EdgeDemo.qml:230
156msgid ""
156msgid ""
157"You have now mastered the edge gestures and can start using the "
157"You have now mastered the edge gestures and can start using the "
158"phone<br><br>Tap on the screen to start"
158"phone<br><br>Tap on the screen to start"
@@ -160,44 +160,44 @@ msgstr ""
160"Nu u de bewegingen vanuit de randen onder de knie heeft, kunt u beginnen met "
160"Nu u de bewegingen vanuit de randen onder de knie heeft, kunt u beginnen met "
161"het gebruiken van de telefoon<br><br>Tik op het scherm om te beginnen"
161"het gebruiken van de telefoon<br><br>Tik op het scherm om te beginnen"
162
162
163−#: qml/Components/Lockscreen.qml:238
163+#: qml/Components/Lockscreen.qml:223
164msgid "Return to Call"
164msgid "Return to Call"
165msgstr "Teruggaan naar gesprek"
165msgstr "Teruggaan naar gesprek"
166
166
167−#: qml/Components/Lockscreen.qml:238
167+#: qml/Components/Lockscreen.qml:223
168msgid "Emergency Call"
168msgid "Emergency Call"
169msgstr "Noodoproep"
169msgstr "Noodoproep"
170
170
171−#: qml/Components/Lockscreen.qml:270
171+#: qml/Components/Lockscreen.qml:255
172msgid "OK"
172msgid "OK"
173msgstr "Ok"
173msgstr "Ok"
174
174
175−#: qml/Dash/GenericScopeView.qml:431 qml/Dash/GenericScopeView.qml:588
175+#: qml/Dash/GenericScopeView.qml:434 qml/Dash/GenericScopeView.qml:591
176msgid "See less"
176msgid "See less"
177msgstr "Minder zien"
177msgstr "Minder zien"
178
178
179−#: qml/Dash/GenericScopeView.qml:431
179+#: qml/Dash/GenericScopeView.qml:434
180msgid "See all"
180msgid "See all"
181msgstr "Alles zien"
181msgstr "Alles zien"
182
182
183−#: qml/Dash/GenericScopeView.qml:493 qml/Dash/PageHeader.qml:267
183+#: qml/Dash/GenericScopeView.qml:496 qml/Dash/PageHeader.qml:268
184#: qml/Panel/SearchIndicator.qml:27
184#: qml/Panel/SearchIndicator.qml:27
185msgid "Search"
185msgid "Search"
186msgstr "Zoeken"
186msgstr "Zoeken"
187
187
188−#: qml/Dash/PageHeader.qml:260
188+#: qml/Dash/PageHeader.qml:261
189msgid "Store"
189msgid "Store"
190msgstr "Winkel"
190msgstr "Winkel"
191
191
192−#: qml/Dash/PageHeader.qml:277
192+#: qml/Dash/PageHeader.qml:278
193msgid "Settings"
193msgid "Settings"
194msgstr "Instellingen"
194msgstr "Instellingen"
195
195
196−#: qml/Dash/PageHeader.qml:284
196+#: qml/Dash/PageHeader.qml:285
197msgid "Remove from Favorites"
197msgid "Remove from Favorites"
198msgstr "Verwijderen uit favorieten"
198msgstr "Verwijderen uit favorieten"
199
199
200−#: qml/Dash/PageHeader.qml:284
200+#: qml/Dash/PageHeader.qml:285
201msgid "Add to Favorites"
201msgid "Add to Favorites"
202msgstr "Toevoegen aan favorieten"
202msgstr "Toevoegen aan favorieten"
203
203
@@ -231,7 +231,7 @@ msgstr "Loslaten om te verversen…"
231
231
232#: qml/Dash/ScopesList.qml:63
232#: qml/Dash/ScopesList.qml:63
233msgid "Manage"
233msgid "Manage"
234−msgstr ""
234+msgstr "Beheren"
235
235
236#: qml/Dash/ScopesList.qml:107
236#: qml/Dash/ScopesList.qml:107
237msgid "Home"
237msgid "Home"
@@ -239,7 +239,7 @@ msgstr ""
239
239
240#: qml/Dash/ScopesList.qml:108
240#: qml/Dash/ScopesList.qml:108
241msgid "Also installed"
241msgid "Also installed"
242−msgstr ""
242+msgstr "Ook geïnstalleerd"
243
243
244#: qml/Greeter/Greeter.qml:174
244#: qml/Greeter/Greeter.qml:174
245msgid "Unlock"
245msgid "Unlock"
@@ -293,49 +293,49 @@ msgstr "Simkaart deblokkeren"
293msgid "Roaming"
293msgid "Roaming"
294msgstr "Roaming"
294msgstr "Roaming"
295
295
296−#: qml/Shell.qml:367
296+#: qml/Shell.qml:402
297#, qt-format
297#, qt-format
298msgid "Enter %1"
298msgid "Enter %1"
299msgstr "Voer %1 in"
299msgstr "Voer %1 in"
300
300
301−#: qml/Shell.qml:368 qml/Wizard/Pages/passwd-set.qml:60
301+#: qml/Shell.qml:394
302msgid "Enter passphrase"
302msgid "Enter passphrase"
303msgstr "Voer wachtwoordzin in"
303msgstr "Voer wachtwoordzin in"
304
304
305−#: qml/Shell.qml:369
305+#: qml/Shell.qml:398
306msgid "Enter passcode"
306msgid "Enter passcode"
307msgstr "Voer toegangscode in"
307msgstr "Voer toegangscode in"
308
308
309−#: qml/Shell.qml:370
309+#: qml/Shell.qml:403
310#, qt-format
310#, qt-format
311msgid "Sorry, incorrect %1"
311msgid "Sorry, incorrect %1"
312msgstr "Sorry, onjuiste %1"
312msgstr "Sorry, onjuiste %1"
313
313
314−#: qml/Shell.qml:371
314+#: qml/Shell.qml:395
315msgid "Sorry, incorrect passphrase"
315msgid "Sorry, incorrect passphrase"
316msgstr "Sorry, onjuiste wachtwoordzin"
316msgstr "Sorry, onjuiste wachtwoordzin"
317
317
318−#: qml/Shell.qml:372
318+#: qml/Shell.qml:396
319msgid "Please re-enter"
319msgid "Please re-enter"
320msgstr "Herhaal deze a.u.b."
320msgstr "Herhaal deze a.u.b."
321
321
322−#: qml/Shell.qml:373
322+#: qml/Shell.qml:399
323msgid "Sorry, incorrect passcode"
323msgid "Sorry, incorrect passcode"
324msgstr "Sorry, onjuiste toegangscode"
324msgstr "Sorry, onjuiste toegangscode"
325
325
326−#: qml/Shell.qml:467 qml/Wizard/Pages/passwd-confirm.qml:53
326+#: qml/Shell.qml:444
327msgid "Sorry, incorrect passphrase."
327msgid "Sorry, incorrect passphrase."
328msgstr "Sorry, onjuiste wachtwoordzin."
328msgstr "Sorry, onjuiste wachtwoordzin."
329
329
330−#: qml/Shell.qml:468 qml/Wizard/Pages/passwd-confirm.qml:54
330+#: qml/Shell.qml:445
331msgid "Sorry, incorrect passcode."
331msgid "Sorry, incorrect passcode."
332msgstr "Sorry, onjuiste toegangscode."
332msgstr "Sorry, onjuiste toegangscode."
333
333
334−#: qml/Shell.qml:469
334+#: qml/Shell.qml:446
335msgid "This will be your last attempt."
335msgid "This will be your last attempt."
336msgstr "Dit zal uw laatste poging worden."
336msgstr "Dit zal uw laatste poging worden."
337
337
338−#: qml/Shell.qml:471
338+#: qml/Shell.qml:448
339msgid ""
339msgid ""
340"If passphrase is entered incorrectly, your phone will conduct a factory "
340"If passphrase is entered incorrectly, your phone will conduct a factory "
341"reset and all personal data will be deleted."
341"reset and all personal data will be deleted."
@@ -343,7 +343,7 @@ msgstr ""
343"Wanneer de wachtwoordzin nu opnieuw onjuist wordt ingevoerd, zal uw telefoon "
343"Wanneer de wachtwoordzin nu opnieuw onjuist wordt ingevoerd, zal uw telefoon "
344"teruggaan naar de fabrieksinstellingen en zal al uw eigen data verloren gaan."
344"teruggaan naar de fabrieksinstellingen en zal al uw eigen data verloren gaan."
345
345
346−#: qml/Shell.qml:472
346+#: qml/Shell.qml:449
347msgid ""
347msgid ""
348"If passcode is entered incorrectly, your phone will conduct a factory reset "
348"If passcode is entered incorrectly, your phone will conduct a factory reset "
349"and all personal data will be deleted."
349"and all personal data will be deleted."
@@ -353,98 +353,99 @@ msgstr ""
353
353
354#: qml/Wizard/Page.qml:89
354#: qml/Wizard/Page.qml:89
355msgid "Back"
355msgid "Back"
356−msgstr ""
356+msgstr "Terug"
357
357
358#: qml/Wizard/Pages/10-welcome.qml:27
358#: qml/Wizard/Pages/10-welcome.qml:27
359msgid "Hi!"
359msgid "Hi!"
360−msgstr ""
360+msgstr "Hallo!"
361
361
362#: qml/Wizard/Pages/10-welcome.qml:44
362#: qml/Wizard/Pages/10-welcome.qml:44
363msgid "Welcome to your Ubuntu phone."
363msgid "Welcome to your Ubuntu phone."
364−msgstr ""
364+msgstr "Welkom bij uw Ubuntutelefoon."
365
365
366#: qml/Wizard/Pages/10-welcome.qml:52
366#: qml/Wizard/Pages/10-welcome.qml:52
367msgid "Let’s get started."
367msgid "Let’s get started."
368−msgstr ""
368+msgstr "Laten we beginnen."
369
369
370#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
370#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
371#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
371#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
372#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
372#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
373#: qml/Wizard/Pages/passwd-set.qml:90
373#: qml/Wizard/Pages/passwd-set.qml:90
374msgid "Continue"
374msgid "Continue"
375−msgstr ""
375+msgstr "Doorgaan"
376
376
377#: qml/Wizard/Pages/20-sim.qml:25
377#: qml/Wizard/Pages/20-sim.qml:25
378msgid "Add a SIM card and restart your device"
378msgid "Add a SIM card and restart your device"
379−msgstr ""
379+msgstr "Voeg een simkaart toe en herstart uw apparaat"
380
380
381#: qml/Wizard/Pages/20-sim.qml:55
381#: qml/Wizard/Pages/20-sim.qml:55
382msgid "Without it, you won’t be able to make calls or use text messaging."
382msgid "Without it, you won’t be able to make calls or use text messaging."
383−msgstr ""
383+msgstr "Indien u dit niet doet, kunt u niet telefoneren of sms´en."
384
384
385#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
385#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
386msgid "Skip"
386msgid "Skip"
387−msgstr ""
387+msgstr "Overslaan"
388
388
389#: qml/Wizard/Pages/30-passwd-type.qml:39
389#: qml/Wizard/Pages/30-passwd-type.qml:39
390msgid "Lock security"
390msgid "Lock security"
391−msgstr ""
391+msgstr "Vergrendelbeveiliging"
392
392
393#: qml/Wizard/Pages/30-passwd-type.qml:74
393#: qml/Wizard/Pages/30-passwd-type.qml:74
394msgid "Please select how you’d like to unlock your phone."
394msgid "Please select how you’d like to unlock your phone."
395−msgstr ""
395+msgstr "Selecteer a.u.b. hoe u uw telefoon wilt ontgrendelen."
396
396
397#: qml/Wizard/Pages/30-passwd-type.qml:97
397#: qml/Wizard/Pages/30-passwd-type.qml:97
398msgid "Swipe"
398msgid "Swipe"
399−msgstr ""
399+msgstr "Vegen"
400
400
401#: qml/Wizard/Pages/30-passwd-type.qml:98
401#: qml/Wizard/Pages/30-passwd-type.qml:98
402msgid "No security"
402msgid "No security"
403−msgstr ""
403+msgstr "Geen beveiliging"
404
404
405#: qml/Wizard/Pages/30-passwd-type.qml:100
405#: qml/Wizard/Pages/30-passwd-type.qml:100
406msgid "Passcode"
406msgid "Passcode"
407−msgstr ""
407+msgstr "Toegangscode"
408
408
409#: qml/Wizard/Pages/30-passwd-type.qml:101
409#: qml/Wizard/Pages/30-passwd-type.qml:101
410msgid "4 digits only"
410msgid "4 digits only"
411−msgstr ""
411+msgstr "Uitsluitend 4 cijfers"
412
412
413#: qml/Wizard/Pages/30-passwd-type.qml:103
413#: qml/Wizard/Pages/30-passwd-type.qml:103
414msgid "Passphrase"
414msgid "Passphrase"
415−msgstr ""
415+msgstr "Wachtwoordzin"
416
416
417#: qml/Wizard/Pages/30-passwd-type.qml:104
417#: qml/Wizard/Pages/30-passwd-type.qml:104
418msgid "Numbers and letters"
418msgid "Numbers and letters"
419−msgstr ""
419+msgstr "Cijfers en letters"
420
420
421#: qml/Wizard/Pages/40-wifi.qml:28
421#: qml/Wizard/Pages/40-wifi.qml:28
422msgid "Connect to Wi‑Fi"
422msgid "Connect to Wi‑Fi"
423−msgstr ""
423+msgstr "Verbinden met Wifi"
424
424
425#: qml/Wizard/Pages/40-wifi.qml:147
425#: qml/Wizard/Pages/40-wifi.qml:147
426msgid "Available networks…"
426msgid "Available networks…"
427−msgstr ""
427+msgstr "Beschikbare netwerken…"
428
428
429#: qml/Wizard/Pages/40-wifi.qml:148
429#: qml/Wizard/Pages/40-wifi.qml:148
430msgid "No available networks."
430msgid "No available networks."
431−msgstr ""
431+msgstr "Geen netwerken beschikbaar."
432
432
433#: qml/Wizard/Pages/50-location.qml:27
433#: qml/Wizard/Pages/50-location.qml:27
434msgid "Location"
434msgid "Location"
435−msgstr ""
435+msgstr "Locatie"
436
436
437#: qml/Wizard/Pages/50-location.qml:62
437#: qml/Wizard/Pages/50-location.qml:62
438msgid "Let the phone detect your location:"
438msgid "Let the phone detect your location:"
439−msgstr ""
439+msgstr "Laat de telefoon uw locatie detecteren:"
440
440
441#: qml/Wizard/Pages/50-location.qml:69
441#: qml/Wizard/Pages/50-location.qml:69
442msgid "Using GPS only (less accurate)"
442msgid "Using GPS only (less accurate)"
443−msgstr ""
443+msgstr "Alleen GPS gebruiken (minder nauwkeurig)"
444
444
445#: qml/Wizard/Pages/50-location.qml:86
445#: qml/Wizard/Pages/50-location.qml:86
446msgid "Using GPS, anonymized Wi-Fi and cellular network info (recommended)"
446msgid "Using GPS, anonymized Wi-Fi and cellular network info (recommended)"
447msgstr ""
447msgstr ""
448+"Met behulp van GPS, geanonimiseerde Wi-Fi en mobiele netwerkinfo (aanbevolen)"
448
449
449#. TRANSLATORS: HERE is a trademark for Nokia's location service, you probably shouldn't translate it
450#. TRANSLATORS: HERE is a trademark for Nokia's location service, you probably shouldn't translate it
450#: qml/Wizard/Pages/50-location.qml:103
451#: qml/Wizard/Pages/50-location.qml:103
@@ -452,81 +453,87 @@ msgid ""
452"By selecting this option you agree to the Nokia HERE <a href='#'>terms and "
453"By selecting this option you agree to the Nokia HERE <a href='#'>terms and "
453"conditions</a>."
454"conditions</a>."
454msgstr ""
455msgstr ""
456+"Door deze optie te selecteren gaat u akkoord met de Nokia HERE <a "
457+"href='#'>Algemene Voorwaarden</a>."
455
458
456#: qml/Wizard/Pages/50-location.qml:112
459#: qml/Wizard/Pages/50-location.qml:112
457msgid "Not at all"
460msgid "Not at all"
458−msgstr ""
461+msgstr "Helemaal niet"
459
462
460#: qml/Wizard/Pages/50-location.qml:124
463#: qml/Wizard/Pages/50-location.qml:124
461msgid "You can change your mind later in <b>System Settings</b>."
464msgid "You can change your mind later in <b>System Settings</b>."
462−msgstr ""
465+msgstr "U kunt later van gedachten veranderen in <b>Systeeminstellingen</b>."
463
466
464#: qml/Wizard/Pages/60-reporting.qml:24
467#: qml/Wizard/Pages/60-reporting.qml:24
465msgid "Improving your experience"
468msgid "Improving your experience"
466−msgstr ""
469+msgstr "Uw ervaring verbeteren"
467
470
468#: qml/Wizard/Pages/60-reporting.qml:36
471#: qml/Wizard/Pages/60-reporting.qml:36
469msgid ""
472msgid ""
470"Your phone is set up to automatically report errors to Canonical and its "
473"Your phone is set up to automatically report errors to Canonical and its "
471"partners, the makers of the operating system."
474"partners, the makers of the operating system."
472msgstr ""
475msgstr ""
476+"Uw telefoon is ingesteld om fouten automatisch te rapporteren aan Canonical "
477+"en partners, de makers van het besturingssysteem."
473
478
474#: qml/Wizard/Pages/60-reporting.qml:43
479#: qml/Wizard/Pages/60-reporting.qml:43
475msgid ""
480msgid ""
476"This can be disabled in <b>System Settings</b> under <b>Security &amp; "
481"This can be disabled in <b>System Settings</b> under <b>Security &amp; "
477"Privacy</b>"
482"Privacy</b>"
478msgstr ""
483msgstr ""
484+"Dit kan uitgeschakeld worden bij de <b>Systeeminstellingen</b> onder "
485+"<b>Beveiliging &amp; Privacy</b>"
479
486
480#: qml/Wizard/Pages/80-finished.qml:24
487#: qml/Wizard/Pages/80-finished.qml:24
481msgid "All done"
488msgid "All done"
482−msgstr ""
489+msgstr "Alles klaar"
483
490
484#: qml/Wizard/Pages/80-finished.qml:39
491#: qml/Wizard/Pages/80-finished.qml:39
485msgid "Nice work!"
492msgid "Nice work!"
486−msgstr ""
493+msgstr "Mooi werk!"
487
494
488#: qml/Wizard/Pages/80-finished.qml:46
495#: qml/Wizard/Pages/80-finished.qml:46
489msgid "Your phone is now ready to use."
496msgid "Your phone is now ready to use."
490−msgstr ""
497+msgstr "Uw telefoon is nu klaar voor gebruik."
491
498
492#: qml/Wizard/Pages/80-finished.qml:53
499#: qml/Wizard/Pages/80-finished.qml:53
493msgid "Finish"
500msgid "Finish"
494−msgstr ""
501+msgstr "Voltooien"
495
502
496#: qml/Wizard/Pages/here-terms.qml:27
503#: qml/Wizard/Pages/here-terms.qml:27
497msgid "Terms & Conditions"
504msgid "Terms & Conditions"
498−msgstr ""
505+msgstr "Algemene voorwaarden"
499
506
500#: qml/Wizard/Pages/passwd-confirm.qml:49
507#: qml/Wizard/Pages/passwd-confirm.qml:49
501msgid "Confirm passphrase"
508msgid "Confirm passphrase"
502−msgstr ""
509+msgstr "Wachtwoordzin bevestigen"
503
510
504#: qml/Wizard/Pages/passwd-confirm.qml:50
511#: qml/Wizard/Pages/passwd-confirm.qml:50
505msgid "Confirm passcode"
512msgid "Confirm passcode"
506−msgstr ""
513+msgstr "Toegangscode bevestigen"
507
514
508#: qml/Wizard/Pages/passwd-confirm.qml:53
515#: qml/Wizard/Pages/passwd-confirm.qml:53
509#: qml/Wizard/Pages/passwd-confirm.qml:54
516#: qml/Wizard/Pages/passwd-confirm.qml:54
510msgid "Please try again."
517msgid "Please try again."
511−msgstr ""
518+msgstr "Probeer het opnieuw."
512
519
513#: qml/Wizard/Pages/passwd-set.qml:61
520#: qml/Wizard/Pages/passwd-set.qml:61
514msgid "Choose your passcode"
521msgid "Choose your passcode"
515−msgstr ""
522+msgstr "Kies uw toegangscode"
516
523
517#: qml/Wizard/Pages/passwd-set.qml:68
524#: qml/Wizard/Pages/passwd-set.qml:68
518msgid "Passphrase must be 4 characters long"
525msgid "Passphrase must be 4 characters long"
519−msgstr ""
526+msgstr "De wachtwoordzin moet 4 tekens lang zijn"
520
527
521#: qml/Wizard/StackButton.qml:39
528#: qml/Wizard/StackButton.qml:39
522#, qt-format
529#, qt-format
523msgid "〈 %1"
530msgid "〈 %1"
524−msgstr ""
531+msgstr "〈 %1"
525
532
526#: qml/Wizard/StackButton.qml:42
533#: qml/Wizard/StackButton.qml:42
527#, qt-format
534#, qt-format
528msgid "%1 〉"
535msgid "%1 〉"
529−msgstr ""
536+msgstr "%1 〉"
530
537
531#~ msgid "Confirm"
538#~ msgid "Confirm"
532#~ msgstr "Bevestigen"
539#~ msgstr "Bevestigen"
qml/Dash/Dash.qml+2−2
@@ -304,8 +304,8 @@ Showable {
304 Image {
304 Image {
305 source: "graphics/overview_hint.png"
305 source: "graphics/overview_hint.png"
306 anchors.horizontalCenter: parent.horizontalCenter
306 anchors.horizontalCenter: parent.horizontalCenter
307− opacity: (scopeItem.scope ? scopeItem.pageHeaderTotallyVisible : scopes.count == 0 || dashContent.pageHeaderTotallyVisible) &&
307+ opacity: !scopeItem.scope && (scopes.count == 0 || dashContent.pageHeaderTotallyVisible) &&
308− (overviewDragHandle.enabled || bottomEdgeController.progress != 0) ? 1 : 0
308+ (overviewDragHandle.enabled || overviewDragHandle.status.progress != 0) ? 1 : 0
309 Behavior on opacity {
309 Behavior on opacity {
310 enabled: bottomEdgeController.progress == 0
310 enabled: bottomEdgeController.progress == 0
311 UbuntuNumberAnimation {}
311 UbuntuNumberAnimation {}
qml/Dash/GenericScopeView.qml+30−2
@@ -41,6 +41,7 @@ FocusScope {
41 property bool visibleToParent: false
41 property bool visibleToParent: false
42 property alias pageHeaderTotallyVisible: categoryView.pageHeaderTotallyVisible
42 property alias pageHeaderTotallyVisible: categoryView.pageHeaderTotallyVisible
43 property var holdingList: null
43 property var holdingList: null
44+ property bool wasCurrentOnMoveStart: false
44
45
45 property var scopeStyle: ScopeStyle {
46 property var scopeStyle: ScopeStyle {
46 style: scope ? scope.customizations : {}
47 style: scope ? scope.customizations : {}
@@ -116,6 +117,9 @@ FocusScope {
116 }
117 }
117
118
118 onIsCurrentChanged: {
119 onIsCurrentChanged: {
120+ if (!holdingList || !holdingList.moving) {
121+ wasCurrentOnMoveStart = scopeView.isCurrent;
122+ }
119 if (pageHeaderLoader.item && showPageHeader) {
123 if (pageHeaderLoader.item && showPageHeader) {
120 pageHeaderLoader.item.resetSearch();
124 pageHeaderLoader.item.resetSearch();
121 }
125 }
@@ -142,6 +146,15 @@ FocusScope {
142 onHideDash: subPageLoader.closeSubPage()
146 onHideDash: subPageLoader.closeSubPage()
143 }
147 }
144
148
149+ Connections {
150+ target: holdingList
151+ onMovingChanged: {
152+ if (!moving) {
153+ wasCurrentOnMoveStart = scopeView.isCurrent;
154+ }
155+ }
156+ }
157+
145 Rectangle {
158 Rectangle {
146 anchors.fill: parent
159 anchors.fill: parent
147 color: scopeView.scopeStyle ? scopeView.scopeStyle.background : "transparent"
160 color: scopeView.scopeStyle ? scopeView.scopeStyle.background : "transparent"
@@ -367,7 +380,11 @@ FocusScope {
367
380
368 function updateRanges() {
381 function updateRanges() {
369 // Don't want to create stress by requesting more items during scope
382 // Don't want to create stress by requesting more items during scope
370− // changes so unless you're not part of the visible scopes just return
383+ // changes so unless you're not part of the visible scopes just return.
384+ // For the visible scopes we need to do some work, the previously non visible
385+ // scope needs to adjust its ranges so that we define the new visible range,
386+ // that still means no creation/destruction of delegates, it's just about changing
387+ // the culling of the items so they are actually visible
371 if (holdingList && holdingList.moving && !scopeView.visibleToParent) {
388 if (holdingList && holdingList.moving && !scopeView.visibleToParent) {
372 return;
389 return;
373 }
390 }
@@ -412,7 +429,18 @@ FocusScope {
412 if (scopeView.isCurrent || scopeView.visibleToParent) {
429 if (scopeView.isCurrent || scopeView.visibleToParent) {
413 item.displayMarginBeginning = displayMarginBeginning;
430 item.displayMarginBeginning = displayMarginBeginning;
414 item.displayMarginEnd = displayMarginEnd;
431 item.displayMarginEnd = displayMarginEnd;
432+ if (holdingList && holdingList.moving) {
433+ // If we are moving we need to reset the cache buffer of the
434+ // view that was not visible (i.e. !wasCurrentOnMoveStart) to 0 since
435+ // otherwise the cache buffer we had set to preload the items of the
436+ // visible range will trigger some item creations and we want move to
437+ // be as smooth as possible meaning no need creations
438+ if (!wasCurrentOnMoveStart) {
439+ item.cacheBuffer = 0;
440+ }
441+ } else {
415− item.cacheBuffer = scopeView.isCurrent ? categoryView.height * 1.5 : 0;
442+ item.cacheBuffer = categoryView.height * 1.5;
443+ }
416 } else {
444 } else {
417 var visibleRange = baseItem.height + displayMarginEnd + displayMarginBeginning;
445 var visibleRange = baseItem.height + displayMarginEnd + displayMarginBeginning;
418 if (visibleRange < 0) {
446 if (visibleRange < 0) {
src/libunity8-private/abstractdbusservicemonitor.cpp+21−8
@@ -32,19 +32,20 @@ AbstractDBusServiceMonitor::AbstractDBusServiceMonitor(const QString &service, c
32 , m_service(service)
32 , m_service(service)
33 , m_path(path)
33 , m_path(path)
34 , m_interface(interface)
34 , m_interface(interface)
35+ , m_bus(bus)
35 , m_watcher(new QDBusServiceWatcher(service,
36 , m_watcher(new QDBusServiceWatcher(service,
36 (bus == SystemBus) ? QDBusConnection::systemBus()
37 (bus == SystemBus) ? QDBusConnection::systemBus()
37 : QDBusConnection::sessionBus()))
38 : QDBusConnection::sessionBus()))
38 , m_dbusInterface(nullptr)
39 , m_dbusInterface(nullptr)
39{
40{
40− connect(m_watcher, &QDBusServiceWatcher::serviceRegistered, this, &AbstractDBusServiceMonitor::createInterface);
41+ connect(m_watcher, &QDBusServiceWatcher::serviceRegistered, this, &AbstractDBusServiceMonitor::onServiceRegistered);
41− connect(m_watcher, &QDBusServiceWatcher::serviceUnregistered, this, &AbstractDBusServiceMonitor::destroyInterface);
42+ connect(m_watcher, &QDBusServiceWatcher::serviceUnregistered, this, &AbstractDBusServiceMonitor::onServiceUnregistered);
42
43
43 // Connect to the service if it's up already
44 // Connect to the service if it's up already
44 QDBusConnectionInterface* sessionBus = QDBusConnection::sessionBus().interface();
45 QDBusConnectionInterface* sessionBus = QDBusConnection::sessionBus().interface();
45 QDBusReply<bool> reply = sessionBus->isServiceRegistered(m_service);
46 QDBusReply<bool> reply = sessionBus->isServiceRegistered(m_service);
46 if (reply.isValid() && reply.value()) {
47 if (reply.isValid() && reply.value()) {
47− createInterface(m_service);
48+ onServiceRegistered(m_service);
48 }
49 }
49}
50}
50
51
@@ -54,19 +55,31 @@ AbstractDBusServiceMonitor::~AbstractDBusServiceMonitor()
54 delete m_dbusInterface;
55 delete m_dbusInterface;
55}
56}
56
57
57−void AbstractDBusServiceMonitor::createInterface(const QString &)
58+void AbstractDBusServiceMonitor::onServiceRegistered(const QString &)
58{
59{
59 if (m_dbusInterface != nullptr) {
60 if (m_dbusInterface != nullptr) {
60 delete m_dbusInterface;
61 delete m_dbusInterface;
61 m_dbusInterface = nullptr;
62 m_dbusInterface = nullptr;
62 }
63 }
63
64
64− m_dbusInterface = new QDBusInterface(m_service, m_path, m_interface,
65+ m_dbusInterface = createInterface(m_service, m_path, m_interface,
66+ (m_bus == SystemBus) ? QDBusConnection::systemBus()
65− QDBusConnection::sessionBus());
67+ : QDBusConnection::sessionBus());
66 Q_EMIT serviceAvailableChanged(true);
68 Q_EMIT serviceAvailableChanged(true);
67}
69}
68
70
71+/*
72+ * Default implementation creates a QDBusInterface. This performs blocking introspection of the
73+ * service at initialization, which may be undesirable if the service is slow/blocked.
74+ */
75+QDBusAbstractInterface*
76+AbstractDBusServiceMonitor::createInterface(const QString &service, const QString &path,
77+ const QString &interface, const QDBusConnection &connection)
78+{
79+ return new QDBusInterface(service, path, interface, connection);
80+}
81+
69−void AbstractDBusServiceMonitor::destroyInterface(const QString &)
82+void AbstractDBusServiceMonitor::onServiceUnregistered(const QString &)
70{
83{
71 if (m_dbusInterface != nullptr) {
84 if (m_dbusInterface != nullptr) {
72 delete m_dbusInterface;
85 delete m_dbusInterface;
@@ -76,7 +89,7 @@ void AbstractDBusServiceMonitor::destroyInterface(const QString &)
76 Q_EMIT serviceAvailableChanged(false);
89 Q_EMIT serviceAvailableChanged(false);
77}
90}
78
91
79−QDBusInterface* AbstractDBusServiceMonitor::dbusInterface() const
92+QDBusAbstractInterface* AbstractDBusServiceMonitor::dbusInterface() const
80{
93{
81 return m_dbusInterface;
94 return m_dbusInterface;
82}
95}
src/libunity8-private/abstractdbusservicemonitor.h+9−5
@@ -24,7 +24,7 @@
24#include <QString>
24#include <QString>
25#include <QDBusConnection>
25#include <QDBusConnection>
26
26
27−class QDBusInterface;
27+class QDBusAbstractInterface;
28class QDBusServiceWatcher;
28class QDBusServiceWatcher;
29
29
30class Q_DECL_EXPORT AbstractDBusServiceMonitor : public QObject
30class Q_DECL_EXPORT AbstractDBusServiceMonitor : public QObject
@@ -44,7 +44,7 @@ public:
44 QObject *parent = 0);
44 QObject *parent = 0);
45 ~AbstractDBusServiceMonitor();
45 ~AbstractDBusServiceMonitor();
46
46
47− QDBusInterface* dbusInterface() const;
47+ QDBusAbstractInterface* dbusInterface() const;
48
48
49 bool serviceAvailable() const;
49 bool serviceAvailable() const;
50
50
@@ -52,15 +52,19 @@ Q_SIGNALS:
52 void serviceAvailableChanged(bool available);
52 void serviceAvailableChanged(bool available);
53
53
54private Q_SLOTS:
54private Q_SLOTS:
55− void createInterface(const QString &service);
55+ void onServiceRegistered(const QString &service);
56− void destroyInterface(const QString &service);
56+ void onServiceUnregistered(const QString &service);
57
57
58protected:
58protected:
59+ virtual QDBusAbstractInterface* createInterface(const QString &service, const QString &path,
60+ const QString &interface, const QDBusConnection &connection);
61+
59 const QString m_service;
62 const QString m_service;
60 const QString m_path;
63 const QString m_path;
61 const QString m_interface;
64 const QString m_interface;
65+ const Bus m_bus;
62 QDBusServiceWatcher* m_watcher;
66 QDBusServiceWatcher* m_watcher;
63− QDBusInterface* m_dbusInterface;
67+ QDBusAbstractInterface* m_dbusInterface;
64};
68};
65
69
66#endif // ABSTRACTDBUSSERVICEMONITOR_H
70#endif // ABSTRACTDBUSSERVICEMONITOR_H
tests/autopilot/unity8/shell/tests/test_edges_demo.py+1−1
@@ -31,7 +31,7 @@ from unity8.shell.emulators import edges_demo # NOQA
31class EdgesDemoTestCase(tests.UnityTestCase):
31class EdgesDemoTestCase(tests.UnityTestCase):
32
32
33 def setUp(self):
33 def setUp(self):
34− super().setUp()
34+ super(EdgesDemoTestCase, self).setUp()
35 self._qml_mock_enabled = False
35 self._qml_mock_enabled = False
36 self._data_dirs_mock_enabled = False
36 self._data_dirs_mock_enabled = False
37 self._lightdm_mock_type = False
37 self._lightdm_mock_type = False
tests/mocks/LightDM/demo/CMakeLists.txt+1
@@ -28,6 +28,7 @@ target_link_libraries(MockLightDM-demo-shared
28qt5_use_modules(MockLightDM-demo Concurrent Gui)
28qt5_use_modules(MockLightDM-demo Concurrent Gui)
29qt5_use_modules(MockLightDM-demo-shared Concurrent Gui)
29qt5_use_modules(MockLightDM-demo-shared Concurrent Gui)
30
30
31+set_target_properties(MockLightDM-demo PROPERTIES COMPILE_FLAGS -fPIC)
31set_target_properties(MockLightDM-demo-shared PROPERTIES
32set_target_properties(MockLightDM-demo-shared PROPERTIES
32 OUTPUT_NAME lightdm-qt5-2)
33 OUTPUT_NAME lightdm-qt5-2)
33
34
tests/qmltests/Dash/tst_Card.qml+2−2
@@ -61,7 +61,7 @@ Rectangle {
61 },
61 },
62 {
62 {
63 "name": "Art, header, summary - horizontal",
63 "name": "Art, header, summary - horizontal",
64− "layout": { "template": { "card-layout": "horizontal" },
64+ "layout": { "template": { "card-layout": "horizontal", "card-background": { "type": "gradient", "elements": ["grey", "white"] } },
65 "components": JSON.parse(Helpers.fullMapping) }
65 "components": JSON.parse(Helpers.fullMapping) }
66 },
66 },
67 {
67 {
@@ -407,7 +407,7 @@ Rectangle {
407 return [
407 return [
408 { tag: "Art and summary", visible: true, color: "#ffffff", index: 0 },
408 { tag: "Art and summary", visible: true, color: "#ffffff", index: 0 },
409 { tag: "No Summary", visible: false, index: 6 },
409 { tag: "No Summary", visible: false, index: 6 },
410− { tag: "Horizontal", visible: false, index: 5 },
410+ { tag: "Horizontal", visible: true, color: "#808080", index: 5 },
411 { tag: "Grey background", visible: true, color: "#808080", index: 10 },
411 { tag: "Grey background", visible: true, color: "#808080", index: 10 },
412 { tag: "Overriden Gradient background", visible: true, color: "#808080", gradientColor: "#ffffff",
412 { tag: "Overriden Gradient background", visible: true, color: "#808080", gradientColor: "#ffffff",
413 background: {type: "color", elements: ["grey", "white"]}, index: 10 },
413 background: {type: "color", elements: ["grey", "white"]}, index: 10 },
tests/qmltests/Dash/tst_DashContent.qml+57
@@ -537,5 +537,62 @@ Item {
537
537
538 compare(categoryListView.pageHeader.item.searchHint, "Search People");
538 compare(categoryListView.pageHeader.item.searchHint, "Search People");
539 }
539 }
540+
541+ function compareArrays(a, b) {
542+ if (a.length != b.length) return false;
543+ for (var i in a) {
544+ if (a[i] != b[i]) return false;
545+ }
546+ return true;
547+ }
548+
549+ function getSettledButtons() {
550+ var buttons = findChildsByType(dashContent, "AbstractButton");
551+ wait(2500);
552+ var aux = findChildsByType(dashContent, "AbstractButton");
553+ while (!compareArrays(aux, buttons)) {
554+ buttons = aux;
555+ wait(2500);
556+ aux = findChildsByType(dashContent, "AbstractButton");
557+ }
558+ return buttons;
559+ }
560+
561+ function test_noDelegateCreationDestructionOnMove() {
562+ // Our cards are of type AbstractButton as defined in CardCreator.js
563+ // This gives also other things that are not cards but for our purpose it
564+ // does not matter
565+
566+ // Wait for the buttons to settle
567+ var buttons = getSettledButtons();
568+
569+ // Move the scopes so that the item on the right is the current one
570+ // without releasing the button
571+ mouseFlick(dashContent, dashContent.width - units.gu(1), units.gu(1), units.gu(1), units.gu(1), true, false);
572+
573+ // Make sure we have changed to a new scope
574+ compare(dashContent.currentIndex, 1);
575+
576+ // Wait for the buttons to settle
577+ var buttons2 = getSettledButtons();
578+
579+ // Verify we have exactly the same buttons as before starting to move
580+ verify(compareArrays(buttons2, buttons));
581+
582+ // Release the mouse
583+ mouseRelease(dashContent, units.gu(1), units.gu(1));
584+
585+ // Wait for the scopes list to stop moving
586+ var dashContentList = findChild(dashContent, "dashContentList");
587+ tryCompare(dashContentList, "moving", false);
588+ compare(dashContent.currentIndex, 1);
589+
590+ // Wait for the buttons to settle
591+ var buttons3 = getSettledButtons();
592+
593+ // Verify we have a different set of buttons now
594+ expectFail("", "There has to be new cards after releasing the list is not moving anymore");
595+ verify(compareArrays(buttons3, buttons));
596+ }
540 }
597 }
541}
598}
tests/utils/modules/Unity/Test/UnityTestCase.qml+17−69
@@ -37,6 +37,7 @@ TestCase {
37 this.getCurrentTimeMs = function() {return this.currentTimeMs}
37 this.getCurrentTimeMs = function() {return this.currentTimeMs}
38 }
38 }
39
39
40+ // TODO This function can be removed altogether once we use Qt 5.5 which has the same feature
40 function mouseClick(item, x, y, button, modifiers, delay) {
41 function mouseClick(item, x, y, button, modifiers, delay) {
41 if (button === undefined)
42 if (button === undefined)
42 button = Qt.LeftButton;
43 button = Qt.LeftButton;
@@ -52,6 +53,7 @@ TestCase {
52 qtest_fail("window not shown", 2);
53 qtest_fail("window not shown", 2);
53 }
54 }
54
55
56+ // TODO This function can be removed altogether once we use Qt 5.5 which has the same feature
55 function mouseDoubleClick(item, x, y, button, modifiers, delay) {
57 function mouseDoubleClick(item, x, y, button, modifiers, delay) {
56 if (button === undefined)
58 if (button === undefined)
57 button = Qt.LeftButton;
59 button = Qt.LeftButton;
@@ -67,6 +69,7 @@ TestCase {
67 qtest_fail("window not shown", 2)
69 qtest_fail("window not shown", 2)
68 }
70 }
69
71
72+ // TODO This function can be removed altogether once we use Qt 5.5 which has the same feature
70 function mousePress(item, x, y, button, modifiers, delay) {
73 function mousePress(item, x, y, button, modifiers, delay) {
71 if (button === undefined)
74 if (button === undefined)
72 button = Qt.LeftButton;
75 button = Qt.LeftButton;
@@ -82,6 +85,7 @@ TestCase {
82 qtest_fail("window not shown", 2)
85 qtest_fail("window not shown", 2)
83 }
86 }
84
87
88+ // TODO This function can be removed altogether once we use Qt 5.5 which has the same feature
85 function mouseRelease(item, x, y, button, modifiers, delay) {
89 function mouseRelease(item, x, y, button, modifiers, delay) {
86 if (button === undefined)
90 if (button === undefined)
87 button = Qt.LeftButton;
91 button = Qt.LeftButton;
@@ -170,78 +174,22 @@ TestCase {
170 return null;
174 return null;
171 }
175 }
172
176
177+ function findChildsByType(obj, typeName) {
178+ var res = new Array(0);
179+ for (var i in obj.children) {
180+ var c = obj.children[i];
181+ if (UT.Util.isInstanceOf(c, typeName)) {
182+ res.push(c)
183+ }
184+ res = res.concat(findChildsByType(c, typeName));
185+ }
186+ return res;
187+ }
188+
173 // Type a full string instead of keyClick letter by letter
189 // Type a full string instead of keyClick letter by letter
174− // TODO: this is not ugly, this is uber-ugly and does not support
175− // any special character. Remove the keyMap once keyClick(obj, char)
176− // has landed in upstream Qt.
177 function typeString(str) {
190 function typeString(str) {
178− var keyMap = {
179− "a": Qt.Key_A,
180− "b": Qt.Key_B,
181− "c": Qt.Key_C,
182− "d": Qt.Key_D,
183− "e": Qt.Key_E,
184− "f": Qt.Key_F,
185− "g": Qt.Key_G,
186− "h": Qt.Key_H,
187− "i": Qt.Key_I,
188− "j": Qt.Key_J,
189− "k": Qt.Key_K,
190− "l": Qt.Key_L,
191− "m": Qt.Key_M,
192− "n": Qt.Key_N,
193− "o": Qt.Key_O,
194− "p": Qt.Key_P,
195− "q": Qt.Key_Q,
196− "r": Qt.Key_R,
197− "s": Qt.Key_S,
198− "t": Qt.Key_T,
199− "u": Qt.Key_U,
200− "v": Qt.Key_V,
201− "w": Qt.Key_W,
202− "x": Qt.Key_X,
203− "y": Qt.Key_Y,
204− "z": Qt.Key_Z,
205− "A": Qt.Key_A,
206− "B": Qt.Key_B,
207− "C": Qt.Key_C,
208− "D": Qt.Key_D,
209− "E": Qt.Key_E,
210− "F": Qt.Key_F,
211− "G": Qt.Key_G,
212− "H": Qt.Key_H,
213− "I": Qt.Key_I,
214− "J": Qt.Key_J,
215− "K": Qt.Key_K,
216− "L": Qt.Key_L,
217− "M": Qt.Key_M,
218− "N": Qt.Key_N,
219− "O": Qt.Key_O,
220− "P": Qt.Key_P,
221− "Q": Qt.Key_Q,
222− "R": Qt.Key_R,
223− "S": Qt.Key_S,
224− "T": Qt.Key_T,
225− "U": Qt.Key_U,
226− "V": Qt.Key_V,
227− "W": Qt.Key_W,
228− "X": Qt.Key_X,
229− "Y": Qt.Key_Y,
230− "Z": Qt.Key_Z,
231− "0": Qt.Key_0,
232− "1": Qt.Key_1,
233− "2": Qt.Key_2,
234− "3": Qt.Key_3,
235− "4": Qt.Key_4,
236− "5": Qt.Key_5,
237− "6": Qt.Key_6,
238− "7": Qt.Key_7,
239− "8": Qt.Key_8,
240− "9": Qt.Key_9,
241− " ": Qt.Key_Space,
242− }
243 for (var i = 0; i < str.length; i++) {
191 for (var i = 0; i < str.length; i++) {
244− keyClick(keyMap[str[i]])
192+ keyClick(str[i])
245 }
193 }
246 }
194 }
247
195