on xenial help sign in
Merge trunk.
commitc4868974f7ef246658dd67388f6c35dd4d8e2759 authorMichał Sawicz <michal.sawicz@canonical.com> dateTue 24 Jun 2014, 19:04 (12 years ago) parent0c789dead0a13f
156 files changed+4982−2405
cmake/modules/QmlTest.cmake+4−4 data/unity8-greeter-logrotate.conf+14 debian/changelog+173 debian/control+3−1 plugins/Dash/CardCreator.js+21−14 plugins/Dash/abstractdashview.cpp+3 plugins/Dash/listviewwithpageheader.cpp+64−33 plugins/Dash/listviewwithpageheader.h+12−5 plugins/Unity/CMakeLists.txt+1 plugins/Unity/Launcher/launchermodel.cpp+22 plugins/Unity/Launcher/launchermodel.h+1 plugins/Unity/Session/CMakeLists.txt+17 plugins/Unity/Session/dbusunitysessionservice.cpp+46 plugins/Unity/Session/dbusunitysessionservice.h+82 plugins/Unity/Session/plugin.cpp+40 plugins/Unity/Session/plugin.h+34 plugins/Unity/Session/qmldir+3 po/am.po+33−26 po/ar.po+36−29 po/ast.po+33−26 po/az.po+33−26 po/bg.po+33−26 po/br.po+68−54 po/bs.po+33−26 po/ca.po+40−31 po/ckb.po+33−26 po/cs.po+33−26 po/da.po+33−26 po/de.po+46−36 po/el.po+33−26 po/en_AU.po+33−26 po/en_GB.po+33−26 po/eo.po+33−26 po/es.po+37−30 po/eu.po+33−26 po/fa.po+33−26 po/fi.po+34−27 po/fo.po+33−26 po/fr.po+35−28 po/gd.po+33−26 po/gl.po+37−30 po/he.po+34−27 po/hi.po+33−26 po/hr.po+33−26 po/hu.po+33−26 po/hy.po+33−26 po/id.po+33−26 po/is.po+33−26 po/it.po+44−35 po/ja.po+33−26 po/km.po+33−26 po/kn.po+33−26 po/ko.po+33−26 po/ky.po+33−26 po/lo.po+33−26 po/lt.po+33−26 po/lv.po+36−29 po/ml.po+33−26 po/mr.po+33−26 po/ms.po+33−26 po/my.po+33−26 po/nb.po+35−28 po/nl.po+33−26 po/pl.po+44−35 po/pt.po+33−26 po/pt_BR.po+33−26 po/ro.po+33−26 po/ru.po+33−26 po/shn.po+33−26 po/si.po+33−26 po/sl.po+36−29 po/sq.po+33−26 po/sr.po+33−26 po/sv.po+49−42 po/sw.po+33−26 po/ta.po+33−26 po/te.po+33−26 po/tr.po+33−26 po/ug.po+40−33 po/uk.po+34−27 po/unity8.pot+31−24 po/vi.po+33−26 po/xh.po+33−26 po/zh_CN.po+35−28 po/zh_HK.po+33−26 po/zh_TW.po+33−26 qml/Greeter/Lockscreen.qml → qml/Components/Lockscreen.qml+91−8 qml/Components/PageHeader.qml+15−3 qml/Greeter/PassphraseLockscreen.qml → qml/Components/PassphraseLockscreen.qml+6−2 qml/Greeter/PinLockscreen.qml → qml/Components/PinLockscreen.qml+30−12 qml/Components/PinPadButton.qml+2−1 qml/Components/ResponsiveVerticalJournal.qml+74 qml/Dash/CardCarousel.qml+1−3 qml/Dash/CardFilterGrid.qml+1−4 qml/Dash/CardVerticalJournal.qml+89 qml/Dash/DashContent.qml+9−1 qml/Dash/DashDepartments.qml+202 qml/Dash/DashDepartmentsList.qml+195 qml/Dash/DashRenderer.qml−7 qml/Dash/GenericScopeView.qml+13−3 qml/Dash/PreviewListView.qml+1−1 qml/Dash/Previews/PreviewHeader.qml+3 qml/Dash/ScopeItem.qml+12 qml/Dash/graphics/tick@30.png qml/Greeter/LoginList.qml+1 qml/Notifications/Notification.qml+13 qml/Notifications/NotificationMenuItemFactory.qml−1 qml/Panel/Panel.qml+1−1 qml/Shell.qml+31−11 tests/mocks/Unity/iconutils.h → qml/Stages/Dot.qml+9−13 qml/Stages/PhoneStage.qml+5−2 qml/Stages/StageWithSideStage.qml+8−2 qml/Stages/WaitingDots.qml+76 src/main.cpp+1 tests/autopilot/unity8/shell/emulators/main_window.py−4 tests/mocks/Unity/CMakeLists.txt+2−1 tests/mocks/Unity/Launcher/MockLauncherModel.cpp+5 tests/mocks/Unity/Launcher/MockLauncherModel.h+1 tests/mocks/Unity/fake_categories.cpp+5−1 tests/mocks/Unity/fake_department.cpp+127 tests/mocks/Unity/fake_department.h+61 tests/mocks/Unity/fake_scope.cpp+36−1 tests/mocks/Unity/fake_scope.h+6 tests/mocks/Unity/fake_scopes.cpp+2−6 tests/mocks/Unity/fake_unity_plugin.cpp+2 tests/mocks/Unity/iconutils.cpp−124 tests/plugins/Dash/cardcreator/1.res+16−11 tests/plugins/Dash/cardcreator/2.res+3−2 tests/plugins/Dash/cardcreator/3.res+22−17 tests/plugins/Dash/cardcreator/4.res+3−2 tests/plugins/Dash/cardcreator/5.res+23−18 tests/plugins/Dash/horizontaljournaltry.qml+23−2 tests/plugins/Dash/listviewwithpageheadersectionexternalmodeltest.cpp+3−3 tests/plugins/Dash/listviewwithpageheadersectiontest.cpp+11−5 tests/plugins/Dash/organicgridtest.cpp+5 tests/plugins/Dash/organicgridtry.qml+22−2 tests/plugins/Dash/verticaljournaltry.qml+23−2 tests/plugins/Unity/CMakeLists.txt+1 tests/plugins/Unity/Launcher/CMakeLists.txt+1−1 tests/plugins/Unity/Launcher/launchermodeltest.cpp+9 tests/plugins/Unity/Session/CMakeLists.txt+20 tests/plugins/Unity/Session/sessionbackendtest.cpp+64 tests/qmltests/CMakeLists.txt+39−48 tests/qmltests/Components/tst_LazyImage.qml+1−1 tests/qmltests/Components/tst_ResponsiveVerticalJournal.qml+183 tests/qmltests/Components/tst_ZoomableImage.qml+21−19 tests/qmltests/Dash/Previews/tst_PreviewHeader.qml+12−7 tests/qmltests/Dash/Previews/tst_PreviewZoomableImage.qml+7−5 tests/qmltests/Dash/tst_Card.qml+9 tests/qmltests/Dash/tst_DashContent.qml+143−17 tests/qmltests/Dash/tst_GenericScopeView.qml+1 tests/qmltests/Greeter/tst_Lockscreen.qml+209−31 tests/qmltests/Greeter/tst_Tablet.qml → tests/qmltests/Greeter/tst_MultiGreeter.qml+1−1 tests/qmltests/Greeter/tst_Phone.qml → tests/qmltests/Greeter/tst_SingleGreeter.qml+1−19 tests/qmltests/Notifications/tst_Notifications.qml+29−12 tests/qmltests/tst_Shell.qml−9
cmake/modules/QmlTest.cmake+4−4
@@ -51,7 +51,7 @@ macro(add_manual_qml_test SUBPATH COMPONENT_NAME)
5151
5252 set(qmlscene_command
5353 env ${qmltest_ENVIRONMENT}
54− ${qmlscene_exe} ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
54+ ${qmlscene_exe} -qmljsdebugger=port:3768 ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
5555 ${qmlscene_imports}
5656 )
5757 add_custom_target(${qmlscene_TARGET} ${qmlscene_command})
@@ -111,9 +111,9 @@ macro(add_qml_test_internal SUBPATH COMPONENT_NAME ITERATIONS)
111111 -o -,txt
112112 ${function_ARGS}
113113 )
114− find_program( HAVE_GCC gcc )
115− if (NOT ${HAVE_GCC} STREQUAL "")
116− exec_program( gcc ARGS "-dumpmachine" OUTPUT_VARIABLE ARCH_TRIPLET )
114+ find_program(DPKG dpkg-architecture)
115+ if(DPKG)
116+ exec_program(${DPKG} ARGS "-qDEB_BUILD_MULTIARCH" OUTPUT_VARIABLE ARCH_TRIPLET )
117117 set(LD_PRELOAD_PATH "LD_PRELOAD=/usr/lib/${ARCH_TRIPLET}/mesa/libGL.so.1")
118118 endif()
119119 set(qmltest_xvfb_command
data/unity8-greeter-logrotate.confnew file+14
@@ -0,0 +1,14 @@
1+description "Unity 8 Greeter logrotate support"
2+author "Michael Terry <mterry@ubuntu.com>"
3+
4+start on unity8-greeter-started
5+task
6+
7+script
8+ # logrotate normally starts on startup and then sleeps for 60 seconds.
9+ # Otherwise, it skips that sleep. Since we can't emit the startup signal
10+ # for a unity8-greeter session, we have to trigger logrotate manually.
11+ # So we do the sleep ourselves in its stead.
12+ sleep 60
13+ initctl emit :sys:rotate-logs
14+end script
debian/changelog+173
@@ -1,9 +1,182 @@
1+unity8 (7.89+14.10.20140624-0ubuntu1) utopic; urgency=low
2+
3+ [ Ying-Chun Liu ]
4+ * Add logout support. Reviewed by: Daniel d'Andrada (LP: #1302213)
5+
6+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 24 Jun 2014 08:17:09 +0000
7+
8+unity8 (7.89+14.10.20140623.1-0ubuntu1) utopic; urgency=low
9+
10+ [ Michał Sawicz ]
11+ * Make so that fixedArtShapeSize actually fixes artShapeSize.
12+
13+ [ Albert Astals ]
14+ * Add VerticalJournal integration to Dash/scopes/QML (LP: #1326467)
15+ * Make so that fixedArtShapeSize actually fixes artShapeSize.
16+
17+ [ Mirco Müller ]
18+ * Added the frontend-part of sound-hint support for notifications with
19+ updated QML-tests.
20+
21+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 23 Jun 2014 11:17:12 +0000
22+
23+unity8 (7.89+14.10.20140619.3-0ubuntu1) utopic; urgency=low
24+
25+ * New rebuild forced
26+
27+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 19 Jun 2014 16:02:41 +0000
28+
29+unity8 (7.89+14.10.20140619.2-0ubuntu1) utopic; urgency=low
30+
31+ [ Albert Astals ]
32+ * Departments support (LP: #1320847)
33+
34+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 19 Jun 2014 11:17:40 +0000
35+
36+unity8 (7.89+14.10.20140616.1-0ubuntu1) utopic; urgency=low
37+
38+ [ Pawel Stolowski ]
39+ * Extend the hack for click scope categories with the upcoming 'store'
40+ category: single-tap on results from the 'store' category should
41+ activate them, instead of requesting a preview. (LP: #1326292)
42+
43+ [ Albert Astals ]
44+ * Drop the " Preview" suffix from Preview title As requested in
45+ https://bugs.launchpad.net/unity8/+bug/1316671 (LP: #1316671)
46+
47+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Mon, 16 Jun 2014 14:43:01 +0000
48+
49+unity8 (7.89+14.10.20140613-0ubuntu1) utopic; urgency=medium
50+
51+ [ Michael Terry ]
52+ * Revert split greeter for now. We will bring it back as an option
53+ for Desktop, but use a big hammer revert right now to get Touch back
54+ in shape.
55+
56+ [ CI bot ]
57+ * Fix build problems. Reviewed by: Michael Terry (LP: #1328850)
58+
59+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 13 Jun 2014 08:30:48 +0000
60+
61+unity8 (7.88+14.10.20140606-0ubuntu1) utopic; urgency=low
62+
63+ [ Michał Sawicz ]
64+ * Make lockscreen buttons translatable.
65+
66+ [ Albert Astals ]
67+ * Correctly mark these functions as overrides
68+ * Remove connections to non existant signal
69+ * Better test name
70+ * Improvements for headerless categories LVPWH: No section name -> no
71+ header LVPWH: New hasSectionHeader context property for delegates
72+ GSV: Add topMargin if no hasSectionHeader (LP: #1326415)
73+ * Make tryVerticalJournal, tryHorizontalJournal and tryOrganicGrid
74+ work again
75+
76+ [ Michael Zanetti ]
77+ * Don't crash when we get an invalid app from ApplicationManager (LP:
78+ #1309162)
79+
80+ [ Andrea Cimitan ]
81+ * Workaround for lp1324159 (LP: #1322233, #1324159)
82+
83+ [ CI bot ]
84+ * Resync trunk
85+
86+ [ Florian Boucault ]
87+ * Application startup: changed splash rectangle to be black instead of
88+ white and added a neat little animation. (LP: #1124265)
89+
90+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 06 Jun 2014 11:38:53 +0000
91+
92+unity8 (7.88+14.10.20140603.1-0ubuntu1) utopic; urgency=medium
93+
94+ [ Michael Terry ]
95+ * Bump version so ubuntu-touch-session can reference this one
96+
97+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 03 Jun 2014 20:31:00 +0000
98+
99+unity8 (7.87+14.10.20140603.1-0ubuntu1) utopic; urgency=low
100+
101+ [ CI bot ]
102+ * Resync trunk
103+
104+ [ Michał Sawicz ]
105+ * Move env setup past session init in greeter wrapper. (LP: #1325882)
106+
107+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 03 Jun 2014 10:33:11 +0000
108+
109+unity8 (7.87+14.10.20140530.1-0ubuntu3) utopic; urgency=medium
110+
111+ * no change rebuild
112+
113+ -- Oliver Grawert <ogra@ubuntu.com> Mon, 02 Jun 2014 16:19:10 +0200
114+
115+unity8 (7.87+14.10.20140530.1-0ubuntu2) utopic; urgency=medium
116+
117+ * drop dbus-x11 dependency of unity8-greeter, it makes us end up with
118+ multiple session dbus daemons which breaks many AP tests in the lab
119+
120+ -- Oliver Grawert <ogra@ubuntu.com> Mon, 02 Jun 2014 14:50:59 +0200
121+
122+unity8 (7.87+14.10.20140530.1-0ubuntu1) utopic; urgency=medium
123+
124+ [ Michael Terry ]
125+ * Bump version for Breaks due to unity8-greeter
126+ * In split mode, determine whether the application identifiers in
127+ AccountsService are click packages or not, so we know the correct
128+ url prefix to use.
129+ * Start logrotate in the greeter's session.
130+
131+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Fri, 30 May 2014 09:29:15 +0000
132+
1133unity8 (7.87-0ubuntu1) UNRELEASED; urgency=medium
2134
3135 * Adapt to suru theme.
4136
5137 -- Michał Sawicz <michal.sawicz@canonical.com> Fri, 23 May 2014 10:32:08 +0200
6138
139+unity8 (7.86+14.10.20140527-0ubuntu1) utopic; urgency=low
140+
141+ [ Andrea Cimitan ]
142+ * Passes to make tryCommand -qmljsdebugger=port:3768 to enable
143+ debug/profiling test apps
144+ * Fixes carousel shadow
145+
146+ [ Michał Sawicz ]
147+ * Use dpkg-architecture, not gcc, to determine the machine triplet.
148+
149+ [ Ying-Chun Liu ]
150+ * Fix ZoomableImage test failure. (LP: #1317254)
151+
152+ [ Albert Astals ]
153+ * We don't need iconutils in this mock
154+ * Don't reserve space for mascot if no mascot is specified (LP:
155+ #1319343)
156+ * CardHeader is no more, remove stale line in CMakeLists.txt
157+ * GenericScopeViewTest: Wait a bit more Otherwise sometimes we end
158+ getting up the wrong delegate (maybe one that will be garbage
159+ collected?) (LP: #1322279)
160+ * Fix crash in organicgridtest
161+
162+ [ Daniel d'Andrada ]
163+ * Remove Shell's underlay background image as it cannot be seen
164+ anymore Now that the Dash has its own, opaque, background, the
165+ underlay's background image can no longer be seen. So it's just a
166+ waste of resources to have it.
167+
168+ [ Michael Terry ]
169+ * Use the same animation when dismissing a greeter slide from the
170+ launcher as from a normal greeter drag. (LP: #1316513)
171+
172+ [ Michael Zanetti ]
173+ * enhance lockscreen add a retry indication label (e.g. 3 attempts
174+ left). add an additional label (e.g. phone number for multi sim).
175+ add a infoPopup (e.g. to display a warning for last retry). add min
176+ and max limit values. add tests for the above (LP: #1302050)
177+
178+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 27 May 2014 07:47:11 +0000
179+
7180unity8 (7.86+14.10.20140522-0ubuntu1) utopic; urgency=low
8181
9182 [ Albert Astals ]
debian/control+3−1
@@ -17,7 +17,7 @@ Build-Depends: cmake,
1717 libpulse-dev,
1818 libqmenumodel-dev (>= 0.2.7),
1919 libqt5xmlpatterns5-dev,
20− libunity-api-dev (>= 7.80.6),
20+ libunity-api-dev (>= 7.82),
2121 libunity-mir-dev,
2222 libusermetricsoutput1-dev,
2323 libxcb1-dev,
@@ -98,7 +98,9 @@ Recommends: unity-scope-click,
9898 unity-scope-scopes,
9999Breaks: indicator-network (<< 0.5.1),
100100 ubuntu-touch-session (<< 0.107),
101+ unity8-greeter (<< 7.89),
101102Replaces: ubuntu-touch-session (<< 0.82~),
103+ unity8-greeter (<< 7.89),
102104Description: Unity 8 shell
103105 The Unity 8 shell is the primary user interface for Ubuntu devices.
104106
plugins/Dash/CardCreator.js+21−14
@@ -55,8 +55,8 @@ var kBackgroundLoaderCode = 'Loader {\n\
5555// %3 is used as image height
5656var kArtShapeHolderCode = 'Item { \n\
5757 id: artShapeHolder; \n\
58− height: root.fixedArtShapeSize.height != -1 ? root.fixedArtShapeSize.height : artShapeLoader.height; \n\
59− width: root.fixedArtShapeSize.width != -1 ? root.fixedArtShapeSize.width : artShapeLoader.width; \n\
58+ height: root.fixedArtShapeSize.height > 0 ? root.fixedArtShapeSize.height : artShapeLoader.height; \n\
59+ width: root.fixedArtShapeSize.width > 0 ? root.fixedArtShapeSize.width : artShapeLoader.width; \n\
6060 anchors { %1 } \n\
6161 Loader { \n\
6262 id: artShapeLoader; \n\
@@ -68,14 +68,18 @@ var kArtShapeHolderCode = 'Item { \n\
6868 id: artShape; \n\
6969 objectName: "artShape"; \n\
7070 radius: "medium"; \n\
71− readonly property real aspect: components !== undefined ? components["art"]["aspect-ratio"] : 1; \n\
71+ visible: image.status == Image.Ready; \n\
72+ readonly property real fixedArtShapeSizeAspect: (root.fixedArtShapeSize.height > 0 && root.fixedArtShapeSize.width > 0) ? root.fixedArtShapeSize.width / root.fixedArtShapeSize.height : -1; \n\
73+ readonly property real aspect: fixedArtShapeSizeAspect > 0 ? fixedArtShapeSizeAspect : components !== undefined ? components["art"]["aspect-ratio"] : 1; \n\
7274 readonly property bool aspectSmallerThanImageAspect: aspect < image.aspect; \n\
73− Component.onCompleted: updateWidthHeightBindings(); \n\
75+ Component.onCompleted: { updateWidthHeightBindings(); if (artShapeBorderSource !== undefined) borderSource = artShapeBorderSource; } \n\
7476 onAspectSmallerThanImageAspectChanged: updateWidthHeightBindings(); \n\
75− visible: image.status == Image.Ready; \n\
76− borderSource: artShapeBorderSource; \n\
77+ Connections { target: root; onFixedArtShapeSizeChanged: updateWidthHeightBindings(); } \n\
7778 function updateWidthHeightBindings() { \n\
78− if (aspectSmallerThanImageAspect) { \n\
79+ if (root.fixedArtShapeSize.height > 0 && root.fixedArtShapeSize.width > 0) { \n\
80+ width = root.fixedArtShapeSize.width; \n\
81+ height = root.fixedArtShapeSize.height; \n\
82+ } else if (aspectSmallerThanImageAspect) { \n\
7983 width = Qt.binding(function() { return !visible ? 0 : image.width }); \n\
8084 height = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.height : width / image.aspect }); \n\
8185 } else { \n\
@@ -109,7 +113,7 @@ var kOverlayLoaderCode = 'Loader { \n\
109113 visible: showHeader && status == Loader.Ready; \n\
110114 sourceComponent: ShaderEffect { \n\
111115 id: overlay; \n\
112− height: fixedHeaderHeight != -1 ? fixedHeaderHeight : headerHeight; \n\
116+ height: fixedHeaderHeight > 0 ? fixedHeaderHeight + units.gu(1) * 2 : headerHeight; \n\
113117 opacity: 0.6; \n\
114118 property var source: ShaderEffectSource { \n\
115119 id: shaderSource; \n\
@@ -146,6 +150,7 @@ var kHeaderRow2Code = 'Row { \n\
146150 objectName: "outerRow"; \n\
147151 property real margins: units.gu(1); \n\
148152 spacing: margins; \n\
153+ height: root.fixedHeaderHeight != -1 ? root.fixedHeaderHeight : implicitHeight; \n\
149154 anchors { %1 } \n\
150155 anchors.right: parent.right; \n\
151156 anchors.margins: margins;\n\
@@ -164,6 +169,7 @@ var kHeaderRow3Code = 'Row { \n\
164169 objectName: "outerRow"; \n\
165170 property real margins: units.gu(1); \n\
166171 spacing: margins; \n\
172+ height: root.fixedHeaderHeight != -1 ? root.fixedHeaderHeight : implicitHeight; \n\
167173 anchors { %1 } \n\
168174 anchors.right: parent.right; \n\
169175 anchors.margins: margins;\n\
@@ -281,7 +287,7 @@ function cardString(template, components) {
281287 property var template; \n\
282288 property var components; \n\
283289 property var cardData; \n\
284− property var artShapeBorderSource; \n\
290+ property var artShapeBorderSource: undefined; \n\
285291 property real fontScale: 1.0; \n\
286292 property int headerAlignment: Text.AlignLeft; \n\
287293 property int fixedHeaderHeight: -1; \n\
@@ -307,6 +313,7 @@ function cardString(template, components) {
307313 }
308314
309315 if (hasArt) {
316+ code += 'onArtShapeBorderSourceChanged: { if (artShapeBorderSource !== undefined && artShapeLoader.item) artShapeLoader.item.borderSource = artShapeBorderSource; } \n';
310317 code += 'readonly property size artShapeSize: artShapeLoader.item ? Qt.size(artShapeLoader.item.width, artShapeLoader.item.height) : Qt.size(-1, -1);\n';
311318
312319 var widthCode, heightCode;
@@ -315,7 +322,7 @@ function cardString(template, components) {
315322 anchors = 'left: parent.left';
316323 if (hasMascot || hasTitle) {
317324 widthCode = 'height * artShape.aspect'
318− heightCode = 'headerHeight';
325+ heightCode = 'headerHeight + 2 * units.gu(1)';
319326 } else {
320327 // This side of the else is a bit silly, who wants an horizontal layout without mascot and title?
321328 // So we define a "random" height of the image height + 2 gu for the margins
@@ -366,13 +373,13 @@ function cardString(template, components) {
366373 }
367374
368375 if (hasHeaderRow) {
369− code += 'readonly property int headerHeight: row.height + row.margins * 2;\n'
376+ code += 'readonly property int headerHeight: row.height;\n'
370377 } else if (hasMascot) {
371− code += 'readonly property int headerHeight: mascotImage.height + units.gu(1) * 2;\n'
378+ code += 'readonly property int headerHeight: mascotImage.height;\n'
372379 } else if (hasSubtitle) {
373− code += 'readonly property int headerHeight: titleLabel.height + titleLabel.anchors.topMargin * 2 + subtitleLabel.height + subtitleLabel.anchors.topMargin;\n'
380+ code += 'readonly property int headerHeight: titleLabel.height + subtitleLabel.height + subtitleLabel.anchors.topMargin;\n'
374381 } else if (hasTitle) {
375− code += 'readonly property int headerHeight: titleLabel.height + titleLabel.anchors.topMargin * 2;\n'
382+ code += 'readonly property int headerHeight: titleLabel.height;\n'
376383 } else {
377384 code += 'readonly property int headerHeight: 0;\n'
378385 }
plugins/Dash/abstractdashview.cpp+3
@@ -176,6 +176,9 @@ void AbstractDashView::refill()
176176
177177bool AbstractDashView::addVisibleItems(qreal fillFromY, qreal fillToY, bool asynchronous)
178178{
179+ if (fillToY <= fillFromY)
180+ return false;
181+
179182 if (!delegate())
180183 return false;
181184
plugins/Dash/listviewwithpageheader.cpp+64−33
@@ -138,6 +138,13 @@ void ListViewWithPageHeader::ListItem::setCulled(bool culled)
138138 QQuickItemPrivate::get(m_sectionItem)->setCulled(culled);
139139}
140140
141+void ListViewWithPageHeader::ListItem::setSectionItem(QQuickItem *sectionItem)
142+{
143+ m_sectionItem = sectionItem;
144+ QQmlContext *context = QQmlEngine::contextForObject(m_item)->parentContext();
145+ context->setContextProperty(QLatin1String("hasSectionHeader"), QVariant::fromValue<bool>(sectionItem != nullptr));
146+}
147+
141148ListViewWithPageHeader::ListViewWithPageHeader()
142149 : m_delegateModel(nullptr)
143150 , m_asyncRequestedIndex(-1)
@@ -251,6 +258,8 @@ void ListViewWithPageHeader::setHeader(QQuickItem *headerItem)
251258 if (m_headerItem) {
252259 m_headerItem->setParentItem(contentItem());
253260 m_headerItem->setZ(1);
261+ m_previousHeaderImplicitHeight = m_headerItem->implicitHeight();
262+ QQuickItemPrivate::get(m_headerItem)->addItemChangeListener(this, QQuickItemPrivate::ImplicitHeight);
254263 }
255264 qreal newHeaderHeight = m_headerItem ? m_headerItem->height() : 0;
256265 if (!m_visibleItems.isEmpty() && newHeaderHeight != oldHeaderHeight) {
@@ -422,7 +431,7 @@ bool ListViewWithPageHeader::maximizeVisibleArea(int modelIndex, int itemHeight)
422431
423432 ListItem *listItem = itemAtIndex(modelIndex);
424433 if (listItem) {
425− return maximizeVisibleArea(listItem, itemHeight + (listItem->m_sectionItem ? listItem->m_sectionItem->height() : 0));
434+ return maximizeVisibleArea(listItem, itemHeight + (listItem->sectionItem() ? listItem->sectionItem()->height() : 0));
426435 }
427436
428437 return false;
@@ -440,7 +449,7 @@ bool ListViewWithPageHeader::maximizeVisibleArea(ListItem *listItem, int listIte
440449 contentYAnimationType = ContentYAnimationMaximizeVisibleArea;
441450 m_contentYAnimation->start();
442451 } else if ((listItemY < contentY() && listItemY + listItemHeight < contentY() + height()) ||
443− (m_topSectionItem && !listItem->m_sectionItem && listItemY - m_topSectionItem->height() < contentY() && listItemY + listItemHeight < contentY() + height()))
452+ (m_topSectionItem && !listItem->sectionItem() && listItemY - m_topSectionItem->height() < contentY() && listItemY + listItemHeight < contentY() + height()))
444453 {
445454 // we can scroll the list down to show more stuff
446455 auto realVisibleListItemY = listItemY;
@@ -449,7 +458,7 @@ bool ListViewWithPageHeader::maximizeVisibleArea(ListItem *listItem, int listIte
449458 // item we have to make sure to scroll it a bit more so that it is not underlapping
450459 // the top section sticky item
451460 bool topSectionShown = !QQuickItemPrivate::get(m_topSectionItem)->culled;
452− if (topSectionShown && !listItem->m_sectionItem) {
461+ if (topSectionShown && !listItem->sectionItem()) {
453462 realVisibleListItemY -= m_topSectionItem->height();
454463 }
455464 }
@@ -489,7 +498,15 @@ void ListViewWithPageHeader::viewportMoved(Qt::Orientations orient)
489498
490499 QQuickFlickable::viewportMoved(orient);
491500// qDebug() << "ListViewWithPageHeader::viewportMoved" << contentY();
492− qreal diff = m_previousContentY - contentY();
501+ const qreal diff = m_previousContentY - contentY();
502+ adjustHeader(diff);
503+ m_previousContentY = contentY();
504+ layout();
505+ polish();
506+}
507+
508+void ListViewWithPageHeader::adjustHeader(qreal diff)
509+{
493510 const bool showHeaderAnimationRunning = m_contentYAnimation->isRunning() && contentYAnimationType == ContentYAnimationShowHeader;
494511 if (m_headerItem) {
495512 const auto oldHeaderItemShownHeight = m_headerItemShownHeight;
@@ -551,10 +568,6 @@ void ListViewWithPageHeader::viewportMoved(Qt::Orientations orient)
551568 adjustMinYExtent();
552569 }
553570 }
554−
555− m_previousContentY = contentY();
556− layout();
557− polish();
558571}
559572
560573void ListViewWithPageHeader::createDelegateModel()
@@ -645,7 +658,7 @@ void ListViewWithPageHeader::reallyReleaseItem(ListItem *listItem)
645658 if (flags & QQmlDelegateModel::Destroyed) {
646659 item->setParentItem(nullptr);
647660 }
648− delete listItem->m_sectionItem;
661+ delete listItem->sectionItem();
649662 delete listItem;
650663}
651664
@@ -672,6 +685,9 @@ QQuickItem *ListViewWithPageHeader::getSectionItem(int modelIndex, bool alreadyI
672685 return nullptr;
673686
674687 const QString section = m_delegateModel->stringValue(modelIndex, m_sectionProperty);
688+ if (section.isEmpty())
689+ return nullptr;
690+
675691 if (modelIndex > 0) {
676692 const QString prevSection = m_delegateModel->stringValue(modelIndex - 1, m_sectionProperty);
677693 if (section == prevSection)
@@ -684,8 +700,8 @@ QQuickItem *ListViewWithPageHeader::getSectionItem(int modelIndex, bool alreadyI
684700 // Steal the section header
685701 ListItem *nextItem = itemAtIndex(modelIndex); // Not +1 since not yet inserted into m_visibleItems
686702 if (nextItem) {
687− QQuickItem *sectionItem = nextItem->m_sectionItem;
688− nextItem->m_sectionItem = nullptr;
703+ QQuickItem *sectionItem = nextItem->sectionItem();
704+ nextItem->setSectionItem(nullptr);
689705 return sectionItem;
690706 }
691707 }
@@ -793,7 +809,7 @@ ListViewWithPageHeader::ListItem *ListViewWithPageHeader::createItem(int modelIn
793809// qDebug() << "ListViewWithPageHeader::createItem::We have the item" << modelIndex << item;
794810 ListItem *listItem = new ListItem;
795811 listItem->m_item = item;
796− listItem->m_sectionItem = getSectionItem(modelIndex, false /*Not yet inserted into m_visibleItems*/);
812+ listItem->setSectionItem(getSectionItem(modelIndex, false /*Not yet inserted into m_visibleItems*/));
797813 QQuickItemPrivate::get(item)->addItemChangeListener(this, QQuickItemPrivate::Geometry);
798814 ListItem *prevItem = itemAtIndex(modelIndex - 1);
799815 bool lostItem = false; // Is an item that we requested async but because of model changes
@@ -832,8 +848,8 @@ ListViewWithPageHeader::ListItem *ListViewWithPageHeader::createItem(int modelIn
832848 m_firstVisibleIndex = modelIndex;
833849 polish();
834850 }
835− if (listItem->m_sectionItem) {
836− QQmlContext *context = QQmlEngine::contextForObject(listItem->m_sectionItem)->parentContext();
851+ if (listItem->sectionItem()) {
852+ QQmlContext *context = QQmlEngine::contextForObject(listItem->sectionItem())->parentContext();
837853 context->setContextProperty(QLatin1String("delegateIndex"), modelIndex);
838854 }
839855 adjustMinYExtent();
@@ -861,6 +877,7 @@ void ListViewWithPageHeader::itemCreated(int modelIndex, QObject *object)
861877 QQmlContext *context = QQmlEngine::contextForObject(item)->parentContext();
862878 context->setContextProperty(QLatin1String("ListViewWithPageHeader"), this);
863879 context->setContextProperty(QLatin1String("heightToClip"), QVariant::fromValue<int>(0));
880+ context->setContextProperty(QLatin1String("hasSectionHeader"), QVariant::fromValue<bool>(false));
864881 if (modelIndex == m_asyncRequestedIndex) {
865882 createItem(modelIndex, false);
866883 refill();
@@ -915,11 +932,11 @@ void ListViewWithPageHeader::onModelUpdated(const QQmlChangeSet &changeSet, bool
915932 if (visibleIndex >= 0 && visibleIndex < m_visibleItems.count()) {
916933 ListItem *item = m_visibleItems[visibleIndex];
917934 // Pass the section item down if needed
918− if (item->m_sectionItem && visibleIndex + 1 < m_visibleItems.count()) {
935+ if (item->sectionItem() && visibleIndex + 1 < m_visibleItems.count()) {
919936 ListItem *nextItem = m_visibleItems[visibleIndex + 1];
920− if (!nextItem->m_sectionItem) {
921− nextItem->m_sectionItem = item->m_sectionItem;
922− item->m_sectionItem = nullptr;
937+ if (!nextItem->sectionItem()) {
938+ nextItem->setSectionItem(item->sectionItem());
939+ item->setSectionItem(nullptr);
923940 }
924941 }
925942 releaseItem(item);
@@ -982,11 +999,11 @@ void ListViewWithPageHeader::onModelUpdated(const QQmlChangeSet &changeSet, bool
982999 // if we need adding a new section item
9831000 if (m_sectionDelegate) {
9841001 ListItem *nextItem = itemAtIndex(modelIndex + 1);
985− if (nextItem && !nextItem->m_sectionItem) {
986− nextItem->m_sectionItem = getSectionItem(modelIndex + 1, true /* alredy inserted into m_visibleItems*/);
987− if (growUp && nextItem->m_sectionItem) {
1002+ if (nextItem && !nextItem->sectionItem()) {
1003+ nextItem->setSectionItem(getSectionItem(modelIndex + 1, true /* alredy inserted into m_visibleItems*/));
1004+ if (growUp && nextItem->sectionItem()) {
9881005 ListItem *firstItem = m_visibleItems.first();
989− firstItem->setY(firstItem->y() - nextItem->m_sectionItem->height());
1006+ firstItem->setY(firstItem->y() - nextItem->sectionItem()->height());
9901007 }
9911008 }
9921009 }
@@ -1012,8 +1029,8 @@ void ListViewWithPageHeader::onModelUpdated(const QQmlChangeSet &changeSet, bool
10121029// qDebug() << "ListViewWithPageHeader::onModelUpdated Change" << change.index << change.count;
10131030 for (int i = change.index; i < change.count; ++i) {
10141031 ListItem *item = itemAtIndex(i);
1015− if (item && item->m_sectionItem) {
1016− QQmlContext *context = QQmlEngine::contextForObject(item->m_sectionItem)->parentContext();
1032+ if (item && item->sectionItem()) {
1033+ QQmlContext *context = QQmlEngine::contextForObject(item->sectionItem())->parentContext();
10171034 const QString sectionText = m_delegateModel->stringValue(i, m_sectionProperty);
10181035 context->setContextProperty(QLatin1String("section"), sectionText);
10191036 }
@@ -1026,8 +1043,8 @@ void ListViewWithPageHeader::onModelUpdated(const QQmlChangeSet &changeSet, bool
10261043
10271044 for (int i = 0; i < m_visibleItems.count(); ++i) {
10281045 ListItem *item = m_visibleItems[i];
1029− if (item->m_sectionItem) {
1030− QQmlContext *context = QQmlEngine::contextForObject(item->m_sectionItem)->parentContext();
1046+ if (item->sectionItem()) {
1047+ QQmlContext *context = QQmlEngine::contextForObject(item->sectionItem())->parentContext();
10311048 context->setContextProperty(QLatin1String("delegateIndex"), m_firstVisibleIndex + i);
10321049 }
10331050 }
@@ -1060,6 +1077,20 @@ void ListViewWithPageHeader::itemGeometryChanged(QQuickItem * /*item*/, const QR
10601077 }
10611078}
10621079
1080+void ListViewWithPageHeader::itemImplicitHeightChanged(QQuickItem *item)
1081+{
1082+ if (item == m_headerItem) {
1083+ const qreal diff = m_headerItem->implicitHeight() - m_previousHeaderImplicitHeight;
1084+ if (diff != 0) {
1085+ adjustHeader(diff);
1086+ m_previousHeaderImplicitHeight = m_headerItem->implicitHeight();
1087+ layout();
1088+ polish();
1089+ m_contentHeightDirty = true;
1090+ }
1091+ }
1092+}
1093+
10631094void ListViewWithPageHeader::headerHeightChanged(qreal newHeaderHeight, qreal oldHeaderHeight, qreal oldHeaderY)
10641095{
10651096 const qreal heightDiff = newHeaderHeight - oldHeaderHeight;
@@ -1156,18 +1187,18 @@ void ListViewWithPageHeader::layout()
11561187 if (topSectionStickPos > pos) {
11571188 showStickySectionItem = true;
11581189 } else if (topSectionStickPos == pos) {
1159− showStickySectionItem = !item->m_sectionItem;
1190+ showStickySectionItem = !item->sectionItem();
11601191 } else {
11611192 showStickySectionItem = false;
11621193 }
11631194 if (!showStickySectionItem) {
11641195 QQuickItemPrivate::get(m_topSectionItem)->setCulled(true);
1165− if (item->m_sectionItem) {
1196+ if (item->sectionItem()) {
11661197 // This seems it should happen since why would we cull the top section
11671198 // if the first visible item has no section header? This only happens briefly
11681199 // when increasing the height of a list that is at the bottom, the m_topSectionItem
11691200 // gets shown shortly in the next polish call
1170− QQuickItemPrivate::get(item->m_sectionItem)->setCulled(false);
1201+ QQuickItemPrivate::get(item->sectionItem())->setCulled(false);
11711202 }
11721203 } else {
11731204 // Update the top sticky section header
@@ -1186,14 +1217,14 @@ void ListViewWithPageHeader::layout()
11861217 delegateIndex--;
11871218 }
11881219 context->setContextProperty(QLatin1String("delegateIndex"), delegateIndex);
1189− if (item->m_sectionItem) {
1190− QQuickItemPrivate::get(item->m_sectionItem)->setCulled(true);
1220+ if (item->sectionItem()) {
1221+ QQuickItemPrivate::get(item->sectionItem())->setCulled(true);
11911222 }
11921223 }
11931224 }
11941225 }
11951226 QQmlContext *context = QQmlEngine::contextForObject(item->m_item)->parentContext();
1196− const qreal clipFrom = visibleFrom + (!item->m_sectionItem && m_topSectionItem && !QQuickItemPrivate::get(m_topSectionItem)->culled ? m_topSectionItem->height() : 0);
1227+ const qreal clipFrom = visibleFrom + (!item->sectionItem() && m_topSectionItem && !QQuickItemPrivate::get(m_topSectionItem)->culled ? m_topSectionItem->height() : 0);
11971228 if (!cull && pos < clipFrom) {
11981229 context->setContextProperty(QLatin1String("heightToClip"), clipFrom - pos);
11991230 } else {
@@ -1210,7 +1241,7 @@ void ListViewWithPageHeader::layout()
12101241 if (firstReallyVisibleItem >= 0) {
12111242 for (int i = firstReallyVisibleItem - m_firstVisibleIndex + 1; i < m_visibleItems.count(); ++i) {
12121243 ListItem *item = m_visibleItems[i];
1213− if (item->m_sectionItem) {
1244+ if (item->sectionItem()) {
12141245 if (m_topSectionItem->y() + m_topSectionItem->height() > item->y()) {
12151246 m_topSectionItem->setY(item->y() - m_topSectionItem->height());
12161247 }
plugins/Dash/listviewwithpageheader.h+12−5
@@ -102,11 +102,12 @@ Q_SIGNALS:
102102 void stickyHeaderHeightChanged();
103103
104104protected:
105− void componentComplete();
106− void viewportMoved(Qt::Orientations orient);
107− qreal minYExtent() const;
108− void itemGeometryChanged(QQuickItem *item, const QRectF &newGeometry, const QRectF &oldGeometry);
109− void updatePolish();
105+ void componentComplete() override;
106+ void viewportMoved(Qt::Orientations orient) override;
107+ qreal minYExtent() const override;
108+ void itemGeometryChanged(QQuickItem *item, const QRectF &newGeometry, const QRectF &oldGeometry) override;
109+ void itemImplicitHeightChanged(QQuickItem *item) override;
110+ void updatePolish() override;
110111
111112private Q_SLOTS:
112113 void itemCreated(int modelIndex, QObject *object);
@@ -128,7 +129,11 @@ private:
128129 bool culled() const;
129130 void setCulled(bool culled);
130131
132+ QQuickItem *sectionItem() const { return m_sectionItem; }
133+ void setSectionItem(QQuickItem *sectionItem);
134+
131135 QQuickItem *m_item;
136+ private:
132137 QQuickItem *m_sectionItem;
133138 };
134139
@@ -142,6 +147,7 @@ private:
142147 bool removeNonVisibleItems(qreal bufferFrom, qreal bufferTo);
143148 ListItem *createItem(int modelIndex, bool asynchronous);
144149
150+ void adjustHeader(qreal diff);
145151 void adjustMinYExtent();
146152 void updateClipItem();
147153 void headerHeightChanged(qreal newHeaderHeight, qreal oldHeaderHeight, qreal oldHeaderY);
@@ -174,6 +180,7 @@ private:
174180
175181 QQuickItem *m_headerItem;
176182 qreal m_previousContentY;
183+ qreal m_previousHeaderImplicitHeight;
177184 qreal m_headerItemShownHeight; // The height of header shown when the header is shown outside its topmost position
178185 // i.e. it's being shown after dragging down in the middle of the list
179186 enum ContentYAnimationType { ContentYAnimationShowHeader, ContentYAnimationMaximizeVisibleArea };
plugins/Unity/CMakeLists.txt+1
@@ -1,2 +1,3 @@
11add_subdirectory(Indicators)
22add_subdirectory(Launcher)
3+add_subdirectory(Session)
plugins/Unity/Launcher/launchermodel.cpp+22
@@ -23,6 +23,8 @@
2323
2424#include <unity/shell/application/ApplicationInfoInterface.h>
2525
26+#include <QDebug>
27+
2628using namespace unity::shell::application;
2729
2830LauncherModel::LauncherModel(QObject *parent):
@@ -199,6 +201,22 @@ void LauncherModel::setUser(const QString &username)
199201 m_backend->setUser(username);
200202}
201203
204+QString LauncherModel::getUrlForAppId(const QString &appId) const
205+{
206+ // appId is either an appId or a legacy app name. Let's find out which
207+ if (appId.isEmpty())
208+ return QString();
209+
210+ QString df = m_backend->desktopFile(appId + ".desktop");
211+ if (!df.isEmpty())
212+ return "application:///" + appId + ".desktop";
213+
214+ QStringList parts = appId.split('_');
215+ QString package = parts.value(0);
216+ QString app = parts.value(1, "first-listed-app");
217+ return "appid://" + package + "/" + app + "/current-user-version";
218+}
219+
202220ApplicationManagerInterface *LauncherModel::applicationManager() const
203221{
204222 return m_appManager;
@@ -291,6 +309,10 @@ void LauncherModel::applicationAdded(const QModelIndex &parent, int row)
291309 Q_UNUSED(parent);
292310
293311 ApplicationInfoInterface *app = m_appManager->get(row);
312+ if (!app) {
313+ qWarning() << "LauncherModel received an applicationAdded signal, but there's no such application!";
314+ return;
315+ }
294316
295317 bool found = false;
296318 Q_FOREACH(LauncherItem *item, m_list) {
plugins/Unity/Launcher/launchermodel.h+1
@@ -51,6 +51,7 @@ public:
5151 Q_INVOKABLE void requestRemove(const QString &appId);
5252 Q_INVOKABLE void quickListActionInvoked(const QString &appId, int actionIndex);
5353 Q_INVOKABLE void setUser(const QString &username);
54+ Q_INVOKABLE QString getUrlForAppId(const QString &appId) const;
5455
5556 unity::shell::application::ApplicationManagerInterface* applicationManager() const;
5657 void setApplicationManager(unity::shell::application::ApplicationManagerInterface *appManager);
plugins/Unity/Session/CMakeLists.txtnew file+17
@@ -0,0 +1,17 @@
1+include_directories(
2+ ${CMAKE_CURRENT_SOURCE_DIR}
3+)
4+
5+set(QMLSESSIONPLUGIN_SRC
6+ plugin.cpp
7+ dbusunitysessionservice.cpp
8+ )
9+
10+add_library(UnitySession-qml MODULE
11+ ${QMLSESSIONPLUGIN_SRC}
12+ )
13+
14+qt5_use_modules(UnitySession-qml DBus Qml)
15+
16+# export the qmldir and qmltypes files
17+add_unity8_plugin(Unity.Session 0.1 Unity/Session TARGETS UnitySession-qml)
plugins/Unity/Session/dbusunitysessionservice.cppnew file+46
@@ -0,0 +1,46 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software: you can redistribute it and/or modify it under
5+ * the terms of the GNU Lesser General Public License version 3, as published by
6+ * the Free Software Foundation.
7+ *
8+ * This program is distributed in the hope that it will be useful, but WITHOUT
9+ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
10+ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11+ * Lesser General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU Lesser General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+// local
18+#include "dbusunitysessionservice.h"
19+
20+// Qt
21+#include <QDBusConnection>
22+
23+DBusUnitySessionService::DBusUnitySessionService() : QObject()
24+{
25+ QDBusConnection connection = QDBusConnection::sessionBus();
26+
27+ connection.registerService("com.canonical.Unity");
28+ connection.registerObject("/com/canonical/Unity/Session", this,
29+ QDBusConnection::ExportScriptableSignals
30+ | QDBusConnection::ExportScriptableSlots
31+ | QDBusConnection::ExportScriptableInvokables);
32+}
33+
34+DBusUnitySessionService::~DBusUnitySessionService()
35+{
36+}
37+
38+void DBusUnitySessionService::Logout()
39+{
40+ Q_EMIT logoutReady();
41+}
42+
43+void DBusUnitySessionService::RequestLogout()
44+{
45+ Q_EMIT logoutRequested(false);
46+}
plugins/Unity/Session/dbusunitysessionservice.hnew file+82
@@ -0,0 +1,82 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software: you can redistribute it and/or modify it under
5+ * the terms of the GNU Lesser General Public License version 3, as published by
6+ * the Free Software Foundation.
7+ *
8+ * This program is distributed in the hope that it will be useful, but WITHOUT
9+ * ANY WARRANTY; without even the implied warranties of MERCHANTABILITY,
10+ * SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11+ * Lesser General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU Lesser General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+#ifndef DBUSUNITYSESSIONSERVICE_H
18+#define DBUSUNITYSESSIONSERVICE_H
19+
20+#include <QObject>
21+
22+/**
23+ * DBusUnitySessionService provides com.canonical.Unity.Session dbus
24+ * interface.
25+ *
26+ * com.canonical.Unity.Session interface provides public methods
27+ * and signals to handle Logout/Reboot/Shutdown.
28+ */
29+class DBusUnitySessionService : public QObject
30+{
31+ Q_OBJECT
32+ Q_CLASSINFO("D-Bus Interface", "com.canonical.Unity.Session")
33+
34+public:
35+ DBusUnitySessionService();
36+ ~DBusUnitySessionService();
37+
38+Q_SIGNALS:
39+ /**
40+ * logoutRequested signal
41+ *
42+ * This signal is emitted when some applications request the system to
43+ * logout.
44+ * @param have_inhibitors if there are any special running applications
45+ * which inhibit the logout.
46+ */
47+ void logoutRequested(bool have_inhibitors);
48+
49+ /**
50+ * logoutReady signal
51+ *
52+ * This signal is emitted when all the apps are closed. And the system
53+ * is safe to logout.
54+ */
55+ void logoutReady();
56+
57+public Q_SLOTS:
58+ /**
59+ * Logout the system.
60+ *
61+ * This method directly logout the system without user's confirmation.
62+ * Ordinary applications should avoid calling this method. Please call
63+ * RequestLogout() to ask the user to decide logout or not.
64+ * This method will stop all the running applications and then signal
65+ * logoutReady when all the apps stopped.
66+ */
67+ Q_SCRIPTABLE void Logout();
68+
69+ /**
70+ * Issue a logout request.
71+ *
72+ * This method emit the logoutRequested signal to the shell with a boolean
73+ * which indicates if there's any inhibitors. The shell should receive
74+ * this signal and display a dialog to ask the user to confirm the logout
75+ * action. If confirmed, shell can call Logout() method to kill the apps
76+ * and then logout
77+ */
78+ Q_SCRIPTABLE void RequestLogout();
79+
80+};
81+
82+#endif // DBUSUNITYSESSIONSERVICE_H
plugins/Unity/Session/plugin.cppnew file+40
@@ -0,0 +1,40 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ *
16+ * Authors: Ying-Chun Liu (PaulLiu) <paul.liu@canonical.com>
17+ */
18+
19+#include "plugin.h"
20+#include "dbusunitysessionservice.h"
21+
22+#include <QAbstractItemModel>
23+#include <QDBusConnection>
24+#include <QtQml/qqml.h>
25+
26+static QObject *dbusunitysessionservice_provider(QQmlEngine *engine, QJSEngine *scriptEngine)
27+{
28+ Q_UNUSED(engine)
29+ Q_UNUSED(scriptEngine)
30+
31+ return new DBusUnitySessionService();
32+}
33+
34+void SessionPlugin::registerTypes(const char *uri)
35+{
36+ qmlRegisterType<QAbstractItemModel>();
37+
38+ Q_ASSERT(uri == QLatin1String("Unity.Session"));
39+ qmlRegisterSingletonType<DBusUnitySessionService>(uri, 0, 1, "DBusUnitySessionService", dbusunitysessionservice_provider);
40+}
plugins/Unity/Session/plugin.hnew file+34
@@ -0,0 +1,34 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ *
16+ * Authors: Ying-Chun Liu (PaulLiu) <paul.liu@canonical.com>
17+ */
18+
19+#ifndef SESSION_PLUGIN_H
20+#define SESSION_PLUGIN_H
21+
22+#include <QtQml/QQmlEngine>
23+#include <QtQml/QQmlExtensionPlugin>
24+
25+class SessionPlugin : public QQmlExtensionPlugin
26+{
27+ Q_OBJECT
28+ Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface")
29+
30+public:
31+ void registerTypes(const char *uri);
32+};
33+
34+#endif
plugins/Unity/Session/qmldirnew file+3
@@ -0,0 +1,3 @@
1+module Unity.Session
2+plugin UnitySession-qml
3+typeinfo UnitySession.qmltypes
po/am.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-18 19:28+0000\n"
1212"Last-Translator: samson <Unknown>\n"
1313"Language-Team: Amharic <am@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "ሰላም %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "ሰላም"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "መላኪያ"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "ሰላም %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "ሰላም"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "ማረጋገጫ"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "መፈለጊያ"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "እባክዎን ያስገቡ %1"
po/ar.po+36−29
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-02-21 11:19+0000\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-05-22 08:22+0000\n"
1212"Last-Translator: Ibrahim Saed <ibraheem5000@gmail.com>\n"
1313"Language-Team: Arabic <ar@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -75,10 +75,35 @@ msgstr ""
7575"أنت الآن بارع في إيماءات الحواف ويمكنك البدء باستخدام هاتفك<br><br>انقر على "
7676"الشاشة للبدء"
7777
78+#: qml/Components/Lockscreen.qml:214
79+msgid "Emergency Call"
80+msgstr "مكالمة طوارئ"
81+
82+#: qml/Components/Lockscreen.qml:231
83+msgid "OK"
84+msgstr ""
85+
7886#: qml/Components/PageHeader.qml:365
7987msgid "Recent searches"
8088msgstr "عمليات البحث الأخيرة"
8189
90+#: qml/Components/PassphraseLockscreen.qml:60
91+#, qt-format
92+msgid "Hello %1"
93+msgstr "مرحبا %1"
94+
95+#: qml/Components/PassphraseLockscreen.qml:60
96+msgid "Hello"
97+msgstr "مرحبًا"
98+
99+#: qml/Components/PinLockscreen.qml:198
100+msgid "CANCEL"
101+msgstr ""
102+
103+#: qml/Components/PinLockscreen.qml:216
104+msgid "DONE"
105+msgstr ""
106+
82107#: qml/Components/SeeMore.qml:35
83108msgid "See more"
84109msgstr "شاهد المزيد"
@@ -89,12 +114,7 @@ msgstr "شاهد أقل"
89114
90115#: qml/Dash/DashApps.qml:37
91116msgid "Recent"
92−msgstr ""
93−
94−#: qml/Dash/PreviewListView.qml:52
95−#, qt-format
96−msgid "%1 Preview"
97−msgstr ""
117+msgstr "استُخدمت مؤخرًا"
98118
99119#: qml/Dash/Previews/PreviewActionCombo.qml:34
100120msgid "More..."
@@ -104,34 +124,21 @@ msgstr "المزيد..."
104124msgid "Less..."
105125msgstr "أقل..."
106126
107−#: qml/Dash/Previews/PreviewRatingInput.qml:81
127+#: qml/Dash/Previews/PreviewRatingInput.qml:82
108128msgid "Rate this"
109129msgstr "قيّم ذلك"
110130
111−#: qml/Dash/Previews/PreviewRatingInput.qml:126
131+#: qml/Dash/Previews/PreviewRatingInput.qml:128
112132msgid "Add a review"
113133msgstr "أضف تعليق"
114134
115−#: qml/Dash/Previews/PreviewRatingInput.qml:166
135+#: qml/Dash/Previews/PreviewRatingInput.qml:168
116136msgid "Send"
117137msgstr "أرسل"
118138
119−#: qml/Greeter/Greeter.qml:151
139+#: qml/Greeter/Greeter.qml:157
120140msgid "Swipe to unlock"
121−msgstr ""
122−
123−#: qml/Greeter/Lockscreen.qml:149
124−msgid "Emergency Call"
125−msgstr "مكالمة طوارئ"
126−
127−#: qml/Greeter/PassphraseLockscreen.qml:59
128−#, qt-format
129−msgid "Hello %1"
130−msgstr "مرحبا %1"
131−
132−#: qml/Greeter/PassphraseLockscreen.qml:59
133−msgid "Hello"
134−msgstr "مرحبًا"
141+msgstr "اسحب لفتح القفل"
135142
136143#: qml/Hud/HudParametrizedActionsPage.qml:132
137144msgid "Confirm"
@@ -165,7 +172,7 @@ msgstr "من فضلك أدخِل رقم التعريف الشخصي لبطاقة
165172msgid "Search"
166173msgstr "ابحث"
167174
168−#: qml/Shell.qml:348
175+#: qml/Shell.qml:334
169176#, qt-format
170177msgid "Please enter %1"
171178msgstr "من فضلك أدخِل %1"
po/ast.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-04-04 02:16+0000\n"
1212"Last-Translator: Xuacu Saturio <xuacusk8@gmail.com>\n"
1313"Language-Team: Asturian <ast@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -76,10 +76,35 @@ msgstr ""
7676"Agora domina los xestos de los bordes y pue principiar a usar el "
7777"teléfonu<br><br>Toque la pantalla pa comenzar"
7878
79+#: qml/Components/Lockscreen.qml:214
80+msgid "Emergency Call"
81+msgstr "Llamada d'emerxencia"
82+
83+#: qml/Components/Lockscreen.qml:231
84+msgid "OK"
85+msgstr ""
86+
7987#: qml/Components/PageHeader.qml:365
8088msgid "Recent searches"
8189msgstr "Busques recientes"
8290
91+#: qml/Components/PassphraseLockscreen.qml:60
92+#, qt-format
93+msgid "Hello %1"
94+msgstr "Hola %1"
95+
96+#: qml/Components/PassphraseLockscreen.qml:60
97+msgid "Hello"
98+msgstr "Hola"
99+
100+#: qml/Components/PinLockscreen.qml:198
101+msgid "CANCEL"
102+msgstr ""
103+
104+#: qml/Components/PinLockscreen.qml:216
105+msgid "DONE"
106+msgstr ""
107+
83108#: qml/Components/SeeMore.qml:35
84109msgid "See more"
85110msgstr "Ver más"
@@ -92,11 +117,6 @@ msgstr "Ver menos"
92117msgid "Recent"
93118msgstr "Reciente"
94119
95−#: qml/Dash/PreviewListView.qml:52
96−#, qt-format
97−msgid "%1 Preview"
98−msgstr "Vista previa de %1"
99−
100120#: qml/Dash/Previews/PreviewActionCombo.qml:34
101121msgid "More..."
102122msgstr "Más…"
@@ -105,35 +125,22 @@ msgstr "Más…"
105125msgid "Less..."
106126msgstr "Menos…"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:81
128+#: qml/Dash/Previews/PreviewRatingInput.qml:82
109129msgid "Rate this"
110130msgstr "Valorar esto"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:126
132+#: qml/Dash/Previews/PreviewRatingInput.qml:128
113133msgid "Add a review"
114134msgstr "Amestar una reseña"
115135
116−#: qml/Dash/Previews/PreviewRatingInput.qml:166
136+#: qml/Dash/Previews/PreviewRatingInput.qml:168
117137msgid "Send"
118138msgstr "Unviar"
119139
120−#: qml/Greeter/Greeter.qml:151
140+#: qml/Greeter/Greeter.qml:157
121141msgid "Swipe to unlock"
122142msgstr ""
123143
124−#: qml/Greeter/Lockscreen.qml:149
125−msgid "Emergency Call"
126−msgstr "Llamada d'emerxencia"
127−
128−#: qml/Greeter/PassphraseLockscreen.qml:59
129−#, qt-format
130−msgid "Hello %1"
131−msgstr "Hola %1"
132−
133−#: qml/Greeter/PassphraseLockscreen.qml:59
134−msgid "Hello"
135−msgstr "Hola"
136−
137144#: qml/Hud/HudParametrizedActionsPage.qml:132
138145msgid "Confirm"
139146msgstr "Confirmar"
@@ -166,7 +173,7 @@ msgstr "Escriba'l PIN de la SIM"
166173msgid "Search"
167174msgstr "Guetar"
168175
169−#: qml/Shell.qml:348
176+#: qml/Shell.qml:334
170177#, qt-format
171178msgid "Please enter %1"
172179msgstr "Introduz %1"
po/az.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-15 09:50+0000\n"
1212"Last-Translator: Turan Mahmudov <turan.mahmudov@gmail.com>\n"
1313"Language-Team: Azerbaijani <az@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -73,10 +73,35 @@ msgid ""
7373"phone<br><br>Tap on the screen to start"
7474msgstr ""
7575
76+#: qml/Components/Lockscreen.qml:214
77+msgid "Emergency Call"
78+msgstr "Zərurət zəngi"
79+
80+#: qml/Components/Lockscreen.qml:231
81+msgid "OK"
82+msgstr ""
83+
7684#: qml/Components/PageHeader.qml:365
7785msgid "Recent searches"
7886msgstr "Son axtarışlar"
7987
88+#: qml/Components/PassphraseLockscreen.qml:60
89+#, qt-format
90+msgid "Hello %1"
91+msgstr "Xoş gördük %1"
92+
93+#: qml/Components/PassphraseLockscreen.qml:60
94+msgid "Hello"
95+msgstr "Xoş gördük"
96+
97+#: qml/Components/PinLockscreen.qml:198
98+msgid "CANCEL"
99+msgstr ""
100+
101+#: qml/Components/PinLockscreen.qml:216
102+msgid "DONE"
103+msgstr ""
104+
80105#: qml/Components/SeeMore.qml:35
81106msgid "See more"
82107msgstr ""
@@ -89,11 +114,6 @@ msgstr ""
89114msgid "Recent"
90115msgstr ""
91116
92−#: qml/Dash/PreviewListView.qml:52
93−#, qt-format
94−msgid "%1 Preview"
95−msgstr ""
96−
97117#: qml/Dash/Previews/PreviewActionCombo.qml:34
98118msgid "More..."
99119msgstr ""
@@ -102,35 +122,22 @@ msgstr ""
102122msgid "Less..."
103123msgstr ""
104124
105−#: qml/Dash/Previews/PreviewRatingInput.qml:81
125+#: qml/Dash/Previews/PreviewRatingInput.qml:82
106126msgid "Rate this"
107127msgstr "Qiymət ver"
108128
109−#: qml/Dash/Previews/PreviewRatingInput.qml:126
129+#: qml/Dash/Previews/PreviewRatingInput.qml:128
110130msgid "Add a review"
111131msgstr "Rəy yaz"
112132
113−#: qml/Dash/Previews/PreviewRatingInput.qml:166
133+#: qml/Dash/Previews/PreviewRatingInput.qml:168
114134msgid "Send"
115135msgstr "Göndər"
116136
117−#: qml/Greeter/Greeter.qml:151
137+#: qml/Greeter/Greeter.qml:157
118138msgid "Swipe to unlock"
119139msgstr ""
120140
121−#: qml/Greeter/Lockscreen.qml:149
122−msgid "Emergency Call"
123−msgstr "Zərurət zəngi"
124−
125−#: qml/Greeter/PassphraseLockscreen.qml:59
126−#, qt-format
127−msgid "Hello %1"
128−msgstr "Xoş gördük %1"
129−
130−#: qml/Greeter/PassphraseLockscreen.qml:59
131−msgid "Hello"
132−msgstr "Xoş gördük"
133−
134141#: qml/Hud/HudParametrizedActionsPage.qml:132
135142msgid "Confirm"
136143msgstr "Təsdiqlə"
@@ -163,7 +170,7 @@ msgstr ""
163170msgid "Search"
164171msgstr "Axtar"
165172
166−#: qml/Shell.qml:348
173+#: qml/Shell.qml:334
167174#, qt-format
168175msgid "Please enter %1"
169176msgstr "Xahiş edirik daxil edin: %1"
po/bg.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-04-01 14:08+0000\n"
1212"Last-Translator: Atanas Kovachki <Unknown>\n"
1313"Language-Team: Bulgarian <bg@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -79,10 +79,35 @@ msgid ""
7979"phone<br><br>Tap on the screen to start"
8080msgstr ""
8181
82+#: qml/Components/Lockscreen.qml:214
83+msgid "Emergency Call"
84+msgstr "Спешно повикване"
85+
86+#: qml/Components/Lockscreen.qml:231
87+msgid "OK"
88+msgstr ""
89+
8290#: qml/Components/PageHeader.qml:365
8391msgid "Recent searches"
8492msgstr "Последни търсения"
8593
94+#: qml/Components/PassphraseLockscreen.qml:60
95+#, qt-format
96+msgid "Hello %1"
97+msgstr "Здравей, %1"
98+
99+#: qml/Components/PassphraseLockscreen.qml:60
100+msgid "Hello"
101+msgstr "Здравей"
102+
103+#: qml/Components/PinLockscreen.qml:198
104+msgid "CANCEL"
105+msgstr ""
106+
107+#: qml/Components/PinLockscreen.qml:216
108+msgid "DONE"
109+msgstr ""
110+
86111#: qml/Components/SeeMore.qml:35
87112msgid "See more"
88113msgstr ""
@@ -95,11 +120,6 @@ msgstr ""
95120msgid "Recent"
96121msgstr "Последни"
97122
98−#: qml/Dash/PreviewListView.qml:52
99−#, qt-format
100−msgid "%1 Preview"
101−msgstr ""
102−
103123#: qml/Dash/Previews/PreviewActionCombo.qml:34
104124msgid "More..."
105125msgstr ""
@@ -108,35 +128,22 @@ msgstr ""
108128msgid "Less..."
109129msgstr "По-малко..."
110130
111−#: qml/Dash/Previews/PreviewRatingInput.qml:81
131+#: qml/Dash/Previews/PreviewRatingInput.qml:82
112132msgid "Rate this"
113133msgstr "Оценете това"
114134
115−#: qml/Dash/Previews/PreviewRatingInput.qml:126
135+#: qml/Dash/Previews/PreviewRatingInput.qml:128
116136msgid "Add a review"
117137msgstr "Добави отзив"
118138
119−#: qml/Dash/Previews/PreviewRatingInput.qml:166
139+#: qml/Dash/Previews/PreviewRatingInput.qml:168
120140msgid "Send"
121141msgstr "Изпрати"
122142
123−#: qml/Greeter/Greeter.qml:151
143+#: qml/Greeter/Greeter.qml:157
124144msgid "Swipe to unlock"
125145msgstr ""
126146
127−#: qml/Greeter/Lockscreen.qml:149
128−msgid "Emergency Call"
129−msgstr "Спешно повикване"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−#, qt-format
133−msgid "Hello %1"
134−msgstr "Здравей, %1"
135−
136−#: qml/Greeter/PassphraseLockscreen.qml:59
137−msgid "Hello"
138−msgstr "Здравей"
139−
140147#: qml/Hud/HudParametrizedActionsPage.qml:132
141148msgid "Confirm"
142149msgstr "Потвърди"
@@ -169,7 +176,7 @@ msgstr ""
169176msgid "Search"
170177msgstr "Търсене"
171178
172−#: qml/Shell.qml:348
179+#: qml/Shell.qml:334
173180#, qt-format
174181msgid "Please enter %1"
175182msgstr "Моля, въведете %1"
po/br.po+68−54
@@ -7,44 +7,46 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-04-15 18:15+0000\n"
12−"Last-Translator: Rouxel <vincent.rouxel@mailoo.org>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-16 11:41+0000\n"
12+"Last-Translator: Fohanno Thierry <thierry.fohanno@ofis-bzh.org>\n"
1313"Language-Team: Breton <br@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
2222msgid "Lock to Launcher"
23−msgstr ""
23+msgstr "Stagañ ouzh al lañser"
2424
2525#: plugins/Unity/Launcher/launcheritem.cpp:73
2626msgid "Unlock from Launcher"
27−msgstr ""
27+msgstr "Distagañ diouzh al lañser"
2828
2929#: qml/Components/EdgeDemoOverlay.qml:151
3030msgid "Skip intro"
31−msgstr ""
31+msgstr "Tremen hep sellet ouzh an digoradur"
3232
3333#: qml/Components/EdgeDemo.qml:113
3434msgid "Right edge"
35−msgstr ""
35+msgstr "Bord dehoù"
3636
3737#: qml/Components/EdgeDemo.qml:114
3838msgid "Try swiping from the right edge to unlock the phone"
3939msgstr ""
40+"Lakait ho piz da riklañ adalek ar bord dehoù da zibrennañ ar pellgomzer."
4041
4142#: qml/Components/EdgeDemo.qml:145
4243msgid "Top edge"
43−msgstr ""
44+msgstr "Bord uhelañ"
4445
4546#: qml/Components/EdgeDemo.qml:146
4647msgid "Try swiping from the top edge to access the indicators"
4748msgstr ""
49+"Lakait ho piz da riklañ adalek ar bord uhelañ da lakaat ar merkerioù war wel."
4850
4951#: qml/Components/EdgeDemo.qml:171
5052msgid "Close"
@@ -53,116 +55,128 @@ msgstr "Serriñ"
5355#: qml/Components/EdgeDemo.qml:172
5456msgid "Swipe up again to close the settings screen"
5557msgstr ""
58+"Lakait ho piz da riklañ war-du ar bord uhelañ da serriñ skramm an arventennoù"
5659
5760#: qml/Components/EdgeDemo.qml:199
5861msgid "Left edge"
59−msgstr ""
62+msgstr "Bord kleiz"
6063
6164#: qml/Components/EdgeDemo.qml:200
6265msgid "Swipe from the left to reveal the launcher for quick access to apps"
6366msgstr ""
67+"Lakait ho piz da riklañ adalek ar bord kleiz da ziskouez al lañser arloadoù "
68+"prim."
6469
6570#: qml/Components/EdgeDemo.qml:227
6671msgid "Well done"
67−msgstr ""
72+msgstr "Gourc'hemennoù !"
6873
6974#: qml/Components/EdgeDemo.qml:228
7075msgid ""
7176"You have now mastered the edge gestures and can start using the "
7277"phone<br><br>Tap on the screen to start"
7378msgstr ""
79+"Mestroniañ a rit ar jestroù ha gallout a rit kregiñ da implijout ar "
80+"pellgomzer<br><br>Touchit d'ar skramm evit kregiñ ganti"
81+
82+#: qml/Components/Lockscreen.qml:214
83+msgid "Emergency Call"
84+msgstr "Pellgomzadenn vallus"
85+
86+#: qml/Components/Lockscreen.qml:231
87+msgid "OK"
88+msgstr "Mat eo"
7489
7590#: qml/Components/PageHeader.qml:365
7691msgid "Recent searches"
77−msgstr ""
92+msgstr "Enklaskoù graet nevez zo"
93+
94+#: qml/Components/PassphraseLockscreen.qml:60
95+#, qt-format
96+msgid "Hello %1"
97+msgstr "Demat %1"
98+
99+#: qml/Components/PassphraseLockscreen.qml:60
100+msgid "Hello"
101+msgstr "Demat"
102+
103+#: qml/Components/PinLockscreen.qml:198
104+msgid "CANCEL"
105+msgstr "NULLAÑ"
106+
107+#: qml/Components/PinLockscreen.qml:216
108+msgid "DONE"
109+msgstr "ECHU"
78110
79111#: qml/Components/SeeMore.qml:35
80112msgid "See more"
81−msgstr ""
113+msgstr "Gwelet muioc'h"
82114
83115#: qml/Components/SeeMore.qml:58
84116msgid "See less"
85−msgstr ""
117+msgstr "Gwelet nebeutoc'h"
86118
87119#: qml/Dash/DashApps.qml:37
88120msgid "Recent"
89−msgstr ""
90−
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
121+msgstr "Nevez zo"
95122
96123#: qml/Dash/Previews/PreviewActionCombo.qml:34
97124msgid "More..."
98−msgstr ""
125+msgstr "Muioc'h..."
99126
100127#: qml/Dash/Previews/PreviewActionCombo.qml:34
101128msgid "Less..."
102−msgstr ""
129+msgstr "Nebeutoc'h..."
103130
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
131+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105132msgid "Rate this"
106−msgstr ""
133+msgstr "Priziit an dra-mañ"
107134
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
135+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109136msgid "Add a review"
110−msgstr ""
137+msgstr "Ouzhpennañ un ali"
111138
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
139+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113140msgid "Send"
114−msgstr ""
141+msgstr "Kas"
115142
116−#: qml/Greeter/Greeter.qml:151
143+#: qml/Greeter/Greeter.qml:157
117144msgid "Swipe to unlock"
118−msgstr ""
119−
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
145+msgstr "Riklañ evit dibrennañ"
132146
133147#: qml/Hud/HudParametrizedActionsPage.qml:132
134148msgid "Confirm"
135−msgstr ""
149+msgstr "Kadarnaat"
136150
137151#: qml/Hud/Hud.qml:61 qml/Hud/Hud.qml:99 qml/Hud/Hud.qml:372
138152msgid "Type or say a command"
139−msgstr ""
153+msgstr "Skrivit pe lavarit un urzhiad"
140154
141155#: qml/Hud/Hud.qml:84
142156msgid "Loading. Please Wait..."
143−msgstr ""
157+msgstr "O kargañ. Gortozit, mar plij..."
144158
145159#: qml/Hud/Hud.qml:89
146160msgid "Speak Now..."
147−msgstr ""
161+msgstr "Komzit bremañ..."
148162
149163#: qml/Hud/Hud.qml:94
150164msgid "Speaking..."
151−msgstr ""
165+msgstr "O komz..."
152166
153167#: qml/Notifications/NotificationMenuItemFactory.qml:91
154168msgid "Show password"
155−msgstr ""
169+msgstr "Diskouez ar ger-tremen"
156170
157171#: qml/Notifications/NotificationMenuItemFactory.qml:103
158172msgid "Please enter SIM PIN"
159−msgstr ""
173+msgstr "Ebarzhit kod PIN ho kartenn SIM, mar plij"
160174
161175#: qml/Panel/SearchIndicator.qml:27
162176msgid "Search"
163−msgstr ""
177+msgstr "Klask"
164178
165−#: qml/Shell.qml:348
179+#: qml/Shell.qml:334
166180#, qt-format
167181msgid "Please enter %1"
168−msgstr ""
182+msgstr "Ebarzhit %1, mar plij"
po/bs.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-16 22:33+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1313"Language-Team: Bosnian <bs@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/ca.po+40−31
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-14 08:15+0000\n"
12−"Last-Translator: Adolfo Jayme <fitoschido@gmail.com>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-13 07:47+0000\n"
12+"Last-Translator: David Planella <david.planella@ubuntu.com>\n"
1313"Language-Team: Catalan <ca@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-16 06:52+0000\n"
18−"X-Generator: Launchpad (build 17007)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -77,11 +77,38 @@ msgid ""
7777"You have now mastered the edge gestures and can start using the "
7878"phone<br><br>Tap on the screen to start"
7979msgstr ""
80+"Ja heu après com utilitzar els gestos de les vores per fer servir el "
81+"telèfon<br><br>Feu un toc a la pantalla per començar"
82+
83+#: qml/Components/Lockscreen.qml:214
84+msgid "Emergency Call"
85+msgstr "Trucada d'emergència"
86+
87+#: qml/Components/Lockscreen.qml:231
88+msgid "OK"
89+msgstr "D'acord"
8090
8191#: qml/Components/PageHeader.qml:365
8292msgid "Recent searches"
8393msgstr "Cerques recents"
8494
95+#: qml/Components/PassphraseLockscreen.qml:60
96+#, qt-format
97+msgid "Hello %1"
98+msgstr "Hola %1"
99+
100+#: qml/Components/PassphraseLockscreen.qml:60
101+msgid "Hello"
102+msgstr "Hola"
103+
104+#: qml/Components/PinLockscreen.qml:198
105+msgid "CANCEL"
106+msgstr "Cancel·la"
107+
108+#: qml/Components/PinLockscreen.qml:216
109+msgid "DONE"
110+msgstr "Fet"
111+
85112#: qml/Components/SeeMore.qml:35
86113msgid "See more"
87114msgstr "Mostra'n més"
@@ -92,12 +119,7 @@ msgstr "Mostra'n menys"
92119
93120#: qml/Dash/DashApps.qml:37
94121msgid "Recent"
95−msgstr ""
96−
97−#: qml/Dash/PreviewListView.qml:52
98−#, qt-format
99−msgid "%1 Preview"
100−msgstr "Previsualització de %1"
122+msgstr "Recents"
101123
102124#: qml/Dash/Previews/PreviewActionCombo.qml:34
103125msgid "More..."
@@ -107,34 +129,21 @@ msgstr "Més..."
107129msgid "Less..."
108130msgstr "Menys..."
109131
110−#: qml/Dash/Previews/PreviewRatingInput.qml:81
132+#: qml/Dash/Previews/PreviewRatingInput.qml:82
111133msgid "Rate this"
112−msgstr ""
134+msgstr "Puntueu-ho"
113135
114−#: qml/Dash/Previews/PreviewRatingInput.qml:126
136+#: qml/Dash/Previews/PreviewRatingInput.qml:128
115137msgid "Add a review"
116138msgstr "Afegiu una ressenya"
117139
118−#: qml/Dash/Previews/PreviewRatingInput.qml:166
140+#: qml/Dash/Previews/PreviewRatingInput.qml:168
119141msgid "Send"
120142msgstr "Envia"
121143
122−#: qml/Greeter/Greeter.qml:151
144+#: qml/Greeter/Greeter.qml:157
123145msgid "Swipe to unlock"
124−msgstr ""
125−
126−#: qml/Greeter/Lockscreen.qml:149
127−msgid "Emergency Call"
128−msgstr "Trucada d'emergència"
129−
130−#: qml/Greeter/PassphraseLockscreen.qml:59
131−#, qt-format
132−msgid "Hello %1"
133−msgstr "Hola %1"
134−
135−#: qml/Greeter/PassphraseLockscreen.qml:59
136−msgid "Hello"
137−msgstr "Hola"
146+msgstr "Feu lliscar el dit per desbloquejar"
138147
139148#: qml/Hud/HudParametrizedActionsPage.qml:132
140149msgid "Confirm"
@@ -168,7 +177,7 @@ msgstr "Introduïu el PIN de la targeta SIM"
168177msgid "Search"
169178msgstr "Cerca"
170179
171−#: qml/Shell.qml:348
180+#: qml/Shell.qml:334
172181#, qt-format
173182msgid "Please enter %1"
174183msgstr "Introduïu %1"
po/ckb.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-21 11:05+0000\n"
1212"Last-Translator: Aras <aras.noori@gmail.com>\n"
1313"Language-Team: Kurdish (Sorani) <ckb@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "هێڵی فریاگوزاری"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "دوایین گەڕانەکان"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "سڵاو %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "سڵاو"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "پلە دابنی بۆی"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "پێداچوونەوە زۆر بکە"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "ناردن"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "هێڵی فریاگوزاری"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "سڵاو %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "سڵاو"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "پشتڕاستکردنەوە"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "گەڕان"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "تکایە %1 بنووسە"
po/cs.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-08 10:11+0000\n"
1212"Last-Translator: Tadeáš Pařík <tadeas.parik@gmail.com>\n"
1313"Language-Team: Czech <cs@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "Tísňové volání"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Poslední vyhledávání"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "Ahoj %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "Ahoj"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "Ohodnoťte to"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "Přidat recenzi"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "Odeslat"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "Tísňové volání"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "Ahoj %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "Ahoj"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Potvrdit"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Hledat"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "Zadejte prosím %1"
po/da.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-14 20:16+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1313"Language-Team: Danish <da@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/de.po+46−36
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-20 13:45+0000\n"
12−"Last-Translator: Tobias Bannert <Unknown>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-06 19:34+0000\n"
12+"Last-Translator: Phillip Sz <Unknown>\n"
1313"Language-Team: German <de@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-22 06:49+0000\n"
18−"X-Generator: Launchpad (build 17017)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -32,19 +32,20 @@ msgstr "Einführung überspringen"
3232
3333#: qml/Components/EdgeDemo.qml:113
3434msgid "Right edge"
35−msgstr "Rechter Rand"
35+msgstr "Rechter Bildschirmrand"
3636
3737#: qml/Components/EdgeDemo.qml:114
3838msgid "Try swiping from the right edge to unlock the phone"
39−msgstr "Vom rechten Rand her wischen, um das Gerät zu entsperren"
39+msgstr "Vom rechten Bildschirmrand her wischen, um das Gerät zu entsperren"
4040
4141#: qml/Components/EdgeDemo.qml:145
4242msgid "Top edge"
43−msgstr "Oberer Rand"
43+msgstr "Oberer Bildschirmrand"
4444
4545#: qml/Components/EdgeDemo.qml:146
4646msgid "Try swiping from the top edge to access the indicators"
47−msgstr "Vom oberen Rand her wischen, um die Statusmeldungen anzuzeigen"
47+msgstr ""
48+"Vom oberen Bildschirmrand her wischen, um die Statusmeldungen anzuzeigen"
4849
4950#: qml/Components/EdgeDemo.qml:171
5051msgid "Close"
@@ -52,7 +53,7 @@ msgstr "Schließen"
5253
5354#: qml/Components/EdgeDemo.qml:172
5455msgid "Swipe up again to close the settings screen"
55−msgstr "Nochmals nach oben wischen, um das Einstellungsmenü zu schließen"
56+msgstr "Wischen Sie erneut nach oben, um das Einstellungsmenü zu schließen"
5657
5758#: qml/Components/EdgeDemo.qml:199
5859msgid "Left edge"
@@ -61,8 +62,8 @@ msgstr "Linker Rand"
6162#: qml/Components/EdgeDemo.qml:200
6263msgid "Swipe from the left to reveal the launcher for quick access to apps"
6364msgstr ""
64−"Von links wischen, um die Seitenleiste für den Anwendungs-Schnellzugriff "
65−"aufzurufen"
65+"Wischen Sie von links nach rechts, um die Seitenleiste für den Anwendungs-"
66+"Schnellzugriff aufzurufen"
6667
6768#: qml/Components/EdgeDemo.qml:227
6869msgid "Well done"
@@ -73,10 +74,37 @@ msgid ""
7374"You have now mastered the edge gestures and can start using the "
7475"phone<br><br>Tap on the screen to start"
7576msgstr ""
77+"Sie haben nun die Kantengesten erfolgreich erlernt und können das Telefon "
78+"nun nutzen<br><br>Zum Starten auf den Bildschirm tippen"
79+
80+#: qml/Components/Lockscreen.qml:214
81+msgid "Emergency Call"
82+msgstr "Notruf"
83+
84+#: qml/Components/Lockscreen.qml:231
85+msgid "OK"
86+msgstr ""
7687
7788#: qml/Components/PageHeader.qml:365
7889msgid "Recent searches"
79−msgstr "Letzte Suchbegriffe"
90+msgstr "Zuletzt verwendete Suchbegriffe"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+#, qt-format
94+msgid "Hello %1"
95+msgstr "Hallo %1"
96+
97+#: qml/Components/PassphraseLockscreen.qml:60
98+msgid "Hello"
99+msgstr "Hallo"
100+
101+#: qml/Components/PinLockscreen.qml:198
102+msgid "CANCEL"
103+msgstr ""
104+
105+#: qml/Components/PinLockscreen.qml:216
106+msgid "DONE"
107+msgstr ""
80108
81109#: qml/Components/SeeMore.qml:35
82110msgid "See more"
@@ -90,11 +118,6 @@ msgstr "Weniger ansehen"
90118msgid "Recent"
91119msgstr "Kürzlich"
92120
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr "%1 Vorschau"
97−
98121#: qml/Dash/Previews/PreviewActionCombo.qml:34
99122msgid "More..."
100123msgstr "Mehr …"
@@ -103,35 +126,22 @@ msgstr "Mehr …"
103126msgid "Less..."
104127msgstr "Weniger …"
105128
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
129+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107130msgid "Rate this"
108131msgstr "Bewerten"
109132
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
133+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111134msgid "Add a review"
112135msgstr "Bewertung hinzufügen"
113136
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
137+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115138msgid "Send"
116139msgstr "Senden"
117140
118−#: qml/Greeter/Greeter.qml:151
141+#: qml/Greeter/Greeter.qml:157
119142msgid "Swipe to unlock"
120143msgstr "Wischen zum Entsperren"
121144
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "Notruf"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "Hallo %1"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "Hallo"
134−
135145#: qml/Hud/HudParametrizedActionsPage.qml:132
136146msgid "Confirm"
137147msgstr "Bestätigen"
@@ -164,7 +174,7 @@ msgstr "Bitte die PIN der SIM eingeben"
164174msgid "Search"
165175msgstr "Suchen"
166176
167−#: qml/Shell.qml:348
177+#: qml/Shell.qml:334
168178#, qt-format
169179msgid "Please enter %1"
170180msgstr "Bitte geben Sie %1 ein"
po/el.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-02-26 09:58+0000\n"
1212"Last-Translator: j3lc <x_nikos@yahoo.gr>\n"
1313"Language-Team: Greek <el@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -76,10 +76,35 @@ msgstr ""
7676"Πλέον γνωρίζετε τις χειρονομίες από τα άκρα και μπορείτε να ξεκινήσετε να "
7777"χρησιμοποιείτε το τηλέφωνο<br><br>Αγγίξτε την οθόνη για να ξεκινήσετε"
7878
79+#: qml/Components/Lockscreen.qml:214
80+msgid "Emergency Call"
81+msgstr "Κλήση έκτακτης ανάγκης"
82+
83+#: qml/Components/Lockscreen.qml:231
84+msgid "OK"
85+msgstr ""
86+
7987#: qml/Components/PageHeader.qml:365
8088msgid "Recent searches"
8189msgstr "Πρόσφατες αναζητήσεις"
8290
91+#: qml/Components/PassphraseLockscreen.qml:60
92+#, qt-format
93+msgid "Hello %1"
94+msgstr "Γεια σας %1"
95+
96+#: qml/Components/PassphraseLockscreen.qml:60
97+msgid "Hello"
98+msgstr "Γεια σας"
99+
100+#: qml/Components/PinLockscreen.qml:198
101+msgid "CANCEL"
102+msgstr ""
103+
104+#: qml/Components/PinLockscreen.qml:216
105+msgid "DONE"
106+msgstr ""
107+
83108#: qml/Components/SeeMore.qml:35
84109msgid "See more"
85110msgstr "Περρισότερα"
@@ -92,11 +117,6 @@ msgstr "Λιγότερα"
92117msgid "Recent"
93118msgstr ""
94119
95−#: qml/Dash/PreviewListView.qml:52
96−#, qt-format
97−msgid "%1 Preview"
98−msgstr ""
99−
100120#: qml/Dash/Previews/PreviewActionCombo.qml:34
101121msgid "More..."
102122msgstr ""
@@ -105,35 +125,22 @@ msgstr ""
105125msgid "Less..."
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:81
128+#: qml/Dash/Previews/PreviewRatingInput.qml:82
109129msgid "Rate this"
110130msgstr "Βαθμολογήστε το"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:126
132+#: qml/Dash/Previews/PreviewRatingInput.qml:128
113133msgid "Add a review"
114134msgstr "Προσθέστε την αξιολόγησή σας"
115135
116−#: qml/Dash/Previews/PreviewRatingInput.qml:166
136+#: qml/Dash/Previews/PreviewRatingInput.qml:168
117137msgid "Send"
118138msgstr "Αποστολή"
119139
120−#: qml/Greeter/Greeter.qml:151
140+#: qml/Greeter/Greeter.qml:157
121141msgid "Swipe to unlock"
122142msgstr ""
123143
124−#: qml/Greeter/Lockscreen.qml:149
125−msgid "Emergency Call"
126−msgstr "Κλήση έκτακτης ανάγκης"
127−
128−#: qml/Greeter/PassphraseLockscreen.qml:59
129−#, qt-format
130−msgid "Hello %1"
131−msgstr "Γεια σας %1"
132−
133−#: qml/Greeter/PassphraseLockscreen.qml:59
134−msgid "Hello"
135−msgstr "Γεια σας"
136−
137144#: qml/Hud/HudParametrizedActionsPage.qml:132
138145msgid "Confirm"
139146msgstr "Επιβεβαίωση"
@@ -166,7 +173,7 @@ msgstr "Παρακαλώ εισάγετε το PIN της κάρτας SIM"
166173msgid "Search"
167174msgstr "Αναζήτηση"
168175
169−#: qml/Shell.qml:348
176+#: qml/Shell.qml:334
170177#, qt-format
171178msgid "Please enter %1"
172179msgstr "Πληκτρολογήστε %1"
po/en_AU.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-09-28 07:46+0000\n"
1212"Last-Translator: Jared Norris <jarednorris@ubuntu.com>\n"
1313"Language-Team: English (Australia) <en_AU@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "Emergency Call"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Recent searches"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "Hello %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "Hello"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "Rate this"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "Add a review"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "Send"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "Emergency Call"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "Hello %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "Hello"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Confirm"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Search"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "Please enter %1"
po/en_GB.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-03-07 13:27+0000\n"
1212"Last-Translator: Andi Chandler <Unknown>\n"
1313"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -74,10 +74,35 @@ msgstr ""
7474"You have now mastered the edge gestures and can start using the "
7575"phone<br><br>Tap on the screen to start"
7676
77+#: qml/Components/Lockscreen.qml:214
78+msgid "Emergency Call"
79+msgstr "Emergency Call"
80+
81+#: qml/Components/Lockscreen.qml:231
82+msgid "OK"
83+msgstr ""
84+
7785#: qml/Components/PageHeader.qml:365
7886msgid "Recent searches"
7987msgstr "Recent searches"
8088
89+#: qml/Components/PassphraseLockscreen.qml:60
90+#, qt-format
91+msgid "Hello %1"
92+msgstr "Hello %1"
93+
94+#: qml/Components/PassphraseLockscreen.qml:60
95+msgid "Hello"
96+msgstr "Hello"
97+
98+#: qml/Components/PinLockscreen.qml:198
99+msgid "CANCEL"
100+msgstr ""
101+
102+#: qml/Components/PinLockscreen.qml:216
103+msgid "DONE"
104+msgstr ""
105+
81106#: qml/Components/SeeMore.qml:35
82107msgid "See more"
83108msgstr "See more"
@@ -90,11 +115,6 @@ msgstr "See less"
90115msgid "Recent"
91116msgstr ""
92117
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr ""
97−
98118#: qml/Dash/Previews/PreviewActionCombo.qml:34
99119msgid "More..."
100120msgstr "More..."
@@ -103,35 +123,22 @@ msgstr "More..."
103123msgid "Less..."
104124msgstr "Less..."
105125
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
126+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107127msgid "Rate this"
108128msgstr "Rate this"
109129
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
130+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111131msgid "Add a review"
112132msgstr "Add a review"
113133
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
134+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115135msgid "Send"
116136msgstr "Send"
117137
118−#: qml/Greeter/Greeter.qml:151
138+#: qml/Greeter/Greeter.qml:157
119139msgid "Swipe to unlock"
120140msgstr ""
121141
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "Emergency Call"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "Hello %1"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "Hello"
134−
135142#: qml/Hud/HudParametrizedActionsPage.qml:132
136143msgid "Confirm"
137144msgstr "Confirm"
@@ -164,7 +171,7 @@ msgstr "Please enter SIM PIN"
164171msgid "Search"
165172msgstr "Search"
166173
167−#: qml/Shell.qml:348
174+#: qml/Shell.qml:334
168175#, qt-format
169176msgid "Please enter %1"
170177msgstr "Please enter %1"
po/eo.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-26 22:35+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1313"Language-Team: Esperanto <eo@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/es.po+37−30
@@ -7,24 +7,24 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-15 15:38+0000\n"
12−"Last-Translator: Adolfo Jayme <fitoschido@gmail.com>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-02 06:28+0000\n"
12+"Last-Translator: benjisp94 <benjisp94@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"
17−"X-Launchpad-Export-Date: 2014-05-16 06:52+0000\n"
18−"X-Generator: Launchpad (build 17007)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
2222msgid "Lock to Launcher"
23−msgstr "Mantener en el lanzador"
23+msgstr "Fijar al lanzador"
2424
2525#: plugins/Unity/Launcher/launcheritem.cpp:73
2626msgid "Unlock from Launcher"
27−msgstr "No mantener en el lanzador"
27+msgstr "Quitar del lanzador"
2828
2929#: qml/Components/EdgeDemoOverlay.qml:151
3030msgid "Skip intro"
@@ -77,10 +77,35 @@ msgstr ""
7777"Ahora domina los gestos de los bordes y puede usar el teléfono<br><br>Toque "
7878"la pantalla para comenzar"
7979
80+#: qml/Components/Lockscreen.qml:214
81+msgid "Emergency Call"
82+msgstr "Llamada de emergencia"
83+
84+#: qml/Components/Lockscreen.qml:231
85+msgid "OK"
86+msgstr ""
87+
8088#: qml/Components/PageHeader.qml:365
8189msgid "Recent searches"
8290msgstr "Búsquedas recientes"
8391
92+#: qml/Components/PassphraseLockscreen.qml:60
93+#, qt-format
94+msgid "Hello %1"
95+msgstr "Hola, %1"
96+
97+#: qml/Components/PassphraseLockscreen.qml:60
98+msgid "Hello"
99+msgstr "Hola"
100+
101+#: qml/Components/PinLockscreen.qml:198
102+msgid "CANCEL"
103+msgstr ""
104+
105+#: qml/Components/PinLockscreen.qml:216
106+msgid "DONE"
107+msgstr ""
108+
84109#: qml/Components/SeeMore.qml:35
85110msgid "See more"
86111msgstr "Ver más"
@@ -93,11 +118,6 @@ msgstr "Ver menos"
93118msgid "Recent"
94119msgstr "Recientes"
95120
96−#: qml/Dash/PreviewListView.qml:52
97−#, qt-format
98−msgid "%1 Preview"
99−msgstr "Previsualización de %1"
100−
101121#: qml/Dash/Previews/PreviewActionCombo.qml:34
102122msgid "More..."
103123msgstr "Más…"
@@ -106,35 +126,22 @@ msgstr "Más…"
106126msgid "Less..."
107127msgstr "Menos…"
108128
109−#: qml/Dash/Previews/PreviewRatingInput.qml:81
129+#: qml/Dash/Previews/PreviewRatingInput.qml:82
110130msgid "Rate this"
111131msgstr "Valorar esto"
112132
113−#: qml/Dash/Previews/PreviewRatingInput.qml:126
133+#: qml/Dash/Previews/PreviewRatingInput.qml:128
114134msgid "Add a review"
115135msgstr "Añadir una reseña"
116136
117−#: qml/Dash/Previews/PreviewRatingInput.qml:166
137+#: qml/Dash/Previews/PreviewRatingInput.qml:168
118138msgid "Send"
119139msgstr "Enviar"
120140
121−#: qml/Greeter/Greeter.qml:151
141+#: qml/Greeter/Greeter.qml:157
122142msgid "Swipe to unlock"
123143msgstr "Deslice para desbloquear"
124144
125−#: qml/Greeter/Lockscreen.qml:149
126−msgid "Emergency Call"
127−msgstr "Llamada de emergencia"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−#, qt-format
131−msgid "Hello %1"
132−msgstr "Hola, %1"
133−
134−#: qml/Greeter/PassphraseLockscreen.qml:59
135−msgid "Hello"
136−msgstr "Hola"
137−
138145#: qml/Hud/HudParametrizedActionsPage.qml:132
139146msgid "Confirm"
140147msgstr "Confirmar"
@@ -167,7 +174,7 @@ msgstr "Escriba el PIN de la SIM"
167174msgid "Search"
168175msgstr "Buscar"
169176
170−#: qml/Shell.qml:348
177+#: qml/Shell.qml:334
171178#, qt-format
172179msgid "Please enter %1"
173180msgstr "Introduzca %1"
po/eu.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-03-30 12:44+0000\n"
1212"Last-Translator: Ibai Oihanguren Sala <Unknown>\n"
1313"Language-Team: Basque <eu@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -76,10 +76,35 @@ msgstr ""
7676"Jadanik ezagutzen dituzu ertzetako keinuak, eta mugikorra erabiltzen has "
7777"zaitezke<br><br>Ukitu pantaila hasteko"
7878
79+#: qml/Components/Lockscreen.qml:214
80+msgid "Emergency Call"
81+msgstr "Larrialdi-deia"
82+
83+#: qml/Components/Lockscreen.qml:231
84+msgid "OK"
85+msgstr ""
86+
7987#: qml/Components/PageHeader.qml:365
8088msgid "Recent searches"
8189msgstr "Azken bilaketak"
8290
91+#: qml/Components/PassphraseLockscreen.qml:60
92+#, qt-format
93+msgid "Hello %1"
94+msgstr "Kaixo %1"
95+
96+#: qml/Components/PassphraseLockscreen.qml:60
97+msgid "Hello"
98+msgstr "Kaixo"
99+
100+#: qml/Components/PinLockscreen.qml:198
101+msgid "CANCEL"
102+msgstr ""
103+
104+#: qml/Components/PinLockscreen.qml:216
105+msgid "DONE"
106+msgstr ""
107+
83108#: qml/Components/SeeMore.qml:35
84109msgid "See more"
85110msgstr "Ikusi gehiago"
@@ -92,11 +117,6 @@ msgstr "Ikusi gutxiago"
92117msgid "Recent"
93118msgstr "Azkenak"
94119
95−#: qml/Dash/PreviewListView.qml:52
96−#, qt-format
97−msgid "%1 Preview"
98−msgstr "%1 aurrebista"
99−
100120#: qml/Dash/Previews/PreviewActionCombo.qml:34
101121msgid "More..."
102122msgstr "Gehiago..."
@@ -105,35 +125,22 @@ msgstr "Gehiago..."
105125msgid "Less..."
106126msgstr "Gutxiago..."
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:81
128+#: qml/Dash/Previews/PreviewRatingInput.qml:82
109129msgid "Rate this"
110130msgstr "Puntuatu hau"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:126
132+#: qml/Dash/Previews/PreviewRatingInput.qml:128
113133msgid "Add a review"
114134msgstr "Gehitu kritika"
115135
116−#: qml/Dash/Previews/PreviewRatingInput.qml:166
136+#: qml/Dash/Previews/PreviewRatingInput.qml:168
117137msgid "Send"
118138msgstr "Bidali"
119139
120−#: qml/Greeter/Greeter.qml:151
140+#: qml/Greeter/Greeter.qml:157
121141msgid "Swipe to unlock"
122142msgstr ""
123143
124−#: qml/Greeter/Lockscreen.qml:149
125−msgid "Emergency Call"
126−msgstr "Larrialdi-deia"
127−
128−#: qml/Greeter/PassphraseLockscreen.qml:59
129−#, qt-format
130−msgid "Hello %1"
131−msgstr "Kaixo %1"
132−
133−#: qml/Greeter/PassphraseLockscreen.qml:59
134−msgid "Hello"
135−msgstr "Kaixo"
136−
137144#: qml/Hud/HudParametrizedActionsPage.qml:132
138145msgid "Confirm"
139146msgstr "Baieztatu"
@@ -166,7 +173,7 @@ msgstr "Sartu SIMaren PINa"
166173msgid "Search"
167174msgstr "Bilatu"
168175
169−#: qml/Shell.qml:348
176+#: qml/Shell.qml:334
170177#, qt-format
171178msgid "Please enter %1"
172179msgstr "Sartu %1"
po/fa.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-10-31 19:02+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1313"Language-Team: Persian <fa@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/fi.po+34−27
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-15 13:06+0000\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-14 10:23+0000\n"
1212"Last-Translator: Jiri Grönroos <Unknown>\n"
1313"Language-Team: Finnish <fi@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-16 06:52+0000\n"
18−"X-Generator: Launchpad (build 17007)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -74,10 +74,35 @@ msgstr ""
7474"Hallitset nyt reunaeleet, joten voit aloittaa puhelimen "
7575"käytön<br><br>Napauta näyttöä aloittaaksesi"
7676
77+#: qml/Components/Lockscreen.qml:214
78+msgid "Emergency Call"
79+msgstr "Hätäpuhelu"
80+
81+#: qml/Components/Lockscreen.qml:231
82+msgid "OK"
83+msgstr "OK"
84+
7785#: qml/Components/PageHeader.qml:365
7886msgid "Recent searches"
7987msgstr "Viimeisimmät haut"
8088
89+#: qml/Components/PassphraseLockscreen.qml:60
90+#, qt-format
91+msgid "Hello %1"
92+msgstr "Hei %1!"
93+
94+#: qml/Components/PassphraseLockscreen.qml:60
95+msgid "Hello"
96+msgstr "Hei"
97+
98+#: qml/Components/PinLockscreen.qml:198
99+msgid "CANCEL"
100+msgstr "PERU"
101+
102+#: qml/Components/PinLockscreen.qml:216
103+msgid "DONE"
104+msgstr "VALMIS"
105+
81106#: qml/Components/SeeMore.qml:35
82107msgid "See more"
83108msgstr "Näytä lisää"
@@ -90,11 +115,6 @@ msgstr "Näytä vähemmän"
90115msgid "Recent"
91116msgstr "Viimeisimmät"
92117
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr "%1 esikatselu"
97−
98118#: qml/Dash/Previews/PreviewActionCombo.qml:34
99119msgid "More..."
100120msgstr "Lisää..."
@@ -103,35 +123,22 @@ msgstr "Lisää..."
103123msgid "Less..."
104124msgstr "Vähemmän..."
105125
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
126+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107127msgid "Rate this"
108128msgstr "Arvioi tämä"
109129
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
130+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111131msgid "Add a review"
112132msgstr "Lisää arvostelu"
113133
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
134+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115135msgid "Send"
116136msgstr "Lähetä"
117137
118−#: qml/Greeter/Greeter.qml:151
138+#: qml/Greeter/Greeter.qml:157
119139msgid "Swipe to unlock"
120140msgstr "Avaa pyyhkäisemällä"
121141
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "Hätäpuhelu"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "Hei %1!"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "Hei"
134−
135142#: qml/Hud/HudParametrizedActionsPage.qml:132
136143msgid "Confirm"
137144msgstr "Hyväksy"
@@ -164,7 +171,7 @@ msgstr "Anna SIM-kortin PIN-koodi"
164171msgid "Search"
165172msgstr "Hae"
166173
167−#: qml/Shell.qml:348
174+#: qml/Shell.qml:334
168175#, qt-format
169176msgid "Please enter %1"
170177msgstr "Kirjoita %1"
po/fo.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-14 20:08+0000\n"
1212"Last-Translator: Jógvan Olsen <jeggy@jebster.net>\n"
1313"Language-Team: Faroese <fo@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Vátta"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Leita"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/fr.po+35−28
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-08 17:29+0000\n"
12−"Last-Translator: Sébastien Maes <nautilussebastien@gmail.com>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-08 20:45+0000\n"
12+"Last-Translator: Pierre Slamich <pierre.slamich@gmail.com>\n"
1313"Language-Team: French <fr@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-10 08:01+0000\n"
18−"X-Generator: Launchpad (build 16996)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -81,10 +81,35 @@ msgstr ""
8181"Vous maîtrisez maintenant les différents gestes et pouvez commencer à "
8282"utiliser le téléphone<br><br>Appuyez sur l'écran pour commencer"
8383
84+#: qml/Components/Lockscreen.qml:214
85+msgid "Emergency Call"
86+msgstr "Appel d'urgence"
87+
88+#: qml/Components/Lockscreen.qml:231
89+msgid "OK"
90+msgstr "OK"
91+
8492#: qml/Components/PageHeader.qml:365
8593msgid "Recent searches"
8694msgstr "Recherches récentes"
8795
96+#: qml/Components/PassphraseLockscreen.qml:60
97+#, qt-format
98+msgid "Hello %1"
99+msgstr "Bonjour %1"
100+
101+#: qml/Components/PassphraseLockscreen.qml:60
102+msgid "Hello"
103+msgstr "Bonjour"
104+
105+#: qml/Components/PinLockscreen.qml:198
106+msgid "CANCEL"
107+msgstr "ANNULER"
108+
109+#: qml/Components/PinLockscreen.qml:216
110+msgid "DONE"
111+msgstr "TERMINÉ"
112+
88113#: qml/Components/SeeMore.qml:35
89114msgid "See more"
90115msgstr "Voir plus"
@@ -97,11 +122,6 @@ msgstr "Voir moins"
97122msgid "Recent"
98123msgstr "Récent"
99124
100−#: qml/Dash/PreviewListView.qml:52
101−#, qt-format
102−msgid "%1 Preview"
103−msgstr "%1 Aperçu"
104−
105125#: qml/Dash/Previews/PreviewActionCombo.qml:34
106126msgid "More..."
107127msgstr "Plus..."
@@ -110,35 +130,22 @@ msgstr "Plus..."
110130msgid "Less..."
111131msgstr "Moins..."
112132
113−#: qml/Dash/Previews/PreviewRatingInput.qml:81
133+#: qml/Dash/Previews/PreviewRatingInput.qml:82
114134msgid "Rate this"
115135msgstr "Evaluez ceci"
116136
117−#: qml/Dash/Previews/PreviewRatingInput.qml:126
137+#: qml/Dash/Previews/PreviewRatingInput.qml:128
118138msgid "Add a review"
119139msgstr "Ajouter un avis"
120140
121−#: qml/Dash/Previews/PreviewRatingInput.qml:166
141+#: qml/Dash/Previews/PreviewRatingInput.qml:168
122142msgid "Send"
123143msgstr "Envoyer"
124144
125−#: qml/Greeter/Greeter.qml:151
145+#: qml/Greeter/Greeter.qml:157
126146msgid "Swipe to unlock"
127147msgstr "Faites glisser pour déverrouiller"
128148
129−#: qml/Greeter/Lockscreen.qml:149
130−msgid "Emergency Call"
131−msgstr "Appel d'urgence"
132−
133−#: qml/Greeter/PassphraseLockscreen.qml:59
134−#, qt-format
135−msgid "Hello %1"
136−msgstr "Bonjour %1"
137−
138−#: qml/Greeter/PassphraseLockscreen.qml:59
139−msgid "Hello"
140−msgstr "Bonjour"
141−
142149#: qml/Hud/HudParametrizedActionsPage.qml:132
143150msgid "Confirm"
144151msgstr "Confirmez"
@@ -171,7 +178,7 @@ msgstr "Veuillez entrer le code PIN de votre carte SIM"
171178msgid "Search"
172179msgstr "Rechercher"
173180
174−#: qml/Shell.qml:348
181+#: qml/Shell.qml:334
175182#, qt-format
176183msgid "Please enter %1"
177184msgstr "Veuillez saisir %1"
po/gd.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-05-17 21:08+0000\n"
1212"Last-Translator: Akerbeltz <fios@akerbeltz.org>\n"
1313"Language-Team: Gaelic; Scottish <gd@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-18 05:57+0000\n"
18−"X-Generator: Launchpad (build 17007)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -80,10 +80,35 @@ msgstr ""
8080"Fhuair thu air na gluasadan oire ceart a dhèanamh a-nis agus is urrainn dhut "
8181"am fòn a chleachdadh<br><br>Thoir gnogag air an sgrìn airson tòiseachadh"
8282
83+#: qml/Components/Lockscreen.qml:214
84+msgid "Emergency Call"
85+msgstr "Gairm èiginn"
86+
87+#: qml/Components/Lockscreen.qml:231
88+msgid "OK"
89+msgstr ""
90+
8391#: qml/Components/PageHeader.qml:365
8492msgid "Recent searches"
8593msgstr "Na lorg thu o chionn goirid"
8694
95+#: qml/Components/PassphraseLockscreen.qml:60
96+#, qt-format
97+msgid "Hello %1"
98+msgstr "Shin thu, %1"
99+
100+#: qml/Components/PassphraseLockscreen.qml:60
101+msgid "Hello"
102+msgstr "Shin thu"
103+
104+#: qml/Components/PinLockscreen.qml:198
105+msgid "CANCEL"
106+msgstr ""
107+
108+#: qml/Components/PinLockscreen.qml:216
109+msgid "DONE"
110+msgstr ""
111+
87112#: qml/Components/SeeMore.qml:35
88113msgid "See more"
89114msgstr "Seall barrachd"
@@ -96,11 +121,6 @@ msgstr "Seall nas lugha"
96121msgid "Recent"
97122msgstr "O chionn goirid"
98123
99−#: qml/Dash/PreviewListView.qml:52
100−#, qt-format
101−msgid "%1 Preview"
102−msgstr "Ro-shealladh %1"
103−
104124#: qml/Dash/Previews/PreviewActionCombo.qml:34
105125msgid "More..."
106126msgstr "Barrachd..."
@@ -109,35 +129,22 @@ msgstr "Barrachd..."
109129msgid "Less..."
110130msgstr "Nas lugha..."
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:81
132+#: qml/Dash/Previews/PreviewRatingInput.qml:82
113133msgid "Rate this"
114134msgstr "Rangaich seo"
115135
116−#: qml/Dash/Previews/PreviewRatingInput.qml:126
136+#: qml/Dash/Previews/PreviewRatingInput.qml:128
117137msgid "Add a review"
118138msgstr "Cuir lèirmheas ris"
119139
120−#: qml/Dash/Previews/PreviewRatingInput.qml:166
140+#: qml/Dash/Previews/PreviewRatingInput.qml:168
121141msgid "Send"
122142msgstr "Cuir"
123143
124−#: qml/Greeter/Greeter.qml:151
144+#: qml/Greeter/Greeter.qml:157
125145msgid "Swipe to unlock"
126146msgstr "Dèan grad-shlaighdeadh gus a' ghlas a thoirt dheth"
127147
128−#: qml/Greeter/Lockscreen.qml:149
129−msgid "Emergency Call"
130−msgstr "Gairm èiginn"
131−
132−#: qml/Greeter/PassphraseLockscreen.qml:59
133−#, qt-format
134−msgid "Hello %1"
135−msgstr "Shin thu, %1"
136−
137−#: qml/Greeter/PassphraseLockscreen.qml:59
138−msgid "Hello"
139−msgstr "Shin thu"
140−
141148#: qml/Hud/HudParametrizedActionsPage.qml:132
142149msgid "Confirm"
143150msgstr "Dearbhaich"
@@ -170,7 +177,7 @@ msgstr "Cuir a-steach SIM PIN"
170177msgid "Search"
171178msgstr "Lorg"
172179
173−#: qml/Shell.qml:348
180+#: qml/Shell.qml:334
174181#, qt-format
175182msgid "Please enter %1"
176183msgstr "Cuir a-steach %1"
po/gl.po+37−30
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-03 07:31+0000\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-07 13:26+0000\n"
1212"Last-Translator: Marcos Lans <Unknown>\n"
1313"Language-Team: Galician <gl@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-06 07:34+0000\n"
18−"X-Generator: Launchpad (build 16996)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -36,7 +36,7 @@ msgstr "Bordo dereito"
3636
3737#: qml/Components/EdgeDemo.qml:114
3838msgid "Try swiping from the right edge to unlock the phone"
39−msgstr "Probe o arrastre desde o bordo dereito para desbloquear o teléfono"
39+msgstr "Probe a esvarar desde o bordo dereito para desbloquear o teléfono"
4040
4141#: qml/Components/EdgeDemo.qml:145
4242msgid "Top edge"
@@ -71,13 +71,38 @@ msgid ""
7171"You have now mastered the edge gestures and can start using the "
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
74−"Agora xa domina os xestos do bordo e pode comezar a usar o "
74+"Agora xa domina os xestos dos bordos e pode comezar a usar o "
7575"teléfono<br><br>Toque na pantalla para comezar"
7676
77+#: qml/Components/Lockscreen.qml:214
78+msgid "Emergency Call"
79+msgstr "Chamada de emerxencia"
80+
81+#: qml/Components/Lockscreen.qml:231
82+msgid "OK"
83+msgstr "Aceptar"
84+
7785#: qml/Components/PageHeader.qml:365
7886msgid "Recent searches"
7987msgstr "Buscas recentes"
8088
89+#: qml/Components/PassphraseLockscreen.qml:60
90+#, qt-format
91+msgid "Hello %1"
92+msgstr "Ola %1"
93+
94+#: qml/Components/PassphraseLockscreen.qml:60
95+msgid "Hello"
96+msgstr "Ola"
97+
98+#: qml/Components/PinLockscreen.qml:198
99+msgid "CANCEL"
100+msgstr "CANCELAR"
101+
102+#: qml/Components/PinLockscreen.qml:216
103+msgid "DONE"
104+msgstr "FEITO"
105+
81106#: qml/Components/SeeMore.qml:35
82107msgid "See more"
83108msgstr "Ver máis"
@@ -90,11 +115,6 @@ msgstr "Ver menos"
90115msgid "Recent"
91116msgstr "Recentes"
92117
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr "%1 previsualización"
97−
98118#: qml/Dash/Previews/PreviewActionCombo.qml:34
99119msgid "More..."
100120msgstr "Máis…"
@@ -103,35 +123,22 @@ msgstr "Máis…"
103123msgid "Less..."
104124msgstr "Menos..."
105125
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
126+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107127msgid "Rate this"
108128msgstr "Valore isto"
109129
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
130+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111131msgid "Add a review"
112132msgstr "Engadir unha opinión"
113133
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
134+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115135msgid "Send"
116136msgstr "Enviar"
117137
118−#: qml/Greeter/Greeter.qml:151
138+#: qml/Greeter/Greeter.qml:157
119139msgid "Swipe to unlock"
120140msgstr "Esvare para desbloquear"
121141
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "Chamada de emerxencia"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "Ola %1"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "Ola"
134−
135142#: qml/Hud/HudParametrizedActionsPage.qml:132
136143msgid "Confirm"
137144msgstr "Confirmar"
@@ -142,7 +149,7 @@ msgstr "Escriba ou diga unha orde"
142149
143150#: qml/Hud/Hud.qml:84
144151msgid "Loading. Please Wait..."
145−msgstr "Cargando. Agarde…"
152+msgstr "Cargando, agarde…"
146153
147154#: qml/Hud/Hud.qml:89
148155msgid "Speak Now..."
@@ -164,7 +171,7 @@ msgstr "Introduza o PIN da SIM"
164171msgid "Search"
165172msgstr "Buscar"
166173
167−#: qml/Shell.qml:348
174+#: qml/Shell.qml:334
168175#, qt-format
169176msgid "Please enter %1"
170177msgstr "Introduza %1"
po/he.po+34−27
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-15 21:19+0000\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-09 07:49+0000\n"
1212"Last-Translator: Yaron <sh.yaron@gmail.com>\n"
1313"Language-Team: Hebrew <he@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-16 06:52+0000\n"
18−"X-Generator: Launchpad (build 17007)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -74,10 +74,35 @@ msgstr ""
7474"ברגעים אלו סיימת את התמחותך בשימוש במחוות קצה והטלפון פתוח לשימושך<br><br>נא "
7575"לגעת במסך כדי להתחיל"
7676
77+#: qml/Components/Lockscreen.qml:214
78+msgid "Emergency Call"
79+msgstr "שיחת חירום"
80+
81+#: qml/Components/Lockscreen.qml:231
82+msgid "OK"
83+msgstr "אישור"
84+
7785#: qml/Components/PageHeader.qml:365
7886msgid "Recent searches"
7987msgstr "חיפושים אחרונים"
8088
89+#: qml/Components/PassphraseLockscreen.qml:60
90+#, qt-format
91+msgid "Hello %1"
92+msgstr "שלום %1"
93+
94+#: qml/Components/PassphraseLockscreen.qml:60
95+msgid "Hello"
96+msgstr "שלום"
97+
98+#: qml/Components/PinLockscreen.qml:198
99+msgid "CANCEL"
100+msgstr "ביטול"
101+
102+#: qml/Components/PinLockscreen.qml:216
103+msgid "DONE"
104+msgstr "בוצע"
105+
81106#: qml/Components/SeeMore.qml:35
82107msgid "See more"
83108msgstr "לראות עוד"
@@ -90,11 +115,6 @@ msgstr "לראות פחות"
90115msgid "Recent"
91116msgstr "בשימוש לאחרונה"
92117
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr "תצוגה מקדימה של %1"
97−
98118#: qml/Dash/Previews/PreviewActionCombo.qml:34
99119msgid "More..."
100120msgstr "עוד…"
@@ -103,35 +123,22 @@ msgstr "עוד…"
103123msgid "Less..."
104124msgstr "פחות…"
105125
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
126+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107127msgid "Rate this"
108128msgstr "דירוג היישום"
109129
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
130+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111131msgid "Add a review"
112132msgstr "הוספת סקירה"
113133
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
134+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115135msgid "Send"
116136msgstr "שליחה"
117137
118−#: qml/Greeter/Greeter.qml:151
138+#: qml/Greeter/Greeter.qml:157
119139msgid "Swipe to unlock"
120140msgstr "יש להחליק לפתיחה"
121141
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "שיחת חירום"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "שלום %1"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "שלום"
134−
135142#: qml/Hud/HudParametrizedActionsPage.qml:132
136143msgid "Confirm"
137144msgstr "אישור"
@@ -164,7 +171,7 @@ msgstr "נא להזין את קוד ה־<U+200F>SIM"
164171msgid "Search"
165172msgstr "חיפוש"
166173
167−#: qml/Shell.qml:348
174+#: qml/Shell.qml:334
168175#, qt-format
169176msgid "Please enter %1"
170177msgstr "נא להזין %1"
po/hi.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-15 01:49+0000\n"
1212"Last-Translator: Siddhanathan S. <Unknown>\n"
1313"Language-Team: Hindi <hi@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "आपातकालीन कॉल"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "पिछले खोजों"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "नमस्ते"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "समीक्षा दे"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "भेजें"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "आपातकालीन कॉल"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "नमस्ते"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "खोजें"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/hr.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-27 04:14+0000\n"
1212"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
1313"Language-Team: Croatian <hr@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Nedavne pretrage"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Potvrdi"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Pretraživanje"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/hu.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-14 23:02+0000\n"
1212"Last-Translator: Kristóf Kiszel <Unknown>\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"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -74,10 +74,35 @@ msgid ""
7474"phone<br><br>Tap on the screen to start"
7575msgstr ""
7676
77+#: qml/Components/Lockscreen.qml:214
78+msgid "Emergency Call"
79+msgstr "Vészhívás"
80+
81+#: qml/Components/Lockscreen.qml:231
82+msgid "OK"
83+msgstr ""
84+
7785#: qml/Components/PageHeader.qml:365
7886msgid "Recent searches"
7987msgstr "Legutóbbi keresések"
8088
89+#: qml/Components/PassphraseLockscreen.qml:60
90+#, qt-format
91+msgid "Hello %1"
92+msgstr "Szia %1"
93+
94+#: qml/Components/PassphraseLockscreen.qml:60
95+msgid "Hello"
96+msgstr "Szia"
97+
98+#: qml/Components/PinLockscreen.qml:198
99+msgid "CANCEL"
100+msgstr ""
101+
102+#: qml/Components/PinLockscreen.qml:216
103+msgid "DONE"
104+msgstr ""
105+
81106#: qml/Components/SeeMore.qml:35
82107msgid "See more"
83108msgstr ""
@@ -90,11 +115,6 @@ msgstr ""
90115msgid "Recent"
91116msgstr ""
92117
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr ""
97−
98118#: qml/Dash/Previews/PreviewActionCombo.qml:34
99119msgid "More..."
100120msgstr ""
@@ -103,35 +123,22 @@ msgstr ""
103123msgid "Less..."
104124msgstr ""
105125
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
126+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107127msgid "Rate this"
108128msgstr "Osztályzás"
109129
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
130+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111131msgid "Add a review"
112132msgstr "Értékelés hozzáadása"
113133
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
134+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115135msgid "Send"
116136msgstr "Küldés"
117137
118−#: qml/Greeter/Greeter.qml:151
138+#: qml/Greeter/Greeter.qml:157
119139msgid "Swipe to unlock"
120140msgstr ""
121141
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "Vészhívás"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "Szia %1"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "Szia"
134−
135142#: qml/Hud/HudParametrizedActionsPage.qml:132
136143msgid "Confirm"
137144msgstr "Megerősítés"
@@ -164,7 +171,7 @@ msgstr ""
164171msgid "Search"
165172msgstr "Keresés"
166173
167−#: qml/Shell.qml:348
174+#: qml/Shell.qml:334
168175#, qt-format
169176msgid "Please enter %1"
170177msgstr "Adja meg a következőt: %1"
po/hy.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-27 04:43+0000\n"
1212"Last-Translator: iAbaS <sosabazyan@yandex.ru>\n"
1313"Language-Team: Armenian <hy@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Վերջին որոնումներ"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Հաստատել"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Որոնում"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/id.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-26 22:35+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1313"Language-Team: Indonesian <id@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/is.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-09-18 16:22+0000\n"
1212"Last-Translator: Andri Thorlacius <Unknown>\n"
1313"Language-Team: Icelandic <is@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -73,10 +73,35 @@ msgid ""
7373"phone<br><br>Tap on the screen to start"
7474msgstr ""
7575
76+#: qml/Components/Lockscreen.qml:214
77+msgid "Emergency Call"
78+msgstr "Neyðarsímtal"
79+
80+#: qml/Components/Lockscreen.qml:231
81+msgid "OK"
82+msgstr ""
83+
7684#: qml/Components/PageHeader.qml:365
7785msgid "Recent searches"
7886msgstr "Nýlegar leitir"
7987
88+#: qml/Components/PassphraseLockscreen.qml:60
89+#, qt-format
90+msgid "Hello %1"
91+msgstr "Hæ %1"
92+
93+#: qml/Components/PassphraseLockscreen.qml:60
94+msgid "Hello"
95+msgstr "Hæ"
96+
97+#: qml/Components/PinLockscreen.qml:198
98+msgid "CANCEL"
99+msgstr ""
100+
101+#: qml/Components/PinLockscreen.qml:216
102+msgid "DONE"
103+msgstr ""
104+
80105#: qml/Components/SeeMore.qml:35
81106msgid "See more"
82107msgstr ""
@@ -89,11 +114,6 @@ msgstr ""
89114msgid "Recent"
90115msgstr ""
91116
92−#: qml/Dash/PreviewListView.qml:52
93−#, qt-format
94−msgid "%1 Preview"
95−msgstr ""
96−
97117#: qml/Dash/Previews/PreviewActionCombo.qml:34
98118msgid "More..."
99119msgstr ""
@@ -102,35 +122,22 @@ msgstr ""
102122msgid "Less..."
103123msgstr ""
104124
105−#: qml/Dash/Previews/PreviewRatingInput.qml:81
125+#: qml/Dash/Previews/PreviewRatingInput.qml:82
106126msgid "Rate this"
107127msgstr "Gefa þessu einkunn"
108128
109−#: qml/Dash/Previews/PreviewRatingInput.qml:126
129+#: qml/Dash/Previews/PreviewRatingInput.qml:128
110130msgid "Add a review"
111131msgstr "Gefa umsögn"
112132
113−#: qml/Dash/Previews/PreviewRatingInput.qml:166
133+#: qml/Dash/Previews/PreviewRatingInput.qml:168
114134msgid "Send"
115135msgstr "Senda"
116136
117−#: qml/Greeter/Greeter.qml:151
137+#: qml/Greeter/Greeter.qml:157
118138msgid "Swipe to unlock"
119139msgstr ""
120140
121−#: qml/Greeter/Lockscreen.qml:149
122−msgid "Emergency Call"
123−msgstr "Neyðarsímtal"
124−
125−#: qml/Greeter/PassphraseLockscreen.qml:59
126−#, qt-format
127−msgid "Hello %1"
128−msgstr "Hæ %1"
129−
130−#: qml/Greeter/PassphraseLockscreen.qml:59
131−msgid "Hello"
132−msgstr "Hæ"
133−
134141#: qml/Hud/HudParametrizedActionsPage.qml:132
135142msgid "Confirm"
136143msgstr "Staðfesta"
@@ -163,7 +170,7 @@ msgstr ""
163170msgid "Search"
164171msgstr "Leita"
165172
166−#: qml/Shell.qml:348
173+#: qml/Shell.qml:334
167174#, qt-format
168175msgid "Please enter %1"
169176msgstr ""
po/it.po+44−35
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-01-22 09:15+0000\n"
12−"Last-Translator: Domenico <domenico.verde125@live.it>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-10 12:08+0000\n"
12+"Last-Translator: Claudio Arseni <claudio.arseni@gmail.com>\n"
1313"Language-Team: Italian <it@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -76,64 +76,73 @@ msgid ""
7676"You have now mastered the edge gestures and can start using the "
7777"phone<br><br>Tap on the screen to start"
7878msgstr ""
79+"L'apprendimento dei gesti è stato completato. È ora possibile iniziare a "
80+"usare il telefono.<br><br>Toccare lo schermo per iniziare"
81+
82+#: qml/Components/Lockscreen.qml:214
83+msgid "Emergency Call"
84+msgstr "Chiamata di emergenza"
85+
86+#: qml/Components/Lockscreen.qml:231
87+msgid "OK"
88+msgstr "OK"
7989
8090#: qml/Components/PageHeader.qml:365
8191msgid "Recent searches"
8292msgstr "Ricerche recenti"
8393
94+#: qml/Components/PassphraseLockscreen.qml:60
95+#, qt-format
96+msgid "Hello %1"
97+msgstr "Ciao %1"
98+
99+#: qml/Components/PassphraseLockscreen.qml:60
100+msgid "Hello"
101+msgstr "Ciao"
102+
103+#: qml/Components/PinLockscreen.qml:198
104+msgid "CANCEL"
105+msgstr "Annulla"
106+
107+#: qml/Components/PinLockscreen.qml:216
108+msgid "DONE"
109+msgstr "Fatto"
110+
84111#: qml/Components/SeeMore.qml:35
85112msgid "See more"
86−msgstr ""
113+msgstr "Mostra di più"
87114
88115#: qml/Components/SeeMore.qml:58
89116msgid "See less"
90−msgstr ""
117+msgstr "Mostra meno"
91118
92119#: qml/Dash/DashApps.qml:37
93120msgid "Recent"
94−msgstr ""
95−
96−#: qml/Dash/PreviewListView.qml:52
97−#, qt-format
98−msgid "%1 Preview"
99−msgstr ""
121+msgstr "Recenti"
100122
101123#: qml/Dash/Previews/PreviewActionCombo.qml:34
102124msgid "More..."
103−msgstr ""
125+msgstr "Altro..."
104126
105127#: qml/Dash/Previews/PreviewActionCombo.qml:34
106128msgid "Less..."
107−msgstr ""
129+msgstr "Meno..."
108130
109−#: qml/Dash/Previews/PreviewRatingInput.qml:81
131+#: qml/Dash/Previews/PreviewRatingInput.qml:82
110132msgid "Rate this"
111133msgstr "Valuta"
112134
113−#: qml/Dash/Previews/PreviewRatingInput.qml:126
135+#: qml/Dash/Previews/PreviewRatingInput.qml:128
114136msgid "Add a review"
115137msgstr "Aggiungi una recensione"
116138
117−#: qml/Dash/Previews/PreviewRatingInput.qml:166
139+#: qml/Dash/Previews/PreviewRatingInput.qml:168
118140msgid "Send"
119141msgstr "Invia"
120142
121−#: qml/Greeter/Greeter.qml:151
143+#: qml/Greeter/Greeter.qml:157
122144msgid "Swipe to unlock"
123−msgstr ""
124−
125−#: qml/Greeter/Lockscreen.qml:149
126−msgid "Emergency Call"
127−msgstr "Chiamata di emergenza"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−#, qt-format
131−msgid "Hello %1"
132−msgstr "Ciao %1"
133−
134−#: qml/Greeter/PassphraseLockscreen.qml:59
135−msgid "Hello"
136−msgstr "Ciao"
145+msgstr "Scorrere per sbloccare"
137146
138147#: qml/Hud/HudParametrizedActionsPage.qml:132
139148msgid "Confirm"
@@ -161,13 +170,13 @@ msgstr "Mostra password"
161170
162171#: qml/Notifications/NotificationMenuItemFactory.qml:103
163172msgid "Please enter SIM PIN"
164−msgstr ""
173+msgstr "Inserire il codice PIN"
165174
166175#: qml/Panel/SearchIndicator.qml:27
167176msgid "Search"
168177msgstr "Cerca"
169178
170−#: qml/Shell.qml:348
179+#: qml/Shell.qml:334
171180#, qt-format
172181msgid "Please enter %1"
173182msgstr "Inserire %1"
po/ja.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-18 07:01+0000\n"
1212"Last-Translator: Shushi Kurose <md81bird@hitaki.net>\n"
1313"Language-Team: Japanese <ja@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "最近の検索"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "こんにちは"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "送信"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "こんにちは"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "確認"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "検索"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/km.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-05-19 01:42+0000\n"
1212"Last-Translator: Khoem Sokhem <khoemsokhem@khmeros.info>\n"
1313"Language-Team: Khmer <km@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-22 06:49+0000\n"
18−"X-Generator: Launchpad (build 17017)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -76,10 +76,35 @@ msgstr ""
7676"ឥឡូវ​អ្នក​បាន​ពិនិត្យ​កាយវិការ​គែម​ "
7777"និង​អាច​ចាប់ផ្ដើម​ប្រើ​ទូរស័ព្ទ<br><br>ប៉ះ លើ​អេក្រង់​ដើម្បី​ចាប់ផ្ដើម"
7878
79+#: qml/Components/Lockscreen.qml:214
80+msgid "Emergency Call"
81+msgstr "ការ​ហៅ​ពេល​អាសន្ន"
82+
83+#: qml/Components/Lockscreen.qml:231
84+msgid "OK"
85+msgstr ""
86+
7987#: qml/Components/PageHeader.qml:365
8088msgid "Recent searches"
8189msgstr "ការ​ស្វែងរក​ថ្មី"
8290
91+#: qml/Components/PassphraseLockscreen.qml:60
92+#, qt-format
93+msgid "Hello %1"
94+msgstr "សួស្ដី %1"
95+
96+#: qml/Components/PassphraseLockscreen.qml:60
97+msgid "Hello"
98+msgstr "សួស្តី"
99+
100+#: qml/Components/PinLockscreen.qml:198
101+msgid "CANCEL"
102+msgstr ""
103+
104+#: qml/Components/PinLockscreen.qml:216
105+msgid "DONE"
106+msgstr ""
107+
83108#: qml/Components/SeeMore.qml:35
84109msgid "See more"
85110msgstr "មើល​ច្រើន​ទៀត"
@@ -92,11 +117,6 @@ msgstr "មើល​តិច​ជាង"
92117msgid "Recent"
93118msgstr "បច្ចុប្បន្ន"
94119
95−#: qml/Dash/PreviewListView.qml:52
96−#, qt-format
97−msgid "%1 Preview"
98−msgstr "មើល​ជា​មុន %1"
99−
100120#: qml/Dash/Previews/PreviewActionCombo.qml:34
101121msgid "More..."
102122msgstr "ច្រើនជាង​..."
@@ -105,35 +125,22 @@ msgstr "ច្រើនជាង​..."
105125msgid "Less..."
106126msgstr "តិច​ជាង..."
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:81
128+#: qml/Dash/Previews/PreviewRatingInput.qml:82
109129msgid "Rate this"
110130msgstr "វាយតម្លៃ​វា"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:126
132+#: qml/Dash/Previews/PreviewRatingInput.qml:128
113133msgid "Add a review"
114134msgstr "បន្ថែម​ការ​ពិនិត្យ"
115135
116−#: qml/Dash/Previews/PreviewRatingInput.qml:166
136+#: qml/Dash/Previews/PreviewRatingInput.qml:168
117137msgid "Send"
118138msgstr "ផ្ញើ"
119139
120−#: qml/Greeter/Greeter.qml:151
140+#: qml/Greeter/Greeter.qml:157
121141msgid "Swipe to unlock"
122142msgstr "អូស​ដើម្បី​ដោះសោ"
123143
124−#: qml/Greeter/Lockscreen.qml:149
125−msgid "Emergency Call"
126−msgstr "ការ​ហៅ​ពេល​អាសន្ន"
127−
128−#: qml/Greeter/PassphraseLockscreen.qml:59
129−#, qt-format
130−msgid "Hello %1"
131−msgstr "សួស្ដី %1"
132−
133−#: qml/Greeter/PassphraseLockscreen.qml:59
134−msgid "Hello"
135−msgstr "សួស្តី"
136−
137144#: qml/Hud/HudParametrizedActionsPage.qml:132
138145msgid "Confirm"
139146msgstr "បញ្ជាក់"
@@ -166,7 +173,7 @@ msgstr "បញ្ចូល​កូដ PIN របស់​ស៊ីមកាត"
166173msgid "Search"
167174msgstr "ស្វែង​រក"
168175
169−#: qml/Shell.qml:348
176+#: qml/Shell.qml:334
170177#, qt-format
171178msgid "Please enter %1"
172179msgstr "សូម​បញ្ចូល %1"
po/kn.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-27 05:43+0000\n"
1212"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
1313"Language-Team: Kannada <kn@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "ಇತ್ತೀಚಿನ ಹುಡುಕಾಟಗಳು"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "ಖಚಿತಪಡಿಸು"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "ಹುಡುಕು"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/ko.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-10-10 07:04+0000\n"
1212"Last-Translator: Kim Boram <boramism@gmail.com>\n"
1313"Language-Team: Korean <ko@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "최근 검색"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "검색"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/ky.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-27 06:17+0000\n"
1212"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
1313"Language-Team: Kirghiz <ky@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Соңку издөөлөр"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Аныктоо"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Издөө"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/lo.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-10-02 10:00+0000\n"
1212"Last-Translator: Anousak <anousak@gmail.com>\n"
1313"Language-Team: Lao <lo@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "ສະບາຍດີ %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "ສະບາຍດີ"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "ສົ່ງ"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "ສະບາຍດີ %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "ສະບາຍດີ"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "ຢືນຢັນ"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "ຊອກຫາ"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "ກະລູນາປ້ອນ %1"
po/lt.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-05-19 17:15+0000\n"
1212"Last-Translator: Mantas Kriaučiūnas <mantas@akl.lt>\n"
1313"Language-Team: Lithuanian <lt@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-22 06:49+0000\n"
18−"X-Generator: Launchpad (build 17017)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -75,10 +75,35 @@ msgid ""
7575"phone<br><br>Tap on the screen to start"
7676msgstr ""
7777
78+#: qml/Components/Lockscreen.qml:214
79+msgid "Emergency Call"
80+msgstr "Pagalbos skambutis"
81+
82+#: qml/Components/Lockscreen.qml:231
83+msgid "OK"
84+msgstr ""
85+
7886#: qml/Components/PageHeader.qml:365
7987msgid "Recent searches"
8088msgstr "Paskiausios paieškos"
8189
90+#: qml/Components/PassphraseLockscreen.qml:60
91+#, qt-format
92+msgid "Hello %1"
93+msgstr "Laba diena, %1"
94+
95+#: qml/Components/PassphraseLockscreen.qml:60
96+msgid "Hello"
97+msgstr "Sveiki"
98+
99+#: qml/Components/PinLockscreen.qml:198
100+msgid "CANCEL"
101+msgstr ""
102+
103+#: qml/Components/PinLockscreen.qml:216
104+msgid "DONE"
105+msgstr ""
106+
82107#: qml/Components/SeeMore.qml:35
83108msgid "See more"
84109msgstr ""
@@ -91,11 +116,6 @@ msgstr ""
91116msgid "Recent"
92117msgstr "Paskiausieji"
93118
94−#: qml/Dash/PreviewListView.qml:52
95−#, qt-format
96−msgid "%1 Preview"
97−msgstr ""
98−
99119#: qml/Dash/Previews/PreviewActionCombo.qml:34
100120msgid "More..."
101121msgstr "Daugiau..."
@@ -104,35 +124,22 @@ msgstr "Daugiau..."
104124msgid "Less..."
105125msgstr "Mažiau..."
106126
107−#: qml/Dash/Previews/PreviewRatingInput.qml:81
127+#: qml/Dash/Previews/PreviewRatingInput.qml:82
108128msgid "Rate this"
109129msgstr "Įvertinkite tai"
110130
111−#: qml/Dash/Previews/PreviewRatingInput.qml:126
131+#: qml/Dash/Previews/PreviewRatingInput.qml:128
112132msgid "Add a review"
113133msgstr "Pridėkite apžvalgą"
114134
115−#: qml/Dash/Previews/PreviewRatingInput.qml:166
135+#: qml/Dash/Previews/PreviewRatingInput.qml:168
116136msgid "Send"
117137msgstr "Siųsti"
118138
119−#: qml/Greeter/Greeter.qml:151
139+#: qml/Greeter/Greeter.qml:157
120140msgid "Swipe to unlock"
121141msgstr "Braukite ir atrakinsite"
122142
123−#: qml/Greeter/Lockscreen.qml:149
124−msgid "Emergency Call"
125−msgstr "Pagalbos skambutis"
126−
127−#: qml/Greeter/PassphraseLockscreen.qml:59
128−#, qt-format
129−msgid "Hello %1"
130−msgstr "Laba diena, %1"
131−
132−#: qml/Greeter/PassphraseLockscreen.qml:59
133−msgid "Hello"
134−msgstr "Sveiki"
135−
136143#: qml/Hud/HudParametrizedActionsPage.qml:132
137144msgid "Confirm"
138145msgstr "Patvirtinti"
@@ -165,7 +172,7 @@ msgstr "Įveskite SIM kortelės PIN kodą"
165172msgid "Search"
166173msgstr "Paieška"
167174
168−#: qml/Shell.qml:348
175+#: qml/Shell.qml:334
169176#, qt-format
170177msgid "Please enter %1"
171178msgstr "Prašom įvesti %1"
po/lv.po+36−29
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-07 18:17+0000\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-05-31 14:54+0000\n"
1212"Last-Translator: Jānis-Marks Gailis <jeanmarc.gailis@gmail.com>\n"
1313"Language-Team: Latvian <lv@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-10 08:01+0000\n"
18−"X-Generator: Launchpad (build 16996)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -64,7 +64,7 @@ msgstr ""
6464
6565#: qml/Components/EdgeDemo.qml:227
6666msgid "Well done"
67−msgstr ""
67+msgstr "Ļoti labi!"
6868
6969#: qml/Components/EdgeDemo.qml:228
7070msgid ""
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "Neatliekamās Palīdzības zvans"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Nesen veiktās meklēšanas"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "Sveiki, %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "Sveiki"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr "Redzēt vairāk"
@@ -88,11 +113,6 @@ msgstr "Redzēt mazāk"
88113msgid "Recent"
89114msgstr "Nesens"
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr "Vairāk..."
@@ -101,35 +121,22 @@ msgstr "Vairāk..."
101121msgid "Less..."
102122msgstr "Mazāk..."
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "Novērtēt šo"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "Komentēt"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "Sūtīt"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "Neatliekamās Palīdzības zvans"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "Sveiki, %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "Sveiki"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Apstiprināt"
@@ -156,13 +163,13 @@ msgstr "Rādīt paroli"
156163
157164#: qml/Notifications/NotificationMenuItemFactory.qml:103
158165msgid "Please enter SIM PIN"
159−msgstr ""
166+msgstr "Lūdzu ievadiet SIM PIN"
160167
161168#: qml/Panel/SearchIndicator.qml:27
162169msgid "Search"
163170msgstr "Meklēt"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "Lūdzu ievadiet %1"
po/ml.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-11-23 11:44+0000\n"
1212"Last-Translator: Stym alfaZ <Unknown>\n"
1313"Language-Team: Malayalam <ml@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -74,10 +74,35 @@ msgid ""
7474"phone<br><br>Tap on the screen to start"
7575msgstr ""
7676
77+#: qml/Components/Lockscreen.qml:214
78+msgid "Emergency Call"
79+msgstr "അടിയന്തിര വിളി"
80+
81+#: qml/Components/Lockscreen.qml:231
82+msgid "OK"
83+msgstr ""
84+
7785#: qml/Components/PageHeader.qml:365
7886msgid "Recent searches"
7987msgstr "സമീപകാല തിരയലുകള്‍"
8088
89+#: qml/Components/PassphraseLockscreen.qml:60
90+#, qt-format
91+msgid "Hello %1"
92+msgstr "ഹലോ %1"
93+
94+#: qml/Components/PassphraseLockscreen.qml:60
95+msgid "Hello"
96+msgstr "ഹലോ"
97+
98+#: qml/Components/PinLockscreen.qml:198
99+msgid "CANCEL"
100+msgstr ""
101+
102+#: qml/Components/PinLockscreen.qml:216
103+msgid "DONE"
104+msgstr ""
105+
81106#: qml/Components/SeeMore.qml:35
82107msgid "See more"
83108msgstr ""
@@ -90,11 +115,6 @@ msgstr ""
90115msgid "Recent"
91116msgstr ""
92117
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr ""
97−
98118#: qml/Dash/Previews/PreviewActionCombo.qml:34
99119msgid "More..."
100120msgstr ""
@@ -103,35 +123,22 @@ msgstr ""
103123msgid "Less..."
104124msgstr ""
105125
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
126+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107127msgid "Rate this"
108128msgstr "ഇത് അവലോകനം ചെയ്യുക"
109129
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
130+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111131msgid "Add a review"
112132msgstr "ഒരു അവലോകനം ചേര്‍ക്കുക"
113133
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
134+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115135msgid "Send"
116136msgstr "അയയ്‌ക്കുക"
117137
118−#: qml/Greeter/Greeter.qml:151
138+#: qml/Greeter/Greeter.qml:157
119139msgid "Swipe to unlock"
120140msgstr ""
121141
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "അടിയന്തിര വിളി"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "ഹലോ %1"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "ഹലോ"
134−
135142#: qml/Hud/HudParametrizedActionsPage.qml:132
136143msgid "Confirm"
137144msgstr "സ്ഥിരീകരിക്കുക"
@@ -164,7 +171,7 @@ msgstr ""
164171msgid "Search"
165172msgstr "തിരയുക"
166173
167−#: qml/Shell.qml:348
174+#: qml/Shell.qml:334
168175#, qt-format
169176msgid "Please enter %1"
170177msgstr "ദയവായി %1 നല്‍കുക"
po/mr.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-14 19:54+0000\n"
1212"Last-Translator: Rohan Deshmukh <Unknown>\n"
1313"Language-Team: Marathi <mr@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/ms.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-17 09:05+0000\n"
1212"Last-Translator: abuyop <Unknown>\n"
1313"Language-Team: Malay <ms@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "panggilan Kecemasan"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Gelintar baru-baru ini"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "Hai %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "Hello"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "Kadar ini"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "Tambah ulasan"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "Hantar"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "panggilan Kecemasan"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "Hai %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "Hello"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Sahkan"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Gelintar"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "Sila masukkan %1"
po/my.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-12-12 11:12+0000\n"
1212"Last-Translator: Pyae Sone <Unknown>\n"
1313"Language-Team: Burmese <my@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "အရေးပေါ်ခေါ်မည်"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "မကြာသေးခင်က ရှာဖွေခြင်း"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "ဟဲလို %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "ဟဲလို"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "ဒီဟာကိုအမှတ်ပေးမည်"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "ပို့မည်"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "အရေးပေါ်ခေါ်မည်"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "ဟဲလို %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "ဟဲလို"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "အတည်ပြုပါ"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "ရှာဖွေ"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "%1ကိုရိုက်ထည့်ပါ"
po/nb.po+35−28
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-19 15:25+0000\n"
12−"Last-Translator: Thor Fjalestad <silvereyerocker@gmail.com>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-11 06:36+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"
17−"X-Launchpad-Export-Date: 2014-05-22 06:49+0000\n"
18−"X-Generator: Launchpad (build 17017)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -74,10 +74,35 @@ msgstr ""
7474"Du har nå mestret kantbevegelsene, og er klar til å bruke "
7575"telefonen<br><br>Trykk på skjermen for å begynne"
7676
77+#: qml/Components/Lockscreen.qml:214
78+msgid "Emergency Call"
79+msgstr "Nødanrop"
80+
81+#: qml/Components/Lockscreen.qml:231
82+msgid "OK"
83+msgstr "OK"
84+
7785#: qml/Components/PageHeader.qml:365
7886msgid "Recent searches"
7987msgstr "Nylige søk"
8088
89+#: qml/Components/PassphraseLockscreen.qml:60
90+#, qt-format
91+msgid "Hello %1"
92+msgstr "Hei, %1"
93+
94+#: qml/Components/PassphraseLockscreen.qml:60
95+msgid "Hello"
96+msgstr "Hei"
97+
98+#: qml/Components/PinLockscreen.qml:198
99+msgid "CANCEL"
100+msgstr "AVBRYT"
101+
102+#: qml/Components/PinLockscreen.qml:216
103+msgid "DONE"
104+msgstr "FERDIG"
105+
81106#: qml/Components/SeeMore.qml:35
82107msgid "See more"
83108msgstr "Vis mer"
@@ -90,11 +115,6 @@ msgstr "Vis mindre"
90115msgid "Recent"
91116msgstr "Nylig"
92117
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr "%1-forhåndsvisning"
97−
98118#: qml/Dash/Previews/PreviewActionCombo.qml:34
99119msgid "More..."
100120msgstr "Mer …"
@@ -103,35 +123,22 @@ msgstr "Mer …"
103123msgid "Less..."
104124msgstr "Mindre …"
105125
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
126+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107127msgid "Rate this"
108128msgstr "Vurder dette"
109129
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
130+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111131msgid "Add a review"
112132msgstr "Skriv en anmeldelse"
113133
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
134+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115135msgid "Send"
116136msgstr "Send"
117137
118−#: qml/Greeter/Greeter.qml:151
138+#: qml/Greeter/Greeter.qml:157
119139msgid "Swipe to unlock"
120140msgstr "Sveip for å låse opp"
121141
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "Nødanrop"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "Hei, %1"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "Hei"
134−
135142#: qml/Hud/HudParametrizedActionsPage.qml:132
136143msgid "Confirm"
137144msgstr "Bekreft"
@@ -164,7 +171,7 @@ msgstr "Skriv inn PIN-koden til SIM-kortet"
164171msgid "Search"
165172msgstr "Søk"
166173
167−#: qml/Shell.qml:348
174+#: qml/Shell.qml:334
168175#, qt-format
169176msgid "Please enter %1"
170177msgstr "Skriv inn %1"
po/nl.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-15 16:42+0000\n"
1212"Last-Translator: Hannie Dumoleyn <Unknown>\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"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "Noodoproep"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Recente zoekopdrachten"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "Hallo %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "Hallo"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "Beoordeel dit"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "Voeg recensie toe"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "Versturen"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "Noodoproep"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "Hallo %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "Hallo"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Bevestigen"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Zoeken"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "Voer %1 in"
po/pl.po+44−35
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-01-10 11:38+0000\n"
12−"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-05-27 15:20+0000\n"
12+"Last-Translator: GTriderXC <gtriderxc@yahoo.com>\n"
1313"Language-Team: Polish <pl@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -73,64 +73,73 @@ msgid ""
7373"You have now mastered the edge gestures and can start using the "
7474"phone<br><br>Tap on the screen to start"
7575msgstr ""
76+"Wydawanie poleceń krawędzi zostało opanowane. Urządzenie gotowe do "
77+"pracy.<br><br>Dotknij ekranu by rozpocząć"
78+
79+#: qml/Components/Lockscreen.qml:214
80+msgid "Emergency Call"
81+msgstr "Telefon ratunkowy"
82+
83+#: qml/Components/Lockscreen.qml:231
84+msgid "OK"
85+msgstr ""
7686
7787#: qml/Components/PageHeader.qml:365
7888msgid "Recent searches"
7989msgstr "Ostatnie wyszukiwania"
8090
91+#: qml/Components/PassphraseLockscreen.qml:60
92+#, qt-format
93+msgid "Hello %1"
94+msgstr "Witaj %1"
95+
96+#: qml/Components/PassphraseLockscreen.qml:60
97+msgid "Hello"
98+msgstr "Witaj"
99+
100+#: qml/Components/PinLockscreen.qml:198
101+msgid "CANCEL"
102+msgstr ""
103+
104+#: qml/Components/PinLockscreen.qml:216
105+msgid "DONE"
106+msgstr ""
107+
81108#: qml/Components/SeeMore.qml:35
82109msgid "See more"
83−msgstr ""
110+msgstr "Zobacz więcej"
84111
85112#: qml/Components/SeeMore.qml:58
86113msgid "See less"
87−msgstr ""
114+msgstr "Zobacz mniej"
88115
89116#: qml/Dash/DashApps.qml:37
90117msgid "Recent"
91−msgstr ""
92−
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr ""
118+msgstr "Ostatnio używane"
97119
98120#: qml/Dash/Previews/PreviewActionCombo.qml:34
99121msgid "More..."
100−msgstr ""
122+msgstr "Więcej..."
101123
102124#: qml/Dash/Previews/PreviewActionCombo.qml:34
103125msgid "Less..."
104−msgstr ""
126+msgstr "Mniej..."
105127
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
128+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107129msgid "Rate this"
108130msgstr "Oceń to"
109131
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
132+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111133msgid "Add a review"
112134msgstr "Dodaj recenzję"
113135
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
136+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115137msgid "Send"
116138msgstr "Wyślij"
117139
118−#: qml/Greeter/Greeter.qml:151
140+#: qml/Greeter/Greeter.qml:157
119141msgid "Swipe to unlock"
120−msgstr ""
121−
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "Telefon ratunkowy"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "Witaj %1"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "Witaj"
142+msgstr "Przeciągnij aby odblokować"
134143
135144#: qml/Hud/HudParametrizedActionsPage.qml:132
136145msgid "Confirm"
@@ -158,13 +167,13 @@ msgstr "Wyświetl hasło"
158167
159168#: qml/Notifications/NotificationMenuItemFactory.qml:103
160169msgid "Please enter SIM PIN"
161−msgstr ""
170+msgstr "Wprowadź kod PIN karty SIM"
162171
163172#: qml/Panel/SearchIndicator.qml:27
164173msgid "Search"
165174msgstr "Szukaj"
166175
167−#: qml/Shell.qml:348
176+#: qml/Shell.qml:334
168177#, qt-format
169178msgid "Please enter %1"
170179msgstr "Wprowadź %1"
po/pt.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-14 19:18+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\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"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/pt_BR.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-05-15 14:31+0000\n"
1212"Last-Translator: Rafael Neri <Unknown>\n"
1313"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-16 06:52+0000\n"
18−"X-Generator: Launchpad (build 17007)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -76,10 +76,35 @@ msgstr ""
7676"Agora você já domina os gestos das bordas e pode começar a usar o "
7777"telefone<br><br>Toque na tela para iniciar"
7878
79+#: qml/Components/Lockscreen.qml:214
80+msgid "Emergency Call"
81+msgstr "Chamada de emergência"
82+
83+#: qml/Components/Lockscreen.qml:231
84+msgid "OK"
85+msgstr ""
86+
7987#: qml/Components/PageHeader.qml:365
8088msgid "Recent searches"
8189msgstr "Pesquisas recentes"
8290
91+#: qml/Components/PassphraseLockscreen.qml:60
92+#, qt-format
93+msgid "Hello %1"
94+msgstr "Olá %1"
95+
96+#: qml/Components/PassphraseLockscreen.qml:60
97+msgid "Hello"
98+msgstr "Olá"
99+
100+#: qml/Components/PinLockscreen.qml:198
101+msgid "CANCEL"
102+msgstr ""
103+
104+#: qml/Components/PinLockscreen.qml:216
105+msgid "DONE"
106+msgstr ""
107+
83108#: qml/Components/SeeMore.qml:35
84109msgid "See more"
85110msgstr "Ver mais"
@@ -92,11 +117,6 @@ msgstr "Ver menos"
92117msgid "Recent"
93118msgstr "Recentes"
94119
95−#: qml/Dash/PreviewListView.qml:52
96−#, qt-format
97−msgid "%1 Preview"
98−msgstr "%1 visualização"
99−
100120#: qml/Dash/Previews/PreviewActionCombo.qml:34
101121msgid "More..."
102122msgstr "Mais..."
@@ -105,35 +125,22 @@ msgstr "Mais..."
105125msgid "Less..."
106126msgstr "Menos..."
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:81
128+#: qml/Dash/Previews/PreviewRatingInput.qml:82
109129msgid "Rate this"
110130msgstr "Avaliar isto"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:126
132+#: qml/Dash/Previews/PreviewRatingInput.qml:128
113133msgid "Add a review"
114134msgstr "Adicionar uma análise"
115135
116−#: qml/Dash/Previews/PreviewRatingInput.qml:166
136+#: qml/Dash/Previews/PreviewRatingInput.qml:168
117137msgid "Send"
118138msgstr "Enviar"
119139
120−#: qml/Greeter/Greeter.qml:151
140+#: qml/Greeter/Greeter.qml:157
121141msgid "Swipe to unlock"
122142msgstr "Deslizar para desbloquear"
123143
124−#: qml/Greeter/Lockscreen.qml:149
125−msgid "Emergency Call"
126−msgstr "Chamada de emergência"
127−
128−#: qml/Greeter/PassphraseLockscreen.qml:59
129−#, qt-format
130−msgid "Hello %1"
131−msgstr "Olá %1"
132−
133−#: qml/Greeter/PassphraseLockscreen.qml:59
134−msgid "Hello"
135−msgstr "Olá"
136−
137144#: qml/Hud/HudParametrizedActionsPage.qml:132
138145msgid "Confirm"
139146msgstr "Confirmar"
@@ -166,7 +173,7 @@ msgstr "Por favor, digite o PIN do cartão SIM"
166173msgid "Search"
167174msgstr "Pesquisar"
168175
169−#: qml/Shell.qml:348
176+#: qml/Shell.qml:334
170177#, qt-format
171178msgid "Please enter %1"
172179msgstr "Por favor, digite %1"
po/ro.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-27 07:53+0000\n"
1212"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
1313"Language-Team: Romanian <ro@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Căutări recente"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Confirmați"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Căutare"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/ru.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-05-15 12:57+0000\n"
1212"Last-Translator: Zonov Roman <Unknown>\n"
1313"Language-Team: Russian <ru@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-16 06:52+0000\n"
18−"X-Generator: Launchpad (build 17007)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -79,10 +79,35 @@ msgstr ""
7979"Вы научились пользоваться Ubuntu и можете начать использовать свой "
8080"телефон<br><br>Нажмите на экран"
8181
82+#: qml/Components/Lockscreen.qml:214
83+msgid "Emergency Call"
84+msgstr "Экстренный вызов"
85+
86+#: qml/Components/Lockscreen.qml:231
87+msgid "OK"
88+msgstr ""
89+
8290#: qml/Components/PageHeader.qml:365
8391msgid "Recent searches"
8492msgstr "Последние поисковые запросы"
8593
94+#: qml/Components/PassphraseLockscreen.qml:60
95+#, qt-format
96+msgid "Hello %1"
97+msgstr "Привет, %1"
98+
99+#: qml/Components/PassphraseLockscreen.qml:60
100+msgid "Hello"
101+msgstr "Привет"
102+
103+#: qml/Components/PinLockscreen.qml:198
104+msgid "CANCEL"
105+msgstr ""
106+
107+#: qml/Components/PinLockscreen.qml:216
108+msgid "DONE"
109+msgstr ""
110+
86111#: qml/Components/SeeMore.qml:35
87112msgid "See more"
88113msgstr "Подробнее"
@@ -95,11 +120,6 @@ msgstr "Вкратце"
95120msgid "Recent"
96121msgstr "Недавние"
97122
98−#: qml/Dash/PreviewListView.qml:52
99−#, qt-format
100−msgid "%1 Preview"
101−msgstr "Просмотр %1"
102−
103123#: qml/Dash/Previews/PreviewActionCombo.qml:34
104124msgid "More..."
105125msgstr "Ещё..."
@@ -108,35 +128,22 @@ msgstr "Ещё..."
108128msgid "Less..."
109129msgstr "Меньше..."
110130
111−#: qml/Dash/Previews/PreviewRatingInput.qml:81
131+#: qml/Dash/Previews/PreviewRatingInput.qml:82
112132msgid "Rate this"
113133msgstr "Оцените это"
114134
115−#: qml/Dash/Previews/PreviewRatingInput.qml:126
135+#: qml/Dash/Previews/PreviewRatingInput.qml:128
116136msgid "Add a review"
117137msgstr "Добавьте отзыв"
118138
119−#: qml/Dash/Previews/PreviewRatingInput.qml:166
139+#: qml/Dash/Previews/PreviewRatingInput.qml:168
120140msgid "Send"
121141msgstr "Отправить"
122142
123−#: qml/Greeter/Greeter.qml:151
143+#: qml/Greeter/Greeter.qml:157
124144msgid "Swipe to unlock"
125145msgstr "Смахните, чтобы разблокировать"
126146
127−#: qml/Greeter/Lockscreen.qml:149
128−msgid "Emergency Call"
129−msgstr "Экстренный вызов"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−#, qt-format
133−msgid "Hello %1"
134−msgstr "Привет, %1"
135−
136−#: qml/Greeter/PassphraseLockscreen.qml:59
137−msgid "Hello"
138−msgstr "Привет"
139−
140147#: qml/Hud/HudParametrizedActionsPage.qml:132
141148msgid "Confirm"
142149msgstr "Подтвердить"
@@ -169,7 +176,7 @@ msgstr "Введите PIN код"
169176msgid "Search"
170177msgstr "Поиск"
171178
172−#: qml/Shell.qml:348
179+#: qml/Shell.qml:334
173180#, qt-format
174181msgid "Please enter %1"
175182msgstr "Пожалуйста, введите %1"
po/shn.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-10-07 11:46+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1313"Language-Team: Shan <shn@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/si.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-26 22:36+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1313"Language-Team: Sinhalese <si@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/sl.po+36−29
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-02-21 16:38+0000\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-23 09:29+0000\n"
1212"Last-Translator: Damir Jerovšek <Unknown>\n"
1313"Language-Team: Slovenian <sl@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-24 06:33+0000\n"
18+"X-Generator: Launchpad (build 17065)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -76,10 +76,35 @@ msgstr ""
7676"Sedaj, ko ste osvojili poteze robov, lahko začnete uporabljati "
7777"telefon<br><br>Tapnite na zaslon za začetek"
7878
79+#: qml/Components/Lockscreen.qml:214
80+msgid "Emergency Call"
81+msgstr "Klic v sili"
82+
83+#: qml/Components/Lockscreen.qml:231
84+msgid "OK"
85+msgstr "V REDU"
86+
7987#: qml/Components/PageHeader.qml:365
8088msgid "Recent searches"
8189msgstr "Nedavna iskanja"
8290
91+#: qml/Components/PassphraseLockscreen.qml:60
92+#, qt-format
93+msgid "Hello %1"
94+msgstr "Pozdravljeni, %1"
95+
96+#: qml/Components/PassphraseLockscreen.qml:60
97+msgid "Hello"
98+msgstr "Pozdravljeni"
99+
100+#: qml/Components/PinLockscreen.qml:198
101+msgid "CANCEL"
102+msgstr "PREKLIČI"
103+
104+#: qml/Components/PinLockscreen.qml:216
105+msgid "DONE"
106+msgstr "KONČANO"
107+
83108#: qml/Components/SeeMore.qml:35
84109msgid "See more"
85110msgstr "Pokaži več"
@@ -90,12 +115,7 @@ msgstr "Pokaži manj"
90115
91116#: qml/Dash/DashApps.qml:37
92117msgid "Recent"
93−msgstr ""
94−
95−#: qml/Dash/PreviewListView.qml:52
96−#, qt-format
97−msgid "%1 Preview"
98−msgstr ""
118+msgstr "Nedavno"
99119
100120#: qml/Dash/Previews/PreviewActionCombo.qml:34
101121msgid "More..."
@@ -105,34 +125,21 @@ msgstr "Več ..."
105125msgid "Less..."
106126msgstr "Manj ..."
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:81
128+#: qml/Dash/Previews/PreviewRatingInput.qml:82
109129msgid "Rate this"
110130msgstr "Ocenite"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:126
132+#: qml/Dash/Previews/PreviewRatingInput.qml:128
113133msgid "Add a review"
114134msgstr "Dodaj oceno"
115135
116−#: qml/Dash/Previews/PreviewRatingInput.qml:166
136+#: qml/Dash/Previews/PreviewRatingInput.qml:168
117137msgid "Send"
118138msgstr "Pošlji"
119139
120−#: qml/Greeter/Greeter.qml:151
140+#: qml/Greeter/Greeter.qml:157
121141msgid "Swipe to unlock"
122−msgstr ""
123−
124−#: qml/Greeter/Lockscreen.qml:149
125−msgid "Emergency Call"
126−msgstr "Klic v sili"
127−
128−#: qml/Greeter/PassphraseLockscreen.qml:59
129−#, qt-format
130−msgid "Hello %1"
131−msgstr "Pozdravljeni, %1"
132−
133−#: qml/Greeter/PassphraseLockscreen.qml:59
134−msgid "Hello"
135−msgstr "Pozdravljeni"
142+msgstr "Podrsajte za odklenitev"
136143
137144#: qml/Hud/HudParametrizedActionsPage.qml:132
138145msgid "Confirm"
@@ -166,7 +173,7 @@ msgstr "Vnesite PIN kartice SIM"
166173msgid "Search"
167174msgstr "Iskanje"
168175
169−#: qml/Shell.qml:348
176+#: qml/Shell.qml:334
170177#, qt-format
171178msgid "Please enter %1"
172179msgstr "Vnesite %1"
po/sq.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-15 13:51+0000\n"
1212"Last-Translator: Besmir Zanaj <besmirzanaj@gmail.com>\n"
1313"Language-Team: Albanian <sq@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:43+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:50+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -73,10 +73,35 @@ msgid ""
7373"phone<br><br>Tap on the screen to start"
7474msgstr ""
7575
76+#: qml/Components/Lockscreen.qml:214
77+msgid "Emergency Call"
78+msgstr ""
79+
80+#: qml/Components/Lockscreen.qml:231
81+msgid "OK"
82+msgstr ""
83+
7684#: qml/Components/PageHeader.qml:365
7785msgid "Recent searches"
7886msgstr ""
7987
88+#: qml/Components/PassphraseLockscreen.qml:60
89+#, qt-format
90+msgid "Hello %1"
91+msgstr ""
92+
93+#: qml/Components/PassphraseLockscreen.qml:60
94+msgid "Hello"
95+msgstr ""
96+
97+#: qml/Components/PinLockscreen.qml:198
98+msgid "CANCEL"
99+msgstr ""
100+
101+#: qml/Components/PinLockscreen.qml:216
102+msgid "DONE"
103+msgstr ""
104+
80105#: qml/Components/SeeMore.qml:35
81106msgid "See more"
82107msgstr ""
@@ -89,11 +114,6 @@ msgstr ""
89114msgid "Recent"
90115msgstr ""
91116
92−#: qml/Dash/PreviewListView.qml:52
93−#, qt-format
94−msgid "%1 Preview"
95−msgstr ""
96−
97117#: qml/Dash/Previews/PreviewActionCombo.qml:34
98118msgid "More..."
99119msgstr ""
@@ -102,35 +122,22 @@ msgstr ""
102122msgid "Less..."
103123msgstr ""
104124
105−#: qml/Dash/Previews/PreviewRatingInput.qml:81
125+#: qml/Dash/Previews/PreviewRatingInput.qml:82
106126msgid "Rate this"
107127msgstr "Vlerësoje këtë"
108128
109−#: qml/Dash/Previews/PreviewRatingInput.qml:126
129+#: qml/Dash/Previews/PreviewRatingInput.qml:128
110130msgid "Add a review"
111131msgstr "Shto një rishikim"
112132
113−#: qml/Dash/Previews/PreviewRatingInput.qml:166
133+#: qml/Dash/Previews/PreviewRatingInput.qml:168
114134msgid "Send"
115135msgstr ""
116136
117−#: qml/Greeter/Greeter.qml:151
137+#: qml/Greeter/Greeter.qml:157
118138msgid "Swipe to unlock"
119139msgstr ""
120140
121−#: qml/Greeter/Lockscreen.qml:149
122−msgid "Emergency Call"
123−msgstr ""
124−
125−#: qml/Greeter/PassphraseLockscreen.qml:59
126−#, qt-format
127−msgid "Hello %1"
128−msgstr ""
129−
130−#: qml/Greeter/PassphraseLockscreen.qml:59
131−msgid "Hello"
132−msgstr ""
133−
134141#: qml/Hud/HudParametrizedActionsPage.qml:132
135142msgid "Confirm"
136143msgstr ""
@@ -163,7 +170,7 @@ msgstr ""
163170msgid "Search"
164171msgstr ""
165172
166−#: qml/Shell.qml:348
173+#: qml/Shell.qml:334
167174#, qt-format
168175msgid "Please enter %1"
169176msgstr ""
po/sr.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-27 09:19+0000\n"
1212"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
1313"Language-Team: Serbian <sr@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "Скорашње претраге"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Потврди"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Претрага"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/sv.po+49−42
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2013-06-26 22:36+0000\n"
12−"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-07 19:14+0000\n"
12+"Last-Translator: mikasjoman <Unknown>\n"
1313"Language-Team: Swedish <sv@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -32,15 +32,15 @@ msgstr ""
3232
3333#: qml/Components/EdgeDemo.qml:113
3434msgid "Right edge"
35−msgstr ""
35+msgstr "Högerkant"
3636
3737#: qml/Components/EdgeDemo.qml:114
3838msgid "Try swiping from the right edge to unlock the phone"
39−msgstr ""
39+msgstr "Dra med fingret från höger för att låsa upp telefonen"
4040
4141#: qml/Components/EdgeDemo.qml:145
4242msgid "Top edge"
43−msgstr ""
43+msgstr "Överkant"
4444
4545#: qml/Components/EdgeDemo.qml:146
4646msgid "Try swiping from the top edge to access the indicators"
@@ -48,7 +48,7 @@ msgstr ""
4848
4949#: qml/Components/EdgeDemo.qml:171
5050msgid "Close"
51−msgstr ""
51+msgstr "Stäng"
5252
5353#: qml/Components/EdgeDemo.qml:172
5454msgid "Swipe up again to close the settings screen"
@@ -56,7 +56,7 @@ msgstr ""
5656
5757#: qml/Components/EdgeDemo.qml:199
5858msgid "Left edge"
59−msgstr ""
59+msgstr "Vänsterkant"
6060
6161#: qml/Components/EdgeDemo.qml:200
6262msgid "Swipe from the left to reveal the launcher for quick access to apps"
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "Nödsamtal"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,58 +121,45 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110−msgstr ""
130+msgstr "Lägg till en recension"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135−msgstr ""
142+msgstr "Bekräfta"
136143
137144#: qml/Hud/Hud.qml:61 qml/Hud/Hud.qml:99 qml/Hud/Hud.qml:372
138145msgid "Type or say a command"
139−msgstr ""
146+msgstr "Skriv eller tala in ett kommando"
140147
141148#: qml/Hud/Hud.qml:84
142149msgid "Loading. Please Wait..."
143−msgstr ""
150+msgstr "Laddar. Var god vänta..."
144151
145152#: qml/Hud/Hud.qml:89
146153msgid "Speak Now..."
147−msgstr ""
154+msgstr "Tala nu..."
148155
149156#: qml/Hud/Hud.qml:94
150157msgid "Speaking..."
151−msgstr ""
158+msgstr "Talar..."
152159
153160#: qml/Notifications/NotificationMenuItemFactory.qml:91
154161msgid "Show password"
155−msgstr ""
162+msgstr "Visa lösenord"
156163
157164#: qml/Notifications/NotificationMenuItemFactory.qml:103
158165msgid "Please enter SIM PIN"
@@ -160,9 +167,9 @@ msgstr ""
160167
161168#: qml/Panel/SearchIndicator.qml:27
162169msgid "Search"
163−msgstr ""
170+msgstr "Sök"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168−msgstr ""
175+msgstr "Vänligen fyll i %1"
po/sw.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-14 19:28+0000\n"
1212"Last-Translator: Damas Mlabwa <Unknown>\n"
1313"Language-Team: Swahili <sw@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "Tuma"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "Thibitisha"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "Tafuta"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/ta.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-10-24 11:36+0000\n"
1212"Last-Translator: Arun Kumar - அருண் குமார் <thangam.arunx@gmail.com>\n"
1313"Language-Team: Ubuntu Tamil Team/Free Tamil Computing/Thamizha\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919"Language: ta\n"
2020
2121#: plugins/Unity/Launcher/launcheritem.cpp:43
@@ -75,10 +75,35 @@ msgid ""
7575"phone<br><br>Tap on the screen to start"
7676msgstr ""
7777
78+#: qml/Components/Lockscreen.qml:214
79+msgid "Emergency Call"
80+msgstr "அவசர அழைப்பு"
81+
82+#: qml/Components/Lockscreen.qml:231
83+msgid "OK"
84+msgstr ""
85+
7886#: qml/Components/PageHeader.qml:365
7987msgid "Recent searches"
8088msgstr "கடையாக தேடப்பட்டவைகள்"
8189
90+#: qml/Components/PassphraseLockscreen.qml:60
91+#, qt-format
92+msgid "Hello %1"
93+msgstr "வணக்கம் %1"
94+
95+#: qml/Components/PassphraseLockscreen.qml:60
96+msgid "Hello"
97+msgstr "வணக்கம்"
98+
99+#: qml/Components/PinLockscreen.qml:198
100+msgid "CANCEL"
101+msgstr ""
102+
103+#: qml/Components/PinLockscreen.qml:216
104+msgid "DONE"
105+msgstr ""
106+
82107#: qml/Components/SeeMore.qml:35
83108msgid "See more"
84109msgstr ""
@@ -91,11 +116,6 @@ msgstr ""
91116msgid "Recent"
92117msgstr ""
93118
94−#: qml/Dash/PreviewListView.qml:52
95−#, qt-format
96−msgid "%1 Preview"
97−msgstr ""
98−
99119#: qml/Dash/Previews/PreviewActionCombo.qml:34
100120msgid "More..."
101121msgstr ""
@@ -104,35 +124,22 @@ msgstr ""
104124msgid "Less..."
105125msgstr ""
106126
107−#: qml/Dash/Previews/PreviewRatingInput.qml:81
127+#: qml/Dash/Previews/PreviewRatingInput.qml:82
108128msgid "Rate this"
109129msgstr "இதை மதிப்பிடு"
110130
111−#: qml/Dash/Previews/PreviewRatingInput.qml:126
131+#: qml/Dash/Previews/PreviewRatingInput.qml:128
112132msgid "Add a review"
113133msgstr "ஒரு பரிசீலனையை சேர்"
114134
115−#: qml/Dash/Previews/PreviewRatingInput.qml:166
135+#: qml/Dash/Previews/PreviewRatingInput.qml:168
116136msgid "Send"
117137msgstr "அனுப்பு"
118138
119−#: qml/Greeter/Greeter.qml:151
139+#: qml/Greeter/Greeter.qml:157
120140msgid "Swipe to unlock"
121141msgstr ""
122142
123−#: qml/Greeter/Lockscreen.qml:149
124−msgid "Emergency Call"
125−msgstr "அவசர அழைப்பு"
126−
127−#: qml/Greeter/PassphraseLockscreen.qml:59
128−#, qt-format
129−msgid "Hello %1"
130−msgstr "வணக்கம் %1"
131−
132−#: qml/Greeter/PassphraseLockscreen.qml:59
133−msgid "Hello"
134−msgstr "வணக்கம்"
135−
136143#: qml/Hud/HudParametrizedActionsPage.qml:132
137144msgid "Confirm"
138145msgstr "உறுதிப்படுத்து"
@@ -165,7 +172,7 @@ msgstr ""
165172msgid "Search"
166173msgstr "தெடு"
167174
168−#: qml/Shell.qml:348
175+#: qml/Shell.qml:334
169176#, qt-format
170177msgid "Please enter %1"
171178msgstr "தயவுச்செய்து %1 உள்ளிடு"
po/te.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-06-27 09:57+0000\n"
1212"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
1313"Language-Team: Telugu <te@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/tr.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-05-19 12:52+0000\n"
1212"Last-Translator: Volkan Gezer <Unknown>\n"
1313"Language-Team: Turkish <tr@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-22 06:49+0000\n"
18−"X-Generator: Launchpad (build 17017)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -75,10 +75,35 @@ msgstr ""
7575"Kenar haraketlerini öğrendiniz ve telefonu kullanmaya "
7676"başlayabilirsiniz<br><br>Başlamak için ekrana dokunun"
7777
78+#: qml/Components/Lockscreen.qml:214
79+msgid "Emergency Call"
80+msgstr "Acil Arama"
81+
82+#: qml/Components/Lockscreen.qml:231
83+msgid "OK"
84+msgstr ""
85+
7886#: qml/Components/PageHeader.qml:365
7987msgid "Recent searches"
8088msgstr "Son aramalar"
8189
90+#: qml/Components/PassphraseLockscreen.qml:60
91+#, qt-format
92+msgid "Hello %1"
93+msgstr "Merhaba %1"
94+
95+#: qml/Components/PassphraseLockscreen.qml:60
96+msgid "Hello"
97+msgstr "Merhaba"
98+
99+#: qml/Components/PinLockscreen.qml:198
100+msgid "CANCEL"
101+msgstr ""
102+
103+#: qml/Components/PinLockscreen.qml:216
104+msgid "DONE"
105+msgstr ""
106+
82107#: qml/Components/SeeMore.qml:35
83108msgid "See more"
84109msgstr "Daha fazlası"
@@ -91,11 +116,6 @@ msgstr "Daha azını gör"
91116msgid "Recent"
92117msgstr "En son"
93118
94−#: qml/Dash/PreviewListView.qml:52
95−#, qt-format
96−msgid "%1 Preview"
97−msgstr "%1 Önizlemesi"
98−
99119#: qml/Dash/Previews/PreviewActionCombo.qml:34
100120msgid "More..."
101121msgstr "Daha fazlası..."
@@ -104,35 +124,22 @@ msgstr "Daha fazlası..."
104124msgid "Less..."
105125msgstr "Daha az.."
106126
107−#: qml/Dash/Previews/PreviewRatingInput.qml:81
127+#: qml/Dash/Previews/PreviewRatingInput.qml:82
108128msgid "Rate this"
109129msgstr "Oyla"
110130
111−#: qml/Dash/Previews/PreviewRatingInput.qml:126
131+#: qml/Dash/Previews/PreviewRatingInput.qml:128
112132msgid "Add a review"
113133msgstr "Bir inceleme ekle"
114134
115−#: qml/Dash/Previews/PreviewRatingInput.qml:166
135+#: qml/Dash/Previews/PreviewRatingInput.qml:168
116136msgid "Send"
117137msgstr "Gönder"
118138
119−#: qml/Greeter/Greeter.qml:151
139+#: qml/Greeter/Greeter.qml:157
120140msgid "Swipe to unlock"
121141msgstr "Açmak için kaydırın"
122142
123−#: qml/Greeter/Lockscreen.qml:149
124−msgid "Emergency Call"
125−msgstr "Acil Arama"
126−
127−#: qml/Greeter/PassphraseLockscreen.qml:59
128−#, qt-format
129−msgid "Hello %1"
130−msgstr "Merhaba %1"
131−
132−#: qml/Greeter/PassphraseLockscreen.qml:59
133−msgid "Hello"
134−msgstr "Merhaba"
135−
136143#: qml/Hud/HudParametrizedActionsPage.qml:132
137144msgid "Confirm"
138145msgstr "Onayla"
@@ -165,7 +172,7 @@ msgstr "Lütfen SIM PIN'inizi girin"
165172msgid "Search"
166173msgstr "Ara"
167174
168−#: qml/Shell.qml:348
175+#: qml/Shell.qml:334
169176#, qt-format
170177msgid "Please enter %1"
171178msgstr "Lütfen %1 girin"
po/ug.po+40−33
@@ -1,21 +1,21 @@
11# Uyghur translation for unity
22# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013
33# This file is distributed under the same license as the unity package.
4−# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
4+# Gheyret Kenji <gheyret@gmail.com>, 2013.
55#
66msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-04-22 05:46+0000\n"
12−"Last-Translator: abdurahman <Unknown>\n"
13−"Language-Team: Uyghur <ug@li.org>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-13 21:07+0000\n"
12+"Last-Translator: Gheyret T.Kenji <Unknown>\n"
13+"Language-Team: Uyghur Computer Science Association <UKIJ@yahoogroups.com>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -71,13 +71,38 @@ msgid ""
7171"You have now mastered the edge gestures and can start using the "
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
74−"ئېكراننى چېكىپ باشلاڭ<br><br>سىز ھازىر گىرۋەك بارماق ئىشارەتلىرىنى ئىگەللەپ "
74+"ئېكراننى چېكىپ باشلاڭ<br><br>سىز ھازىر گىرۋەك بارماق ئىشارەتلىرىنى ئىگىلەپ "
7575"بولدىڭىز،ئەمدى تېلېفوننى ئىشلىتىشنى باشلىسىڭىز بولىدۇ"
7676
77+#: qml/Components/Lockscreen.qml:214
78+msgid "Emergency Call"
79+msgstr "جىددىي تېلېفون"
80+
81+#: qml/Components/Lockscreen.qml:231
82+msgid "OK"
83+msgstr "تامام"
84+
7785#: qml/Components/PageHeader.qml:365
7886msgid "Recent searches"
7987msgstr "يېقىنقى ئىزدەشلەر"
8088
89+#: qml/Components/PassphraseLockscreen.qml:60
90+#, qt-format
91+msgid "Hello %1"
92+msgstr "سالام %1"
93+
94+#: qml/Components/PassphraseLockscreen.qml:60
95+msgid "Hello"
96+msgstr "ئەسسالامۇئەلەيكۇم"
97+
98+#: qml/Components/PinLockscreen.qml:198
99+msgid "CANCEL"
100+msgstr "ۋاز كەچ"
101+
102+#: qml/Components/PinLockscreen.qml:216
103+msgid "DONE"
104+msgstr "تامام"
105+
81106#: qml/Components/SeeMore.qml:35
82107msgid "See more"
83108msgstr "جىقراق كۆرۈش"
@@ -90,11 +115,6 @@ msgstr "ئازراق كۆرۈش"
90115msgid "Recent"
91116msgstr "يېقىنقى"
92117
93−#: qml/Dash/PreviewListView.qml:52
94−#, qt-format
95−msgid "%1 Preview"
96−msgstr "%1 ئالدىن كۆرۈپ بىقىش"
97−
98118#: qml/Dash/Previews/PreviewActionCombo.qml:34
99119msgid "More..."
100120msgstr "تېخىمۇ كۆپ…"
@@ -103,34 +123,21 @@ msgstr "تېخىمۇ كۆپ…"
103123msgid "Less..."
104124msgstr "ئازراق..."
105125
106−#: qml/Dash/Previews/PreviewRatingInput.qml:81
126+#: qml/Dash/Previews/PreviewRatingInput.qml:82
107127msgid "Rate this"
108128msgstr "بۇنى باھالاڭ"
109129
110−#: qml/Dash/Previews/PreviewRatingInput.qml:126
130+#: qml/Dash/Previews/PreviewRatingInput.qml:128
111131msgid "Add a review"
112132msgstr "باھا قوشۇش"
113133
114−#: qml/Dash/Previews/PreviewRatingInput.qml:166
134+#: qml/Dash/Previews/PreviewRatingInput.qml:168
115135msgid "Send"
116136msgstr "ئەۋەت"
117137
118−#: qml/Greeter/Greeter.qml:151
138+#: qml/Greeter/Greeter.qml:157
119139msgid "Swipe to unlock"
120−msgstr ""
121−
122−#: qml/Greeter/Lockscreen.qml:149
123−msgid "Emergency Call"
124−msgstr "جىددىي تېلېفون"
125−
126−#: qml/Greeter/PassphraseLockscreen.qml:59
127−#, qt-format
128−msgid "Hello %1"
129−msgstr "سالام %1"
130−
131−#: qml/Greeter/PassphraseLockscreen.qml:59
132−msgid "Hello"
133−msgstr "سالام"
140+msgstr "سىيرىسىڭىز قۇلۇپسىزلىنىدۇ"
134141
135142#: qml/Hud/HudParametrizedActionsPage.qml:132
136143msgid "Confirm"
@@ -158,13 +165,13 @@ msgstr "ئىم كۆرسەت"
158165
159166#: qml/Notifications/NotificationMenuItemFactory.qml:103
160167msgid "Please enter SIM PIN"
161−msgstr "پارولىنى كىرگۈزۈڭPINكارتىڭىزنىڭ SIM"
168+msgstr "سىم(SIM) كارتىڭىزنىڭ PIN نومۇرىنى كىرگۈزۈڭ"
162169
163170#: qml/Panel/SearchIndicator.qml:27
164171msgid "Search"
165172msgstr "ئىزدە"
166173
167−#: qml/Shell.qml:348
174+#: qml/Shell.qml:334
168175#, qt-format
169176msgid "Please enter %1"
170177msgstr "%1 نى كىرگۈزۈڭ"
po/uk.po+34−27
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-15 12:00+0000\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-08 19:09+0000\n"
1212"Last-Translator: Yuri Chornoivan <yurchor@gmail.com>\n"
1313"Language-Team: Ukrainian <uk@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-16 06:52+0000\n"
18−"X-Generator: Launchpad (build 17007)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -77,10 +77,35 @@ msgstr ""
7777"Вами налаштовано дії у відповідь на дотики на краях екрана. Тепер телефоном "
7878"можна користуватися.<br><br>Торкніться екрана, щоб розпочати."
7979
80+#: qml/Components/Lockscreen.qml:214
81+msgid "Emergency Call"
82+msgstr "Терміновий виклик"
83+
84+#: qml/Components/Lockscreen.qml:231
85+msgid "OK"
86+msgstr "Гаразд"
87+
8088#: qml/Components/PageHeader.qml:365
8189msgid "Recent searches"
8290msgstr "Нещодавні пошуки"
8391
92+#: qml/Components/PassphraseLockscreen.qml:60
93+#, qt-format
94+msgid "Hello %1"
95+msgstr "Привіт, %1"
96+
97+#: qml/Components/PassphraseLockscreen.qml:60
98+msgid "Hello"
99+msgstr "Привіт!"
100+
101+#: qml/Components/PinLockscreen.qml:198
102+msgid "CANCEL"
103+msgstr "Скасувати"
104+
105+#: qml/Components/PinLockscreen.qml:216
106+msgid "DONE"
107+msgstr "Виконано"
108+
84109#: qml/Components/SeeMore.qml:35
85110msgid "See more"
86111msgstr "Докладніше"
@@ -93,11 +118,6 @@ msgstr "Стисліше"
93118msgid "Recent"
94119msgstr "Нещодавні"
95120
96−#: qml/Dash/PreviewListView.qml:52
97−#, qt-format
98−msgid "%1 Preview"
99−msgstr "Перегляд %1"
100−
101121#: qml/Dash/Previews/PreviewActionCombo.qml:34
102122msgid "More..."
103123msgstr "Більше…"
@@ -106,35 +126,22 @@ msgstr "Більше…"
106126msgid "Less..."
107127msgstr "Менше..."
108128
109−#: qml/Dash/Previews/PreviewRatingInput.qml:81
129+#: qml/Dash/Previews/PreviewRatingInput.qml:82
110130msgid "Rate this"
111131msgstr "Оцінити"
112132
113−#: qml/Dash/Previews/PreviewRatingInput.qml:126
133+#: qml/Dash/Previews/PreviewRatingInput.qml:128
114134msgid "Add a review"
115135msgstr "Додати рецензію"
116136
117−#: qml/Dash/Previews/PreviewRatingInput.qml:166
137+#: qml/Dash/Previews/PreviewRatingInput.qml:168
118138msgid "Send"
119139msgstr "Надіслати"
120140
121−#: qml/Greeter/Greeter.qml:151
141+#: qml/Greeter/Greeter.qml:157
122142msgid "Swipe to unlock"
123143msgstr "Проведіть пальцем, щоб розблокувати"
124144
125−#: qml/Greeter/Lockscreen.qml:149
126−msgid "Emergency Call"
127−msgstr "Терміновий виклик"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−#, qt-format
131−msgid "Hello %1"
132−msgstr "Привіт, %1"
133−
134−#: qml/Greeter/PassphraseLockscreen.qml:59
135−msgid "Hello"
136−msgstr "Привіт!"
137−
138145#: qml/Hud/HudParametrizedActionsPage.qml:132
139146msgid "Confirm"
140147msgstr "Підтвердити"
@@ -167,7 +174,7 @@ msgstr "Введіть PIN-код SIM-картки"
167174msgid "Search"
168175msgstr "Пошук"
169176
170−#: qml/Shell.qml:348
177+#: qml/Shell.qml:334
171178#, qt-format
172179msgid "Please enter %1"
173180msgstr "Будь ласка, введіть %1"
po/unity8.pot+31−24
@@ -8,7 +8,7 @@ msgid ""
88msgstr ""
99"Project-Id-Version: unity8\n"
1010"Report-Msgid-Bugs-To: \n"
11−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1212"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
1313"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1414"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/vi.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-15 01:19+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1313"Language-Team: Vietnamese <vi@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/xh.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2013-09-28 13:20+0000\n"
1212"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
1313"Language-Team: Xhosa <xh@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr ""
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr ""
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr ""
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr ""
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr ""
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr ""
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr ""
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr ""
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr ""
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr ""
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr ""
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr ""
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
po/zh_CN.po+35−28
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
11−"PO-Revision-Date: 2014-05-19 02:24+0000\n"
12−"Last-Translator: Shuduo Sang <Unknown>\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
11+"PO-Revision-Date: 2014-06-12 08:55+0000\n"
12+"Last-Translator: Shengjing Zhu <Unknown>\n"
1313"Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-22 06:49+0000\n"
18−"X-Generator: Launchpad (build 17017)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr "您现在已经掌握了边缘滑动手势,可以开始使用手机了<br><br>请点击屏幕开始使用"
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "紧急电话"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr "确定"
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "近期搜索"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "你好,%1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "你好"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr "取消"
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr "完成"
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr "了解更多"
@@ -88,11 +113,6 @@ msgstr "显示更少"
88113msgid "Recent"
89114msgstr "最近使用过的"
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr "%1 预览"
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr "更多..."
@@ -101,35 +121,22 @@ msgstr "更多..."
101121msgid "Less..."
102122msgstr "更少..."
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "评分"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "添加评论"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "发送"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr "滑动解锁"
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "紧急电话"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "你好,%1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "你好"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "确认"
@@ -162,7 +169,7 @@ msgstr "请输入 SIM PIN"
162169msgid "Search"
163170msgstr "搜索"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "请输入 %1"
po/zh_HK.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity8\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-25 13:32+0000\n"
1212"Last-Translator: Daniel Cheung <daniel.2345@hotmail.com>\n"
1313"Language-Team: Chinese (Hong Kong) <zh_HK@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "緊急電話"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "最近的搜尋"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "您好 %1"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "您好"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "評價"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "新增評論"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "傳送"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "緊急電話"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "您好 %1"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "您好"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "確認"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "搜尋"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr "請輸入 %1"
po/zh_TW.po+33−26
@@ -7,15 +7,15 @@ msgid ""
77msgstr ""
88"Project-Id-Version: unity\n"
99"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2014-04-10 11:13-0400\n"
10+"POT-Creation-Date: 2014-06-13 09:55+0200\n"
1111"PO-Revision-Date: 2014-01-16 06:04+0000\n"
1212"Last-Translator: Henry Yang <henry9846@hotmail.com>\n"
1313"Language-Team: Chinese (Traditional) <zh_TW@li.org>\n"
1414"MIME-Version: 1.0\n"
1515"Content-Type: text/plain; charset=UTF-8\n"
1616"Content-Transfer-Encoding: 8bit\n"
17−"X-Launchpad-Export-Date: 2014-05-01 06:44+0000\n"
18−"X-Generator: Launchpad (build 16985)\n"
17+"X-Launchpad-Export-Date: 2014-06-17 06:51+0000\n"
18+"X-Generator: Launchpad (build 17045)\n"
1919
2020#: plugins/Unity/Launcher/launcheritem.cpp:43
2121#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -72,10 +72,35 @@ msgid ""
7272"phone<br><br>Tap on the screen to start"
7373msgstr ""
7474
75+#: qml/Components/Lockscreen.qml:214
76+msgid "Emergency Call"
77+msgstr "緊急連絡"
78+
79+#: qml/Components/Lockscreen.qml:231
80+msgid "OK"
81+msgstr ""
82+
7583#: qml/Components/PageHeader.qml:365
7684msgid "Recent searches"
7785msgstr "最近搜尋"
7886
87+#: qml/Components/PassphraseLockscreen.qml:60
88+#, qt-format
89+msgid "Hello %1"
90+msgstr "%1 您好"
91+
92+#: qml/Components/PassphraseLockscreen.qml:60
93+msgid "Hello"
94+msgstr "您好"
95+
96+#: qml/Components/PinLockscreen.qml:198
97+msgid "CANCEL"
98+msgstr ""
99+
100+#: qml/Components/PinLockscreen.qml:216
101+msgid "DONE"
102+msgstr ""
103+
79104#: qml/Components/SeeMore.qml:35
80105msgid "See more"
81106msgstr ""
@@ -88,11 +113,6 @@ msgstr ""
88113msgid "Recent"
89114msgstr ""
90115
91−#: qml/Dash/PreviewListView.qml:52
92−#, qt-format
93−msgid "%1 Preview"
94−msgstr ""
95−
96116#: qml/Dash/Previews/PreviewActionCombo.qml:34
97117msgid "More..."
98118msgstr ""
@@ -101,35 +121,22 @@ msgstr ""
101121msgid "Less..."
102122msgstr ""
103123
104−#: qml/Dash/Previews/PreviewRatingInput.qml:81
124+#: qml/Dash/Previews/PreviewRatingInput.qml:82
105125msgid "Rate this"
106126msgstr "對此評比"
107127
108−#: qml/Dash/Previews/PreviewRatingInput.qml:126
128+#: qml/Dash/Previews/PreviewRatingInput.qml:128
109129msgid "Add a review"
110130msgstr "新增回覆"
111131
112−#: qml/Dash/Previews/PreviewRatingInput.qml:166
132+#: qml/Dash/Previews/PreviewRatingInput.qml:168
113133msgid "Send"
114134msgstr "發送"
115135
116−#: qml/Greeter/Greeter.qml:151
136+#: qml/Greeter/Greeter.qml:157
117137msgid "Swipe to unlock"
118138msgstr ""
119139
120−#: qml/Greeter/Lockscreen.qml:149
121−msgid "Emergency Call"
122−msgstr "緊急連絡"
123−
124−#: qml/Greeter/PassphraseLockscreen.qml:59
125−#, qt-format
126−msgid "Hello %1"
127−msgstr "%1 您好"
128−
129−#: qml/Greeter/PassphraseLockscreen.qml:59
130−msgid "Hello"
131−msgstr "您好"
132−
133140#: qml/Hud/HudParametrizedActionsPage.qml:132
134141msgid "Confirm"
135142msgstr "確認"
@@ -162,7 +169,7 @@ msgstr ""
162169msgid "Search"
163170msgstr "搜尋"
164171
165−#: qml/Shell.qml:348
172+#: qml/Shell.qml:334
166173#, qt-format
167174msgid "Please enter %1"
168175msgstr ""
qml/Greeter/Lockscreen.qml → qml/Components/Lockscreen.qmlrenamed+91−8
@@ -15,8 +15,8 @@
1515 */
1616
1717import QtQuick 2.0
18−import Ubuntu.Components 0.1
19−import "../Components"
18+import Ubuntu.Components 1.0
19+import Ubuntu.Components.Popups 1.0
2020
2121Showable {
2222 id: root
@@ -26,19 +26,34 @@ Showable {
2626
2727 // Placeholder text
2828 property string placeholderText: ""
29+ // Placeholder text while shaking (e.g. Incorrect passprase)
30+ property string wrongPlaceholderText: ""
31+ // Retries text (e.g. 3 retries left)
32+ property string retryText: ""
33+
34+ // Informational text. (e.g. some text to tell which domain this is pin is entered for.
35+ property string infoText: ""
2936
3037 // In case the Lockscreen can show a greeter message, this is the username
3138 property string username: ""
3239
33− // Set this to a value greater 0 to enable auto-confirm behavior for the lockscreen.
34− // This is ignored by the alphaNumeric lockscreen as that one is confirmed with pressing enter on the OSK.
35− property int pinLength: -1
40+ // Set those to a value greater 0 to restrict the pin length.
41+ // If both are unset, the Lockscreen will show a confirm button and allow typing any length of pin before
42+ // confirming. If minPinLength is set to a value > 0, the confirm button will only become active when the
43+ // entered pin is at least that long. If maxPinLength is set, the lockscreen won't allow entering any
44+ // more numbers than that. If both are set to the same value, the lockscreen will enter auto confirming
45+ // behavior, hiding the confirmation button and triggering that automatically when the entered pin reached
46+ // that length. This is ignored by the alphaNumeric lockscreen as that one is always confirmed by pressing
47+ // enter on the OSK.
48+ property int minPinLength: -1
49+ property int maxPinLength: -1
3650
3751 property url background: ""
3852
3953 signal entered(string passphrase)
4054 signal cancel()
4155 signal emergencyCall()
56+ signal infoPopupConfirmed()
4257
4358 onRequiredChanged: {
4459 if (required && pinPadLoader.item) {
@@ -56,6 +71,10 @@ Showable {
5671 pinPadLoader.item.clear(showAnimation);
5772 }
5873
74+ function showInfoPopup(title, text) {
75+ PopupUtils.open(infoPopupComponent, root, {title: title, text: text})
76+ }
77+
5978 Rectangle {
6079 // In case background fails to load or is undefined
6180 id: backgroundBackup
@@ -68,7 +87,6 @@ Showable {
6887 objectName: "lockscreenBackground"
6988 anchors {
7089 fill: parent
71− topMargin: backgroundTopMargin
7290 }
7391 source: root.required ? root.background : ""
7492 fillMode: Image.PreserveAspectCrop
@@ -78,6 +96,43 @@ Showable {
7896 anchors.fill: root
7997 }
8098
99+ Column {
100+ spacing: units.gu(2)
101+ anchors {
102+ left: parent.left
103+ right: parent.right
104+ bottom: pinPadLoader.top
105+ bottomMargin: units.gu(2)
106+ }
107+ Label {
108+ objectName: "retryCountLabel"
109+ anchors {
110+ left: parent.left
111+ right: parent.right
112+ }
113+ text: root.retryText
114+ horizontalAlignment: Text.AlignHCenter
115+ color: "#f3f3e7"
116+ opacity: 0.6
117+ visible: root.retryText.length > 0
118+ }
119+ Label {
120+ id: infoTextLabel
121+ objectName: "infoTextLabel"
122+ anchors {
123+ left: parent.left
124+ right: parent.right
125+ }
126+ text: root.infoText
127+ horizontalAlignment: Text.AlignHCenter
128+ color: "#f3f3e7"
129+ opacity: 0.6
130+ visible: root.infoText.length > 0
131+ }
132+ }
133+
134+
135+
81136 Loader {
82137 id: pinPadLoader
83138 objectName: "pinPadLoader"
@@ -105,14 +160,24 @@ Showable {
105160
106161 Binding {
107162 target: pinPadLoader.item
108− property: "pinLength"
109− value: root.pinLength
163+ property: "minPinLength"
164+ value: root.minPinLength
165+ }
166+ Binding {
167+ target: pinPadLoader.item
168+ property: "maxPinLength"
169+ value: root.maxPinLength
110170 }
111171 Binding {
112172 target: pinPadLoader.item
113173 property: "placeholderText"
114174 value: root.placeholderText
115175 }
176+ Binding {
177+ target: pinPadLoader.item
178+ property: "wrongPlaceholderText"
179+ value: root.wrongPlaceholderText
180+ }
116181 Binding {
117182 target: pinPadLoader.item
118183 property: "username"
@@ -153,4 +218,22 @@ Showable {
153218 anchors.horizontalCenter: parent.horizontalCenter
154219 }
155220 }
221+
222+ Component {
223+ id: infoPopupComponent
224+ Dialog {
225+ id: dialog
226+ objectName: "infoPopup"
227+ modal: true
228+
229+ Button {
230+ objectName: "infoPopupOkButton"
231+ text: i18n.tr("OK")
232+ onClicked: {
233+ PopupUtils.close(dialog)
234+ root.infoPopupConfirmed();
235+ }
236+ }
237+ }
238+ }
156239}
qml/Components/PageHeader.qml+15−3
@@ -27,12 +27,13 @@ Item {
2727 property ListModel searchHistory
2828 property var scope: null
2929 property alias childItem: itemContainer.children
30+ property alias bottomItem: bottomContainer.children
3031 property alias showBackButton: backButton.visible
3132
3233 signal backClicked
3334
34− height: units.gu(8.5)
35− implicitHeight: units.gu(8.5)
35+ height: header.height + units.gu(2) + bottomContainer.height
36+ implicitHeight: header.height + units.gu(2) + bottomContainer.height
3637
3738 function triggerSearch() {
3839 if (searchEntryEnabled) searchField.forceActiveFocus()
@@ -404,9 +405,20 @@ Item {
404405 top: header.bottom
405406 left: parent.left
406407 right: parent.right
407− bottom: parent.bottom
408+ bottom: bottomContainer.top
408409 }
409410
410411 source: "graphics/PageHeaderBaseDivider.sci"
411412 }
413+
414+ Item {
415+ id: bottomContainer
416+
417+ anchors {
418+ left: parent.left
419+ right: parent.right
420+ bottom: parent.bottom
421+ }
422+ height: childrenRect.height
423+ }
412424}
qml/Greeter/PassphraseLockscreen.qml → qml/Components/PassphraseLockscreen.qmlrenamed+6−2
@@ -22,7 +22,8 @@ Item {
2222 id: root
2323 height: highlightItem.height
2424
25− property alias placeholderText: pinentryField.placeholderText
25+ property string placeholderText
26+ property string wrongPlaceholderText
2627 property string username: ""
2728
2829 signal entered(string passphrase)
@@ -73,9 +74,12 @@ Item {
7374 echoMode: TextInput.Password
7475 opacity: 0.9
7576 hasClearButton: false
77+ placeholderText: wrongPasswordAnimation.running ? root.wrongPlaceholderText : root.placeholderText
7678
7779 onAccepted: {
78− root.entered(pinentryField.text);
80+ if (pinentryField.text) {
81+ root.entered(pinentryField.text);
82+ }
7983 }
8084 }
8185 }
qml/Greeter/PinLockscreen.qml → qml/Components/PinLockscreen.qmlrenamed+30−12
@@ -25,9 +25,11 @@ Column {
2525 spacing: units.gu(3.5)
2626
2727 property alias placeholderText: pinentryField.placeholderText
28+ property alias wrongPlaceholderText: pinentryField.wrongPlaceholderText
2829 property int padWidth: units.gu(34)
2930 property int padHeight: units.gu(28)
30− property int pinLength: -1
31+ property int minPinLength: -1
32+ property int maxPinLength: -1
3133
3234 signal entered(string passphrase)
3335 signal cancel()
@@ -41,6 +43,10 @@ Column {
4143 }
4244 }
4345
46+ QtObject {
47+ id: priv
48+ property bool autoConfirm: root.minPinLength == root.maxPinLength && root.minPinLength != -1
49+ }
4450
4551 UbuntuShape {
4652 id: pinentryField
@@ -52,12 +58,20 @@ Column {
5258 radius: "medium"
5359 property string text: ""
5460 property string placeholderText: ""
61+ property string wrongPlaceholderText: ""
62+
63+ function appendChar(character) {
64+ if (root.maxPinLength == -1 || pinentryField.text.length < root.maxPinLength) {
65+ pinentryField.text = pinentryField.text + character;
66+ }
67+ }
68+
5569 onTextChanged: {
5670 pinentryFieldLabel.text = "";
5771 for (var i = 0; i < text.length; ++i) {
5872 pinentryFieldLabel.text += "•";
5973 }
60− if (text.length === root.pinLength) {
74+ if (priv.autoConfirm && text.length === root.maxPinLength) {
6175 root.entered(text);
6276 }
6377 }
@@ -74,9 +88,11 @@ Column {
7488 }
7589 Label {
7690 id: pinentryFieldPlaceHolder
91+ objectName: "pinentryFieldPlaceHolder"
7792 anchors.centerIn: parent
78− color: "grey"
79− text: parent.placeholderText
93+ color: "#f3f3e7"
94+ opacity: 0.6
95+ text: wrongPasswordAnimation.running ? parent.wrongPlaceholderText : parent.placeholderText
8096 visible: pinentryFieldLabel.text.length == 0
8197 }
8298
@@ -91,9 +107,11 @@ Column {
91107 bottom: parent.bottom
92108 bottomMargin: units.gu(1)
93109 }
94− visible: root.pinLength == -1
110+ visible: !priv.autoConfirm
95111 width: height
96112 name: "erase"
113+ color: "#f3f3e7"
114+ opacity: 0.6
97115 MouseArea {
98116 anchors.fill: parent
99117 onClicked: pinentryField.text = pinentryField.text.substring(0, pinentryField.text.length-1);
@@ -168,7 +186,7 @@ Column {
168186 enabled: entryEnabled
169187
170188 onClicked: {
171− pinentryField.text = pinentryField.text + text;
189+ pinentryField.appendChar(text);
172190 }
173191 }
174192 }
@@ -177,7 +195,7 @@ Column {
177195 objectName: "pinPadButtonBack"
178196 width: root.padWidth / 3
179197 height: root.padHeight / 4
180− subText: "CANCEL"
198+ subText: i18n.tr("CANCEL")
181199 onClicked: root.cancel();
182200 }
183201
@@ -186,7 +204,7 @@ Column {
186204 width: root.padWidth / 3
187205 height: root.padHeight / 4
188206 text: "0"
189− onClicked: pinentryField.text = pinentryField.text + text
207+ onClicked: pinentryField.appendChar(text);
190208 enabled: entryEnabled
191209 }
192210
@@ -194,16 +212,16 @@ Column {
194212 objectName: "pinPadButtonErase"
195213 width: root.padWidth / 3
196214 height: root.padHeight / 4
197− iconName: root.pinLength == -1 ? "" : "erase"
198− subText: root.pinLength == -1 ? "DONE" : ""
215+ iconName: priv.autoConfirm ? "erase" : ""
216+ subText: priv.autoConfirm ? "" : i18n.tr("DONE")
199217 onClicked: {
200− if (root.pinLength !== -1) {
218+ if (priv.autoConfirm) {
201219 pinentryField.text = pinentryField.text.substring(0, pinentryField.text.length-1);
202220 } else {
203221 root.entered(pinentryField.text);
204222 }
205223 }
206− enabled: entryEnabled
224+ enabled: priv.autoConfirm ? entryEnabled : pinentryField.text.length >= root.minPinLength
207225 }
208226 }
209227 }
qml/Components/PinPadButton.qml+2−1
@@ -19,6 +19,7 @@ import Ubuntu.Components 0.1
1919
2020Item {
2121 id: root
22+ opacity: enabled ? 1 : 0.6
2223
2324 property alias text: label.text
2425 property alias subText: subTextLabel.text
@@ -62,7 +63,7 @@ Item {
6263 Label {
6364 id: subTextLabel
6465 fontSize: "small"
65− color: "grey"
66+ color: "#f3f3e7"
6667 anchors.horizontalCenter: parent.horizontalCenter
6768 visible: text.length > 0
6869 }
qml/Components/ResponsiveVerticalJournal.qmlnew file+74
@@ -0,0 +1,74 @@
1+/*
2+ * Copyright (C) 2013-2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+import QtQuick 2.0
18+import Ubuntu.Components 0.1
19+import "../Components"
20+import Dash 0.1
21+
22+/*!
23+ \brief A responsive wrapper around VerticalJournal.
24+
25+ Based on defined column width, delegates are laid out in columns following
26+ a top-left most position rule.
27+
28+ Example:
29+ +-----+ +-----+ +-----+
30+ | | | 2 | | |
31+ | | | | | |
32+ | 1 | +-----+ | 3 |
33+ | | +-----+ | |
34+ | | | | +-----+
35+ +-----+ | 4 | +-----+
36+ +-----+ | | | 5 |
37+ | 6 | +-----+ | |
38+ | | +-----+
39+ +-----+
40+*/
41+Item {
42+ property real minimumColumnSpacing: units.gu(1)
43+
44+ property alias columnWidth: verticalJournalView.columnWidth
45+ property alias rowSpacing: verticalJournalView.rowSpacing
46+ property alias model: verticalJournalView.model
47+ property alias delegate: verticalJournalView.delegate
48+ property alias displayMarginBeginning: verticalJournalView.displayMarginBeginning
49+ property alias displayMarginEnd: verticalJournalView.displayMarginEnd
50+ implicitHeight: verticalJournalView.implicitHeight
51+
52+ VerticalJournal {
53+ id: verticalJournalView
54+ objectName: "responsiveVerticalJournalView"
55+ anchors {
56+ fill: parent
57+ leftMargin: columnSpacing / 2
58+ rightMargin: columnSpacing / 2
59+ topMargin: rowSpacing / 2
60+ bottomMargin: rowSpacing / 2
61+ }
62+ clip: parent.height != implicitHeight
63+
64+ function px2gu(pixels) {
65+ return Math.floor(pixels / units.gu(1))
66+ }
67+
68+ columnSpacing: {
69+ // parent.width = columns * columnWidth + (columns-1) * spacing + spacing(margins)
70+ var expectedColumns = Math.max(1, Math.floor(parent.width / (columnWidth + minimumColumnSpacing)));
71+ Math.floor((parent.width - expectedColumns * columnWidth) / expectedColumns);
72+ }
73+ }
74+}
qml/Dash/CardCarousel.qml+1−3
@@ -27,14 +27,12 @@ DashRenderer {
2727 property alias selectedItemScaleFactor: carousel.selectedItemScaleFactor
2828 property alias tileAspectRatio: carousel.tileAspectRatio
2929
30− currentItem: carousel.currentItem
3130 height: carousel.implicitHeight + units.gu(6)
32− verticalSpacing: units.gu(3)
3331
3432 Carousel {
3533 id: carousel
3634 anchors.fill: parent
37− tileAspectRatio: cardCarousel.components && cardCarousel.components["art"]["aspect-ratio"] || 1.0
35+ tileAspectRatio: cardTool.components && cardTool.components["art"]["aspect-ratio"] || 1.0
3836 // FIXME we need to "reverse" the carousel to make the selected item the size
3937 // and push others back.
4038 minimumTileWidth: cardTool.cardWidth / selectedItemScaleFactor
qml/Dash/CardFilterGrid.qml+1−4
@@ -22,11 +22,8 @@ DashRenderer {
2222
2323 expandable: filterGrid.expandable
2424 collapsedHeight: filterGrid.collapsedHeight
25− margins: filterGrid.margins
2625 uncollapsedHeight: filterGrid.uncollapsedHeight
2726 originY: filterGrid.originY
28− verticalSpacing: units.gu(1)
29− currentItem: filterGrid.currentItem
3027 height: filterGrid.height
3128 filtered: filterGrid.filtered
3229
@@ -40,7 +37,7 @@ DashRenderer {
4037 minimumHorizontalSpacing: units.gu(1)
4138 delegateWidth: cardTool.cardWidth
4239 delegateHeight: cardTool.cardHeight
43− verticalSpacing: genericFilterGrid.verticalSpacing
40+ verticalSpacing: units.gu(1)
4441 model: genericFilterGrid.model
4542 collapsedRowCount: Math.min(2, cardTool && cardTool.template && cardTool.template["collapsed-rows"] || 2)
4643 displayMarginBeginning: genericFilterGrid.displayMarginBeginning
qml/Dash/CardVerticalJournal.qmlnew file+89
@@ -0,0 +1,89 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+import QtQuick 2.0
18+import Ubuntu.Components 0.1
19+import "../Components"
20+
21+DashRenderer {
22+ id: root
23+
24+ readonly property double collapseLimit: units.gu(35)
25+
26+ uncollapsedHeight: cardVerticalJournal.implicitHeight
27+ collapsedHeight: Math.min(collapseLimit, cardVerticalJournal.implicitHeight)
28+ expandable: uncollapsedHeight > collapseLimit
29+
30+ // This minHeight is used as bootstrapper for the height. Vertical Journal
31+ // is special by the fact that it doesn't know how to calculate its implicit height unless we give it
32+ // enough height that it can start creating its children so we make sure it has enough height for that
33+ // in case the model is non empty
34+ readonly property double minHeight: root.model.count > 1 ? cardVerticalJournal.rowSpacing + 1 : 0
35+ height: filtered ? Math.max(collapsedHeight, minHeight) : uncollapsedHeight
36+
37+ Behavior on height {
38+ id: heightBehaviour
39+ enabled: false
40+ animation: UbuntuNumberAnimation {
41+ onRunningChanged: {
42+ if (!running) {
43+ heightBehaviour.enabled = false
44+ }
45+ }
46+ }
47+ }
48+
49+ function setFilter(filter, animate) {
50+ heightBehaviour.enabled = animate;
51+ filtered = filter;
52+ }
53+
54+ ResponsiveVerticalJournal {
55+ id: cardVerticalJournal
56+
57+ model: root.model
58+
59+ anchors.fill: parent
60+ rowSpacing: minimumColumnSpacing
61+ columnWidth: cardTool.cardWidth
62+
63+ displayMarginBeginning: root.displayMarginBeginning
64+ displayMarginEnd: root.displayMarginEnd
65+
66+ delegate: Loader {
67+ id: loader
68+ sourceComponent: cardTool.cardComponent
69+ width: cardTool.cardWidth
70+ anchors.horizontalCenter: parent.horizontalCenter
71+ onLoaded: {
72+ item.objectName = "delegate" + index;
73+ item.width = Qt.binding(function() { return cardTool.cardWidth; });
74+ item.height = Qt.binding(function() { return cardTool.cardHeight; });
75+ item.fixedArtShapeSize = Qt.binding(function() { return cardTool.artShapeSize; });
76+ item.fixedHeaderHeight = Qt.binding(function() { return cardTool.headerHeight; });
77+ item.cardData = Qt.binding(function() { return model; });
78+ item.template = Qt.binding(function() { return cardTool.template; });
79+ item.components = Qt.binding(function() { return cardTool.components; });
80+ item.headerAlignment = Qt.binding(function() { return cardTool.headerAlignment; });
81+ }
82+ Connections {
83+ target: loader.item
84+ onClicked: root.clicked(index, result)
85+ onPressAndHold: root.pressAndHold(index)
86+ }
87+ }
88+ }
89+}
qml/Dash/DashContent.qml+9−1
@@ -151,7 +151,7 @@ Item {
151151 item.previewListView = previewListView;
152152 item.scope = Qt.binding(function() { return scope })
153153 item.isCurrent = Qt.binding(function() { return visible && ListView.isCurrentItem })
154− item.tabBarHeight = dashPageHeader.implicitHeight;
154+ item.tabBarHeight = Qt.binding(function() { return dashPageHeader.implicitHeight; })
155155 dashContent.scopeLoaded(item.scope.id)
156156 }
157157 Connections {
@@ -217,6 +217,14 @@ Item {
217217 onTriggered: tabBar.selectionMode = false
218218 }
219219 }
220+
221+ bottomItem: DashDepartments {
222+ scope: dashContentList.currentItem ? dashContentList.currentItem.theScope : null
223+ width: parent.width <= units.gu(60) ? parent.width : units.gu(40)
224+ anchors.right: parent.right
225+ windowHeight: dashContent.height
226+ windowWidth: dashContent.width
227+ }
220228 }
221229 }
222230
qml/Dash/DashDepartments.qmlnew file+202
@@ -0,0 +1,202 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+import QtQuick 2.2
18+import Ubuntu.Components 0.1
19+
20+AbstractButton {
21+ id: root
22+ objectName: "dashDepartments"
23+
24+ property var scope: null
25+
26+ property bool showList: false
27+
28+ readonly property var currentDepartment: scope && scope.hasDepartments ? scope.getDepartment(scope.currentDepartmentId) : null
29+
30+ property alias windowWidth: blackRect.width
31+ property alias windowHeight: blackRect.height
32+
33+ // Are we drilling down the tree or up?
34+ property bool isGoingBack: false
35+
36+ visible: root.currentDepartment != null
37+
38+ height: visible ? units.gu(5) : 0
39+
40+ onClicked: {
41+ root.showList = !root.showList;
42+ }
43+
44+ Rectangle {
45+ id: blackRect
46+ color: "black"
47+ opacity: departmentListView.currentItem && departmentListView.currentItem.visible ? 0.3 : 0
48+ Behavior on opacity { UbuntuNumberAnimation { duration: UbuntuAnimation.SnapDuration } }
49+ anchors.top: departmentListView.top
50+ anchors.right: parent.right
51+ visible: opacity != 0
52+ }
53+
54+ Image {
55+ anchors {
56+ top: parent.top
57+ left: parent.left
58+ right: parent.right
59+ }
60+ fillMode: Image.Stretch
61+ source: "graphics/dash_divider_top_lightgrad.png"
62+ z: -1
63+ }
64+
65+ Image {
66+ anchors {
67+ bottom: parent.bottom
68+ left: parent.left
69+ right: parent.right
70+ }
71+ fillMode: Image.Stretch
72+ source: "graphics/dash_divider_top_darkgrad.png"
73+ z: -1
74+ }
75+
76+ Label {
77+ anchors.fill: parent
78+ anchors.margins: units.gu(2)
79+ verticalAlignment: Text.AlignVCenter
80+ text: root.currentDepartment ? root.currentDepartment.label : ""
81+ color: "gray" // TODO remove once we're a separate app
82+ }
83+
84+ Image {
85+ anchors.verticalCenter: parent.verticalCenter
86+ anchors.right: parent.right
87+ anchors.rightMargin: units.gu(2)
88+ rotation: showList ? 180 : 0
89+ source: "image://theme/dropdown-menu"
90+ sourceSize.height: parent.height - units.gu(2)
91+ sourceSize.width: units.gu(2)
92+ fillMode: Image.PreserveAspectFit
93+ }
94+
95+ // departmentListView is outside root
96+ ListView {
97+ id: departmentListView
98+ objectName: "departmentListView"
99+ orientation: ListView.Horizontal
100+ interactive: false
101+ clip: root.width != windowWidth
102+ model: ListModel {
103+ id: departmentModel
104+ // We have two roles
105+ // departmentId: the department id of the department the list represents
106+ // nullifyDepartment: overrides departmentId to be null
107+ // This is used to "clear" the delegate when going "right" on the tree
108+ }
109+ anchors {
110+ left: parent.left
111+ right: parent.right
112+ top: root.bottom
113+ }
114+ readonly property int maxHeight: (windowHeight - mapToItem(null, root.x, root.y).y) - units.gu(8)
115+ property int prevHeight: maxHeight
116+ height: currentItem ? currentItem.height : maxHeight
117+ onHeightChanged: {
118+ if (root.showList) {
119+ prevHeight = currentItem.desiredHeight;
120+ }
121+ }
122+ highlightMoveDuration: UbuntuAnimation.FastDuration
123+ delegate: DashDepartmentsList {
124+ objectName: "department" + index
125+ visible: height != 0
126+ width: departmentListView.width
127+ property real desiredHeight: {
128+ if (root.showList) {
129+ if (department && department.loaded && x == departmentListView.contentX)
130+ {
131+ return Math.min(implicitHeight, departmentListView.maxHeight);
132+ } else {
133+ return departmentListView.prevHeight;
134+ }
135+ } else {
136+ return 0;
137+ }
138+ }
139+ height: desiredHeight
140+ department: (nullifyDepartment || !scope) ? null : scope.getDepartment(departmentId)
141+ currentDepartment: root.currentDepartment
142+ onEnterDepartment: {
143+ scope.loadDepartment(newDepartmentId);
144+ // We only need to add a new item to the model
145+ // if we have children, otherwise just load it
146+ if (hasChildren) {
147+ isGoingBack = false;
148+ departmentModel.append({"departmentId": newDepartmentId, "nullifyDepartment": false});
149+ departmentListView.currentIndex++;
150+ } else {
151+ showList = false;
152+ }
153+ }
154+ onGoBackToParentClicked: {
155+ scope.loadDepartment(department.parentDepartmentId);
156+ isGoingBack = true;
157+ departmentModel.setProperty(departmentListView.currentIndex - 1, "nullifyDepartment", false);
158+ departmentListView.currentIndex--;
159+ }
160+ onAllDepartmentClicked: {
161+ showList = false;
162+ if (root.currentDepartment.parentDepartmentId == department.departmentId) {
163+ // For leaves we have to go to the parent too
164+ scope.loadDepartment(root.currentDepartment.parentDepartmentId);
165+ }
166+ }
167+ }
168+ onContentXChanged: {
169+ if (contentX == width * departmentListView.currentIndex) {
170+ if (isGoingBack) {
171+ departmentModel.remove(departmentListView.currentIndex + 1);
172+ } else {
173+ departmentModel.setProperty(departmentListView.currentIndex - 1, "nullifyDepartment", true);
174+ }
175+ }
176+ }
177+ }
178+
179+ InverseMouseArea {
180+ anchors.fill: departmentListView
181+ enabled: root.showList
182+ onClicked: root.showList = false
183+ }
184+
185+ onScopeChanged: {
186+ departmentModel.clear();
187+ if (scope && scope.hasDepartments) {
188+ departmentModel.append({"departmentId": scope.currentDepartmentId, "nullifyDepartment": false});
189+ }
190+ }
191+
192+ Connections {
193+ target: scope
194+ onHasDepartmentsChanged: {
195+ if (scope.hasDepartments) {
196+ departmentModel.append({"departmentId": scope.currentDepartmentId, "nullifyDepartment": false});
197+ } else {
198+ departmentModel.clear();
199+ }
200+ }
201+ }
202+}
qml/Dash/DashDepartmentsList.qmlnew file+195
@@ -0,0 +1,195 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+import QtQuick 2.2
18+import Ubuntu.Components 0.1
19+
20+Item {
21+ id: root
22+ property var department: null
23+ property var currentDepartment: null
24+ signal enterDepartment(var newDepartmentId, bool hasChildren)
25+ signal goBackToParentClicked()
26+ signal allDepartmentClicked()
27+
28+ readonly property int itemHeight: units.gu(5)
29+ implicitHeight: flickable.contentHeight
30+
31+ Rectangle {
32+ color: "white"
33+ anchors.fill: parent
34+ }
35+
36+ ActivityIndicator {
37+ id: loadingIndicator
38+ anchors.centerIn: parent
39+ running: !(department && department.loaded)
40+ }
41+ clip: true
42+
43+ Behavior on height {
44+ UbuntuNumberAnimation {
45+ id: heightAnimation
46+ duration: UbuntuAnimation.SnapDuration
47+ }
48+ }
49+
50+ Flickable {
51+ id: flickable
52+
53+ anchors.fill: parent
54+
55+ contentHeight: column.height
56+ contentWidth: width
57+
58+ Column {
59+ id: column
60+ width: parent.width
61+
62+ // TODO: check if SDK ListItems could be used here
63+ // and if not make them be useful since this is a quite common pattern
64+
65+ AbstractButton {
66+ id: backButton
67+ objectName: "backButton"
68+ width: parent.width
69+ visible: department && !department.isRoot || false
70+ height: itemHeight
71+
72+ onClicked: root.goBackToParentClicked();
73+
74+ Image {
75+ id: backImage
76+ anchors {
77+ verticalCenter: parent.verticalCenter
78+ left: parent.left
79+ leftMargin: units.gu(2)
80+ }
81+ source: "image://theme/back"
82+ sourceSize.height: parent.height - units.gu(3)
83+ sourceSize.width: units.gu(3)
84+ fillMode: Image.PreserveAspectFit
85+ }
86+
87+ Label {
88+ anchors {
89+ verticalCenter: parent.verticalCenter
90+ left: backImage.right
91+ leftMargin: units.gu(0.5)
92+ }
93+ text: department ? department.parentLabel : ""
94+ color: "gray" // TODO remove once we're a separate app
95+ }
96+
97+ Rectangle {
98+ anchors {
99+ bottom: parent.bottom
100+ left: parent.left
101+ right: parent.right
102+ leftMargin: units.gu(2)
103+ rightMargin: units.gu(2)
104+ }
105+ color: "gray"
106+ opacity: 0.2
107+ height: units.dp(1)
108+ }
109+ }
110+
111+ AbstractButton {
112+ id: allButton
113+ objectName: "allButton"
114+ width: parent.width
115+ visible: department && (!department.isRoot || (root.currentDepartment && !root.currentDepartment.isRoot && root.currentDepartment.parentDepartmentId == department.departmentId)) || false
116+ height: itemHeight
117+
118+ Label {
119+ anchors {
120+ verticalCenter: parent.verticalCenter
121+ left: parent.left
122+ leftMargin: units.gu(2)
123+ }
124+ text: department ? (department.allLabel != "" ? department.allLabel : department.label) : ""
125+ font.bold: true
126+ color: "gray" // TODO remove once we're a separate app
127+ }
128+
129+ Rectangle {
130+ anchors {
131+ bottom: parent.bottom
132+ left: parent.left
133+ right: parent.right
134+ leftMargin: units.gu(2)
135+ rightMargin: units.gu(2)
136+ }
137+ color: "gray"
138+ opacity: 0.2
139+ height: units.dp(1)
140+ }
141+
142+ onClicked: root.allDepartmentClicked();
143+ }
144+
145+ Repeater {
146+ model: department && department.loaded ? department : null
147+ clip: true
148+ delegate: AbstractButton {
149+ objectName: root.objectName + "child" + index
150+ height: root.itemHeight
151+ width: root.width
152+
153+ onClicked: root.enterDepartment(departmentId, hasChildren)
154+
155+ Label {
156+ anchors {
157+ verticalCenter: parent.verticalCenter
158+ left: parent.left
159+ leftMargin: units.gu(2)
160+ }
161+ text: label
162+ color: "gray" // TODO remove once we're a separate app
163+ }
164+
165+ Image {
166+ anchors {
167+ verticalCenter: parent.verticalCenter
168+ right: parent.right
169+ rightMargin: units.gu(2)
170+ }
171+ source: hasChildren ? "image://theme/chevron" : "graphics/tick.png"
172+ sourceSize.height: parent.height - units.gu(3)
173+ sourceSize.width: units.gu(3)
174+ fillMode: Image.PreserveAspectFit
175+ visible: hasChildren || isActive
176+ }
177+
178+ Rectangle {
179+ anchors {
180+ bottom: parent.bottom
181+ left: parent.left
182+ right: parent.right
183+ leftMargin: units.gu(2)
184+ rightMargin: units.gu(2)
185+ }
186+ color: "gray"
187+ opacity: 0.1
188+ height: units.dp(1)
189+ visible: index != department.count - 1
190+ }
191+ }
192+ }
193+ }
194+ }
195+}
qml/Dash/DashRenderer.qml−7
@@ -25,8 +25,6 @@ Item {
2525
2626 property int collapsedHeight: height
2727
28− property int margins: 0
29−
3028 property int uncollapsedHeight: height
3129
3230 property int displayMarginBeginning: 0
@@ -35,11 +33,6 @@ Item {
3533
3634 property real originY: 0
3735
38− property real verticalSpacing: 0
39−
40− // The current item of the renderer
41− property var currentItem
42−
4336 // The model to renderer
4437 property var model
4538
qml/Dash/GenericScopeView.qml+13−3
@@ -1,5 +1,5 @@
11/*
2− * Copyright (C) 2013 Canonical, Ltd.
2+ * Copyright (C) 2013-2014 Canonical, Ltd.
33 *
44 * This program is free software; you can redistribute it and/or modify
55 * it under the terms of the GNU General Public License as published by
@@ -128,7 +128,7 @@ FocusScope {
128128
129129 CardTool {
130130 id: cardTool
131−
131+ objectName: "cardTool"
132132 count: results.count
133133 template: model.renderer
134134 components: model.components
@@ -141,11 +141,13 @@ FocusScope {
141141 top: parent.top
142142 left: parent.left
143143 right: parent.right
144+ topMargin: hasSectionHeader ? 0 : units.gu(2)
144145 }
145146
146147 source: {
147148 switch (cardTool.categoryLayout) {
148149 case "carousel": return "CardCarousel.qml";
150+ case "vertical-journal": return "CardVerticalJournal.qml";
149151 case "running-apps": return "Apps/RunningApplicationsGrid.qml";
150152 case "grid":
151153 default: return "CardFilterGrid.qml";
@@ -183,7 +185,7 @@ FocusScope {
183185 Connections {
184186 target: rendererLoader.item
185187 onClicked: {
186− if (scopeView.scope.id === "scopes" || (scopeView.scope.id == "clickscope" && categoryId == "local")) {
188+ if (scopeView.scope.id === "scopes" || (scopeView.scope.id == "clickscope" && (categoryId == "local" || categoryId == "store"))) {
187189 // TODO Technically it is possible that calling activate() will make the scope emit
188190 // previewRequested so that we show a preview but there's no scope that does that yet
189191 // so it's not implemented
@@ -201,6 +203,14 @@ FocusScope {
201203 previewListView.currentIndex = index;
202204 previewListView.open = true
203205 }
206+ onExpandableChanged: {
207+ // This can happen with the VJ that doesn't know how height it will be on creation
208+ // so doesn't set expandable until a bit too late for onLoaded
209+ if (rendererLoader.item.expandable) {
210+ var shouldFilter = baseItem.category != categoryView.expandedCategoryId;
211+ rendererLoader.item.setFilter(shouldFilter, false /*animate*/);
212+ }
213+ }
204214 }
205215 Connections {
206216 target: categoryView
qml/Dash/PreviewListView.qml+1−1
@@ -49,7 +49,7 @@ Item {
4949 right: parent.right
5050 verticalCenter: parent.verticalCenter
5151 }
52− text: scope ? i18n.tr("%1 Preview").arg(scope.name) : ""
52+ text: scope ? scope.name : ""
5353 // TODO Saviq: These should come from updated Ubuntu Palette.
5454 color: "#888888"
5555 font.family: "Ubuntu"
qml/Dash/Previews/PreviewHeader.qml+3
@@ -56,6 +56,9 @@ PreviewWidget {
5656
5757 Loader {
5858 id: mascotShapeLoader
59+ objectName: "mascotShapeLoader"
60+ active: headerRoot.mascot != ""
61+ visible: active
5962
6063 anchors.verticalCenter: parent.verticalCenter
6164 // TODO karni: Icon aspect-ratio is 8:7.5. Revisit these values to avoid fraction of pixels.
qml/Dash/ScopeItem.qml+12
@@ -31,6 +31,10 @@ Item {
3131 signal gotoScope(string scopeId)
3232 signal openScope(var scope)
3333
34+ // TODO see how much code we can share
35+ // between here and other Dash parts, it's starting to have
36+ // too much duplicated code with the DashDepartments, etc
37+
3438 Item {
3539 id: scopeViewHolder
3640
@@ -79,6 +83,14 @@ Item {
7983 fontSize: "x-large"
8084 elide: Text.ElideRight
8185 }
86+
87+ bottomItem: DashDepartments {
88+ scope: root.scope
89+ width: parent.width <= units.gu(60) ? parent.width : units.gu(40)
90+ anchors.right: parent.right
91+ windowHeight: root.height
92+ windowWidth: root.width
93+ }
8294 }
8395 }
8496
qml/Dash/graphics/tick@30.pngnew file

Binary file not shown.

qml/Greeter/LoginList.qml+1
@@ -193,6 +193,7 @@ Item {
193193 }
194194
195195 onAccepted: {
196+ if (text == "") return; // Might be useful anyway, but mainly workaround for LP 1324159
196197 if (!enabled)
197198 return;
198199 root.focus = true; // so that it can handle Escape presses for us
qml/Notifications/Notification.qml+13
@@ -15,6 +15,7 @@
1515 */
1616
1717import QtQuick 2.0
18+import QtMultimedia 5.0
1819import Ubuntu.Components 0.1
1920import Unity.Notifications 1.0
2021import QMenuModel 0.1
@@ -66,6 +67,18 @@ Item {
6667 return result;
6768 }
6869
70+ Audio {
71+ id: sound
72+ objectName: "sound"
73+ source: hints["suppress-sound"] != "" ? hints["sound-file"] : undefined
74+ }
75+
76+ onOpacityChanged: {
77+ if (opacity == 1.0 && hints["suppress-sound"] != "true" && sound.source) {
78+ sound.play();
79+ }
80+ }
81+
6982 Behavior on height {
7083 id: normalHeightBehavior
7184
qml/Notifications/NotificationMenuItemFactory.qml−1
@@ -20,7 +20,6 @@
2020import QtQuick 2.0
2121import Ubuntu.Components 0.1
2222import "../Components"
23−import "../Greeter"
2423
2524Loader {
2625 id: menuFactory
qml/Panel/Panel.qml+1−1
@@ -62,7 +62,7 @@ Item {
6262 height: __panelMinusSeparatorLineHeight
6363 y: 0
6464
65− Behavior on y { StandardAnimation { duration: UbuntuAnimation.FastDuration } }
65+ Behavior on y { StandardAnimation { duration: 500 } }
6666 }
6767
6868 PanelSeparatorLine {
qml/Shell.qml+31−11
@@ -31,6 +31,7 @@ import "Panel"
3131import "Components"
3232import "Notifications"
3333import Unity.Notifications 1.0 as NotificationBackend
34+import Unity.Session 0.1
3435
3536FocusScope {
3637 id: shell
@@ -117,15 +118,6 @@ FocusScope {
117118 // through the translucent parts of the shell surface.
118119 visible: !fullyCovered && !applicationSurfaceShouldBeSeen
119120
120− CrossFadeImage {
121− id: backgroundImage
122− objectName: "backgroundImage"
123−
124− anchors.fill: parent
125− source: shell.background
126− fillMode: Image.PreserveAspectCrop
127− }
128−
129121 Rectangle {
130122 anchors.fill: parent
131123 color: "black"
@@ -276,6 +268,30 @@ FocusScope {
276268 }
277269 }
278270
271+ Connections {
272+ target: DBusUnitySessionService
273+
274+ function closeAllApps() {
275+ while (true) {
276+ var app = ApplicationManager.get(0);
277+ if (app === null) {
278+ break;
279+ }
280+ ApplicationManager.stopApplication(app.appId);
281+ }
282+ }
283+
284+ onLogoutRequested: {
285+ // TODO: Display a dialog to ask the user to confirm.
286+ DBusUnitySessionService.Logout();
287+ }
288+
289+ onLogoutReady: {
290+ closeAllApps();
291+ Qt.quit();
292+ }
293+ }
294+
279295 Loader {
280296 id: applicationsDisplayLoader
281297 anchors.fill: parent
@@ -316,7 +332,8 @@ FocusScope {
316332 width: parent.width
317333 height: parent.height - panel.panelHeight
318334 background: shell.background
319− pinLength: 4
335+ minPinLength: 4
336+ maxPinLength: 4
320337
321338 onEntered: LightDM.Greeter.respond(passphrase);
322339 onCancel: greeter.show()
@@ -370,7 +387,10 @@ FocusScope {
370387 width: parent.width
371388 height: parent.height - panel.panelHeight
372389
373− Behavior on x {SmoothedAnimation{velocity: 600}}
390+ Behavior on x {
391+ enabled: !launcher.dashSwipe
392+ StandardAnimation {}
393+ }
374394
375395 readonly property real showProgress: MathUtils.clamp((1 - x/width) + greeter.showProgress - 1, 0, 1)
376396
tests/mocks/Unity/iconutils.h → qml/Stages/Dot.qmlrenamed+9−13
@@ -1,5 +1,5 @@
11/*
2− * Copyright (C) 2013 Canonical, Ltd.
2+ * Copyright (C) 2014 Canonical, Ltd.
33 *
44 * This program is free software; you can redistribute it and/or modify
55 * it under the terms of the GNU General Public License as published by
@@ -12,18 +12,14 @@
1212 *
1313 * You should have received a copy of the GNU General Public License
1414 * along with this program. If not, see <http://www.gnu.org/licenses/>.
15− *
16− * Authors:
17− * Michal Hruby <michal.hruby@canonical.com>
1815 */
1916
20−#ifndef ICONUTILS_H
21−#define ICONUTILS_H
22−
23−#include <QString>
24−#include <QVariant>
25−
26−QString gIconToDeclarativeImageProviderString(QString const &giconString);
27−QString uriToThumbnailerProviderString(QString const &uri, QString const &mimetype, QVariantHash const &metadata);
17+import QtQuick 2.0
18+import Ubuntu.Components 0.1
2819
29−#endif
20+Rectangle {
21+ radius: width
22+ width: units.dp(6)
23+ height: width
24+ color: UbuntuColors.orange
25+}
qml/Stages/PhoneStage.qml+5−2
@@ -214,7 +214,7 @@ Item {
214214 Rectangle {
215215 id: appSplash2
216216 anchors.fill: parent
217− color: "white"
217+ color: "black"
218218 visible: priv.secondApplicationStarting
219219 }
220220 Image {
@@ -228,8 +228,11 @@ Item {
228228 Rectangle {
229229 id: appSplash
230230 anchors.fill: parent
231− color: "white"
231+ color: "black"
232232 visible: priv.applicationStarting
233+
234+ WaitingDots {
235+ }
233236 }
234237 Image {
235238 id: mainScreenshotImage
qml/Stages/StageWithSideStage.qml+8−2
@@ -282,7 +282,10 @@ Item {
282282 id: mainStageSplash
283283 anchors.fill: root
284284 anchors.rightMargin: root.width - sideStageImage.x
285− color: "white"
285+ color: "black"
286+
287+ WaitingDots {
288+ }
286289 }
287290
288291 SidestageHandle {
@@ -402,6 +405,9 @@ Item {
402405 id: sideStageSplash
403406 anchors.fill: parent
404407 anchors.leftMargin: sideStageImage.x
405− color: "white"
408+ color: "black"
409+
410+ WaitingDots {
411+ }
406412 }
407413}
qml/Stages/WaitingDots.qmlnew file+76
@@ -0,0 +1,76 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+import QtQuick 2.2
18+import Ubuntu.Components 0.1
19+
20+Item {
21+ id: waitingDots
22+
23+ // center in parent; waitingDots has no size therefore anchors.centerIn cannot be used
24+ x: parent.width / 2
25+ y: parent.height / 2
26+
27+ property var dots: [dot1, dot2, dot3]
28+ property var vertices: [[-units.gu(1), -units.gu(1)],
29+ [units.gu(1), -units.gu(1)],
30+ [0, units.gu(1)]]
31+ property int shift: 0
32+
33+ function cycle () {
34+ var n = vertices.length;
35+ shift = (shift + 1) % n;
36+
37+ for (var i = 0; i < n; i++) {
38+ dots[i].x = vertices[(i+shift) % n][0];
39+ dots[i].y = vertices[(i+shift) % n][1];
40+ }
41+ }
42+
43+ Timer {
44+ interval: 800
45+ running: waitingDots.visible
46+ repeat: true
47+ triggeredOnStart: true
48+ onTriggered: waitingDots.cycle()
49+ }
50+
51+
52+ Dot {
53+ id: dot1
54+ x: vertices[0][0]
55+ y: vertices[0][1]
56+ Behavior on x {XAnimator {duration: UbuntuAnimation.BriskDuration; easing: UbuntuAnimation.StandardEasing}}
57+ Behavior on y {YAnimator {duration: UbuntuAnimation.BriskDuration; easing: UbuntuAnimation.StandardEasing}}
58+ }
59+
60+ Dot {
61+ id: dot2
62+ x: vertices[1][0]
63+ y: vertices[1][1]
64+ Behavior on x {XAnimator {duration: UbuntuAnimation.BriskDuration; easing: UbuntuAnimation.StandardEasing}}
65+ Behavior on y {YAnimator {duration: UbuntuAnimation.BriskDuration; easing: UbuntuAnimation.StandardEasing}}
66+
67+ }
68+
69+ Dot {
70+ id: dot3
71+ x: vertices[2][0]
72+ y: vertices[2][1]
73+ Behavior on x {XAnimator {duration: UbuntuAnimation.BriskDuration; easing: UbuntuAnimation.StandardEasing}}
74+ Behavior on y {YAnimator {duration: UbuntuAnimation.BriskDuration; easing: UbuntuAnimation.StandardEasing}}
75+ }
76+}
src/main.cpp+1
@@ -159,6 +159,7 @@ Load the testability driver");
159159
160160 view->setSource(source);
161161 view->setColor("transparent");
162+ QObject::connect(view->engine(), SIGNAL(quit()), application, SLOT(quit()));
162163
163164 if (qgetenv("QT_QPA_PLATFORM") == "ubuntu" || isUbuntuMirServer || parser.isSet(fullscreenOption)) {
164165 view->showFullScreen();
tests/autopilot/unity8/shell/emulators/main_window.py−4
@@ -114,10 +114,6 @@ class QQuickView(emulators.UnityEmulatorBase):
114114 self.wait_select_single('Indicators', fullyOpened=True)
115115 return self._get_indicator_page(indicator_name)
116116
117− def get_shell_background(self):
118− return self.select_single(
119− "CrossFadeImage", objectName="backgroundImage")
120−
121117 @autopilot_logging.log_action(logger.info)
122118 def show_dash_swiping(self):
123119 """Show the dash swiping from the left."""
tests/mocks/Unity/CMakeLists.txt+2−1
@@ -19,16 +19,17 @@ include_directories(
1919add_definitions(-DQT_NO_KEYWORDS)
2020
2121set(UnityQML_SOURCES
22− iconutils.cpp
2322 fake_scope.cpp
2423 fake_scopes.cpp
2524 fake_categories.cpp
25+ fake_department.cpp
2626 fake_resultsmodel.cpp
2727 fake_previewmodel.cpp
2828 fake_previewstack.cpp
2929 fake_previewwidgetmodel.cpp
3030 fake_unity_plugin.cpp
3131 ${SCOPES_API_INCLUDEDIR}/unity/shell/scopes/CategoriesInterface.h
32+ ${SCOPES_API_INCLUDEDIR}/unity/shell/scopes/DepartmentInterface.h
3233 ${SCOPES_API_INCLUDEDIR}/unity/shell/scopes/PreviewModelInterface.h
3334 ${SCOPES_API_INCLUDEDIR}/unity/shell/scopes/PreviewStackInterface.h
3435 ${SCOPES_API_INCLUDEDIR}/unity/shell/scopes/PreviewWidgetModelInterface.h
tests/mocks/Unity/Launcher/MockLauncherModel.cpp+5
@@ -183,6 +183,11 @@ void MockLauncherModel::setUser(const QString &username)
183183 // TODO: implement this...
184184}
185185
186+QString MockLauncherModel::getUrlForAppId(const QString &appId) const
187+{
188+ return "application:///" + appId + ".desktop";
189+}
190+
186191void MockLauncherModel::setApplicationManager(unity::shell::application::ApplicationManagerInterface *applicationManager)
187192{
188193 Q_UNUSED(applicationManager)
tests/mocks/Unity/Launcher/MockLauncherModel.h+1
@@ -44,6 +44,7 @@ public:
4444 Q_INVOKABLE void requestRemove(const QString &appId);
4545 Q_INVOKABLE void quickListActionInvoked(const QString &appId, int actionIndex);
4646 Q_INVOKABLE void setUser(const QString &username);
47+ Q_INVOKABLE QString getUrlForAppId(const QString &appId) const;
4748
4849 unity::shell::application::ApplicationManagerInterface *applicationManager() const;
4950 void setApplicationManager(unity::shell::application::ApplicationManagerInterface *applicationManager);
tests/mocks/Unity/fake_categories.cpp+5−1
@@ -152,7 +152,11 @@ Categories::data(const QModelIndex& index, int role) const
152152 case RoleComponents:
153153 {
154154 QVariantMap map, artMap;
155− artMap["aspect-ratio"] = "1.0";
155+ if (index.row() % 2 != 0) {
156+ artMap["aspect-ratio"] = QString("1.%1").arg(index.row());
157+ } else {
158+ artMap["aspect-ratio"] = "1.0";
159+ }
156160 artMap["field"] = "art";
157161 map["art"] = artMap;
158162 map["title"] = "HOLA";
tests/mocks/Unity/fake_department.cppnew file+127
@@ -0,0 +1,127 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+#include "fake_department.h"
18+
19+#include "fake_scope.h"
20+
21+#include <QTimer>
22+
23+Department::Department(const QString& departmentId, const QString& label, const QString& allLabel, const QString& parentId, const QString& parentLabel, Scope* scope)
24+ : m_departmentId(departmentId)
25+ , m_label(label)
26+ , m_allLabel(allLabel)
27+ , m_parentId(parentId)
28+ , m_parentLabel(parentLabel)
29+ , m_loaded(false)
30+ , m_scope(scope)
31+{
32+ QTimer::singleShot(1500, this, SLOT(slotLoaded()));
33+ connect(scope, SIGNAL(currentDepartmentIdChanged()), this, SLOT(slotCurrentDepartmentChanged()));
34+}
35+
36+QString Department::departmentId() const
37+{
38+ return m_departmentId;
39+}
40+
41+QString Department::label() const
42+{
43+ return m_label;
44+}
45+
46+QString Department::allLabel() const
47+{
48+ return m_allLabel;
49+}
50+
51+QString Department::parentDepartmentId() const
52+{
53+ return m_parentId;
54+}
55+
56+QString Department::parentLabel() const
57+{
58+ return m_parentLabel;
59+}
60+
61+void Department::slotLoaded()
62+{
63+ m_loaded = true;
64+ Q_EMIT loadedChanged();
65+}
66+
67+bool Department::loaded() const
68+{
69+ return m_loaded;
70+}
71+
72+int Department::count() const
73+{
74+ return rowCount();
75+}
76+
77+bool Department::isRoot() const
78+{
79+ return m_departmentId == "root";
80+}
81+
82+int Department::rowCount(const QModelIndex & /*parent*/) const
83+{
84+ if (!m_loaded || m_departmentId.startsWith("child") || m_departmentId == "middle3")
85+ return 0;
86+ else
87+ return 8;
88+}
89+
90+QHash<int, QByteArray> Department::roleNames() const
91+{
92+ QHash<int, QByteArray> res;
93+ res[RoleDepartmentId] = "departmentId";
94+ res[RoleLabel] = "label";
95+ res[RoleHasChildren] = "hasChildren";
96+ res[RoleIsActive] = "isActive";
97+ return res;
98+}
99+
100+QVariant Department::data(const QModelIndex &index, int role) const
101+{
102+ switch (role) {
103+ case RoleDepartmentId:
104+ if (m_departmentId == "root")
105+ return QString("middle%1").arg(index.row());
106+ else if (m_departmentId.startsWith("middle"))
107+ return QString("child%1%2").arg(m_departmentId).arg(index.row());
108+ break;
109+ case RoleLabel:
110+ return QString("%1Child%2").arg(m_departmentId).arg(index.row());
111+ break;
112+ case RoleHasChildren:
113+ return m_departmentId == "root" && index.row() != 3;
114+ break;
115+ case RoleIsActive:
116+ return m_scope->currentDepartmentId() == data(index, RoleDepartmentId);
117+ break;
118+ }
119+ return QVariant();
120+}
121+
122+void Department::slotCurrentDepartmentChanged()
123+{
124+ // This is wasteful, should only emit it if really something changed in this
125+ // deparment, but this is a mock, so no need to optimize
126+ Q_EMIT dataChanged(index(0, 0), index(rowCount() - 1, 0), QVector<int>() << RoleIsActive);
127+}
tests/mocks/Unity/fake_department.hnew file+61
@@ -0,0 +1,61 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+#ifndef FAKE_DEPARTMENT_H
18+#define FAKE_DEPARTMENT_H
19+
20+#include <unity/shell/scopes/DepartmentInterface.h>
21+
22+class Scope;
23+
24+class Department : public unity::shell::scopes::DepartmentInterface
25+{
26+ Q_OBJECT
27+
28+public:
29+ Department(const QString& departmentId, const QString& label, const QString& allLabel, const QString& parentId, const QString& parentLabel, Scope* scope);
30+
31+ QString departmentId() const override;
32+ QString label() const override;
33+ QString allLabel() const override;
34+ QString parentDepartmentId() const override;
35+ QString parentLabel() const override;
36+ bool loaded() const override;
37+ int count() const override;
38+ bool isRoot() const override;
39+
40+ int rowCount(const QModelIndex &parent = QModelIndex()) const override;
41+ QHash<int, QByteArray> roleNames() const;
42+ QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
43+
44+public Q_SLOTS:
45+ void slotCurrentDepartmentChanged();
46+
47+private Q_SLOTS:
48+ void slotLoaded();
49+
50+private:
51+ QString m_departmentId;
52+ QString m_label;
53+ QString m_allLabel;
54+ QString m_parentId;
55+ QString m_parentLabel;
56+ bool m_loaded;
57+ QString m_currentDepartment;
58+ Scope *m_scope;
59+};
60+
61+#endif // FAKE_DEPARTMENT_H
tests/mocks/Unity/fake_scope.cpp+36−1
@@ -15,6 +15,7 @@
1515 */
1616
1717#include "fake_scope.h"
18+#include "fake_department.h"
1819#include "fake_resultsmodel.h"
1920
2021Scope::Scope(QObject* parent) : Scope(QString(), QString(), false, parent)
@@ -28,6 +29,7 @@ Scope::Scope(QString const& id, QString const& name, bool visible, QObject* pare
2829 , m_visible(visible)
2930 , m_searching(false)
3031 , m_isActive(false)
32+ , m_currentDeparment("root")
3133 , m_previewRendererName("preview-generic")
3234 , m_categories(new Categories(20, this))
3335{
@@ -102,7 +104,7 @@ void Scope::setFormFactor(const QString &str) {
102104void Scope::setActive(const bool active) {
103105 if (active != m_isActive) {
104106 m_isActive = active;
105− Q_EMIT isActiveChanged(active);
107+ Q_EMIT isActiveChanged();
106108 }
107109}
108110
@@ -142,3 +144,36 @@ void Scope::closeScope(unity::shell::scopes::ScopeInterface* /*scope*/)
142144{
143145 qFatal("Scope::closeScope is not implemented");
144146}
147+
148+QString Scope::currentDepartmentId() const
149+{
150+ return m_currentDeparment;
151+}
152+
153+bool Scope::hasDepartments() const
154+{
155+ return true;
156+}
157+
158+unity::shell::scopes::DepartmentInterface* Scope::getDepartment(const QString& id)
159+{
160+ if (id.isEmpty())
161+ return nullptr;
162+
163+ QString parentId;
164+ QString parentLabel;
165+ if (id.startsWith("middle")) {
166+ parentId = "root";
167+ parentLabel = "root";
168+ } else if (id.startsWith("child")) {
169+ parentId = id.mid(5, 7);
170+ parentLabel = parentId;
171+ }
172+ return new Department(id, id, "all"+id, parentId, parentLabel, this);
173+}
174+
175+void Scope::loadDepartment(const QString& id)
176+{
177+ m_currentDeparment = id;
178+ Q_EMIT currentDepartmentIdChanged();
179+}
tests/mocks/Unity/fake_scope.h+6
@@ -59,6 +59,11 @@ public:
5959 Q_INVOKABLE void cancelActivation() override;
6060 Q_INVOKABLE void closeScope(unity::shell::scopes::ScopeInterface* scope) override;
6161
62+ QString currentDepartmentId() const override;
63+ bool hasDepartments() const override;
64+ Q_INVOKABLE unity::shell::scopes::DepartmentInterface* getDepartment(const QString& id) override;
65+ Q_INVOKABLE void loadDepartment(const QString& id) override;
66+
6267protected:
6368
6469 QString m_id;
@@ -71,6 +76,7 @@ protected:
7176 bool m_visible;
7277 bool m_searching;
7378 bool m_isActive;
79+ QString m_currentDeparment;
7480
7581 QString m_previewRendererName;
7682
tests/mocks/Unity/fake_scopes.cpp+2−6
@@ -29,10 +29,6 @@ Scopes::Scopes(QObject *parent)
2929 , m_loaded(false)
3030 , timer(this)
3131{
32− QObject::connect(this, SIGNAL(rowsInserted(const QModelIndex &, int, int)), this, SIGNAL(countChanged()));
33− QObject::connect(this, SIGNAL(rowsRemoved(const QModelIndex &, int, int)), this, SIGNAL(countChanged()));
34− QObject::connect(this, SIGNAL(modelReset()), this, SIGNAL(countChanged()));
35−
3632 timer.setSingleShot(true);
3733 timer.setInterval(100);
3834 QObject::connect(&timer, SIGNAL(timeout()), this, SLOT(updateScopes()));
@@ -53,7 +49,7 @@ void Scopes::updateScopes()
5349
5450 if (!m_loaded) {
5551 m_loaded = true;
56− Q_EMIT loadedChanged(m_loaded);
52+ Q_EMIT loadedChanged();
5753 }
5854}
5955
@@ -69,7 +65,7 @@ void Scopes::clear()
6965
7066 if (m_loaded) {
7167 m_loaded = false;
72− Q_EMIT loadedChanged(m_loaded);
68+ Q_EMIT loadedChanged();
7369 }
7470}
7571
tests/mocks/Unity/fake_unity_plugin.cpp+2
@@ -22,6 +22,7 @@
2222// local
2323#include "fake_scopes.h"
2424#include "fake_categories.h"
25+#include "fake_department.h"
2526#include "fake_previewmodel.h"
2627#include "fake_previewwidgetmodel.h"
2728#include "fake_resultsmodel.h"
@@ -42,6 +43,7 @@ void FakeUnityPlugin::registerTypes(const char *uri)
4243 qmlRegisterType<Scopes>(uri, 0, 2, "Scopes");
4344 qmlRegisterType<Scope>(uri, 0, 2, "MockScope");
4445 qmlRegisterUncreatableType<unity::shell::scopes::ScopeInterface>(uri, 0, 2, "Scope", "Can't create Scope object in QML.");
46+ qmlRegisterUncreatableType<unity::shell::scopes::DepartmentInterface>(uri, 0, 2, "Department", "Can't create Department object in QML.");
4547 qmlRegisterUncreatableType<unity::shell::scopes::CategoriesInterface>(uri, 0, 2, "Categories", "Can't create Categories object in QML.");
4648 qmlRegisterUncreatableType<ResultsModel>(uri, 0, 2, "ResultsModel", "Can't create ResultsModel object in QML.");
4749 qmlRegisterType<PreviewModel>(uri, 0, 2, "FakePreviewModel");
tests/mocks/Unity/iconutils.cppdeleted−124
@@ -1,124 +0,0 @@
1−/*
2− * Copyright (C) 2013 Canonical, Ltd.
3− *
4− * This program is free software; you can redistribute it and/or modify
5− * it under the terms of the GNU General Public License as published by
6− * the Free Software Foundation; version 3.
7− *
8− * This program is distributed in the hope that it will be useful,
9− * but WITHOUT ANY WARRANTY; without even the implied warranty of
10− * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11− * GNU General Public License for more details.
12− *
13− * You should have received a copy of the GNU General Public License
14− * along with this program. If not, see <http://www.gnu.org/licenses/>.
15− *
16− * Authors:
17− * Michal Hruby <michal.hruby@canonical.com>
18− */
19−
20−#include "iconutils.h"
21−
22−#include <gio/gio.h>
23−
24−#include <QStringList>
25−#include <QUrl>
26−#include <QUrlQuery>
27−
28−#define BASE_THEME_ICON_URI "image://theme/"
29−#define BASE_THUMBNAILER_URI "image://thumbnailer/"
30−#define BASE_ALBUMART_URI "image://albumart/"
31−
32−QString gIconToDeclarativeImageProviderString(QString const &giconString)
33−{
34− if (giconString.isEmpty()) return giconString;
35−
36− if (giconString.startsWith('/') || giconString.startsWith(QLatin1String("http")) ||
37− giconString.startsWith(QLatin1String("file:")) || giconString.startsWith(QLatin1String("image:"))) {
38− return giconString;
39− }
40−
41− if (!giconString.startsWith(QLatin1String(". "))) {
42− // must be a themed icon
43− QString themedIcon(BASE_THEME_ICON_URI);
44− themedIcon.append(giconString);
45− return themedIcon;
46− }
47−
48− // special case annotated icon
49− if (giconString.startsWith(QLatin1String(". UnityProtocolAnnotatedIcon "))) {
50− QString annotatedIcon;
51− QString serializedData(QUrl::fromPercentEncoding(giconString.mid(29).toUtf8()));
52− GVariant *variant = g_variant_parse(G_VARIANT_TYPE_VARDICT, serializedData.toUtf8().constData(), NULL, NULL, NULL);
53− gchar *baseUri;
54− if (variant != NULL && g_variant_lookup(variant, "base-icon", "&s", &baseUri)) {
55− annotatedIcon = gIconToDeclarativeImageProviderString(QString(baseUri));
56− // FIXME: enclose in image://annotated/... once unity supports that
57− }
58− if (variant != NULL) g_variant_unref(variant);
59−
60− return annotatedIcon;
61− }
62−
63− // handle real gicon strings
64− QString result;
65− GError *error = NULL;
66− GIcon *icon = g_icon_new_for_string(giconString.toLocal8Bit().constData(), &error);
67− if (error != NULL || icon == NULL) {
68− qWarning("Unable to deserialize icon: %s", giconString.toLocal8Bit().constData());
69− g_clear_error(&error);
70− return result;
71− }
72−
73− if (G_IS_THEMED_ICON(icon)) {
74− QString themedIcon(BASE_THEME_ICON_URI);
75− QStringList list;
76− const char* const *iconNames = g_themed_icon_get_names(G_THEMED_ICON(icon));
77− if (iconNames != NULL) {
78− for (const char * const *iter = iconNames; *iter != NULL; ++iter) {
79− list << QLatin1String(*iter);
80− }
81− }
82− themedIcon.append(list.join(QString(",")));
83− result = themedIcon;
84− } else if (G_IS_FILE_ICON(icon)) {
85− GFile *file = g_file_icon_get_file(G_FILE_ICON(icon));
86− gchar *uri = g_file_get_uri(file);
87− QString iconUri(uri);
88− g_free(uri);
89− result = iconUri;
90− }
91−
92− g_object_unref(icon);
93−
94− return result;
95−}
96−
97−QString uriToThumbnailerProviderString(QString const &uri, QString const &mimetype, QVariantHash const &metadata)
98−{
99− if (uri.startsWith(QLatin1String("file:///"))) {
100− bool isAudio = mimetype.startsWith(QLatin1String("audio/"));
101− QString thumbnailerUri;
102− if (isAudio) {
103− thumbnailerUri = BASE_ALBUMART_URI;
104− if (metadata.contains("content")) {
105− QVariantHash contentHash = metadata["content"].toHash();
106− if (contentHash.contains("content")) { // nested content in Home?
107− contentHash = contentHash["content"].toHash();
108− }
109− if (contentHash.contains("album") && contentHash.contains("artist")) {
110− QUrlQuery query;
111− query.addQueryItem(QStringLiteral("artist"), contentHash["artist"].toString());
112− query.addQueryItem(QStringLiteral("album"), contentHash["album"].toString());
113− thumbnailerUri.append(query.toString());
114− }
115− }
116− } else {
117− thumbnailerUri = BASE_THUMBNAILER_URI;
118− thumbnailerUri.append(uri.midRef(7));
119− }
120− return thumbnailerUri;
121− }
122−
123− return QString::null;
124−}
tests/plugins/Dash/cardcreator/1.res+16−11
@@ -3,7 +3,7 @@ AbstractButton {
33 property var template;
44 property var components;
55 property var cardData;
6− property var artShapeBorderSource;
6+ property var artShapeBorderSource: undefined;
77 property real fontScale: 1.0;
88 property int headerAlignment: Text.AlignLeft;
99 property int fixedHeaderHeight: -1;
@@ -12,11 +12,12 @@ AbstractButton {
1212 property bool asynchronous: true;
1313 property bool showHeader: true;
1414 implicitWidth: childrenRect.width;
15+onArtShapeBorderSourceChanged: { if (artShapeBorderSource !== undefined && artShapeLoader.item) artShapeLoader.item.borderSource = artShapeBorderSource; }
1516readonly property size artShapeSize: artShapeLoader.item ? Qt.size(artShapeLoader.item.width, artShapeLoader.item.height) : Qt.size(-1, -1);
1617Item {
1718 id: artShapeHolder;
18− height: root.fixedArtShapeSize.height != -1 ? root.fixedArtShapeSize.height : artShapeLoader.height;
19− width: root.fixedArtShapeSize.width != -1 ? root.fixedArtShapeSize.width : artShapeLoader.width;
19+ height: root.fixedArtShapeSize.height > 0 ? root.fixedArtShapeSize.height : artShapeLoader.height;
20+ width: root.fixedArtShapeSize.width > 0 ? root.fixedArtShapeSize.width : artShapeLoader.width;
2021 anchors { horizontalCenter: parent.horizontalCenter; }
2122 Loader {
2223 id: artShapeLoader;
@@ -27,15 +28,19 @@ Item {
2728 sourceComponent: UbuntuShape {
2829 id: artShape;
2930 objectName: "artShape";
30− radius: "medium";
31− readonly property real aspect: components !== undefined ? components["art"]["aspect-ratio"] : 1;
32− readonly property bool aspectSmallerThanImageAspect: aspect < image.aspect;
33− Component.onCompleted: updateWidthHeightBindings();
34− onAspectSmallerThanImageAspectChanged: updateWidthHeightBindings();
31+ radius: "medium";
3532 visible: image.status == Image.Ready;
36− borderSource: artShapeBorderSource;
33+ readonly property real fixedArtShapeSizeAspect: (root.fixedArtShapeSize.height > 0 && root.fixedArtShapeSize.width > 0) ? root.fixedArtShapeSize.width / root.fixedArtShapeSize.height : -1;
34+ readonly property real aspect: fixedArtShapeSizeAspect > 0 ? fixedArtShapeSizeAspect : components !== undefined ? components["art"]["aspect-ratio"] : 1;
35+ readonly property bool aspectSmallerThanImageAspect: aspect < image.aspect;
36+ Component.onCompleted: { updateWidthHeightBindings(); if (artShapeBorderSource !== undefined) borderSource = artShapeBorderSource; }
37+ onAspectSmallerThanImageAspectChanged: updateWidthHeightBindings();
38+ Connections { target: root; onFixedArtShapeSizeChanged: updateWidthHeightBindings(); }
3739 function updateWidthHeightBindings() {
38− if (aspectSmallerThanImageAspect) {
40+ if (root.fixedArtShapeSize.height > 0 && root.fixedArtShapeSize.width > 0) {
41+ width = root.fixedArtShapeSize.width;
42+ height = root.fixedArtShapeSize.height;
43+ } else if (aspectSmallerThanImageAspect) {
3944 width = Qt.binding(function() { return !visible ? 0 : image.width });
4045 height = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.height : width / image.aspect });
4146 } else {
@@ -56,7 +61,7 @@ Item {
5661 }
5762 }
5863 }
59−readonly property int headerHeight: titleLabel.height + titleLabel.anchors.topMargin * 2;
64+readonly property int headerHeight: titleLabel.height;
6065Label {
6166 id: titleLabel;
6267 objectName: "titleLabel";
tests/plugins/Dash/cardcreator/2.res+3−2
@@ -3,7 +3,7 @@ AbstractButton {
33 property var template;
44 property var components;
55 property var cardData;
6− property var artShapeBorderSource;
6+ property var artShapeBorderSource: undefined;
77 property real fontScale: 1.0;
88 property int headerAlignment: Text.AlignLeft;
99 property int fixedHeaderHeight: -1;
@@ -46,12 +46,13 @@ Loader {
4646 }
4747 }
4848readonly property size artShapeSize: Qt.size(-1, -1);
49−readonly property int headerHeight: row.height + row.margins * 2;
49+readonly property int headerHeight: row.height;
5050Row {
5151 id: row;
5252 objectName: "outerRow";
5353 property real margins: units.gu(1);
5454 spacing: margins;
55+ height: root.fixedHeaderHeight != -1 ? root.fixedHeaderHeight : implicitHeight;
5556 anchors { top: parent.top;
5657 topMargin: units.gu(1);
5758 left: parent.left;
tests/plugins/Dash/cardcreator/3.res+22−17
@@ -3,7 +3,7 @@ AbstractButton {
33 property var template;
44 property var components;
55 property var cardData;
6− property var artShapeBorderSource;
6+ property var artShapeBorderSource: undefined;
77 property real fontScale: 1.0;
88 property int headerAlignment: Text.AlignLeft;
99 property int fixedHeaderHeight: -1;
@@ -12,11 +12,12 @@ AbstractButton {
1212 property bool asynchronous: true;
1313 property bool showHeader: true;
1414 implicitWidth: childrenRect.width;
15+onArtShapeBorderSourceChanged: { if (artShapeBorderSource !== undefined && artShapeLoader.item) artShapeLoader.item.borderSource = artShapeBorderSource; }
1516readonly property size artShapeSize: artShapeLoader.item ? Qt.size(artShapeLoader.item.width, artShapeLoader.item.height) : Qt.size(-1, -1);
1617Item {
1718 id: artShapeHolder;
18− height: root.fixedArtShapeSize.height != -1 ? root.fixedArtShapeSize.height : artShapeLoader.height;
19− width: root.fixedArtShapeSize.width != -1 ? root.fixedArtShapeSize.width : artShapeLoader.width;
19+ height: root.fixedArtShapeSize.height > 0 ? root.fixedArtShapeSize.height : artShapeLoader.height;
20+ width: root.fixedArtShapeSize.width > 0 ? root.fixedArtShapeSize.width : artShapeLoader.width;
2021 anchors { horizontalCenter: parent.horizontalCenter; }
2122 Loader {
2223 id: artShapeLoader;
@@ -28,20 +29,24 @@ Item {
2829 id: artShape;
2930 objectName: "artShape";
3031 radius: "medium";
31− readonly property real aspect: components !== undefined ? components["art"]["aspect-ratio"] : 1;
32− readonly property bool aspectSmallerThanImageAspect: aspect < image.aspect;
33− Component.onCompleted: updateWidthHeightBindings();
34− onAspectSmallerThanImageAspectChanged: updateWidthHeightBindings();
3532 visible: image.status == Image.Ready;
36− borderSource: artShapeBorderSource;
37− function updateWidthHeightBindings() {
38− if (aspectSmallerThanImageAspect) {
39− width = Qt.binding(function() { return !visible ? 0 : image.width });
40− height = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.height : width / image.aspect });
41− } else {
42− width = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.width : height * image.aspect });
43− height = Qt.binding(function() { return !visible ? 0 : image.height });
44− }
33+ readonly property real fixedArtShapeSizeAspect: (root.fixedArtShapeSize.height > 0 && root.fixedArtShapeSize.width > 0) ? root.fixedArtShapeSize.width / root.fixedArtShapeSize.height : -1;
34+ readonly property real aspect: fixedArtShapeSizeAspect > 0 ? fixedArtShapeSizeAspect : components !== undefined ? components["art"]["aspect-ratio"] : 1;
35+ readonly property bool aspectSmallerThanImageAspect: aspect < image.aspect;
36+ Component.onCompleted: { updateWidthHeightBindings(); if (artShapeBorderSource !== undefined) borderSource = artShapeBorderSource; }
37+ onAspectSmallerThanImageAspectChanged: updateWidthHeightBindings();
38+ Connections { target: root; onFixedArtShapeSizeChanged: updateWidthHeightBindings(); }
39+ function updateWidthHeightBindings() {
40+ if (root.fixedArtShapeSize.height > 0 && root.fixedArtShapeSize.width > 0) {
41+ width = root.fixedArtShapeSize.width;
42+ height = root.fixedArtShapeSize.height;
43+ } else if (aspectSmallerThanImageAspect) {
44+ width = Qt.binding(function() { return !visible ? 0 : image.width });
45+ height = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.height : width / image.aspect });
46+ } else {
47+ width = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.width : height * image.aspect });
48+ height = Qt.binding(function() { return !visible ? 0 : image.height });
49+ }
4550 }
4651 image: Image {
4752 objectName: "artImage";
@@ -56,7 +61,7 @@ Item {
5661 }
5762 }
5863 }
59−readonly property int headerHeight: titleLabel.height + titleLabel.anchors.topMargin * 2 + subtitleLabel.height + subtitleLabel.anchors.topMargin;
64+readonly property int headerHeight: titleLabel.height + subtitleLabel.height + subtitleLabel.anchors.topMargin;
6065Label {
6166 id: titleLabel;
6267 objectName: "titleLabel";
tests/plugins/Dash/cardcreator/4.res+3−2
@@ -3,7 +3,7 @@ AbstractButton {
33 property var template;
44 property var components;
55 property var cardData;
6− property var artShapeBorderSource;
6+ property var artShapeBorderSource: undefined;
77 property real fontScale: 1.0;
88 property int headerAlignment: Text.AlignLeft;
99 property int fixedHeaderHeight: -1;
@@ -13,12 +13,13 @@ AbstractButton {
1313 property bool showHeader: true;
1414 implicitWidth: childrenRect.width;
1515readonly property size artShapeSize: Qt.size(-1, -1);
16−readonly property int headerHeight: row.height + row.margins * 2;
16+readonly property int headerHeight: row.height;
1717Row {
1818 id: row;
1919 objectName: "outerRow";
2020 property real margins: units.gu(1);
2121 spacing: margins;
22+ height: root.fixedHeaderHeight != -1 ? root.fixedHeaderHeight : implicitHeight;
2223 anchors { top: parent.top;
2324 topMargin: units.gu(1);
2425 left: parent.left;
tests/plugins/Dash/cardcreator/5.res+23−18
@@ -3,7 +3,7 @@ AbstractButton {
33 property var template;
44 property var components;
55 property var cardData;
6− property var artShapeBorderSource;
6+ property var artShapeBorderSource: undefined;
77 property real fontScale: 1.0;
88 property int headerAlignment: Text.AlignLeft;
99 property int fixedHeaderHeight: -1;
@@ -12,11 +12,12 @@ AbstractButton {
1212 property bool asynchronous: true;
1313 property bool showHeader: true;
1414 implicitWidth: childrenRect.width;
15+onArtShapeBorderSourceChanged: { if (artShapeBorderSource !== undefined && artShapeLoader.item) artShapeLoader.item.borderSource = artShapeBorderSource; }
1516readonly property size artShapeSize: artShapeLoader.item ? Qt.size(artShapeLoader.item.width, artShapeLoader.item.height) : Qt.size(-1, -1);
1617Item {
1718 id: artShapeHolder;
18− height: root.fixedArtShapeSize.height != -1 ? root.fixedArtShapeSize.height : artShapeLoader.height;
19− width: root.fixedArtShapeSize.width != -1 ? root.fixedArtShapeSize.width : artShapeLoader.width;
19+ height: root.fixedArtShapeSize.height > 0 ? root.fixedArtShapeSize.height : artShapeLoader.height;
20+ width: root.fixedArtShapeSize.width > 0 ? root.fixedArtShapeSize.width : artShapeLoader.width;
2021 anchors { horizontalCenter: parent.horizontalCenter; }
2122 Loader {
2223 id: artShapeLoader;
@@ -28,20 +29,24 @@ Item {
2829 id: artShape;
2930 objectName: "artShape";
3031 radius: "medium";
31− readonly property real aspect: components !== undefined ? components["art"]["aspect-ratio"] : 1;
32− readonly property bool aspectSmallerThanImageAspect: aspect < image.aspect;
33− Component.onCompleted: updateWidthHeightBindings();
34− onAspectSmallerThanImageAspectChanged: updateWidthHeightBindings();
3532 visible: image.status == Image.Ready;
36− borderSource: artShapeBorderSource;
37− function updateWidthHeightBindings() {
38− if (aspectSmallerThanImageAspect) {
39− width = Qt.binding(function() { return !visible ? 0 : image.width });
40− height = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.height : width / image.aspect });
41− } else {
42− width = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.width : height * image.aspect });
43− height = Qt.binding(function() { return !visible ? 0 : image.height });
44− }
33+ readonly property real fixedArtShapeSizeAspect: (root.fixedArtShapeSize.height > 0 && root.fixedArtShapeSize.width > 0) ? root.fixedArtShapeSize.width / root.fixedArtShapeSize.height : -1;
34+ readonly property real aspect: fixedArtShapeSizeAspect > 0 ? fixedArtShapeSizeAspect : components !== undefined ? components["art"]["aspect-ratio"] : 1;
35+ readonly property bool aspectSmallerThanImageAspect: aspect < image.aspect;
36+ Component.onCompleted: { updateWidthHeightBindings(); if (artShapeBorderSource !== undefined) borderSource = artShapeBorderSource; }
37+ onAspectSmallerThanImageAspectChanged: updateWidthHeightBindings();
38+ Connections { target: root; onFixedArtShapeSizeChanged: updateWidthHeightBindings(); }
39+ function updateWidthHeightBindings() {
40+ if (root.fixedArtShapeSize.height > 0 && root.fixedArtShapeSize.width > 0) {
41+ width = root.fixedArtShapeSize.width;
42+ height = root.fixedArtShapeSize.height;
43+ } else if (aspectSmallerThanImageAspect) {
44+ width = Qt.binding(function() { return !visible ? 0 : image.width });
45+ height = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.height : width / image.aspect });
46+ } else {
47+ width = Qt.binding(function() { return !visible ? 0 : image.fillMode === Image.PreserveAspectCrop ? image.width : height * image.aspect });
48+ height = Qt.binding(function() { return !visible ? 0 : image.height });
49+ }
4550 }
4651 image: Image {
4752 objectName: "artImage";
@@ -68,7 +73,7 @@ Loader {
6873 visible: showHeader && status == Loader.Ready;
6974 sourceComponent: ShaderEffect {
7075 id: overlay;
71− height: fixedHeaderHeight != -1 ? fixedHeaderHeight : headerHeight;
76+ height: fixedHeaderHeight > 0 ? fixedHeaderHeight + units.gu(1) * 2 : headerHeight;
7277 opacity: 0.6;
7378 property var source: ShaderEffectSource {
7479 id: shaderSource;
@@ -96,7 +101,7 @@ Loader {
96101 }";
97102 }
98103 }
99−readonly property int headerHeight: titleLabel.height + titleLabel.anchors.topMargin * 2 + subtitleLabel.height + subtitleLabel.anchors.topMargin;
104+readonly property int headerHeight: titleLabel.height + subtitleLabel.height + subtitleLabel.anchors.topMargin;
100105Label {
101106 id: titleLabel;
102107 objectName: "titleLabel";
tests/plugins/Dash/horizontaljournaltry.qml+23−2
@@ -29,14 +29,35 @@ Item {
2929 width: parent.width - controls.width
3030
3131 delegate: HorizontalJournal {
32+ id: hj
3233 model: vjModel
3334 rowHeight: 100
3435 columnSpacing: 10
3536 rowSpacing: 10
3637 width: parent.width
3738 height: implicitHeight > 100 ? implicitHeight : 100
38− delegateCreationBegin: lvwph.contentY
39− delegateCreationEnd: lvwph.contentY + lvwph.height
39+ displayMarginBeginning: {
40+ if (hj.y + hj.height <= 0) {
41+ // Not visible (item at top of the list viewport)
42+ return -hj.height;
43+ } else if (hj.y >= lvwph.height) {
44+ // Not visible (item at bottom of the list viewport)
45+ return 0;
46+ } else {
47+ return -Math.max(-hj.y, 0);
48+ }
49+ }
50+ displayMarginEnd: {
51+ if (hj.y + hj.height <= 0) {
52+ // Not visible (item at top of the list viewport)
53+ return 0;
54+ } else if (hj.y >= lvwph.height) {
55+ // Not visible (item at bottom of the list viewport)
56+ return -hj.height;
57+ } else {
58+ return -Math.max(hj.height - lvwph.height + hj.y, 0)
59+ }
60+ }
4061
4162 delegate: Rectangle {
4263 height: 100
tests/plugins/Dash/listviewwithpageheadersectionexternalmodeltest.cpp+3−3
@@ -82,10 +82,10 @@ private:
8282 QTRY_COMPARE(lvwph->m_visibleItems[visibleIndex]->y(), pos);
8383 QTRY_COMPARE(lvwph->m_visibleItems[visibleIndex]->height(), height);
8484 QCOMPARE(QQuickItemPrivate::get(lvwph->m_visibleItems[visibleIndex]->m_item)->culled, culled);
85− QCOMPARE(section(lvwph->m_visibleItems[visibleIndex]->m_sectionItem), sectionHeader);
85+ QCOMPARE(section(lvwph->m_visibleItems[visibleIndex]->sectionItem()), sectionHeader);
8686 if (!sectionHeader.isNull()) {
87− QCOMPARE(QQuickItemPrivate::get(lvwph->m_visibleItems[visibleIndex]->m_sectionItem)->culled, sectionHeaderCulled);
88− QCOMPARE(sectionDelegateIndex(lvwph->m_visibleItems[visibleIndex]->m_sectionItem), lvwph->m_firstVisibleIndex + visibleIndex);
87+ QCOMPARE(QQuickItemPrivate::get(lvwph->m_visibleItems[visibleIndex]->sectionItem())->culled, sectionHeaderCulled);
88+ QCOMPARE(sectionDelegateIndex(lvwph->m_visibleItems[visibleIndex]->sectionItem()), lvwph->m_firstVisibleIndex + visibleIndex);
8989 }
9090 }
9191
tests/plugins/Dash/listviewwithpageheadersectiontest.cpp+11−5
@@ -39,10 +39,11 @@ private:
3939 QTRY_COMPARE(lvwph->m_visibleItems[visibleIndex]->y(), pos);
4040 QTRY_COMPARE(lvwph->m_visibleItems[visibleIndex]->height(), height);
4141 QCOMPARE(QQuickItemPrivate::get(lvwph->m_visibleItems[visibleIndex]->m_item)->culled, culled);
42− QCOMPARE(section(lvwph->m_visibleItems[visibleIndex]->m_sectionItem), sectionHeader);
42+ QCOMPARE(section(lvwph->m_visibleItems[visibleIndex]->sectionItem()), sectionHeader);
43+ QTRY_COMPARE(hasSectionHeaderProperty(lvwph->m_visibleItems[visibleIndex]->m_item), !sectionHeader.isNull());
4344 if (!sectionHeader.isNull()) {
44− QCOMPARE(QQuickItemPrivate::get(lvwph->m_visibleItems[visibleIndex]->m_sectionItem)->culled, sectionHeaderCulled);
45− QCOMPARE(sectionDelegateIndex(lvwph->m_visibleItems[visibleIndex]->m_sectionItem), lvwph->m_firstVisibleIndex + visibleIndex);
45+ QCOMPARE(QQuickItemPrivate::get(lvwph->m_visibleItems[visibleIndex]->sectionItem())->culled, sectionHeaderCulled);
46+ QCOMPARE(sectionDelegateIndex(lvwph->m_visibleItems[visibleIndex]->sectionItem()), lvwph->m_firstVisibleIndex + visibleIndex);
4647 }
4748 }
4849
@@ -109,12 +110,17 @@ private:
109110 QVERIFY(QQuickItemPrivate::get(lvwph->m_topSectionItem)->culled);
110111 }
111112
112− QString section(QQuickItem *item)
113+ bool hasSectionHeaderProperty(QQuickItem *item) const
114+ {
115+ return item ? QQmlEngine::contextForObject(item)->parentContext()->contextProperty(QLatin1String("hasSectionHeader")).toBool() : false;
116+ }
117+
118+ QString section(QQuickItem *item) const
113119 {
114120 return item ? QQmlEngine::contextForObject(item)->parentContext()->contextProperty(QLatin1String("section")).toString() : QString();
115121 }
116122
117− int sectionDelegateIndex(QQuickItem *item)
123+ int sectionDelegateIndex(QQuickItem *item) const
118124 {
119125 return item ? QQmlEngine::contextForObject(item)->parentContext()->contextProperty(QLatin1String("delegateIndex")).toInt() : -1;
120126 }
tests/plugins/Dash/organicgridtest.cpp+5
@@ -514,6 +514,11 @@ private Q_SLOTS:
514514
515515 model->setCount(21);
516516
517+ QTRY_COMPARE(grid->m_visibleItems.count(), 0);
518+
519+ grid->setDisplayMarginBeginning(0);
520+ grid->setDisplayMarginEnd(0);
521+
517522 // This is exactly the same block as the first again
518523 checkInitialPositions();
519524 }
tests/plugins/Dash/organicgridtry.qml+22−2
@@ -37,8 +37,28 @@ Item {
3737 rowSpacing: 10
3838 width: parent.width
3939 height: implicitHeight > 100 ? implicitHeight : 100
40− delegateCreationBegin: lvwph.contentY
41− delegateCreationEnd: lvwph.contentY + lvwph.height
40+ displayMarginBeginning: {
41+ if (grid.y + grid.height <= 0) {
42+ // Not visible (item at top of the list viewport)
43+ return -grid.height;
44+ } else if (grid.y >= lvwph.height) {
45+ // Not visible (item at bottom of the list viewport)
46+ return 0;
47+ } else {
48+ return -Math.max(-grid.y, 0);
49+ }
50+ }
51+ displayMarginEnd: {
52+ if (grid.y + grid.height <= 0) {
53+ // Not visible (item at top of the list viewport)
54+ return 0;
55+ } else if (grid.y >= lvwph.height) {
56+ // Not visible (item at bottom of the list viewport)
57+ return -grid.height;
58+ } else {
59+ return -Math.max(grid.height - lvwph.height + grid.y, 0)
60+ }
61+ }
4262
4363 delegate: Rectangle {
4464 width: 100
tests/plugins/Dash/verticaljournaltry.qml+23−2
@@ -36,8 +36,29 @@ Item {
3636 rowSpacing: 10
3737 width: parent.width
3838 height: implicitHeight > 100 ? implicitHeight : 100
39− delegateCreationBegin: lvwph.contentY
40− delegateCreationEnd: lvwph.contentY + lvwph.height
39+
40+ displayMarginBeginning: {
41+ if (vj.y + vj.height <= 0) {
42+ // Not visible (item at top of the list viewport)
43+ return -vj.height;
44+ } else if (vj.y >= lvwph.height) {
45+ // Not visible (item at bottom of the list viewport)
46+ return 0;
47+ } else {
48+ return -Math.max(-vj.y, 0);
49+ }
50+ }
51+ displayMarginEnd: {
52+ if (vj.y + vj.height <= 0) {
53+ // Not visible (item at top of the list viewport)
54+ return 0;
55+ } else if (vj.y >= lvwph.height) {
56+ // Not visible (item at bottom of the list viewport)
57+ return -vj.height;
58+ } else {
59+ return -Math.max(vj.height - lvwph.height + vj.y, 0)
60+ }
61+ }
4162
4263 delegate: Rectangle {
4364 width: 100
tests/plugins/Unity/CMakeLists.txt+1
@@ -1,2 +1,3 @@
11add_subdirectory(Indicators)
22add_subdirectory(Launcher)
3+add_subdirectory(Session)
tests/plugins/Unity/Launcher/CMakeLists.txt+1−1
@@ -49,7 +49,7 @@ add_executable(launchermodeltestExec
4949 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationManagerInterface.h
5050 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/application/ApplicationInfoInterface.h
5151 )
52−target_link_libraries(launchermodeltestExec ${GSETTINGS_QT_LDFLAGS} )
52+target_link_libraries(launchermodeltestExec ${GSETTINGS_QT_LDFLAGS})
5353qt5_use_modules(launchermodeltestExec Test Core DBus)
5454
5555# copy .desktop files into build directory for shadow builds
tests/plugins/Unity/Launcher/launchermodeltest.cpp+9
@@ -274,6 +274,15 @@ private Q_SLOTS:
274274 QCOMPARE(launcherModel->rowCount(QModelIndex()), 1);
275275 QCOMPARE(launcherModel->get(0)->appId(), QLatin1String("abs-icon"));
276276 }
277+
278+ void testGetUrlForAppId() {
279+ QCOMPARE(launcherModel->getUrlForAppId(QString()), QString());
280+ QCOMPARE(launcherModel->getUrlForAppId(""), QString());
281+ QCOMPARE(launcherModel->getUrlForAppId("no-name"), QString("application:///no-name.desktop"));
282+ QCOMPARE(launcherModel->getUrlForAppId("com.test.good"), QString("appid://com.test.good/first-listed-app/current-user-version"));
283+ QCOMPARE(launcherModel->getUrlForAppId("com.test.good_application"), QString("appid://com.test.good/application/current-user-version"));
284+ QCOMPARE(launcherModel->getUrlForAppId("com.test.good_application_1.2.3"), QString("appid://com.test.good/application/current-user-version"));
285+ }
277286};
278287
279288QTEST_GUILESS_MAIN(LauncherModelTest)
tests/plugins/Unity/Session/CMakeLists.txtnew file+20
@@ -0,0 +1,20 @@
1+include_directories(
2+ ${CMAKE_CURRENT_BINARY_DIR}
3+ ${CMAKE_SOURCE_DIR}/plugins/Unity/Session
4+)
5+
6+add_definitions(-DSM_BUSNAME=sessionBus)
7+add_definitions(-DSRCDIR="${CMAKE_CURRENT_SOURCE_DIR}")
8+add_definitions(-DSESSION_TESTING)
9+
10+### SessionBackendTest
11+set(testBackendCommand dbus-test-runner --task ${CMAKE_CURRENT_BINARY_DIR}/sessionbackendtestExec
12+ --parameter -o --parameter ${CMAKE_BINARY_DIR}/sessionbackendtest.xml,xunitxml
13+ --parameter -o --parameter -,txt)
14+add_test(NAME sessionbackendtest COMMAND ${testBackendCommand})
15+add_custom_target(sessionbackendtest ${testBackendCommand})
16+add_executable(sessionbackendtestExec
17+ sessionbackendtest.cpp
18+ ${CMAKE_SOURCE_DIR}/plugins/Unity/Session/dbusunitysessionservice.cpp
19+)
20+qt5_use_modules(sessionbackendtestExec Test Core Qml DBus)
tests/plugins/Unity/Session/sessionbackendtest.cppnew file+64
@@ -0,0 +1,64 @@
1+/*
2+ * Copyright 2013 Canonical Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU Lesser General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU Lesser General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU Lesser General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ *
16+ * Authors:
17+ * Ying-Chun Liu (PaulLiu) <paul.liu@canonical.com>
18+ */
19+
20+#include <QtTest>
21+#include <QDBusConnection>
22+#include <QDBusMessage>
23+#include <QDBusInterface>
24+#include <QDBusReply>
25+#include <QDBusVariant>
26+
27+#include "dbusunitysessionservice.h"
28+
29+class SessionBackendTest : public QObject
30+{
31+ Q_OBJECT
32+
33+private Q_SLOTS:
34+
35+ void initTestCase() {
36+ }
37+
38+ void testDbusIfaceMethods_data() {
39+ QTest::addColumn<QString>("method");
40+
41+ QTest::newRow("Logout") << "RequestLogout";
42+ }
43+
44+ void testDbusIfaceMethods() {
45+ QFETCH(QString, method);
46+
47+ DBusUnitySessionService dbusUnitySessionService;
48+
49+ QDBusConnection con = QDBusConnection::sessionBus();
50+ QDBusInterface interface ("com.canonical.Unity",
51+ "/com/canonical/Unity/Session",
52+ "com.canonical.Unity.Session",
53+ con);
54+ QDBusReply<void> reply;
55+
56+ QCOMPARE(interface.isValid(), true);
57+ reply = interface.call(method);
58+ QCOMPARE(reply.isValid(), true);
59+
60+ }
61+};
62+
63+QTEST_GUILESS_MAIN(SessionBackendTest)
64+#include "sessionbackendtest.moc"
tests/qmltests/CMakeLists.txt+39−48
@@ -4,6 +4,7 @@ include(QmlTest)
44add_subdirectory(Components)
55
66set(qmltest_DEFAULT_IMPORT_PATHS
7+ ${CMAKE_BINARY_DIR}/plugins
78 ${CMAKE_BINARY_DIR}/tests/utils/modules
89 ${CMAKE_BINARY_DIR}/tests/mocks
910)
@@ -23,63 +24,53 @@ add_qml_test(. Shell IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_
2324add_qml_test(Components Carousel)
2425add_qml_test(Components DraggingArea)
2526add_qml_test(Components EdgeDemoOverlay)
26−add_qml_test(Components FilterGrid IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/plugins)
27+add_qml_test(Components FilterGrid)
2728add_qml_test(Components LazyImage)
2829add_qml_test(Components Rating)
2930add_qml_test(Components ResponsiveFlowView)
3031add_qml_test(Components ResponsiveGridView)
32+add_qml_test(Components ResponsiveVerticalJournal IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/plugins)
3133add_qml_test(Components SeeMore)
3234add_qml_test(Components Showable)
3335add_qml_test(Components PageHeaderLabel)
3436add_qml_test(Components ZoomableImage)
35−add_qml_test(Dash Dash IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
36−add_qml_test(Dash DashContent IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
37−add_qml_test(Dash Card IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
38−add_qml_benchmark(Dash CardBenchmark 1000 IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
39−add_qml_test(Dash CardHeader)
40−add_qml_test(Dash CardTool IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
41−add_qml_test(Dash GenericScopeView IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
42−add_qml_test(Dash/Apps RunningApplicationsGrid IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS}
43− ${CMAKE_BINARY_DIR}/tests/mocks
44− ${CMAKE_BINARY_DIR}/plugins)
45−add_qml_test(Dash/Previews Preview IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
46−add_qml_test(Dash/Previews PreviewActions IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
47−add_qml_test(Dash/Previews PreviewAudioPlayback IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
48−add_qml_test(Dash/Previews PreviewHeader IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
49−add_qml_test(Dash/Previews PreviewImageGallery IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
50−add_qml_test(Dash/Previews PreviewProgress IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
51−add_qml_test(Dash/Previews PreviewRatingDisplay IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
52−add_qml_test(Dash/Previews PreviewRatingInput IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
53−add_qml_test(Dash/Previews PreviewTextSummary IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
54−add_qml_test(Dash/Previews PreviewVideoPlayback IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
55−add_qml_test(Dash/Previews PreviewWidgetFactory IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
56−add_qml_test(Dash/Previews PreviewZoomableImage IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/tests/mocks)
57−add_qml_test(Greeter Lockscreen IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS}
58− PROPERTIES ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
59−add_qml_test(Greeter Tablet IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS}
60− ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
61−add_qml_test(Greeter Phone IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS}
62− ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/single")
63−add_qml_test(Greeter Infographics IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS}
64− ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
65−add_qml_test(Greeter Clock IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS}
66− ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/QMenuModel")
37+add_qml_test(Dash Dash)
38+add_qml_test(Dash DashContent)
39+add_qml_test(Dash Card)
40+add_qml_benchmark(Dash CardBenchmark 1000)
41+add_qml_test(Dash CardTool)
42+add_qml_test(Dash GenericScopeView)
43+add_qml_test(Dash/Apps RunningApplicationsGrid)
44+add_qml_test(Dash/Previews Preview)
45+add_qml_test(Dash/Previews PreviewActions)
46+add_qml_test(Dash/Previews PreviewAudioPlayback)
47+add_qml_test(Dash/Previews PreviewHeader)
48+add_qml_test(Dash/Previews PreviewImageGallery)
49+add_qml_test(Dash/Previews PreviewProgress)
50+add_qml_test(Dash/Previews PreviewRatingDisplay)
51+add_qml_test(Dash/Previews PreviewRatingInput)
52+add_qml_test(Dash/Previews PreviewTextSummary)
53+add_qml_test(Dash/Previews PreviewVideoPlayback)
54+add_qml_test(Dash/Previews PreviewWidgetFactory)
55+add_qml_test(Dash/Previews PreviewZoomableImage)
56+add_qml_test(Greeter Lockscreen ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
57+add_qml_test(Greeter MultiGreeter ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
58+add_qml_test(Greeter SingleGreeter ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/single")
59+add_qml_test(Greeter Infographics ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/libusermetrics:${CMAKE_BINARY_DIR}/tests/mocks/LightDM/full")
60+add_qml_test(Greeter Clock ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/QMenuModel")
6761add_qml_test(Hud Hud)
6862add_qml_test(Hud Result)
69−add_qml_test(Launcher Launcher IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
70−add_qml_test(Notifications Notifications IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/plugins)
71−add_qml_test(Notifications VisualSnapDecisionsQueue IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/plugins)
63+add_qml_test(Launcher Launcher)
64+add_qml_test(Notifications Notifications)
65+add_qml_test(Notifications VisualSnapDecisionsQueue)
7266add_qml_test(Panel IndicatorRow)
73−add_qml_test(Panel Indicators IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
74−add_qml_test(Panel MenuContent IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
75−add_qml_test(Panel Panel IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
67+add_qml_test(Panel Indicators)
68+add_qml_test(Panel MenuContent)
69+add_qml_test(Panel Panel)
7670add_qml_test(Panel SearchIndicator)
77−add_qml_test(Panel/Indicators DefaultIndicatorWidget IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS}
78− ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/QMenuModel")
79−add_qml_test(Panel/Indicators DefaultIndicatorPage IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS}
80− ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/QMenuModel")
81−add_qml_test(Panel/Indicators MenuItemFactory IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/plugins)
82−add_qml_test(Panel/Indicators MessageMenuItemFactory IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/plugins)
83−add_qml_test(Stages PhoneStage IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS}
84− ${CMAKE_BINARY_DIR}/tests/mocks
85− ${CMAKE_BINARY_DIR}/plugins)
71+add_qml_test(Panel/Indicators DefaultIndicatorWidget ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/QMenuModel")
72+add_qml_test(Panel/Indicators DefaultIndicatorPage ENVIRONMENT "LD_LIBRARY_PATH=${CMAKE_BINARY_DIR}/tests/mocks/QMenuModel")
73+# These MenuItemFactory tests need the test/mocks/ to come before plugins/
74+add_qml_test(Panel/Indicators MenuItemFactory IMPORT_PATHS ${CMAKE_BINARY_DIR}/tests/mocks ${qmltest_DEFAULT_IMPORT_PATHS})
75+add_qml_test(Panel/Indicators MessageMenuItemFactory IMPORT_PATHS ${CMAKE_BINARY_DIR}/tests/mocks ${qmltest_DEFAULT_IMPORT_PATHS})
76+add_qml_test(Stages PhoneStage)
tests/qmltests/Components/tst_LazyImage.qml+1−1
@@ -113,7 +113,7 @@ Rectangle {
113113 }
114114
115115 UT.UnityTestCase {
116− name: "Stage"
116+ name: "LazyImage"
117117 when: windowShown
118118
119119 function cleanup() {
tests/qmltests/Components/tst_ResponsiveVerticalJournal.qmlnew file+183
@@ -0,0 +1,183 @@
1+/*
2+ * Copyright 2013-2014 Canonical Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+import QtQuick 2.0
18+import QtTest 1.0
19+import ".."
20+import "../../../qml/Components"
21+import Ubuntu.Components.ListItems 0.1 as ListItem
22+import Ubuntu.Components 0.1
23+import Utils 0.1
24+import Unity.Test 0.1 as UT
25+
26+Item {
27+ width: units.gu(80) + controls.width
28+ height: units.gu(80)
29+
30+ Column {
31+ id: controls
32+ width: units.gu(40)
33+ height: parent.height
34+ anchors.top: parent.top
35+ anchors.right: parent.right
36+ ListItem.ValueSelector {
37+ id: cardSizeSelector
38+ text: "card-size"
39+ // small, medium, large card sizes
40+ values: [units.gu(12), units.gu(18.5), units.gu(38)]
41+ selectedIndex: 0
42+ }
43+ ListItem.ValueSelector {
44+ id: minColumnSpacingSelector
45+ text: "minColumnSpacing"
46+ values: [0, units.gu(2), units.gu(8), units.gu(25)]
47+ selectedIndex: 0
48+ }
49+ ListItem.ValueSelector {
50+ id: rowSpacingSelector
51+ text: "rowSpacing"
52+ values: [units.gu(1), units.gu(2), units.gu(4), units.gu(8)]
53+ selectedIndex: 1
54+ }
55+ }
56+
57+ ListModel {
58+ id: fakeModel
59+ ListElement { name: "A" }
60+ ListElement { name: "B" }
61+ ListElement { name: "C" }
62+ ListElement { name: "D" }
63+ ListElement { name: "E" }
64+ ListElement { name: "F" }
65+ ListElement { name: "G" }
66+ ListElement { name: "H" }
67+ ListElement { name: "I" }
68+ ListElement { name: "J" }
69+ ListElement { name: "K" }
70+ ListElement { name: "L" }
71+ ListElement { name: "M" }
72+ ListElement { name: "N" }
73+ ListElement { name: "O" }
74+ ListElement { name: "P" }
75+ ListElement { name: "Q" }
76+ ListElement { name: "R" }
77+ ListElement { name: "S" }
78+ ListElement { name: "T" }
79+ ListElement { name: "U" }
80+ }
81+
82+ SortFilterProxyModel {
83+ id: wrappedFakeModel
84+ model: fakeModel
85+ }
86+
87+ Rectangle {
88+ id: journalRect
89+ height: parent.height
90+ color: "grey"
91+ anchors.top: parent.top
92+ anchors.left: parent.left
93+ anchors.right: controls.left
94+
95+ ResponsiveVerticalJournal {
96+ id: journal
97+ anchors.fill: parent
98+ model: wrappedFakeModel
99+ minimumColumnSpacing: minColumnSpacingSelector.values[minColumnSpacingSelector.selectedIndex]
100+ rowSpacing: rowSpacingSelector.values[rowSpacingSelector.selectedIndex]
101+ columnWidth: cardSizeSelector.values[cardSizeSelector.selectedIndex]
102+
103+ delegate: Rectangle {
104+ id: delegateItem
105+ // So that it can be identified by test code
106+ property bool isJournalDelegate: true
107+ objectName: "delegate" + index
108+ color: "grey"
109+ border.color: "red"
110+ border.width: 1
111+
112+ // width derived from Card's template['card-size']
113+ width: cardSizeSelector.values[cardSizeSelector.selectedIndex]
114+ height: Math.max(units.gu(8), Math.floor(Math.random() * 300))
115+
116+ Rectangle {
117+ color: "green"
118+ anchors.centerIn: parent
119+ width: units.gu(6)
120+ height: units.gu(6)
121+ Text {
122+ anchors.centerIn: parent
123+ text: name
124+ }
125+ }
126+
127+ Text { x:0; y:0; text:"(" + parent.x + ", " + parent.y + ")"}
128+ }
129+ }
130+ }
131+
132+ UT.UnityTestCase {
133+ name: "ResponsiveVerticalJournal"
134+ when: windowShown
135+
136+ function test_minimumColumnSpacing_data() {
137+ return [{minColumnSpacingIndex: 0, expectedColumns: 2},
138+ {minColumnSpacingIndex: 1, expectedColumns: 2},
139+ {minColumnSpacingIndex: 2, expectedColumns: 1}]
140+ }
141+
142+ // Test how minimumColumnSpacing affects column count.
143+ function test_minimumColumnSpacing(data) {
144+ cardSizeSelector.selectedIndex = 2 // large card
145+
146+ minColumnSpacingSelector.selectedIndex = data.minColumnSpacingIndex
147+
148+ tryCompareFunction(countJournalDelegatesOnFirstRow, data.expectedColumns)
149+ }
150+
151+ function test_maximumNumberOfColumns_data() {
152+ return [{cardSizeIndex: 0, expectedColumns: 6},
153+ {cardSizeIndex: 1, expectedColumns: 4},
154+ {cardSizeIndex: 2, expectedColumns: 2}]
155+ }
156+
157+ // Test how maximumNumberOfColumns and columnWidth affect column count.
158+ function test_maximumNumberOfColumns(data) {
159+ minColumnSpacingSelector.selectedIndex = 0 // no spacing
160+
161+ cardSizeSelector.selectedIndex = data.cardSizeIndex // columnWidth
162+
163+ tryCompareFunction(countJournalDelegatesOnFirstRow, data.expectedColumns)
164+ }
165+
166+ function countJournalDelegatesOnFirstRow() {
167+ return __countJournalDelegatesOnFirstRow(journal.visibleChildren, 0)
168+ }
169+
170+ function __countJournalDelegatesOnFirstRow(objList, total) {
171+ for (var i = 0; i < objList.length; ++i) {
172+ var child = objList[i];
173+ if (child.isJournalDelegate !== undefined && child.y === 0) {
174+ ++total;
175+ } else {
176+ total = __countJournalDelegatesOnFirstRow(
177+ child.visibleChildren, total)
178+ }
179+ }
180+ return total
181+ }
182+ }
183+}
tests/qmltests/Components/tst_ZoomableImage.qml+21−19
@@ -98,22 +98,23 @@ Rectangle {
9898 // move mouse to center
9999 mouseMove(zoomableImage, zoomableImage.width / 2, zoomableImage.height / 2);
100100
101+ var oldScale = image.scale;
101102 // Test Zoom-in Zoom-out twice.
102103 for (var c=0; c<2; c++) {
103104 // zoom in
104105 for (var i=0; i<10; i++) {
105106 mouseWheel(zoomableImage, zoomableImage.width / 2, zoomableImage.height / 2, 0, 10);
106− tryCompare(image, "scale", 1.0 + (i + 1) * 0.1);
107− compare(flickable.contentWidth, lazyImage.width * image.scale);
108− compare(flickable.contentHeight, lazyImage.height * image.scale);
107+ tryCompare(image, "scale", oldScale + (i + 1) * 0.1);
108+ compare(flickable.contentWidth, Math.max(lazyImage.width * image.scale, flickable.width));
109+ compare(flickable.contentHeight, Math.max(lazyImage.height * image.scale, flickable.height));
109110 }
110111
111112 // zoom out
112113 for (var i=0; i<10; i++) {
113114 mouseWheel(zoomableImage, zoomableImage.width / 2, zoomableImage.height / 2, 0, -10);
114− tryCompare(image, "scale", 2.0 - (i + 1) * 0.1);
115− compare(flickable.contentWidth, lazyImage.width * image.scale);
116− compare(flickable.contentHeight, lazyImage.height * image.scale);
115+ tryCompare(image, "scale", oldScale + 1.0 - (i + 1) * 0.1);
116+ compare(flickable.contentWidth, Math.max(lazyImage.width * image.scale, flickable.width));
117+ compare(flickable.contentHeight, Math.max(lazyImage.height * image.scale, flickable.height));
117118 }
118119 }
119120 }
@@ -123,16 +124,12 @@ Rectangle {
123124 zoomable:false,
124125 answer1: true,
125126 answer2: false,
126− answer3: true,
127− answer4: 1.0,
128− answer5: 1.0 },
127+ answer3: true },
129128 { source:widgetData2["source"],
130129 zoomable:true,
131130 answer1: false,
132131 answer2: true,
133− answer3: false,
134− answer4: 1.7740461882048026,
135− answer5: 1.0 }
132+ answer3: false }
136133 ]
137134 }
138135
@@ -163,7 +160,7 @@ Rectangle {
163160 var y2End = zoomableImage.height * 5 / 6;
164161
165162 var oldScale = image.scale;
166−
163+ var newScale = -1;
167164 // move mouse to center
168165 mouseMove(zoomableImage, zoomableImage.width / 2, zoomableImage.height / 2);
169166
@@ -172,20 +169,25 @@ Rectangle {
172169 wait(3000); // have to delay between two consequent pinch event.
173170 // pinch zoom-in
174171 touchPinch(zoomableImage, x1Start, y1Start, x1End, y1End, x2Start, y2Start, x2End, y2End);
172+ waitForRendering(image);
175173
176− tryCompare(image, "scale", data.answer4);
177− var newScale = image.scale;
174+ if (newScale == -1) {
175+ newScale = image.scale;
176+ }
177+ tryCompare(image, "scale", newScale);
178178 compare(newScale == oldScale, data.answer1, "scale factor not equal: "+ oldScale + "=?" + newScale);
179179 compare(newScale > oldScale, data.answer2, "scale factor didn't changed");
180180 compare(signalSpy.count == 0, data.answer3, "scale signal count error");
181− compare(newScale, data.answer4, "scale factor error");
182− compare(flickable.contentWidth, lazyImage.width * image.scale);
183− compare(flickable.contentHeight, lazyImage.height * image.scale);
181+ compare(image.scale, newScale, "scale factor error");
182+ compare(flickable.contentWidth, Math.max(lazyImage.width * image.scale, flickable.width));
183+ compare(flickable.contentHeight, Math.max(lazyImage.height * image.scale, flickable.height));
184184
185185 wait(3000); // have to delay between two consequent pinch event.
186186 // pinch zoom-out
187187 touchPinch(zoomableImage, x1End, y1End, x1Start, y1Start, x2End, y2End, x2Start, y2Start);
188− tryCompare(image, "scale", data.answer5);
188+ tryCompare(image, "scale", oldScale);
189+ compare(flickable.contentWidth, Math.max(lazyImage.width * image.scale, flickable.width));
190+ compare(flickable.contentHeight, Math.max(lazyImage.height * image.scale, flickable.height));
189191 }
190192 }
191193 }
tests/qmltests/Dash/Previews/tst_PreviewHeader.qml+12−7
@@ -53,12 +53,12 @@ Rectangle {
5353 name: "PreviewHeaderTest"
5454 when: windowShown
5555
56− property Item mascot: findChild(previewHeader, "mascotShape")
56+ property Item mascotShapeLoader: findChild(previewHeader, "mascotShapeLoader")
5757 property Item outerRow: findChild(previewHeader, "outerRow")
5858 property Item column: findChild(previewHeader, "column")
5959
6060 function initTestCase() {
61− verify(typeof testCase.mascot === "object", "Couldn't find mascot object.");
61+ verify(typeof testCase.mascotShapeLoader === "object", "Couldn't find mascot loader object.");
6262 verify(typeof testCase.outerRow === "object", "Couldn't find outerRow object.");
6363 verify(typeof testCase.column === "object", "Couldn't find column object.");
6464
@@ -70,9 +70,9 @@ Rectangle {
7070
7171 function test_mascot_data() {
7272 return [
73− { tag: "Empty", source: "", visible: false },
74− { tag: "Invalid", source: "bad_path", visible: false },
75− { tag: "Valid", source: "../graphics/play_button.png", visible: true },
73+ { tag: "Empty", source: "", loaderVisible: false, visible: false },
74+ { tag: "Invalid", source: "bad_path", loaderVisible: true, visible: false },
75+ { tag: "Valid", source: "../graphics/play_button.png", loaderVisible: true, visible: true },
7676 ]
7777 }
7878
@@ -80,12 +80,17 @@ Rectangle {
8080 headerjson.mascot = data.source;
8181 previewHeader.widgetData = headerjson;
8282
83− tryCompare(testCase.mascot, "visible", data.visible);
83+ tryCompare(testCase.mascotShapeLoader, "visible", data.loaderVisible);
84+ if (data.loaderVisible) {
85+ tryCompareFunction(function() { return findChild(previewHeader, "mascotShape") != null }, true);
86+ var mascot = findChild(previewHeader, "mascotShape")
87+ tryCompare(mascot, "visible", data.visible);
88+ }
8489 }
8590
8691 function test_dimensions_data() {
8792 return [
88− { tag: "Column width with mascot", object: column, width: previewHeader.width - mascot.width - outerRow.margins * 3, mascot: "artwork/avatar.png" },
93+ { tag: "Column width with mascot", object: column, width: previewHeader.width - mascotShapeLoader.width - outerRow.margins * 3, mascot: "artwork/avatar.png" },
8994 { tag: "Header height", object: previewHeader, height: function() { return outerRow.height + outerRow.margins * 2 } },
9095 ]
9196 }
tests/qmltests/Dash/Previews/tst_PreviewZoomableImage.qml+7−5
@@ -26,12 +26,12 @@ Rectangle {
2626 color: "lightgrey"
2727
2828 property var widgetData0: {
29− "source": ""
29+ "source": Qt.resolvedUrl("../artwork/checkers.png"),
30+ "zoomable": false
3031 }
3132
3233 property var widgetData1: {
33− "source": Qt.resolvedUrl("../artwork/checkers.png"),
34− "zoomable": false
34+ "source": ""
3535 }
3636
3737 PreviewZoomableImage {
@@ -49,11 +49,13 @@ Rectangle {
4949
5050 zoomableImage.widgetData = widgetData0;
5151 waitForRendering(zoomableImage);
52− tryCompare(image, "imageState", "default");
52+ waitForRendering(image);
53+ tryCompare(image, "imageState", "ready");
5354
5455 zoomableImage.widgetData = widgetData1;
5556 waitForRendering(zoomableImage);
56− tryCompare(image, "imageState", "ready");
57+ waitForRendering(image);
58+ tryCompare(image, "imageState", "default");
5759 }
5860 }
5961}
tests/qmltests/Dash/tst_Card.qml+9
@@ -305,6 +305,15 @@ Rectangle {
305305 }
306306 }
307307
308+ function test_art_shape_fixed_size() {
309+ selector.selectedIndex = 6;
310+ card.fixedArtShapeSize = Qt.size( units.gu(8), units.gu(4) );
311+ waitForRendering(card);
312+ tryCompare(art, "width", units.gu(8));
313+ tryCompare(art, "height", units.gu(4));
314+ tryCompare(art, "fixedArtShapeSizeAspect", 2);
315+ }
316+
308317 function test_art_layout_data() {
309318 return [
310319 { tag: "Vertical", left: function() { return units.gu(1); }, index: 0},
tests/qmltests/Dash/tst_DashContent.qml+143−17
@@ -67,13 +67,17 @@ Item {
6767 name: "DashContent"
6868 when: scopesModel.loaded && windowShown
6969
70− function init() {
71− scopesModel.clear();
70+ function loadScopes() {
7271 scopeLoadedSpy.clear();
7372 scopesModel.load();
7473 tryCompare(scopeLoadedSpy, "count", 4);
7574 }
7675
76+ function init() {
77+ scopesModel.clear();
78+ loadScopes();
79+ }
80+
7781 function cleanup() {
7882 movementStartedSpy.clear();
7983 dashContent.visible = true;
@@ -93,9 +97,7 @@ Item {
9397 compare(dashContentList.count, 0, "DashContent should have 0 items when it starts");
9498 tryCompare(dashContentList, "currentIndex", -1);
9599
96− scopeLoadedSpy.clear();
97− scopesModel.load();
98− tryCompare(scopeLoadedSpy, "count", 4);
100+ loadScopes();
99101
100102 verify(dashContentList.currentIndex >= 0);
101103 }
@@ -109,9 +111,7 @@ Item {
109111 // pretend we're running after a model reset
110112 dashContentList.currentIndex = 27;
111113
112− scopeLoadedSpy.clear();
113− scopesModel.load();
114− tryCompare(scopeLoadedSpy, "count", 4);
114+ loadScopes();
115115
116116 verify(dashContentList.currentIndex >= 0 && dashContentList.currentIndex < 5);
117117 }
@@ -124,13 +124,13 @@ Item {
124124
125125 waitForRendering(categoryListView);
126126
127− categoryListView.contentY = units.gu(11);
128− console.log("contentY", categoryListView.contentY);
127+ categoryListView.contentY = units.gu(15);
128+ tryCompare(categoryListView, "contentY", units.gu(15));
129129
130130 var startX = dashContentList.width/2;
131131 var startY = dashContentList.height/2;
132132 touchFlick(dashContentList, startX - units.gu(2), startY, startX, startY);
133− tryCompare(categoryListView, "contentY", units.gu(11) - categoryListView.pageHeader.height);
133+ tryCompare(categoryListView, "contentY", units.gu(15) - categoryListView.pageHeader.height);
134134 }
135135
136136 function test_set_current_scope_reset() {
@@ -326,8 +326,6 @@ Item {
326326 }
327327
328328 function test_previewOpenClose() {
329− tryCompare(scopeLoadedSpy, "count", 4);
330−
331329 var previewListView = findChild(dashContent, "dashContentPreviewList");
332330 tryCompare(previewListView, "open", false);
333331
@@ -352,8 +350,6 @@ Item {
352350 },
353351 true);
354352
355− tryCompare(scopeLoadedSpy, "count", 4);
356−
357353 var previewListView = findChild(dashContent, "dashContentPreviewList");
358354 tryCompare(previewListView, "open", false);
359355
@@ -368,8 +364,6 @@ Item {
368364 }
369365
370366 function test_previewCycle() {
371− tryCompare(scopeLoadedSpy, "count", 4);
372−
373367 var categoryListView = findChild(dashContent, "categoryListView");
374368 categoryListView.positionAtBeginning();
375369
@@ -392,5 +386,137 @@ Item {
392386 }
393387 closePreview();
394388 }
389+
390+ function test_carouselAspectRatio() {
391+ tryCompareFunction(function() {
392+ var scope = findChild(dashContent, "MockScope1 loader");
393+ if (scope != null) {
394+ var dashCategory1 = findChild(scope, "dashCategory1");
395+ if (dashCategory1 != null) {
396+ var tile = findChild(dashCategory1, "carouselDelegate1");
397+ return tile != null;
398+ }
399+ }
400+ return false;
401+ },
402+ true);
403+
404+ var scope = findChild(dashContent, "MockScope1 loader");
405+ var dashCategory1 = findChild(scope, "dashCategory1");
406+ var cardTool = findChild(dashCategory1, "cardTool");
407+ var carouselLV = findChild(dashCategory1, "listView");
408+ verify(carouselLV.tileWidth / carouselLV.tileHeight == cardTool.components["art"]["aspect-ratio"]);
409+ }
410+
411+ function test_departments() {
412+ var dashDepartments = findChild(dashContent, "dashDepartments");
413+ compare(dashDepartments.visible, true);
414+ compare(dashDepartments.showList, false);
415+ waitForRendering(dashDepartments);
416+ mouseClick(dashDepartments, 0, 0);
417+ compare(dashDepartments.showList, true);
418+
419+ var departmentListView = findChild(dashDepartments, "departmentListView");
420+ compare(departmentListView.count, 1);
421+ tryCompare(departmentListView.currentItem.department, "loaded", true);
422+
423+ waitForRendering(departmentListView);
424+ waitForRendering(departmentListView.currentItem);
425+
426+ var allButton = findChild(dashDepartments, "allButton");
427+ compare(allButton.visible, false);
428+
429+ var department = findChild(dashDepartments, "department0child3");
430+ mouseClick(department, 0, 0);
431+ compare(dashDepartments.showList, false);
432+ tryCompare(dashDepartments.currentDepartment, "departmentId", "middle3");
433+ tryCompare(departmentListView.currentItem.department, "departmentId", "root");
434+
435+ mouseClick(dashDepartments, 0, 0);
436+ compare(dashDepartments.showList, true);
437+ waitForRendering(departmentListView);
438+ waitForRendering(departmentListView.currentItem);
439+ compare(allButton.visible, true);
440+
441+ mouseClick(allButton, 0, 0);
442+ compare(dashDepartments.showList, false);
443+ tryCompare(dashDepartments.currentDepartment, "departmentId", "root");
444+ tryCompare(departmentListView.currentItem.department, "departmentId", "root");
445+
446+ mouseClick(dashDepartments, 0, 0);
447+ compare(dashDepartments.showList, true);
448+ waitForRendering(departmentListView);
449+ waitForRendering(departmentListView.currentItem);
450+ compare(allButton.visible, false);
451+
452+ department = findChild(dashDepartments, "department0child2");
453+ mouseClick(department, 0, 0);
454+ compare(dashDepartments.showList, true);
455+ tryCompare(dashDepartments.currentDepartment, "departmentId", "middle2");
456+ tryCompare(departmentListView.currentItem.department, "departmentId", "middle2");
457+
458+ var departmentList1 = findChild(dashDepartments, "department1");
459+ allButton = findChild(departmentList1, "allButton");
460+ var backButton = findChild(findChild(departmentList1, "department1"), "backButton");
461+ compare(allButton.visible, true);
462+ compare(backButton.visible, true);
463+
464+ mouseClick(allButton, 0, 0);
465+ compare(dashDepartments.showList, false);
466+ tryCompare(dashDepartments.currentDepartment, "departmentId", "middle2");
467+ tryCompare(departmentListView.currentItem.department, "departmentId", "middle2");
468+
469+ mouseClick(dashDepartments, 0, 0);
470+ compare(dashDepartments.showList, true);
471+ waitForRendering(departmentListView);
472+ waitForRendering(departmentListView.currentItem);
473+ compare(allButton.visible, true);
474+ compare(backButton.visible, true);
475+
476+ tryCompare(departmentList1.department, "loaded", true);
477+ department = findChild(dashDepartments, "department1child2");
478+ mouseClick(department, 0, 0);
479+ compare(dashDepartments.showList, false);
480+ tryCompare(dashDepartments.currentDepartment, "departmentId", "childmiddle22");
481+ tryCompare(departmentListView.currentItem.department, "departmentId", "middle2");
482+
483+ mouseClick(dashDepartments, 0, 0);
484+ compare(dashDepartments.showList, true);
485+ waitForRendering(departmentListView);
486+ waitForRendering(departmentListView.currentItem);
487+
488+ tryCompare(departmentList1.department, "loaded", true);
489+ department = findChild(dashDepartments, "department1child3");
490+ mouseClick(department, 0, 0);
491+ compare(dashDepartments.showList, false);
492+ tryCompare(dashDepartments.currentDepartment, "departmentId", "childmiddle23");
493+ tryCompare(departmentListView.currentItem.department, "departmentId", "middle2");
494+
495+ mouseClick(dashDepartments, 0, 0);
496+ compare(dashDepartments.showList, true);
497+ waitForRendering(departmentListView);
498+ waitForRendering(departmentListView.currentItem);
499+ mouseClick(backButton, 0, 0);
500+
501+ tryCompare(dashDepartments.currentDepartment, "departmentId", "root");
502+ tryCompare(departmentListView.currentItem.department, "departmentId", "root");
503+ compare(dashDepartments.showList, true);
504+ mouseClick(dashDepartments, 0, 0);
505+ compare(dashDepartments.showList, false);
506+
507+ mouseClick(dashDepartments, 0, 0);
508+ compare(dashDepartments.showList, true);
509+ tryCompare(departmentListView.currentItem.department, "loaded", true);
510+ department = findChild(dashDepartments, "department0child2");
511+ mouseClick(department, 0, 0);
512+ compare(dashDepartments.showList, true);
513+ departmentList1 = findChild(dashDepartments, "department1");
514+ compare(departmentList1.department.loaded, false);
515+ tryCompare(dashDepartments.currentDepartment, "departmentId", "middle2");
516+ allButton = findChild(departmentList1, "allButton");
517+ tryCompare(dashDepartments.currentDepartment, "departmentId", "middle2");
518+ mouseClick(allButton, 0, 0);
519+ tryCompare(dashDepartments.currentDepartment, "departmentId", "middle2");
520+ }
395521 }
396522}
tests/qmltests/Dash/tst_GenericScopeView.qml+1
@@ -126,6 +126,7 @@ Item {
126126
127127 function test_filter_expand_collapse() {
128128 // wait for the item to be there
129+ waitForRendering(genericScopeView);
129130 tryCompareFunction(function() { return findChild(genericScopeView, "dashSectionHeader0") != null; }, true);
130131
131132 var header = findChild(genericScopeView, "dashSectionHeader0")
tests/qmltests/Greeter/tst_Lockscreen.qml+209−31
@@ -17,31 +17,40 @@
1717import QtQuick 2.0
1818import QtTest 1.0
1919import ".."
20−import "../../../qml/Greeter"
20+import "../../../qml/Components"
2121import Ubuntu.Components 0.1
2222import LightDM 0.1 as LightDM
2323import Unity.Test 0.1 as UT
2424
2525Rectangle {
26− width: units.gu(60)
26+ id: root
27+ width: units.gu(80)
2728 height: units.gu(80)
2829 color: "orange"
2930
3031 Lockscreen {
3132 id: lockscreen
3233 anchors.fill: parent
33− anchors.rightMargin: units.gu(18)
34+ anchors.rightMargin: units.gu(30)
3435 placeholderText: "Please enter your PIN"
36+ wrongPlaceholderText: "Incorrect PIN"
37+ retryText: retryCountTextField.text
3538 alphaNumeric: pinPadCheckBox.checked
36− pinLength: pinLengthTextField.text
39+ minPinLength: minPinLengthTextField.text
40+ maxPinLength: maxPinLengthTextField.text
3741 username: "Lola"
42+ background: "../../../qml/graphics/phone_background.jpg"
43+ infoText: infoTextTextField.text
3844 }
3945
4046 Connections {
4147 target: lockscreen
4248
4349 onEmergencyCall: emergencyCheckBox.checked = true
44− onEntered: enteredLabel.text = passphrase
50+ onEntered: {
51+ enteredLabel.text = passphrase
52+ lockscreen.clear(true)
53+ }
4554 }
4655
4756 Connections {
@@ -49,9 +58,9 @@ Rectangle {
4958
5059 onShowPrompt: {
5160 if (text.indexOf("PIN") >= 0) {
52− lockscreen.alphaNumeric = false
61+ pinPadCheckBox.checked = false
5362 } else {
54− lockscreen.alphaNumeric = true
63+ pinPadCheckBox.checked = true
5564 }
5665 lockscreen.placeholderText = text;
5766 }
@@ -65,6 +74,7 @@ Rectangle {
6574 Column {
6675 anchors.fill: parent
6776 anchors.margins: units.gu(1)
77+ spacing: units.gu(1)
6878
6979 Row {
7080 CheckBox {
@@ -86,12 +96,32 @@ Rectangle {
8696 }
8797 Row {
8898 TextField {
89− id: pinLengthTextField
99+ id: minPinLengthTextField
90100 width: units.gu(7)
91101 text: "4"
92102 }
93103 Label {
94− text: "PIN length"
104+ text: "Min PIN length"
105+ }
106+ }
107+ Row {
108+ TextField {
109+ id: maxPinLengthTextField
110+ width: units.gu(7)
111+ text: "4"
112+ }
113+ Label {
114+ text: "Max PIN length"
115+ }
116+ }
117+ Row {
118+ TextField {
119+ id: retryCountTextField
120+ width: units.gu(7)
121+ text: "3 retries left"
122+ }
123+ Label {
124+ text: "Retries left"
95125 }
96126 }
97127 Label {
@@ -108,12 +138,40 @@ Rectangle {
108138 }
109139 Button {
110140 text: "start auth (1234)"
141+ width: parent.width
111142 onClicked: LightDM.Greeter.authenticate("has-pin")
112143 }
113144 Button {
114145 text: "start auth (password)"
146+ width: parent.width
115147 onClicked: LightDM.Greeter.authenticate("has-password")
116148 }
149+
150+ TextField {
151+ id: infoTextTextField
152+ width: parent.width
153+ placeholderText: "Infotext"
154+ text: "+49 179 3253553"
155+ }
156+
157+ TextField {
158+ id: infoPopupTitleTextField
159+ width: parent.width
160+ placeholderText: "Popup title"
161+ text: "This will be the last attempt"
162+ }
163+
164+ TextArea {
165+ id: infoPopupTextArea
166+ width: parent.width
167+ text: "If the SIM PIN is entered incorrectly, your SIM will be blocked and would require the PUK code to unlock."
168+ }
169+
170+ Button {
171+ text: "open info popup"
172+ width: parent.width
173+ onClicked: lockscreen.showInfoPopup(infoPopupTitleTextField.text, infoPopupTextArea.text)
174+ }
117175 }
118176 }
119177
@@ -121,6 +179,16 @@ Rectangle {
121179 name: "Lockscreen"
122180 when: windowShown
123181
182+ function cleanup() {
183+ lockscreen.clear(false);
184+ }
185+
186+ function waitForLockscreenReady() {
187+ var pinPadLoader = findChild(lockscreen, "pinPadLoader");
188+ tryCompare(pinPadLoader, "status", Loader.Ready)
189+ waitForRendering(lockscreen)
190+ }
191+
124192 function test_loading_data() {
125193 return [
126194 {tag: "numeric", alphanumeric: false, pinPadAvailable: true },
@@ -129,8 +197,8 @@ Rectangle {
129197 }
130198
131199 function test_loading(data) {
132− lockscreen.alphaNumeric = data.alphanumeric
133− waitForRendering(lockscreen)
200+ pinPadCheckBox.checked = data.alphanumeric
201+ waitForLockscreenReady();
134202 if (data.pinPadAvailable) {
135203 compare(findChild(lockscreen, "pinPadButton8").text, "8", "Could not find number 8 on PinPad")
136204 } else {
@@ -147,8 +215,8 @@ Rectangle {
147215
148216 function test_emergency_call(data) {
149217 emergencyCheckBox.checked = false
150− lockscreen.alphaNumeric = data.alphanumeric
151− waitForRendering(lockscreen)
218+ pinPadCheckBox.checked = data.alphanumeric
219+ waitForLockscreenReady();
152220 var emergencyButton = findChild(lockscreen, "emergencyCallIcon")
153221 mouseClick(emergencyButton, units.gu(1), units.gu(1))
154222 tryCompare(emergencyCheckBox, "checked", true)
@@ -163,9 +231,9 @@ Rectangle {
163231 }
164232
165233 function test_labels(data) {
166− lockscreen.alphaNumeric = data.alphanumeric
234+ pinPadCheckBox.checked = data.alphanumeric
167235 lockscreen.placeholderText = data.placeholderText
168− waitForRendering(lockscreen)
236+ waitForLockscreenReady();
169237 compare(findChild(lockscreen, "pinentryField").placeholderText, data.placeholderText, "Placeholdertext is not what it should be")
170238 if (data.alphanumeric) {
171239 compare(findChild(lockscreen, "greeterLabel").text, "Hello " + data.username, "Greeter is not set correctly")
@@ -175,23 +243,25 @@ Rectangle {
175243
176244 function test_unlock_data() {
177245 return [
178− {tag: "numeric", alphanumeric: false, username: "has-pin", password: "1234", pinLength: 4},
179− {tag: "alphanumeric", alphanumeric: true, username: "has-password", password: "password", pinLength: -1},
180− {tag: "numeric (wrong)", alphanumeric: false, username: "has-pin", password: "4321", pinLength: 4},
181− {tag: "alphanumeric (wrong)", alphanumeric: true, username: "has-password", password: "drowssap", pinLength: -1},
182− {tag: "flexible length", alphanumeric: false, username: "has-pin", password: "1234", pinLength: -1},
246+ {tag: "numeric", alphanumeric: false, username: "has-pin", password: "1234", minPinLength: 4, maxPinLength: 4},
247+ {tag: "alphanumeric", alphanumeric: true, username: "has-password", password: "password", minPinLength: -1, maxPinLength: -1},
248+ {tag: "numeric (wrong)", alphanumeric: false, username: "has-pin", password: "4321", minPinLength: 4, maxPinLength: 4},
249+ {tag: "alphanumeric (wrong)", alphanumeric: true, username: "has-password", password: "drowssap", minPinLength: -1, maxPinLength: -1},
250+ {tag: "flexible length", alphanumeric: false, username: "has-pin", password: "1234", minPinLength: -1, maxPinLength: -1},
183251 ]
184252 }
185253
186254 function test_unlock(data) {
187255 enteredLabel.text = ""
188− pinLengthTextField.text = data.pinLength
256+ minPinLengthTextField.text = data.minPinLength
257+ maxPinLengthTextField.text = data.maxPinLength
189258 LightDM.Greeter.authenticate(data.username)
190− waitForRendering(lockscreen)
259+ waitForLockscreenReady();
191260
192261 var inputField = findChild(lockscreen, "pinentryField")
193262 if (data.alphanumeric) {
194263 mouseClick(inputField, units.gu(1), units.gu(1))
264+ tryCompare(inputField, "focus", true);
195265 typeString(data.password)
196266 keyClick(Qt.Key_Enter)
197267 } else {
@@ -200,7 +270,7 @@ Rectangle {
200270 var button = findChild(lockscreen, "pinPadButton" + character)
201271 mouseClick(button, units.gu(1), units.gu(1))
202272 }
203− if (data.pinLength == -1) {
273+ if (data.minPinLength !== data.maxPinLength || data.minPinLength == -1) {
204274 var pinPadButtonErase = findChild(lockscreen, "pinPadButtonErase");
205275 mouseClick(pinPadButtonErase, units.gu(1), units.gu(1));
206276 }
@@ -219,11 +289,12 @@ Rectangle {
219289
220290 function test_clear(data) {
221291 pinPadCheckBox.checked = data.alphanumeric
222− waitForRendering(lockscreen)
292+ waitForLockscreenReady();
223293
224294 var inputField = findChild(lockscreen, "pinentryField")
225295 if (data.alphanumeric) {
226296 mouseClick(inputField, units.gu(1), units.gu(1))
297+ tryCompare(inputField, "activeFocus", true);
227298 typeString("1")
228299 } else {
229300 var button = findChild(lockscreen, "pinPadButton1")
@@ -239,6 +310,16 @@ Rectangle {
239310
240311 wait(0) // Trigger event loop to make sure the animation would start running
241312 compare(animation.running, data.animation)
313+ if (data.animation) {
314+ if (data.alphanumeric) {
315+ tryCompare(inputField, "placeholderText", lockscreen.wrongPlaceholderText)
316+ tryCompare(inputField, "placeholderText", lockscreen.placeholderText)
317+ } else {
318+ var label = findChild(lockscreen, "pinentryFieldPlaceHolder");
319+ tryCompare(label, "text", lockscreen.wrongPlaceholderText)
320+ tryCompare(label, "text", lockscreen.placeholderText)
321+ }
322+ }
242323
243324 // wait for animation to finish to not disturb other tests
244325 tryCompare(animation, "running", false)
@@ -246,33 +327,130 @@ Rectangle {
246327
247328 function test_backspace_data() {
248329 return [
249− {tag: "fixed length", pinLength: 4},
250− {tag: "variable length", pinLength: -1}
330+ {tag: "fixed length", minPinLength: 4, maxPinLength: 4},
331+ {tag: "variable undefined length", minPinLength: -1, maxPinLength: -1},
332+ {tag: "variable restricted length", minPinLength: 4, maxPinLength: 8}
251333 ];
252334 }
253335
254336 function test_backspace(data) {
255337 pinPadCheckBox.checked = false
256− pinLengthTextField.text = data.pinLength
257− waitForRendering(lockscreen);
338+ minPinLengthTextField.text = data.minPinLength
339+ maxPinLengthTextField.text = data.maxPinLength
340+ waitForLockscreenReady();
258341
259342 var pinPadButtonErase = findChild(lockscreen, "pinPadButtonErase");
260343 var backspaceIcon = findChild(lockscreen, "backspaceIcon");
261344 var pinEntryField = findChild(lockscreen, "pinentryField");
262345
263− compare(pinPadButtonErase.iconName, data.pinLength == -1 ? "" : "erase");
264− compare(backspaceIcon.visible, data.pinLength == -1);
346+ var autoConfirmEnabled = data.minPinLength === data.maxPinLength && data.minPinLength !== -1;
347+ compare(pinPadButtonErase.iconName, autoConfirmEnabled ? "erase" : "");
348+ compare(backspaceIcon.visible, !autoConfirmEnabled);
265349
266350 var pinPadButton5 = findChild(lockscreen, "pinPadButton5");
267351 mouseClick(pinPadButton5, units.gu(1), units.gu(1));
268352 compare(pinEntryField.text, "5");
269353
270− if (data.pinLength == -1) {
354+ if (data.minPinLength !== data.maxPinLength) {
271355 mouseClick(backspaceIcon, units.gu(1), units.gu(1));
272356 } else {
273357 mouseClick(pinPadButtonErase, units.gu(1), units.gu(1));
274358 }
275359 compare(pinEntryField.text, "");
276360 }
361+
362+ function test_minMaxLength_data() {
363+ return [
364+ {tag: "undefined", minPinLength: -1, maxPinLength: -1},
365+ {tag: "fixed", minPinLength: 4, maxPinLength: 4},
366+ {tag: "variable, limited", minPinLength: 4, maxPinLength: 8},
367+ ];
368+ }
369+
370+ function test_minMaxLength(data) {
371+ pinPadCheckBox.checked = false
372+ minPinLengthTextField.text = data.minPinLength
373+ maxPinLengthTextField.text = data.maxPinLength
374+ waitForLockscreenReady();
375+
376+ var pinPadButton5 = findChild(lockscreen, "pinPadButton5");
377+ var pinPadButtonErase = findChild(lockscreen, "pinPadButtonErase");
378+ var inputField = findChild(lockscreen, "pinentryField")
379+
380+ for (var i = 0; i < 10; i++) {
381+ mouseClick(pinPadButton5, units.gu(1), units.gu(1));
382+
383+ if (data.minPinLength == data.maxPinLength && data.minPinLength != -1) {
384+ // auto confirm mode...
385+ compare(inputField.text.length, (i+1) % data.minPinLength);
386+ } else {
387+ // manual confirm mode
388+ tryCompare(pinPadButtonErase, "enabled", (i+1) >= data.minPinLength)
389+ if (data.maxPinLength == -1) {
390+ compare(inputField.text.length, i+1);
391+ } else {
392+ compare(inputField.text.length, Math.min(data.maxPinLength, i+1));
393+ }
394+
395+ }
396+ }
397+ }
398+
399+ function test_retryDisplay_data() {
400+ return [
401+ {tag: "empty", retryText: "", shown: false},
402+ {tag: "3 retries left", retryText: "3 retries left", shown: true},
403+ ]
404+ }
405+
406+ function test_retryDisplay(data) {
407+ pinPadCheckBox.checked = false
408+ waitForLockscreenReady();
409+
410+ retryCountTextField.text = data.retryText;
411+ var label = findChild(lockscreen, "retryCountLabel")
412+ compare(label.visible, data.shown);
413+ }
414+
415+ function test_infoPopup() {
416+ verify(findChild(root, "infoPopup") === null);
417+ lockscreen.showInfoPopup("foo", "bar");
418+ tryCompareFunction(function() { return findChild(root, "infoPopup") !== null}, true);
419+
420+ var infoPopup = findChild(root, "infoPopup");
421+ compare(infoPopup.title, "foo");
422+ compare(infoPopup.text, "bar");
423+
424+ signalSpy.signalName = "infoPopupConfirmed"
425+ signalSpy.clear();
426+
427+ var okButton = findChild(root, "infoPopupOkButton");
428+ mouseClick(okButton, okButton.width / 2, okButton.height / 2);
429+
430+ tryCompareFunction(function() { return findChild(root, "infoPopup") === null}, true);
431+
432+ tryCompare(signalSpy, "count", 1);
433+ }
434+
435+ function test_infoTextDisplay_data() {
436+ return [
437+ {tag: "empty string", text: "", shown: false},
438+ {tag: "hello world", text: "hello world", shown: true},
439+ ]
440+ }
441+
442+ function test_infoTextDisplay(data) {
443+ pinPadCheckBox.checked = false
444+ waitForLockscreenReady();
445+
446+ infoTextTextField.text = data.text;
447+ var label = findChild(lockscreen, "infoTextLabel")
448+ compare(label.visible, data.shown);
449+ }
450+ }
451+
452+ SignalSpy {
453+ id: signalSpy
454+ target: lockscreen
277455 }
278456}
tests/qmltests/Greeter/tst_Tablet.qml → tests/qmltests/Greeter/tst_MultiGreeter.qmlrenamed+1−1
@@ -61,7 +61,7 @@ Item {
6161 }
6262
6363 UT.UnityTestCase {
64− name: "Greeter"
64+ name: "MultiGreeter"
6565 when: windowShown
6666
6767 function select_index(i) {
tests/qmltests/Greeter/tst_Phone.qml → tests/qmltests/Greeter/tst_SingleGreeter.qmlrenamed+1−19
@@ -33,8 +33,6 @@ Item {
3333 height: parent.height
3434 x: 0; y: 0
3535
36− defaultBackground: Qt.resolvedUrl("../../../qml/graphics/phone_background.jpg")
37−
3836 property int minX: 0
3937
4038 onXChanged: {
@@ -68,7 +66,7 @@ Item {
6866 }
6967
7068 UT.UnityTestCase {
71− name: "Greeter"
69+ name: "SingleGreeter"
7270 when: windowShown
7371
7472 function cleanup() {
@@ -104,22 +102,6 @@ Item {
104102 tryCompare(LightDM.Infographic, "username", "single")
105103 }
106104
107− function test_background_data() {
108− return [
109− {tag: "set", accounts: Qt.resolvedUrl("../../data/unity/backgrounds/blue.png"), expected: "blue.png"},
110− {tag: "unset", accounts: "", expected: "background.jpg"},
111− {tag: "invalid", accounts: "invalid", expected: "background.jpg"},
112− ]
113− }
114−
115− function test_background(data) {
116− var loader = findChild(greeter, "greeterContentLoader")
117− var background = findChild(loader.item, "greeterBackground")
118− AccountsService.backgroundFile = data.accounts
119− tryCompareFunction(function() { return background.source.toString().indexOf(data.expected) !== -1; }, true)
120− tryCompare(background, "status", Image.Ready)
121− }
122−
123105 function test_initial_selected_signal() {
124106 var greeterObj = greeterComponent.createObject(this)
125107 var spy = findChild(greeterObj, "selectedSpy")
tests/qmltests/Notifications/tst_Notifications.qml+29−12
@@ -21,6 +21,7 @@ import "../../../qml/Notifications"
2121import Ubuntu.Components 0.1
2222import Unity.Test 0.1
2323import Unity.Notifications 1.0
24+import QtMultimedia 5.0
2425
2526Row {
2627 id: rootRow
@@ -245,7 +246,8 @@ Row {
245246 nonShapedIcon: false,
246247 secondaryIconVisible: true,
247248 buttonRowVisible: true,
248− buttonTinted: true
249+ buttonTinted: true,
250+ hasSound: false
249251 },
250252 {
251253 tag: "Ephemeral notification - icon-summary layout",
@@ -263,12 +265,15 @@ Row {
263265 nonShapedIcon: false,
264266 secondaryIconVisible: true,
265267 buttonRowVisible: false,
266− buttonTinted: false
268+ buttonTinted: false,
269+ hasSound: false
267270 },
268271 {
269272 tag: "Ephemeral notification - check suppression of secondary icon for icon-summary layout",
270273 type: Notification.Ephemeral,
271− hints: {"x-canonical-private-button-tint": "false"},
274+ hints: {"x-canonical-private-button-tint": "false",
275+ "sound-file": "dummy.ogg",
276+ "suppress-sound": "true"},
272277 summary: "New comment successfully published",
273278 body: "",
274279 icon: "",
@@ -282,12 +287,14 @@ Row {
282287 nonShapedIcon: false,
283288 secondaryIconVisible: true,
284289 buttonRowVisible: false,
285− buttonTinted: false
290+ buttonTinted: false,
291+ hasSound: false
286292 },
287293 {
288294 tag: "Interactive notification",
289295 type: Notification.Interactive,
290− hints: {"x-canonical-private-button-tint": "false"},
296+ hints: {"x-canonical-private-button-tint": "false",
297+ "sound-file": "dummy.ogg"},
291298 summary: "Interactive notification",
292299 body: "This is a notification that can be clicked",
293300 icon: "../graphics/avatars/amanda.png",
@@ -300,12 +307,14 @@ Row {
300307 nonShapedIcon: false,
301308 secondaryIconVisible: false,
302309 buttonRowVisible: false,
303− buttonTinted: false
310+ buttonTinted: false,
311+ hasSound: true
304312 },
305313 {
306314 tag: "Snap Decision without secondary icon and no button-tint",
307315 type: Notification.SnapDecision,
308− hints: {"x-canonical-private-button-tint": "false"},
316+ hints: {"x-canonical-private-button-tint": "false",
317+ "sound-file": "dummy.ogg"},
309318 summary: "Bro Coly",
310319 body: "At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.",
311320 icon: "../graphics/avatars/anna_olsson.png",
@@ -319,12 +328,14 @@ Row {
319328 nonShapedIcon: false,
320329 secondaryIconVisible: false,
321330 buttonRowVisible: true,
322− buttonTinted: false
331+ buttonTinted: false,
332+ hasSound: true
323333 },
324334 {
325335 tag: "Ephemeral notification",
326336 type: Notification.Ephemeral,
327− hints: {"x-canonical-private-button-tint": "false"},
337+ hints: {"x-canonical-private-button-tint": "false",
338+ "sound-file": "dummy.ogg"},
328339 summary: "Cole Raby",
329340 body: "I did not expect it to be that late.",
330341 icon: "../graphics/avatars/funky.png",
@@ -337,13 +348,15 @@ Row {
337348 nonShapedIcon: false,
338349 secondaryIconVisible: true,
339350 buttonRowVisible: false,
340− buttonTinted: false
351+ buttonTinted: false,
352+ hasSound: true
341353 },
342354 {
343355 tag: "Ephemeral notification with non-shaped icon",
344356 type: Notification.Ephemeral,
345357 hints: {"x-canonical-private-button-tint": "false",
346− "x-canonical-non-shaped-icon": "true"},
358+ "x-canonical-non-shaped-icon": "true",
359+ "sound-file": "dummy.ogg"},
347360 summary: "Contacts",
348361 body: "Synchronised contacts-database with cloud-storage.",
349362 icon: "../graphics/applicationIcons/contacts-app.png",
@@ -356,7 +369,8 @@ Row {
356369 nonShapedIcon: true,
357370 secondaryIconVisible: false,
358371 buttonRowVisible: false,
359− buttonTinted: false
372+ buttonTinted: false,
373+ hasSound: true
360374 }
361375 ]
362376 }
@@ -419,6 +433,9 @@ Row {
419433 compare(bodyLabel.visible, data.bodyVisible, "body-text visibility is incorrect")
420434 compare(buttonRow.visible, data.buttonRowVisible, "button visibility is incorrect")
421435
436+ var audioItem = findInvisibleChild(notification, "sound")
437+ tryCompare(audioItem, "playbackState", data.hasSound ? Audio.PlayingState : Audio.StoppedState)
438+
422439 if(data.buttonRowVisible) {
423440 var buttonCancel = findChild(buttonRow, "button1")
424441 var buttonAccept = findChild(buttonRow, "button0")
tests/qmltests/tst_Shell.qml−9
@@ -475,15 +475,6 @@ Item {
475475 } while (!isStill);
476476 }
477477
478− function test_background_data() {
479− return [
480− {tag: "red", url: Qt.resolvedUrl("../data/unity/backgrounds/red.png"), expectedUrl: "tests/data/unity/backgrounds/red.png"},
481− {tag: "blue", url: Qt.resolvedUrl("../data/unity/backgrounds/blue.png"), expectedUrl: "tests/data/unity/backgrounds/blue.png"},
482− {tag: "invalid", url: "invalid", expectedUrl: shell.defaultBackground},
483− {tag: "empty", url: "", expectedUrl: shell.defaultBackground}
484− ]
485− }
486−
487478 function test_DashShown_data() {
488479 return [
489480 {tag: "in focus", greeter: false, app: false, launcher: false, indicators: false, expectedShown: true},