on xenial help sign in
Merge from trunk
commit93e094c10dbb766ddfaa680de8033236f6629c44 authorMichael Terry <michael.terry@canonical.com> dateWed 21 Jan 2015, 09:43 (12 years ago) parent6597dce8851986
21 files changed+501−364
build.sh+4−1 debian/changelog+29 plugins/Dash/CardCreator.js+1−1 plugins/Unity/DashCommunicator/dashconnection.cpp+30 plugins/Unity/DashCommunicator/dashconnection.h+4−1 po/ca.po+51−51 po/es.po+51−45 po/hu.po+55−55 po/nb.po+51−45 po/nl.po+4−4 po/pt.po+30−29 po/sl.po+51−43 qml/Dash/Dash.qml+2−2 qml/Dash/GenericScopeView.qml+30−2 src/libunity8-private/abstractdbusservicemonitor.cpp+21−8 src/libunity8-private/abstractdbusservicemonitor.h+9−5 tests/autopilot/unity8/shell/tests/test_edges_demo.py+1−1 tests/mocks/LightDM/demo/CMakeLists.txt+1 tests/qmltests/Dash/tst_Card.qml+2−2 tests/qmltests/Dash/tst_DashContent.qml+57 tests/utils/modules/Unity/Test/UnityTestCase.qml+17−69
build.sh+4−1
@@ -61,7 +61,10 @@ install_dependencies() {
6161}
6262
6363mk_build_deps() {
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
64+ if [ ! -f control -o $CODE_DIR/debian/control -nt control ]; then
65+ sed 's/\:native//g' $CODE_DIR/debian/control > control
66+ mk-build-deps --install --root-cmd sudo control
67+ fi
6568}
6669
6770if [ -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+
130unity8 (8.02+15.04.20150109.2-0ubuntu1) vivid; urgency=low
231
332 [ Michał Sawicz ]
plugins/Dash/CardCreator.js+1−1
@@ -320,7 +320,7 @@ function cardString(template, components) {
320320 var hasSummary = components["summary"] || false;
321321 var artAndSummary = hasArt && hasSummary;
322322 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);
324324 var hasTitle = components["title"] || false;
325325 var hasMascot = components["mascot"] || false;
326326 var hasEmblem = components["emblem"] && !(hasMascot && template["card-size"] === "small") || false;
plugins/Unity/DashCommunicator/dashconnection.cpp+30
@@ -19,12 +19,42 @@
1919#include <QDBusInterface>
2020#include <QDBusPendingCall>
2121
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+
2245DashConnection::DashConnection(const QString &service, const QString &path, const QString &interface, QObject *parent):
2346 AbstractDBusServiceMonitor(service, path, interface, SessionBus, parent)
2447{
2548
2649}
2750
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+
2858void DashConnection::setCurrentScope(int index, bool animate, bool isSwipe)
2959{
3060 if (dbusInterface()) {
plugins/Unity/DashCommunicator/dashconnection.h+4−1
@@ -20,7 +20,6 @@
2020// local
2121#include "abstractdbusservicemonitor.h"
2222
23−
2423class DashConnection: public AbstractDBusServiceMonitor
2524{
2625 Q_OBJECT
@@ -29,6 +28,10 @@ public:
2928
3029public Q_SLOTS:
3130 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;
3235};
3336
3437#endif
po/ca.po+51−51
@@ -15,19 +15,19 @@ msgstr ""
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
1717"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2015-01-14 06:48+0000\n"
19−"X-Generator: Launchpad (build 17298)\n"
18+"X-Launchpad-Export-Date: 2015-01-15 06:06+0000\n"
19+"X-Generator: Launchpad (build 17303)\n"
2020
2121#: plugins/LightDM/Greeter.cpp:130
2222msgid "Password: "
2323msgstr "Contrasenya: "
2424
2525#: plugins/Unity/Launcher/launcheritem.cpp:45
26−#: plugins/Unity/Launcher/launcheritem.cpp:100
26+#: plugins/Unity/Launcher/launcheritem.cpp:91
2727msgid "Pin shortcut"
2828msgstr "Enganxa la drecera"
2929
30−#: plugins/Unity/Launcher/launcheritem.cpp:100
30+#: plugins/Unity/Launcher/launcheritem.cpp:91
3131msgid "Unpin shortcut"
3232msgstr "Desenganxa la drecera"
3333
@@ -54,45 +54,45 @@ msgid_plural "Please wait %1 minutes and then try again…"
5454msgstr[0] "Espereu %1 minut i torneu-ho a intentar..."
5555msgstr[1] "Espereu %1 minuts i torneu-ho a intentar..."
5656
57−#: qml/Components/Dialogs.qml:70
57+#: qml/Components/Dialogs.qml:74
5858msgid "Log out"
5959msgstr "Surt"
6060
61−#: qml/Components/Dialogs.qml:71
61+#: qml/Components/Dialogs.qml:75
6262msgid "Are you sure you want to log out?"
6363msgstr "Segur que voleu sortir?"
6464
65−#: qml/Components/Dialogs.qml:73 qml/Components/Dialogs.qml:97
66−#: qml/Components/Dialogs.qml:122
65+#: qml/Components/Dialogs.qml:77 qml/Components/Dialogs.qml:101
66+#: qml/Components/Dialogs.qml:126
6767msgid "No"
6868msgstr "No"
6969
70−#: qml/Components/Dialogs.qml:80 qml/Components/Dialogs.qml:104
71−#: qml/Components/Dialogs.qml:129
70+#: qml/Components/Dialogs.qml:84 qml/Components/Dialogs.qml:108
71+#: qml/Components/Dialogs.qml:133
7272msgid "Yes"
7373msgstr "Sí"
7474
75−#: qml/Components/Dialogs.qml:94
75+#: qml/Components/Dialogs.qml:98
7676msgid "Shut down"
7777msgstr "Apaga"
7878
79−#: qml/Components/Dialogs.qml:95
79+#: qml/Components/Dialogs.qml:99
8080msgid "Are you sure you want to shut down?"
8181msgstr "Segur que voleu apagar?"
8282
83−#: qml/Components/Dialogs.qml:119
83+#: qml/Components/Dialogs.qml:123
8484msgid "Reboot"
8585msgstr "Reinicia"
8686
87−#: qml/Components/Dialogs.qml:120
87+#: qml/Components/Dialogs.qml:124
8888msgid "Are you sure you want to reboot?"
8989msgstr "Segur que voleu reiniciar?"
9090
91−#: qml/Components/Dialogs.qml:144
91+#: qml/Components/Dialogs.qml:148
9292msgid "Power"
9393msgstr "Energia"
9494
95−#: qml/Components/Dialogs.qml:145
95+#: qml/Components/Dialogs.qml:149
9696msgid ""
9797"Are you sure you would like\n"
9898"to power off?"
@@ -100,15 +100,15 @@ msgstr ""
100100"Segur que voleu\n"
101101"apagar?"
102102
103−#: qml/Components/Dialogs.qml:147
103+#: qml/Components/Dialogs.qml:151
104104msgid "Power off"
105105msgstr "Apaga"
106106
107−#: qml/Components/Dialogs.qml:157
107+#: qml/Components/Dialogs.qml:161
108108msgid "Restart"
109109msgstr "Reinicia"
110110
111−#: qml/Components/Dialogs.qml:167
111+#: qml/Components/Dialogs.qml:171
112112msgid "Cancel"
113113msgstr "Cancel·la"
114114
@@ -116,49 +116,49 @@ msgstr "Cancel·la"
116116msgid "Skip intro"
117117msgstr "Omet la introducció"
118118
119−#: qml/Components/EdgeDemo.qml:125
119+#: qml/Components/EdgeDemo.qml:112
120120msgid "Right edge"
121121msgstr "Vora dreta"
122122
123−#: qml/Components/EdgeDemo.qml:126
123+#: qml/Components/EdgeDemo.qml:113
124124msgid "Try swiping from the right edge to unlock the phone"
125125msgstr ""
126126"Proveu de lliscar el dit des de la vora dreta per desblocar el telèfon"
127127
128−#: qml/Components/EdgeDemo.qml:157
128+#: qml/Components/EdgeDemo.qml:144
129129msgid "Top edge"
130130msgstr "Vora superior"
131131
132−#: qml/Components/EdgeDemo.qml:158
132+#: qml/Components/EdgeDemo.qml:145
133133msgid "Try swiping from the top edge to access the indicators"
134134msgstr ""
135135"Proveu de lliscar el dit des de la vora superior per accedir als indicadors"
136136
137−#: qml/Components/EdgeDemo.qml:183
137+#: qml/Components/EdgeDemo.qml:170
138138msgid "Close"
139139msgstr "Tanca"
140140
141−#: qml/Components/EdgeDemo.qml:184
141+#: qml/Components/EdgeDemo.qml:171
142142msgid "Swipe up again to close the settings screen"
143143msgstr ""
144144"Llisqueu el dit cap amunt una altra vegada per tancar la pantalla de "
145145"configuració"
146146
147−#: qml/Components/EdgeDemo.qml:214
147+#: qml/Components/EdgeDemo.qml:201
148148msgid "Left edge"
149149msgstr "Vora esquerra"
150150
151−#: qml/Components/EdgeDemo.qml:215
151+#: qml/Components/EdgeDemo.qml:202
152152msgid "Swipe from the left to reveal the launcher for quick access to apps"
153153msgstr ""
154154"Llisqueu el dit des de la vora esquerra per mostrar el llançador i accedir "
155155"ràpidament a les aplicacions"
156156
157−#: qml/Components/EdgeDemo.qml:242
157+#: qml/Components/EdgeDemo.qml:229
158158msgid "Well done"
159159msgstr "Enhorabona!"
160160
161−#: qml/Components/EdgeDemo.qml:243
161+#: qml/Components/EdgeDemo.qml:230
162162msgid ""
163163"You have now mastered the edge gestures and can start using the "
164164"phone<br><br>Tap on the screen to start"
@@ -166,44 +166,44 @@ msgstr ""
166166"Ja heu après com utilitzar els gestos de les vores per fer servir el "
167167"telèfon<br><br>Feu un toc a la pantalla per començar"
168168
169−#: qml/Components/Lockscreen.qml:238
169+#: qml/Components/Lockscreen.qml:223
170170msgid "Return to Call"
171171msgstr "Torna a la trucada"
172172
173−#: qml/Components/Lockscreen.qml:238
173+#: qml/Components/Lockscreen.qml:223
174174msgid "Emergency Call"
175175msgstr "Trucada d'emergència"
176176
177−#: qml/Components/Lockscreen.qml:270
177+#: qml/Components/Lockscreen.qml:255
178178msgid "OK"
179179msgstr "D'acord"
180180
181−#: qml/Dash/GenericScopeView.qml:431 qml/Dash/GenericScopeView.qml:588
181+#: qml/Dash/GenericScopeView.qml:434 qml/Dash/GenericScopeView.qml:591
182182msgid "See less"
183183msgstr "Mostra'n menys"
184184
185−#: qml/Dash/GenericScopeView.qml:431
185+#: qml/Dash/GenericScopeView.qml:434
186186msgid "See all"
187187msgstr "Mostra-ho tot"
188188
189−#: qml/Dash/GenericScopeView.qml:493 qml/Dash/PageHeader.qml:267
189+#: qml/Dash/GenericScopeView.qml:496 qml/Dash/PageHeader.qml:268
190190#: qml/Panel/SearchIndicator.qml:27
191191msgid "Search"
192192msgstr "Cerca"
193193
194−#: qml/Dash/PageHeader.qml:260
194+#: qml/Dash/PageHeader.qml:261
195195msgid "Store"
196196msgstr "Botiga"
197197
198−#: qml/Dash/PageHeader.qml:277
198+#: qml/Dash/PageHeader.qml:278
199199msgid "Settings"
200200msgstr "Paràmetres"
201201
202−#: qml/Dash/PageHeader.qml:284
202+#: qml/Dash/PageHeader.qml:285
203203msgid "Remove from Favorites"
204204msgstr "Suprimeix dels preferits"
205205
206−#: qml/Dash/PageHeader.qml:284
206+#: qml/Dash/PageHeader.qml:285
207207msgid "Add to Favorites"
208208msgstr "Afegeix als preferits"
209209
@@ -299,49 +299,49 @@ msgstr "Desbloca la SIM"
299299msgid "Roaming"
300300msgstr "Itinerància"
301301
302−#: qml/Shell.qml:367
302+#: qml/Shell.qml:402
303303#, qt-format
304304msgid "Enter %1"
305305msgstr "Introduïu: %1"
306306
307−#: qml/Shell.qml:368 qml/Wizard/Pages/passwd-set.qml:60
307+#: qml/Shell.qml:394
308308msgid "Enter passphrase"
309309msgstr "Introduïu la contrasenya"
310310
311−#: qml/Shell.qml:369
311+#: qml/Shell.qml:398
312312msgid "Enter passcode"
313313msgstr "Introduïu el codi d'accés"
314314
315−#: qml/Shell.qml:370
315+#: qml/Shell.qml:403
316316#, qt-format
317317msgid "Sorry, incorrect %1"
318318msgstr "Incorrecte (%1)"
319319
320−#: qml/Shell.qml:371
320+#: qml/Shell.qml:395
321321msgid "Sorry, incorrect passphrase"
322322msgstr "La contrasenya no és correcta"
323323
324−#: qml/Shell.qml:372
324+#: qml/Shell.qml:396
325325msgid "Please re-enter"
326326msgstr "Torneu-ho a introduir"
327327
328−#: qml/Shell.qml:373
328+#: qml/Shell.qml:399
329329msgid "Sorry, incorrect passcode"
330330msgstr "El codi d'accés no és correcte"
331331
332−#: qml/Shell.qml:467 qml/Wizard/Pages/passwd-confirm.qml:53
332+#: qml/Shell.qml:444
333333msgid "Sorry, incorrect passphrase."
334334msgstr "La contrasenya és incorrecta"
335335
336−#: qml/Shell.qml:468 qml/Wizard/Pages/passwd-confirm.qml:54
336+#: qml/Shell.qml:445
337337msgid "Sorry, incorrect passcode."
338338msgstr "El codi d'accés no és correcte"
339339
340−#: qml/Shell.qml:469
340+#: qml/Shell.qml:446
341341msgid "This will be your last attempt."
342342msgstr "Aquest serà el darrer intent."
343343
344−#: qml/Shell.qml:471
344+#: qml/Shell.qml:448
345345msgid ""
346346"If passphrase is entered incorrectly, your phone will conduct a factory "
347347"reset and all personal data will be deleted."
@@ -350,7 +350,7 @@ msgstr ""
350350"reinicialitzarà a l'estat de fàbrica i se suprimiran totes les dades "
351351"personals."
352352
353−#: qml/Shell.qml:472
353+#: qml/Shell.qml:449
354354msgid ""
355355"If passcode is entered incorrectly, your phone will conduct a factory reset "
356356"and all personal data will be deleted."
po/es.po+51−45
@@ -8,15 +8,15 @@ msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
1010"POT-Creation-Date: 2014-12-10 10:55+0100\n"
11−"PO-Revision-Date: 2014-11-08 08:01+0000\n"
12−"Last-Translator: Paco Molinero <paco@byasl.com>\n"
11+"PO-Revision-Date: 2015-01-16 03:09+0000\n"
12+"Last-Translator: Adolfo Jayme <fitoschido@gmail.com>\n"
1313"Language-Team: Spanish <es@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
1717"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2014-12-13 07:11+0000\n"
19−"X-Generator: Launchpad (build 17286)\n"
18+"X-Launchpad-Export-Date: 2015-01-17 07:08+0000\n"
19+"X-Generator: Launchpad (build 17304)\n"
2020
2121#: plugins/LightDM/Greeter.cpp:130
2222msgid "Password: "
@@ -234,15 +234,15 @@ msgstr "Suelte para actualizar…"
234234
235235#: qml/Dash/ScopesList.qml:63
236236msgid "Manage"
237−msgstr ""
237+msgstr "Administrar"
238238
239239#: qml/Dash/ScopesList.qml:107
240240msgid "Home"
241−msgstr ""
241+msgstr "Inicio"
242242
243243#: qml/Dash/ScopesList.qml:108
244244msgid "Also installed"
245−msgstr ""
245+msgstr "También instalados"
246246
247247#: qml/Greeter/Greeter.qml:174
248248msgid "Unlock"
@@ -356,98 +356,98 @@ msgstr ""
356356
357357#: qml/Wizard/Page.qml:89
358358msgid "Back"
359−msgstr ""
359+msgstr "Atrás"
360360
361361#: qml/Wizard/Pages/10-welcome.qml:27
362362msgid "Hi!"
363−msgstr ""
363+msgstr "¡Hola!"
364364
365365#: qml/Wizard/Pages/10-welcome.qml:44
366366msgid "Welcome to your Ubuntu phone."
367−msgstr ""
367+msgstr "Bienvenido a su teléfono Ubuntu."
368368
369369#: qml/Wizard/Pages/10-welcome.qml:52
370370msgid "Let’s get started."
371−msgstr ""
371+msgstr "Comencemos."
372372
373373#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
374374#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
375375#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
376376#: qml/Wizard/Pages/passwd-set.qml:90
377377msgid "Continue"
378−msgstr ""
378+msgstr "Continuar"
379379
380380#: qml/Wizard/Pages/20-sim.qml:25
381381msgid "Add a SIM card and restart your device"
382−msgstr ""
382+msgstr "Inserte una tarjeta SIM y reinicie el dispositivo"
383383
384384#: qml/Wizard/Pages/20-sim.qml:55
385385msgid "Without it, you won’t be able to make calls or use text messaging."
386−msgstr ""
386+msgstr "Sin ella, no podrá hacer llamadas ni enviar mensajes."
387387
388388#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
389389msgid "Skip"
390−msgstr ""
390+msgstr "Omitir"
391391
392392#: qml/Wizard/Pages/30-passwd-type.qml:39
393393msgid "Lock security"
394−msgstr ""
394+msgstr "Seguridad de bloqueo"
395395
396396#: qml/Wizard/Pages/30-passwd-type.qml:74
397397msgid "Please select how you’d like to unlock your phone."
398−msgstr ""
398+msgstr "Seleccione el método de desbloqueo del teléfono."
399399
400400#: qml/Wizard/Pages/30-passwd-type.qml:97
401401msgid "Swipe"
402−msgstr ""
402+msgstr "Deslizar"
403403
404404#: qml/Wizard/Pages/30-passwd-type.qml:98
405405msgid "No security"
406−msgstr ""
406+msgstr "Sin seguridad"
407407
408408#: qml/Wizard/Pages/30-passwd-type.qml:100
409409msgid "Passcode"
410−msgstr ""
410+msgstr "Código"
411411
412412#: qml/Wizard/Pages/30-passwd-type.qml:101
413413msgid "4 digits only"
414−msgstr ""
414+msgstr "Solo 4 dígitos"
415415
416416#: qml/Wizard/Pages/30-passwd-type.qml:103
417417msgid "Passphrase"
418−msgstr ""
418+msgstr "Contraseña"
419419
420420#: qml/Wizard/Pages/30-passwd-type.qml:104
421421msgid "Numbers and letters"
422−msgstr ""
422+msgstr "Números y letras"
423423
424424#: qml/Wizard/Pages/40-wifi.qml:28
425425msgid "Connect to Wi‑Fi"
426−msgstr ""
426+msgstr "Conectar con wifi"
427427
428428#: qml/Wizard/Pages/40-wifi.qml:147
429429msgid "Available networks…"
430−msgstr ""
430+msgstr "Redes disponibles…"
431431
432432#: qml/Wizard/Pages/40-wifi.qml:148
433433msgid "No available networks."
434−msgstr ""
434+msgstr "No hay redes disponibles."
435435
436436#: qml/Wizard/Pages/50-location.qml:27
437437msgid "Location"
438−msgstr ""
438+msgstr "Ubicación"
439439
440440#: qml/Wizard/Pages/50-location.qml:62
441441msgid "Let the phone detect your location:"
442−msgstr ""
442+msgstr "Permitir que el teléfono detecte su ubicación:"
443443
444444#: qml/Wizard/Pages/50-location.qml:69
445445msgid "Using GPS only (less accurate)"
446−msgstr ""
446+msgstr "Usando solo GPS (poco preciso)"
447447
448448#: qml/Wizard/Pages/50-location.qml:86
449449msgid "Using GPS, anonymized Wi-Fi and cellular network info (recommended)"
450−msgstr ""
450+msgstr "Usando GPS, wifi anonimizado y red de datos móviles (recomendado)"
451451
452452#. TRANSLATORS: HERE is a trademark for Nokia's location service, you probably shouldn't translate it
453453#: qml/Wizard/Pages/50-location.qml:103
@@ -455,81 +455,87 @@ msgid ""
455455"By selecting this option you agree to the Nokia HERE <a href='#'>terms and "
456456"conditions</a>."
457457msgstr ""
458+"Al seleccionar esta opción acepta los <a href='#'>términos y condiciones</a> "
459+"de Nokia HERE."
458460
459461#: qml/Wizard/Pages/50-location.qml:112
460462msgid "Not at all"
461−msgstr ""
463+msgstr "De ningún modo"
462464
463465#: qml/Wizard/Pages/50-location.qml:124
464466msgid "You can change your mind later in <b>System Settings</b>."
465−msgstr ""
467+msgstr "Si cambia de opinión, vaya a <b>Configuración del sistema</b>."
466468
467469#: qml/Wizard/Pages/60-reporting.qml:24
468470msgid "Improving your experience"
469−msgstr ""
471+msgstr "Mejorar la experiencia"
470472
471473#: qml/Wizard/Pages/60-reporting.qml:36
472474msgid ""
473475"Your phone is set up to automatically report errors to Canonical and its "
474476"partners, the makers of the operating system."
475477msgstr ""
478+"El teléfono está configurado para enviar automáticamente informes de error a "
479+"Canonical y sus socios, los creadores del sistema operativo."
476480
477481#: qml/Wizard/Pages/60-reporting.qml:43
478482msgid ""
479483"This can be disabled in <b>System Settings</b> under <b>Security &amp; "
480484"Privacy</b>"
481485msgstr ""
486+"Esto se puede desactivar en <b>Configuración del sistema</b> &gt; "
487+"<b>Seguridad y privacidad</b>."
482488
483489#: qml/Wizard/Pages/80-finished.qml:24
484490msgid "All done"
485−msgstr ""
491+msgstr "Hecho"
486492
487493#: qml/Wizard/Pages/80-finished.qml:39
488494msgid "Nice work!"
489−msgstr ""
495+msgstr "¡Buen trabajo!"
490496
491497#: qml/Wizard/Pages/80-finished.qml:46
492498msgid "Your phone is now ready to use."
493−msgstr ""
499+msgstr "El teléfono ya está listo para usarse."
494500
495501#: qml/Wizard/Pages/80-finished.qml:53
496502msgid "Finish"
497−msgstr ""
503+msgstr "Finalizar"
498504
499505#: qml/Wizard/Pages/here-terms.qml:27
500506msgid "Terms & Conditions"
501−msgstr ""
507+msgstr "Términos y condiciones"
502508
503509#: qml/Wizard/Pages/passwd-confirm.qml:49
504510msgid "Confirm passphrase"
505−msgstr ""
511+msgstr "Confirme la contraseña"
506512
507513#: qml/Wizard/Pages/passwd-confirm.qml:50
508514msgid "Confirm passcode"
509−msgstr ""
515+msgstr "Confirme el código"
510516
511517#: qml/Wizard/Pages/passwd-confirm.qml:53
512518#: qml/Wizard/Pages/passwd-confirm.qml:54
513519msgid "Please try again."
514−msgstr ""
520+msgstr "Inténtelo de nuevo."
515521
516522#: qml/Wizard/Pages/passwd-set.qml:61
517523msgid "Choose your passcode"
518−msgstr ""
524+msgstr "Elija su código"
519525
520526#: qml/Wizard/Pages/passwd-set.qml:68
521527msgid "Passphrase must be 4 characters long"
522−msgstr ""
528+msgstr "El código debe tener 4 caracteres"
523529
524530#: qml/Wizard/StackButton.qml:39
525531#, qt-format
526532msgid "〈 %1"
527−msgstr ""
533+msgstr "〈 %1"
528534
529535#: qml/Wizard/StackButton.qml:42
530536#, qt-format
531537msgid "%1 〉"
532−msgstr ""
538+msgstr "%1 〉"
533539
534540#~ msgid "Confirm"
535541#~ msgstr "Confirmar"
po/hu.po+55−55
@@ -8,26 +8,26 @@ msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
1010"POT-Creation-Date: 2014-12-10 10:55+0100\n"
11−"PO-Revision-Date: 2014-12-21 15:13+0000\n"
11+"PO-Revision-Date: 2015-01-17 10:51+0000\n"
1212"Last-Translator: Richard Somlói <ricsipontaz@gmail.com>\n"
1313"Language-Team: Hungarian <hu@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
1717"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2014-12-22 07:05+0000\n"
19−"X-Generator: Launchpad (build 17286)\n"
18+"X-Launchpad-Export-Date: 2015-01-18 05:03+0000\n"
19+"X-Generator: Launchpad (build 17304)\n"
2020
2121#: plugins/LightDM/Greeter.cpp:130
2222msgid "Password: "
2323msgstr "Jelszó: "
2424
2525#: plugins/Unity/Launcher/launcheritem.cpp:45
26−#: plugins/Unity/Launcher/launcheritem.cpp:91
26+#: plugins/Unity/Launcher/launcheritem.cpp:100
2727msgid "Pin shortcut"
2828msgstr "Indító rögzítése"
2929
30−#: plugins/Unity/Launcher/launcheritem.cpp:91
30+#: plugins/Unity/Launcher/launcheritem.cpp:100
3131msgid "Unpin shortcut"
3232msgstr "Indító feloldása"
3333
@@ -50,45 +50,45 @@ msgid_plural "Please wait %1 minutes and then try again…"
5050msgstr[0] "Várjon %1 percet és próbálja újra…"
5151msgstr[1] "Várjon %1 percet és próbálja újra…"
5252
53−#: qml/Components/Dialogs.qml:74
53+#: qml/Components/Dialogs.qml:70
5454msgid "Log out"
5555msgstr "Kijelentkezés"
5656
57−#: qml/Components/Dialogs.qml:75
57+#: qml/Components/Dialogs.qml:71
5858msgid "Are you sure you want to log out?"
5959msgstr "Biztos benne, hogy kijelentkezik?"
6060
61−#: qml/Components/Dialogs.qml:77 qml/Components/Dialogs.qml:101
62−#: qml/Components/Dialogs.qml:126
61+#: qml/Components/Dialogs.qml:73 qml/Components/Dialogs.qml:97
62+#: qml/Components/Dialogs.qml:122
6363msgid "No"
6464msgstr "Nem"
6565
66−#: qml/Components/Dialogs.qml:84 qml/Components/Dialogs.qml:108
67−#: qml/Components/Dialogs.qml:133
66+#: qml/Components/Dialogs.qml:80 qml/Components/Dialogs.qml:104
67+#: qml/Components/Dialogs.qml:129
6868msgid "Yes"
6969msgstr "Igen"
7070
71−#: qml/Components/Dialogs.qml:98
71+#: qml/Components/Dialogs.qml:94
7272msgid "Shut down"
7373msgstr "Leállítás"
7474
75−#: qml/Components/Dialogs.qml:99
75+#: qml/Components/Dialogs.qml:95
7676msgid "Are you sure you want to shut down?"
7777msgstr "Biztosan le szeretné állítani?"
7878
79−#: qml/Components/Dialogs.qml:123
79+#: qml/Components/Dialogs.qml:119
8080msgid "Reboot"
8181msgstr "Újraindítás"
8282
83−#: qml/Components/Dialogs.qml:124
83+#: qml/Components/Dialogs.qml:120
8484msgid "Are you sure you want to reboot?"
8585msgstr "Biztosan újra szeretné indítani?"
8686
87−#: qml/Components/Dialogs.qml:148
87+#: qml/Components/Dialogs.qml:144
8888msgid "Power"
8989msgstr "Kikapcsolás"
9090
91−#: qml/Components/Dialogs.qml:149
91+#: qml/Components/Dialogs.qml:145
9292msgid ""
9393"Are you sure you would like\n"
9494"to power off?"
@@ -96,15 +96,15 @@ msgstr ""
9696"Biztos benne, hogy ki\n"
9797"szeretné kapcsolni?"
9898
99−#: qml/Components/Dialogs.qml:151
99+#: qml/Components/Dialogs.qml:147
100100msgid "Power off"
101101msgstr "Kikapcsolás"
102102
103−#: qml/Components/Dialogs.qml:161
103+#: qml/Components/Dialogs.qml:157
104104msgid "Restart"
105105msgstr "Újraindítás"
106106
107−#: qml/Components/Dialogs.qml:171
107+#: qml/Components/Dialogs.qml:167
108108msgid "Cancel"
109109msgstr "Mégse"
110110
@@ -112,45 +112,45 @@ msgstr "Mégse"
112112msgid "Skip intro"
113113msgstr "A bemutató kihagyása"
114114
115−#: qml/Components/EdgeDemo.qml:112
115+#: qml/Components/EdgeDemo.qml:125
116116msgid "Right edge"
117117msgstr "Jobb szél"
118118
119−#: qml/Components/EdgeDemo.qml:113
119+#: qml/Components/EdgeDemo.qml:126
120120msgid "Try swiping from the right edge to unlock the phone"
121121msgstr "A telefon feloldásához csúsztassa ujját a jobb szélről"
122122
123−#: qml/Components/EdgeDemo.qml:144
123+#: qml/Components/EdgeDemo.qml:157
124124msgid "Top edge"
125125msgstr "Felső szél"
126126
127−#: qml/Components/EdgeDemo.qml:145
127+#: qml/Components/EdgeDemo.qml:158
128128msgid "Try swiping from the top edge to access the indicators"
129129msgstr "Az állapotmenük eléréséhez csúsztassa ujját a felső szélről"
130130
131−#: qml/Components/EdgeDemo.qml:170
131+#: qml/Components/EdgeDemo.qml:183
132132msgid "Close"
133133msgstr "Bezárás"
134134
135−#: qml/Components/EdgeDemo.qml:171
135+#: qml/Components/EdgeDemo.qml:184
136136msgid "Swipe up again to close the settings screen"
137137msgstr "A beállítások bezárásához csúsztassa ujját újra felfelé"
138138
139−#: qml/Components/EdgeDemo.qml:201
139+#: qml/Components/EdgeDemo.qml:214
140140msgid "Left edge"
141141msgstr "Bal szél"
142142
143−#: qml/Components/EdgeDemo.qml:202
143+#: qml/Components/EdgeDemo.qml:215
144144msgid "Swipe from the left to reveal the launcher for quick access to apps"
145145msgstr ""
146146"Csúsztassa ujját a bal szélről az indítón található alkalmazások gyors "
147147"eléréséhez"
148148
149−#: qml/Components/EdgeDemo.qml:229
149+#: qml/Components/EdgeDemo.qml:242
150150msgid "Well done"
151151msgstr "Rendben"
152152
153−#: qml/Components/EdgeDemo.qml:230
153+#: qml/Components/EdgeDemo.qml:243
154154msgid ""
155155"You have now mastered the edge gestures and can start using the "
156156"phone<br><br>Tap on the screen to start"
@@ -158,44 +158,44 @@ msgstr ""
158158"Elsajátította a gesztusokat, és megkezdheti a telefon "
159159"használatát.<br><br>Koppintson a képernyőre a kezdéshez."
160160
161−#: qml/Components/Lockscreen.qml:223
161+#: qml/Components/Lockscreen.qml:238
162162msgid "Return to Call"
163163msgstr "Vissza a híváshoz"
164164
165−#: qml/Components/Lockscreen.qml:223
165+#: qml/Components/Lockscreen.qml:238
166166msgid "Emergency Call"
167167msgstr "Vészhívás"
168168
169−#: qml/Components/Lockscreen.qml:255
169+#: qml/Components/Lockscreen.qml:270
170170msgid "OK"
171171msgstr "Ok"
172172
173−#: qml/Dash/GenericScopeView.qml:434 qml/Dash/GenericScopeView.qml:591
173+#: qml/Dash/GenericScopeView.qml:431 qml/Dash/GenericScopeView.qml:588
174174msgid "See less"
175175msgstr "Kevesebb"
176176
177−#: qml/Dash/GenericScopeView.qml:434
177+#: qml/Dash/GenericScopeView.qml:431
178178msgid "See all"
179179msgstr "Összes megtekintése"
180180
181−#: qml/Dash/GenericScopeView.qml:496 qml/Dash/PageHeader.qml:268
181+#: qml/Dash/GenericScopeView.qml:493 qml/Dash/PageHeader.qml:267
182182#: qml/Panel/SearchIndicator.qml:27
183183msgid "Search"
184184msgstr "Keresés"
185185
186−#: qml/Dash/PageHeader.qml:261
186+#: qml/Dash/PageHeader.qml:260
187187msgid "Store"
188188msgstr "Áruház"
189189
190−#: qml/Dash/PageHeader.qml:278
190+#: qml/Dash/PageHeader.qml:277
191191msgid "Settings"
192192msgstr "Beállítások"
193193
194−#: qml/Dash/PageHeader.qml:285
194+#: qml/Dash/PageHeader.qml:284
195195msgid "Remove from Favorites"
196196msgstr "Eltávolítás a kedvencek közül"
197197
198−#: qml/Dash/PageHeader.qml:285
198+#: qml/Dash/PageHeader.qml:284
199199msgid "Add to Favorites"
200200msgstr "Hozzáadás a kedvencekhez"
201201
@@ -229,7 +229,7 @@ msgstr "Engedje el a frissítéshez…"
229229
230230#: qml/Dash/ScopesList.qml:63
231231msgid "Manage"
232−msgstr "Kezelés"
232+msgstr "Szerkesztés"
233233
234234#: qml/Dash/ScopesList.qml:107
235235msgid "Home"
@@ -237,7 +237,7 @@ msgstr "Kezdőlapon"
237237
238238#: qml/Dash/ScopesList.qml:108
239239msgid "Also installed"
240−msgstr "Szintén telepítve"
240+msgstr "Telepítve"
241241
242242#: qml/Greeter/Greeter.qml:174
243243msgid "Unlock"
@@ -291,49 +291,49 @@ msgstr "SIM feloldása"
291291msgid "Roaming"
292292msgstr "Barangolás"
293293
294−#: qml/Shell.qml:402
294+#: qml/Shell.qml:367
295295#, qt-format
296296msgid "Enter %1"
297297msgstr "Adja meg: %1"
298298
299−#: qml/Shell.qml:394
299+#: qml/Shell.qml:368 qml/Wizard/Pages/passwd-set.qml:60
300300msgid "Enter passphrase"
301301msgstr "Jelmondat megadása"
302302
303−#: qml/Shell.qml:398
303+#: qml/Shell.qml:369
304304msgid "Enter passcode"
305305msgstr "Jelkód megadása"
306306
307−#: qml/Shell.qml:403
307+#: qml/Shell.qml:370
308308#, qt-format
309309msgid "Sorry, incorrect %1"
310310msgstr "Sajnálom, helytelen %1"
311311
312−#: qml/Shell.qml:395
312+#: qml/Shell.qml:371
313313msgid "Sorry, incorrect passphrase"
314314msgstr "Sajnálom, helytelen jelmondat"
315315
316−#: qml/Shell.qml:396
316+#: qml/Shell.qml:372
317317msgid "Please re-enter"
318318msgstr "Próbálja újra"
319319
320−#: qml/Shell.qml:399
320+#: qml/Shell.qml:373
321321msgid "Sorry, incorrect passcode"
322322msgstr "Sajnálom, helytelen jelkód"
323323
324−#: qml/Shell.qml:444
324+#: qml/Shell.qml:467 qml/Wizard/Pages/passwd-confirm.qml:53
325325msgid "Sorry, incorrect passphrase."
326326msgstr "Sajnálom, helytelen jelmondat."
327327
328−#: qml/Shell.qml:445
328+#: qml/Shell.qml:468 qml/Wizard/Pages/passwd-confirm.qml:54
329329msgid "Sorry, incorrect passcode."
330330msgstr "Sajnálom, helytelen jelkód."
331331
332−#: qml/Shell.qml:446
332+#: qml/Shell.qml:469
333333msgid "This will be your last attempt."
334334msgstr "Ez az utolsó próbálkozási lehetősége."
335335
336−#: qml/Shell.qml:448
336+#: qml/Shell.qml:471
337337msgid ""
338338"If passphrase is entered incorrectly, your phone will conduct a factory "
339339"reset and all personal data will be deleted."
@@ -341,7 +341,7 @@ msgstr ""
341341"Ha helytelen jelmondatot ad meg, a telefonja visszaállítja a gyári "
342342"beállításokat és törli minden személyes adatát."
343343
344−#: qml/Shell.qml:449
344+#: qml/Shell.qml:472
345345msgid ""
346346"If passcode is entered incorrectly, your phone will conduct a factory reset "
347347"and all personal data will be deleted."
@@ -457,7 +457,7 @@ msgstr ""
457457
458458#: qml/Wizard/Pages/50-location.qml:112
459459msgid "Not at all"
460−msgstr ""
460+msgstr "Ne tegye"
461461
462462#: qml/Wizard/Pages/50-location.qml:124
463463msgid "You can change your mind later in <b>System Settings</b>."
po/nb.po+51−45
@@ -8,15 +8,15 @@ msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
1010"POT-Creation-Date: 2014-12-10 10:55+0100\n"
11−"PO-Revision-Date: 2014-11-12 19:57+0000\n"
12−"Last-Translator: Ari Börde Kröyer <Unknown>\n"
11+"PO-Revision-Date: 2015-01-15 06:54+0000\n"
12+"Last-Translator: Åka Sikrom <Unknown>\n"
1313"Language-Team: Norwegian Bokmal <nb@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
1717"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2014-12-13 07:11+0000\n"
19−"X-Generator: Launchpad (build 17286)\n"
18+"X-Launchpad-Export-Date: 2015-01-16 06:21+0000\n"
19+"X-Generator: Launchpad (build 17303)\n"
2020
2121#: plugins/LightDM/Greeter.cpp:130
2222msgid "Password: "
@@ -229,15 +229,15 @@ msgstr "Slipp for å oppdatere …"
229229
230230#: qml/Dash/ScopesList.qml:63
231231msgid "Manage"
232−msgstr ""
232+msgstr "Behandle"
233233
234234#: qml/Dash/ScopesList.qml:107
235235msgid "Home"
236−msgstr ""
236+msgstr "Hjem"
237237
238238#: qml/Dash/ScopesList.qml:108
239239msgid "Also installed"
240−msgstr ""
240+msgstr "Også installert"
241241
242242#: qml/Greeter/Greeter.qml:174
243243msgid "Unlock"
@@ -351,98 +351,98 @@ msgstr ""
351351
352352#: qml/Wizard/Page.qml:89
353353msgid "Back"
354−msgstr ""
354+msgstr "Tilbake"
355355
356356#: qml/Wizard/Pages/10-welcome.qml:27
357357msgid "Hi!"
358−msgstr ""
358+msgstr "Hei!"
359359
360360#: qml/Wizard/Pages/10-welcome.qml:44
361361msgid "Welcome to your Ubuntu phone."
362−msgstr ""
362+msgstr "Velkommen til Ubuntu-telefonen."
363363
364364#: qml/Wizard/Pages/10-welcome.qml:52
365365msgid "Let’s get started."
366−msgstr ""
366+msgstr "La oss komme i gang."
367367
368368#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
369369#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
370370#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
371371#: qml/Wizard/Pages/passwd-set.qml:90
372372msgid "Continue"
373−msgstr ""
373+msgstr "Fortsett"
374374
375375#: qml/Wizard/Pages/20-sim.qml:25
376376msgid "Add a SIM card and restart your device"
377−msgstr ""
377+msgstr "Legg til et SIM-kort og start enheten på nytt"
378378
379379#: qml/Wizard/Pages/20-sim.qml:55
380380msgid "Without it, you won’t be able to make calls or use text messaging."
381−msgstr ""
381+msgstr "Du kan ikke ringe eller sende meldinger uten et SIM-kort."
382382
383383#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
384384msgid "Skip"
385−msgstr ""
385+msgstr "Hopp over"
386386
387387#: qml/Wizard/Pages/30-passwd-type.qml:39
388388msgid "Lock security"
389−msgstr ""
389+msgstr "Låsesikkerhet"
390390
391391#: qml/Wizard/Pages/30-passwd-type.qml:74
392392msgid "Please select how you’d like to unlock your phone."
393−msgstr ""
393+msgstr "Velg hvordan du vil låse opp telefonen."
394394
395395#: qml/Wizard/Pages/30-passwd-type.qml:97
396396msgid "Swipe"
397−msgstr ""
397+msgstr "Sveip"
398398
399399#: qml/Wizard/Pages/30-passwd-type.qml:98
400400msgid "No security"
401−msgstr ""
401+msgstr "Ingen sperre"
402402
403403#: qml/Wizard/Pages/30-passwd-type.qml:100
404404msgid "Passcode"
405−msgstr ""
405+msgstr "Kode"
406406
407407#: qml/Wizard/Pages/30-passwd-type.qml:101
408408msgid "4 digits only"
409−msgstr ""
409+msgstr "4 sifre"
410410
411411#: qml/Wizard/Pages/30-passwd-type.qml:103
412412msgid "Passphrase"
413−msgstr ""
413+msgstr "Passordfrase"
414414
415415#: qml/Wizard/Pages/30-passwd-type.qml:104
416416msgid "Numbers and letters"
417−msgstr ""
417+msgstr "Tall og bokstaver"
418418
419419#: qml/Wizard/Pages/40-wifi.qml:28
420420msgid "Connect to Wi‑Fi"
421−msgstr ""
421+msgstr "Koble til trådløst nettverk"
422422
423423#: qml/Wizard/Pages/40-wifi.qml:147
424424msgid "Available networks…"
425−msgstr ""
425+msgstr "Tilgjengelige nettverk …"
426426
427427#: qml/Wizard/Pages/40-wifi.qml:148
428428msgid "No available networks."
429−msgstr ""
429+msgstr "Ingen tilgjengelige nettverk."
430430
431431#: qml/Wizard/Pages/50-location.qml:27
432432msgid "Location"
433−msgstr ""
433+msgstr "Plassering"
434434
435435#: qml/Wizard/Pages/50-location.qml:62
436436msgid "Let the phone detect your location:"
437−msgstr ""
437+msgstr "La telefonen se hvor du befinner deg:"
438438
439439#: qml/Wizard/Pages/50-location.qml:69
440440msgid "Using GPS only (less accurate)"
441−msgstr ""
441+msgstr "Kun med GPS (unøyaktig)"
442442
443443#: qml/Wizard/Pages/50-location.qml:86
444444msgid "Using GPS, anonymized Wi-Fi and cellular network info (recommended)"
445−msgstr ""
445+msgstr "Med GPS, trådløst nettverk og info fra telefonnett (anbefales)"
446446
447447#. TRANSLATORS: HERE is a trademark for Nokia's location service, you probably shouldn't translate it
448448#: qml/Wizard/Pages/50-location.qml:103
@@ -450,81 +450,87 @@ msgid ""
450450"By selecting this option you agree to the Nokia HERE <a href='#'>terms and "
451451"conditions</a>."
452452msgstr ""
453+"Du må samtykke til <a href='#'>brukervilkårene</a> for Nokia HERE for å "
454+"velge dette."
453455
454456#: qml/Wizard/Pages/50-location.qml:112
455457msgid "Not at all"
456−msgstr ""
458+msgstr "Overhodet ikke"
457459
458460#: qml/Wizard/Pages/50-location.qml:124
459461msgid "You can change your mind later in <b>System Settings</b>."
460−msgstr ""
462+msgstr "Du kan ombestemme deg senere via <b>Systeminnstillinger</b>."
461463
462464#: qml/Wizard/Pages/60-reporting.qml:24
463465msgid "Improving your experience"
464−msgstr ""
466+msgstr "Forbedrer opplevelse"
465467
466468#: qml/Wizard/Pages/60-reporting.qml:36
467469msgid ""
468470"Your phone is set up to automatically report errors to Canonical and its "
469471"partners, the makers of the operating system."
470472msgstr ""
473+"Telefonen sender feilrapporter til Canonical (produsenten av Ubuntu) "
474+"automatisk."
471475
472476#: qml/Wizard/Pages/60-reporting.qml:43
473477msgid ""
474478"This can be disabled in <b>System Settings</b> under <b>Security &amp; "
475479"Privacy</b>"
476480msgstr ""
481+"Du kan slå av dette i <b>Systeminnstillinger</b> under <b>Sikkerhet og "
482+"personvern</b>"
477483
478484#: qml/Wizard/Pages/80-finished.qml:24
479485msgid "All done"
480−msgstr ""
486+msgstr "Alt i orden"
481487
482488#: qml/Wizard/Pages/80-finished.qml:39
483489msgid "Nice work!"
484−msgstr ""
490+msgstr "Godt jobba!"
485491
486492#: qml/Wizard/Pages/80-finished.qml:46
487493msgid "Your phone is now ready to use."
488−msgstr ""
494+msgstr "Telefonen er klar til bruk."
489495
490496#: qml/Wizard/Pages/80-finished.qml:53
491497msgid "Finish"
492−msgstr ""
498+msgstr "Fullfør"
493499
494500#: qml/Wizard/Pages/here-terms.qml:27
495501msgid "Terms & Conditions"
496−msgstr ""
502+msgstr "Brukervilkår"
497503
498504#: qml/Wizard/Pages/passwd-confirm.qml:49
499505msgid "Confirm passphrase"
500−msgstr ""
506+msgstr "Bekreft passordfrase"
501507
502508#: qml/Wizard/Pages/passwd-confirm.qml:50
503509msgid "Confirm passcode"
504−msgstr ""
510+msgstr "Bekreft kode"
505511
506512#: qml/Wizard/Pages/passwd-confirm.qml:53
507513#: qml/Wizard/Pages/passwd-confirm.qml:54
508514msgid "Please try again."
509−msgstr ""
515+msgstr "Prøv igjen."
510516
511517#: qml/Wizard/Pages/passwd-set.qml:61
512518msgid "Choose your passcode"
513−msgstr ""
519+msgstr "Velg kode"
514520
515521#: qml/Wizard/Pages/passwd-set.qml:68
516522msgid "Passphrase must be 4 characters long"
517−msgstr ""
523+msgstr "Passordfrasen må bestå av minst 4 tegn"
518524
519525#: qml/Wizard/StackButton.qml:39
520526#, qt-format
521527msgid "〈 %1"
522−msgstr ""
528+msgstr "〈 %1"
523529
524530#: qml/Wizard/StackButton.qml:42
525531#, qt-format
526532msgid "%1 〉"
527−msgstr ""
533+msgstr "%1 〉"
528534
529535#~ msgid "Confirm"
530536#~ msgstr "Bekreft"
po/nl.po+4−4
@@ -8,15 +8,15 @@ msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
1010"POT-Creation-Date: 2014-12-10 10:55+0100\n"
11−"PO-Revision-Date: 2015-01-13 20:27+0000\n"
11+"PO-Revision-Date: 2015-01-17 11:13+0000\n"
1212"Last-Translator: rob <linuxned@gmail.com>\n"
1313"Language-Team: Dutch <nl@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
1717"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2015-01-14 06:48+0000\n"
19−"X-Generator: Launchpad (build 17298)\n"
18+"X-Launchpad-Export-Date: 2015-01-18 05:03+0000\n"
19+"X-Generator: Launchpad (build 17304)\n"
2020
2121#: plugins/LightDM/Greeter.cpp:130
2222msgid "Password: "
@@ -235,7 +235,7 @@ msgstr "Beheren"
235235
236236#: qml/Dash/ScopesList.qml:107
237237msgid "Home"
238−msgstr ""
238+msgstr "Thuis"
239239
240240#: qml/Dash/ScopesList.qml:108
241241msgid "Also installed"
po/pt.po+30−29
@@ -8,15 +8,15 @@ msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
1010"POT-Creation-Date: 2014-12-10 10:55+0100\n"
11−"PO-Revision-Date: 2014-11-06 10:25+0000\n"
12−"Last-Translator: Ivo Xavier <ivofernandes12@gmail.com>\n"
11+"PO-Revision-Date: 2015-01-20 21:11+0000\n"
12+"Last-Translator: Filipe André Pinho <Unknown>\n"
1313"Language-Team: Portuguese <pt@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
1717"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2014-12-13 07:11+0000\n"
19−"X-Generator: Launchpad (build 17286)\n"
18+"X-Launchpad-Export-Date: 2015-01-21 06:43+0000\n"
19+"X-Generator: Launchpad (build 17306)\n"
2020
2121#: plugins/LightDM/Greeter.cpp:130
2222msgid "Password: "
@@ -229,15 +229,15 @@ msgstr "Solte para atualizar..."
229229
230230#: qml/Dash/ScopesList.qml:63
231231msgid "Manage"
232−msgstr ""
232+msgstr "Gerir"
233233
234234#: qml/Dash/ScopesList.qml:107
235235msgid "Home"
236−msgstr ""
236+msgstr "Página inicial"
237237
238238#: qml/Dash/ScopesList.qml:108
239239msgid "Also installed"
240−msgstr ""
240+msgstr "Também instalado"
241241
242242#: qml/Greeter/Greeter.qml:174
243243msgid "Unlock"
@@ -351,38 +351,39 @@ msgstr ""
351351
352352#: qml/Wizard/Page.qml:89
353353msgid "Back"
354−msgstr ""
354+msgstr "Anterior"
355355
356356#: qml/Wizard/Pages/10-welcome.qml:27
357357msgid "Hi!"
358−msgstr ""
358+msgstr "Olá!"
359359
360360#: qml/Wizard/Pages/10-welcome.qml:44
361361msgid "Welcome to your Ubuntu phone."
362−msgstr ""
362+msgstr "Bem-vindo ao seu telemóvel Ubuntu."
363363
364364#: qml/Wizard/Pages/10-welcome.qml:52
365365msgid "Let’s get started."
366−msgstr ""
366+msgstr "Vamos começar!"
367367
368368#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
369369#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
370370#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
371371#: qml/Wizard/Pages/passwd-set.qml:90
372372msgid "Continue"
373−msgstr ""
373+msgstr "Avançar"
374374
375375#: qml/Wizard/Pages/20-sim.qml:25
376376msgid "Add a SIM card and restart your device"
377−msgstr ""
377+msgstr "Adicione o cartão SIM e reinicie o seu dispositivo"
378378
379379#: qml/Wizard/Pages/20-sim.qml:55
380380msgid "Without it, you won’t be able to make calls or use text messaging."
381381msgstr ""
382+"Sem o cartão SIM, não poderá fazer chamadas ou enviar mensagens de texto."
382383
383384#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
384385msgid "Skip"
385−msgstr ""
386+msgstr "Ignorar"
386387
387388#: qml/Wizard/Pages/30-passwd-type.qml:39
388389msgid "Lock security"
@@ -390,7 +391,7 @@ msgstr ""
390391
391392#: qml/Wizard/Pages/30-passwd-type.qml:74
392393msgid "Please select how you’d like to unlock your phone."
393−msgstr ""
394+msgstr "Por favor, escolha como pretende desbloquear o seu telemóvel."
394395
395396#: qml/Wizard/Pages/30-passwd-type.qml:97
396397msgid "Swipe"
@@ -398,7 +399,7 @@ msgstr ""
398399
399400#: qml/Wizard/Pages/30-passwd-type.qml:98
400401msgid "No security"
401−msgstr ""
402+msgstr "Sem segurança"
402403
403404#: qml/Wizard/Pages/30-passwd-type.qml:100
404405msgid "Passcode"
@@ -406,7 +407,7 @@ msgstr ""
406407
407408#: qml/Wizard/Pages/30-passwd-type.qml:101
408409msgid "4 digits only"
409−msgstr ""
410+msgstr "4 dígitos"
410411
411412#: qml/Wizard/Pages/30-passwd-type.qml:103
412413msgid "Passphrase"
@@ -414,31 +415,31 @@ msgstr ""
414415
415416#: qml/Wizard/Pages/30-passwd-type.qml:104
416417msgid "Numbers and letters"
417−msgstr ""
418+msgstr "Números e letras"
418419
419420#: qml/Wizard/Pages/40-wifi.qml:28
420421msgid "Connect to Wi‑Fi"
421−msgstr ""
422+msgstr "Ligar ao Wi-Fi"
422423
423424#: qml/Wizard/Pages/40-wifi.qml:147
424425msgid "Available networks…"
425−msgstr ""
426+msgstr "Redes disponíveis..."
426427
427428#: qml/Wizard/Pages/40-wifi.qml:148
428429msgid "No available networks."
429−msgstr ""
430+msgstr "Sem redes disponíveis."
430431
431432#: qml/Wizard/Pages/50-location.qml:27
432433msgid "Location"
433−msgstr ""
434+msgstr "Localização"
434435
435436#: qml/Wizard/Pages/50-location.qml:62
436437msgid "Let the phone detect your location:"
437−msgstr ""
438+msgstr "Deixe o telefone detectar a sua localização:"
438439
439440#: qml/Wizard/Pages/50-location.qml:69
440441msgid "Using GPS only (less accurate)"
441−msgstr ""
442+msgstr "Usar apenas GPS (menos preciso)"
442443
443444#: qml/Wizard/Pages/50-location.qml:86
444445msgid "Using GPS, anonymized Wi-Fi and cellular network info (recommended)"
@@ -461,7 +462,7 @@ msgstr ""
461462
462463#: qml/Wizard/Pages/60-reporting.qml:24
463464msgid "Improving your experience"
464−msgstr ""
465+msgstr "Melhore a sua experiência"
465466
466467#: qml/Wizard/Pages/60-reporting.qml:36
467468msgid ""
@@ -481,7 +482,7 @@ msgstr ""
481482
482483#: qml/Wizard/Pages/80-finished.qml:39
483484msgid "Nice work!"
484−msgstr ""
485+msgstr "Bom trabalho!"
485486
486487#: qml/Wizard/Pages/80-finished.qml:46
487488msgid "Your phone is now ready to use."
@@ -489,7 +490,7 @@ msgstr ""
489490
490491#: qml/Wizard/Pages/80-finished.qml:53
491492msgid "Finish"
492−msgstr ""
493+msgstr "Concluir"
493494
494495#: qml/Wizard/Pages/here-terms.qml:27
495496msgid "Terms & Conditions"
@@ -506,7 +507,7 @@ msgstr ""
506507#: qml/Wizard/Pages/passwd-confirm.qml:53
507508#: qml/Wizard/Pages/passwd-confirm.qml:54
508509msgid "Please try again."
509−msgstr ""
510+msgstr "Por favor, tente novamente."
510511
511512#: qml/Wizard/Pages/passwd-set.qml:61
512513msgid "Choose your passcode"
@@ -519,7 +520,7 @@ msgstr ""
519520#: qml/Wizard/StackButton.qml:39
520521#, qt-format
521522msgid "〈 %1"
522−msgstr ""
523+msgstr "〈 %1"
523524
524525#: qml/Wizard/StackButton.qml:42
525526#, qt-format
po/sl.po+51−43
@@ -8,7 +8,7 @@ msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
1010"POT-Creation-Date: 2014-12-10 10:55+0100\n"
11−"PO-Revision-Date: 2014-11-05 09:41+0000\n"
11+"PO-Revision-Date: 2015-01-18 10:10+0000\n"
1212"Last-Translator: Damir Jerovšek <Unknown>\n"
1313"Language-Team: Slovenian <sl@li.org>\n"
1414"MIME-Version: 1.0\n"
@@ -16,8 +16,8 @@ msgstr ""
1616"Content-Transfer-Encoding: 8bit\n"
1717"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || "
1818"n%100==4 ? 3 : 0);\n"
19−"X-Launchpad-Export-Date: 2014-12-13 07:11+0000\n"
20−"X-Generator: Launchpad (build 17286)\n"
19+"X-Launchpad-Export-Date: 2015-01-19 06:29+0000\n"
20+"X-Generator: Launchpad (build 17304)\n"
2121
2222#: plugins/LightDM/Greeter.cpp:130
2323msgid "Password: "
@@ -232,15 +232,15 @@ msgstr "Spustite za osvežitev ..."
232232
233233#: qml/Dash/ScopesList.qml:63
234234msgid "Manage"
235−msgstr ""
235+msgstr "Upravljaj"
236236
237237#: qml/Dash/ScopesList.qml:107
238238msgid "Home"
239−msgstr ""
239+msgstr "Domov"
240240
241241#: qml/Dash/ScopesList.qml:108
242242msgid "Also installed"
243−msgstr ""
243+msgstr "Tudi nameščeno"
244244
245245#: qml/Greeter/Greeter.qml:174
246246msgid "Unlock"
@@ -354,98 +354,100 @@ msgstr ""
354354
355355#: qml/Wizard/Page.qml:89
356356msgid "Back"
357−msgstr ""
357+msgstr "Nazaj"
358358
359359#: qml/Wizard/Pages/10-welcome.qml:27
360360msgid "Hi!"
361−msgstr ""
361+msgstr "Živjo!"
362362
363363#: qml/Wizard/Pages/10-welcome.qml:44
364364msgid "Welcome to your Ubuntu phone."
365−msgstr ""
365+msgstr "Dobrodošli v svoj telefon Ubuntu."
366366
367367#: qml/Wizard/Pages/10-welcome.qml:52
368368msgid "Let’s get started."
369−msgstr ""
369+msgstr "Pa začnimo."
370370
371371#: qml/Wizard/Pages/10-welcome.qml:88 qml/Wizard/Pages/30-passwd-type.qml:128
372372#: qml/Wizard/Pages/40-wifi.qml:197 qml/Wizard/Pages/50-location.qml:131
373373#: qml/Wizard/Pages/60-reporting.qml:50 qml/Wizard/Pages/passwd-confirm.qml:82
374374#: qml/Wizard/Pages/passwd-set.qml:90
375375msgid "Continue"
376−msgstr ""
376+msgstr "Nadaljuj"
377377
378378#: qml/Wizard/Pages/20-sim.qml:25
379379msgid "Add a SIM card and restart your device"
380−msgstr ""
380+msgstr "Dodajte kartico SIM in ponovno zaženite napravo"
381381
382382#: qml/Wizard/Pages/20-sim.qml:55
383383msgid "Without it, you won’t be able to make calls or use text messaging."
384−msgstr ""
384+msgstr "Brez nje ne bo mogoče opravljati klicev ali besedilnih sporočil."
385385
386386#: qml/Wizard/Pages/20-sim.qml:69 qml/Wizard/Pages/40-wifi.qml:197
387387msgid "Skip"
388−msgstr ""
388+msgstr "Preskoči"
389389
390390#: qml/Wizard/Pages/30-passwd-type.qml:39
391391msgid "Lock security"
392−msgstr ""
392+msgstr "Varnost zaklepa"
393393
394394#: qml/Wizard/Pages/30-passwd-type.qml:74
395395msgid "Please select how you’d like to unlock your phone."
396−msgstr ""
396+msgstr "Izberite, kako želite odkleniti svoj telefon."
397397
398398#: qml/Wizard/Pages/30-passwd-type.qml:97
399399msgid "Swipe"
400−msgstr ""
400+msgstr "Poteg"
401401
402402#: qml/Wizard/Pages/30-passwd-type.qml:98
403403msgid "No security"
404−msgstr ""
404+msgstr "Brez varnosti"
405405
406406#: qml/Wizard/Pages/30-passwd-type.qml:100
407407msgid "Passcode"
408−msgstr ""
408+msgstr "Geslo"
409409
410410#: qml/Wizard/Pages/30-passwd-type.qml:101
411411msgid "4 digits only"
412−msgstr ""
412+msgstr "Samo 4 številke"
413413
414414#: qml/Wizard/Pages/30-passwd-type.qml:103
415415msgid "Passphrase"
416−msgstr ""
416+msgstr "Šifrirno reklo"
417417
418418#: qml/Wizard/Pages/30-passwd-type.qml:104
419419msgid "Numbers and letters"
420−msgstr ""
420+msgstr "Številke in črke"
421421
422422#: qml/Wizard/Pages/40-wifi.qml:28
423423msgid "Connect to Wi‑Fi"
424−msgstr ""
424+msgstr "Poveži se z Wi-Fi-jem"
425425
426426#: qml/Wizard/Pages/40-wifi.qml:147
427427msgid "Available networks…"
428−msgstr ""
428+msgstr "Razpoložljiva omrežja ..."
429429
430430#: qml/Wizard/Pages/40-wifi.qml:148
431431msgid "No available networks."
432−msgstr ""
432+msgstr "Ni razpoložljivih omrežij."
433433
434434#: qml/Wizard/Pages/50-location.qml:27
435435msgid "Location"
436−msgstr ""
436+msgstr "Položaj"
437437
438438#: qml/Wizard/Pages/50-location.qml:62
439439msgid "Let the phone detect your location:"
440−msgstr ""
440+msgstr "Naj telefon zazna vaš položaj:"
441441
442442#: qml/Wizard/Pages/50-location.qml:69
443443msgid "Using GPS only (less accurate)"
444−msgstr ""
444+msgstr "Uporaba samo GPS-a (manj natančno)"
445445
446446#: qml/Wizard/Pages/50-location.qml:86
447447msgid "Using GPS, anonymized Wi-Fi and cellular network info (recommended)"
448448msgstr ""
449+"Uporaba GPS-a z brezimnim Wi-Fi-jem ter podatki mobilnega omrežja "
450+"(priporočljivo)"
449451
450452#. TRANSLATORS: HERE is a trademark for Nokia's location service, you probably shouldn't translate it
451453#: qml/Wizard/Pages/50-location.qml:103
@@ -453,81 +455,87 @@ msgid ""
453455"By selecting this option you agree to the Nokia HERE <a href='#'>terms and "
454456"conditions</a>."
455457msgstr ""
458+"Z izbiro te možnosti se strinjate s <a href='#'>pogoji ter pravili</a> Nokia "
459+"HERE."
456460
457461#: qml/Wizard/Pages/50-location.qml:112
458462msgid "Not at all"
459−msgstr ""
463+msgstr "Sploh ne"
460464
461465#: qml/Wizard/Pages/50-location.qml:124
462466msgid "You can change your mind later in <b>System Settings</b>."
463−msgstr ""
467+msgstr "Premislite si lahko kasneje v <b>Sistemskih nastavitvah</b>."
464468
465469#: qml/Wizard/Pages/60-reporting.qml:24
466470msgid "Improving your experience"
467−msgstr ""
471+msgstr "Izboljševanje vaše izkušnje"
468472
469473#: qml/Wizard/Pages/60-reporting.qml:36
470474msgid ""
471475"Your phone is set up to automatically report errors to Canonical and its "
472476"partners, the makers of the operating system."
473477msgstr ""
478+"Vaš telefon je nastavljen, da samodejno poroča napake Canonicalu in njegovim "
479+"partnerjem, ustvarjalcem operacijskega sistema."
474480
475481#: qml/Wizard/Pages/60-reporting.qml:43
476482msgid ""
477483"This can be disabled in <b>System Settings</b> under <b>Security &amp; "
478484"Privacy</b>"
479485msgstr ""
486+"To je možno onemogočiti v <b>Sistemskih nastavitvah</b> pod <b>Varnost "
487+"&amp; Zasebnost</b>"
480488
481489#: qml/Wizard/Pages/80-finished.qml:24
482490msgid "All done"
483−msgstr ""
491+msgstr "Opravljeno"
484492
485493#: qml/Wizard/Pages/80-finished.qml:39
486494msgid "Nice work!"
487−msgstr ""
495+msgstr "Odlično!"
488496
489497#: qml/Wizard/Pages/80-finished.qml:46
490498msgid "Your phone is now ready to use."
491−msgstr ""
499+msgstr "Vaš telefon je sedaj pripravljen za uporabo."
492500
493501#: qml/Wizard/Pages/80-finished.qml:53
494502msgid "Finish"
495−msgstr ""
503+msgstr "Dokončaj"
496504
497505#: qml/Wizard/Pages/here-terms.qml:27
498506msgid "Terms & Conditions"
499−msgstr ""
507+msgstr "Pogoji uporabe"
500508
501509#: qml/Wizard/Pages/passwd-confirm.qml:49
502510msgid "Confirm passphrase"
503−msgstr ""
511+msgstr "Potrdite šifrirno reklo"
504512
505513#: qml/Wizard/Pages/passwd-confirm.qml:50
506514msgid "Confirm passcode"
507−msgstr ""
515+msgstr "Potrdite geslo"
508516
509517#: qml/Wizard/Pages/passwd-confirm.qml:53
510518#: qml/Wizard/Pages/passwd-confirm.qml:54
511519msgid "Please try again."
512−msgstr ""
520+msgstr "Poskusite znova."
513521
514522#: qml/Wizard/Pages/passwd-set.qml:61
515523msgid "Choose your passcode"
516−msgstr ""
524+msgstr "Izberite svoje geslo"
517525
518526#: qml/Wizard/Pages/passwd-set.qml:68
519527msgid "Passphrase must be 4 characters long"
520−msgstr ""
528+msgstr "Šifrirno reklo mora biti dolgo vsaj 4 znake"
521529
522530#: qml/Wizard/StackButton.qml:39
523531#, qt-format
524532msgid "〈 %1"
525−msgstr ""
533+msgstr "〈 %1"
526534
527535#: qml/Wizard/StackButton.qml:42
528536#, qt-format
529537msgid "%1 〉"
530−msgstr ""
538+msgstr "%1 〉"
531539
532540#~ msgid "Confirm"
533541#~ msgstr "Potrdi"
qml/Dash/Dash.qml+2−2
@@ -304,8 +304,8 @@ Showable {
304304 Image {
305305 source: "graphics/overview_hint.png"
306306 anchors.horizontalCenter: parent.horizontalCenter
307− opacity: (scopeItem.scope ? scopeItem.pageHeaderTotallyVisible : scopes.count == 0 || dashContent.pageHeaderTotallyVisible) &&
308− (overviewDragHandle.enabled || bottomEdgeController.progress != 0) ? 1 : 0
307+ opacity: !scopeItem.scope && (scopes.count == 0 || dashContent.pageHeaderTotallyVisible) &&
308+ (overviewDragHandle.enabled || overviewDragHandle.status.progress != 0) ? 1 : 0
309309 Behavior on opacity {
310310 enabled: bottomEdgeController.progress == 0
311311 UbuntuNumberAnimation {}
qml/Dash/GenericScopeView.qml+30−2
@@ -41,6 +41,7 @@ FocusScope {
4141 property bool visibleToParent: false
4242 property alias pageHeaderTotallyVisible: categoryView.pageHeaderTotallyVisible
4343 property var holdingList: null
44+ property bool wasCurrentOnMoveStart: false
4445
4546 property var scopeStyle: ScopeStyle {
4647 style: scope ? scope.customizations : {}
@@ -116,6 +117,9 @@ FocusScope {
116117 }
117118
118119 onIsCurrentChanged: {
120+ if (!holdingList || !holdingList.moving) {
121+ wasCurrentOnMoveStart = scopeView.isCurrent;
122+ }
119123 if (pageHeaderLoader.item && showPageHeader) {
120124 pageHeaderLoader.item.resetSearch();
121125 }
@@ -142,6 +146,15 @@ FocusScope {
142146 onHideDash: subPageLoader.closeSubPage()
143147 }
144148
149+ Connections {
150+ target: holdingList
151+ onMovingChanged: {
152+ if (!moving) {
153+ wasCurrentOnMoveStart = scopeView.isCurrent;
154+ }
155+ }
156+ }
157+
145158 Rectangle {
146159 anchors.fill: parent
147160 color: scopeView.scopeStyle ? scopeView.scopeStyle.background : "transparent"
@@ -367,7 +380,11 @@ FocusScope {
367380
368381 function updateRanges() {
369382 // 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
371388 if (holdingList && holdingList.moving && !scopeView.visibleToParent) {
372389 return;
373390 }
@@ -412,7 +429,18 @@ FocusScope {
412429 if (scopeView.isCurrent || scopeView.visibleToParent) {
413430 item.displayMarginBeginning = displayMarginBeginning;
414431 item.displayMarginEnd = displayMarginEnd;
415− item.cacheBuffer = scopeView.isCurrent ? categoryView.height * 1.5 : 0;
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 {
442+ item.cacheBuffer = categoryView.height * 1.5;
443+ }
416444 } else {
417445 var visibleRange = baseItem.height + displayMarginEnd + displayMarginBeginning;
418446 if (visibleRange < 0) {
src/libunity8-private/abstractdbusservicemonitor.cpp+21−8
@@ -32,19 +32,20 @@ AbstractDBusServiceMonitor::AbstractDBusServiceMonitor(const QString &service, c
3232 , m_service(service)
3333 , m_path(path)
3434 , m_interface(interface)
35+ , m_bus(bus)
3536 , m_watcher(new QDBusServiceWatcher(service,
3637 (bus == SystemBus) ? QDBusConnection::systemBus()
3738 : QDBusConnection::sessionBus()))
3839 , m_dbusInterface(nullptr)
3940{
40− connect(m_watcher, &QDBusServiceWatcher::serviceRegistered, this, &AbstractDBusServiceMonitor::createInterface);
41− connect(m_watcher, &QDBusServiceWatcher::serviceUnregistered, this, &AbstractDBusServiceMonitor::destroyInterface);
41+ connect(m_watcher, &QDBusServiceWatcher::serviceRegistered, this, &AbstractDBusServiceMonitor::onServiceRegistered);
42+ connect(m_watcher, &QDBusServiceWatcher::serviceUnregistered, this, &AbstractDBusServiceMonitor::onServiceUnregistered);
4243
4344 // Connect to the service if it's up already
4445 QDBusConnectionInterface* sessionBus = QDBusConnection::sessionBus().interface();
4546 QDBusReply<bool> reply = sessionBus->isServiceRegistered(m_service);
4647 if (reply.isValid() && reply.value()) {
47− createInterface(m_service);
48+ onServiceRegistered(m_service);
4849 }
4950}
5051
@@ -54,19 +55,31 @@ AbstractDBusServiceMonitor::~AbstractDBusServiceMonitor()
5455 delete m_dbusInterface;
5556}
5657
57−void AbstractDBusServiceMonitor::createInterface(const QString &)
58+void AbstractDBusServiceMonitor::onServiceRegistered(const QString &)
5859{
5960 if (m_dbusInterface != nullptr) {
6061 delete m_dbusInterface;
6162 m_dbusInterface = nullptr;
6263 }
6364
64− m_dbusInterface = new QDBusInterface(m_service, m_path, m_interface,
65− QDBusConnection::sessionBus());
65+ m_dbusInterface = createInterface(m_service, m_path, m_interface,
66+ (m_bus == SystemBus) ? QDBusConnection::systemBus()
67+ : QDBusConnection::sessionBus());
6668 Q_EMIT serviceAvailableChanged(true);
6769}
6870
69−void AbstractDBusServiceMonitor::destroyInterface(const QString &)
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+
82+void AbstractDBusServiceMonitor::onServiceUnregistered(const QString &)
7083{
7184 if (m_dbusInterface != nullptr) {
7285 delete m_dbusInterface;
@@ -76,7 +89,7 @@ void AbstractDBusServiceMonitor::destroyInterface(const QString &)
7689 Q_EMIT serviceAvailableChanged(false);
7790}
7891
79−QDBusInterface* AbstractDBusServiceMonitor::dbusInterface() const
92+QDBusAbstractInterface* AbstractDBusServiceMonitor::dbusInterface() const
8093{
8194 return m_dbusInterface;
8295}
src/libunity8-private/abstractdbusservicemonitor.h+9−5
@@ -24,7 +24,7 @@
2424#include <QString>
2525#include <QDBusConnection>
2626
27−class QDBusInterface;
27+class QDBusAbstractInterface;
2828class QDBusServiceWatcher;
2929
3030class Q_DECL_EXPORT AbstractDBusServiceMonitor : public QObject
@@ -44,7 +44,7 @@ public:
4444 QObject *parent = 0);
4545 ~AbstractDBusServiceMonitor();
4646
47− QDBusInterface* dbusInterface() const;
47+ QDBusAbstractInterface* dbusInterface() const;
4848
4949 bool serviceAvailable() const;
5050
@@ -52,15 +52,19 @@ Q_SIGNALS:
5252 void serviceAvailableChanged(bool available);
5353
5454private Q_SLOTS:
55− void createInterface(const QString &service);
56− void destroyInterface(const QString &service);
55+ void onServiceRegistered(const QString &service);
56+ void onServiceUnregistered(const QString &service);
5757
5858protected:
59+ virtual QDBusAbstractInterface* createInterface(const QString &service, const QString &path,
60+ const QString &interface, const QDBusConnection &connection);
61+
5962 const QString m_service;
6063 const QString m_path;
6164 const QString m_interface;
65+ const Bus m_bus;
6266 QDBusServiceWatcher* m_watcher;
63− QDBusInterface* m_dbusInterface;
67+ QDBusAbstractInterface* m_dbusInterface;
6468};
6569
6670#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
3131class EdgesDemoTestCase(tests.UnityTestCase):
3232
3333 def setUp(self):
34− super().setUp()
34+ super(EdgesDemoTestCase, self).setUp()
3535 self._qml_mock_enabled = False
3636 self._data_dirs_mock_enabled = False
3737 self._lightdm_mock_type = False
tests/mocks/LightDM/demo/CMakeLists.txt+1
@@ -28,6 +28,7 @@ target_link_libraries(MockLightDM-demo-shared
2828qt5_use_modules(MockLightDM-demo Concurrent Gui)
2929qt5_use_modules(MockLightDM-demo-shared Concurrent Gui)
3030
31+set_target_properties(MockLightDM-demo PROPERTIES COMPILE_FLAGS -fPIC)
3132set_target_properties(MockLightDM-demo-shared PROPERTIES
3233 OUTPUT_NAME lightdm-qt5-2)
3334
tests/qmltests/Dash/tst_Card.qml+2−2
@@ -61,7 +61,7 @@ Rectangle {
6161 },
6262 {
6363 "name": "Art, header, summary - horizontal",
64− "layout": { "template": { "card-layout": "horizontal" },
64+ "layout": { "template": { "card-layout": "horizontal", "card-background": { "type": "gradient", "elements": ["grey", "white"] } },
6565 "components": JSON.parse(Helpers.fullMapping) }
6666 },
6767 {
@@ -407,7 +407,7 @@ Rectangle {
407407 return [
408408 { tag: "Art and summary", visible: true, color: "#ffffff", index: 0 },
409409 { tag: "No Summary", visible: false, index: 6 },
410− { tag: "Horizontal", visible: false, index: 5 },
410+ { tag: "Horizontal", visible: true, color: "#808080", index: 5 },
411411 { tag: "Grey background", visible: true, color: "#808080", index: 10 },
412412 { tag: "Overriden Gradient background", visible: true, color: "#808080", gradientColor: "#ffffff",
413413 background: {type: "color", elements: ["grey", "white"]}, index: 10 },
tests/qmltests/Dash/tst_DashContent.qml+57
@@ -537,5 +537,62 @@ Item {
537537
538538 compare(categoryListView.pageHeader.item.searchHint, "Search People");
539539 }
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+ }
540597 }
541598}
tests/utils/modules/Unity/Test/UnityTestCase.qml+17−69
@@ -37,6 +37,7 @@ TestCase {
3737 this.getCurrentTimeMs = function() {return this.currentTimeMs}
3838 }
3939
40+ // TODO This function can be removed altogether once we use Qt 5.5 which has the same feature
4041 function mouseClick(item, x, y, button, modifiers, delay) {
4142 if (button === undefined)
4243 button = Qt.LeftButton;
@@ -52,6 +53,7 @@ TestCase {
5253 qtest_fail("window not shown", 2);
5354 }
5455
56+ // TODO This function can be removed altogether once we use Qt 5.5 which has the same feature
5557 function mouseDoubleClick(item, x, y, button, modifiers, delay) {
5658 if (button === undefined)
5759 button = Qt.LeftButton;
@@ -67,6 +69,7 @@ TestCase {
6769 qtest_fail("window not shown", 2)
6870 }
6971
72+ // TODO This function can be removed altogether once we use Qt 5.5 which has the same feature
7073 function mousePress(item, x, y, button, modifiers, delay) {
7174 if (button === undefined)
7275 button = Qt.LeftButton;
@@ -82,6 +85,7 @@ TestCase {
8285 qtest_fail("window not shown", 2)
8386 }
8487
88+ // TODO This function can be removed altogether once we use Qt 5.5 which has the same feature
8589 function mouseRelease(item, x, y, button, modifiers, delay) {
8690 if (button === undefined)
8791 button = Qt.LeftButton;
@@ -170,78 +174,22 @@ TestCase {
170174 return null;
171175 }
172176
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+
173189 // 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.
177190 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− }
243191 for (var i = 0; i < str.length; i++) {
244− keyClick(keyMap[str[i]])
192+ keyClick(str[i])
245193 }
246194 }
247195