on xenial help sign in
Merge trunk
69f1642Josh Arenson
CMakeLists.txt+2−2
@@ -70,11 +70,11 @@ find_package(Qt5DBus 5.6 REQUIRED)
70find_package(Qt5Concurrent 5.6 REQUIRED)
70find_package(Qt5Concurrent 5.6 REQUIRED)
71find_package(Qt5Sql 5.6 REQUIRED)
71find_package(Qt5Sql 5.6 REQUIRED)
72
72
73−pkg_check_modules(APPLICATION_API REQUIRED unity-shell-application=26)
73+pkg_check_modules(APPLICATION_API REQUIRED unity-shell-application=27)
74pkg_check_modules(GEONAMES REQUIRED geonames>=0.2)
74pkg_check_modules(GEONAMES REQUIRED geonames>=0.2)
75pkg_check_modules(GIO REQUIRED gio-2.0>=2.32)
75pkg_check_modules(GIO REQUIRED gio-2.0>=2.32)
76pkg_check_modules(GLIB REQUIRED glib-2.0>=2.32)
76pkg_check_modules(GLIB REQUIRED glib-2.0>=2.32)
77−pkg_check_modules(LAUNCHER_API REQUIRED unity-shell-launcher=11)
77+pkg_check_modules(LAUNCHER_API REQUIRED unity-shell-launcher=12)
78pkg_check_modules(QMENUMODEL REQUIRED qmenumodel)
78pkg_check_modules(QMENUMODEL REQUIRED qmenumodel)
79pkg_check_modules(GD3 REQUIRED gnome-desktop-3.0)
79pkg_check_modules(GD3 REQUIRED gnome-desktop-3.0)
80pkg_check_modules(UAL REQUIRED ubuntu-app-launch-3)
80pkg_check_modules(UAL REQUIRED ubuntu-app-launch-3)
cmake/modules/QmlTest.cmake+1−1
@@ -201,7 +201,7 @@ function(add_executable_test COMPONENT_NAME TARGET)
201 add_qmltest_target(xvfbtest${COMPONENT_NAME} ${TARGET}
201 add_qmltest_target(xvfbtest${COMPONENT_NAME} ${TARGET}
202 COMMAND $<TARGET_FILE:xvfb-run> --server-args "-screen 0 1024x768x24" --auto-servernum ${qmltest_command}
202 COMMAND $<TARGET_FILE:xvfb-run> --server-args "-screen 0 1024x768x24" --auto-servernum ${qmltest_command}
203 ${depends}
203 ${depends}
204− ENVIRONMENT QML2_IMPORT_PATH=${imports} ${QMLTEST_ENVIRONMENT} LD_PRELOAD=/usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}/mesa/libGL.so.1
204+ ENVIRONMENT QML2_IMPORT_PATH=${imports} LD_PRELOAD=/usr/lib/${CMAKE_LIBRARY_ARCHITECTURE}/mesa/libGL.so.1 ${QMLTEST_ENVIRONMENT}
205 TARGETS ${xvfb_targets}
205 TARGETS ${xvfb_targets}
206 )
206 )
207 endif()
207 endif()
debian/changelog+49
@@ -1,3 +1,52 @@
1+unity8 (8.15+17.04.20170321-0ubuntu1) zesty; urgency=medium
2+
3+ [ Albert Astals Cid ]
4+ * Signal aboutToShow (LP: #1664578)
5+ * Support Panel top level items to be disabled (LP: #1670694)
6+ * Improve Launcher ←→ touch menu interaction (LP: #1667620, #1671069)
7+ * Fix real world submenus (e.g. kate) not getting their first item
8+ selected on open (LP: #1666859)
9+
10+ [ Daniel d'Andrada ]
11+ * Really disable the window decoration when in staged mode (LP:
12+ #1670361)
13+ * Don't let clients resize their surfaces while in staged
14+ (phone/tablet) mode (LP: #1670390)
15+ * TopLevelWindowModel: don't put hidden windows in the model (LP:
16+ #1665286)
17+
18+ [ Lukáš Tinkl ]
19+ * Reset always-show-osk gsetting on startup to default value (false
20+ atm)
21+ * Fix the restored-to position with Miral due to the state changes
22+ being async (LP: #1669819)
23+ * Add a cursor name fallback mapping "grabbing" -> "closedhand" for
24+ Breeze
25+ * Fix unsnapping a maximized window from the panel (LP: #1671721)
26+ * Disable altDrag feature outside windowed mode
27+
28+ [ Michael Terry ]
29+ * Don't lock the screen for guest users or users in the nopasswdlogin
30+ group. (LP: #1644237)
31+ * Support GNOME-style logout DBus API (making the Logout, Reboot, and
32+ Shutdown launcher commands work) (LP: #1673229)
33+
34+ [ Michael Zanetti ]
35+ * Add support for closing apps from the spread with "Q" (LP: #1670327)
36+ * hide "private" launcher quicklist entries when the greeter is locked
37+ (LP: #1667649)
38+ * add surface titles to launcher's quicklist (LP: #1661668)
39+ * properly reset the drawer state when cancelling a horizontal drag
40+ (LP: #1669536)
41+ * fix the focus moving correctly between launcher and drawer (LP:
42+ #1669880)
43+ * unfocus the drawer's textfield when it is moved (LP: #1669839)
44+
45+ [ Pete Woods ]
46+ * Fix up indicators-client after refactoring (LP: #1672797)
47+
48+ -- Michał Sawicz <michal.sawicz@canonical.com> Tue, 21 Mar 2017 10:58:13 +0000
49+
1unity8 (8.15+17.04.20170308-0ubuntu1) zesty; urgency=medium
50unity8 (8.15+17.04.20170308-0ubuntu1) zesty; urgency=medium
2
51
3 [ Albert Astals Cid ]
52 [ Albert Astals Cid ]
debian/control+6−6
@@ -28,7 +28,7 @@ Build-Depends: cmake,
28 liblightdm-qt5-3-dev,
28 liblightdm-qt5-3-dev,
29 libpam0g-dev,
29 libpam0g-dev,
30 libpulse-dev,
30 libpulse-dev,
31− libqmenumodel-dev (>= 0.2.11),
31+ libqmenumodel-dev (>= 0.2.12),
32 libqt5svg5-dev,
32 libqt5svg5-dev,
33 libqt5xmlpatterns5-dev,
33 libqt5xmlpatterns5-dev,
34 libsystemsettings-dev,
34 libsystemsettings-dev,
@@ -38,7 +38,7 @@ Build-Depends: cmake,
38 libubuntugestures5-private-dev (>= 1.3.2030),
38 libubuntugestures5-private-dev (>= 1.3.2030),
39 libudev-dev,
39 libudev-dev,
40 libudm-common-dev,
40 libudm-common-dev,
41− libunity-api-dev (>= 8.2),
41+ libunity-api-dev (>= 8.6),
42 libusermetricsoutput1-dev,
42 libusermetricsoutput1-dev,
43# Need those X11 libs touch emulation from mouse events in manual QML tests on a X11 desktop
43# Need those X11 libs touch emulation from mouse events in manual QML tests on a X11 desktop
44 libx11-dev[!arm64 !armhf],
44 libx11-dev[!arm64 !armhf],
@@ -132,7 +132,7 @@ Depends: dmz-cursor-theme,
132 qtdeclarative5-qtmir-plugin (>= 0.4.8),
132 qtdeclarative5-qtmir-plugin (>= 0.4.8),
133 qtdeclarative5-ubuntu-telephony0.1,
133 qtdeclarative5-ubuntu-telephony0.1,
134 ubuntu-system-settings (>= 0.4),
134 ubuntu-system-settings (>= 0.4),
135− unity-launcher-impl-10,
135+ unity-launcher-impl-12,
136 unity8-common (= ${source:Version}),
136 unity8-common (= ${source:Version}),
137 unity8-private (= ${binary:Version}),
137 unity8-private (= ${binary:Version}),
138 unity8-private | unity-launcher-impl,
138 unity8-private | unity-launcher-impl,
@@ -162,7 +162,7 @@ Depends: qml-module-qtquick-layouts,
162 qttranslations5-l10n,
162 qttranslations5-l10n,
163 ubuntu-thumbnailer-impl-0,
163 ubuntu-thumbnailer-impl-0,
164 ubuntu-wallpapers,
164 ubuntu-wallpapers,
165− unity-application-impl-26,
165+ unity-application-impl-27,
166 unity-notifications-impl-3,
166 unity-notifications-impl-3,
167 unity-plugin-scopes | unity-scopes-impl,
167 unity-plugin-scopes | unity-scopes-impl,
168 unity-scopes-impl-12,
168 unity-scopes-impl-12,
@@ -212,7 +212,7 @@ Depends: dbus-test-runner,
212 ${misc:Depends},
212 ${misc:Depends},
213 ${shlibs:Depends},
213 ${shlibs:Depends},
214Provides: unity-application-impl,
214Provides: unity-application-impl,
215− unity-application-impl-26,
215+ unity-application-impl-27,
216 unity8-fake-env,
216 unity8-fake-env,
217Replaces: unity8-autopilot (<< 8.02+15.04.20150422-0ubuntu1),
217Replaces: unity8-autopilot (<< 8.02+15.04.20150422-0ubuntu1),
218 unity8-fake-env,
218 unity8-fake-env,
@@ -235,7 +235,7 @@ Depends: accountsservice-ubuntu-schemas (>= 0.0.7),
235 ${misc:Depends},
235 ${misc:Depends},
236 ${shlibs:Depends},
236 ${shlibs:Depends},
237Provides: unity-launcher-impl,
237Provides: unity-launcher-impl,
238− unity-launcher-impl-10,
238+ unity-launcher-impl-12,
239Description: Unity 8 private libs
239Description: Unity 8 private libs
240 The Unity 8 shell is the primary user interface for Ubuntu devices.
240 The Unity 8 shell is the primary user interface for Ubuntu devices.
241 .
241 .
plugins/Cursor/CursorImageProvider.cpp+2
@@ -174,6 +174,8 @@ CursorImageProvider::CursorImageProvider()
174 m_fallbackNames[QStringLiteral("forbidden")].append(QStringLiteral("not-allowed"));
174 m_fallbackNames[QStringLiteral("forbidden")].append(QStringLiteral("not-allowed"));
175 m_fallbackNames[QStringLiteral("forbidden")].append(QStringLiteral("circle"));
175 m_fallbackNames[QStringLiteral("forbidden")].append(QStringLiteral("circle"));
176
176
177+ m_fallbackNames[QStringLiteral("grabbing")].append(QStringLiteral("closedhand")); // Breeze
178+
177 m_fallbackNames[QStringLiteral("hand")].append(QStringLiteral("pointing_hand"));
179 m_fallbackNames[QStringLiteral("hand")].append(QStringLiteral("pointing_hand"));
178 m_fallbackNames[QStringLiteral("hand")].append(QStringLiteral("pointer"));
180 m_fallbackNames[QStringLiteral("hand")].append(QStringLiteral("pointer"));
179
181
plugins/Greeter/Unity/Launcher/quicklistmodel.cpp+2
@@ -65,6 +65,8 @@ QVariant QuickListModel::data(const QModelIndex &index, int role) const
65 return m_list.at(index.row()).icon();
65 return m_list.at(index.row()).icon();
66 case RoleClickable:
66 case RoleClickable:
67 return m_list.at(index.row()).clickable();
67 return m_list.at(index.row()).clickable();
68+ case RoleIsPrivate:
69+ return false; // The greeter plugin would just not add any private entries
68 }
70 }
69 return QVariant();
71 return QVariant();
70}
72}
plugins/Unity/Launcher/CMakeLists.txt+2
@@ -30,6 +30,8 @@ set(QMLLAUNCHERPLUGIN_SRC
30 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationManagerInterface.h
30 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationManagerInterface.h
31 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationInfoInterface.h
31 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationInfoInterface.h
32 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirSurfaceListInterface.h
32 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirSurfaceListInterface.h
33+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirSurfaceInterface.h
34+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/Mir.h
33 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherItemInterface.h
35 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherItemInterface.h
34 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherModelInterface.h
36 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherModelInterface.h
35 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/QuickListModelInterface.h
37 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/QuickListModelInterface.h
plugins/Unity/Launcher/launcheritem.cpp+30−6
@@ -35,7 +35,6 @@ LauncherItem::LauncherItem(const QString &appId, const QString &name, const QStr
35 m_countVisible(false),
35 m_countVisible(false),
36 m_focused(false),
36 m_focused(false),
37 m_alerting(false),
37 m_alerting(false),
38− m_surfaceCount(0),
39 m_quickList(new QuickListModel(this))
38 m_quickList(new QuickListModel(this))
40{
39{
41 Q_ASSERT(parent != nullptr);
40 Q_ASSERT(parent != nullptr);
@@ -48,11 +47,13 @@ LauncherItem::LauncherItem(const QString &appId, const QString &name, const QStr
48 QuickListEntry pinningAction;
47 QuickListEntry pinningAction;
49 pinningAction.setActionId(QStringLiteral("pin_item"));
48 pinningAction.setActionId(QStringLiteral("pin_item"));
50 pinningAction.setText(gettext("Pin shortcut"));
49 pinningAction.setText(gettext("Pin shortcut"));
50+ pinningAction.setIsPrivate(true);
51 m_quickList->appendAction(pinningAction);
51 m_quickList->appendAction(pinningAction);
52
52
53 m_quitAction.setActionId(QStringLiteral("stop_item"));
53 m_quitAction.setActionId(QStringLiteral("stop_item"));
54 m_quitAction.setIcon(QStringLiteral("application-exit"));
54 m_quitAction.setIcon(QStringLiteral("application-exit"));
55 m_quitAction.setText(gettext("Quit"));
55 m_quitAction.setText(gettext("Quit"));
56+ m_quitAction.setIsPrivate(true);
56}
57}
57
58
58QString LauncherItem::appId() const
59QString LauncherItem::appId() const
@@ -120,6 +121,7 @@ void LauncherItem::setPinned(bool pinned)
120 QuickListEntry entry;
121 QuickListEntry entry;
121 entry.setActionId(QStringLiteral("pin_item"));
122 entry.setActionId(QStringLiteral("pin_item"));
122 entry.setText(pinned ? gettext("Unpin shortcut") : gettext("Pin shortcut"));
123 entry.setText(pinned ? gettext("Unpin shortcut") : gettext("Pin shortcut"));
124+ entry.setIsPrivate(true);
123 m_quickList->updateAction(entry);
125 m_quickList->updateAction(entry);
124}
126}
125
127
@@ -221,14 +223,36 @@ void LauncherItem::setAlerting(bool alerting)
221
223
222int LauncherItem::surfaceCount() const
224int LauncherItem::surfaceCount() const
223{
225{
224− return m_surfaceCount;
226+ return m_surfaces.count();
225}
227}
226
228
227−void LauncherItem::setSurfaceCount(int surfaceCount)
229+void LauncherItem::setSurfaces(const QList<QPair<QString, QString> > &surfaces)
228{
230{
229− if (m_surfaceCount != surfaceCount) {
231+ if (m_surfaces != surfaces) {
230− m_surfaceCount = surfaceCount;
232+ m_surfaces = surfaces;
233+
234+ QList<QuickListEntry> removedEntries;
235+ for (int i = 0; i < m_quickList->rowCount(); ++i) {
236+ QuickListEntry entry = m_quickList->get(i);
237+ if (entry.actionId().startsWith(QStringLiteral("surface_"))) {
238+ removedEntries.append(entry);
239+ }
240+ }
241+ Q_FOREACH (const QuickListEntry &entry, removedEntries) {
242+ m_quickList->removeAction(entry);
243+ }
244+ for (int i = 0; i < surfaces.count(); ++i) {
245+ QuickListEntry entry;
246+ entry.setActionId(QStringLiteral("surface_") + surfaces.at(i).first);
247+ entry.setText(surfaces.at(i).second);
248+ entry.setIsPrivate(true);
249+ if (i == surfaces.count() - 1) {
250+ entry.setHasSeparator(true);
251+ }
252+ m_quickList->insertAction(entry, i + 1);
253+ }
254+
231− Q_EMIT surfaceCountChanged(surfaceCount);
255+ Q_EMIT surfaceCountChanged(m_surfaces.count());
232 }
256 }
233}
257}
234
258
plugins/Unity/Launcher/launcheritem.h+3−2
@@ -23,6 +23,7 @@
23#include "quicklistmodel.h"
23#include "quicklistmodel.h"
24
24
25#include <unity/shell/launcher/LauncherItemInterface.h>
25#include <unity/shell/launcher/LauncherItemInterface.h>
26+#include <unity/shell/application/MirSurfaceInterface.h>
26
27
27class QuickListModel;
28class QuickListModel;
28
29
@@ -62,7 +63,7 @@ private:
62 void setCountVisible(bool countVisible);
63 void setCountVisible(bool countVisible);
63 void setFocused(bool focused);
64 void setFocused(bool focused);
64 void setAlerting(bool alerting);
65 void setAlerting(bool alerting);
65− void setSurfaceCount(int surfaceCount);
66+ void setSurfaces(const QList<QPair<QString, QString >> &surfaces);
66
67
67private:
68private:
68 QString m_appId;
69 QString m_appId;
@@ -77,7 +78,7 @@ private:
77 bool m_countVisible;
78 bool m_countVisible;
78 bool m_focused;
79 bool m_focused;
79 bool m_alerting;
80 bool m_alerting;
80− int m_surfaceCount;
81+ QList<QPair<QString, QString> > m_surfaces;
81 QuickListModel *m_quickList;
82 QuickListModel *m_quickList;
82 QuickListEntry m_quitAction;
83 QuickListEntry m_quitAction;
83
84
plugins/Unity/Launcher/launchermodel.cpp+47−14
@@ -23,6 +23,7 @@
23
23
24#include <unity/shell/application/ApplicationInfoInterface.h>
24#include <unity/shell/application/ApplicationInfoInterface.h>
25#include <unity/shell/application/MirSurfaceListInterface.h>
25#include <unity/shell/application/MirSurfaceListInterface.h>
26+#include <unity/shell/application/MirSurfaceInterface.h>
26
27
27#include <QDesktopServices>
28#include <QDesktopServices>
28#include <QDebug>
29#include <QDebug>
@@ -198,12 +199,25 @@ void LauncherModel::quickListActionInvoked(const QString &appId, int actionIndex
198 } else {
199 } else {
199 pin(appId);
200 pin(appId);
200 }
201 }
201− } else if (actionId == QLatin1String("launch_item")) {
202+ } else if (actionId == QStringLiteral("launch_item")) {
202 QDesktopServices::openUrl(getUrlForAppId(appId));
203 QDesktopServices::openUrl(getUrlForAppId(appId));
203− } else if (actionId == QLatin1String("stop_item")) { // Quit
204+ } else if (actionId == QStringLiteral("stop_item")) { // Quit
204 if (m_appManager) {
205 if (m_appManager) {
205 m_appManager->stopApplication(appId);
206 m_appManager->stopApplication(appId);
206 }
207 }
208+ } else if (actionId.startsWith(QStringLiteral("surface_"))){
209+ ApplicationInfoInterface *appInfo = m_appManager->findApplication(appId);
210+ if (!appInfo) {
211+ qWarning() << "App for" << appId << "not found in launcher. Cannot invoke quicklist action";
212+ }
213+ for (int i = 0; i < appInfo->surfaceList()->count(); ++i) {
214+ MirSurfaceInterface *iface = appInfo->surfaceList()->get(i);
215+ QString id = actionId;
216+ id.remove(QRegExp("^surface_"));
217+ if (id == iface->persistentId()) {
218+ iface->activate();
219+ }
220+ }
207 // Nope, we don't know this action, let the backend forward it to the application
221 // Nope, we don't know this action, let the backend forward it to the application
208 } else {
222 } else {
209 // TODO: forward quicklist action to app, possibly via m_dbusIface
223 // TODO: forward quicklist action to app, possibly via m_dbusIface
@@ -517,40 +531,59 @@ void LauncherModel::applicationAdded(const QModelIndex &parent, int row)
517 item->setRecent(true);
531 item->setRecent(true);
518 Q_EMIT dataChanged(index(itemIndex), index(itemIndex), {RoleRecent});
532 Q_EMIT dataChanged(index(itemIndex), index(itemIndex), {RoleRecent});
519 }
533 }
520− if (item->surfaceCount() != app->surfaceCount()) {
521− item->setSurfaceCount(app->surfaceCount());
522− Q_EMIT dataChanged(index(itemIndex), index(itemIndex), {RoleSurfaceCount});
523− }
524−
525 item->setRunning(true);
534 item->setRunning(true);
526 } else {
535 } else {
527 LauncherItem *item = new LauncherItem(app->appId(), app->name(), app->icon().toString(), this);
536 LauncherItem *item = new LauncherItem(app->appId(), app->name(), app->icon().toString(), this);
528 item->setRecent(true);
537 item->setRecent(true);
529 item->setRunning(true);
538 item->setRunning(true);
530 item->setFocused(app->focused());
539 item->setFocused(app->focused());
531− item->setSurfaceCount(app->surfaceCount());
532 beginInsertRows(QModelIndex(), m_list.count(), m_list.count());
540 beginInsertRows(QModelIndex(), m_list.count(), m_list.count());
533 m_list.append(item);
541 m_list.append(item);
534 endInsertRows();
542 endInsertRows();
535 }
543 }
536− connect(app, &ApplicationInfoInterface::surfaceCountChanged, this, &LauncherModel::applicationSurfaceCountChanged);
544+ connect(app, &ApplicationInfoInterface::surfaceCountChanged, this, &LauncherModel::updateSurfaceList);
537 m_asAdapter->syncItems(m_list);
545 m_asAdapter->syncItems(m_list);
538 Q_EMIT dataChanged(index(itemIndex), index(itemIndex), {RoleRunning});
546 Q_EMIT dataChanged(index(itemIndex), index(itemIndex), {RoleRunning});
539}
547}
540
548
541−void LauncherModel::applicationSurfaceCountChanged(int count)
549+void LauncherModel::updateSurfaceList()
542{
550{
543 ApplicationInfoInterface *app = static_cast<ApplicationInfoInterface*>(sender());
551 ApplicationInfoInterface *app = static_cast<ApplicationInfoInterface*>(sender());
552+ updateSurfaceListForApp(app);
553+}
554+
555+void LauncherModel::updateSurfaceListForSurface()
556+{
557+ MirSurfaceInterface *iface = static_cast<MirSurfaceInterface*>(sender());
558+ ApplicationInfoInterface* app = m_appManager->findApplication(iface->appId());
559+ if (!app) {
560+ return;
561+ }
562+ updateSurfaceListForApp(app);
563+}
564+
565+void LauncherModel::updateSurfaceListForApp(ApplicationInfoInterface* app)
566+{
544 int idx = findApplication(app->appId());
567 int idx = findApplication(app->appId());
545 if (idx < 0) {
568 if (idx < 0) {
546 qWarning() << "Received a surface count changed event from an app that's not in the Launcher model";
569 qWarning() << "Received a surface count changed event from an app that's not in the Launcher model";
547 return;
570 return;
548 }
571 }
549 LauncherItem *item = m_list.at(idx);
572 LauncherItem *item = m_list.at(idx);
550− if (item->surfaceCount() != count) {
573+ QList<QPair<QString, QString> > surfaces;
551− item->setSurfaceCount(count);
574+ for (int i = 0; i < app->surfaceList()->count(); ++i) {
552− Q_EMIT dataChanged(index(idx), index(idx), {RoleSurfaceCount});
575+ MirSurfaceInterface* iface = app->surfaceList()->get(i);
576+ // Avoid duplicate connections, so let's just disconnect first to be sure
577+ disconnect(iface, &MirSurfaceInterface::nameChanged, this, &LauncherModel::updateSurfaceListForSurface);
578+ connect(iface, &MirSurfaceInterface::nameChanged, this, &LauncherModel::updateSurfaceListForSurface);
579+ QString name = iface->name();
580+ if (name.isEmpty()) {
581+ name = app->name();
582+ }
583+ surfaces.append({iface->persistentId(), name});
553 }
584 }
585+ item->setSurfaces(surfaces);
586+ Q_EMIT dataChanged(index(idx), index(idx), {RoleSurfaceCount});
554}
587}
555
588
556void LauncherModel::applicationRemoved(const QModelIndex &parent, int row)
589void LauncherModel::applicationRemoved(const QModelIndex &parent, int row)
@@ -571,7 +604,7 @@ void LauncherModel::applicationRemoved(const QModelIndex &parent, int row)
571 return;
604 return;
572 }
605 }
573
606
574− disconnect(app, &ApplicationInfoInterface::surfaceCountChanged, this, &LauncherModel::applicationSurfaceCountChanged);
607+ disconnect(app, &ApplicationInfoInterface::surfaceCountChanged, this, &LauncherModel::updateSurfaceList);
575
608
576 LauncherItem * item = m_list.at(appIndex);
609 LauncherItem * item = m_list.at(appIndex);
577
610
plugins/Unity/Launcher/launchermodel.h+3−1
@@ -75,7 +75,9 @@ private Q_SLOTS:
75 void applicationAdded(const QModelIndex &parent, int row);
75 void applicationAdded(const QModelIndex &parent, int row);
76 void applicationRemoved(const QModelIndex &parent, int row);
76 void applicationRemoved(const QModelIndex &parent, int row);
77 void focusedAppIdChanged();
77 void focusedAppIdChanged();
78− void applicationSurfaceCountChanged(int);
78+ void updateSurfaceList();
79+ void updateSurfaceListForApp(ApplicationInfoInterface *app);
80+ void updateSurfaceListForSurface();
79
81
80private:
82private:
81 QList<LauncherItem*> m_list;
83 QList<LauncherItem*> m_list;
plugins/Unity/Launcher/quicklistentry.cpp+11
@@ -20,6 +20,7 @@
20
20
21QuickListEntry::QuickListEntry()
21QuickListEntry::QuickListEntry()
22 : m_hasSeparator(false)
22 : m_hasSeparator(false)
23+ , m_isPrivate(false)
23{
24{
24}
25}
25
26
@@ -72,3 +73,13 @@ bool QuickListEntry::operator==(const QuickListEntry &other)
72{
73{
73 return !other.actionId().isEmpty() && other.actionId() == m_actionId;
74 return !other.actionId().isEmpty() && other.actionId() == m_actionId;
74}
75}
76+
77+bool QuickListEntry::isPrivate() const
78+{
79+ return m_isPrivate;
80+}
81+
82+void QuickListEntry::setIsPrivate(bool isPrivate)
83+{
84+ m_isPrivate = isPrivate;
85+}
plugins/Unity/Launcher/quicklistentry.h+4
@@ -42,11 +42,15 @@ public:
42
42
43 bool operator==(const QuickListEntry & other);
43 bool operator==(const QuickListEntry & other);
44
44
45+ bool isPrivate() const;
46+ void setIsPrivate(bool isPrivate);
47+
45private:
48private:
46 QString m_actionId;
49 QString m_actionId;
47 QString m_text;
50 QString m_text;
48 QString m_icon;
51 QString m_icon;
49 bool m_hasSeparator;
52 bool m_hasSeparator;
53+ bool m_isPrivate;
50};
54};
51
55
52#endif // QUICKLISTENTRY
56#endif // QUICKLISTENTRY
plugins/Unity/Launcher/quicklistmodel.cpp+9
@@ -37,6 +37,13 @@ void QuickListModel::appendAction(const QuickListEntry &entry)
37 endInsertRows();
37 endInsertRows();
38}
38}
39
39
40+void QuickListModel::insertAction(const QuickListEntry &entry, int index)
41+{
42+ beginInsertRows(QModelIndex(), index, index);
43+ m_list.insert(index, entry);
44+ endInsertRows();
45+}
46+
40void QuickListModel::updateAction(const QuickListEntry &entry)
47void QuickListModel::updateAction(const QuickListEntry &entry)
41{
48{
42 for (int i = 0; i < m_list.count(); ++i) {
49 for (int i = 0; i < m_list.count(); ++i) {
@@ -81,6 +88,8 @@ QVariant QuickListModel::data(const QModelIndex &index, int role) const
81 return m_list.at(index.row()).clickable();
88 return m_list.at(index.row()).clickable();
82 case RoleHasSeparator:
89 case RoleHasSeparator:
83 return m_list.at(index.row()).hasSeparator();
90 return m_list.at(index.row()).hasSeparator();
91+ case RoleIsPrivate:
92+ return m_list.at(index.row()).isPrivate();
84 }
93 }
85 return QVariant();
94 return QVariant();
86}
95}
plugins/Unity/Launcher/quicklistmodel.h+1
@@ -36,6 +36,7 @@ public:
36 ~QuickListModel();
36 ~QuickListModel();
37
37
38 void appendAction(const QuickListEntry &entry);
38 void appendAction(const QuickListEntry &entry);
39+ void insertAction(const QuickListEntry &entry, int index);
39
40
40 /**
41 /**
41 * @brief Update an existing action
42 * @brief Update an existing action
plugins/Unity/Session/dbusunitysessionservice.cpp+75−4
@@ -18,6 +18,7 @@
18#include "dbusunitysessionservice.h"
18#include "dbusunitysessionservice.h"
19
19
20// system
20// system
21+#include <grp.h>
21#include <sys/types.h>
22#include <sys/types.h>
22#include <unistd.h>
23#include <unistd.h>
23#include <pwd.h>
24#include <pwd.h>
@@ -211,6 +212,23 @@ public:
211 QDBusConnection::SM_BUSNAME().asyncCall(msg);
212 QDBusConnection::SM_BUSNAME().asyncCall(msg);
212 }
213 }
213
214
215+ bool isUserInGroup(const QString &user, const QString &groupName) const
216+ {
217+ auto group = getgrnam(groupName.toUtf8().data());
218+
219+ if (group && group->gr_mem)
220+ {
221+ for (int i = 0; group->gr_mem[i]; ++i)
222+ {
223+ if (g_strcmp0(group->gr_mem[i], user.toUtf8().data()) == 0) {
224+ return true;
225+ }
226+ }
227+ }
228+
229+ return false;
230+ }
231+
214private Q_SLOTS:
232private Q_SLOTS:
215 void onPropertiesChanged(const QString &iface, const QVariantMap &changedProps, const QStringList &invalidatedProps)
233 void onPropertiesChanged(const QString &iface, const QVariantMap &changedProps, const QStringList &invalidatedProps)
216 {
234 {
@@ -297,7 +315,13 @@ bool DBusUnitySessionService::CanShutdown() const
297
315
298bool DBusUnitySessionService::CanLock() const
316bool DBusUnitySessionService::CanLock() const
299{
317{
318+ auto user = UserName();
319+ if (user.startsWith(QStringLiteral("guest-")) ||
320+ d->isUserInGroup(user, QStringLiteral("nopasswdlogin"))) {
321+ return false;
322+ } else {
300− return true; // FIXME
323+ return true;
324+ }
301}
325}
302
326
303QString DBusUnitySessionService::UserName() const
327QString DBusUnitySessionService::UserName() const
@@ -335,8 +359,10 @@ void DBusUnitySessionService::PromptLock()
335 // Prompt as in quick. No locking animation needed. Usually used by
359 // Prompt as in quick. No locking animation needed. Usually used by
336 // indicator-session in combination with a switch to greeter or other
360 // indicator-session in combination with a switch to greeter or other
337 // user session.
361 // user session.
362+ if (CanLock()) {
338− Q_EMIT LockRequested();
363+ Q_EMIT LockRequested();
339− Q_EMIT lockRequested();
364+ Q_EMIT lockRequested();
365+ }
340}
366}
341
367
342void DBusUnitySessionService::Lock()
368void DBusUnitySessionService::Lock()
@@ -468,11 +494,56 @@ void performAsyncUnityCall(const QString &method)
468
494
469
495
470DBusGnomeSessionManagerWrapper::DBusGnomeSessionManagerWrapper()
496DBusGnomeSessionManagerWrapper::DBusGnomeSessionManagerWrapper()
497+ : UnityDBusObject(QStringLiteral("/org/gnome/SessionManager"), QStringLiteral("org.gnome.SessionManager"))
498+{
499+}
500+
501+void DBusGnomeSessionManagerWrapper::Logout(quint32 mode)
502+{
503+ auto call = QStringLiteral("RequestLogout");
504+
505+ // These modes are documented as bitwise flags, not an enum, even though
506+ // they only ever seem to be used as enums.
507+
508+ if (mode & 1) // without dialog
509+ call = QStringLiteral("Logout");
510+ if (mode & 2) // without dialog, ignoring inhibitors (which we don't have)
511+ call = QStringLiteral("Logout");
512+
513+ performAsyncUnityCall(call);
514+}
515+
516+void DBusGnomeSessionManagerWrapper::Reboot()
517+{
518+ // GNOME's Reboot means with dialog (they use Request differently than us).
519+ performAsyncUnityCall(QStringLiteral("RequestReboot"));
520+}
521+
522+void DBusGnomeSessionManagerWrapper::RequestReboot()
523+{
524+ // GNOME's RequestReboot means no dialog (they use Request differently than us).
525+ performAsyncUnityCall(QStringLiteral("Reboot"));
526+}
527+
528+void DBusGnomeSessionManagerWrapper::RequestShutdown()
529+{
530+ // GNOME's RequestShutdown means no dialog (they use Request differently than us).
531+ performAsyncUnityCall(QStringLiteral("Shutdown"));
532+}
533+
534+void DBusGnomeSessionManagerWrapper::Shutdown()
535+{
536+ // GNOME's Shutdown means with dialog (they use Request differently than us).
537+ performAsyncUnityCall(QStringLiteral("RequestShutdown"));
538+}
539+
540+
541+DBusGnomeSessionManagerDialogWrapper::DBusGnomeSessionManagerDialogWrapper()
471 : UnityDBusObject(QStringLiteral("/org/gnome/SessionManager/EndSessionDialog"), QStringLiteral("com.canonical.Unity"))
542 : UnityDBusObject(QStringLiteral("/org/gnome/SessionManager/EndSessionDialog"), QStringLiteral("com.canonical.Unity"))
472{
543{
473}
544}
474
545
475−void DBusGnomeSessionManagerWrapper::Open(const unsigned type, const unsigned arg_1, const unsigned max_wait, const QList<QDBusObjectPath> &inhibitors)
546+void DBusGnomeSessionManagerDialogWrapper::Open(const unsigned type, const unsigned arg_1, const unsigned max_wait, const QList<QDBusObjectPath> &inhibitors)
476{
547{
477 Q_UNUSED(arg_1);
548 Q_UNUSED(arg_1);
478 Q_UNUSED(max_wait);
549 Q_UNUSED(max_wait);
plugins/Unity/Session/dbusunitysessionservice.h+18−4
@@ -270,17 +270,31 @@ private:
270class DBusGnomeSessionManagerWrapper : public UnityDBusObject
270class DBusGnomeSessionManagerWrapper : public UnityDBusObject
271{
271{
272 Q_OBJECT
272 Q_OBJECT
273− Q_CLASSINFO("D-Bus Interface", "org.gnome.SessionManager.EndSessionDialog")
273+ Q_CLASSINFO("D-Bus Interface", "org.gnome.SessionManager")
274
274
275public:
275public:
276 DBusGnomeSessionManagerWrapper();
276 DBusGnomeSessionManagerWrapper();
277 ~DBusGnomeSessionManagerWrapper() = default;
277 ~DBusGnomeSessionManagerWrapper() = default;
278
278
279public Q_SLOTS:
279public Q_SLOTS:
280− Q_SCRIPTABLE void Open(const unsigned int type, const unsigned int arg_1, const unsigned int max_wait, const QList<QDBusObjectPath> &inhibitors);
280+ Q_SCRIPTABLE void Logout(quint32 mode);
281+ Q_SCRIPTABLE void Reboot();
282+ Q_SCRIPTABLE void RequestReboot();
283+ Q_SCRIPTABLE void RequestShutdown();
284+ Q_SCRIPTABLE void Shutdown();
285+};
281
286
282−private:
287+class DBusGnomeSessionManagerDialogWrapper : public UnityDBusObject
283− void performAsyncCall(const QString &method);
288+{
289+ Q_OBJECT
290+ Q_CLASSINFO("D-Bus Interface", "org.gnome.SessionManager.EndSessionDialog")
291+
292+public:
293+ DBusGnomeSessionManagerDialogWrapper();
294+ ~DBusGnomeSessionManagerDialogWrapper() = default;
295+
296+public Q_SLOTS:
297+ Q_SCRIPTABLE void Open(const unsigned int type, const unsigned int arg_1, const unsigned int max_wait, const QList<QDBusObjectPath> &inhibitors);
284};
298};
285
299
286class DBusGnomeScreensaverWrapper: public UnityDBusObject
300class DBusGnomeScreensaverWrapper: public UnityDBusObject
plugins/Utils/CMakeLists.txt+1
@@ -36,6 +36,7 @@ set(QMLPLUGIN_SRC
36 URLDispatcher.cpp
36 URLDispatcher.cpp
37 tabfocusfence.cpp
37 tabfocusfence.cpp
38 expressionfiltermodel.cpp
38 expressionfiltermodel.cpp
39+ quicklistproxymodel.cpp
39 plugin.cpp
40 plugin.cpp
40 )
41 )
41
42
plugins/Utils/plugin.cpp+2
@@ -42,6 +42,7 @@
42#include "appdrawerproxymodel.h"
42#include "appdrawerproxymodel.h"
43#include "tabfocusfence.h"
43#include "tabfocusfence.h"
44#include "expressionfiltermodel.h"
44#include "expressionfiltermodel.h"
45+#include "quicklistproxymodel.h"
45
46
46static QObject *createWindowStateStorage(QQmlEngine *engine, QJSEngine *scriptEngine)
47static QObject *createWindowStateStorage(QQmlEngine *engine, QJSEngine *scriptEngine)
47{
48{
@@ -88,4 +89,5 @@ void UtilsPlugin::registerTypes(const char *uri)
88 qmlRegisterType<AppDrawerProxyModel>(uri, 0, 1, "AppDrawerProxyModel");
89 qmlRegisterType<AppDrawerProxyModel>(uri, 0, 1, "AppDrawerProxyModel");
89 qmlRegisterType<TabFocusFenceItem>(uri, 0, 1, "TabFocusFence");
90 qmlRegisterType<TabFocusFenceItem>(uri, 0, 1, "TabFocusFence");
90 qmlRegisterType<ExpressionFilterModel>(uri, 0, 1, "ExpressionFilterModel");
91 qmlRegisterType<ExpressionFilterModel>(uri, 0, 1, "ExpressionFilterModel");
92+ qmlRegisterType<QuickListProxyModel>(uri, 0, 1, "QuickListProxyModel");
91}
93}
plugins/Utils/quicklistproxymodel.cppnew file+72
@@ -0,0 +1,72 @@
1+/*
2+ * Copyright (C) 2017 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 "quicklistproxymodel.h"
18+
19+#include <QDebug>
20+
21+QuickListProxyModel::QuickListProxyModel(QObject *parent):
22+ QSortFilterProxyModel(parent)
23+{
24+ connect(this, &QAbstractListModel::rowsInserted, this, &QuickListProxyModel::countChanged);
25+ connect(this, &QAbstractListModel::rowsRemoved, this, &QuickListProxyModel::countChanged);
26+ connect(this, &QAbstractListModel::layoutChanged, this, &QuickListProxyModel::countChanged);
27+}
28+
29+QAbstractItemModel *QuickListProxyModel::source() const
30+{
31+ return m_source;
32+}
33+
34+bool QuickListProxyModel::privateMode() const
35+{
36+ return m_privateMode;
37+}
38+
39+void QuickListProxyModel::setPrivateMode(bool privateMode)
40+{
41+ if (m_privateMode != privateMode) {
42+ m_privateMode = privateMode;
43+ invalidateFilter();
44+ Q_EMIT privateModeChanged();
45+ }
46+}
47+
48+void QuickListProxyModel::setSource(QAbstractItemModel *source)
49+{
50+ if (m_source != source) {
51+ m_source = source;
52+ setSourceModel(m_source);
53+ connect(m_source, &QAbstractItemModel::rowsRemoved, this, &QuickListProxyModel::invalidate);
54+ connect(m_source, &QAbstractItemModel::rowsInserted, this, &QuickListProxyModel::invalidate);
55+ Q_EMIT sourceChanged();
56+ }
57+}
58+
59+int QuickListProxyModel::count() const
60+{
61+ return rowCount();
62+}
63+
64+bool QuickListProxyModel::filterAcceptsRow(int source_row, const QModelIndex &source_parent) const
65+{
66+ Q_UNUSED(source_parent)
67+
68+ if (m_privateMode) {
69+ return !m_source->data(m_source->index(source_row, 0), QuickListModelInterface::RoleIsPrivate).toBool();
70+ }
71+ return true;
72+}
plugins/Utils/quicklistproxymodel.hnew file+52
@@ -0,0 +1,52 @@
1+/*
2+ * Copyright (C) 2017 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 <QSortFilterProxyModel>
18+
19+#include <unity/shell/launcher/QuickListModelInterface.h>
20+
21+using namespace unity::shell::launcher;
22+
23+class QuickListProxyModel: public QSortFilterProxyModel
24+{
25+ Q_OBJECT
26+ Q_PROPERTY(QAbstractItemModel* source READ source WRITE setSource NOTIFY sourceChanged)
27+ Q_PROPERTY(bool privateMode READ privateMode WRITE setPrivateMode NOTIFY privateModeChanged)
28+ Q_PROPERTY(int count READ count NOTIFY countChanged)
29+
30+public:
31+ QuickListProxyModel(QObject* parent = nullptr);
32+
33+ QAbstractItemModel* source() const;
34+ void setSource(QAbstractItemModel* source);
35+
36+ bool privateMode() const;
37+ void setPrivateMode(bool privateMode);
38+
39+ int count() const;
40+
41+protected:
42+ bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override;
43+
44+Q_SIGNALS:
45+ void sourceChanged();
46+ void privateModeChanged();
47+ void countChanged();
48+
49+private:
50+ QAbstractItemModel* m_source = nullptr;
51+ bool m_privateMode;
52+};
plugins/WindowManager/CMakeLists.txt+2
@@ -9,6 +9,8 @@ set(WINDOWMANAGER_SRC
9 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/SurfaceManagerInterface.h
9 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/SurfaceManagerInterface.h
10 )
10 )
11
11
12+add_definitions(-DWINDOWMANAGERQML_LIBRARY)
13+
12add_library(windowmanager-qml SHARED ${WINDOWMANAGER_SRC})
14add_library(windowmanager-qml SHARED ${WINDOWMANAGER_SRC})
13
15
14qt5_use_modules(windowmanager-qml Qml Quick Gui)
16qt5_use_modules(windowmanager-qml Qml Quick Gui)
plugins/WindowManager/TopLevelWindowModel.cpp+64−20
@@ -1,5 +1,5 @@
1/*
1/*
2− * Copyright (C) 2016 Canonical, Ltd.
2+ * Copyright (C) 2016-2017 Canonical, Ltd.
3 *
3 *
4 * This program is free software: you can redistribute it and/or modify it under
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
5 * the terms of the GNU Lesser General Public License version 3, as published by
@@ -130,7 +130,7 @@ void TopLevelWindowModel::removeApplication(unityapi::ApplicationInfoInterface *
130 int i = 0;
130 int i = 0;
131 while (i < m_windowModel.count()) {
131 while (i < m_windowModel.count()) {
132 if (m_windowModel.at(i).application == application) {
132 if (m_windowModel.at(i).application == application) {
133− removeAt(i);
133+ deleteAt(i);
134 } else {
134 } else {
135 ++i;
135 ++i;
136 }
136 }
@@ -148,12 +148,13 @@ void TopLevelWindowModel::prependSurface(unityapi::MirSurfaceInterface *surface,
148{
148{
149 Q_ASSERT(surface != nullptr);
149 Q_ASSERT(surface != nullptr);
150
150
151+ connectSurface(surface);
152+
151 bool filledPlaceholder = false;
153 bool filledPlaceholder = false;
152 for (int i = 0; i < m_windowModel.count() && !filledPlaceholder; ++i) {
154 for (int i = 0; i < m_windowModel.count() && !filledPlaceholder; ++i) {
153 ModelEntry &entry = m_windowModel[i];
155 ModelEntry &entry = m_windowModel[i];
154 if (entry.application == application && entry.window->surface() == nullptr) {
156 if (entry.application == application && entry.window->surface() == nullptr) {
155 entry.window->setSurface(surface);
157 entry.window->setSurface(surface);
156− connectSurface(surface);
157 INFO_MSG << " appId=" << application->appId() << " surface=" << surface
158 INFO_MSG << " appId=" << application->appId() << " surface=" << surface
158 << ", filling out placeholder. after: " << toString();
159 << ", filling out placeholder. after: " << toString();
159 filledPlaceholder = true;
160 filledPlaceholder = true;
@@ -167,6 +168,34 @@ void TopLevelWindowModel::prependSurface(unityapi::MirSurfaceInterface *surface,
167}
168}
168
169
169void TopLevelWindowModel::prependSurfaceHelper(unityapi::MirSurfaceInterface *surface, unityapi::ApplicationInfoInterface *application)
170void TopLevelWindowModel::prependSurfaceHelper(unityapi::MirSurfaceInterface *surface, unityapi::ApplicationInfoInterface *application)
171+{
172+
173+ Window *window = createWindow(surface);
174+
175+ connect(window, &Window::stateChanged, this, [=](Mir::State newState) {
176+ if (newState == Mir::HiddenState) {
177+ // Comply, removing it from our model. Just as if it didn't exist anymore.
178+ removeAt(indexForId(window->id()));
179+ } else {
180+ if (indexForId(window->id()) == -1) {
181+ // was probably hidden before. put it back on the list
182+ auto *application = m_applicationManager->findApplicationWithSurface(window->surface());
183+ Q_ASSERT(application);
184+ prependWindow(window, application);
185+ }
186+ }
187+ });
188+
189+ prependWindow(window, application);
190+
191+ if (!surface) {
192+ activateEmptyWindow(window);
193+ }
194+
195+ INFO_MSG << " after " << toString();
196+}
197+
198+void TopLevelWindowModel::prependWindow(Window *window, unityapi::ApplicationInfoInterface *application)
170{
199{
171 if (m_modelState == IdleState) {
200 if (m_modelState == IdleState) {
172 m_modelState = InsertingState;
201 m_modelState = InsertingState;
@@ -176,12 +205,7 @@ void TopLevelWindowModel::prependSurfaceHelper(unityapi::MirSurfaceInterface *su
176 // No point in signaling anything if we're resetting the whole model
205 // No point in signaling anything if we're resetting the whole model
177 }
206 }
178
207
179− Window *window = createWindow(surface);
180−
181 m_windowModel.prepend(ModelEntry(window, application));
208 m_windowModel.prepend(ModelEntry(window, application));
182− if (surface) {
183− connectSurface(surface);
184− }
185
209
186 if (m_modelState == InsertingState) {
210 if (m_modelState == InsertingState) {
187 endInsertRows();
211 endInsertRows();
@@ -189,12 +213,6 @@ void TopLevelWindowModel::prependSurfaceHelper(unityapi::MirSurfaceInterface *su
189 Q_EMIT listChanged();
213 Q_EMIT listChanged();
190 m_modelState = IdleState;
214 m_modelState = IdleState;
191 }
215 }
192−
193− if (!surface) {
194− activateEmptyWindow(window);
195− }
196−
197− INFO_MSG << " after " << toString();
198}
216}
199
217
200void TopLevelWindowModel::connectWindow(Window *window)
218void TopLevelWindowModel::connectWindow(Window *window)
@@ -243,6 +261,13 @@ void TopLevelWindowModel::connectWindow(Window *window)
243 connect(window, &Window::emptyWindowActivated, this, [this, window]() {
261 connect(window, &Window::emptyWindowActivated, this, [this, window]() {
244 activateEmptyWindow(window);
262 activateEmptyWindow(window);
245 });
263 });
264+
265+ connect(window, &Window::liveChanged, this, [this, window](bool isAlive) {
266+ if (!isAlive && window->state() == Mir::HiddenState) {
267+ // Hidden windows are not in the model. So just delete it right away.
268+ delete window;
269+ }
270+ });
246}
271}
247
272
248void TopLevelWindowModel::activateEmptyWindow(Window *window)
273void TopLevelWindowModel::activateEmptyWindow(Window *window)
@@ -308,7 +333,7 @@ void TopLevelWindowModel::onSurfaceDestroyed(unityapi::MirSurfaceInterface *surf
308 }
333 }
309
334
310 if (m_windowModel[i].removeOnceSurfaceDestroyed) {
335 if (m_windowModel[i].removeOnceSurfaceDestroyed) {
311− removeAt(i);
336+ deleteAt(i);
312 } else {
337 } else {
313 auto window = m_windowModel[i].window;
338 auto window = m_windowModel[i].window;
314 window->setSurface(nullptr);
339 window->setSurface(nullptr);
@@ -346,7 +371,16 @@ void TopLevelWindowModel::onSurfaceCreated(unityapi::MirSurfaceInterface *surfac
346 } else {
371 } else {
347 auto *application = m_applicationManager->findApplicationWithSurface(surface);
372 auto *application = m_applicationManager->findApplicationWithSurface(surface);
348 if (application) {
373 if (application) {
374+ if (surface->state() == Mir::HiddenState) {
375+ // Ignore it until it's finally shown
376+ connect(surface, &unityapi::MirSurfaceInterface::stateChanged, this, [=](Mir::State newState) {
377+ Q_ASSERT(newState != Mir::HiddenState);
378+ disconnect(surface, &unityapi::MirSurfaceInterface::stateChanged, this, 0);
349− prependSurface(surface, application);
379+ prependSurface(surface, application);
380+ });
381+ } else {
382+ prependSurface(surface, application);
383+ }
350 } else {
384 } else {
351 // Must be a prompt session. No need to do add it as a prompt surface is not top-level.
385 // Must be a prompt session. No need to do add it as a prompt surface is not top-level.
352 // It will show up in the ApplicationInfoInterface::promptSurfaceList of some application.
386 // It will show up in the ApplicationInfoInterface::promptSurfaceList of some application.
@@ -361,6 +395,17 @@ void TopLevelWindowModel::onSurfaceCreated(unityapi::MirSurfaceInterface *surfac
361 }
395 }
362}
396}
363
397
398+void TopLevelWindowModel::deleteAt(int index)
399+{
400+ auto window = m_windowModel[index].window;
401+
402+ removeAt(index);
403+
404+ window->setSurface(nullptr);
405+
406+ delete window;
407+}
408+
364void TopLevelWindowModel::removeAt(int index)
409void TopLevelWindowModel::removeAt(int index)
365{
410{
366 if (m_modelState == IdleState) {
411 if (m_modelState == IdleState) {
@@ -373,8 +418,9 @@ void TopLevelWindowModel::removeAt(int index)
373
418
374 auto window = m_windowModel[index].window;
419 auto window = m_windowModel[index].window;
375
420
376− window->setSurface(nullptr);
421+ if (!window->surface()) {
377− window->setFocused(false);
422+ window->setFocused(false);
423+ }
378
424
379 m_windowModel.removeAt(index);
425 m_windowModel.removeAt(index);
380
426
@@ -385,11 +431,9 @@ void TopLevelWindowModel::removeAt(int index)
385 m_modelState = IdleState;
431 m_modelState = IdleState;
386 }
432 }
387
433
388− disconnect(window, 0, this, 0);
389 if (m_focusedWindow == window) {
434 if (m_focusedWindow == window) {
390 setFocusedWindow(nullptr);
435 setFocusedWindow(nullptr);
391 }
436 }
392− delete window;
393
437
394 INFO_MSG << " after " << toString();
438 INFO_MSG << " after " << toString();
395}
439}
plugins/WindowManager/TopLevelWindowModel.h+6−2
@@ -1,5 +1,5 @@
1/*
1/*
2− * Copyright (C) 2016 Canonical, Ltd.
2+ * Copyright (C) 2016-2017 Canonical, Ltd.
3 *
3 *
4 * This program is free software: you can redistribute it and/or modify it under
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
5 * the terms of the GNU Lesser General Public License version 3, as published by
@@ -20,6 +20,8 @@
20#include <QAbstractListModel>
20#include <QAbstractListModel>
21#include <QLoggingCategory>
21#include <QLoggingCategory>
22
22
23+#include "WindowManagerGlobal.h"
24+
23Q_DECLARE_LOGGING_CATEGORY(TOPLEVELWINDOWMODEL)
25Q_DECLARE_LOGGING_CATEGORY(TOPLEVELWINDOWMODEL)
24
26
25class Window;
27class Window;
@@ -47,7 +49,7 @@ namespace unity {
47 * As applications can have multiple surfaces and you can also have entries without surfaces at all,
49 * As applications can have multiple surfaces and you can also have entries without surfaces at all,
48 * the only way to unambiguously refer to an entry in this model is through its id.
50 * the only way to unambiguously refer to an entry in this model is through its id.
49 */
51 */
50−class TopLevelWindowModel : public QAbstractListModel
52+class WINDOWMANAGERQML_EXPORT TopLevelWindowModel : public QAbstractListModel
51{
53{
52 Q_OBJECT
54 Q_OBJECT
53
55
@@ -197,6 +199,7 @@ private:
197 void setFocusedWindow(Window *window);
199 void setFocusedWindow(Window *window);
198 void removeInputMethodWindow();
200 void removeInputMethodWindow();
199 int findIndexOf(const unity::shell::application::MirSurfaceInterface *surface) const;
201 int findIndexOf(const unity::shell::application::MirSurfaceInterface *surface) const;
202+ void deleteAt(int index);
200 void removeAt(int index);
203 void removeAt(int index);
201
204
202 void addApplication(unity::shell::application::ApplicationInfoInterface *application);
205 void addApplication(unity::shell::application::ApplicationInfoInterface *application);
@@ -207,6 +210,7 @@ private:
207 unity::shell::application::ApplicationInfoInterface *application);
210 unity::shell::application::ApplicationInfoInterface *application);
208 void prependSurfaceHelper(unity::shell::application::MirSurfaceInterface *surface,
211 void prependSurfaceHelper(unity::shell::application::MirSurfaceInterface *surface,
209 unity::shell::application::ApplicationInfoInterface *application);
212 unity::shell::application::ApplicationInfoInterface *application);
213+ void prependWindow(Window *window, unity::shell::application::ApplicationInfoInterface *application);
210
214
211 void connectWindow(Window *window);
215 void connectWindow(Window *window);
212 void connectSurface(unity::shell::application::MirSurfaceInterface *surface);
216 void connectSurface(unity::shell::application::MirSurfaceInterface *surface);
plugins/WindowManager/Window.cpp+32−1
@@ -1,5 +1,5 @@
1/*
1/*
2− * Copyright (C) 2016 Canonical, Ltd.
2+ * Copyright (C) 2016-2017 Canonical, Ltd.
3 *
3 *
4 * This program is free software; you can redistribute it and/or modify
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
5 * it under the terms of the GNU General Public License as published by
@@ -67,6 +67,23 @@ void Window::setRequestedPosition(const QPoint &value)
67 }
67 }
68}
68}
69
69
70+bool Window::allowClientResize() const
71+{
72+ return m_allowClientResize;
73+}
74+
75+void Window::setAllowClientResize(bool value)
76+{
77+ if (value != m_allowClientResize) {
78+ DEBUG_MSG << "("<<value<<")";
79+ m_allowClientResize = value;
80+ if (m_surface) {
81+ m_surface->setAllowClientResize(value);
82+ }
83+ Q_EMIT allowClientResizeChanged(m_allowClientResize);
84+ }
85+}
86+
70Mir::State Window::state() const
87Mir::State Window::state() const
71{
88{
72 return m_state;
89 return m_state;
@@ -154,6 +171,19 @@ void Window::setSurface(unityapi::MirSurfaceInterface *surface)
154 updateFocused();
171 updateFocused();
155 });
172 });
156
173
174+ connect(surface, &unityapi::MirSurfaceInterface::allowClientResizeChanged, this, [this]() {
175+ if (m_surface->allowClientResize() != m_allowClientResize) {
176+ m_allowClientResize = m_surface->allowClientResize();
177+ Q_EMIT allowClientResizeChanged(m_allowClientResize);
178+ }
179+ });
180+
181+ connect(surface, &unityapi::MirSurfaceInterface::liveChanged, this, &Window::liveChanged);
182+
183+ connect(surface, &QObject::destroyed, this, [this]() {
184+ setSurface(nullptr);
185+ });
186+
157 // bring it up to speed
187 // bring it up to speed
158 if (m_positionRequested) {
188 if (m_positionRequested) {
159 m_surface->setRequestedPosition(m_requestedPosition);
189 m_surface->setRequestedPosition(m_requestedPosition);
@@ -161,6 +191,7 @@ void Window::setSurface(unityapi::MirSurfaceInterface *surface)
161 if (m_stateRequested && m_surface->state() == Mir::RestoredState) {
191 if (m_stateRequested && m_surface->state() == Mir::RestoredState) {
162 m_surface->requestState(m_state);
192 m_surface->requestState(m_state);
163 }
193 }
194+ m_surface->setAllowClientResize(m_allowClientResize);
164
195
165 // and sync with surface
196 // and sync with surface
166 updatePosition();
197 updatePosition();
plugins/WindowManager/Window.h+18−2
@@ -1,5 +1,5 @@
1/*
1/*
2− * Copyright (C) 2016 Canonical, Ltd.
2+ * Copyright (C) 2016-2017 Canonical, Ltd.
3 *
3 *
4 * This program is free software; you can redistribute it and/or modify
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
5 * it under the terms of the GNU General Public License as published by
@@ -24,6 +24,8 @@
24// Unity API
24// Unity API
25#include <unity/shell/application/Mir.h>
25#include <unity/shell/application/Mir.h>
26
26
27+#include "WindowManagerGlobal.h"
28+
27namespace unity {
29namespace unity {
28 namespace shell {
30 namespace shell {
29 namespace application {
31 namespace application {
@@ -42,7 +44,7 @@ Q_DECLARE_LOGGING_CATEGORY(UNITY_WINDOW)
42 was killed to free up memory, as it should still remain in the window list since the user
44 was killed to free up memory, as it should still remain in the window list since the user
43 did not explicitly close it).
45 did not explicitly close it).
44 */
46 */
45−class Window : public QObject
47+class WINDOWMANAGERQML_EXPORT Window : public QObject
46{
48{
47 Q_OBJECT
49 Q_OBJECT
48
50
@@ -89,6 +91,13 @@ class Window : public QObject
89 */
91 */
90 Q_PROPERTY(unity::shell::application::MirSurfaceInterface* surface READ surface NOTIFY surfaceChanged)
92 Q_PROPERTY(unity::shell::application::MirSurfaceInterface* surface READ surface NOTIFY surfaceChanged)
91
93
94+ /**
95+ * @brief Whether to comply to resize requests coming from the client side
96+ *
97+ * It's true by default
98+ */
99+ Q_PROPERTY(bool allowClientResize READ allowClientResize WRITE setAllowClientResize NOTIFY allowClientResizeChanged)
100+
92public:
101public:
93 Window(int id, QObject *parent = nullptr);
102 Window(int id, QObject *parent = nullptr);
94 virtual ~Window();
103 virtual ~Window();
@@ -104,6 +113,9 @@ public:
104 void setSurface(unity::shell::application::MirSurfaceInterface *surface);
113 void setSurface(unity::shell::application::MirSurfaceInterface *surface);
105 void setFocused(bool value);
114 void setFocused(bool value);
106
115
116+ bool allowClientResize() const;
117+ void setAllowClientResize(bool);
118+
107 QString toString() const;
119 QString toString() const;
108
120
109public Q_SLOTS:
121public Q_SLOTS:
@@ -133,6 +145,8 @@ Q_SIGNALS:
133 void focusedChanged(bool value);
145 void focusedChanged(bool value);
134 void confinesMousePointerChanged(bool value);
146 void confinesMousePointerChanged(bool value);
135 void surfaceChanged(unity::shell::application::MirSurfaceInterface *surface);
147 void surfaceChanged(unity::shell::application::MirSurfaceInterface *surface);
148+ void allowClientResizeChanged(bool value);
149+ void liveChanged(bool value);
136
150
137 /**
151 /**
138 * @brief Emitted when focus for this window is requested by an external party
152 * @brief Emitted when focus for this window is requested by an external party
@@ -152,6 +166,8 @@ private:
152 Mir::State m_state{Mir::RestoredState};
166 Mir::State m_state{Mir::RestoredState};
153 bool m_stateRequested{false};
167 bool m_stateRequested{false};
154 unity::shell::application::MirSurfaceInterface *m_surface{nullptr};
168 unity::shell::application::MirSurfaceInterface *m_surface{nullptr};
169+
170+ bool m_allowClientResize{true};
155};
171};
156
172
157QDebug operator<<(QDebug dbg, const Window *window);
173QDebug operator<<(QDebug dbg, const Window *window);
plugins/WindowManager/WindowManagerGlobal.hnew file+23
@@ -0,0 +1,23 @@
1+/*
2+ * Copyright (C) 2017 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 <QtCore/QtGlobal>
18+
19+#if defined(WINDOWMANAGERQML_LIBRARY)
20+# define WINDOWMANAGERQML_EXPORT Q_DECL_EXPORT
21+#else
22+# define WINDOWMANAGERQML_EXPORT Q_DECL_IMPORT
23+#endif
po/aa.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-02-12 10:18+0000\n"
11"PO-Revision-Date: 2016-02-12 10:18+0000\n"
12"Last-Translator: Charif AYFARAH <ayfarah@ymail.com>\n"
12"Last-Translator: Charif AYFARAH <ayfarah@ymail.com>\n"
13"Language-Team: Afar <aa@li.org>\n"
13"Language-Team: Afar <aa@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:12+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr "Kat"
60msgstr "Kat"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Eweq"
69msgstr "Eweq"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Koflis"
78msgstr "Koflis"
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/am.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-01-26 15:04+0000\n"
11"PO-Revision-Date: 2017-01-26 15:04+0000\n"
12"Last-Translator: samson <Unknown>\n"
12"Last-Translator: samson <Unknown>\n"
13"Language-Team: Amharic <am@li.org>\n"
13"Language-Team: Amharic <am@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:12+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr "መግቢያ"
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr "የ እንግዳ ክፍለ ጊዜ"
51msgstr "የ እንግዳ ክፍለ ጊዜ"
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "አቋራጭ ማጣበቂያ"
56msgstr "አቋራጭ ማጣበቂያ"
57
57
@@ -59,20 +59,20 @@ msgstr "አቋራጭ ማጣበቂያ"
59msgid "Quit"
59msgid "Quit"
60msgstr "ማጥፊያ"
60msgstr "ማጥፊያ"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "አቋራጭ መለያያ"
64msgstr "አቋራጭ መለያያ"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "መውጫ"
69msgstr "መውጫ"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "በእርግጥ መውጣት ይፈልጋሉ?"
73msgstr "በእርግጥ መውጣት ይፈልጋሉ?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "መቆለፊያ"
78msgstr "መቆለፊያ"
@@ -519,11 +519,11 @@ msgstr "ማለፊያ ኮድ"
519msgid "Select desktop environment"
519msgid "Select desktop environment"
520msgstr "የ ዴስክቶፕ አይነት ይምረጡ"
520msgstr "የ ዴስክቶፕ አይነት ይምረጡ"
521
521
522−#: qml/Launcher/Drawer.qml:92
522+#: qml/Launcher/Drawer.qml:93
523msgid "Search…"
523msgid "Search…"
524msgstr "መፈለጊያ..."
524msgstr "መፈለጊያ..."
525
525
526−#: qml/Launcher/Drawer.qml:127
526+#: qml/Launcher/Drawer.qml:128
527msgctxt "Apps sorted alphabetically"
527msgctxt "Apps sorted alphabetically"
528msgid "A-Z"
528msgid "A-Z"
529msgstr "A-Z"
529msgstr "A-Z"
po/ar.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-01-14 05:20+0000\n"
11"PO-Revision-Date: 2017-01-14 05:20+0000\n"
12"Last-Translator: Ibrahim Saed <ibraheem5000@gmail.com>\n"
12"Last-Translator: Ibrahim Saed <ibraheem5000@gmail.com>\n"
13"Language-Team: Arabic <ar@li.org>\n"
13"Language-Team: Arabic <ar@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n % 100 >= "
17"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n % 100 >= "
18"3 && n % 100 <= 10 ? 3 : n % 100 >= 11 && n % 100 <= 99 ? 4 : 5;\n"
18"3 && n % 100 <= 10 ? 3 : n % 100 >= 11 && n % 100 <= 99 ? 4 : 5;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:12+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "تثبيت الاختصار"
57msgstr "تثبيت الاختصار"
58
58
@@ -60,20 +60,20 @@ msgstr "تثبيت الاختصار"
60msgid "Quit"
60msgid "Quit"
61msgstr "خروج"
61msgstr "خروج"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "إزالة تثبيت الاختصار"
65msgstr "إزالة تثبيت الاختصار"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "خروج"
70msgstr "خروج"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "هل أنت متأكد من رغبتك في تسجيل الخروج؟"
74msgstr "هل أنت متأكد من رغبتك في تسجيل الخروج؟"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "أوصِد"
79msgstr "أوصِد"
@@ -526,11 +526,11 @@ msgstr ""
526msgid "Select desktop environment"
526msgid "Select desktop environment"
527msgstr ""
527msgstr ""
528
528
529−#: qml/Launcher/Drawer.qml:92
529+#: qml/Launcher/Drawer.qml:93
530msgid "Search…"
530msgid "Search…"
531msgstr ""
531msgstr ""
532
532
533−#: qml/Launcher/Drawer.qml:127
533+#: qml/Launcher/Drawer.qml:128
534msgctxt "Apps sorted alphabetically"
534msgctxt "Apps sorted alphabetically"
535msgid "A-Z"
535msgid "A-Z"
536msgstr ""
536msgstr ""
po/ast.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-12-16 02:13+0000\n"
11"PO-Revision-Date: 2016-12-16 02:13+0000\n"
12"Last-Translator: enolp <enolp@softastur.org>\n"
12"Last-Translator: enolp <enolp@softastur.org>\n"
13"Language-Team: Asturian <ast@li.org>\n"
13"Language-Team: Asturian <ast@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:12+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Anclar atayu"
56msgstr "Anclar atayu"
57
57
@@ -59,20 +59,20 @@ msgstr "Anclar atayu"
59msgid "Quit"
59msgid "Quit"
60msgstr "Colar"
60msgstr "Colar"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Desanclar atayu"
64msgstr "Desanclar atayu"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Zarrar sesión"
69msgstr "Zarrar sesión"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "¿De xuru que quies zarrar la sesión?"
73msgstr "¿De xuru que quies zarrar la sesión?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Bloquiar"
78msgstr "Bloquiar"
@@ -522,11 +522,11 @@ msgstr "Códigu de pasu"
522msgid "Select desktop environment"
522msgid "Select desktop environment"
523msgstr "Esbillar entornu d'escritoriu"
523msgstr "Esbillar entornu d'escritoriu"
524
524
525−#: qml/Launcher/Drawer.qml:92
525+#: qml/Launcher/Drawer.qml:93
526msgid "Search…"
526msgid "Search…"
527msgstr "Guetar..."
527msgstr "Guetar..."
528
528
529−#: qml/Launcher/Drawer.qml:127
529+#: qml/Launcher/Drawer.qml:128
530msgctxt "Apps sorted alphabetically"
530msgctxt "Apps sorted alphabetically"
531msgid "A-Z"
531msgid "A-Z"
532msgstr "A-Z"
532msgstr "A-Z"
po/az.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-09-03 16:39+0000\n"
11"PO-Revision-Date: 2014-09-03 16:39+0000\n"
12"Last-Translator: Nicat Məmmədov <n1c4t97@gmail.com>\n"
12"Last-Translator: Nicat Məmmədov <n1c4t97@gmail.com>\n"
13"Language-Team: Azerbaijani <az@li.org>\n"
13"Language-Team: Azerbaijani <az@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:12+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Pin qısayolu"
56msgstr "Pin qısayolu"
57
57
@@ -59,20 +59,20 @@ msgstr "Pin qısayolu"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Açma qısayolu"
64msgstr "Açma qısayolu"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Çıxmaq istәdiyinizdәn әminsiniz?"
73msgstr "Çıxmaq istәdiyinizdәn әminsiniz?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/be.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-12-13 13:12+0000\n"
11"PO-Revision-Date: 2015-12-13 13:12+0000\n"
12"Last-Translator: Mikhail_SaTuRn <mikhail_saturn@tut.by>\n"
12"Last-Translator: Mikhail_SaTuRn <mikhail_saturn@tut.by>\n"
13"Language-Team: Belarusian <be@li.org>\n"
13"Language-Team: Belarusian <be@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
17"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Замацаваць кнопку"
57msgstr "Замацаваць кнопку"
58
58
@@ -60,20 +60,20 @@ msgstr "Замацаваць кнопку"
60msgid "Quit"
60msgid "Quit"
61msgstr "Выйсці"
61msgstr "Выйсці"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Адмацаваць кнопку"
65msgstr "Адмацаваць кнопку"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Выйсці"
70msgstr "Выйсці"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Вы ўпэўненыя, што хочаце выйсці?"
74msgstr "Вы ўпэўненыя, што хочаце выйсці?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Заблакаваць"
79msgstr "Заблакаваць"
@@ -524,11 +524,11 @@ msgstr ""
524msgid "Select desktop environment"
524msgid "Select desktop environment"
525msgstr ""
525msgstr ""
526
526
527−#: qml/Launcher/Drawer.qml:92
527+#: qml/Launcher/Drawer.qml:93
528msgid "Search…"
528msgid "Search…"
529msgstr ""
529msgstr ""
530
530
531−#: qml/Launcher/Drawer.qml:127
531+#: qml/Launcher/Drawer.qml:128
532msgctxt "Apps sorted alphabetically"
532msgctxt "Apps sorted alphabetically"
533msgid "A-Z"
533msgid "A-Z"
534msgstr ""
534msgstr ""
po/bg.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-04-12 14:43+0000\n"
11"PO-Revision-Date: 2015-04-12 14:43+0000\n"
12"Last-Translator: George Karavasilev <kokoto-java@ubuntu.com>\n"
12"Last-Translator: George Karavasilev <kokoto-java@ubuntu.com>\n"
13"Language-Team: Bulgarian <bg@li.org>\n"
13"Language-Team: Bulgarian <bg@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -519,11 +519,11 @@ msgstr ""
519msgid "Select desktop environment"
519msgid "Select desktop environment"
520msgstr ""
520msgstr ""
521
521
522−#: qml/Launcher/Drawer.qml:92
522+#: qml/Launcher/Drawer.qml:93
523msgid "Search…"
523msgid "Search…"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:127
526+#: qml/Launcher/Drawer.qml:128
527msgctxt "Apps sorted alphabetically"
527msgctxt "Apps sorted alphabetically"
528msgid "A-Z"
528msgid "A-Z"
529msgstr ""
529msgstr ""
po/bn.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-11-27 19:38+0000\n"
11"PO-Revision-Date: 2015-11-27 19:38+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Bengali <bn@li.org>\n"
13"Language-Team: Bengali <bn@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "পিন"
56msgstr "পিন"
57
57
@@ -59,20 +59,20 @@ msgstr "পিন"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "আনপিন"
64msgstr "আনপিন"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "আপনি কি লগ আউট করতে চান?"
73msgstr "আপনি কি লগ আউট করতে চান?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "লক করুন"
78msgstr "লক করুন"
@@ -519,11 +519,11 @@ msgstr ""
519msgid "Select desktop environment"
519msgid "Select desktop environment"
520msgstr ""
520msgstr ""
521
521
522−#: qml/Launcher/Drawer.qml:92
522+#: qml/Launcher/Drawer.qml:93
523msgid "Search…"
523msgid "Search…"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:127
526+#: qml/Launcher/Drawer.qml:128
527msgctxt "Apps sorted alphabetically"
527msgctxt "Apps sorted alphabetically"
528msgid "A-Z"
528msgid "A-Z"
529msgstr ""
529msgstr ""
po/br.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-08-29 11:37+0000\n"
11"PO-Revision-Date: 2016-08-29 11:37+0000\n"
12"Last-Translator: Fohanno Thierry <thierry.fohanno@ofis-bzh.org>\n"
12"Last-Translator: Fohanno Thierry <thierry.fohanno@ofis-bzh.org>\n"
13"Language-Team: Breton <br@li.org>\n"
13"Language-Team: Breton <br@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Spilhennañ ar verradenn"
56msgstr "Spilhennañ ar verradenn"
57
57
@@ -59,20 +59,20 @@ msgstr "Spilhennañ ar verradenn"
59msgid "Quit"
59msgid "Quit"
60msgstr "Mont kuit"
60msgstr "Mont kuit"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Dispilhennañ ar verradenn"
64msgstr "Dispilhennañ ar verradenn"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Digevreañ"
69msgstr "Digevreañ"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Ha sur oc'h e fell deoc'h digevreañ ?"
73msgstr "Ha sur oc'h e fell deoc'h digevreañ ?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Prennañ"
78msgstr "Prennañ"
@@ -528,11 +528,11 @@ msgstr "Kod-tremen"
528msgid "Select desktop environment"
528msgid "Select desktop environment"
529msgstr "Diuzañ endro ar burev"
529msgstr "Diuzañ endro ar burev"
530
530
531−#: qml/Launcher/Drawer.qml:92
531+#: qml/Launcher/Drawer.qml:93
532msgid "Search…"
532msgid "Search…"
533msgstr ""
533msgstr ""
534
534
535−#: qml/Launcher/Drawer.qml:127
535+#: qml/Launcher/Drawer.qml:128
536msgctxt "Apps sorted alphabetically"
536msgctxt "Apps sorted alphabetically"
537msgid "A-Z"
537msgid "A-Z"
538msgstr ""
538msgstr ""
po/bs.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-12-01 20:06+0000\n"
11"PO-Revision-Date: 2015-12-01 20:06+0000\n"
12"Last-Translator: Kenan Gutić <Unknown>\n"
12"Last-Translator: Kenan Gutić <Unknown>\n"
13"Language-Team: Bosnian <bs@li.org>\n"
13"Language-Team: Bosnian <bs@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Prikačite prečicu"
57msgstr "Prikačite prečicu"
58
58
@@ -60,20 +60,20 @@ msgstr "Prikačite prečicu"
60msgid "Quit"
60msgid "Quit"
61msgstr "Napusti"
61msgstr "Napusti"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Otkačite prečicu"
65msgstr "Otkačite prečicu"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Odjavite se"
70msgstr "Odjavite se"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Da li ste sigurni da se želite odjaviti?"
74msgstr "Da li ste sigurni da se želite odjaviti?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Zaključaj"
79msgstr "Zaključaj"
@@ -523,11 +523,11 @@ msgstr ""
523msgid "Select desktop environment"
523msgid "Select desktop environment"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:92
526+#: qml/Launcher/Drawer.qml:93
527msgid "Search…"
527msgid "Search…"
528msgstr ""
528msgstr ""
529
529
530−#: qml/Launcher/Drawer.qml:127
530+#: qml/Launcher/Drawer.qml:128
531msgctxt "Apps sorted alphabetically"
531msgctxt "Apps sorted alphabetically"
532msgid "A-Z"
532msgid "A-Z"
533msgstr ""
533msgstr ""
po/ca.po+31−30
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-11-11 06:30+0000\n"
11"PO-Revision-Date: 2016-11-11 06:30+0000\n"
12"Last-Translator: Walter Garcia-Fontes <walter.garcia@upf.edu>\n"
12"Last-Translator: Walter Garcia-Fontes <walter.garcia@upf.edu>\n"
13"Language-Team: Catalan <ca@li.org>\n"
13"Language-Team: Catalan <ca@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -24,15 +24,15 @@ msgstr "Contrasenya: "
24
24
25#: plugins/LightDM/Greeter.cpp:203
25#: plugins/LightDM/Greeter.cpp:203
26msgid "Username"
26msgid "Username"
27−msgstr ""
27+msgstr "Nom d'usuari"
28
28
29#: plugins/LightDM/Greeter.cpp:242
29#: plugins/LightDM/Greeter.cpp:242
30msgid "Failed to authenticate"
30msgid "Failed to authenticate"
31−msgstr ""
31+msgstr "Ha fallat l'autenticació"
32
32
33#: plugins/LightDM/Greeter.cpp:244
33#: plugins/LightDM/Greeter.cpp:244
34msgid "Invalid password, please try again"
34msgid "Invalid password, please try again"
35−msgstr ""
35+msgstr "La contrasenya no és vàlida, torneu-ho a provar"
36
36
37#: plugins/LightDM/Greeter.cpp:254
37#: plugins/LightDM/Greeter.cpp:254
38msgid "Log In"
38msgid "Log In"
@@ -44,14 +44,14 @@ msgstr "Torna-ho a provar"
44
44
45#: plugins/LightDM/UsersModel.cpp:152
45#: plugins/LightDM/UsersModel.cpp:152
46msgid "Login"
46msgid "Login"
47−msgstr ""
47+msgstr "Inicia la sessió"
48
48
49#: plugins/LightDM/UsersModel.cpp:160
49#: plugins/LightDM/UsersModel.cpp:160
50msgid "Guest Session"
50msgid "Guest Session"
51−msgstr ""
51+msgstr "Sessió de convidat"
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Enganxa la drecera"
56msgstr "Enganxa la drecera"
57
57
@@ -59,20 +59,20 @@ msgstr "Enganxa la drecera"
59msgid "Quit"
59msgid "Quit"
60msgstr "Surt"
60msgstr "Surt"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Desenganxa la drecera"
64msgstr "Desenganxa la drecera"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Surt"
69msgstr "Surt"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Segur que voleu sortir?"
73msgstr "Segur que voleu sortir?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Bloca"
78msgstr "Bloca"
@@ -151,7 +151,7 @@ msgstr "Alt + ImprPant"
151
151
152#: qml/Components/KeyboardShortcutsOverlay.qml:80
152#: qml/Components/KeyboardShortcutsOverlay.qml:80
153msgid "Takes a screenshot of the current window."
153msgid "Takes a screenshot of the current window."
154−msgstr ""
154+msgstr "Feu una captura de pantalla de la finestra actual."
155
155
156#: qml/Components/KeyboardShortcutsOverlay.qml:88
156#: qml/Components/KeyboardShortcutsOverlay.qml:88
157msgid "Super + Space"
157msgid "Super + Space"
@@ -199,7 +199,7 @@ msgstr "Commuta les aplicacions mitjançant el llançador."
199
199
200#: qml/Components/KeyboardShortcutsOverlay.qml:164
200#: qml/Components/KeyboardShortcutsOverlay.qml:164
201msgid "Super + 1 to 0"
201msgid "Super + 1 to 0"
202−msgstr ""
202+msgstr "Súper +1 a 0"
203
203
204#: qml/Components/KeyboardShortcutsOverlay.qml:169
204#: qml/Components/KeyboardShortcutsOverlay.qml:169
205msgid "Same as clicking on a launcher icon."
205msgid "Same as clicking on a launcher icon."
@@ -207,11 +207,11 @@ msgstr "El mateix que clicar sobre una icona del llançador."
207
207
208#: qml/Components/KeyboardShortcutsOverlay.qml:177
208#: qml/Components/KeyboardShortcutsOverlay.qml:177
209msgid "Super + A"
209msgid "Super + A"
210−msgstr ""
210+msgstr "Súper + A"
211
211
212#: qml/Components/KeyboardShortcutsOverlay.qml:182
212#: qml/Components/KeyboardShortcutsOverlay.qml:182
213msgid "Opens the Application Drawer."
213msgid "Opens the Application Drawer."
214−msgstr ""
214+msgstr "Obre el calaix d'aplicacions."
215
215
216#: qml/Components/KeyboardShortcutsOverlay.qml:194
216#: qml/Components/KeyboardShortcutsOverlay.qml:194
217msgid "Scopes"
217msgid "Scopes"
@@ -361,19 +361,19 @@ msgstr ""
361
361
362#: qml/Components/VirtualTouchPad.qml:327
362#: qml/Components/VirtualTouchPad.qml:327
363msgid "Tap left button to click."
363msgid "Tap left button to click."
364−msgstr ""
364+msgstr "Feu un toc al botó esquerre per clicar."
365
365
366#: qml/Components/VirtualTouchPad.qml:339
366#: qml/Components/VirtualTouchPad.qml:339
367msgid "Tap right button to right click."
367msgid "Tap right button to right click."
368−msgstr ""
368+msgstr "Feu un toc al botó dret per clicar amb el botó dret."
369
369
370#: qml/Components/VirtualTouchPad.qml:351
370#: qml/Components/VirtualTouchPad.qml:351
371msgid "Swipe with two fingers to scroll."
371msgid "Swipe with two fingers to scroll."
372−msgstr ""
372+msgstr "Llisqueu amb dos dites per fer un desplaçament."
373
373
374#: qml/Components/VirtualTouchPad.qml:396
374#: qml/Components/VirtualTouchPad.qml:396
375msgid "Find more settings in the system settings."
375msgid "Find more settings in the system settings."
376−msgstr ""
376+msgstr "Trobeu més configuracions als paràmetres del sistema."
377
377
378#: qml/Dash/DashPageHeader.qml:361
378#: qml/Dash/DashPageHeader.qml:361
379msgctxt "Button: Open the Ubuntu Store"
379msgctxt "Button: Open the Ubuntu Store"
@@ -505,11 +505,11 @@ msgstr "Torna-ho a provar"
505
505
506#: qml/Greeter/Greeter.qml:562
506#: qml/Greeter/Greeter.qml:562
507msgid "Enter passphrase to unlock"
507msgid "Enter passphrase to unlock"
508−msgstr ""
508+msgstr "Introduïu la contrasenya per desbloquejar"
509
509
510#: qml/Greeter/Greeter.qml:563
510#: qml/Greeter/Greeter.qml:563
511msgid "Enter passcode to unlock"
511msgid "Enter passcode to unlock"
512−msgstr ""
512+msgstr "Entreu el codi per desbloquejar"
513
513
514#: qml/Greeter/NarrowView.qml:242
514#: qml/Greeter/NarrowView.qml:242
515msgid "Emergency"
515msgid "Emergency"
@@ -527,18 +527,18 @@ msgstr "Codi d'accés"
527msgid "Select desktop environment"
527msgid "Select desktop environment"
528msgstr "Seleccioneu l'entorn d'escriptori"
528msgstr "Seleccioneu l'entorn d'escriptori"
529
529
530−#: qml/Launcher/Drawer.qml:92
530+#: qml/Launcher/Drawer.qml:93
531msgid "Search…"
531msgid "Search…"
532−msgstr ""
532+msgstr "Cerca…"
533
533
534−#: qml/Launcher/Drawer.qml:127
534+#: qml/Launcher/Drawer.qml:128
535msgctxt "Apps sorted alphabetically"
535msgctxt "Apps sorted alphabetically"
536msgid "A-Z"
536msgid "A-Z"
537−msgstr ""
537+msgstr "A-Z"
538
538
539#: qml/Launcher/MoreAppsHeader.qml:55
539#: qml/Launcher/MoreAppsHeader.qml:55
540msgid "More apps in the store"
540msgid "More apps in the store"
541−msgstr ""
541+msgstr "Més aplicacions a la botiga"
542
542
543#: qml/Notifications/NotificationMenuItemFactory.qml:124
543#: qml/Notifications/NotificationMenuItemFactory.qml:124
544msgid "Show password"
544msgid "Show password"
@@ -629,7 +629,7 @@ msgstr "Retorna la trucada"
629
629
630#: qml/Panel/PanelMenuPage.qml:92
630#: qml/Panel/PanelMenuPage.qml:92
631msgid "Back"
631msgid "Back"
632−msgstr ""
632+msgstr "Enrere"
633
633
634#: qml/Stage/SideStage.qml:76
634#: qml/Stage/SideStage.qml:76
635msgid "Drag using 3 fingers any application from one window to the other"
635msgid "Drag using 3 fingers any application from one window to the other"
@@ -639,6 +639,7 @@ msgstr ""
639#: qml/Tutorial/TutorialLeftLong.qml:49
639#: qml/Tutorial/TutorialLeftLong.qml:49
640msgid "Long swipe from the left edge to open the Application Drawer"
640msgid "Long swipe from the left edge to open the Application Drawer"
641msgstr ""
641msgstr ""
642+"Llisqueu llarg des de la vora esquerra per obrir al Calaix d'aplicacions"
642
643
643#: qml/Tutorial/TutorialLeft.qml:47
644#: qml/Tutorial/TutorialLeft.qml:47
644msgid "Short swipe from the left edge to open the launcher"
645msgid "Short swipe from the left edge to open the launcher"
po/ca@valencia.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-02-22 15:22+0000\n"
11"PO-Revision-Date: 2015-02-22 15:22+0000\n"
12"Last-Translator: David Planella <david.planella@gmail.com>\n"
12"Last-Translator: David Planella <david.planella@gmail.com>\n"
13"Language-Team: Catalan <ca@li.org>\n"
13"Language-Team: Catalan <ca@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Apega la drecera"
56msgstr "Apega la drecera"
57
57
@@ -59,20 +59,20 @@ msgstr "Apega la drecera"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Desenganxa la drecera"
64msgstr "Desenganxa la drecera"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Segur que voleu eixir?"
73msgstr "Segur que voleu eixir?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -523,11 +523,11 @@ msgstr ""
523msgid "Select desktop environment"
523msgid "Select desktop environment"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:92
526+#: qml/Launcher/Drawer.qml:93
527msgid "Search…"
527msgid "Search…"
528msgstr ""
528msgstr ""
529
529
530−#: qml/Launcher/Drawer.qml:127
530+#: qml/Launcher/Drawer.qml:128
531msgctxt "Apps sorted alphabetically"
531msgctxt "Apps sorted alphabetically"
532msgid "A-Z"
532msgid "A-Z"
533msgstr ""
533msgstr ""
po/ce.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-02-15 04:01+0000\n"
11"PO-Revision-Date: 2015-02-15 04:01+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Chechen <ce@li.org>\n"
13"Language-Team: Chechen <ce@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/ckb.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-01-21 11:05+0000\n"
11"PO-Revision-Date: 2014-01-21 11:05+0000\n"
12"Last-Translator: Aras <aras.noori@gmail.com>\n"
12"Last-Translator: Aras <aras.noori@gmail.com>\n"
13"Language-Team: Kurdish (Sorani) <ckb@li.org>\n"
13"Language-Team: Kurdish (Sorani) <ckb@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/co.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-05-24 10:40+0000\n"
11"PO-Revision-Date: 2016-05-24 10:40+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Corsican <co@li.org>\n"
13"Language-Team: Corsican <co@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Fissà l'accurtatoghju"
56msgstr "Fissà l'accurtatoghju"
57
57
@@ -59,20 +59,20 @@ msgstr "Fissà l'accurtatoghju"
59msgid "Quit"
59msgid "Quit"
60msgstr "Abbandunà"
60msgstr "Abbandunà"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Toglie l'accurtatoghju"
64msgstr "Toglie l'accurtatoghju"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Escì"
69msgstr "Escì"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Site sicuri di vulè escì?"
73msgstr "Site sicuri di vulè escì?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Bluccà"
78msgstr "Bluccà"
@@ -527,11 +527,11 @@ msgstr ""
527msgid "Select desktop environment"
527msgid "Select desktop environment"
528msgstr ""
528msgstr ""
529
529
530−#: qml/Launcher/Drawer.qml:92
530+#: qml/Launcher/Drawer.qml:93
531msgid "Search…"
531msgid "Search…"
532msgstr ""
532msgstr ""
533
533
534−#: qml/Launcher/Drawer.qml:127
534+#: qml/Launcher/Drawer.qml:128
535msgctxt "Apps sorted alphabetically"
535msgctxt "Apps sorted alphabetically"
536msgid "A-Z"
536msgid "A-Z"
537msgstr ""
537msgstr ""
po/cs.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-07-07 10:44+0000\n"
11"PO-Revision-Date: 2015-07-07 10:44+0000\n"
12"Last-Translator: Vojtěch Daněk <vdanek@outlook.com>\n"
12"Last-Translator: Vojtěch Daněk <vdanek@outlook.com>\n"
13"Language-Team: Czech <cs@li.org>\n"
13"Language-Team: Czech <cs@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
17"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20"Language: cs\n"
20"Language: cs\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Připíchnout zkratku"
57msgstr "Připíchnout zkratku"
58
58
@@ -60,20 +60,20 @@ msgstr "Připíchnout zkratku"
60msgid "Quit"
60msgid "Quit"
61msgstr ""
61msgstr ""
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Odpíchnout zkratku"
65msgstr "Odpíchnout zkratku"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Odhlásit se"
70msgstr "Odhlásit se"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Jste si jistí, že se chcete odhlásit?"
74msgstr "Jste si jistí, že se chcete odhlásit?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Uzamknout"
79msgstr "Uzamknout"
@@ -523,11 +523,11 @@ msgstr ""
523msgid "Select desktop environment"
523msgid "Select desktop environment"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:92
526+#: qml/Launcher/Drawer.qml:93
527msgid "Search…"
527msgid "Search…"
528msgstr ""
528msgstr ""
529
529
530−#: qml/Launcher/Drawer.qml:127
530+#: qml/Launcher/Drawer.qml:128
531msgctxt "Apps sorted alphabetically"
531msgctxt "Apps sorted alphabetically"
532msgid "A-Z"
532msgid "A-Z"
533msgstr ""
533msgstr ""
po/cy.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-07-31 13:21+0000\n"
11"PO-Revision-Date: 2015-07-31 13:21+0000\n"
12"Last-Translator: Owen Llywelyn <owen.llywelyn@gmail.com>\n"
12"Last-Translator: Owen Llywelyn <owen.llywelyn@gmail.com>\n"
13"Language-Team: Welsh <cy@li.org>\n"
13"Language-Team: Welsh <cy@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=4; plural=n==1 ? 0 : n==2 ? 1 : (n != 8 && n != 11) ? "
17"Plural-Forms: nplurals=4; plural=n==1 ? 0 : n==2 ? 1 : (n != 8 && n != 11) ? "
18"2 : 3;\n"
18"2 : 3;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Pinio llwybr byr"
57msgstr "Pinio llwybr byr"
58
58
@@ -60,20 +60,20 @@ msgstr "Pinio llwybr byr"
60msgid "Quit"
60msgid "Quit"
61msgstr ""
61msgstr ""
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Dadbinio llwybr byr"
65msgstr "Dadbinio llwybr byr"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Allgofnodi"
70msgstr "Allgofnodi"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Ydych chi'n sicr eich bod am allgofnodi?"
74msgstr "Ydych chi'n sicr eich bod am allgofnodi?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Cloi"
79msgstr "Cloi"
@@ -524,11 +524,11 @@ msgstr ""
524msgid "Select desktop environment"
524msgid "Select desktop environment"
525msgstr ""
525msgstr ""
526
526
527−#: qml/Launcher/Drawer.qml:92
527+#: qml/Launcher/Drawer.qml:93
528msgid "Search…"
528msgid "Search…"
529msgstr ""
529msgstr ""
530
530
531−#: qml/Launcher/Drawer.qml:127
531+#: qml/Launcher/Drawer.qml:128
532msgctxt "Apps sorted alphabetically"
532msgctxt "Apps sorted alphabetically"
533msgid "A-Z"
533msgid "A-Z"
534msgstr ""
534msgstr ""
po/da.po+11−11
@@ -8,7 +8,7 @@ msgid ""
8msgstr ""
8msgstr ""
9"Project-Id-Version: unity8\n"
9"Project-Id-Version: unity8\n"
10"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
11−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
11+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
12"PO-Revision-Date: 2015-07-06 12:05+0000\n"
12"PO-Revision-Date: 2015-07-06 12:05+0000\n"
13"Last-Translator: Folmer Fredslund <Unknown>\n"
13"Last-Translator: Folmer Fredslund <Unknown>\n"
14"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
14"Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Type: text/plain; charset=UTF-8\n"
17"Content-Transfer-Encoding: 8bit\n"
17"Content-Transfer-Encoding: 8bit\n"
18"Plural-Forms: nplurals=2; plural=n != 1;\n"
18"Plural-Forms: nplurals=2; plural=n != 1;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Fastgør genvej"
57msgstr "Fastgør genvej"
58
58
@@ -60,20 +60,20 @@ msgstr "Fastgør genvej"
60msgid "Quit"
60msgid "Quit"
61msgstr ""
61msgstr ""
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Gør genvej flytbar"
65msgstr "Gør genvej flytbar"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Log af"
70msgstr "Log af"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Vil du logge ud?"
74msgstr "Vil du logge ud?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Lås"
79msgstr "Lås"
@@ -524,11 +524,11 @@ msgstr ""
524msgid "Select desktop environment"
524msgid "Select desktop environment"
525msgstr ""
525msgstr ""
526
526
527−#: qml/Launcher/Drawer.qml:92
527+#: qml/Launcher/Drawer.qml:93
528msgid "Search…"
528msgid "Search…"
529msgstr ""
529msgstr ""
530
530
531−#: qml/Launcher/Drawer.qml:127
531+#: qml/Launcher/Drawer.qml:128
532msgctxt "Apps sorted alphabetically"
532msgctxt "Apps sorted alphabetically"
533msgid "A-Z"
533msgid "A-Z"
534msgstr ""
534msgstr ""
po/de.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-01-18 22:45+0000\n"
11"PO-Revision-Date: 2017-01-18 22:45+0000\n"
12"Last-Translator: Torsten Franz <Unknown>\n"
12"Last-Translator: Torsten Franz <Unknown>\n"
13"Language-Team: German <de@li.org>\n"
13"Language-Team: German <de@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Verknüpfung anheften"
56msgstr "Verknüpfung anheften"
57
57
@@ -59,20 +59,20 @@ msgstr "Verknüpfung anheften"
59msgid "Quit"
59msgid "Quit"
60msgstr "Beenden"
60msgstr "Beenden"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Verknüpfung entfernen"
64msgstr "Verknüpfung entfernen"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Abmelden"
69msgstr "Abmelden"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Sind Sie sicher, dass Sie sich abmelden wollen?"
73msgstr "Sind Sie sicher, dass Sie sich abmelden wollen?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Sperren"
78msgstr "Sperren"
@@ -527,11 +527,11 @@ msgstr "PIN"
527msgid "Select desktop environment"
527msgid "Select desktop environment"
528msgstr "Arbeitsumgebung auswählen"
528msgstr "Arbeitsumgebung auswählen"
529
529
530−#: qml/Launcher/Drawer.qml:92
530+#: qml/Launcher/Drawer.qml:93
531msgid "Search…"
531msgid "Search…"
532msgstr "Suchen …"
532msgstr "Suchen …"
533
533
534−#: qml/Launcher/Drawer.qml:127
534+#: qml/Launcher/Drawer.qml:128
535msgctxt "Apps sorted alphabetically"
535msgctxt "Apps sorted alphabetically"
536msgid "A-Z"
536msgid "A-Z"
537msgstr "A-Z"
537msgstr "A-Z"
po/el.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-04-25 16:24+0000\n"
11"PO-Revision-Date: 2016-04-25 16:24+0000\n"
12"Last-Translator: Aggelos Arnaoutis <angelosarn@hotmail.com>\n"
12"Last-Translator: Aggelos Arnaoutis <angelosarn@hotmail.com>\n"
13"Language-Team: Greek <el@li.org>\n"
13"Language-Team: Greek <el@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Καρφίτσωμα συντόμευσης"
56msgstr "Καρφίτσωμα συντόμευσης"
57
57
@@ -59,20 +59,20 @@ msgstr "Καρφίτσωμα συντόμευσης"
59msgid "Quit"
59msgid "Quit"
60msgstr "Έξοδος"
60msgstr "Έξοδος"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Ξεκαρφίτσωμα συντόμευσης"
64msgstr "Ξεκαρφίτσωμα συντόμευσης"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Αποσύνδεση"
69msgstr "Αποσύνδεση"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Επιθυμείτε σίγουρα να αποσυνδεθείτε;"
73msgstr "Επιθυμείτε σίγουρα να αποσυνδεθείτε;"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Κλείδωμα"
78msgstr "Κλείδωμα"
@@ -527,11 +527,11 @@ msgstr "Κωδικός"
527msgid "Select desktop environment"
527msgid "Select desktop environment"
528msgstr "Επιλέξτε περιβάλλον εργασίας"
528msgstr "Επιλέξτε περιβάλλον εργασίας"
529
529
530−#: qml/Launcher/Drawer.qml:92
530+#: qml/Launcher/Drawer.qml:93
531msgid "Search…"
531msgid "Search…"
532msgstr ""
532msgstr ""
533
533
534−#: qml/Launcher/Drawer.qml:127
534+#: qml/Launcher/Drawer.qml:128
535msgctxt "Apps sorted alphabetically"
535msgctxt "Apps sorted alphabetically"
536msgid "A-Z"
536msgid "A-Z"
537msgstr ""
537msgstr ""
po/en_AU.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-03-27 10:09+0000\n"
11"PO-Revision-Date: 2016-03-27 10:09+0000\n"
12"Last-Translator: Jared Norris <jarednorris@ubuntu.com>\n"
12"Last-Translator: Jared Norris <jarednorris@ubuntu.com>\n"
13"Language-Team: English (Australia) <en_AU@li.org>\n"
13"Language-Team: English (Australia) <en_AU@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Pin shortcut"
56msgstr "Pin shortcut"
57
57
@@ -59,20 +59,20 @@ msgstr "Pin shortcut"
59msgid "Quit"
59msgid "Quit"
60msgstr "Quit"
60msgstr "Quit"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Unpin shortcut"
64msgstr "Unpin shortcut"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Log out"
69msgstr "Log out"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Are you sure you want to log out?"
73msgstr "Are you sure you want to log out?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Lock"
78msgstr "Lock"
@@ -521,11 +521,11 @@ msgstr ""
521msgid "Select desktop environment"
521msgid "Select desktop environment"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:92
524+#: qml/Launcher/Drawer.qml:93
525msgid "Search…"
525msgid "Search…"
526msgstr ""
526msgstr ""
527
527
528−#: qml/Launcher/Drawer.qml:127
528+#: qml/Launcher/Drawer.qml:128
529msgctxt "Apps sorted alphabetically"
529msgctxt "Apps sorted alphabetically"
530msgid "A-Z"
530msgid "A-Z"
531msgstr ""
531msgstr ""
po/en_GB.po+13−13
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-07-05 00:37+0000\n"
11"PO-Revision-Date: 2016-07-05 00:37+0000\n"
12"Last-Translator: Andi Chandler <Unknown>\n"
12"Last-Translator: Andi Chandler <Unknown>\n"
13"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
13"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr "Login"
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr "Guest Session"
51msgstr "Guest Session"
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Pin shortcut"
56msgstr "Pin shortcut"
57
57
@@ -59,20 +59,20 @@ msgstr "Pin shortcut"
59msgid "Quit"
59msgid "Quit"
60msgstr "Quit"
60msgstr "Quit"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Unpin shortcut"
64msgstr "Unpin shortcut"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Log out"
69msgstr "Log out"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Are you sure you want to log out?"
73msgstr "Are you sure you want to log out?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Lock"
78msgstr "Lock"
@@ -199,7 +199,7 @@ msgstr "Switches applications via the launcher."
199
199
200#: qml/Components/KeyboardShortcutsOverlay.qml:164
200#: qml/Components/KeyboardShortcutsOverlay.qml:164
201msgid "Super + 1 to 0"
201msgid "Super + 1 to 0"
202−msgstr ""
202+msgstr "Super + 1 to 0"
203
203
204#: qml/Components/KeyboardShortcutsOverlay.qml:169
204#: qml/Components/KeyboardShortcutsOverlay.qml:169
205msgid "Same as clicking on a launcher icon."
205msgid "Same as clicking on a launcher icon."
@@ -521,11 +521,11 @@ msgstr "Passcode"
521msgid "Select desktop environment"
521msgid "Select desktop environment"
522msgstr "Select desktop environment"
522msgstr "Select desktop environment"
523
523
524−#: qml/Launcher/Drawer.qml:92
524+#: qml/Launcher/Drawer.qml:93
525msgid "Search…"
525msgid "Search…"
526msgstr "Search…"
526msgstr "Search…"
527
527
528−#: qml/Launcher/Drawer.qml:127
528+#: qml/Launcher/Drawer.qml:128
529msgctxt "Apps sorted alphabetically"
529msgctxt "Apps sorted alphabetically"
530msgid "A-Z"
530msgid "A-Z"
531msgstr "A-Z"
531msgstr "A-Z"
@@ -623,7 +623,7 @@ msgstr "Call back"
623
623
624#: qml/Panel/PanelMenuPage.qml:92
624#: qml/Panel/PanelMenuPage.qml:92
625msgid "Back"
625msgid "Back"
626−msgstr ""
626+msgstr "Back"
627
627
628#: qml/Stage/SideStage.qml:76
628#: qml/Stage/SideStage.qml:76
629msgid "Drag using 3 fingers any application from one window to the other"
629msgid "Drag using 3 fingers any application from one window to the other"
po/eo.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-06-06 23:37+0000\n"
11"PO-Revision-Date: 2015-06-06 23:37+0000\n"
12"Last-Translator: Eliovir <Unknown>\n"
12"Last-Translator: Eliovir <Unknown>\n"
13"Language-Team: Esperanto <eo@li.org>\n"
13"Language-Team: Esperanto <eo@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr "Ĉesi"
60msgstr "Ĉesi"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Elsaluti"
69msgstr "Elsaluti"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Ĉu vi certas, ke vi volas elsaluti?"
73msgstr "Ĉu vi certas, ke vi volas elsaluti?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Ŝlosi"
78msgstr "Ŝlosi"
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/es.po+15−15
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-03-05 14:59+0000\n"
11"PO-Revision-Date: 2017-03-05 14:59+0000\n"
12"Last-Translator: Adolfo Jayme <fitoschido@gmail.com>\n"
12"Last-Translator: Adolfo Jayme <fitoschido@gmail.com>\n"
13"Language-Team: Spanish <es@li.org>\n"
13"Language-Team: Spanish <es@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr "Acceder"
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr "Sesión de invitado"
51msgstr "Sesión de invitado"
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Anclar"
56msgstr "Anclar"
57
57
@@ -59,20 +59,20 @@ msgstr "Anclar"
59msgid "Quit"
59msgid "Quit"
60msgstr "Salir"
60msgstr "Salir"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Desanclar"
64msgstr "Desanclar"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Cerrar la sesión"
69msgstr "Cerrar la sesión"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "¿Confirma que quiere cerrar la sesión?"
73msgstr "¿Confirma que quiere cerrar la sesión?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Bloquear"
78msgstr "Bloquear"
@@ -199,7 +199,7 @@ msgstr "Recorre las aplicaciones del Lanzador."
199
199
200#: qml/Components/KeyboardShortcutsOverlay.qml:164
200#: qml/Components/KeyboardShortcutsOverlay.qml:164
201msgid "Super + 1 to 0"
201msgid "Super + 1 to 0"
202−msgstr ""
202+msgstr "Super + 1 a 0"
203
203
204#: qml/Components/KeyboardShortcutsOverlay.qml:169
204#: qml/Components/KeyboardShortcutsOverlay.qml:169
205msgid "Same as clicking on a launcher icon."
205msgid "Same as clicking on a launcher icon."
@@ -504,11 +504,11 @@ msgstr "Pruebe de nuevo"
504
504
505#: qml/Greeter/Greeter.qml:562
505#: qml/Greeter/Greeter.qml:562
506msgid "Enter passphrase to unlock"
506msgid "Enter passphrase to unlock"
507−msgstr ""
507+msgstr "Introduzca la contraseña para desbloquear"
508
508
509#: qml/Greeter/Greeter.qml:563
509#: qml/Greeter/Greeter.qml:563
510msgid "Enter passcode to unlock"
510msgid "Enter passcode to unlock"
511−msgstr ""
511+msgstr "Introduzca el código para desbloquear"
512
512
513#: qml/Greeter/NarrowView.qml:242
513#: qml/Greeter/NarrowView.qml:242
514msgid "Emergency"
514msgid "Emergency"
@@ -526,11 +526,11 @@ msgstr "Código"
526msgid "Select desktop environment"
526msgid "Select desktop environment"
527msgstr "Seleccionar entorno de escritorio"
527msgstr "Seleccionar entorno de escritorio"
528
528
529−#: qml/Launcher/Drawer.qml:92
529+#: qml/Launcher/Drawer.qml:93
530msgid "Search…"
530msgid "Search…"
531msgstr "Buscar…"
531msgstr "Buscar…"
532
532
533−#: qml/Launcher/Drawer.qml:127
533+#: qml/Launcher/Drawer.qml:128
534msgctxt "Apps sorted alphabetically"
534msgctxt "Apps sorted alphabetically"
535msgid "A-Z"
535msgid "A-Z"
536msgstr "A-Z"
536msgstr "A-Z"
@@ -628,7 +628,7 @@ msgstr "Devolver llamada"
628
628
629#: qml/Panel/PanelMenuPage.qml:92
629#: qml/Panel/PanelMenuPage.qml:92
630msgid "Back"
630msgid "Back"
631−msgstr ""
631+msgstr "Atrás"
632
632
633#: qml/Stage/SideStage.qml:76
633#: qml/Stage/SideStage.qml:76
634msgid "Drag using 3 fingers any application from one window to the other"
634msgid "Drag using 3 fingers any application from one window to the other"
po/et.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-12-28 06:29+0000\n"
11"PO-Revision-Date: 2016-12-28 06:29+0000\n"
12"Last-Translator: Karlis <Unknown>\n"
12"Last-Translator: Karlis <Unknown>\n"
13"Language-Team: Estonian <et@li.org>\n"
13"Language-Team: Estonian <et@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr "Välju"
60msgstr "Välju"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Logi välja"
69msgstr "Logi välja"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/eu.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-07-13 23:29+0000\n"
11"PO-Revision-Date: 2015-07-13 23:29+0000\n"
12"Last-Translator: Ibai Oihanguren Sala <Unknown>\n"
12"Last-Translator: Ibai Oihanguren Sala <Unknown>\n"
13"Language-Team: Basque <eu@li.org>\n"
13"Language-Team: Basque <eu@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:12+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Ainguratu lasterbidea"
56msgstr "Ainguratu lasterbidea"
57
57
@@ -59,20 +59,20 @@ msgstr "Ainguratu lasterbidea"
59msgid "Quit"
59msgid "Quit"
60msgstr "Irten"
60msgstr "Irten"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Askatu lasterbidea"
64msgstr "Askatu lasterbidea"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Amaitu saioa"
69msgstr "Amaitu saioa"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Ziur saioa amaitu nahi duzula?"
73msgstr "Ziur saioa amaitu nahi duzula?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Blokeatu"
78msgstr "Blokeatu"
@@ -520,11 +520,11 @@ msgstr ""
520msgid "Select desktop environment"
520msgid "Select desktop environment"
521msgstr ""
521msgstr ""
522
522
523−#: qml/Launcher/Drawer.qml:92
523+#: qml/Launcher/Drawer.qml:93
524msgid "Search…"
524msgid "Search…"
525msgstr ""
525msgstr ""
526
526
527−#: qml/Launcher/Drawer.qml:127
527+#: qml/Launcher/Drawer.qml:128
528msgctxt "Apps sorted alphabetically"
528msgctxt "Apps sorted alphabetically"
529msgid "A-Z"
529msgid "A-Z"
530msgstr ""
530msgstr ""
po/fa.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-10-18 07:03+0000\n"
11"PO-Revision-Date: 2016-10-18 07:03+0000\n"
12"Last-Translator: Danial Behzadi <dani.behzi@gmail.com>\n"
12"Last-Translator: Danial Behzadi <dani.behzi@gmail.com>\n"
13"Language-Team: Persian <fa@li.org>\n"
13"Language-Team: Persian <fa@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "سنجاق کردن میانبر"
56msgstr "سنجاق کردن میانبر"
57
57
@@ -59,20 +59,20 @@ msgstr "سنجاق کردن میانبر"
59msgid "Quit"
59msgid "Quit"
60msgstr "خروج"
60msgstr "خروج"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "برداشتن سنجاق میانبر"
64msgstr "برداشتن سنجاق میانبر"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "خروج از حساب"
69msgstr "خروج از حساب"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "مطمئنید که می‌خواهید از حساب خارج شوید"
73msgstr "مطمئنید که می‌خواهید از حساب خارج شوید"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "قفل"
78msgstr "قفل"
@@ -522,11 +522,11 @@ msgstr "رمزعبور"
522msgid "Select desktop environment"
522msgid "Select desktop environment"
523msgstr "گزینش محیط میزکار"
523msgstr "گزینش محیط میزکار"
524
524
525−#: qml/Launcher/Drawer.qml:92
525+#: qml/Launcher/Drawer.qml:93
526msgid "Search…"
526msgid "Search…"
527msgstr ""
527msgstr ""
528
528
529−#: qml/Launcher/Drawer.qml:127
529+#: qml/Launcher/Drawer.qml:128
530msgctxt "Apps sorted alphabetically"
530msgctxt "Apps sorted alphabetically"
531msgid "A-Z"
531msgid "A-Z"
532msgstr ""
532msgstr ""
po/fi.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-07-04 18:32+0000\n"
11"PO-Revision-Date: 2015-07-04 18:32+0000\n"
12"Last-Translator: Jiri Grönroos <Unknown>\n"
12"Last-Translator: Jiri Grönroos <Unknown>\n"
13"Language-Team: Finnish <fi@li.org>\n"
13"Language-Team: Finnish <fi@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr "Kirjaudu"
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr "Vierasistunto"
51msgstr "Vierasistunto"
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Kiinnitä pikakuvake"
56msgstr "Kiinnitä pikakuvake"
57
57
@@ -59,20 +59,20 @@ msgstr "Kiinnitä pikakuvake"
59msgid "Quit"
59msgid "Quit"
60msgstr "Lopeta"
60msgstr "Lopeta"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Poista pikakuvakkeen kiinnitys"
64msgstr "Poista pikakuvakkeen kiinnitys"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Kirjaudu ulos"
69msgstr "Kirjaudu ulos"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Haluatko varmasti kirjautua ulos?"
73msgstr "Haluatko varmasti kirjautua ulos?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Lukitse"
78msgstr "Lukitse"
@@ -525,11 +525,11 @@ msgstr "Suojakoodi"
525msgid "Select desktop environment"
525msgid "Select desktop environment"
526msgstr "Valitse työpöytäympäristö"
526msgstr "Valitse työpöytäympäristö"
527
527
528−#: qml/Launcher/Drawer.qml:92
528+#: qml/Launcher/Drawer.qml:93
529msgid "Search…"
529msgid "Search…"
530msgstr "Etsi…"
530msgstr "Etsi…"
531
531
532−#: qml/Launcher/Drawer.qml:127
532+#: qml/Launcher/Drawer.qml:128
533msgctxt "Apps sorted alphabetically"
533msgctxt "Apps sorted alphabetically"
534msgid "A-Z"
534msgid "A-Z"
535msgstr "A-Ö"
535msgstr "A-Ö"
po/fo.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-01-14 20:08+0000\n"
11"PO-Revision-Date: 2014-01-14 20:08+0000\n"
12"Last-Translator: Jógvan Olsen <jo@jebster.net>\n"
12"Last-Translator: Jógvan Olsen <jo@jebster.net>\n"
13"Language-Team: Faroese <fo@li.org>\n"
13"Language-Team: Faroese <fo@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Heft snarveg"
56msgstr "Heft snarveg"
57
57
@@ -59,20 +59,20 @@ msgstr "Heft snarveg"
59msgid "Quit"
59msgid "Quit"
60msgstr "Gevst"
60msgstr "Gevst"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Óheft snarveg"
64msgstr "Óheft snarveg"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Útrita"
69msgstr "Útrita"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Ert tú vísur ið tú vilt rita út?"
73msgstr "Ert tú vísur ið tú vilt rita út?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Læs"
78msgstr "Læs"
@@ -521,11 +521,11 @@ msgstr ""
521msgid "Select desktop environment"
521msgid "Select desktop environment"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:92
524+#: qml/Launcher/Drawer.qml:93
525msgid "Search…"
525msgid "Search…"
526msgstr ""
526msgstr ""
527
527
528−#: qml/Launcher/Drawer.qml:127
528+#: qml/Launcher/Drawer.qml:128
529msgctxt "Apps sorted alphabetically"
529msgctxt "Apps sorted alphabetically"
530msgid "A-Z"
530msgid "A-Z"
531msgstr ""
531msgstr ""
po/fr.po+13−13
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-02-07 18:31+0000\n"
11"PO-Revision-Date: 2017-02-07 18:31+0000\n"
12"Last-Translator: Anne017 <anneonyme017@openmailbox.org>\n"
12"Last-Translator: Anne017 <anneonyme017@openmailbox.org>\n"
13"Language-Team: French <fr@li.org>\n"
13"Language-Team: French <fr@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr "Se connecter"
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr "Session d'invité"
51msgstr "Session d'invité"
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Épingler le raccourci"
56msgstr "Épingler le raccourci"
57
57
@@ -59,20 +59,20 @@ msgstr "Épingler le raccourci"
59msgid "Quit"
59msgid "Quit"
60msgstr "Quitter"
60msgstr "Quitter"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Détacher le raccourci"
64msgstr "Détacher le raccourci"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Fermer la session"
69msgstr "Fermer la session"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Êtes-vous sûr de vouloir vous déconnecter ?"
73msgstr "Êtes-vous sûr de vouloir vous déconnecter ?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Verrouiller"
78msgstr "Verrouiller"
@@ -199,7 +199,7 @@ msgstr "Bascule les applications via le lanceur."
199
199
200#: qml/Components/KeyboardShortcutsOverlay.qml:164
200#: qml/Components/KeyboardShortcutsOverlay.qml:164
201msgid "Super + 1 to 0"
201msgid "Super + 1 to 0"
202−msgstr ""
202+msgstr "Super + 1 à 0"
203
203
204#: qml/Components/KeyboardShortcutsOverlay.qml:169
204#: qml/Components/KeyboardShortcutsOverlay.qml:169
205msgid "Same as clicking on a launcher icon."
205msgid "Same as clicking on a launcher icon."
@@ -529,11 +529,11 @@ msgstr "Code"
529msgid "Select desktop environment"
529msgid "Select desktop environment"
530msgstr "Sélectionner l'environnement de bureau"
530msgstr "Sélectionner l'environnement de bureau"
531
531
532−#: qml/Launcher/Drawer.qml:92
532+#: qml/Launcher/Drawer.qml:93
533msgid "Search…"
533msgid "Search…"
534msgstr "Rechercher..."
534msgstr "Rechercher..."
535
535
536−#: qml/Launcher/Drawer.qml:127
536+#: qml/Launcher/Drawer.qml:128
537msgctxt "Apps sorted alphabetically"
537msgctxt "Apps sorted alphabetically"
538msgid "A-Z"
538msgid "A-Z"
539msgstr "A-Z"
539msgstr "A-Z"
@@ -631,7 +631,7 @@ msgstr "Rappeler"
631
631
632#: qml/Panel/PanelMenuPage.qml:92
632#: qml/Panel/PanelMenuPage.qml:92
633msgid "Back"
633msgid "Back"
634−msgstr ""
634+msgstr "Retour"
635
635
636#: qml/Stage/SideStage.qml:76
636#: qml/Stage/SideStage.qml:76
637msgid "Drag using 3 fingers any application from one window to the other"
637msgid "Drag using 3 fingers any application from one window to the other"
po/ga.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-01-25 11:33+0000\n"
11"PO-Revision-Date: 2016-01-25 11:33+0000\n"
12"Last-Translator: Joshua Kiley <Unknown>\n"
12"Last-Translator: Joshua Kiley <Unknown>\n"
13"Language-Team: Irish <ga@li.org>\n"
13"Language-Team: Irish <ga@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n==2 ? 1 : 2;\n"
17"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n==2 ? 1 : 2;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Cruthaigh Aicearra Leis An Bharra"
56msgstr "Cruthaigh Aicearra Leis An Bharra"
57
57
@@ -59,20 +59,20 @@ msgstr "Cruthaigh Aicearra Leis An Bharra"
59msgid "Quit"
59msgid "Quit"
60msgstr "Éirigh as"
60msgstr "Éirigh as"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Bain Aicearra Den Bharra"
64msgstr "Bain Aicearra Den Bharra"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Logáil Amach"
69msgstr "Logáil Amach"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "An bhfuil tú cinnte gur mhaith leat lógáil amach?"
73msgstr "An bhfuil tú cinnte gur mhaith leat lógáil amach?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Cuir Faoi Ghlas"
78msgstr "Cuir Faoi Ghlas"
@@ -518,11 +518,11 @@ msgstr ""
518msgid "Select desktop environment"
518msgid "Select desktop environment"
519msgstr ""
519msgstr ""
520
520
521−#: qml/Launcher/Drawer.qml:92
521+#: qml/Launcher/Drawer.qml:93
522msgid "Search…"
522msgid "Search…"
523msgstr ""
523msgstr ""
524
524
525−#: qml/Launcher/Drawer.qml:127
525+#: qml/Launcher/Drawer.qml:128
526msgctxt "Apps sorted alphabetically"
526msgctxt "Apps sorted alphabetically"
527msgid "A-Z"
527msgid "A-Z"
528msgstr ""
528msgstr ""
po/gd.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-04-08 18:34+0000\n"
11"PO-Revision-Date: 2016-04-08 18:34+0000\n"
12"Last-Translator: Akerbeltz <fios@akerbeltz.org>\n"
12"Last-Translator: Akerbeltz <fios@akerbeltz.org>\n"
13"Language-Team: Fòram na Gàidhlig\n"
13"Language-Team: Fòram na Gàidhlig\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : "
17"Plural-Forms: nplurals=4; plural=(n==1 || n==11) ? 0 : (n==2 || n==12) ? 1 : "
18"(n > 2 && n < 20) ? 2 : 3;\n"
18"(n > 2 && n < 20) ? 2 : 3;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21"Language: gd\n"
21"Language: gd\n"
22
22
23#: plugins/LightDM/Greeter.cpp:188
23#: plugins/LightDM/Greeter.cpp:188
@@ -52,8 +52,8 @@ msgstr ""
52msgid "Guest Session"
52msgid "Guest Session"
53msgstr ""
53msgstr ""
54
54
55−#: plugins/Unity/Launcher/launcheritem.cpp:50
55+#: plugins/Unity/Launcher/launcheritem.cpp:49
56−#: plugins/Unity/Launcher/launcheritem.cpp:122
56+#: plugins/Unity/Launcher/launcheritem.cpp:123
57msgid "Pin shortcut"
57msgid "Pin shortcut"
58msgstr "Prìnich ath-ghoirid"
58msgstr "Prìnich ath-ghoirid"
59
59
@@ -61,20 +61,20 @@ msgstr "Prìnich ath-ghoirid"
61msgid "Quit"
61msgid "Quit"
62msgstr "Fàg an-seo"
62msgstr "Fàg an-seo"
63
63
64−#: plugins/Unity/Launcher/launcheritem.cpp:122
64+#: plugins/Unity/Launcher/launcheritem.cpp:123
65msgid "Unpin shortcut"
65msgid "Unpin shortcut"
66msgstr "Neo-phrìnich an ath-ghoirid"
66msgstr "Neo-phrìnich an ath-ghoirid"
67
67
68−#: qml/Components/Dialogs.qml:177
68+#: qml/Components/Dialogs.qml:176
69msgctxt "Title: Lock/Log out dialog"
69msgctxt "Title: Lock/Log out dialog"
70msgid "Log out"
70msgid "Log out"
71msgstr "Clàraich a-mach"
71msgstr "Clàraich a-mach"
72
72
73−#: qml/Components/Dialogs.qml:178
73+#: qml/Components/Dialogs.qml:177
74msgid "Are you sure you want to log out?"
74msgid "Are you sure you want to log out?"
75msgstr "A bheil thu cinnteach gu bheil thu airson clàradh a-mach?"
75msgstr "A bheil thu cinnteach gu bheil thu airson clàradh a-mach?"
76
76
77−#: qml/Components/Dialogs.qml:181
77+#: qml/Components/Dialogs.qml:180
78msgctxt "Button: Lock the system"
78msgctxt "Button: Lock the system"
79msgid "Lock"
79msgid "Lock"
80msgstr "Glais"
80msgstr "Glais"
@@ -532,11 +532,11 @@ msgstr "Còd-faire"
532msgid "Select desktop environment"
532msgid "Select desktop environment"
533msgstr "Tagh àrainneachd an deasga"
533msgstr "Tagh àrainneachd an deasga"
534
534
535−#: qml/Launcher/Drawer.qml:92
535+#: qml/Launcher/Drawer.qml:93
536msgid "Search…"
536msgid "Search…"
537msgstr ""
537msgstr ""
538
538
539−#: qml/Launcher/Drawer.qml:127
539+#: qml/Launcher/Drawer.qml:128
540msgctxt "Apps sorted alphabetically"
540msgctxt "Apps sorted alphabetically"
541msgid "A-Z"
541msgid "A-Z"
542msgstr ""
542msgstr ""
po/gl.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-02-02 07:25+0000\n"
11"PO-Revision-Date: 2017-02-02 07:25+0000\n"
12"Last-Translator: Marcos Lans <Unknown>\n"
12"Last-Translator: Marcos Lans <Unknown>\n"
13"Language-Team: Galician <gl@li.org>\n"
13"Language-Team: Galician <gl@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr "Iniciar sesión"
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr "Sesión de convidado"
51msgstr "Sesión de convidado"
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Fixar o atallo"
56msgstr "Fixar o atallo"
57
57
@@ -59,20 +59,20 @@ msgstr "Fixar o atallo"
59msgid "Quit"
59msgid "Quit"
60msgstr "Saír"
60msgstr "Saír"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Eliminar o atallo"
64msgstr "Eliminar o atallo"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Saír"
69msgstr "Saír"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Desexa pechar a sesión?"
73msgstr "Desexa pechar a sesión?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Bloquear"
78msgstr "Bloquear"
@@ -521,11 +521,11 @@ msgstr "Clave"
521msgid "Select desktop environment"
521msgid "Select desktop environment"
522msgstr "Seleccione o ambiente de escritorio"
522msgstr "Seleccione o ambiente de escritorio"
523
523
524−#: qml/Launcher/Drawer.qml:92
524+#: qml/Launcher/Drawer.qml:93
525msgid "Search…"
525msgid "Search…"
526msgstr "Buscar..."
526msgstr "Buscar..."
527
527
528−#: qml/Launcher/Drawer.qml:127
528+#: qml/Launcher/Drawer.qml:128
529msgctxt "Apps sorted alphabetically"
529msgctxt "Apps sorted alphabetically"
530msgid "A-Z"
530msgid "A-Z"
531msgstr "A-Z"
531msgstr "A-Z"
po/gv.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-04-02 14:24+0000\n"
11"PO-Revision-Date: 2015-04-02 14:24+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Manx <gv@li.org>\n"
13"Language-Team: Manx <gv@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : (n == 2 ? 1 : 2);\n"
17"Plural-Forms: nplurals=3; plural=n == 1 ? 0 : (n == 2 ? 1 : 2);\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Jean freenaghey yn cassan er lheh"
56msgstr "Jean freenaghey yn cassan er lheh"
57
57
@@ -59,20 +59,20 @@ msgstr "Jean freenaghey yn cassan er lheh"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Jean neu-freenaghey yn cassan er lheh"
64msgstr "Jean neu-freenaghey yn cassan er lheh"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Vel oo shickyr dy vel oo laccal loggal magh?"
73msgstr "Vel oo shickyr dy vel oo laccal loggal magh?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -524,11 +524,11 @@ msgstr ""
524msgid "Select desktop environment"
524msgid "Select desktop environment"
525msgstr ""
525msgstr ""
526
526
527−#: qml/Launcher/Drawer.qml:92
527+#: qml/Launcher/Drawer.qml:93
528msgid "Search…"
528msgid "Search…"
529msgstr ""
529msgstr ""
530
530
531−#: qml/Launcher/Drawer.qml:127
531+#: qml/Launcher/Drawer.qml:128
532msgctxt "Apps sorted alphabetically"
532msgctxt "Apps sorted alphabetically"
533msgid "A-Z"
533msgid "A-Z"
534msgstr ""
534msgstr ""
po/he.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-07-12 08:47+0000\n"
11"PO-Revision-Date: 2015-07-12 08:47+0000\n"
12"Last-Translator: Yaron <sh.yaron@gmail.com>\n"
12"Last-Translator: Yaron <sh.yaron@gmail.com>\n"
13"Language-Team: Hebrew <he@li.org>\n"
13"Language-Team: Hebrew <he@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "הצמדת קיצור דרך"
56msgstr "הצמדת קיצור דרך"
57
57
@@ -59,20 +59,20 @@ msgstr "הצמדת קיצור דרך"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "הפרדת קיצור הדרך"
64msgstr "הפרדת קיצור הדרך"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "יציאה"
69msgstr "יציאה"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "האם אכן לצאת מהמערכת?"
73msgstr "האם אכן לצאת מהמערכת?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "נעילה"
78msgstr "נעילה"
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/hi.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-01-15 01:49+0000\n"
11"PO-Revision-Date: 2014-01-15 01:49+0000\n"
12"Last-Translator: Siddhanathan Shanmugam <Unknown>\n"
12"Last-Translator: Siddhanathan Shanmugam <Unknown>\n"
13"Language-Team: Hindi <hi@li.org>\n"
13"Language-Team: Hindi <hi@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/hr.po+25−25
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-05-04 17:52+0000\n"
11"PO-Revision-Date: 2016-05-04 17:52+0000\n"
12"Last-Translator: gogo <trebelnik2@gmail.com>\n"
12"Last-Translator: gogo <trebelnik2@gmail.com>\n"
13"Language-Team: Croatian <hr@li.org>\n"
13"Language-Team: Croatian <hr@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr "Prijava"
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr "Prijava gosta"
52msgstr "Prijava gosta"
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Pričvrsti kraticu"
57msgstr "Pričvrsti kraticu"
58
58
@@ -60,20 +60,20 @@ msgstr "Pričvrsti kraticu"
60msgid "Quit"
60msgid "Quit"
61msgstr "Zatvori"
61msgstr "Zatvori"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Ukloni kraticu"
65msgstr "Ukloni kraticu"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Odjava"
70msgstr "Odjava"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Sigurno se želite odjaviti?"
74msgstr "Sigurno se želite odjaviti?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Zaključaj"
79msgstr "Zaključaj"
@@ -200,7 +200,7 @@ msgstr "Prebacuje aplikacije putem pokretača."
200
200
201#: qml/Components/KeyboardShortcutsOverlay.qml:164
201#: qml/Components/KeyboardShortcutsOverlay.qml:164
202msgid "Super + 1 to 0"
202msgid "Super + 1 to 0"
203−msgstr ""
203+msgstr "Super + 1 do 0"
204
204
205#: qml/Components/KeyboardShortcutsOverlay.qml:169
205#: qml/Components/KeyboardShortcutsOverlay.qml:169
206msgid "Same as clicking on a launcher icon."
206msgid "Same as clicking on a launcher icon."
@@ -208,11 +208,11 @@ msgstr "Isto kao i klikanje na ikonu pokretača."
208
208
209#: qml/Components/KeyboardShortcutsOverlay.qml:177
209#: qml/Components/KeyboardShortcutsOverlay.qml:177
210msgid "Super + A"
210msgid "Super + A"
211−msgstr ""
211+msgstr "Super + A"
212
212
213#: qml/Components/KeyboardShortcutsOverlay.qml:182
213#: qml/Components/KeyboardShortcutsOverlay.qml:182
214msgid "Opens the Application Drawer."
214msgid "Opens the Application Drawer."
215−msgstr ""
215+msgstr "Otvara pretinac aplikacija."
216
216
217#: qml/Components/KeyboardShortcutsOverlay.qml:194
217#: qml/Components/KeyboardShortcutsOverlay.qml:194
218msgid "Scopes"
218msgid "Scopes"
@@ -362,19 +362,19 @@ msgstr ""
362
362
363#: qml/Components/VirtualTouchPad.qml:327
363#: qml/Components/VirtualTouchPad.qml:327
364msgid "Tap left button to click."
364msgid "Tap left button to click."
365−msgstr ""
365+msgstr "Dotaknite lijevu tipku za klik."
366
366
367#: qml/Components/VirtualTouchPad.qml:339
367#: qml/Components/VirtualTouchPad.qml:339
368msgid "Tap right button to right click."
368msgid "Tap right button to right click."
369−msgstr ""
369+msgstr "Dotaknite desnu tipku za klik."
370
370
371#: qml/Components/VirtualTouchPad.qml:351
371#: qml/Components/VirtualTouchPad.qml:351
372msgid "Swipe with two fingers to scroll."
372msgid "Swipe with two fingers to scroll."
373−msgstr ""
373+msgstr "Povucite s dva prsta za pomicanje."
374
374
375#: qml/Components/VirtualTouchPad.qml:396
375#: qml/Components/VirtualTouchPad.qml:396
376msgid "Find more settings in the system settings."
376msgid "Find more settings in the system settings."
377−msgstr ""
377+msgstr "Potražite više postavki u postavkama sustava."
378
378
379#: qml/Dash/DashPageHeader.qml:361
379#: qml/Dash/DashPageHeader.qml:361
380msgctxt "Button: Open the Ubuntu Store"
380msgctxt "Button: Open the Ubuntu Store"
@@ -503,11 +503,11 @@ msgstr "Pokušaj ponovno"
503
503
504#: qml/Greeter/Greeter.qml:562
504#: qml/Greeter/Greeter.qml:562
505msgid "Enter passphrase to unlock"
505msgid "Enter passphrase to unlock"
506−msgstr ""
506+msgstr "Upišite lozinku za otključavanje"
507
507
508#: qml/Greeter/Greeter.qml:563
508#: qml/Greeter/Greeter.qml:563
509msgid "Enter passcode to unlock"
509msgid "Enter passcode to unlock"
510−msgstr ""
510+msgstr "Upišite kôd za otključavanje"
511
511
512#: qml/Greeter/NarrowView.qml:242
512#: qml/Greeter/NarrowView.qml:242
513msgid "Emergency"
513msgid "Emergency"
@@ -525,18 +525,18 @@ msgstr "Kôd"
525msgid "Select desktop environment"
525msgid "Select desktop environment"
526msgstr "Odaberi okruženje radne površine"
526msgstr "Odaberi okruženje radne površine"
527
527
528−#: qml/Launcher/Drawer.qml:92
528+#: qml/Launcher/Drawer.qml:93
529msgid "Search…"
529msgid "Search…"
530−msgstr ""
530+msgstr "Pretraži…"
531
531
532−#: qml/Launcher/Drawer.qml:127
532+#: qml/Launcher/Drawer.qml:128
533msgctxt "Apps sorted alphabetically"
533msgctxt "Apps sorted alphabetically"
534msgid "A-Z"
534msgid "A-Z"
535−msgstr ""
535+msgstr "A-Ž"
536
536
537#: qml/Launcher/MoreAppsHeader.qml:55
537#: qml/Launcher/MoreAppsHeader.qml:55
538msgid "More apps in the store"
538msgid "More apps in the store"
539−msgstr ""
539+msgstr "Više aplikacija u trgovini"
540
540
541#: qml/Notifications/NotificationMenuItemFactory.qml:124
541#: qml/Notifications/NotificationMenuItemFactory.qml:124
542msgid "Show password"
542msgid "Show password"
@@ -630,7 +630,7 @@ msgstr "Uzvrati poziv"
630
630
631#: qml/Panel/PanelMenuPage.qml:92
631#: qml/Panel/PanelMenuPage.qml:92
632msgid "Back"
632msgid "Back"
633−msgstr ""
633+msgstr "Natrag"
634
634
635#: qml/Stage/SideStage.qml:76
635#: qml/Stage/SideStage.qml:76
636msgid "Drag using 3 fingers any application from one window to the other"
636msgid "Drag using 3 fingers any application from one window to the other"
@@ -639,7 +639,7 @@ msgstr ""
639
639
640#: qml/Tutorial/TutorialLeftLong.qml:49
640#: qml/Tutorial/TutorialLeftLong.qml:49
641msgid "Long swipe from the left edge to open the Application Drawer"
641msgid "Long swipe from the left edge to open the Application Drawer"
642−msgstr ""
642+msgstr "Duže povucite s lijevog ruba za otvaranje pretinca aplikacija"
643
643
644#: qml/Tutorial/TutorialLeft.qml:47
644#: qml/Tutorial/TutorialLeft.qml:47
645msgid "Short swipe from the left edge to open the launcher"
645msgid "Short swipe from the left edge to open the launcher"
po/hu.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-08-17 10:53+0000\n"
11"PO-Revision-Date: 2016-08-17 10:53+0000\n"
12"Last-Translator: Richard Somlói <ricsipontaz@gmail.com>\n"
12"Last-Translator: Richard Somlói <ricsipontaz@gmail.com>\n"
13"Language-Team: Hungarian <hu@li.org>\n"
13"Language-Team: Hungarian <hu@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Indító rögzítése"
56msgstr "Indító rögzítése"
57
57
@@ -59,20 +59,20 @@ msgstr "Indító rögzítése"
59msgid "Quit"
59msgid "Quit"
60msgstr "Kilépés"
60msgstr "Kilépés"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Indító feloldása"
64msgstr "Indító feloldása"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Kijelentkezés"
69msgstr "Kijelentkezés"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Biztos benne, hogy kijelentkezik?"
73msgstr "Biztos benne, hogy kijelentkezik?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Zárolás"
78msgstr "Zárolás"
@@ -523,11 +523,11 @@ msgstr "Jelkód"
523msgid "Select desktop environment"
523msgid "Select desktop environment"
524msgstr "Asztali-környezet kiválasztása"
524msgstr "Asztali-környezet kiválasztása"
525
525
526−#: qml/Launcher/Drawer.qml:92
526+#: qml/Launcher/Drawer.qml:93
527msgid "Search…"
527msgid "Search…"
528msgstr ""
528msgstr ""
529
529
530−#: qml/Launcher/Drawer.qml:127
530+#: qml/Launcher/Drawer.qml:128
531msgctxt "Apps sorted alphabetically"
531msgctxt "Apps sorted alphabetically"
532msgid "A-Z"
532msgid "A-Z"
533msgstr ""
533msgstr ""
po/hy.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-10-28 06:34+0000\n"
11"PO-Revision-Date: 2014-10-28 06:34+0000\n"
12"Last-Translator: Vahan Harutyunyan <Unknown>\n"
12"Last-Translator: Vahan Harutyunyan <Unknown>\n"
13"Language-Team: Armenian <hy@li.org>\n"
13"Language-Team: Armenian <hy@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:12+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Փակցնել պիտակը"
56msgstr "Փակցնել պիտակը"
57
57
@@ -59,20 +59,20 @@ msgstr "Փակցնել պիտակը"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Հեռացնել պիտակը"
64msgstr "Հեռացնել պիտակը"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Դուք համոզվա՞ծ եք, որ ցանկանում եք դուրս գալ համակարգից"
73msgstr "Դուք համոզվա՞ծ եք, որ ցանկանում եք դուրս գալ համակարգից"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -521,11 +521,11 @@ msgstr ""
521msgid "Select desktop environment"
521msgid "Select desktop environment"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:92
524+#: qml/Launcher/Drawer.qml:93
525msgid "Search…"
525msgid "Search…"
526msgstr ""
526msgstr ""
527
527
528−#: qml/Launcher/Drawer.qml:127
528+#: qml/Launcher/Drawer.qml:128
529msgctxt "Apps sorted alphabetically"
529msgctxt "Apps sorted alphabetically"
530msgid "A-Z"
530msgid "A-Z"
531msgstr ""
531msgstr ""
po/ia.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-08-25 19:31+0000\n"
11"PO-Revision-Date: 2015-08-25 19:31+0000\n"
12"Last-Translator: karm <melo@carmu.com>\n"
12"Last-Translator: karm <melo@carmu.com>\n"
13"Language-Team: Interlingua <ia@li.org>\n"
13"Language-Team: Interlingua <ia@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Via-breve a pin"
56msgstr "Via-breve a pin"
57
57
@@ -59,20 +59,20 @@ msgstr "Via-breve a pin"
59msgid "Quit"
59msgid "Quit"
60msgstr "Quitar"
60msgstr "Quitar"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Via-breve a levar pin"
64msgstr "Via-breve a levar pin"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Clauder de session"
69msgstr "Clauder de session"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Desira tu vermente Clauder le Session"
73msgstr "Desira tu vermente Clauder le Session"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Blocar"
78msgstr "Blocar"
@@ -523,11 +523,11 @@ msgstr "Codice-contrasigno"
523msgid "Select desktop environment"
523msgid "Select desktop environment"
524msgstr "Seliger le ambiente del scriptorio"
524msgstr "Seliger le ambiente del scriptorio"
525
525
526−#: qml/Launcher/Drawer.qml:92
526+#: qml/Launcher/Drawer.qml:93
527msgid "Search…"
527msgid "Search…"
528msgstr ""
528msgstr ""
529
529
530−#: qml/Launcher/Drawer.qml:127
530+#: qml/Launcher/Drawer.qml:128
531msgctxt "Apps sorted alphabetically"
531msgctxt "Apps sorted alphabetically"
532msgid "A-Z"
532msgid "A-Z"
533msgstr ""
533msgstr ""
po/id.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2013-06-26 22:35+0000\n"
11"PO-Revision-Date: 2013-06-26 22:35+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Indonesian <id@li.org>\n"
13"Language-Team: Indonesian <id@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Paku pintasan"
56msgstr "Paku pintasan"
57
57
@@ -59,20 +59,20 @@ msgstr "Paku pintasan"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Lepas pintasan"
64msgstr "Lepas pintasan"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Anda yakin ingin log keluar?"
73msgstr "Anda yakin ingin log keluar?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -520,11 +520,11 @@ msgstr ""
520msgid "Select desktop environment"
520msgid "Select desktop environment"
521msgstr ""
521msgstr ""
522
522
523−#: qml/Launcher/Drawer.qml:92
523+#: qml/Launcher/Drawer.qml:93
524msgid "Search…"
524msgid "Search…"
525msgstr ""
525msgstr ""
526
526
527−#: qml/Launcher/Drawer.qml:127
527+#: qml/Launcher/Drawer.qml:128
528msgctxt "Apps sorted alphabetically"
528msgctxt "Apps sorted alphabetically"
529msgid "A-Z"
529msgid "A-Z"
530msgstr ""
530msgstr ""
po/is.po+11−11
@@ -9,7 +9,7 @@ msgid ""
9msgstr ""
9msgstr ""
10"Project-Id-Version: po_unity8-is\n"
10"Project-Id-Version: po_unity8-is\n"
11"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
11"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
12−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
12+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
13"PO-Revision-Date: 2014-11-13 09:32+0000\n"
13"PO-Revision-Date: 2014-11-13 09:32+0000\n"
14"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>\n"
14"Last-Translator: Sveinn í Felli <sv1@fellsnet.is>\n"
15"Language-Team: Icelandic <translation-team-is@lists.sourceforge.net>\n"
15"Language-Team: Icelandic <translation-team-is@lists.sourceforge.net>\n"
@@ -17,8 +17,8 @@ msgstr ""
17"Content-Type: text/plain; charset=UTF-8\n"
17"Content-Type: text/plain; charset=UTF-8\n"
18"Content-Transfer-Encoding: 8bit\n"
18"Content-Transfer-Encoding: 8bit\n"
19"Plural-Forms: nplurals=2; plural=n != 1;\n"
19"Plural-Forms: nplurals=2; plural=n != 1;\n"
20−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
20+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
21−"X-Generator: Launchpad (build 18331)\n"
21+"X-Generator: Launchpad (build 18334)\n"
22"Language: is\n"
22"Language: is\n"
23
23
24#: plugins/LightDM/Greeter.cpp:188
24#: plugins/LightDM/Greeter.cpp:188
@@ -53,8 +53,8 @@ msgstr ""
53msgid "Guest Session"
53msgid "Guest Session"
54msgstr ""
54msgstr ""
55
55
56−#: plugins/Unity/Launcher/launcheritem.cpp:50
56+#: plugins/Unity/Launcher/launcheritem.cpp:49
57−#: plugins/Unity/Launcher/launcheritem.cpp:122
57+#: plugins/Unity/Launcher/launcheritem.cpp:123
58msgid "Pin shortcut"
58msgid "Pin shortcut"
59msgstr "Pinna flýtilykil"
59msgstr "Pinna flýtilykil"
60
60
@@ -62,20 +62,20 @@ msgstr "Pinna flýtilykil"
62msgid "Quit"
62msgid "Quit"
63msgstr ""
63msgstr ""
64
64
65−#: plugins/Unity/Launcher/launcheritem.cpp:122
65+#: plugins/Unity/Launcher/launcheritem.cpp:123
66msgid "Unpin shortcut"
66msgid "Unpin shortcut"
67msgstr "Losa flýtilykil"
67msgstr "Losa flýtilykil"
68
68
69−#: qml/Components/Dialogs.qml:177
69+#: qml/Components/Dialogs.qml:176
70msgctxt "Title: Lock/Log out dialog"
70msgctxt "Title: Lock/Log out dialog"
71msgid "Log out"
71msgid "Log out"
72msgstr ""
72msgstr ""
73
73
74−#: qml/Components/Dialogs.qml:178
74+#: qml/Components/Dialogs.qml:177
75msgid "Are you sure you want to log out?"
75msgid "Are you sure you want to log out?"
76msgstr "Ertu viss um að þú viljir skrá þig út?"
76msgstr "Ertu viss um að þú viljir skrá þig út?"
77
77
78−#: qml/Components/Dialogs.qml:181
78+#: qml/Components/Dialogs.qml:180
79msgctxt "Button: Lock the system"
79msgctxt "Button: Lock the system"
80msgid "Lock"
80msgid "Lock"
81msgstr ""
81msgstr ""
@@ -526,11 +526,11 @@ msgstr ""
526msgid "Select desktop environment"
526msgid "Select desktop environment"
527msgstr ""
527msgstr ""
528
528
529−#: qml/Launcher/Drawer.qml:92
529+#: qml/Launcher/Drawer.qml:93
530msgid "Search…"
530msgid "Search…"
531msgstr ""
531msgstr ""
532
532
533−#: qml/Launcher/Drawer.qml:127
533+#: qml/Launcher/Drawer.qml:128
534msgctxt "Apps sorted alphabetically"
534msgctxt "Apps sorted alphabetically"
535msgid "A-Z"
535msgid "A-Z"
536msgstr ""
536msgstr ""
po/it.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-02-14 10:03+0000\n"
11"PO-Revision-Date: 2017-02-14 10:03+0000\n"
12"Last-Translator: Milo Casagrande <milo.casagrande@gmail.com>\n"
12"Last-Translator: Milo Casagrande <milo.casagrande@gmail.com>\n"
13"Language-Team: Italian <it@li.org>\n"
13"Language-Team: Italian <it@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr "Accesso"
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr "Sessione ospite"
51msgstr "Sessione ospite"
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Blocca scorciatoia"
56msgstr "Blocca scorciatoia"
57
57
@@ -59,20 +59,20 @@ msgstr "Blocca scorciatoia"
59msgid "Quit"
59msgid "Quit"
60msgstr "Esci"
60msgstr "Esci"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Sblocca scorciatoia"
64msgstr "Sblocca scorciatoia"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Termina sessione"
69msgstr "Termina sessione"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Terminare veramente la sessione?"
73msgstr "Terminare veramente la sessione?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Blocca"
78msgstr "Blocca"
@@ -527,11 +527,11 @@ msgstr "Codice"
527msgid "Select desktop environment"
527msgid "Select desktop environment"
528msgstr "Seleziona l'ambiente grafico"
528msgstr "Seleziona l'ambiente grafico"
529
529
530−#: qml/Launcher/Drawer.qml:92
530+#: qml/Launcher/Drawer.qml:93
531msgid "Search…"
531msgid "Search…"
532msgstr "Cerca…"
532msgstr "Cerca…"
533
533
534−#: qml/Launcher/Drawer.qml:127
534+#: qml/Launcher/Drawer.qml:128
535msgctxt "Apps sorted alphabetically"
535msgctxt "Apps sorted alphabetically"
536msgid "A-Z"
536msgid "A-Z"
537msgstr "A-Z"
537msgstr "A-Z"
po/ja.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-10-05 10:05+0000\n"
11"PO-Revision-Date: 2015-10-05 10:05+0000\n"
12"Last-Translator: Kentaro Kazuhama <Unknown>\n"
12"Last-Translator: Kentaro Kazuhama <Unknown>\n"
13"Language-Team: Japanese <ja@li.org>\n"
13"Language-Team: Japanese <ja@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "ショートカットを追加する"
56msgstr "ショートカットを追加する"
57
57
@@ -59,20 +59,20 @@ msgstr "ショートカットを追加する"
59msgid "Quit"
59msgid "Quit"
60msgstr "終了"
60msgstr "終了"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "ショートカットを削除する"
64msgstr "ショートカットを削除する"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "ログアウト"
69msgstr "ログアウト"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "本当にログアウトしますか?"
73msgstr "本当にログアウトしますか?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "ロック"
78msgstr "ロック"
@@ -516,11 +516,11 @@ msgstr ""
516msgid "Select desktop environment"
516msgid "Select desktop environment"
517msgstr ""
517msgstr ""
518
518
519−#: qml/Launcher/Drawer.qml:92
519+#: qml/Launcher/Drawer.qml:93
520msgid "Search…"
520msgid "Search…"
521msgstr ""
521msgstr ""
522
522
523−#: qml/Launcher/Drawer.qml:127
523+#: qml/Launcher/Drawer.qml:128
524msgctxt "Apps sorted alphabetically"
524msgctxt "Apps sorted alphabetically"
525msgid "A-Z"
525msgid "A-Z"
526msgstr ""
526msgstr ""
po/km.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-08-20 02:48+0000\n"
11"PO-Revision-Date: 2014-08-20 02:48+0000\n"
12"Last-Translator: Sophea Sok <sksophea@gmail.com>\n"
12"Last-Translator: Sophea Sok <sksophea@gmail.com>\n"
13"Language-Team: Khmer <km@li.org>\n"
13"Language-Team: Khmer <km@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "ភ្ជាប់​ផ្លូវកាត់"
56msgstr "ភ្ជាប់​ផ្លូវកាត់"
57
57
@@ -59,20 +59,20 @@ msgstr "ភ្ជាប់​ផ្លូវកាត់"
59msgid "Quit"
59msgid "Quit"
60msgstr "ចាកចេញ"
60msgstr "ចាកចេញ"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "មិន​ភ្ជាប់ផ្លូវកាត់"
64msgstr "មិន​ភ្ជាប់ផ្លូវកាត់"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "ចេញ"
69msgstr "ចេញ"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "តើ​អ្នក​ពិតជា​ចង់​ចេញ​មែន​ឬ?"
73msgstr "តើ​អ្នក​ពិតជា​ចង់​ចេញ​មែន​ឬ?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "ចាក់សោ"
78msgstr "ចាក់សោ"
@@ -519,11 +519,11 @@ msgstr ""
519msgid "Select desktop environment"
519msgid "Select desktop environment"
520msgstr ""
520msgstr ""
521
521
522−#: qml/Launcher/Drawer.qml:92
522+#: qml/Launcher/Drawer.qml:93
523msgid "Search…"
523msgid "Search…"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:127
526+#: qml/Launcher/Drawer.qml:128
527msgctxt "Apps sorted alphabetically"
527msgctxt "Apps sorted alphabetically"
528msgid "A-Z"
528msgid "A-Z"
529msgstr ""
529msgstr ""
po/kn.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2013-06-27 05:43+0000\n"
11"PO-Revision-Date: 2013-06-27 05:43+0000\n"
12"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
12"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
13"Language-Team: Kannada <kn@li.org>\n"
13"Language-Team: Kannada <kn@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/ko.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-08-19 13:02+0000\n"
11"PO-Revision-Date: 2014-08-19 13:02+0000\n"
12"Last-Translator: MinSik CHO <Unknown>\n"
12"Last-Translator: MinSik CHO <Unknown>\n"
13"Language-Team: Korean <ko@li.org>\n"
13"Language-Team: Korean <ko@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "바로 가기를 고정"
56msgstr "바로 가기를 고정"
57
57
@@ -59,20 +59,20 @@ msgstr "바로 가기를 고정"
59msgid "Quit"
59msgid "Quit"
60msgstr "끝내기"
60msgstr "끝내기"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "바로 가기를 고정 해제"
64msgstr "바로 가기를 고정 해제"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "로그아웃"
69msgstr "로그아웃"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "정말 로그아웃하시겠습니까?"
73msgstr "정말 로그아웃하시겠습니까?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "잠그기"
78msgstr "잠그기"
@@ -516,11 +516,11 @@ msgstr ""
516msgid "Select desktop environment"
516msgid "Select desktop environment"
517msgstr ""
517msgstr ""
518
518
519−#: qml/Launcher/Drawer.qml:92
519+#: qml/Launcher/Drawer.qml:93
520msgid "Search…"
520msgid "Search…"
521msgstr ""
521msgstr ""
522
522
523−#: qml/Launcher/Drawer.qml:127
523+#: qml/Launcher/Drawer.qml:128
524msgctxt "Apps sorted alphabetically"
524msgctxt "Apps sorted alphabetically"
525msgid "A-Z"
525msgid "A-Z"
526msgstr ""
526msgstr ""
po/ku.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-09-10 13:14+0000\n"
11"PO-Revision-Date: 2014-09-10 13:14+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Kurdish <ku@li.org>\n"
13"Language-Team: Kurdish <ku@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr "Têkevê"
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr "Danişîna Mêvanî"
51msgstr "Danişîna Mêvanî"
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Kurteriyê pêveke"
56msgstr "Kurteriyê pêveke"
57
57
@@ -59,20 +59,20 @@ msgstr "Kurteriyê pêveke"
59msgid "Quit"
59msgid "Quit"
60msgstr "Derkeve"
60msgstr "Derkeve"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Derzîdanka kurteriyê rake"
64msgstr "Derzîdanka kurteriyê rake"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Derkeve"
69msgstr "Derkeve"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Ji dil dixwazî derkevî?"
73msgstr "Ji dil dixwazî derkevî?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Qufl Bike"
78msgstr "Qufl Bike"
@@ -519,11 +519,11 @@ msgstr ""
519msgid "Select desktop environment"
519msgid "Select desktop environment"
520msgstr "Derdora sermaseyê hilbijêre"
520msgstr "Derdora sermaseyê hilbijêre"
521
521
522−#: qml/Launcher/Drawer.qml:92
522+#: qml/Launcher/Drawer.qml:93
523msgid "Search…"
523msgid "Search…"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:127
526+#: qml/Launcher/Drawer.qml:128
527msgctxt "Apps sorted alphabetically"
527msgctxt "Apps sorted alphabetically"
528msgid "A-Z"
528msgid "A-Z"
529msgstr ""
529msgstr ""
po/ky.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2013-06-27 06:17+0000\n"
11"PO-Revision-Date: 2013-06-27 06:17+0000\n"
12"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
12"Last-Translator: Michał Sawicz <michal.sawicz@canonical.com>\n"
13"Language-Team: Kirghiz <ky@li.org>\n"
13"Language-Team: Kirghiz <ky@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/lo.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2013-10-02 10:00+0000\n"
11"PO-Revision-Date: 2013-10-02 10:00+0000\n"
12"Last-Translator: Anousak <anousak@gmail.com>\n"
12"Last-Translator: Anousak <anousak@gmail.com>\n"
13"Language-Team: Lao <lo@li.org>\n"
13"Language-Team: Lao <lo@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/lt.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-05-19 17:15+0000\n"
11"PO-Revision-Date: 2014-05-19 17:15+0000\n"
12"Last-Translator: Mantas Kriaučiūnas <mantas@akl.lt>\n"
12"Last-Translator: Mantas Kriaučiūnas <mantas@akl.lt>\n"
13"Language-Team: Lithuanian <lt@li.org>\n"
13"Language-Team: Lithuanian <lt@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
18"(n%100<10 || n%100>=20) ? 1 : 2;\n"
18"(n%100<10 || n%100>=20) ? 1 : 2;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr ""
57msgstr ""
58
58
@@ -60,20 +60,20 @@ msgstr ""
60msgid "Quit"
60msgid "Quit"
61msgstr ""
61msgstr ""
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr ""
65msgstr ""
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr ""
70msgstr ""
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr ""
74msgstr ""
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr ""
79msgstr ""
@@ -518,11 +518,11 @@ msgstr ""
518msgid "Select desktop environment"
518msgid "Select desktop environment"
519msgstr ""
519msgstr ""
520
520
521−#: qml/Launcher/Drawer.qml:92
521+#: qml/Launcher/Drawer.qml:93
522msgid "Search…"
522msgid "Search…"
523msgstr ""
523msgstr ""
524
524
525−#: qml/Launcher/Drawer.qml:127
525+#: qml/Launcher/Drawer.qml:128
526msgctxt "Apps sorted alphabetically"
526msgctxt "Apps sorted alphabetically"
527msgid "A-Z"
527msgid "A-Z"
528msgstr ""
528msgstr ""
po/lv.po+11−11
@@ -8,7 +8,7 @@ msgid ""
8msgstr ""
8msgstr ""
9"Project-Id-Version: unity\n"
9"Project-Id-Version: unity\n"
10"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
11−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
11+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
12"PO-Revision-Date: 2015-11-22 19:13+0000\n"
12"PO-Revision-Date: 2015-11-22 19:13+0000\n"
13"Last-Translator: Klavs Anson <anson.klavs@gmail.com>\n"
13"Last-Translator: Klavs Anson <anson.klavs@gmail.com>\n"
14"Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
14"Language-Team: Latvian <lata-l10n@googlegroups.com>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Type: text/plain; charset=UTF-8\n"
17"Content-Transfer-Encoding: 8bit\n"
17"Content-Transfer-Encoding: 8bit\n"
18"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n"
18"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21"Language: lv\n"
21"Language: lv\n"
22
22
23#: plugins/LightDM/Greeter.cpp:188
23#: plugins/LightDM/Greeter.cpp:188
@@ -52,8 +52,8 @@ msgstr ""
52msgid "Guest Session"
52msgid "Guest Session"
53msgstr ""
53msgstr ""
54
54
55−#: plugins/Unity/Launcher/launcheritem.cpp:50
55+#: plugins/Unity/Launcher/launcheritem.cpp:49
56−#: plugins/Unity/Launcher/launcheritem.cpp:122
56+#: plugins/Unity/Launcher/launcheritem.cpp:123
57msgid "Pin shortcut"
57msgid "Pin shortcut"
58msgstr "Piespraust īsceļu"
58msgstr "Piespraust īsceļu"
59
59
@@ -61,20 +61,20 @@ msgstr "Piespraust īsceļu"
61msgid "Quit"
61msgid "Quit"
62msgstr "Iziet"
62msgstr "Iziet"
63
63
64−#: plugins/Unity/Launcher/launcheritem.cpp:122
64+#: plugins/Unity/Launcher/launcheritem.cpp:123
65msgid "Unpin shortcut"
65msgid "Unpin shortcut"
66msgstr "Noņemt īsceļu"
66msgstr "Noņemt īsceļu"
67
67
68−#: qml/Components/Dialogs.qml:177
68+#: qml/Components/Dialogs.qml:176
69msgctxt "Title: Lock/Log out dialog"
69msgctxt "Title: Lock/Log out dialog"
70msgid "Log out"
70msgid "Log out"
71msgstr "Izrakstīties"
71msgstr "Izrakstīties"
72
72
73−#: qml/Components/Dialogs.qml:178
73+#: qml/Components/Dialogs.qml:177
74msgid "Are you sure you want to log out?"
74msgid "Are you sure you want to log out?"
75msgstr "Vai tiešām vēlaties izrakstīties?"
75msgstr "Vai tiešām vēlaties izrakstīties?"
76
76
77−#: qml/Components/Dialogs.qml:181
77+#: qml/Components/Dialogs.qml:180
78msgctxt "Button: Lock the system"
78msgctxt "Button: Lock the system"
79msgid "Lock"
79msgid "Lock"
80msgstr "Bloķēt"
80msgstr "Bloķēt"
@@ -522,11 +522,11 @@ msgstr ""
522msgid "Select desktop environment"
522msgid "Select desktop environment"
523msgstr ""
523msgstr ""
524
524
525−#: qml/Launcher/Drawer.qml:92
525+#: qml/Launcher/Drawer.qml:93
526msgid "Search…"
526msgid "Search…"
527msgstr ""
527msgstr ""
528
528
529−#: qml/Launcher/Drawer.qml:127
529+#: qml/Launcher/Drawer.qml:128
530msgctxt "Apps sorted alphabetically"
530msgctxt "Apps sorted alphabetically"
531msgid "A-Z"
531msgid "A-Z"
532msgstr ""
532msgstr ""
po/ml.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2013-11-23 11:44+0000\n"
11"PO-Revision-Date: 2013-11-23 11:44+0000\n"
12"Last-Translator: ST Alfas <Unknown>\n"
12"Last-Translator: ST Alfas <Unknown>\n"
13"Language-Team: Malayalam <ml@li.org>\n"
13"Language-Team: Malayalam <ml@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/mr.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-01-14 19:54+0000\n"
11"PO-Revision-Date: 2014-01-14 19:54+0000\n"
12"Last-Translator: Rohan Deshmukh <Unknown>\n"
12"Last-Translator: Rohan Deshmukh <Unknown>\n"
13"Language-Team: Marathi <mr@li.org>\n"
13"Language-Team: Marathi <mr@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "लॉक करा"
78msgstr "लॉक करा"
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/ms.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-12-20 14:02+0000\n"
11"PO-Revision-Date: 2016-12-20 14:02+0000\n"
12"Last-Translator: abuyop <Unknown>\n"
12"Last-Translator: abuyop <Unknown>\n"
13"Language-Team: Malay <ms@li.org>\n"
13"Language-Team: Malay <ms@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Cemat pintasan"
56msgstr "Cemat pintasan"
57
57
@@ -59,20 +59,20 @@ msgstr "Cemat pintasan"
59msgid "Quit"
59msgid "Quit"
60msgstr "Keluar"
60msgstr "Keluar"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Nyahcemat pintasan"
64msgstr "Nyahcemat pintasan"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Daftar keluar"
69msgstr "Daftar keluar"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Anda pasti mahu mendaftar keluar?"
73msgstr "Anda pasti mahu mendaftar keluar?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Kunci"
78msgstr "Kunci"
@@ -521,11 +521,11 @@ msgstr "Kod laluan"
521msgid "Select desktop environment"
521msgid "Select desktop environment"
522msgstr "Pilih persekitaran desktop"
522msgstr "Pilih persekitaran desktop"
523
523
524−#: qml/Launcher/Drawer.qml:92
524+#: qml/Launcher/Drawer.qml:93
525msgid "Search…"
525msgid "Search…"
526msgstr "Gelintar..."
526msgstr "Gelintar..."
527
527
528−#: qml/Launcher/Drawer.qml:127
528+#: qml/Launcher/Drawer.qml:128
529msgctxt "Apps sorted alphabetically"
529msgctxt "Apps sorted alphabetically"
530msgid "A-Z"
530msgid "A-Z"
531msgstr "A-Z"
531msgstr "A-Z"
po/my.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2013-12-12 11:12+0000\n"
11"PO-Revision-Date: 2013-12-12 11:12+0000\n"
12"Last-Translator: Pyae Sone <Unknown>\n"
12"Last-Translator: Pyae Sone <Unknown>\n"
13"Language-Team: Burmese <my@li.org>\n"
13"Language-Team: Burmese <my@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "ထွက်"
69msgstr "ထွက်"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "သော့ခတ်"
78msgstr "သော့ခတ်"
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/nb.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-01-27 07:01+0000\n"
11"PO-Revision-Date: 2017-01-27 07:01+0000\n"
12"Last-Translator: Åka Sikrom <Unknown>\n"
12"Last-Translator: Åka Sikrom <Unknown>\n"
13"Language-Team: Norwegian Bokmal <nb@li.org>\n"
13"Language-Team: Norwegian Bokmal <nb@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Fest snarvei"
56msgstr "Fest snarvei"
57
57
@@ -59,20 +59,20 @@ msgstr "Fest snarvei"
59msgid "Quit"
59msgid "Quit"
60msgstr "Avslutt"
60msgstr "Avslutt"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Fjern snarvei"
64msgstr "Fjern snarvei"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Logg ut"
69msgstr "Logg ut"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Er du sikker på at du vil logge ut?"
73msgstr "Er du sikker på at du vil logge ut?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Lås"
78msgstr "Lås"
@@ -525,11 +525,11 @@ msgstr "Kode"
525msgid "Select desktop environment"
525msgid "Select desktop environment"
526msgstr "Velg skrivebordsmiljø"
526msgstr "Velg skrivebordsmiljø"
527
527
528−#: qml/Launcher/Drawer.qml:92
528+#: qml/Launcher/Drawer.qml:93
529msgid "Search…"
529msgid "Search…"
530msgstr "Søk …"
530msgstr "Søk …"
531
531
532−#: qml/Launcher/Drawer.qml:127
532+#: qml/Launcher/Drawer.qml:128
533msgctxt "Apps sorted alphabetically"
533msgctxt "Apps sorted alphabetically"
534msgid "A-Z"
534msgid "A-Z"
535msgstr "A-Å"
535msgstr "A-Å"
po/ne.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-12-06 15:11+0000\n"
11"PO-Revision-Date: 2015-12-06 15:11+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Nepali <ne@li.org>\n"
13"Language-Team: Nepali <ne@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr "बन्द गर्नुहोस्"
60msgstr "बन्द गर्नुहोस्"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "लग आउट"
69msgstr "लग आउट"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "ताला लगाउने"
78msgstr "ताला लगाउने"
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/nl.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-11-01 08:29+0000\n"
11"PO-Revision-Date: 2016-11-01 08:29+0000\n"
12"Last-Translator: Hannie Dumoleyn <Unknown>\n"
12"Last-Translator: Hannie Dumoleyn <Unknown>\n"
13"Language-Team: Dutch <nl@li.org>\n"
13"Language-Team: Dutch <nl@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Snelkoppeling vastzetten"
56msgstr "Snelkoppeling vastzetten"
57
57
@@ -59,20 +59,20 @@ msgstr "Snelkoppeling vastzetten"
59msgid "Quit"
59msgid "Quit"
60msgstr "Afsluiten"
60msgstr "Afsluiten"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Snelkoppeling losmaken"
64msgstr "Snelkoppeling losmaken"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Afmelden"
69msgstr "Afmelden"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Weet u zeker dat u zich wilt afmelden?"
73msgstr "Weet u zeker dat u zich wilt afmelden?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Vergrendelen"
78msgstr "Vergrendelen"
@@ -528,11 +528,11 @@ msgstr "Toegangscode"
528msgid "Select desktop environment"
528msgid "Select desktop environment"
529msgstr "Bureaubladomgeving selecteren"
529msgstr "Bureaubladomgeving selecteren"
530
530
531−#: qml/Launcher/Drawer.qml:92
531+#: qml/Launcher/Drawer.qml:93
532msgid "Search…"
532msgid "Search…"
533msgstr ""
533msgstr ""
534
534
535−#: qml/Launcher/Drawer.qml:127
535+#: qml/Launcher/Drawer.qml:128
536msgctxt "Apps sorted alphabetically"
536msgctxt "Apps sorted alphabetically"
537msgid "A-Z"
537msgid "A-Z"
538msgstr ""
538msgstr ""
po/nn.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-05-12 11:32+0000\n"
11"PO-Revision-Date: 2015-05-12 11:32+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Norwegian Nynorsk <nn@li.org>\n"
13"Language-Team: Norwegian Nynorsk <nn@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/oc.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-10-27 13:43+0000\n"
11"PO-Revision-Date: 2016-10-27 13:43+0000\n"
12"Last-Translator: Cédric VALMARY (Tot en òc) <cvalmary@yahoo.fr>\n"
12"Last-Translator: Cédric VALMARY (Tot en òc) <cvalmary@yahoo.fr>\n"
13"Language-Team: Occitan (post 1500) <oc@li.org>\n"
13"Language-Team: Occitan (post 1500) <oc@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Espingolar l'acorchi"
56msgstr "Espingolar l'acorchi"
57
57
@@ -59,20 +59,20 @@ msgstr "Espingolar l'acorchi"
59msgid "Quit"
59msgid "Quit"
60msgstr "Quitar"
60msgstr "Quitar"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Destacar l'acorchi"
64msgstr "Destacar l'acorchi"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Tampar la session"
69msgstr "Tampar la session"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Sètz segur que vos volètz desconnectar ?"
73msgstr "Sètz segur que vos volètz desconnectar ?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Verrolhar"
78msgstr "Verrolhar"
@@ -528,11 +528,11 @@ msgstr "Còdi"
528msgid "Select desktop environment"
528msgid "Select desktop environment"
529msgstr "Seleccionar l'environament de burèu"
529msgstr "Seleccionar l'environament de burèu"
530
530
531−#: qml/Launcher/Drawer.qml:92
531+#: qml/Launcher/Drawer.qml:93
532msgid "Search…"
532msgid "Search…"
533msgstr ""
533msgstr ""
534
534
535−#: qml/Launcher/Drawer.qml:127
535+#: qml/Launcher/Drawer.qml:128
536msgctxt "Apps sorted alphabetically"
536msgctxt "Apps sorted alphabetically"
537msgid "A-Z"
537msgid "A-Z"
538msgstr ""
538msgstr ""
po/or.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-03-21 05:28+0000\n"
11"PO-Revision-Date: 2015-03-21 05:28+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Oriya <or@li.org>\n"
13"Language-Team: Oriya <or@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n!=1;\n"
17"Plural-Forms: nplurals=2; plural=n!=1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/pa.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-04-24 04:29+0000\n"
11"PO-Revision-Date: 2015-04-24 04:29+0000\n"
12"Last-Translator: Gursharnjit_Singh <ubuntuser13@gmail.com>\n"
12"Last-Translator: Gursharnjit_Singh <ubuntuser13@gmail.com>\n"
13"Language-Team: Punjabi <pa@li.org>\n"
13"Language-Team: Punjabi <pa@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "ਸ਼ਾਰਟਕੱਟ ਪਿੰਨ ਲਗਾਓ"
56msgstr "ਸ਼ਾਰਟਕੱਟ ਪਿੰਨ ਲਗਾਓ"
57
57
@@ -59,20 +59,20 @@ msgstr "ਸ਼ਾਰਟਕੱਟ ਪਿੰਨ ਲਗਾਓ"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "ਸ਼ਾਰਟਕੱਟ ਪਿੰਨ ਹਟਾਓ"
64msgstr "ਸ਼ਾਰਟਕੱਟ ਪਿੰਨ ਹਟਾਓ"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "ਲਾਗ ਆਉਟ"
69msgstr "ਲਾਗ ਆਉਟ"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "ਕੀ ਤੁਸੀਂ ਲਾਗ ਆਉਟ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?"
73msgstr "ਕੀ ਤੁਸੀਂ ਲਾਗ ਆਉਟ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "ਲਾਕ"
78msgstr "ਲਾਕ"
@@ -519,11 +519,11 @@ msgstr ""
519msgid "Select desktop environment"
519msgid "Select desktop environment"
520msgstr ""
520msgstr ""
521
521
522−#: qml/Launcher/Drawer.qml:92
522+#: qml/Launcher/Drawer.qml:93
523msgid "Search…"
523msgid "Search…"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:127
526+#: qml/Launcher/Drawer.qml:128
527msgctxt "Apps sorted alphabetically"
527msgctxt "Apps sorted alphabetically"
528msgid "A-Z"
528msgid "A-Z"
529msgstr ""
529msgstr ""
po/pl.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-11-01 15:06+0000\n"
11"PO-Revision-Date: 2016-11-01 15:06+0000\n"
12"Last-Translator: Krzysztof Tataradziński <Unknown>\n"
12"Last-Translator: Krzysztof Tataradziński <Unknown>\n"
13"Language-Team: Polish <pl@li.org>\n"
13"Language-Team: Polish <pl@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
17"Plural-Forms: nplurals=3; plural=n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
18"|| n%100>=20) ? 1 : 2;\n"
18"|| n%100>=20) ? 1 : 2;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Przypnij skrót"
57msgstr "Przypnij skrót"
58
58
@@ -60,20 +60,20 @@ msgstr "Przypnij skrót"
60msgid "Quit"
60msgid "Quit"
61msgstr "Zakończ"
61msgstr "Zakończ"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Odepnij skrót"
65msgstr "Odepnij skrót"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Wylogowanie"
70msgstr "Wylogowanie"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Wylogować?"
74msgstr "Wylogować?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Blokada"
79msgstr "Blokada"
@@ -522,11 +522,11 @@ msgstr "Kod"
522msgid "Select desktop environment"
522msgid "Select desktop environment"
523msgstr "Wybierz środowisko graficzne"
523msgstr "Wybierz środowisko graficzne"
524
524
525−#: qml/Launcher/Drawer.qml:92
525+#: qml/Launcher/Drawer.qml:93
526msgid "Search…"
526msgid "Search…"
527msgstr ""
527msgstr ""
528
528
529−#: qml/Launcher/Drawer.qml:127
529+#: qml/Launcher/Drawer.qml:128
530msgctxt "Apps sorted alphabetically"
530msgctxt "Apps sorted alphabetically"
531msgid "A-Z"
531msgid "A-Z"
532msgstr ""
532msgstr ""
po/pt.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-06-20 11:37+0000\n"
11"PO-Revision-Date: 2016-06-20 11:37+0000\n"
12"Last-Translator: Ivo Xavier <ivoxavier.8@gmail.com>\n"
12"Last-Translator: Ivo Xavier <ivoxavier.8@gmail.com>\n"
13"Language-Team: Portuguese <pt@li.org>\n"
13"Language-Team: Portuguese <pt@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:13+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Fixar atalho"
56msgstr "Fixar atalho"
57
57
@@ -59,20 +59,20 @@ msgstr "Fixar atalho"
59msgid "Quit"
59msgid "Quit"
60msgstr "Sair"
60msgstr "Sair"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Remover atalho"
64msgstr "Remover atalho"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Terminar a sessão"
69msgstr "Terminar a sessão"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Quer mesmo sair?"
73msgstr "Quer mesmo sair?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Bloquear"
78msgstr "Bloquear"
@@ -526,11 +526,11 @@ msgstr "Código"
526msgid "Select desktop environment"
526msgid "Select desktop environment"
527msgstr "Selecione o ambiente de trabalho"
527msgstr "Selecione o ambiente de trabalho"
528
528
529−#: qml/Launcher/Drawer.qml:92
529+#: qml/Launcher/Drawer.qml:93
530msgid "Search…"
530msgid "Search…"
531msgstr ""
531msgstr ""
532
532
533−#: qml/Launcher/Drawer.qml:127
533+#: qml/Launcher/Drawer.qml:128
534msgctxt "Apps sorted alphabetically"
534msgctxt "Apps sorted alphabetically"
535msgid "A-Z"
535msgid "A-Z"
536msgstr ""
536msgstr ""
po/pt_BR.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-08-05 04:40+0000\n"
11"PO-Revision-Date: 2015-08-05 04:40+0000\n"
12"Last-Translator: Julio Alexander Sieg <julio.sieg@gmail.com>\n"
12"Last-Translator: Julio Alexander Sieg <julio.sieg@gmail.com>\n"
13"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
13"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Fixar atalho"
56msgstr "Fixar atalho"
57
57
@@ -59,20 +59,20 @@ msgstr "Fixar atalho"
59msgid "Quit"
59msgid "Quit"
60msgstr "Sair"
60msgstr "Sair"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Desafixar atalho"
64msgstr "Desafixar atalho"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Sair"
69msgstr "Sair"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Você tem certeza que deseja sair?"
73msgstr "Você tem certeza que deseja sair?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Travar"
78msgstr "Travar"
@@ -521,11 +521,11 @@ msgstr ""
521msgid "Select desktop environment"
521msgid "Select desktop environment"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:92
524+#: qml/Launcher/Drawer.qml:93
525msgid "Search…"
525msgid "Search…"
526msgstr ""
526msgstr ""
527
527
528−#: qml/Launcher/Drawer.qml:127
528+#: qml/Launcher/Drawer.qml:128
529msgctxt "Apps sorted alphabetically"
529msgctxt "Apps sorted alphabetically"
530msgid "A-Z"
530msgid "A-Z"
531msgstr ""
531msgstr ""
po/ro.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-07-06 17:47+0000\n"
11"PO-Revision-Date: 2015-07-06 17:47+0000\n"
12"Last-Translator: Meriuță Cornel <meriutacornel@neacornel.eu>\n"
12"Last-Translator: Meriuță Cornel <meriutacornel@neacornel.eu>\n"
13"Language-Team: Romanian <ro@li.org>\n"
13"Language-Team: Romanian <ro@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=(n == 1 ? 0: (((n % 100 > 19) || ((n % 100 "
17"Plural-Forms: nplurals=3; plural=(n == 1 ? 0: (((n % 100 > 19) || ((n % 100 "
18"== 0) && (n != 0))) ? 2: 1));\n"
18"== 0) && (n != 0))) ? 2: 1));\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Fixează scurtătura"
57msgstr "Fixează scurtătura"
58
58
@@ -60,20 +60,20 @@ msgstr "Fixează scurtătura"
60msgid "Quit"
60msgid "Quit"
61msgstr ""
61msgstr ""
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Eliberează scurtătura"
65msgstr "Eliberează scurtătura"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Închide sesiunea"
70msgstr "Închide sesiunea"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Sunteți sigur că doriți să închideți sesiunea?"
74msgstr "Sunteți sigur că doriți să închideți sesiunea?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Blocare"
79msgstr "Blocare"
@@ -524,11 +524,11 @@ msgstr ""
524msgid "Select desktop environment"
524msgid "Select desktop environment"
525msgstr ""
525msgstr ""
526
526
527−#: qml/Launcher/Drawer.qml:92
527+#: qml/Launcher/Drawer.qml:93
528msgid "Search…"
528msgid "Search…"
529msgstr ""
529msgstr ""
530
530
531−#: qml/Launcher/Drawer.qml:127
531+#: qml/Launcher/Drawer.qml:128
532msgctxt "Apps sorted alphabetically"
532msgctxt "Apps sorted alphabetically"
533msgid "A-Z"
533msgid "A-Z"
534msgstr ""
534msgstr ""
po/ru.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-07-06 05:33+0000\n"
11"PO-Revision-Date: 2015-07-06 05:33+0000\n"
12"Last-Translator: ☠Jay ZDLin☠ <Unknown>\n"
12"Last-Translator: ☠Jay ZDLin☠ <Unknown>\n"
13"Language-Team: Russian <ru@li.org>\n"
13"Language-Team: Russian <ru@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr "Гостевой сеанс"
52msgstr "Гостевой сеанс"
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Закрепить ярлык"
57msgstr "Закрепить ярлык"
58
58
@@ -60,20 +60,20 @@ msgstr "Закрепить ярлык"
60msgid "Quit"
60msgid "Quit"
61msgstr "Завершить"
61msgstr "Завершить"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Открепить ярлык"
65msgstr "Открепить ярлык"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Завершение сеанса"
70msgstr "Завершение сеанса"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Завершить сеанс?"
74msgstr "Завершить сеанс?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Заблокировать"
79msgstr "Заблокировать"
@@ -525,11 +525,11 @@ msgstr "Секретный код"
525msgid "Select desktop environment"
525msgid "Select desktop environment"
526msgstr "Выберите окружение рабочего стола"
526msgstr "Выберите окружение рабочего стола"
527
527
528−#: qml/Launcher/Drawer.qml:92
528+#: qml/Launcher/Drawer.qml:93
529msgid "Search…"
529msgid "Search…"
530msgstr "Найти..."
530msgstr "Найти..."
531
531
532−#: qml/Launcher/Drawer.qml:127
532+#: qml/Launcher/Drawer.qml:128
533msgctxt "Apps sorted alphabetically"
533msgctxt "Apps sorted alphabetically"
534msgid "A-Z"
534msgid "A-Z"
535msgstr ""
535msgstr ""
po/shn.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-11-10 12:09+0000\n"
11"PO-Revision-Date: 2015-11-10 12:09+0000\n"
12"Last-Translator: Rockworld <sumoisrock@gmail.com>\n"
12"Last-Translator: Rockworld <sumoisrock@gmail.com>\n"
13"Language-Team: Shan <shn@li.org>\n"
13"Language-Team: Shan <shn@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=(n == 1) ? 0 : 1;\n"
17"Plural-Forms: nplurals=2; plural=(n == 1) ? 0 : 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr "ဢိုတ်း"
60msgstr "ဢိုတ်း"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/si.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2013-06-26 22:36+0000\n"
11"PO-Revision-Date: 2013-06-26 22:36+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Sinhalese <si@li.org>\n"
13"Language-Team: Sinhalese <si@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -519,11 +519,11 @@ msgstr ""
519msgid "Select desktop environment"
519msgid "Select desktop environment"
520msgstr ""
520msgstr ""
521
521
522−#: qml/Launcher/Drawer.qml:92
522+#: qml/Launcher/Drawer.qml:93
523msgid "Search…"
523msgid "Search…"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:127
526+#: qml/Launcher/Drawer.qml:128
527msgctxt "Apps sorted alphabetically"
527msgctxt "Apps sorted alphabetically"
528msgid "A-Z"
528msgid "A-Z"
529msgstr ""
529msgstr ""
po/sk.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-09-28 04:43+0000\n"
11"PO-Revision-Date: 2016-09-28 04:43+0000\n"
12"Last-Translator: P_E_T_O <Unknown>\n"
12"Last-Translator: P_E_T_O <Unknown>\n"
13"Language-Team: Slovak <sk@li.org>\n"
13"Language-Team: Slovak <sk@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n"
17"Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20"Language: sk\n"
20"Language: sk\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Pripnúť odkaz"
57msgstr "Pripnúť odkaz"
58
58
@@ -60,20 +60,20 @@ msgstr "Pripnúť odkaz"
60msgid "Quit"
60msgid "Quit"
61msgstr "Ukončiť"
61msgstr "Ukončiť"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Odopnúť odkaz"
65msgstr "Odopnúť odkaz"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Odhlásiť sa"
70msgstr "Odhlásiť sa"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Ste si istý, že sa chcete odhlásiť?"
74msgstr "Ste si istý, že sa chcete odhlásiť?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Zamknúť"
79msgstr "Zamknúť"
@@ -528,11 +528,11 @@ msgstr "Heslo"
528msgid "Select desktop environment"
528msgid "Select desktop environment"
529msgstr "Vybrať pracovné prostredie"
529msgstr "Vybrať pracovné prostredie"
530
530
531−#: qml/Launcher/Drawer.qml:92
531+#: qml/Launcher/Drawer.qml:93
532msgid "Search…"
532msgid "Search…"
533msgstr ""
533msgstr ""
534
534
535−#: qml/Launcher/Drawer.qml:127
535+#: qml/Launcher/Drawer.qml:128
536msgctxt "Apps sorted alphabetically"
536msgctxt "Apps sorted alphabetically"
537msgid "A-Z"
537msgid "A-Z"
538msgstr ""
538msgstr ""
po/sl.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-01-31 18:34+0000\n"
11"PO-Revision-Date: 2016-01-31 18:34+0000\n"
12"Last-Translator: Bernard Banko <Unknown>\n"
12"Last-Translator: Bernard Banko <Unknown>\n"
13"Language-Team: Slovenian <sl@li.org>\n"
13"Language-Team: Slovenian <sl@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || "
17"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || "
18"n%100==4 ? 3 : 0);\n"
18"n%100==4 ? 3 : 0);\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Pripni bližnjico"
57msgstr "Pripni bližnjico"
58
58
@@ -60,20 +60,20 @@ msgstr "Pripni bližnjico"
60msgid "Quit"
60msgid "Quit"
61msgstr "Končaj"
61msgstr "Končaj"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Odpni bližnjico"
65msgstr "Odpni bližnjico"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Odjava"
70msgstr "Odjava"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Ali ste prepričani, da se želite odjaviti?"
74msgstr "Ali ste prepričani, da se želite odjaviti?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Zakleni"
79msgstr "Zakleni"
@@ -526,11 +526,11 @@ msgstr ""
526msgid "Select desktop environment"
526msgid "Select desktop environment"
527msgstr "Izberite namizno okolje"
527msgstr "Izberite namizno okolje"
528
528
529−#: qml/Launcher/Drawer.qml:92
529+#: qml/Launcher/Drawer.qml:93
530msgid "Search…"
530msgid "Search…"
531msgstr ""
531msgstr ""
532
532
533−#: qml/Launcher/Drawer.qml:127
533+#: qml/Launcher/Drawer.qml:128
534msgctxt "Apps sorted alphabetically"
534msgctxt "Apps sorted alphabetically"
535msgid "A-Z"
535msgid "A-Z"
536msgstr ""
536msgstr ""
po/sq.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-04-21 06:03+0000\n"
11"PO-Revision-Date: 2016-04-21 06:03+0000\n"
12"Last-Translator: Indrit Bashkimi <indrit.bashkimi@gmail.com>\n"
12"Last-Translator: Indrit Bashkimi <indrit.bashkimi@gmail.com>\n"
13"Language-Team: sq\n"
13"Language-Team: sq\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:12+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:12+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20"Language: sq\n"
20"Language: sq\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr ""
57msgstr ""
58
58
@@ -60,20 +60,20 @@ msgstr ""
60msgid "Quit"
60msgid "Quit"
61msgstr "Dil"
61msgstr "Dil"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr ""
65msgstr ""
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Dalja"
70msgstr "Dalja"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr ""
74msgstr ""
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Kyç"
79msgstr "Kyç"
@@ -518,11 +518,11 @@ msgstr ""
518msgid "Select desktop environment"
518msgid "Select desktop environment"
519msgstr ""
519msgstr ""
520
520
521−#: qml/Launcher/Drawer.qml:92
521+#: qml/Launcher/Drawer.qml:93
522msgid "Search…"
522msgid "Search…"
523msgstr ""
523msgstr ""
524
524
525−#: qml/Launcher/Drawer.qml:127
525+#: qml/Launcher/Drawer.qml:128
526msgctxt "Apps sorted alphabetically"
526msgctxt "Apps sorted alphabetically"
527msgid "A-Z"
527msgid "A-Z"
528msgstr ""
528msgstr ""
po/sr.po+11−11
@@ -8,7 +8,7 @@ msgid ""
8msgstr ""
8msgstr ""
9"Project-Id-Version: unity\n"
9"Project-Id-Version: unity\n"
10"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
11−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
11+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
12"PO-Revision-Date: 2016-08-22 20:43+0000\n"
12"PO-Revision-Date: 2016-08-22 20:43+0000\n"
13"Last-Translator: Bojan Bogdanović <Unknown>\n"
13"Last-Translator: Bojan Bogdanović <Unknown>\n"
14"Language-Team: српски <xfce4@xfce4.org>\n"
14"Language-Team: српски <xfce4@xfce4.org>\n"
@@ -17,8 +17,8 @@ msgstr ""
17"Content-Transfer-Encoding: 8bit\n"
17"Content-Transfer-Encoding: 8bit\n"
18"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
18"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
19"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
19"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
20−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
20+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
21−"X-Generator: Launchpad (build 18331)\n"
21+"X-Generator: Launchpad (build 18334)\n"
22"Language: sr\n"
22"Language: sr\n"
23
23
24#: plugins/LightDM/Greeter.cpp:188
24#: plugins/LightDM/Greeter.cpp:188
@@ -53,8 +53,8 @@ msgstr ""
53msgid "Guest Session"
53msgid "Guest Session"
54msgstr ""
54msgstr ""
55
55
56−#: plugins/Unity/Launcher/launcheritem.cpp:50
56+#: plugins/Unity/Launcher/launcheritem.cpp:49
57−#: plugins/Unity/Launcher/launcheritem.cpp:122
57+#: plugins/Unity/Launcher/launcheritem.cpp:123
58msgid "Pin shortcut"
58msgid "Pin shortcut"
59msgstr "Прикачи пречицу"
59msgstr "Прикачи пречицу"
60
60
@@ -62,20 +62,20 @@ msgstr "Прикачи пречицу"
62msgid "Quit"
62msgid "Quit"
63msgstr "Напусти"
63msgstr "Напусти"
64
64
65−#: plugins/Unity/Launcher/launcheritem.cpp:122
65+#: plugins/Unity/Launcher/launcheritem.cpp:123
66msgid "Unpin shortcut"
66msgid "Unpin shortcut"
67msgstr "Откачи пречицу"
67msgstr "Откачи пречицу"
68
68
69−#: qml/Components/Dialogs.qml:177
69+#: qml/Components/Dialogs.qml:176
70msgctxt "Title: Lock/Log out dialog"
70msgctxt "Title: Lock/Log out dialog"
71msgid "Log out"
71msgid "Log out"
72msgstr "Одјава"
72msgstr "Одјава"
73
73
74−#: qml/Components/Dialogs.qml:178
74+#: qml/Components/Dialogs.qml:177
75msgid "Are you sure you want to log out?"
75msgid "Are you sure you want to log out?"
76msgstr "Сигурно желите да се одјавите?"
76msgstr "Сигурно желите да се одјавите?"
77
77
78−#: qml/Components/Dialogs.qml:181
78+#: qml/Components/Dialogs.qml:180
79msgctxt "Button: Lock the system"
79msgctxt "Button: Lock the system"
80msgid "Lock"
80msgid "Lock"
81msgstr "Закључај"
81msgstr "Закључај"
@@ -525,11 +525,11 @@ msgstr "Приступни код"
525msgid "Select desktop environment"
525msgid "Select desktop environment"
526msgstr ""
526msgstr ""
527
527
528−#: qml/Launcher/Drawer.qml:92
528+#: qml/Launcher/Drawer.qml:93
529msgid "Search…"
529msgid "Search…"
530msgstr ""
530msgstr ""
531
531
532−#: qml/Launcher/Drawer.qml:127
532+#: qml/Launcher/Drawer.qml:128
533msgctxt "Apps sorted alphabetically"
533msgctxt "Apps sorted alphabetically"
534msgid "A-Z"
534msgid "A-Z"
535msgstr ""
535msgstr ""
po/sv.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-06-19 19:31+0000\n"
11"PO-Revision-Date: 2016-06-19 19:31+0000\n"
12"Last-Translator: Josef Andersson <Unknown>\n"
12"Last-Translator: Josef Andersson <Unknown>\n"
13"Language-Team: Swedish\n"
13"Language-Team: Swedish\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20"Language: sv\n"
20"Language: sv\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Fäst genväg"
57msgstr "Fäst genväg"
58
58
@@ -60,20 +60,20 @@ msgstr "Fäst genväg"
60msgid "Quit"
60msgid "Quit"
61msgstr "Avsluta"
61msgstr "Avsluta"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Släpp genväg"
65msgstr "Släpp genväg"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Logga ut"
70msgstr "Logga ut"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Är du säker på att du vill logga ut?"
74msgstr "Är du säker på att du vill logga ut?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Lås"
79msgstr "Lås"
@@ -523,11 +523,11 @@ msgstr "Lösenkod"
523msgid "Select desktop environment"
523msgid "Select desktop environment"
524msgstr "Välj skrivbordsmiljö"
524msgstr "Välj skrivbordsmiljö"
525
525
526−#: qml/Launcher/Drawer.qml:92
526+#: qml/Launcher/Drawer.qml:93
527msgid "Search…"
527msgid "Search…"
528msgstr ""
528msgstr ""
529
529
530−#: qml/Launcher/Drawer.qml:127
530+#: qml/Launcher/Drawer.qml:128
531msgctxt "Apps sorted alphabetically"
531msgctxt "Apps sorted alphabetically"
532msgid "A-Z"
532msgid "A-Z"
533msgstr ""
533msgstr ""
po/sw.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-07-17 20:02+0000\n"
11"PO-Revision-Date: 2015-07-17 20:02+0000\n"
12"Last-Translator: Valentine <mwangi_valentino@yahoo.com>\n"
12"Last-Translator: Valentine <mwangi_valentino@yahoo.com>\n"
13"Language-Team: Swahili <sw@li.org>\n"
13"Language-Team: Swahili <sw@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:13+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Njia ya mkato ya nambari ya siri"
56msgstr "Njia ya mkato ya nambari ya siri"
57
57
@@ -59,20 +59,20 @@ msgstr "Njia ya mkato ya nambari ya siri"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Toa njia ya mkato ya nambari ya siri"
64msgstr "Toa njia ya mkato ya nambari ya siri"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Logi nje"
69msgstr "Logi nje"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Una uhakika unataka kulogi nje?"
73msgstr "Una uhakika unataka kulogi nje?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Funga"
78msgstr "Funga"
@@ -519,11 +519,11 @@ msgstr ""
519msgid "Select desktop environment"
519msgid "Select desktop environment"
520msgstr ""
520msgstr ""
521
521
522−#: qml/Launcher/Drawer.qml:92
522+#: qml/Launcher/Drawer.qml:93
523msgid "Search…"
523msgid "Search…"
524msgstr ""
524msgstr ""
525
525
526−#: qml/Launcher/Drawer.qml:127
526+#: qml/Launcher/Drawer.qml:128
527msgctxt "Apps sorted alphabetically"
527msgctxt "Apps sorted alphabetically"
528msgid "A-Z"
528msgid "A-Z"
529msgstr ""
529msgstr ""
po/ta.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-03-02 04:54+0000\n"
11"PO-Revision-Date: 2017-03-02 04:54+0000\n"
12"Last-Translator: Arun Kumar - அருண் குமார் <thangam.arunx@gmail.com>\n"
12"Last-Translator: Arun Kumar - அருண் குமார் <thangam.arunx@gmail.com>\n"
13"Language-Team: Ubuntu Tamil Team/Free Tamil Computing/Thamizha\n"
13"Language-Team: Ubuntu Tamil Team/Free Tamil Computing/Thamizha\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20"Language: ta\n"
20"Language: ta\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr ""
57msgstr ""
58
58
@@ -60,20 +60,20 @@ msgstr ""
60msgid "Quit"
60msgid "Quit"
61msgstr ""
61msgstr ""
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr ""
65msgstr ""
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr ""
70msgstr ""
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "நீங்கள் வெளியேற விரும்புகிறேர்களா ?"
74msgstr "நீங்கள் வெளியேற விரும்புகிறேர்களா ?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "பூட்டுக"
79msgstr "பூட்டுக"
@@ -520,11 +520,11 @@ msgstr ""
520msgid "Select desktop environment"
520msgid "Select desktop environment"
521msgstr ""
521msgstr ""
522
522
523−#: qml/Launcher/Drawer.qml:92
523+#: qml/Launcher/Drawer.qml:93
524msgid "Search…"
524msgid "Search…"
525msgstr ""
525msgstr ""
526
526
527−#: qml/Launcher/Drawer.qml:127
527+#: qml/Launcher/Drawer.qml:128
528msgctxt "Apps sorted alphabetically"
528msgctxt "Apps sorted alphabetically"
529msgid "A-Z"
529msgid "A-Z"
530msgstr ""
530msgstr ""
po/te.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-07-19 10:04+0000\n"
11"PO-Revision-Date: 2014-07-19 10:04+0000\n"
12"Last-Translator: Praveen Illa <mail2ipn@gmail.com>\n"
12"Last-Translator: Praveen Illa <mail2ipn@gmail.com>\n"
13"Language-Team: Telugu <te@li.org>\n"
13"Language-Team: Telugu <te@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/th.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-10-02 04:55+0000\n"
11"PO-Revision-Date: 2014-10-02 04:55+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Thai <th@li.org>\n"
13"Language-Team: Thai <th@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/tr.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-03-22 15:56+0000\n"
11"PO-Revision-Date: 2015-03-22 15:56+0000\n"
12"Last-Translator: Arda Ünlü <aarda.uunlu@gmail.com>\n"
12"Last-Translator: Arda Ünlü <aarda.uunlu@gmail.com>\n"
13"Language-Team: Turkish <tr@li.org>\n"
13"Language-Team: Turkish <tr@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Kısayolu iğnele"
56msgstr "Kısayolu iğnele"
57
57
@@ -59,20 +59,20 @@ msgstr "Kısayolu iğnele"
59msgid "Quit"
59msgid "Quit"
60msgstr "Çıkış"
60msgstr "Çıkış"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Kısayol iğnesini kaldır"
64msgstr "Kısayol iğnesini kaldır"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Oturumu kapat"
69msgstr "Oturumu kapat"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Oturumu kapatmak istediğinize emin misiniz?"
73msgstr "Oturumu kapatmak istediğinize emin misiniz?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Kilitle"
78msgstr "Kilitle"
@@ -521,11 +521,11 @@ msgstr "Parola"
521msgid "Select desktop environment"
521msgid "Select desktop environment"
522msgstr "Masaüstü ortamını seçin"
522msgstr "Masaüstü ortamını seçin"
523
523
524−#: qml/Launcher/Drawer.qml:92
524+#: qml/Launcher/Drawer.qml:93
525msgid "Search…"
525msgid "Search…"
526msgstr ""
526msgstr ""
527
527
528−#: qml/Launcher/Drawer.qml:127
528+#: qml/Launcher/Drawer.qml:128
529msgctxt "Apps sorted alphabetically"
529msgctxt "Apps sorted alphabetically"
530msgid "A-Z"
530msgid "A-Z"
531msgstr ""
531msgstr ""
po/ug.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-07-03 13:56+0000\n"
11"PO-Revision-Date: 2016-07-03 13:56+0000\n"
12"Last-Translator: Eltikin <eltikinuyghur@hotmail.com>\n"
12"Last-Translator: Eltikin <eltikinuyghur@hotmail.com>\n"
13"Language-Team: Uyghur Computer Science Association <UKIJ@yahoogroups.com>\n"
13"Language-Team: Uyghur Computer Science Association <UKIJ@yahoogroups.com>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "تېزلەتمىنى قوي"
56msgstr "تېزلەتمىنى قوي"
57
57
@@ -59,20 +59,20 @@ msgstr "تېزلەتمىنى قوي"
59msgid "Quit"
59msgid "Quit"
60msgstr "چېكىن"
60msgstr "چېكىن"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "تېزلەتمىنى ئېلىۋەت"
64msgstr "تېزلەتمىنى ئېلىۋەت"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "تىزىمدىن چىق"
69msgstr "تىزىمدىن چىق"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "راستلا چىقىپ كېتەمسىز؟"
73msgstr "راستلا چىقىپ كېتەمسىز؟"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "قۇلۇپلا"
78msgstr "قۇلۇپلا"
@@ -518,11 +518,11 @@ msgstr ""
518msgid "Select desktop environment"
518msgid "Select desktop environment"
519msgstr ""
519msgstr ""
520
520
521−#: qml/Launcher/Drawer.qml:92
521+#: qml/Launcher/Drawer.qml:93
522msgid "Search…"
522msgid "Search…"
523msgstr ""
523msgstr ""
524
524
525−#: qml/Launcher/Drawer.qml:127
525+#: qml/Launcher/Drawer.qml:128
526msgctxt "Apps sorted alphabetically"
526msgctxt "Apps sorted alphabetically"
527msgid "A-Z"
527msgid "A-Z"
528msgstr ""
528msgstr ""
po/uk.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2017-01-17 10:58+0000\n"
11"PO-Revision-Date: 2017-01-17 10:58+0000\n"
12"Last-Translator: Yuri Chornoivan <yurchor@gmail.com>\n"
12"Last-Translator: Yuri Chornoivan <yurchor@gmail.com>\n"
13"Language-Team: Ukrainian <uk@li.org>\n"
13"Language-Team: Ukrainian <uk@li.org>\n"
@@ -16,8 +16,8 @@ msgstr ""
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
18"n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
19−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
19+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
20−"X-Generator: Launchpad (build 18331)\n"
20+"X-Generator: Launchpad (build 18334)\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
23msgid "Password: "
23msgid "Password: "
@@ -51,8 +51,8 @@ msgstr ""
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr ""
52msgstr ""
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "Заблокувати кнопку"
57msgstr "Заблокувати кнопку"
58
58
@@ -60,20 +60,20 @@ msgstr "Заблокувати кнопку"
60msgid "Quit"
60msgid "Quit"
61msgstr "Вийти"
61msgstr "Вийти"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "Розблокувати кнопку"
65msgstr "Розблокувати кнопку"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "Вийти"
70msgstr "Вийти"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "Ви справді хочете вийти?"
74msgstr "Ви справді хочете вийти?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "Заблокувати"
79msgstr "Заблокувати"
@@ -529,11 +529,11 @@ msgstr "Код-пароль"
529msgid "Select desktop environment"
529msgid "Select desktop environment"
530msgstr "Виберіть стільничне середовище"
530msgstr "Виберіть стільничне середовище"
531
531
532−#: qml/Launcher/Drawer.qml:92
532+#: qml/Launcher/Drawer.qml:93
533msgid "Search…"
533msgid "Search…"
534msgstr "Пошук…"
534msgstr "Пошук…"
535
535
536−#: qml/Launcher/Drawer.qml:127
536+#: qml/Launcher/Drawer.qml:128
537msgctxt "Apps sorted alphabetically"
537msgctxt "Apps sorted alphabetically"
538msgid "A-Z"
538msgid "A-Z"
539msgstr "А-Я"
539msgstr "А-Я"
po/unity8.pot+9−9
@@ -8,7 +8,7 @@ msgid ""
8msgstr ""
8msgstr ""
9"Project-Id-Version: unity8\n"
9"Project-Id-Version: unity8\n"
10"Report-Msgid-Bugs-To: \n"
10"Report-Msgid-Bugs-To: \n"
11−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
11+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
12"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14"Language-Team: LANGUAGE <LL@li.org>\n"
14"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/ur.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-05-05 03:12+0000\n"
11"PO-Revision-Date: 2015-05-05 03:12+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Urdu <ur@li.org>\n"
13"Language-Team: Urdu <ur@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/uz.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-07-04 16:03+0000\n"
11"PO-Revision-Date: 2015-07-04 16:03+0000\n"
12"Last-Translator: Learner <muzaffar.habibullayev@yandex.ru>\n"
12"Last-Translator: Learner <muzaffar.habibullayev@yandex.ru>\n"
13"Language-Team: Uzbek <uz@li.org>\n"
13"Language-Team: Uzbek <uz@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/vi.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-01-15 01:19+0000\n"
11"PO-Revision-Date: 2014-01-15 01:19+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Vietnamese <vi@li.org>\n"
13"Language-Team: Vietnamese <vi@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/wo.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2015-10-29 11:16+0000\n"
11"PO-Revision-Date: 2015-10-29 11:16+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Wolof <wo@li.org>\n"
13"Language-Team: Wolof <wo@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
17"Plural-Forms: nplurals=2; plural=n > 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "Kepp"
56msgstr "Kepp"
57
57
@@ -59,20 +59,20 @@ msgstr "Kepp"
59msgid "Quit"
59msgid "Quit"
60msgstr "Génn"
60msgstr "Génn"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "Dindi"
64msgstr "Dindi"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "Génn"
69msgstr "Génn"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "Wóor na ne danga bëgg a génn?"
73msgstr "Wóor na ne danga bëgg a génn?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "Tëj"
78msgstr "Tëj"
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/xh.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2013-09-28 13:20+0000\n"
11"PO-Revision-Date: 2013-09-28 13:20+0000\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13"Language-Team: Xhosa <xh@li.org>\n"
13"Language-Team: Xhosa <xh@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
17"Plural-Forms: nplurals=2; plural=n != 1;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr ""
56msgstr ""
57
57
@@ -59,20 +59,20 @@ msgstr ""
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr ""
64msgstr ""
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/zh_CN.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-04-13 06:27+0000\n"
11"PO-Revision-Date: 2016-04-13 06:27+0000\n"
12"Last-Translator: YunQiang Su <wzssyqa@gmail.com>\n"
12"Last-Translator: YunQiang Su <wzssyqa@gmail.com>\n"
13"Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
13"Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "固定快捷方式"
56msgstr "固定快捷方式"
57
57
@@ -59,20 +59,20 @@ msgstr "固定快捷方式"
59msgid "Quit"
59msgid "Quit"
60msgstr "退出"
60msgstr "退出"
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "取消固定快捷方式"
64msgstr "取消固定快捷方式"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr "退出"
69msgstr "退出"
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr "您确定要注销?"
73msgstr "您确定要注销?"
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr "锁定"
78msgstr "锁定"
@@ -518,11 +518,11 @@ msgstr ""
518msgid "Select desktop environment"
518msgid "Select desktop environment"
519msgstr ""
519msgstr ""
520
520
521−#: qml/Launcher/Drawer.qml:92
521+#: qml/Launcher/Drawer.qml:93
522msgid "Search…"
522msgid "Search…"
523msgstr ""
523msgstr ""
524
524
525−#: qml/Launcher/Drawer.qml:127
525+#: qml/Launcher/Drawer.qml:128
526msgctxt "Apps sorted alphabetically"
526msgctxt "Apps sorted alphabetically"
527msgid "A-Z"
527msgid "A-Z"
528msgstr ""
528msgstr ""
po/zh_HK.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity8\n"
8"Project-Id-Version: unity8\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2014-08-10 11:45+0000\n"
11"PO-Revision-Date: 2014-08-10 11:45+0000\n"
12"Last-Translator: Daniel Cheung <daniel.2345@hotmail.com>\n"
12"Last-Translator: Daniel Cheung <daniel.2345@hotmail.com>\n"
13"Language-Team: Chinese (Hong Kong) <zh_HK@li.org>\n"
13"Language-Team: Chinese (Hong Kong) <zh_HK@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20
20
21#: plugins/LightDM/Greeter.cpp:188
21#: plugins/LightDM/Greeter.cpp:188
22msgid "Password: "
22msgid "Password: "
@@ -50,8 +50,8 @@ msgstr ""
50msgid "Guest Session"
50msgid "Guest Session"
51msgstr ""
51msgstr ""
52
52
53−#: plugins/Unity/Launcher/launcheritem.cpp:50
53+#: plugins/Unity/Launcher/launcheritem.cpp:49
54−#: plugins/Unity/Launcher/launcheritem.cpp:122
54+#: plugins/Unity/Launcher/launcheritem.cpp:123
55msgid "Pin shortcut"
55msgid "Pin shortcut"
56msgstr "釘住捷徑"
56msgstr "釘住捷徑"
57
57
@@ -59,20 +59,20 @@ msgstr "釘住捷徑"
59msgid "Quit"
59msgid "Quit"
60msgstr ""
60msgstr ""
61
61
62−#: plugins/Unity/Launcher/launcheritem.cpp:122
62+#: plugins/Unity/Launcher/launcheritem.cpp:123
63msgid "Unpin shortcut"
63msgid "Unpin shortcut"
64msgstr "取消捷徑釘選"
64msgstr "取消捷徑釘選"
65
65
66−#: qml/Components/Dialogs.qml:177
66+#: qml/Components/Dialogs.qml:176
67msgctxt "Title: Lock/Log out dialog"
67msgctxt "Title: Lock/Log out dialog"
68msgid "Log out"
68msgid "Log out"
69msgstr ""
69msgstr ""
70
70
71−#: qml/Components/Dialogs.qml:178
71+#: qml/Components/Dialogs.qml:177
72msgid "Are you sure you want to log out?"
72msgid "Are you sure you want to log out?"
73msgstr ""
73msgstr ""
74
74
75−#: qml/Components/Dialogs.qml:181
75+#: qml/Components/Dialogs.qml:180
76msgctxt "Button: Lock the system"
76msgctxt "Button: Lock the system"
77msgid "Lock"
77msgid "Lock"
78msgstr ""
78msgstr ""
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr ""
522msgstr ""
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr ""
527msgstr ""
po/zh_TW.po+11−11
@@ -7,7 +7,7 @@ msgid ""
7msgstr ""
7msgstr ""
8"Project-Id-Version: unity\n"
8"Project-Id-Version: unity\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
9"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
10−"POT-Creation-Date: 2017-03-08 09:56+0000\n"
10+"POT-Creation-Date: 2017-03-21 10:58+0000\n"
11"PO-Revision-Date: 2016-02-24 04:40+0000\n"
11"PO-Revision-Date: 2016-02-24 04:40+0000\n"
12"Last-Translator: Po-Hsu Lin <po-hsu.lin@canonical.com>\n"
12"Last-Translator: Po-Hsu Lin <po-hsu.lin@canonical.com>\n"
13"Language-Team: Chinese (Traditional) <zh_TW@li.org>\n"
13"Language-Team: Chinese (Traditional) <zh_TW@li.org>\n"
@@ -15,8 +15,8 @@ msgstr ""
15"Content-Type: text/plain; charset=UTF-8\n"
15"Content-Type: text/plain; charset=UTF-8\n"
16"Content-Transfer-Encoding: 8bit\n"
16"Content-Transfer-Encoding: 8bit\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
17"Plural-Forms: nplurals=1; plural=0;\n"
18−"X-Launchpad-Export-Date: 2017-03-14 07:14+0000\n"
18+"X-Launchpad-Export-Date: 2017-03-24 06:14+0000\n"
19−"X-Generator: Launchpad (build 18331)\n"
19+"X-Generator: Launchpad (build 18334)\n"
20"Language: zh_TW\n"
20"Language: zh_TW\n"
21
21
22#: plugins/LightDM/Greeter.cpp:188
22#: plugins/LightDM/Greeter.cpp:188
@@ -51,8 +51,8 @@ msgstr "登入"
51msgid "Guest Session"
51msgid "Guest Session"
52msgstr "訪客作業階段"
52msgstr "訪客作業階段"
53
53
54−#: plugins/Unity/Launcher/launcheritem.cpp:50
54+#: plugins/Unity/Launcher/launcheritem.cpp:49
55−#: plugins/Unity/Launcher/launcheritem.cpp:122
55+#: plugins/Unity/Launcher/launcheritem.cpp:123
56msgid "Pin shortcut"
56msgid "Pin shortcut"
57msgstr "釘住捷徑"
57msgstr "釘住捷徑"
58
58
@@ -60,20 +60,20 @@ msgstr "釘住捷徑"
60msgid "Quit"
60msgid "Quit"
61msgstr "結束"
61msgstr "結束"
62
62
63−#: plugins/Unity/Launcher/launcheritem.cpp:122
63+#: plugins/Unity/Launcher/launcheritem.cpp:123
64msgid "Unpin shortcut"
64msgid "Unpin shortcut"
65msgstr "取消捷徑釘選"
65msgstr "取消捷徑釘選"
66
66
67−#: qml/Components/Dialogs.qml:177
67+#: qml/Components/Dialogs.qml:176
68msgctxt "Title: Lock/Log out dialog"
68msgctxt "Title: Lock/Log out dialog"
69msgid "Log out"
69msgid "Log out"
70msgstr "登出"
70msgstr "登出"
71
71
72−#: qml/Components/Dialogs.qml:178
72+#: qml/Components/Dialogs.qml:177
73msgid "Are you sure you want to log out?"
73msgid "Are you sure you want to log out?"
74msgstr "確定要登出?"
74msgstr "確定要登出?"
75
75
76−#: qml/Components/Dialogs.qml:181
76+#: qml/Components/Dialogs.qml:180
77msgctxt "Button: Lock the system"
77msgctxt "Button: Lock the system"
78msgid "Lock"
78msgid "Lock"
79msgstr "上鎖"
79msgstr "上鎖"
@@ -517,11 +517,11 @@ msgstr ""
517msgid "Select desktop environment"
517msgid "Select desktop environment"
518msgstr ""
518msgstr ""
519
519
520−#: qml/Launcher/Drawer.qml:92
520+#: qml/Launcher/Drawer.qml:93
521msgid "Search…"
521msgid "Search…"
522msgstr "搜尋..."
522msgstr "搜尋..."
523
523
524−#: qml/Launcher/Drawer.qml:127
524+#: qml/Launcher/Drawer.qml:128
525msgctxt "Apps sorted alphabetically"
525msgctxt "Apps sorted alphabetically"
526msgid "A-Z"
526msgid "A-Z"
527msgstr "A-Z"
527msgstr "A-Z"
qml/ApplicationMenus/MenuBar.qml+10−6
@@ -44,14 +44,14 @@ Item {
44 implicitWidth: row.width
44 implicitWidth: row.width
45 height: parent.height
45 height: parent.height
46
46
47− function select(index) {
48− d.select(index);
49− }
50−
51 function dismiss() {
47 function dismiss() {
52 d.dismissAll();
48 d.dismissAll();
53 }
49 }
54
50
51+ function invokeMenu(mouseEvent) {
52+ mouseArea.onClicked(mouseEvent);
53+ }
54+
55 GlobalShortcut {
55 GlobalShortcut {
56 shortcut: Qt.Key_Alt|Qt.AltModifier
56 shortcut: Qt.Key_Alt|Qt.AltModifier
57 active: enableKeyFilter
57 active: enableKeyFilter
@@ -132,17 +132,20 @@ Item {
132
132
133 function show() {
133 function show() {
134 if (!__popup) {
134 if (!__popup) {
135+ root.unityMenuModel.aboutToShow(visualItem.__ownIndex);
135 __popup = menuComponent.createObject(root,
136 __popup = menuComponent.createObject(root,
136 {
137 {
137 objectName: visualItem.objectName + "-menu",
138 objectName: visualItem.objectName + "-menu",
138 desiredX: Qt.binding(function() { return visualItem.x - units.gu(1); }),
139 desiredX: Qt.binding(function() { return visualItem.x - units.gu(1); }),
139 desiredY: Qt.binding(function() { return root.height; }),
140 desiredY: Qt.binding(function() { return root.height; }),
140− unityMenuModel: Qt.binding(function() { return root.unityMenuModel.submenu(visualItem.__ownIndex); })
141+ unityMenuModel: Qt.binding(function() { return root.unityMenuModel.submenu(visualItem.__ownIndex); }),
142+ selectFirstOnCountChange: false
141 });
143 });
142 __popup.reset();
144 __popup.reset();
143 __popup.childActivated.connect(dismiss);
145 __popup.childActivated.connect(dismiss);
144 // force the current item to be the newly popped up menu
146 // force the current item to be the newly popped up menu
145− } else {
147+ } else if (!__popup.visible) {
148+ root.unityMenuModel.aboutToShow(visualItem.__ownIndex);
146 __popup.show();
149 __popup.show();
147 }
150 }
148 d.currentItem = visualItem;
151 d.currentItem = visualItem;
@@ -226,6 +229,7 @@ Item {
226 } // Row
229 } // Row
227
230
228 MouseArea {
231 MouseArea {
232+ id: mouseArea
229 anchors.fill: parent
233 anchors.fill: parent
230 hoverEnabled: d.currentItem
234 hoverEnabled: d.currentItem
231
235
qml/ApplicationMenus/MenuPopup.qml+14−6
@@ -33,6 +33,8 @@ UbuntuShape {
33 // if they don't fit when growing right
33 // if they don't fit when growing right
34 property bool substractWidth: false
34 property bool substractWidth: false
35
35
36+ property bool selectFirstOnCountChange: true
37+
36 property real desiredX
38 property real desiredX
37 x: {
39 x: {
38 var dummy = visible; // force recalc when shown/hidden
40 var dummy = visible; // force recalc when shown/hidden
@@ -73,8 +75,8 @@ UbuntuShape {
73 d.currentItem = null;
75 d.currentItem = null;
74 }
76 }
75
77
76− function select(index) {
78+ function selectFirstIndex() {
77− d.select(index)
79+ d.selectNext(-1);
78 }
80 }
79
81
80 function reset() {
82 function reset() {
@@ -302,6 +304,7 @@ UbuntuShape {
302
304
303 if (hasSubmenu) {
305 if (hasSubmenu) {
304 if (!popup) {
306 if (!popup) {
307+ root.unityMenuModel.aboutToShow(__ownIndex);
305 var model = root.unityMenuModel.submenu(__ownIndex);
308 var model = root.unityMenuModel.submenu(__ownIndex);
306 popup = submenuComponent.createObject(focusScope, {
309 popup = submenuComponent.createObject(focusScope, {
307 objectName: parent.objectName + "-",
310 objectName: parent.objectName + "-",
@@ -323,8 +326,10 @@ UbuntuShape {
323 popup = null;
326 popup = null;
324 root.childActivated();
327 root.childActivated();
325 });
328 });
326− } else if (popup) {
329+ } else if (!popup.visible) {
330+ root.unityMenuModel.aboutToShow(__ownIndex);
327 popup.visible = true;
331 popup.visible = true;
332+ popup.item.selectFirstIndex();
328 }
333 }
329 } else {
334 } else {
330 root.unityMenuModel.activate(__ownIndex);
335 root.unityMenuModel.activate(__ownIndex);
@@ -358,6 +363,12 @@ UbuntuShape {
358 Repeater {
363 Repeater {
359 id: repeater
364 id: repeater
360
365
366+ onCountChanged: {
367+ if (root.selectFirstOnCountChange && !d.currentItem && count > 0) {
368+ root.selectFirstIndex();
369+ }
370+ }
371+
361 Loader {
372 Loader {
362 id: loader
373 id: loader
363 objectName: root.objectName + "-item" + __ownIndex
374 objectName: root.objectName + "-item" + __ownIndex
@@ -484,9 +495,6 @@ UbuntuShape {
484 target: item
495 target: item
485 onChildActivated: childActivated();
496 onChildActivated: childActivated();
486 }
497 }
487−
488− Component.onCompleted: item.select(0);
489− onVisibleChanged: if (visible) { item.select(0); }
490 }
498 }
491 }
499 }
492 }
500 }
qml/Components/Dialogs.qml+5−5
@@ -22,7 +22,6 @@ import GlobalShortcut 1.0
22import Ubuntu.Components 1.3
22import Ubuntu.Components 1.3
23import Unity.Platform 1.0
23import Unity.Platform 1.0
24import Utils 0.1
24import Utils 0.1
25−import "../Greeter"
26
25
27MouseArea {
26MouseArea {
28 id: root
27 id: root
@@ -116,17 +115,17 @@ MouseArea {
116
115
117 GlobalShortcut { // lock screen
116 GlobalShortcut { // lock screen
118 shortcut: Qt.Key_ScreenSaver
117 shortcut: Qt.Key_ScreenSaver
119− onTriggered: LightDMService.greeter.showGreeter()
118+ onTriggered: root.unitySessionService.PromptLock()
120 }
119 }
121
120
122 GlobalShortcut { // lock screen
121 GlobalShortcut { // lock screen
123 shortcut: Qt.ControlModifier|Qt.AltModifier|Qt.Key_L
122 shortcut: Qt.ControlModifier|Qt.AltModifier|Qt.Key_L
124− onTriggered: LightDMService.greeter.showGreeter()
123+ onTriggered: root.unitySessionService.PromptLock()
125 }
124 }
126
125
127 GlobalShortcut { // lock screen
126 GlobalShortcut { // lock screen
128 shortcut: Qt.MetaModifier|Qt.Key_L
127 shortcut: Qt.MetaModifier|Qt.Key_L
129− onTriggered: LightDMService.greeter.showGreeter()
128+ onTriggered: root.unitySessionService.PromptLock()
130 }
129 }
131
130
132 QtObject {
131 QtObject {
@@ -179,8 +178,9 @@ MouseArea {
179 Button {
178 Button {
180 width: parent.width
179 width: parent.width
181 text: i18n.ctr("Button: Lock the system", "Lock")
180 text: i18n.ctr("Button: Lock the system", "Lock")
181+ visible: root.unitySessionService.CanLock()
182 onClicked: {
182 onClicked: {
183− LightDMService.greeter.showGreeter()
183+ root.unitySessionService.PromptLock();
184 logoutDialog.hide();
184 logoutDialog.hide();
185 }
185 }
186 Component.onCompleted: if (root.hasKeyboard) forceActiveFocus(Qt.TabFocusReason)
186 Component.onCompleted: if (root.hasKeyboard) forceActiveFocus(Qt.TabFocusReason)
qml/Launcher/Drawer.qml+5−1
@@ -27,6 +27,7 @@ FocusScope {
27
27
28 property int panelWidth: 0
28 property int panelWidth: 0
29 readonly property bool moving: listLoader.item && listLoader.item.moving
29 readonly property bool moving: listLoader.item && listLoader.item.moving
30+ readonly property Item searchTextField: searchField
30
31
31 signal applicationSelected(string appId)
32 signal applicationSelected(string appId)
32
33
@@ -212,13 +213,16 @@ FocusScope {
212 root.dragDistance += diff;
213 root.dragDistance += diff;
213 oldX = mouseX
214 oldX = mouseX
214 }
215 }
215− onReleased: {
216+ onReleased: reset();
217+ onCanceled: reset();
218+ function reset() {
216 if (root.draggingHorizontally) {
219 if (root.draggingHorizontally) {
217 root.draggingHorizontally = false;
220 root.draggingHorizontally = false;
218 parent.interactive = true;
221 parent.interactive = true;
219 }
222 }
220 reactivateTimer.start();
223 reactivateTimer.start();
221 }
224 }
225+
222 Timer {
226 Timer {
223 id: reactivateTimer
227 id: reactivateTimer
224 interval: 0
228 interval: 0
qml/Launcher/Launcher.qml+18−10
@@ -33,6 +33,7 @@ FocusScope {
33 property Item blurSource: null
33 property Item blurSource: null
34 property int topPanelHeight: 0
34 property int topPanelHeight: 0
35 property bool drawerEnabled: true
35 property bool drawerEnabled: true
36+ property alias privateMode: panel.privateMode
36
37
37 property int panelWidth: units.gu(10)
38 property int panelWidth: units.gu(10)
38 property int dragAreaWidth: units.gu(1)
39 property int dragAreaWidth: units.gu(1)
@@ -119,7 +120,14 @@ FocusScope {
119 }
120 }
120 return;
121 return;
121 }
122 }
123+ if (root.lockedVisible) {
124+ // Due to binding updates when switching between modes
125+ // it could happen that our request to show will be overwritten
126+ // with a hide request. Rewrite it when we know hiding is not allowed.
127+ switchToNextState("visible")
128+ } else {
122− switchToNextState("")
129+ switchToNextState("")
130+ }
123 }
131 }
124
132
125 function fadeOut() {
133 function fadeOut() {
@@ -155,6 +163,7 @@ FocusScope {
155
163
156 function openForKeyboardNavigation() {
164 function openForKeyboardNavigation() {
157 panel.highlightIndex = -1; // The BFB
165 panel.highlightIndex = -1; // The BFB
166+ drawer.focus = false;
158 root.focus = true;
167 root.focus = true;
159 switchToNextState("visible")
168 switchToNextState("visible")
160 }
169 }
@@ -257,13 +266,6 @@ FocusScope {
257 interval: 1
266 interval: 1
258 property string nextState: ""
267 property string nextState: ""
259 onTriggered: {
268 onTriggered: {
260− if (root.lockedVisible && nextState == "") {
261− // Due to binding updates when switching between modes
262− // it could happen that our request to show will be overwritten
263− // with a hide request. Rewrite it when we know hiding is not allowed.
264− nextState = "visible"
265− }
266−
267 // switching to an intermediate state here to make sure all the
269 // switching to an intermediate state here to make sure all the
268 // values are restored, even if we were already in the target state
270 // values are restored, even if we were already in the target state
269 root.state = "tmp"
271 root.state = "tmp"
@@ -362,6 +364,13 @@ FocusScope {
362 topMargin: root.inverted ? root.topPanelHeight : 0
364 topMargin: root.inverted ? root.topPanelHeight : 0
363 bottom: parent.bottom
365 bottom: parent.bottom
364 right: parent.left
366 right: parent.left
367+ onRightMarginChanged: {
368+ // Remove (and put back) the focus for the searchfield in
369+ // order to hide the copy/paste popover when we move the drawer
370+ var hadFocus = drawer.searchTextField.focus;
371+ drawer.searchTextField.focus = false;
372+ drawer.searchTextField.focus = hadFocus;
373+ }
365 }
374 }
366 width: Math.min(root.width, units.gu(90)) * .9
375 width: Math.min(root.width, units.gu(90)) * .9
367 panelWidth: panel.width
376 panelWidth: panel.width
@@ -382,8 +391,7 @@ FocusScope {
382 }
391 }
383
392
384 Keys.onEscapePressed: {
393 Keys.onEscapePressed: {
385− switchToNextState("");
394+ root.hide()
386− root.focus = false;
387 }
395 }
388
396
389 onDragDistanceChanged: {
397 onDragDistanceChanged: {
qml/Launcher/LauncherPanel.qml+8−1
@@ -19,6 +19,7 @@ import QtQml.StateMachine 1.0 as DSM
19import Ubuntu.Components 1.3
19import Ubuntu.Components 1.3
20import Unity.Launcher 0.1
20import Unity.Launcher 0.1
21import Ubuntu.Components.Popups 1.3
21import Ubuntu.Components.Popups 1.3
22+import Utils 0.1
22import "../Components"
23import "../Components"
23
24
24Rectangle {
25Rectangle {
@@ -29,6 +30,7 @@ Rectangle {
29
30
30 property var model
31 property var model
31 property bool inverted: false
32 property bool inverted: false
33+ property bool privateMode: false
32 property bool dragging: false
34 property bool dragging: false
33 property bool moving: launcherListView.moving || launcherListView.flicking
35 property bool moving: launcherListView.moving || launcherListView.flicking
34 property bool preventHiding: moving || dndArea.draggedIndex >= 0 || quickList.state === "open" || dndArea.pressed
36 property bool preventHiding: moving || dndArea.draggedIndex >= 0 || quickList.state === "open" || dndArea.pressed
@@ -811,7 +813,11 @@ Rectangle {
811
813
812 Repeater {
814 Repeater {
813 id: popoverRepeater
815 id: popoverRepeater
816+ objectName: "popoverRepeater"
817+ model: QuickListProxyModel {
814− model: quickList.model
818+ source: quickList.model
819+ privateMode: root.privateMode
820+ }
815
821
816 ListItem {
822 ListItem {
817 objectName: "quickListEntry" + index
823 objectName: "quickListEntry" + index
@@ -835,6 +841,7 @@ Rectangle {
835 fontSize: index == 0 ? "medium" : "small"
841 fontSize: index == 0 ? "medium" : "small"
836 font.weight: index == 0 ? Font.Medium : Font.Light
842 font.weight: index == 0 ? Font.Medium : Font.Light
837 color: model.clickable ? theme.palette.normal.backgroundText : theme.palette.disabled.backgroundText
843 color: model.clickable ? theme.palette.normal.backgroundText : theme.palette.disabled.backgroundText
844+ elide: Text.ElideRight
838 }
845 }
839
846
840 onClicked: {
847 onClicked: {
qml/Panel/Indicators/client/IndicatorRepresentation.qml+18−5
@@ -20,6 +20,7 @@
20
20
21import QtQuick 2.4
21import QtQuick 2.4
22import Ubuntu.Components 1.3
22import Ubuntu.Components 1.3
23+import ".."
23import "../.."
24import "../.."
24
25
25Page {
26Page {
@@ -77,11 +78,23 @@ Page {
77
78
78 Component {
79 Component {
79 id: page
80 id: page
80− IndicatorPage {
81+ PanelMenuPage {
82+ objectName: model.identifier + "-page"
83+ submenuIndex: 0
84+
85+ menuModel: delegate.menuModel
86+
87+ factory: IndicatorMenuItemFactory {
81− identifier: model.identifier
88+ indicator: model.identifier
89+ rootModel: delegate.menuModel
90+ }
91+
92+ IndicatorDelegate {
93+ id: delegate
82− busName: indicatorProperties.busName
94+ busName: indicatorProperties.busName
83− actionsObjectPath: indicatorProperties.actionsObjectPath
95+ actionsObjectPath: indicatorProperties.actionsObjectPath
84− menuObjectPath: indicatorProperties.menuObjectPath
96+ menuObjectPath: indicatorProperties.menuObjectPath
97+ }
85 }
98 }
86 }
99 }
87 Component {
100 Component {
qml/Panel/MenuContent.qml+2−2
@@ -44,9 +44,9 @@ Rectangle {
44 anchors.fill: parent
44 anchors.fill: parent
45 model: content.model
45 model: content.model
46
46
47− highlightFollowsCurrentItem: true
47+ highlightFollowsCurrentItem: false
48+ contentX: currentIndex * width
48 interactive: false
49 interactive: false
49− highlightMoveDuration: 0
50 orientation: ListView.Horizontal
50 orientation: ListView.Horizontal
51 // Load all the indicator menus (a big number)
51 // Load all the indicator menus (a big number)
52 cacheBuffer: 1073741823
52 cacheBuffer: 1073741823
qml/Panel/Panel.qml+42−4
@@ -38,6 +38,7 @@ Item {
38 property real expandedPanelHeight: units.gu(7)
38 property real expandedPanelHeight: units.gu(7)
39 property real indicatorMenuWidth: width
39 property real indicatorMenuWidth: width
40 property real applicationMenuWidth: width
40 property real applicationMenuWidth: width
41+ property alias applicationMenuContentX: __applicationMenus.menuContentX
41
42
42 property alias applicationMenus: __applicationMenus
43 property alias applicationMenus: __applicationMenus
43 property alias indicators: __indicators
44 property alias indicators: __indicators
@@ -174,6 +175,10 @@ Item {
174 // let it fall through to the window decoration of the maximized window behind, if any
175 // let it fall through to the window decoration of the maximized window behind, if any
175 mouse.accepted = false;
176 mouse.accepted = false;
176 }
177 }
178+ var menubar = menuBarLoader.item;
179+ if (menubar) {
180+ menubar.invokeMenu(mouse);
181+ }
177 }
182 }
178
183
179 Row {
184 Row {
@@ -200,16 +205,17 @@ Item {
200
205
201 Loader {
206 Loader {
202 id: menuBarLoader
207 id: menuBarLoader
208+ objectName: "menuBarLoader"
203 height: parent.height
209 height: parent.height
204 enabled: d.enablePointerMenu
210 enabled: d.enablePointerMenu
205 opacity: d.showPointerMenu ? 1 : 0
211 opacity: d.showPointerMenu ? 1 : 0
206 visible: opacity != 0
212 visible: opacity != 0
207 Behavior on opacity { UbuntuNumberAnimation { duration: UbuntuAnimation.SnapDuration } }
213 Behavior on opacity { UbuntuNumberAnimation { duration: UbuntuAnimation.SnapDuration } }
208− active: __applicationMenus.model
214+ active: __applicationMenus.model && !callHint.visible
209
215
210 width: parent.width - windowControlButtons.width - units.gu(2) - __indicators.barWidth
216 width: parent.width - windowControlButtons.width - units.gu(2) - __indicators.barWidth
211
217
212− property bool menusRequested: menuBarLoader.item ? menuBarLoader.item.showRequested : false
218+ readonly property bool menusRequested: menuBarLoader.item ? menuBarLoader.item.showRequested : false
213
219
214 sourceComponent: MenuBar {
220 sourceComponent: MenuBar {
215 id: bar
221 id: bar
@@ -231,6 +237,7 @@ Item {
231 }
237 }
232
238
233 onDoubleClicked: PanelState.restoreClicked()
239 onDoubleClicked: PanelState.restoreClicked()
240+ onPressed: mouse.accepted = false // let the parent mouse area handle this, so it can both unsnap window and show menu
234 }
241 }
235 }
242 }
236 }
243 }
@@ -250,6 +257,7 @@ Item {
250 PanelMenu {
257 PanelMenu {
251 id: __applicationMenus
258 id: __applicationMenus
252
259
260+ x: menuContentX
253 model: registeredMenuModel.model
261 model: registeredMenuModel.model
254 width: root.applicationMenuWidth
262 width: root.applicationMenuWidth
255 minimizedPanelHeight: root.minimizedPanelHeight
263 minimizedPanelHeight: root.minimizedPanelHeight
@@ -258,6 +266,7 @@ Item {
258 alignment: Qt.AlignLeft
266 alignment: Qt.AlignLeft
259 enableHint: !callHint.active && !fullscreenMode
267 enableHint: !callHint.active && !fullscreenMode
260 showOnClick: false
268 showOnClick: false
269+ adjustDragHandleSizeToContents: false
261 panelColor: panelAreaBackground.color
270 panelColor: panelAreaBackground.color
262
271
263 onShowTapped: {
272 onShowTapped: {
@@ -266,12 +275,12 @@ Item {
266 }
275 }
267 }
276 }
268
277
269− showRowTitle: !expanded
278+ hideRow: !expanded
270− rowTitle: PanelState.title
271 rowItemDelegate: ActionItem {
279 rowItemDelegate: ActionItem {
272 id: actionItem
280 id: actionItem
273 property int ownIndex: index
281 property int ownIndex: index
274 objectName: "appMenuItem"+index
282 objectName: "appMenuItem"+index
283+ enabled: model.sensitive
275
284
276 width: _title.width + units.gu(2)
285 width: _title.width + units.gu(2)
277 height: parent.height
286 height: parent.height
@@ -290,6 +299,13 @@ Item {
290 }
299 }
291
300
292 pageDelegate: PanelMenuPage {
301 pageDelegate: PanelMenuPage {
302+ readonly property bool isCurrent: modelIndex == __applicationMenus.currentMenuIndex
303+ onIsCurrentChanged: {
304+ if (isCurrent && menuModel) {
305+ menuModel.aboutToShow(modelIndex);
306+ }
307+ }
308+
293 menuModel: __applicationMenus.model
309 menuModel: __applicationMenus.model
294 submenuIndex: modelIndex
310 submenuIndex: modelIndex
295
311
@@ -308,6 +324,28 @@ Item {
308 }
324 }
309 }
325 }
310
326
327+ Label {
328+ id: rowLabel
329+ objectName: "panelTitle"
330+ anchors {
331+ left: parent.left
332+ leftMargin: units.gu(1)
333+ right: __indicators.left
334+ rightMargin: units.gu(1)
335+ }
336+ height: root.minimizedPanelHeight
337+ verticalAlignment: Text.AlignVCenter
338+ elide: Text.ElideRight
339+ maximumLineCount: 1
340+ fontSize: "medium"
341+ font.weight: Font.Medium
342+ color: Theme.palette.selected.backgroundText
343+ opacity: __applicationMenus.visible && !__applicationMenus.expanded ? 1 : 0
344+ visible: opacity != 0
345+ Behavior on opacity { NumberAnimation { duration: UbuntuAnimation.SnapDuration } }
346+ text: PanelState.title
347+ }
348+
311 PanelMenu {
349 PanelMenu {
312 id: __indicators
350 id: __indicators
313 objectName: "indicators"
351 objectName: "indicators"
qml/Panel/PanelBar.qml+17−2
@@ -30,8 +30,7 @@ Item {
30 property real lateralPosition: -1
30 property real lateralPosition: -1
31 property int alignment: Qt.AlignRight
31 property int alignment: Qt.AlignRight
32
32
33− property alias showRowTitle: row.showRowTitle
33+ property alias hideRow: row.hideRow
34− property alias rowTitle: row.rowTitle
35 property alias rowItemDelegate: row.delegate
34 property alias rowItemDelegate: row.delegate
36
35
37 implicitWidth: flickable.contentWidth
36 implicitWidth: flickable.contentWidth
@@ -44,6 +43,22 @@ Item {
44 row.selectItemAt(mapped.x);
43 row.selectItemAt(mapped.x);
45 }
44 }
46
45
46+ function selectPreviousItem() {
47+ if (!expanded) {
48+ row.resetCurrentItem();
49+ }
50+ row.selectPreviousItem();
51+ d.alignIndicators();
52+ }
53+
54+ function selectNextItem() {
55+ if (!expanded) {
56+ row.resetCurrentItem();
57+ }
58+ row.selectNextItem();
59+ d.alignIndicators();
60+ }
61+
47 function setCurrentItemIndex(index) {
62 function setCurrentItemIndex(index) {
48 if (!expanded) {
63 if (!expanded) {
49 row.resetCurrentItem();
64 row.resetCurrentItem();
qml/Panel/PanelItemRow.qml+35−29
@@ -20,11 +20,10 @@ import "../Components"
20
20
21Item {
21Item {
22 id: root
22 id: root
23− implicitWidth: showRowTitle && !expanded ? rowTitle != "" ? rowLabel.width : 0 : row.width
23+ implicitWidth: row.width
24 implicitHeight: units.gu(3)
24 implicitHeight: units.gu(3)
25
25
26− property bool showRowTitle: false
26+ property bool hideRow: false
27− property alias rowTitle: rowLabel.text
28 property QtObject model: null
27 property QtObject model: null
29 property real overFlowWidth: width
28 property real overFlowWidth: width
30 property bool expanded: false
29 property bool expanded: false
@@ -96,31 +95,57 @@ Item {
96 row.currentIndex = -1;
95 row.currentIndex = -1;
97 }
96 }
98
97
98+ function selectPreviousItem() {
99+ var indexToSelect = currentItemIndex - 1;
100+ while (indexToSelect >= 0) {
101+ if (setCurrentItemIndex(indexToSelect))
102+ return;
103+ indexToSelect = indexToSelect - 1;
104+ }
105+ }
106+
107+ function selectNextItem() {
108+ var indexToSelect = currentItemIndex + 1;
109+ while (indexToSelect < row.contentItem.children.length) {
110+ if (setCurrentItemIndex(indexToSelect))
111+ return;
112+ indexToSelect = indexToSelect + 1;
113+ }
114+ }
115+
99 function setCurrentItemIndex(index) {
116 function setCurrentItemIndex(index) {
100 for (var i = 0; i < row.contentItem.children.length; i++) {
117 for (var i = 0; i < row.contentItem.children.length; i++) {
101 var item = row.contentItem.children[i];
118 var item = row.contentItem.children[i];
102− if (item.hasOwnProperty("ownIndex") && item.ownIndex === index) {
119+ if (item.hasOwnProperty("ownIndex") && item.ownIndex === index && item.enabled) {
120+ if (currentItem !== item) {
103− if (currentItem !== item) row.currentIndex = index;
121+ row.currentIndex = index;
104− break;
122+ }
123+ return true;
105 }
124 }
106 }
125 }
126+ return false;
107 }
127 }
108
128
109 function selectItemAt(lateralPosition) {
129 function selectItemAt(lateralPosition) {
110 var item = indicatorAt(lateralPosition, 0);
130 var item = indicatorAt(lateralPosition, 0);
111− if (item && item.opacity > 0) {
131+ if (item && item.opacity > 0 && item.enabled) {
112 row.currentIndex = item.ownIndex;
132 row.currentIndex = item.ownIndex;
113 } else {
133 } else {
114 // Select default item.
134 // Select default item.
115 var searchIndex = lateralPosition >= width ? row.count - 1 : 0;
135 var searchIndex = lateralPosition >= width ? row.count - 1 : 0;
116
136
117 for (var i = 0; i < row.contentItem.children.length; i++) {
137 for (var i = 0; i < row.contentItem.children.length; i++) {
118− if (row.contentItem.children[i].hasOwnProperty("ownIndex") && row.contentItem.children[i].ownIndex === searchIndex) {
138+ if (row.contentItem.children[i].hasOwnProperty("ownIndex") &&
139+ row.contentItem.children[i].ownIndex === searchIndex &&
140+ row.contentItem.children[i].enabled)
141+ {
119 item = row.contentItem.children[i];
142 item = row.contentItem.children[i];
120 break;
143 break;
121 }
144 }
122 }
145 }
146+ if (item && currentItem !== item) {
123− if (currentItem !== item) row.currentIndex = item ? item.ownIndex : -1;
147+ row.currentIndex = item.ownIndex;
148+ }
124 }
149 }
125 }
150 }
126
151
@@ -138,31 +163,12 @@ Item {
138 d.previousItem = currentItem;
163 d.previousItem = currentItem;
139 }
164 }
140
165
141− Label {
142− id: rowLabel
143− objectName: "panelTitle"
144− anchors {
145− left: parent.left
146− leftMargin: units.gu(1)
147− verticalCenter: parent.verticalCenter
148− }
149− width: implicitWidth + units.gu(2)
150− elide: Text.ElideRight
151− maximumLineCount: 1
152− fontSize: "medium"
153− font.weight: Font.Medium
154− color: Theme.palette.selected.backgroundText
155− opacity: showRowTitle ? 1 : 0
156− visible: opacity != 0
157− Behavior on opacity { NumberAnimation { duration: UbuntuAnimation.SnapDuration } }
158− }
159−
160 ListView {
166 ListView {
161 id: row
167 id: row
162 objectName: "panelRow"
168 objectName: "panelRow"
163 orientation: ListView.Horizontal
169 orientation: ListView.Horizontal
164 model: root.model
170 model: root.model
165− opacity: showRowTitle ? 0 : 1
171+ opacity: hideRow ? 0 : 1
166 // dont set visible on basis of opacity; otherwise width will not be calculated correctly
172 // dont set visible on basis of opacity; otherwise width will not be calculated correctly
167 anchors {
173 anchors {
168 top: parent.top
174 top: parent.top
qml/Panel/PanelMenu.qml+37−25
@@ -32,11 +32,12 @@ Showable {
32 property real openedHeight: units.gu(71)
32 property real openedHeight: units.gu(71)
33 property bool enableHint: true
33 property bool enableHint: true
34 property bool showOnClick: true
34 property bool showOnClick: true
35+ property bool adjustDragHandleSizeToContents: true
35 property color panelColor: theme.palette.normal.background
36 property color panelColor: theme.palette.normal.background
37+ property real menuContentX: 0
36
38
37 property alias alignment: bar.alignment
39 property alias alignment: bar.alignment
38− property alias rowTitle: bar.rowTitle
40+ property alias hideRow: bar.hideRow
39− property alias showRowTitle: bar.showRowTitle
40 property alias rowItemDelegate: bar.rowItemDelegate
41 property alias rowItemDelegate: bar.rowItemDelegate
41 property alias pageDelegate: content.pageDelegate
42 property alias pageDelegate: content.pageDelegate
42
43
@@ -45,7 +46,8 @@ Showable {
45 readonly property bool partiallyOpened: unitProgress > 0 && unitProgress < 1.0
46 readonly property bool partiallyOpened: unitProgress > 0 && unitProgress < 1.0
46 readonly property bool fullyClosed: unitProgress == 0
47 readonly property bool fullyClosed: unitProgress == 0
47 readonly property alias expanded: bar.expanded
48 readonly property alias expanded: bar.expanded
48− readonly property int barWidth: Math.min(bar.width, bar.implicitWidth)
49+ readonly property int barWidth: adjustDragHandleSizeToContents ? Math.min(bar.width, bar.implicitWidth) : bar.width
50+ readonly property alias currentMenuIndex: bar.currentItemIndex
49
51
50 signal showTapped()
52 signal showTapped()
51
53
@@ -77,33 +79,42 @@ Showable {
77
79
78 shown: false
80 shown: false
79 height: minimizedPanelHeight
81 height: minimizedPanelHeight
80− clip: root.partiallyOpened
81
82
82 onUnitProgressChanged: d.updateState()
83 onUnitProgressChanged: d.updateState()
83
84
84− // eater
85+ Item {
85− MouseArea {
86− anchors.fill: content
87− hoverEnabled: true
88− acceptedButtons: Qt.AllButtons
89− onWheel: wheel.accepted = true;
90− enabled: root.state != "initial"
91− visible: content.visible
92− }
93−
94− MenuContent {
95− id: content
96− objectName: "menuContent"
97−
98 anchors {
86 anchors {
99 left: parent.left
87 left: parent.left
100 right: parent.right
88 right: parent.right
101 top: bar.bottom
89 top: bar.bottom
90+ bottom: parent.bottom
91+ }
92+ clip: root.partiallyOpened
93+
94+ // eater
95+ MouseArea {
96+ anchors.fill: content
97+ hoverEnabled: true
98+ acceptedButtons: Qt.AllButtons
99+ onWheel: wheel.accepted = true;
100+ enabled: root.state != "initial"
101+ visible: content.visible
102+ }
103+
104+ MenuContent {
105+ id: content
106+ objectName: "menuContent"
107+
108+ anchors {
109+ left: parent.left
110+ right: parent.right
111+ top: parent.top
112+ }
113+ height: openedHeight - bar.height - handle.height
114+ model: root.model
115+ visible: root.unitProgress > 0
116+ currentMenuIndex: bar.currentItemIndex
102 }
117 }
103− height: openedHeight - bar.height - handle.height
104− model: root.model
105− visible: root.unitProgress > 0
106− currentMenuIndex: bar.currentItemIndex
107 }
118 }
108
119
109 Handle {
120 Handle {
@@ -142,10 +153,10 @@ Showable {
142
153
143 Keys.onPressed: {
154 Keys.onPressed: {
144 if (event.key === Qt.Key_Left) {
155 if (event.key === Qt.Key_Left) {
145− bar.setCurrentItemIndex(bar.currentItemIndex - 1);
156+ bar.selectPreviousItem();
146 event.accepted = true;
157 event.accepted = true;
147 } else if (event.key === Qt.Key_Right) {
158 } else if (event.key === Qt.Key_Right) {
148− bar.setCurrentItemIndex(bar.currentItemIndex + 1);
159+ bar.selectNextItem();
149 event.accepted = true;
160 event.accepted = true;
150 } else if (event.key === Qt.Key_Escape) {
161 } else if (event.key === Qt.Key_Escape) {
151 root.hide();
162 root.hide();
@@ -217,8 +228,9 @@ Showable {
217 objectName: "showDragHandle"
228 objectName: "showDragHandle"
218 anchors.bottom: parent.bottom
229 anchors.bottom: parent.bottom
219 anchors.left: alignment == Qt.AlignLeft ? parent.left : undefined
230 anchors.left: alignment == Qt.AlignLeft ? parent.left : undefined
231+ anchors.leftMargin: -root.menuContentX
220 anchors.right: alignment == Qt.AlignRight ? parent.right : undefined
232 anchors.right: alignment == Qt.AlignRight ? parent.right : undefined
221− width: root.barWidth // show handle should only cover panel items.
233+ width: root.barWidth + root.menuContentX // show handle should only cover panel items.
222 height: minimizedPanelHeight
234 height: minimizedPanelHeight
223 direction: Direction.Downwards
235 direction: Direction.Downwards
224 enabled: !root.shown && root.available
236 enabled: !root.shown && root.available
qml/Panel/PanelMenuPage.qml+2−1
@@ -63,7 +63,7 @@ PageStack {
63 if (model) {
63 if (model) {
64 push(pageComponent, { "menuModel": model });
64 push(pageComponent, { "menuModel": model });
65 }
65 }
66− } else {
66+ } else if (root.currentPage) {
67 root.currentPage.reset();
67 root.currentPage.reset();
68 }
68 }
69 }
69 }
@@ -192,6 +192,7 @@ PageStack {
192 if (item.hasOwnProperty("clicked")) {
192 if (item.hasOwnProperty("clicked")) {
193 item.clicked.connect(function() {
193 item.clicked.connect(function() {
194 if (model.hasSubmenu) {
194 if (model.hasSubmenu) {
195+ page.menuModel.aboutToShow(modelIndex);
195 root.push(pageComponent, {
196 root.push(pageComponent, {
196 "isSubmenu": true,
197 "isSubmenu": true,
197 "title": model.label.replace(/_|&/, ""),
198 "title": model.label.replace(/_|&/, ""),
qml/Shell.qml+13−2
@@ -426,7 +426,9 @@ StyledItem {
426 id: showGreeterDelayed
426 id: showGreeterDelayed
427 interval: 1
427 interval: 1
428 onTriggered: {
428 onTriggered: {
429− greeter.forceShow();
429+ // Go through the dbus service, because it has checks for whether
430+ // we are even allowed to lock or not.
431+ DBusUnitySessionService.PromptLock();
430 }
432 }
431 }
433 }
432
434
@@ -500,6 +502,7 @@ StyledItem {
500 expandedPanelHeight: units.gu(7)
502 expandedPanelHeight: units.gu(7)
501 indicatorMenuWidth: parent.width > units.gu(60) ? units.gu(40) : parent.width
503 indicatorMenuWidth: parent.width > units.gu(60) ? units.gu(40) : parent.width
502 applicationMenuWidth: parent.width > units.gu(60) ? units.gu(40) : parent.width
504 applicationMenuWidth: parent.width > units.gu(60) ? units.gu(40) : parent.width
505+ applicationMenuContentX: launcher.lockedVisible ? launcher.panelWidth : 0
503
506
504 indicators {
507 indicators {
505 hides: [launcher]
508 hides: [launcher]
@@ -559,6 +562,7 @@ StyledItem {
559 blurSource: greeter.shown ? greeter : stages
562 blurSource: greeter.shown ? greeter : stages
560 topPanelHeight: panel.panelHeight
563 topPanelHeight: panel.panelHeight
561 drawerEnabled: !greeter.active
564 drawerEnabled: !greeter.active
565+ privateMode: greeter.active
562
566
563 onShowDashHome: showHome()
567 onShowDashHome: showHome()
564 onLauncherApplicationSelected: {
568 onLauncherApplicationSelected: {
@@ -567,7 +571,14 @@ StyledItem {
567 }
571 }
568 onShownChanged: {
572 onShownChanged: {
569 if (shown) {
573 if (shown) {
570− panel.indicators.hide()
574+ panel.indicators.hide();
575+ panel.applicationMenus.hide();
576+ }
577+ }
578+ onDrawerShownChanged: {
579+ if (drawerShown) {
580+ panel.indicators.hide();
581+ panel.applicationMenus.hide();
571 }
582 }
572 }
583 }
573 onFocusChanged: {
584 onFocusChanged: {
qml/Stage/ChildWindowTree.qml−4
@@ -60,10 +60,6 @@ Item {
60 property real windowedX: x
60 property real windowedX: x
61 property real windowedY: y
61 property real windowedY: y
62
62
63−
64− property real restoredX
65− property real restoredY
66−
67 state: "restored"
63 state: "restored"
68 // end of API expected by MoveHandler
64 // end of API expected by MoveHandler
69 ////
65 ////
qml/Stage/DecoratedWindow.qml+5−1
@@ -1,5 +1,5 @@
1/*
1/*
2− * Copyright (C) 2014-2016 Canonical, Ltd.
2+ * Copyright (C) 2014-2017 Canonical, Ltd.
3 *
3 *
4 * This program is free software; you can redistribute it and/or modify
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
5 * it under the terms of the GNU General Public License as published by
@@ -72,6 +72,8 @@ FocusScope {
72
72
73 readonly property Item clientAreaItem: applicationWindow
73 readonly property Item clientAreaItem: applicationWindow
74
74
75+ property alias altDragEnabled: altDragHandler.enabled
76+
75 signal closeClicked()
77 signal closeClicked()
76 signal maximizeClicked()
78 signal maximizeClicked()
77 signal maximizeHorizontallyClicked()
79 signal maximizeHorizontallyClicked()
@@ -212,6 +214,7 @@ FocusScope {
212
214
213 opacity: root.hasDecoration ? Math.min(1, root.showDecoration) : 0
215 opacity: root.hasDecoration ? Math.min(1, root.showDecoration) : 0
214 Behavior on opacity { UbuntuNumberAnimation { } }
216 Behavior on opacity { UbuntuNumberAnimation { } }
217+ visible: opacity > 0 // don't eat input when decoration is fully translucent
215
218
216 onPressed: root.decorationPressed();
219 onPressed: root.decorationPressed();
217 onPressedChanged: moveHandler.handlePressedChanged(pressed, pressedButtons, mouseX, mouseY)
220 onPressedChanged: moveHandler.handlePressedChanged(pressed, pressedButtons, mouseX, mouseY)
@@ -266,6 +269,7 @@ FocusScope {
266 acceptedButtons: Qt.LeftButton
269 acceptedButtons: Qt.LeftButton
267 property bool dragging: false
270 property bool dragging: false
268 cursorShape: undefined // don't interfere with the cursor shape set by the underlying MirSurfaceItem
271 cursorShape: undefined // don't interfere with the cursor shape set by the underlying MirSurfaceItem
272+ visible: enabled
269 onPressed: {
273 onPressed: {
270 if (mouse.button == Qt.LeftButton && mouse.modifiers == Qt.AltModifier) {
274 if (mouse.button == Qt.LeftButton && mouse.modifiers == Qt.AltModifier) {
271 root.decorationPressed(); // to raise it
275 root.decorationPressed(); // to raise it
qml/Stage/MoveHandler.qml−5
@@ -188,11 +188,6 @@ QtObject {
188 priv.progress = 0;
188 priv.progress = 0;
189 priv.resetEdges();
189 priv.resetEdges();
190 }
190 }
191− if ((target.state == "normal" || target.state == "restored") && priv.progress == 0) {
192− // save the x/y to restore to
193− target.restoredX = target.x;
194− target.restoredY = target.y;
195− }
196 }
191 }
197
192
198 function cancelDrag() {
193 function cancelDrag() {
qml/Stage/Spread/Spread.qml+11
@@ -40,6 +40,7 @@ Item {
40 property real rightEdgeBreakPoint: Math.min(units.gu(40) / root.width, .35)
40 property real rightEdgeBreakPoint: Math.min(units.gu(40) / root.width, .35)
41
41
42 signal leaveSpread()
42 signal leaveSpread()
43+ signal closeCurrentApp();
43
44
44 // Calculated stuff
45 // Calculated stuff
45 readonly property int totalItemCount: model.count
46 readonly property int totalItemCount: model.count
@@ -118,6 +119,13 @@ Item {
118 Behavior on opacity { UbuntuNumberAnimation { } }
119 Behavior on opacity { UbuntuNumberAnimation { } }
119 }
120 }
120
121
122+ readonly property int itemCount: root.model.count
123+ onItemCountChanged: {
124+ if (highlightedIndex >= itemCount) {
125+ highlightedIndex = itemCount - 1
126+ }
127+ }
128+
121 Keys.onPressed: {
129 Keys.onPressed: {
122 switch (event.key) {
130 switch (event.key) {
123 case Qt.Key_Left:
131 case Qt.Key_Left:
@@ -130,6 +138,9 @@ Item {
130 selectNext(event.isAutoRepeat)
138 selectNext(event.isAutoRepeat)
131 event.accepted = true;
139 event.accepted = true;
132 break;
140 break;
141+ case Qt.Key_Q:
142+ closeCurrentApp();
143+ break;
133 case Qt.Key_Escape:
144 case Qt.Key_Escape:
134 highlightedIndex = -1
145 highlightedIndex = -1
135 // Falling through intentionally
146 // Falling through intentionally
qml/Stage/Stage.qml+25−2
@@ -575,6 +575,12 @@ FocusScope {
575 onLeaveSpread: {
575 onLeaveSpread: {
576 priv.goneToSpread = false;
576 priv.goneToSpread = false;
577 }
577 }
578+
579+ onCloseCurrentApp: {
580+ if (!appRepeater.itemAt(highlightedIndex).isDash) {
581+ appRepeater.itemAt(highlightedIndex).close();
582+ }
583+ }
578 }
584 }
579
585
580 Connections {
586 Connections {
@@ -753,6 +759,14 @@ FocusScope {
753 normalHeight = appDelegate.height;
759 normalHeight = appDelegate.height;
754 }
760 }
755 }
761 }
762+ function updateRestoredGeometry() {
763+ if (appDelegate.state == "normal" || appDelegate.state == "restored") {
764+ // save the x/y to restore to
765+ restoredX = appDelegate.x;
766+ restoredY = appDelegate.y;
767+ }
768+ }
769+
756 Connections {
770 Connections {
757 target: appDelegate
771 target: appDelegate
758 onXChanged: appDelegate.updateNormalGeometry();
772 onXChanged: appDelegate.updateNormalGeometry();
@@ -1302,6 +1316,10 @@ FocusScope {
1302 target: stageMaths
1316 target: stageMaths
1303 animateX: !focusAnimation.running && itemIndex !== spreadItem.highlightedIndex
1317 animateX: !focusAnimation.running && itemIndex !== spreadItem.highlightedIndex
1304 }
1318 }
1319+ PropertyChanges {
1320+ target: appDelegate.window
1321+ allowClientResize: false
1322+ }
1305 },
1323 },
1306 State {
1324 State {
1307 name: "stagedWithSideStage"; when: root.state == "stagedWithSideStage"
1325 name: "stagedWithSideStage"; when: root.state == "stagedWithSideStage"
@@ -1327,6 +1345,10 @@ FocusScope {
1327 target: resizeArea
1345 target: resizeArea
1328 enabled: false
1346 enabled: false
1329 }
1347 }
1348+ PropertyChanges {
1349+ target: appDelegate.window
1350+ allowClientResize: false
1351+ }
1330 },
1352 },
1331 State {
1353 State {
1332 name: "maximized"; when: appDelegate.maximized && !appDelegate.minimized
1354 name: "maximized"; when: appDelegate.maximized && !appDelegate.minimized
@@ -1598,6 +1620,7 @@ FocusScope {
1598 height: implicitHeight
1620 height: implicitHeight
1599 highlightSize: windowInfoItem.iconMargin / 2
1621 highlightSize: windowInfoItem.iconMargin / 2
1600 boundsItem: boundariesForWindowPlacement
1622 boundsItem: boundariesForWindowPlacement
1623+ altDragEnabled: root.mode == "windowed"
1601
1624
1602 requestedWidth: appDelegate.requestedWidth
1625 requestedWidth: appDelegate.requestedWidth
1603 requestedHeight: appDelegate.requestedHeight
1626 requestedHeight: appDelegate.requestedHeight
@@ -1626,7 +1649,7 @@ FocusScope {
1626 }
1649 }
1627 onMinimizeClicked: { appDelegate.requestMinimize(); }
1650 onMinimizeClicked: { appDelegate.requestMinimize(); }
1628 onDecorationPressed: { appDelegate.activate(); }
1651 onDecorationPressed: { appDelegate.activate(); }
1629− onDecorationReleased: fakeRectangle.commit();
1652+ onDecorationReleased: fakeRectangle.visible ? fakeRectangle.commit() : appDelegate.updateRestoredGeometry()
1630
1653
1631 property real angle: 0
1654 property real angle: 0
1632 Behavior on angle { enabled: priv.closingIndex >= 0; UbuntuNumberAnimation {} }
1655 Behavior on angle { enabled: priv.closingIndex >= 0; UbuntuNumberAnimation {} }
@@ -1670,7 +1693,7 @@ FocusScope {
1670 onFakeMaximizeBottomLeftAnimationRequested: if (!appDelegate.maximizedBottomLeft) fakeRectangle.maximizeBottomLeft(amount, true);
1693 onFakeMaximizeBottomLeftAnimationRequested: if (!appDelegate.maximizedBottomLeft) fakeRectangle.maximizeBottomLeft(amount, true);
1671 onFakeMaximizeBottomRightAnimationRequested: if (!appDelegate.maximizedBottomRight) fakeRectangle.maximizeBottomRight(amount, true);
1694 onFakeMaximizeBottomRightAnimationRequested: if (!appDelegate.maximizedBottomRight) fakeRectangle.maximizeBottomRight(amount, true);
1672 onStopFakeAnimation: fakeRectangle.stop();
1695 onStopFakeAnimation: fakeRectangle.stop();
1673− onDragReleased: fakeRectangle.commit();
1696+ onDragReleased: fakeRectangle.visible ? fakeRectangle.commit() : appDelegate.updateRestoredGeometry()
1674 }
1697 }
1675
1698
1676 WindowedFullscreenPolicy {
1699 WindowedFullscreenPolicy {
src/CMakeLists.txt+3−1
@@ -1,11 +1,13 @@
1add_subdirectory(libunity8-private)
1add_subdirectory(libunity8-private)
2
2
3pkg_check_modules(CONNECTIVITY REQUIRED connectivity-qt1)
3pkg_check_modules(CONNECTIVITY REQUIRED connectivity-qt1)
4+pkg_check_modules(GSETTINGS_QT REQUIRED gsettings-qt)
4
5
5include_directories(
6include_directories(
6 SYSTEM
7 SYSTEM
7 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
8 ${Qt5Gui_PRIVATE_INCLUDE_DIRS}
8 ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
9 ${Qt5Quick_PRIVATE_INCLUDE_DIRS}
10+ ${GSETTINGS_QT_INCLUDE_DIRS}
9 ${CONNECTIVITY_INCLUDE_DIRS}
11 ${CONNECTIVITY_INCLUDE_DIRS}
10)
12)
11
13
@@ -47,7 +49,7 @@ qt5_use_modules(${SHELL_APP} DBus Gui Qml Quick Test)
47if (NOT "${ANDROID_PROPERTIES_INCLUDE_DIRS}" STREQUAL "")
49if (NOT "${ANDROID_PROPERTIES_INCLUDE_DIRS}" STREQUAL "")
48 set_target_properties(${SHELL_APP} PROPERTIES INCLUDE_DIRECTORIES ${ANDROID_PROPERTIES_INCLUDE_DIRS})
50 set_target_properties(${SHELL_APP} PROPERTIES INCLUDE_DIRECTORIES ${ANDROID_PROPERTIES_INCLUDE_DIRS})
49endif()
51endif()
50−target_link_libraries(${SHELL_APP} ${ANDROID_PROPERTIES_LDFLAGS} UbuntuGestures connectivity-qt1 unity8-private)
52+target_link_libraries(${SHELL_APP} ${ANDROID_PROPERTIES_LDFLAGS} ${GSETTINGS_QT_LDFLAGS} UbuntuGestures connectivity-qt1 unity8-private)
51
53
52if (ENABLE_TOUCH_EMULATION)
54if (ENABLE_TOUCH_EMULATION)
53 target_link_libraries(${SHELL_APP} ${MOUSETOUCHADAPTOR_LIBS_LDFLAGS})
55 target_link_libraries(${SHELL_APP} ${MOUSETOUCHADAPTOR_LIBS_LDFLAGS})
src/ShellApplication.cpp+5
@@ -21,6 +21,8 @@
21#include <QProcess>
21#include <QProcess>
22#include <QScreen>
22#include <QScreen>
23
23
24+#include <QGSettings>
25+
24#include <libintl.h>
26#include <libintl.h>
25
27
26// libandroid-properties
28// libandroid-properties
@@ -75,6 +77,9 @@ ShellApplication::ShellApplication(int & argc, char ** argv, bool isMirServer)
75 bindtextdomain("unity8", translationDirectory().toUtf8().data());
77 bindtextdomain("unity8", translationDirectory().toUtf8().data());
76 textdomain("unity8");
78 textdomain("unity8");
77
79
80+ QScopedPointer<QGSettings> gSettings(new QGSettings("com.canonical.Unity8"));
81+ gSettings->reset(QStringLiteral("alwaysShowOsk"));
82+
78 m_shellView = new ShellView(m_qmlEngine, &m_qmlArgs);
83 m_shellView = new ShellView(m_qmlEngine, &m_qmlArgs);
79
84
80 if (parser.windowGeometry().isValid()) {
85 if (parser.windowGeometry().isValid()) {
tests/mocks/QMenuModel/unitymenumodel.cpp+28−4
@@ -18,6 +18,8 @@
18
18
19#include "unitymenumodel.h"
19#include "unitymenumodel.h"
20
20
21+#include <QTimer>
22+
21enum MenuRoles {
23enum MenuRoles {
22 LabelRole = Qt::DisplayRole + 1,
24 LabelRole = Qt::DisplayRole + 1,
23 SensitiveRole,
25 SensitiveRole,
@@ -35,7 +37,8 @@ enum MenuRoles {
35};
37};
36
38
37UnityMenuModel::UnityMenuModel(QObject *parent)
39UnityMenuModel::UnityMenuModel(QObject *parent)
38−: QAbstractListModel(parent)
40+ : QAbstractListModel(parent)
41+ , m_rowCountStatus(NoRequestMade)
39{
42{
40}
43}
41
44
@@ -60,7 +63,7 @@ void UnityMenuModel::setModelData(const QVariant& data)
60
63
61void UnityMenuModel::insertRow(int row, const QVariant& data)
64void UnityMenuModel::insertRow(int row, const QVariant& data)
62{
65{
63− row = qMin(row, rowCount());
66+ row = qMin(row, m_modelData.count());
64
67
65 beginInsertRows(QModelIndex(), row, row);
68 beginInsertRows(QModelIndex(), row, row);
66
69
@@ -71,12 +74,12 @@ void UnityMenuModel::insertRow(int row, const QVariant& data)
71
74
72void UnityMenuModel::appendRow(const QVariant& data)
75void UnityMenuModel::appendRow(const QVariant& data)
73{
76{
74− insertRow(rowCount(), data);
77+ insertRow(m_modelData.count(), data);
75}
78}
76
79
77void UnityMenuModel::removeRow(int row)
80void UnityMenuModel::removeRow(int row)
78{
81{
79− if (row < 0 || rowCount() <= row) {
82+ if (row < 0 || m_modelData.count() <= row) {
80 return;
83 return;
81 }
84 }
82
85
@@ -133,6 +136,22 @@ QString UnityMenuModel::nameOwner() const
133
136
134int UnityMenuModel::rowCount(const QModelIndex&) const
137int UnityMenuModel::rowCount(const QModelIndex&) const
135{
138{
139+ // Fake the rowCount to be 0 for a while (100ms)
140+ // This emulates menus in real world that don't load immediately
141+ if (m_rowCountStatus == TimerRunning)
142+ return 0;
143+
144+ if (m_rowCountStatus == NoRequestMade) {
145+ UnityMenuModel *that = const_cast<UnityMenuModel*>(this);
146+ that->m_rowCountStatus = TimerRunning;
147+ QTimer::singleShot(100, that, [that] {
148+ that->beginInsertRows(QModelIndex(), 0, that->m_modelData.count() - 1);
149+ that->m_rowCountStatus = TimerFinished;
150+ that->endInsertRows();
151+ });
152+ return 0;
153+ }
154+
136 return m_modelData.count();
155 return m_modelData.count();
137}
156}
138
157
@@ -273,6 +292,11 @@ void UnityMenuModel::activate(int row, const QVariant&)
273 Q_EMIT activated(rd[roleNames()[ActionRole]].toString());
292 Q_EMIT activated(rd[roleNames()[ActionRole]].toString());
274}
293}
275
294
295+void UnityMenuModel::aboutToShow(int index)
296+{
297+ Q_EMIT aboutToShowCalled(index);
298+}
299+
276void UnityMenuModel::changeState(int, const QVariant&)
300void UnityMenuModel::changeState(int, const QVariant&)
277{
301{
278}
302}
tests/mocks/QMenuModel/unitymenumodel.h+9
@@ -73,6 +73,7 @@ public:
73 Q_INVOKABLE QVariant get(int row, const QByteArray &role);
73 Q_INVOKABLE QVariant get(int row, const QByteArray &role);
74
74
75 Q_INVOKABLE void activate(int index, const QVariant& parameter = QVariant());
75 Q_INVOKABLE void activate(int index, const QVariant& parameter = QVariant());
76+ Q_INVOKABLE void aboutToShow(int index);
76 Q_INVOKABLE void changeState(int index, const QVariant& parameter);
77 Q_INVOKABLE void changeState(int index, const QVariant& parameter);
77
78
78 void registerAction(UnityMenuAction* action);
79 void registerAction(UnityMenuAction* action);
@@ -87,6 +88,7 @@ Q_SIGNALS:
87
88
88 // Internal mock usage
89 // Internal mock usage
89 void modelDataChanged();
90 void modelDataChanged();
91+ void aboutToShowCalled(int index);
90
92
91 void activated(const QString& action);
93 void activated(const QString& action);
92
94
@@ -101,6 +103,13 @@ private:
101 QByteArray m_busName;
103 QByteArray m_busName;
102 QVariantMap m_actions;
104 QVariantMap m_actions;
103 QByteArray m_menuObjectPath;
105 QByteArray m_menuObjectPath;
106+
107+ enum RowCountStatus {
108+ NoRequestMade,
109+ TimerRunning,
110+ TimerFinished
111+ };
112+ RowCountStatus m_rowCountStatus;
104};
113};
105
114
106#endif // MOCK_UNITYMENUMODEL_H
115#endif // MOCK_UNITYMENUMODEL_H
tests/mocks/Unity/Application/MirSurface.cpp+4
@@ -127,6 +127,10 @@ QString MirSurface::persistentId() const
127 return m_name+"Id";
127 return m_name+"Id";
128}
128}
129
129
130+QString MirSurface::appId() const
131+{
132+ return m_name+"appId";
133+}
130Mir::Type MirSurface::type() const
134Mir::Type MirSurface::type() const
131{
135{
132 return m_type;
136 return m_type;
tests/mocks/Unity/Application/MirSurface.h+4
@@ -58,6 +58,7 @@ public:
58 QString name() const override;
58 QString name() const override;
59
59
60 QString persistentId() const override;
60 QString persistentId() const override;
61+ QString appId() const override;
61
62
62 QPoint position() const override { return m_position; }
63 QPoint position() const override { return m_position; }
63
64
@@ -92,6 +93,9 @@ public:
92
93
93 bool confinesMousePointer() const override { return false; }
94 bool confinesMousePointer() const override { return false; }
94
95
96+ bool allowClientResize() const override { return true; }
97+ void setAllowClientResize(bool) override {}
98+
95 QPoint requestedPosition() const override { return m_requestedPosition; }
99 QPoint requestedPosition() const override { return m_requestedPosition; }
96 void setRequestedPosition(const QPoint &) override;
100 void setRequestedPosition(const QPoint &) override;
97
101
tests/mocks/Unity/Application/MirSurfaceListModel.cpp+7−7
@@ -1,5 +1,5 @@
1/*
1/*
2− * Copyright (C) 2016 Canonical, Ltd.
2+ * Copyright (C) 2016-2017 Canonical, Ltd.
3 *
3 *
4 * This program is free software; you can redistribute it and/or modify
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
5 * it under the terms of the GNU General Public License as published by
@@ -17,7 +17,7 @@
17#include "MirSurfaceListModel.h"
17#include "MirSurfaceListModel.h"
18#include "ApplicationInfo.h"
18#include "ApplicationInfo.h"
19
19
20−#include "MirSurface.h"
20+#include <unity/shell/application/MirSurfaceInterface.h>
21
21
22#define MIRSURFACELISTMODEL_DEBUG 0
22#define MIRSURFACELISTMODEL_DEBUG 0
23
23
@@ -46,14 +46,14 @@ QVariant MirSurfaceListModel::data(const QModelIndex& index, int role) const
46 return QVariant();
46 return QVariant();
47
47
48 if (role == SurfaceRole) {
48 if (role == SurfaceRole) {
49− MirSurface *surface = m_surfaceList.at(index.row());
49+ MirSurfaceInterface *surface = m_surfaceList.at(index.row());
50 return QVariant::fromValue(static_cast<unity::shell::application::MirSurfaceInterface*>(surface));
50 return QVariant::fromValue(static_cast<unity::shell::application::MirSurfaceInterface*>(surface));
51 } else {
51 } else {
52 return QVariant();
52 return QVariant();
53 }
53 }
54}
54}
55
55
56−void MirSurfaceListModel::raise(MirSurface *surface)
56+void MirSurfaceListModel::raise(MirSurfaceInterface *surface)
57{
57{
58 DEBUG_MSG("(" << surface << ")");
58 DEBUG_MSG("(" << surface << ")");
59 int i = m_surfaceList.indexOf(surface);
59 int i = m_surfaceList.indexOf(surface);
@@ -62,7 +62,7 @@ void MirSurfaceListModel::raise(MirSurface *surface)
62 }
62 }
63}
63}
64
64
65−void MirSurfaceListModel::addSurface(MirSurface *surface)
65+void MirSurfaceListModel::addSurface(MirSurfaceInterface *surface)
66{
66{
67 DEBUG_MSG("(" << surface << ")");
67 DEBUG_MSG("(" << surface << ")");
68 beginInsertRows(QModelIndex(), 0, 0);
68 beginInsertRows(QModelIndex(), 0, 0);
@@ -73,7 +73,7 @@ void MirSurfaceListModel::addSurface(MirSurface *surface)
73 Q_EMIT firstChanged();
73 Q_EMIT firstChanged();
74}
74}
75
75
76−void MirSurfaceListModel::connectSurface(MirSurface *surface)
76+void MirSurfaceListModel::connectSurface(MirSurfaceInterface *surface)
77{
77{
78 connect(surface, &QObject::destroyed, this, [this, surface](){ this->removeSurface(surface); });
78 connect(surface, &QObject::destroyed, this, [this, surface](){ this->removeSurface(surface); });
79 connect(surface, &MirSurfaceInterface::focusedChanged, this, [this, surface](bool surfaceFocused){
79 connect(surface, &MirSurfaceInterface::focusedChanged, this, [this, surface](bool surfaceFocused){
@@ -83,7 +83,7 @@ void MirSurfaceListModel::connectSurface(MirSurface *surface)
83 });
83 });
84}
84}
85
85
86−void MirSurfaceListModel::removeSurface(MirSurface *surface)
86+void MirSurfaceListModel::removeSurface(MirSurfaceInterface *surface)
87{
87{
88 int i = m_surfaceList.indexOf(surface);
88 int i = m_surfaceList.indexOf(surface);
89 if (i != -1) {
89 if (i != -1) {
tests/mocks/Unity/Application/MirSurfaceListModel.h+7−9
@@ -1,5 +1,5 @@
1/*
1/*
2− * Copyright (C) 2016 Canonical, Ltd.
2+ * Copyright (C) 2016-2017 Canonical, Ltd.
3 *
3 *
4 * This program is free software; you can redistribute it and/or modify
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
5 * it under the terms of the GNU General Public License as published by
@@ -23,8 +23,6 @@
23#include <QAbstractListModel>
23#include <QAbstractListModel>
24#include <QList>
24#include <QList>
25
25
26−class MirSurface;
27−
28class MirSurfaceListModel : public unity::shell::application::MirSurfaceListInterface
26class MirSurfaceListModel : public unity::shell::application::MirSurfaceListInterface
29{
27{
30 Q_OBJECT
28 Q_OBJECT
@@ -38,17 +36,17 @@ public:
38 int rowCount(const QModelIndex &parent = QModelIndex()) const override;
36 int rowCount(const QModelIndex &parent = QModelIndex()) const override;
39 QVariant data(const QModelIndex& index, int role) const override;
37 QVariant data(const QModelIndex& index, int role) const override;
40
38
41− void addSurface(MirSurface *surface);
39+ void addSurface(unity::shell::application::MirSurfaceInterface *surface);
42− void removeSurface(MirSurface *surface);
40+ void removeSurface(unity::shell::application::MirSurfaceInterface *surface);
43
41
44− bool contains(MirSurface *surface) const { return m_surfaceList.contains(surface); }
42+ bool contains(unity::shell::application::MirSurfaceInterface *surface) const { return m_surfaceList.contains(surface); }
45
43
46private:
44private:
47− void raise(MirSurface *surface);
45+ void raise(unity::shell::application::MirSurfaceInterface *surface);
48 void moveSurface(int from, int to);
46 void moveSurface(int from, int to);
49− void connectSurface(MirSurface *surface);
47+ void connectSurface(unity::shell::application::MirSurfaceInterface *surface);
50
48
51− QList<MirSurface*> m_surfaceList;
49+ QList<unity::shell::application::MirSurfaceInterface*> m_surfaceList;
52};
50};
53
51
54Q_DECLARE_METATYPE(MirSurfaceListModel*)
52Q_DECLARE_METATYPE(MirSurfaceListModel*)
tests/mocks/Unity/Launcher/MockLauncherModel.h+1−1
@@ -28,7 +28,7 @@ using namespace unity::shell::launcher;
28
28
29class MockLauncherModel: public LauncherModelInterface
29class MockLauncherModel: public LauncherModelInterface
30{
30{
31− Q_OBJECT
31+ Q_OBJECT
32
32
33public:
33public:
34 MockLauncherModel(QObject* parent = 0);
34 MockLauncherModel(QObject* parent = 0);
tests/mocks/Unity/Launcher/MockQuickListModel.cpp+3−1
@@ -39,6 +39,8 @@ QVariant MockQuickListModel::data(const QModelIndex &index, int role) const
39 return index.row() == 1 ? false : true;
39 return index.row() == 1 ? false : true;
40 case RoleHasSeparator:
40 case RoleHasSeparator:
41 return index.row() <= 1 ? true : false;
41 return index.row() <= 1 ? true : false;
42+ case RoleIsPrivate:
43+ return index.row() == 4 ? true : false;
42 }
44 }
43 return QVariant();
45 return QVariant();
44}
46}
@@ -46,5 +48,5 @@ QVariant MockQuickListModel::data(const QModelIndex &index, int role) const
46int MockQuickListModel::rowCount(const QModelIndex &parent) const
48int MockQuickListModel::rowCount(const QModelIndex &parent) const
47{
49{
48 Q_UNUSED(parent)
50 Q_UNUSED(parent)
49− return 4;
51+ return 5;
50}
52}
tests/mocks/Unity/Launcher/MockQuickListModel.h+2
@@ -27,6 +27,8 @@ using namespace unity::shell::launcher;
27class MockQuickListModel: public QuickListModelInterface
27class MockQuickListModel: public QuickListModelInterface
28{
28{
29 Q_OBJECT
29 Q_OBJECT
30+ Q_PROPERTY(int count READ rowCount)
31+
30public:
32public:
31 MockQuickListModel(QObject *parent = 0);
33 MockQuickListModel(QObject *parent = 0);
32
34
tests/mocks/Utils/CMakeLists.txt+2
@@ -27,6 +27,7 @@ set(QMLPLUGIN_SRC
27 ${CMAKE_SOURCE_DIR}/plugins/Utils/appdrawerproxymodel.cpp
27 ${CMAKE_SOURCE_DIR}/plugins/Utils/appdrawerproxymodel.cpp
28 ${CMAKE_SOURCE_DIR}/plugins/Utils/tabfocusfence.cpp
28 ${CMAKE_SOURCE_DIR}/plugins/Utils/tabfocusfence.cpp
29 ${CMAKE_SOURCE_DIR}/plugins/Utils/expressionfiltermodel.cpp
29 ${CMAKE_SOURCE_DIR}/plugins/Utils/expressionfiltermodel.cpp
30+ ${CMAKE_SOURCE_DIR}/plugins/Utils/quicklistproxymodel.cpp
30 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationManagerInterface.h
31 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationManagerInterface.h
31 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationInfoInterface.h
32 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationInfoInterface.h
32 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirSurfaceInterface.h
33 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirSurfaceInterface.h
@@ -35,6 +36,7 @@ set(QMLPLUGIN_SRC
35 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/AppDrawerModelInterface.h
36 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/AppDrawerModelInterface.h
36 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherModelInterface.h
37 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherModelInterface.h
37 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherItemInterface.h
38 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherItemInterface.h
39+ ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/QuickListModelInterface.h
38 constants.cpp
40 constants.cpp
39 plugin.cpp
41 plugin.cpp
40 windowstatestorage.cpp
42 windowstatestorage.cpp
tests/mocks/Utils/plugin.cpp+2
@@ -43,6 +43,7 @@
43#include <appdrawerproxymodel.h>
43#include <appdrawerproxymodel.h>
44#include <tabfocusfence.h>
44#include <tabfocusfence.h>
45#include <expressionfiltermodel.h>
45#include <expressionfiltermodel.h>
46+#include <quicklistproxymodel.h>
46
47
47static QObject *createWindowStateStorage(QQmlEngine *engine, QJSEngine *scriptEngine)
48static QObject *createWindowStateStorage(QQmlEngine *engine, QJSEngine *scriptEngine)
48{
49{
@@ -88,4 +89,5 @@ void FakeUtilsPlugin::registerTypes(const char *uri)
88 qmlRegisterType<AppDrawerProxyModel>(uri, 0, 1, "AppDrawerProxyModel");
89 qmlRegisterType<AppDrawerProxyModel>(uri, 0, 1, "AppDrawerProxyModel");
89 qmlRegisterType<TabFocusFenceItem>(uri, 0, 1, "TabFocusFence");
90 qmlRegisterType<TabFocusFenceItem>(uri, 0, 1, "TabFocusFence");
90 qmlRegisterType<ExpressionFilterModel>(uri, 0, 1, "ExpressionFilterModel");
91 qmlRegisterType<ExpressionFilterModel>(uri, 0, 1, "ExpressionFilterModel");
92+ qmlRegisterType<QuickListProxyModel>(uri, 0, 1, "QuickListProxyModel");
91}
93}
tests/plugins/CMakeLists.txt+1
@@ -9,4 +9,5 @@ add_subdirectory(SessionBroadcast)
9add_subdirectory(Ubuntu)
9add_subdirectory(Ubuntu)
10add_subdirectory(Unity)
10add_subdirectory(Unity)
11add_subdirectory(Utils)
11add_subdirectory(Utils)
12+add_subdirectory(WindowManager)
12add_subdirectory(Wizard)
13add_subdirectory(Wizard)
tests/plugins/Unity/Launcher/CMakeLists.txt+3
@@ -34,6 +34,9 @@ add_executable(launchermodeltestExec
34 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherModelInterface.h
34 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/LauncherModelInterface.h
35 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/QuickListModelInterface.h
35 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/launcher/QuickListModelInterface.h
36 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationManagerInterface.h
36 ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationManagerInterface.h
37+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirSurfaceListInterface.h
38+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirSurfaceInterface.h
39+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/Mir.h
37 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/application/ApplicationInfoInterface.h
40 ${LAUNCHER_API_INCLUDEDIR}/unity/shell/application/ApplicationInfoInterface.h
38 )
41 )
39target_link_libraries(launchermodeltestExec
42target_link_libraries(launchermodeltestExec
tests/plugins/Unity/Launcher/launchermodeltest.cpp+85−7
@@ -1,5 +1,5 @@
1/*
1/*
2− * Copyright 2013-2016 Canonical Ltd.
2+ * Copyright 2013-2017 Canonical Ltd.
3 *
3 *
4 * This program is free software; you can redistribute it and/or modify
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
5 * it under the terms of the GNU Lesser General Public License as published by
@@ -17,6 +17,7 @@
17// unity-api
17// unity-api
18#include <unity/shell/launcher/LauncherModelInterface.h>
18#include <unity/shell/launcher/LauncherModelInterface.h>
19#include <unity/shell/application/ApplicationInfoInterface.h>
19#include <unity/shell/application/ApplicationInfoInterface.h>
20+#include <unity/shell/application/MirSurfaceListInterface.h>
20
21
21#include "launcheritem.h"
22#include "launcheritem.h"
22#include "launchermodel.h"
23#include "launchermodel.h"
@@ -37,11 +38,76 @@
37namespace unityapi = unity::shell::application;
38namespace unityapi = unity::shell::application;
38
39
39// This is a mock, specifically to test the LauncherModel
40// This is a mock, specifically to test the LauncherModel
41+class MockSurface: public unity::shell::application::MirSurfaceInterface
42+{
43+ Q_OBJECT
44+public:
45+ MockSurface(const QString &id, const QString &appId, QObject* parent): unityapi::MirSurfaceInterface(parent), m_id(id), m_appId(appId) {}
46+ Mir::Type type() const override { return Mir::NormalType;}
47+ QString name() const override { return QStringLiteral("mock surface"); }
48+ QString persistentId() const override { return m_id; }
49+ QString appId() const override { return m_appId; }
50+ QPoint position() const override { return QPoint(); }
51+ QSize size() const override { return QSize(); }
52+ void resize(const QSize &size) override { Q_UNUSED(size) }
53+ void resize(int width, int height) override { Q_UNUSED(width); Q_UNUSED(height) }
54+ Mir::State state() const override { return Mir::RestoredState; }
55+ bool live() const override { return true; }
56+ bool visible() const override { return true; }
57+ Mir::OrientationAngle orientationAngle() const override { return Mir::Angle0; }
58+ void setOrientationAngle(Mir::OrientationAngle angle) override { Q_UNUSED(angle); }
59+ int minimumWidth() const override { return 0; }
60+ int minimumHeight() const override { return 0; }
61+ int maximumWidth() const override { return 0; }
62+ int maximumHeight() const override { return 0; }
63+ int widthIncrement() const override { return 0; }
64+ int heightIncrement() const override { return 0; }
65+ void setKeymap(const QString &) override {}
66+ Mir::ShellChrome shellChrome() const override { return Mir::NormalChrome; }
67+ QString keymap() const override { return QStringLiteral("de_DE"); }
68+ bool focused() const override { return true; }
69+ QRect inputBounds() const override { return QRect(); }
70+ bool confinesMousePointer() const override { return false; }
71+ bool allowClientResize() const override { return true; }
72+ void setAllowClientResize(bool) override {}
73+ QPoint requestedPosition() const override { return QPoint(); }
74+ void setRequestedPosition(const QPoint &) override {}
75+ MirSurfaceInterface* parentSurface() const override { return nullptr; }
76+ MirSurfaceListInterface* childSurfaceList() const override { return nullptr; }
77+ void close() override {}
78+ void activate() override {}
79+ void requestState(Mir::State) override {}
80+
81+private:
82+ QString m_id;
83+ QString m_appId;
84+};
85+
86+class MockSurfaceList: public unity::shell::application::MirSurfaceListInterface
87+{
88+ Q_OBJECT
89+public:
90+ MockSurfaceList(QObject *parent): unityapi::MirSurfaceListInterface(parent) {}
91+ int rowCount(const QModelIndex & = QModelIndex()) const override { return m_list.count(); }
92+ QVariant data(const QModelIndex &, int) const override { return QVariant(); }
93+ Q_INVOKABLE MirSurfaceInterface* get(int index) override { return m_list.at(index); }
94+ void append(MirSurfaceInterface* surface) {
95+ beginInsertRows(QModelIndex(), m_list.count(), m_list.count());
96+ m_list.append(surface);
97+ endInsertRows();
98+ }
99+private:
100+ QList<MirSurfaceInterface*> m_list;
101+
102+};
103+
40class MockApp: public unity::shell::application::ApplicationInfoInterface
104class MockApp: public unity::shell::application::ApplicationInfoInterface
41{
105{
42 Q_OBJECT
106 Q_OBJECT
43public:
107public:
44− MockApp(const QString &appId, QObject *parent = 0): ApplicationInfoInterface(appId, parent), m_appId(appId), m_focused(false) { }
108+ MockApp(const QString &appId, QObject *parent = 0): ApplicationInfoInterface(appId, parent), m_appId(appId), m_focused(false) {
109+ m_surfaces = new MockSurfaceList(this);
110+ }
45
111
46 RequestedState requestedState() const override { return RequestedRunning; }
112 RequestedState requestedState() const override { return RequestedRunning; }
47 void setRequestedState(RequestedState) override {}
113 void setRequestedState(RequestedState) override {}
@@ -64,10 +130,10 @@ public:
64 void setExemptFromLifecycle(bool) override {}
130 void setExemptFromLifecycle(bool) override {}
65 QSize initialSurfaceSize() const override { return QSize(); }
131 QSize initialSurfaceSize() const override { return QSize(); }
66 void setInitialSurfaceSize(const QSize &) override {}
132 void setInitialSurfaceSize(const QSize &) override {}
67− MirSurfaceListInterface* surfaceList() const override { return nullptr; }
133+ MirSurfaceListInterface* surfaceList() const override { return m_surfaces; }
68 MirSurfaceListInterface* promptSurfaceList() const override { return nullptr; }
134 MirSurfaceListInterface* promptSurfaceList() const override { return nullptr; }
69− int surfaceCount() const override { return m_surfaceCount; }
135+ int surfaceCount() const override { return m_surfaces->count(); }
70− void setSurfaceCount(int count) { m_surfaceCount = count; Q_EMIT surfaceCountChanged(count); }
136+ void setSurfaces(MockSurfaceList* surfaces) { m_surfaces = surfaces; Q_EMIT surfaceCountChanged(m_surfaces->count()); }
71 void close() override {}
137 void close() override {}
72
138
73 // Methods used for mocking (not in the interface)
139 // Methods used for mocking (not in the interface)
@@ -75,7 +141,7 @@ public:
75private:
141private:
76 QString m_appId;
142 QString m_appId;
77 bool m_focused;
143 bool m_focused;
78− int m_surfaceCount = 0;
144+ MockSurfaceList *m_surfaces;
79};
145};
80
146
81// This is a mock, specifically to test the LauncherModel
147// This is a mock, specifically to test the LauncherModel
@@ -748,8 +814,20 @@ private Q_SLOTS:
748
814
749 QCOMPARE(launcherModel->get(0)->surfaceCount(), 0);
815 QCOMPARE(launcherModel->get(0)->surfaceCount(), 0);
750 MockApp *app = qobject_cast<MockApp*>(appManager->findApplication(appId));
816 MockApp *app = qobject_cast<MockApp*>(appManager->findApplication(appId));
751− app->setSurfaceCount(1);
817+ MockSurfaceList* surfaces = new MockSurfaceList(appManager);
818+ surfaces->append(new MockSurface("foobar", "foobar", surfaces));
819+ app->setSurfaces(surfaces);
752 QCOMPARE(launcherModel->get(0)->surfaceCount(), 1);
820 QCOMPARE(launcherModel->get(0)->surfaceCount(), 1);
821+
822+ // Make sure the new surface appears in the quicklist
823+ QuickListModel *quickList = qobject_cast<QuickListModel*>(launcherModel->get(0)->quickList());
824+ bool found = false;
825+ for (int i = 0; i < quickList->rowCount(); ++i) {
826+ if (quickList->get(i).actionId() == "surface_foobar") {
827+ found = true;
828+ }
829+ }
830+ QCOMPARE(found, true);
753 }
831 }
754};
832};
755
833
tests/plugins/Unity/Session/CMakeLists.txt+13−1
@@ -33,6 +33,17 @@ install(TARGETS LightDMServer
33 DESTINATION "${SHELL_PRIVATE_LIBDIR}/tests/plugins/Unity/Session"
33 DESTINATION "${SHELL_PRIVATE_LIBDIR}/tests/plugins/Unity/Session"
34 )
34 )
35
35
36+### Preload
37+add_library(SessionBackendTestPreload SHARED
38+ preload.c
39+)
40+target_link_libraries(SessionBackendTestPreload
41+ ${GLIB_LIBRARIES}
42+ )
43+install(TARGETS SessionBackendTestPreload
44+ DESTINATION "${SHELL_PRIVATE_LIBDIR}/tests/plugins/Unity/Session"
45+ )
46+
36### SessionBackendTest
47### SessionBackendTest
37add_executable(sessionbackendtestExec
48add_executable(sessionbackendtestExec
38 sessionbackendtest.cpp
49 sessionbackendtest.cpp
@@ -48,7 +59,8 @@ install(TARGETS sessionbackendtestExec
48)
59)
49
60
50add_unity8_unittest(SessionBackend dbus-test-runner
61add_unity8_unittest(SessionBackend dbus-test-runner
62+ ENVIRONMENT LD_PRELOAD=$<TARGET_FILE:SessionBackendTestPreload>
51− ENVIRONMENT XDG_SESSION_PATH=/session
63+ XDG_SESSION_PATH=/session
52 ARG_PREFIX "--parameter"
64 ARG_PREFIX "--parameter"
53 ARGS
65 ARGS
54 --task $<TARGET_FILE:LightDMServer>
66 --task $<TARGET_FILE:LightDMServer>
tests/plugins/Unity/Session/LogindServer.cpp+10
@@ -27,6 +27,16 @@ QDBusObjectPath LogindServer::GetSessionByPID(quint32)
27 return QDBusObjectPath("/logindsession");
27 return QDBusObjectPath("/logindsession");
28}
28}
29
29
30+void LogindServer::Reboot(bool interactive)
31+{
32+ Q_EMIT RebootCalled(interactive);
33+}
34+
35+void LogindServer::PowerOff(bool interactive)
36+{
37+ Q_EMIT PowerOffCalled(interactive);
38+}
39+
30void LogindServer::MockEmitUnlock()
40void LogindServer::MockEmitUnlock()
31{
41{
32 Q_EMIT Unlock();
42 Q_EMIT Unlock();
tests/plugins/Unity/Session/LogindServer.h+5
@@ -31,6 +31,8 @@ public:
31
31
32public Q_SLOTS:
32public Q_SLOTS:
33 QDBusObjectPath GetSessionByPID(quint32 pid);
33 QDBusObjectPath GetSessionByPID(quint32 pid);
34+ void Reboot(bool interactive);
35+ void PowerOff(bool interactive);
34
36
35 void MockEmitUnlock(); // only in mock
37 void MockEmitUnlock(); // only in mock
36
38
@@ -38,6 +40,9 @@ Q_SIGNALS:
38 void Lock();
40 void Lock();
39 void Unlock();
41 void Unlock();
40 void PrepareForSleep();
42 void PrepareForSleep();
43+
44+ void RebootCalled(bool interactive); // only in mock
45+ void PowerOffCalled(bool interactive); // only in mock
41};
46};
42
47
43#endif
48#endif
tests/plugins/Unity/Session/interfaces.xml+12
@@ -7,6 +7,18 @@
7 <arg name="pid" type="u" direction="in" />
7 <arg name="pid" type="u" direction="in" />
8 <arg name="session" type="o" direction="out" />
8 <arg name="session" type="o" direction="out" />
9 </method>
9 </method>
10+ <method name="Reboot">
11+ <arg name="interactive" type="b" direction="in" />
12+ </method>
13+ <method name="PowerOff">
14+ <arg name="interactive" type="b" direction="in" />
15+ </method>
16+ <signal name="RebootCalled">
17+ <arg name="interactive" type="b" direction="out" />
18+ </signal>
19+ <signal name="PowerOffCalled">
20+ <arg name="interactive" type="b" direction="out" />
21+ </signal>
10 <signal name="PrepareForSleep" />
22 <signal name="PrepareForSleep" />
11 </interface>
23 </interface>
12 <interface name="org.freedesktop.login1.Session">
24 <interface name="org.freedesktop.login1.Session">
tests/plugins/Unity/Session/preload.cnew file+43
@@ -0,0 +1,43 @@
1+/*
2+ * Copyright © 2017 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 version 3 as
6+ * published by the Free Software Foundation.
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+
18+#include <glib.h>
19+#include <grp.h>
20+#include <stdlib.h>
21+
22+const gchar *g_get_user_name(void)
23+{
24+ // The normal glib version parses pwent entries
25+ return g_getenv("TEST_USER");
26+}
27+
28+struct group *getgrnam(const char *group_name)
29+{
30+ static struct group rv = {NULL, NULL, 0, NULL};
31+
32+ g_free(rv.gr_name);
33+ g_strfreev(rv.gr_mem);
34+
35+ rv.gr_name = g_strdup(group_name);
36+ rv.gr_passwd = NULL;
37+ rv.gr_gid = 9999;
38+ rv.gr_mem = NULL;
39+ if (g_strcmp0(group_name, "nopasswdlogin") == 0) {
40+ rv.gr_mem = g_strsplit(g_getenv("TEST_NOPASSWD_USERS"), ",", 0);
41+ }
42+ return &rv;
43+}
tests/plugins/Unity/Session/sessionbackendtest.cpp+130−11
@@ -53,6 +53,11 @@ private Q_SLOTS:
53 QDBusConnection::sessionBus());
53 QDBusConnection::sessionBus());
54 }
54 }
55
55
56+ void init() {
57+ qputenv("TEST_USER", "testuser");
58+ qputenv("TEST_NOPASSWD_USERS", "");
59+ }
60+
56 void testUnitySessionLogoutRequested_data() {
61 void testUnitySessionLogoutRequested_data() {
57 QTest::addColumn<QString>("method");
62 QTest::addColumn<QString>("method");
58 QTest::addColumn<QString>("signal");
63 QTest::addColumn<QString>("signal");
@@ -81,7 +86,99 @@ private Q_SLOTS:
81 QTRY_COMPARE(spy.count(), 1);
86 QTRY_COMPARE(spy.count(), 1);
82 }
87 }
83
88
84− void testGnomeSessionWrapper_data() {
89+ void testGnomeSessionWrapperWithoutConfirmation_data() {
90+ QTest::addColumn<QString>("method");
91+ QTest::addColumn<QString>("signal");
92+
93+ QTest::newRow("Reboot") << "RequestReboot" << SIGNAL(RebootCalled(bool));
94+ QTest::newRow("Shutdown") << "RequestShutdown" << SIGNAL(PowerOffCalled(bool));
95+ }
96+
97+ void testGnomeSessionWrapperWithoutConfirmation() {
98+ QFETCH(QString, method);
99+ QFETCH(QString, signal);
100+
101+ DBusUnitySessionService dbusUnitySessionService;
102+ DBusGnomeSessionManagerWrapper dbusGnomeSessionManagerWrapper;
103+ QCoreApplication::processEvents(); // to let the services register on DBus
104+
105+ QDBusInterface login1Interface("org.freedesktop.login1",
106+ "/logindsession",
107+ "org.freedesktop.login1.Manager");
108+ QSignalSpy spy(&login1Interface, signal.toUtf8().data());
109+
110+ QDBusInterface dbusGnomeSessionWrapper("org.gnome.SessionManager",
111+ "/org/gnome/SessionManager",
112+ "org.gnome.SessionManager",
113+ QDBusConnection::sessionBus());
114+ QVERIFY(dbusGnomeSessionWrapper.isValid());
115+
116+ QDBusReply<void> reply = dbusGnomeSessionWrapper.call(method);
117+ QVERIFY(reply.isValid());
118+ QTRY_COMPARE(spy.count(), 1);
119+ }
120+
121+ void testGnomeSessionWrapperWithConfirmation_data() {
122+ QTest::addColumn<QString>("method");
123+ QTest::addColumn<QString>("signal");
124+
125+ QTest::newRow("Reboot") << "Reboot" << SIGNAL(RebootRequested(bool));
126+ QTest::newRow("Shutdown") << "Shutdown" << SIGNAL(ShutdownRequested(bool));
127+ }
128+
129+ void testGnomeSessionWrapperWithConfirmation() {
130+ QFETCH(QString, method);
131+ QFETCH(QString, signal);
132+
133+ DBusUnitySessionService dbusUnitySessionService;
134+ DBusGnomeSessionManagerWrapper dbusGnomeSessionManagerWrapper;
135+ QCoreApplication::processEvents(); // to let the services register on DBus
136+
137+ QSignalSpy spy(&dbusUnitySessionService, signal.toUtf8().data());
138+
139+ QDBusInterface dbusGnomeSessionWrapper("org.gnome.SessionManager",
140+ "/org/gnome/SessionManager",
141+ "org.gnome.SessionManager",
142+ QDBusConnection::sessionBus());
143+ QVERIFY(dbusGnomeSessionWrapper.isValid());
144+
145+ QDBusReply<void> reply = dbusGnomeSessionWrapper.call(method);
146+ QVERIFY(reply.isValid());
147+ QCOMPARE(spy.count(), 1);
148+ }
149+
150+ void testGnomeSessionWrapperLogout_data() {
151+ QTest::addColumn<int>("mode");
152+ QTest::addColumn<QString>("signal");
153+
154+ QTest::newRow("Logout") << 0 << SIGNAL(LogoutRequested(bool));
155+ QTest::newRow("LogoutNoDialog") << 1 << SIGNAL(LogoutReady());
156+ QTest::newRow("LogoutNoInhibits") << 2 << SIGNAL(LogoutReady());
157+ QTest::newRow("LogoutNoDialogNoInhibits") << 3 << SIGNAL(LogoutReady());
158+ }
159+
160+ void testGnomeSessionWrapperLogout() {
161+ QFETCH(int, mode);
162+ QFETCH(QString, signal);
163+
164+ DBusUnitySessionService dbusUnitySessionService;
165+ DBusGnomeSessionManagerWrapper dbusGnomeSessionManagerWrapper;
166+ QCoreApplication::processEvents(); // to let the services register on DBus
167+
168+ QSignalSpy spy(&dbusUnitySessionService, signal.toUtf8().data());
169+
170+ QDBusInterface dbusGnomeSessionWrapper("org.gnome.SessionManager",
171+ "/org/gnome/SessionManager",
172+ "org.gnome.SessionManager",
173+ QDBusConnection::sessionBus());
174+ QVERIFY(dbusGnomeSessionWrapper.isValid());
175+
176+ QDBusReply<void> reply = dbusGnomeSessionWrapper.call("Logout", (quint32)mode);
177+ QVERIFY(reply.isValid());
178+ QCOMPARE(spy.count(), 1);
179+ }
180+
181+ void testGnomeSessionDialogWrapper_data() {
85 QTest::addColumn<uint>("method");
182 QTest::addColumn<uint>("method");
86 QTest::addColumn<QString>("signal");
183 QTest::addColumn<QString>("signal");
87
184
@@ -90,7 +187,7 @@ private Q_SLOTS:
90 QTest::newRow("Reboot") << (uint)Action::REBOOT << "RebootRequested(bool)";
187 QTest::newRow("Reboot") << (uint)Action::REBOOT << "RebootRequested(bool)";
91 }
188 }
92
189
93− void testGnomeSessionWrapper() {
190+ void testGnomeSessionDialogWrapper() {
94 QFETCH(uint, method);
191 QFETCH(uint, method);
95 QFETCH(QString, signal);
192 QFETCH(QString, signal);
96
193
@@ -102,7 +199,7 @@ private Q_SLOTS:
102 // .. because QSignalSpy checks the signal signature like this: "if (((aSignal[0] - '0') & 0x03) != QSIGNAL_CODE)"
199 // .. because QSignalSpy checks the signal signature like this: "if (((aSignal[0] - '0') & 0x03) != QSIGNAL_CODE)"
103 QSignalSpy spy(&dbusUnitySessionService, qPrintable(signal.prepend(QSIGNAL_CODE)));
200 QSignalSpy spy(&dbusUnitySessionService, qPrintable(signal.prepend(QSIGNAL_CODE)));
104
201
105− DBusGnomeSessionManagerWrapper dbusGnomeSessionManagerWrapper;
202+ DBusGnomeSessionManagerDialogWrapper dbusGnomeSessionManagerDialogWrapper;
106 QCoreApplication::processEvents(); // to let the service register on DBus
203 QCoreApplication::processEvents(); // to let the service register on DBus
107
204
108 QDBusInterface dbusGnomeSessionWrapper("com.canonical.Unity",
205 QDBusInterface dbusGnomeSessionWrapper("com.canonical.Unity",
@@ -138,14 +235,7 @@ private Q_SLOTS:
138
235
139 void testUserName() {
236 void testUserName() {
140 DBusUnitySessionService dbusUnitySessionService;
237 DBusUnitySessionService dbusUnitySessionService;
141− QCoreApplication::processEvents(); // to let the service register on DBus
142−
143− QProcess * proc = new QProcess(this);
144− proc->start("id -un", QProcess::ReadOnly);
145− proc->waitForFinished();
146− const QByteArray out = proc->readAll().trimmed();
147−
148− QCOMPARE(dbusUnitySessionService.UserName(), QString::fromUtf8(out));
238+ QCOMPARE(dbusUnitySessionService.UserName(), QString("testuser"));
149 }
239 }
150
240
151 void testRealName() {
241 void testRealName() {
@@ -162,6 +252,35 @@ private Q_SLOTS:
162 }
252 }
163 }
253 }
164
254
255+ void testCanLock() {
256+ DBusUnitySessionService dbusUnitySessionService;
257+
258+ qputenv("TEST_USER", "testuser");
259+ QVERIFY(dbusUnitySessionService.CanLock());
260+
261+ qputenv("TEST_USER", "guest-abcdef"); // guest-* can't lock
262+ QVERIFY(!dbusUnitySessionService.CanLock());
263+
264+ qputenv("TEST_USER", "testuser");
265+ qputenv("TEST_NOPASSWD_USERS", "testuser"); // nopasswdlogin can't lock
266+ QVERIFY(!dbusUnitySessionService.CanLock());
267+ }
268+
269+ void testPromptLockRespectsCanLock() {
270+ DBusUnitySessionService dbusUnitySessionService;
271+
272+ QSignalSpy spy(&dbusUnitySessionService, SIGNAL(lockRequested()));
273+ QVERIFY(dbusUnitySessionService.CanLock());
274+ dbusUnitySessionService.PromptLock();
275+ QCOMPARE(spy.count(), 1);
276+
277+ spy.clear();
278+ qputenv("TEST_USER", "guest-abcdef");
279+ QVERIFY(!dbusUnitySessionService.CanLock());
280+ dbusUnitySessionService.PromptLock();
281+ QCOMPARE(spy.count(), 0);
282+ }
283+
165private:
284private:
166 QDBusInterface *dbusUnitySession;
285 QDBusInterface *dbusUnitySession;
167};
286};
tests/plugins/WindowManager/CMakeLists.txtnew file+34
@@ -0,0 +1,34 @@
1+include_directories(
2+ ${CMAKE_SOURCE_DIR}/plugins/WindowManager
3+ ${CMAKE_CURRENT_BINARY_DIR}
4+ ${CMAKE_SOURCE_DIR}/tests/mocks
5+ )
6+
7+add_executable(TopLevelWindowModelTestExec
8+ tst_TopLevelWindowModel.cpp
9+ UnityApplicationMocks.h
10+
11+ ${CMAKE_SOURCE_DIR}/tests/mocks/Unity/Application/MirSurfaceListModel.cpp
12+
13+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationInfoInterface.h
14+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/ApplicationManagerInterface.h
15+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/Mir.h
16+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirSurfaceInterface.h
17+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/MirSurfaceListInterface.h
18+ ${APPLICATION_API_INCLUDEDIR}/unity/shell/application/SurfaceManagerInterface.h
19+ )
20+qt5_use_modules(TopLevelWindowModelTestExec Test Core Gui Qml Quick)
21+
22+target_link_libraries(TopLevelWindowModelTestExec windowmanager-qml)
23+
24+install(TARGETS TopLevelWindowModelTestExec
25+ DESTINATION "${SHELL_PRIVATE_LIBDIR}/tests/plugins/WindowManager"
26+)
27+
28+# To find libwindowmanager-qml.so
29+set_target_properties(TopLevelWindowModelTestExec PROPERTIES
30+ INSTALL_RPATH "${CMAKE_INSTALL_PREFIX}/${SHELL_PRIVATE_LIBDIR}")
31+
32+add_unity8_unittest(TopLevelWindowModel TopLevelWindowModelTestExec
33+ ENVIRONMENT LD_LIBRARY_PATH=${UNITY_PLUGINPATH}/WindowManager
34+)
tests/plugins/WindowManager/UnityApplicationMocks.hnew file+203
@@ -0,0 +1,203 @@
1+/*
2+ * Copyright (C) 2017 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 UNITYAPPLICATIONMOCKS_H
18+#define UNITYAPPLICATIONMOCKS_H
19+
20+#include <unity/shell/application/ApplicationInfoInterface.h>
21+#include <unity/shell/application/ApplicationManagerInterface.h>
22+#include <unity/shell/application/MirSurfaceInterface.h>
23+#include <unity/shell/application/SurfaceManagerInterface.h>
24+
25+// from tests/mocks
26+#include <Unity/Application/MirSurfaceListModel.h>
27+
28+using namespace unity::shell::application;
29+
30+class MirSurface : public MirSurfaceInterface
31+{
32+ Q_OBJECT
33+public:
34+ Mir::Type type() const override { return m_type; }
35+ QString name() const override { return QString("foo"); }
36+ QString persistentId() const override { return QString("a-b-c-my-id"); }
37+ QString appId() const override { return QString(); }
38+ QPoint position() const override { return QPoint(); }
39+ QSize size() const override { return QSize(); }
40+ void resize(int, int) override {}
41+ void resize(const QSize &) override {}
42+ Mir::State state() const override { return m_state; }
43+ bool live() const override { return m_live; }
44+ bool visible() const override { return true; }
45+ Mir::OrientationAngle orientationAngle() const override { return Mir::Angle0; }
46+ void setOrientationAngle(Mir::OrientationAngle) override {}
47+
48+ int minimumWidth() const override { return 0; }
49+ int minimumHeight() const override { return 0; }
50+ int maximumWidth() const override { return 0; }
51+ int maximumHeight() const override { return 0; }
52+ int widthIncrement() const override { return 0; }
53+ int heightIncrement() const override { return 0; }
54+
55+ void setKeymap(const QString &) override {}
56+ QString keymap() const override { return QString(); }
57+ Mir::ShellChrome shellChrome() const override { return Mir::NormalChrome; }
58+ bool focused() const override { return true; }
59+ QRect inputBounds() const override { return QRect(); }
60+ bool confinesMousePointer() const override { return false; }
61+ bool allowClientResize() const override { return true; }
62+ void setAllowClientResize(bool) override {}
63+ QPoint requestedPosition() const override { return QPoint(); }
64+ void setRequestedPosition(const QPoint &) override {}
65+ MirSurfaceInterface* parentSurface() const override { return nullptr; }
66+ unity::shell::application::MirSurfaceListInterface* childSurfaceList() const override { return nullptr; }
67+ void close() override {}
68+ void activate() override {}
69+
70+public Q_SLOTS:
71+ void requestState(Mir::State value) override
72+ {
73+ if (m_state != value) {
74+ m_state = value;
75+ Q_EMIT stateChanged(m_state);
76+ }
77+ }
78+
79+public:
80+ Mir::Type m_type { Mir::NormalType };
81+ Mir::State m_state { Mir::RestoredState };
82+ bool m_live { true };
83+};
84+
85+class SurfaceManager : public SurfaceManagerInterface
86+{
87+ Q_OBJECT
88+
89+public:
90+ void raise(MirSurfaceInterface *) override {}
91+ void activate(MirSurfaceInterface *) override {}
92+};
93+
94+class Application : public ApplicationInfoInterface
95+{
96+ Q_OBJECT
97+public:
98+ Application(QString appId) : ApplicationInfoInterface(appId, nullptr), m_appId(std::move(appId)) {}
99+
100+ void close() override {}
101+ QString appId() const override { return m_appId;}
102+ QString name() const override { return "foo"; }
103+ QString comment() const override { return "bar"; }
104+ QUrl icon() const override { return QUrl(); }
105+ State state() const override { return m_state; }
106+ RequestedState requestedState() const override { return m_requestedState; }
107+ void setRequestedState(RequestedState value) override
108+ {
109+ if (value != m_requestedState) {
110+ m_requestedState = value;
111+ Q_EMIT requestedStateChanged(value);
112+ }
113+ }
114+ bool focused() const override { return false; }
115+ QString splashTitle() const override { return QString(); }
116+ QUrl splashImage() const override { return QUrl(); }
117+ bool splashShowHeader() const override { return false; }
118+ QColor splashColor() const override { return QColor(); }
119+ QColor splashColorHeader() const override { return QColor(); }
120+ QColor splashColorFooter() const override { return QColor(); }
121+ Qt::ScreenOrientations supportedOrientations() const override { return Qt::LandscapeOrientation; }
122+ bool rotatesWindowContents() const override { return false; }
123+ bool isTouchApp() const override { return false; }
124+ bool exemptFromLifecycle() const override { return false; }
125+ void setExemptFromLifecycle(bool) override {}
126+ QSize initialSurfaceSize() const override { return QSize(); }
127+ void setInitialSurfaceSize(const QSize &) override {}
128+ MirSurfaceListInterface* surfaceList() const override { return &m_surfaceList; }
129+ MirSurfaceListInterface* promptSurfaceList() const override { return nullptr; }
130+ int surfaceCount() const override { return 0; }
131+
132+ QString m_appId;
133+ State m_state;
134+ RequestedState m_requestedState;
135+ mutable MirSurfaceListModel m_surfaceList;
136+};
137+
138+class ApplicationManager : public ApplicationManagerInterface
139+{
140+ Q_OBJECT
141+
142+public:
143+
144+ int rowCount(const QModelIndex &) const override
145+ {
146+ return m_applications.count();
147+ }
148+
149+ QVariant data(const QModelIndex &/*index*/, int /*role*/) const override
150+ {
151+ return QVariant();
152+ }
153+
154+ QString focusedApplicationId() const override {return QString();}
155+
156+ ApplicationInfoInterface *get(int index) const override
157+ {
158+ return m_applications[index];
159+ }
160+
161+ ApplicationInfoInterface *findApplication(const QString &appId) const override
162+ {
163+ Q_UNUSED(appId);
164+ return nullptr;
165+ }
166+
167+ ApplicationInfoInterface *findApplicationWithSurface(MirSurfaceInterface* surface) const override
168+ {
169+ for (int i = 0; i < m_applications.count(); ++i) {
170+ if (m_applications[i]->m_surfaceList.contains(surface)) {
171+ return m_applications[i];
172+ }
173+ }
174+ return nullptr;
175+ }
176+
177+ bool requestFocusApplication(const QString &appId) override
178+ {
179+ Q_UNUSED(appId);
180+ return false;
181+ }
182+
183+ ApplicationInfoInterface *startApplication(const QString &appId, const QStringList &/*arguments*/) override
184+ {
185+ Application *application = new Application(appId);
186+ prepend(application);
187+ return application;
188+ }
189+
190+ bool stopApplication(const QString &) override { return true; }
191+
192+private:
193+ void prepend(Application *application)
194+ {
195+ beginInsertRows(QModelIndex(), 0 /*first*/, 0 /*last*/);
196+ m_applications.append(application);
197+ endInsertRows();
198+ }
199+
200+ QList<Application*> m_applications;
201+};
202+
203+#endif // UNITYAPPLICATIONMOCKS_H
tests/plugins/WindowManager/tst_TopLevelWindowModel.cppnew file+130
@@ -0,0 +1,130 @@
1+/*
2+ * Copyright (C) 2017 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 <QtTest/QtTest>
18+
19+// WindowManager plugin
20+#include <TopLevelWindowModel.h>
21+#include <Window.h>
22+
23+#include "UnityApplicationMocks.h"
24+
25+class tst_TopLevelWindowModel : public QObject
26+{
27+ Q_OBJECT
28+
29+private Q_SLOTS:
30+ void init(); // called right before each and every test function is executed
31+ void cleanup(); // called right after each and every test function is executed
32+
33+ void singleSurfaceStartsHidden();
34+ void secondSurfaceIsHidden();
35+
36+private:
37+ ApplicationManager *applicationManager{nullptr};
38+ SurfaceManager *surfaceManager{nullptr};
39+ TopLevelWindowModel *topLevelWindowModel{nullptr};
40+};
41+
42+void tst_TopLevelWindowModel::init()
43+{
44+ applicationManager = new ApplicationManager;
45+ surfaceManager = new SurfaceManager;
46+
47+ topLevelWindowModel = new TopLevelWindowModel;
48+ topLevelWindowModel->setApplicationManager(applicationManager);
49+ topLevelWindowModel->setSurfaceManager(surfaceManager);
50+}
51+
52+void tst_TopLevelWindowModel::cleanup()
53+{
54+ delete topLevelWindowModel;
55+ topLevelWindowModel = nullptr;
56+
57+ delete surfaceManager;
58+ surfaceManager = nullptr;
59+
60+ delete applicationManager;
61+ applicationManager = nullptr;
62+}
63+
64+void tst_TopLevelWindowModel::singleSurfaceStartsHidden()
65+{
66+ QCOMPARE(topLevelWindowModel->rowCount(), 0);
67+
68+ auto application = static_cast<Application*>(applicationManager->startApplication(QString("hello-world"), QStringList()));
69+
70+ QCOMPARE(topLevelWindowModel->rowCount(), 1);
71+ QCOMPARE((void*)topLevelWindowModel->windowAt(0)->surface(), (void*)nullptr);
72+
73+ auto surface = new MirSurface;
74+ surface->m_state = Mir::HiddenState;
75+ application->m_surfaceList.addSurface(surface);
76+ Q_EMIT surfaceManager->surfaceCreated(surface);
77+
78+ QCOMPARE(topLevelWindowModel->rowCount(), 1);
79+ // not showing the surface as it's still hidden
80+ QCOMPARE((void*)topLevelWindowModel->windowAt(0)->surface(), (void*)nullptr);
81+
82+ surface->requestState(Mir::RestoredState);
83+
84+ QCOMPARE(topLevelWindowModel->rowCount(), 1);
85+ // Now that the surface is no longer hidden, TopLevelWindowModel should expose it.
86+ QCOMPARE((void*)topLevelWindowModel->windowAt(0)->surface(), (void*)surface);
87+}
88+
89+void tst_TopLevelWindowModel::secondSurfaceIsHidden()
90+{
91+ QCOMPARE(topLevelWindowModel->rowCount(), 0);
92+
93+ auto application = static_cast<Application*>(applicationManager->startApplication(QString("hello-world"), QStringList()));
94+
95+ QCOMPARE(topLevelWindowModel->rowCount(), 1);
96+ QCOMPARE((void*)topLevelWindowModel->windowAt(0)->surface(), (void*)nullptr);
97+
98+ auto firstSurface = new MirSurface;
99+ application->m_surfaceList.addSurface(firstSurface);
100+ Q_EMIT surfaceManager->surfaceCreated(firstSurface);
101+
102+ QCOMPARE(topLevelWindowModel->rowCount(), 1);
103+ QCOMPARE((void*)topLevelWindowModel->windowAt(0)->surface(), (void*)firstSurface);
104+
105+ auto secondSurface = new MirSurface;
106+ secondSurface->m_state = Mir::HiddenState;
107+ application->m_surfaceList.addSurface(secondSurface);
108+ Q_EMIT surfaceManager->surfaceCreated(secondSurface);
109+
110+ // still only the first surface is exposed by TopLevelWindowModel
111+ QCOMPARE(topLevelWindowModel->rowCount(), 1);
112+ QCOMPARE((void*)topLevelWindowModel->windowAt(0)->surface(), (void*)firstSurface);
113+
114+ secondSurface->requestState(Mir::RestoredState);
115+
116+ // now the second surface finally shows up
117+ QCOMPARE(topLevelWindowModel->rowCount(), 2);
118+ QCOMPARE((void*)topLevelWindowModel->windowAt(0)->surface(), (void*)secondSurface);
119+ QCOMPARE((void*)topLevelWindowModel->windowAt(1)->surface(), (void*)firstSurface);
120+
121+ secondSurface->requestState(Mir::HiddenState);
122+
123+ // and it's gone again
124+ QCOMPARE(topLevelWindowModel->rowCount(), 1);
125+ QCOMPARE((void*)topLevelWindowModel->windowAt(0)->surface(), (void*)firstSurface);
126+}
127+
128+QTEST_MAIN(tst_TopLevelWindowModel)
129+
130+#include "tst_TopLevelWindowModel.moc"
tests/qmltests/ApplicationMenus/tst_MenuBar.qml+101
@@ -76,6 +76,12 @@ Item {
76 signalName: "activated"
76 signalName: "activated"
77 }
77 }
78
78
79+ SignalSpy {
80+ id: aboutToShowCalledSpy
81+ target: menuBackend
82+ signalName: "aboutToShowCalled"
83+ }
84+
79 UnityTestCase {
85 UnityTestCase {
80 id: testCase
86 id: testCase
81 name: "MenuBar"
87 name: "MenuBar"
@@ -115,6 +121,43 @@ Item {
115 compare(menuItem0.popupVisible, true, "Popup should be visible");
121 compare(menuItem0.popupVisible, true, "Popup should be visible");
116 }
122 }
117
123
124+ function test_aboutToShow() {
125+ menuBackend.modelData = appMenuData.generateTestData(3,3,0,0, "menu");
126+ wait(50) // wait for row to build
127+ var priv = findInvisibleChild(menuBar, "d");
128+
129+ var menuItem0 = findChild(menuBar, "menuBar-item0");
130+ var menuItem1 = findChild(menuBar, "menuBar-item1");
131+
132+ aboutToShowCalledSpy.clear();
133+ menuItem0.show();
134+ compare(aboutToShowCalledSpy.count, 1);
135+
136+ menuItem0.show();
137+ // It's already shown so nothing happens
138+ compare(aboutToShowCalledSpy.count, 1);
139+
140+ menuItem0.hide();
141+ menuItem0.show();
142+ compare(aboutToShowCalledSpy.count, 2);
143+
144+ menuItem0.dismiss();
145+ menuItem0.show();
146+ compare(aboutToShowCalledSpy.count, 3);
147+
148+ menuItem1.show();
149+ compare(aboutToShowCalledSpy.count, 4);
150+
151+ menuItem0.show();
152+ compare(aboutToShowCalledSpy.count, 5);
153+
154+ compare(aboutToShowCalledSpy.signalArguments[0][0], 0);
155+ compare(aboutToShowCalledSpy.signalArguments[1][0], 0);
156+ compare(aboutToShowCalledSpy.signalArguments[2][0], 0);
157+ compare(aboutToShowCalledSpy.signalArguments[3][0], 1);
158+ compare(aboutToShowCalledSpy.signalArguments[4][0], 0);
159+ }
160+
118 function test_keyboardNavigation_RightKeySelectsNextMenuItem(data) {
161 function test_keyboardNavigation_RightKeySelectsNextMenuItem(data) {
119 menuBackend.modelData = appMenuData.generateTestData(3,3,0,0, "menu");
162 menuBackend.modelData = appMenuData.generateTestData(3,3,0,0, "menu");
120 var priv = findInvisibleChild(menuBar, "d");
163 var priv = findInvisibleChild(menuBar, "d");
@@ -183,6 +226,30 @@ Item {
183 keyRelease(data.tag, Qt.AltModifier, 100);
226 keyRelease(data.tag, Qt.AltModifier, 100);
184 }
227 }
185
228
229+ function test_disabledTopLevel() {
230+ var modelData = appMenuData.generateTestData(3,3,0,0,"menu");
231+ modelData[1].rowData.sensitive = false;
232+ menuBackend.modelData = modelData;
233+
234+ var priv = findInvisibleChild(menuBar, "d");
235+
236+ var menuItem0 = findChild(menuBar, "menuBar-item0"); verify(menuItem0);
237+ var menuItem2 = findChild(menuBar, "menuBar-item2"); verify(menuItem2);
238+
239+ menuItem0.show();
240+ compare(menuItem0.popupVisible, true, "Popup should be visible");
241+
242+ keyClick(Qt.Key_Right);
243+ compare(priv.currentItem, menuItem2);
244+ compare(menuItem2.popupVisible, true);
245+ compare(menuItem0.popupVisible, false);
246+
247+ keyClick(Qt.Key_Left);
248+ compare(priv.currentItem, menuItem0);
249+ compare(menuItem2.popupVisible, false);
250+ compare(menuItem0.popupVisible, true);
251+ }
252+
186 function test_menuActivateClosesMenu() {
253 function test_menuActivateClosesMenu() {
187 menuBackend.modelData = appMenuData.generateTestData(3,3,0,0,"menu");
254 menuBackend.modelData = appMenuData.generateTestData(3,3,0,0,"menu");
188 var priv = findInvisibleChild(menuBar, "d");
255 var priv = findInvisibleChild(menuBar, "d");
@@ -271,5 +338,39 @@ Item {
271 return false;
338 return false;
272 }, true);
339 }, true);
273 }
340 }
341+
342+ function test_firstDisabled() {
343+ var data = appMenuData.generateTestData(10,5,2,3);
344+ data[0].submenu[1].submenu[0].rowData.sensitive = false;
345+ menuBackend.modelData = data;
346+
347+ var menuItem = findChild(menuBar, "menuBar-item0");
348+ menuItem.show();
349+
350+ // waits for item to be created so the keyclick actually works
351+ findChild(menuBar, "menuBar-item0-menu-item1-actionItem");
352+
353+ keyClick(Qt.Key_Down);
354+ keyClick(Qt.Key_Down);
355+ keyClick(Qt.Key_Right);
356+
357+ var submenu = findChild(menuBar, "menuBar-item0-menu-item1-menu");
358+ var priv = findInvisibleChild(submenu, "d");
359+ var subActionItem1 = findChild(submenu, "menuBar-item0-menu-item1-menu-item1-actionItem");
360+ compare(priv.currentItem.item, subActionItem1);
361+
362+ keyClick(Qt.Key_Down);
363+ var subActionItem3 = findChild(submenu, "menuBar-item0-menu-item1-menu-item3-actionItem");
364+ compare(priv.currentItem.item, subActionItem3);
365+
366+ // now move mouse over to a different item and back to exercise a different codepath
367+ var actionItem0 = findChild(menuBar, "menuBar-item0-menu-item0-actionItem");
368+ mouseMove(actionItem0, actionItem0.width/2, actionItem0.height/2);
369+
370+ var actionItem1 = findChild(menuBar, "menuBar-item0-menu-item1-actionItem");
371+ mouseMove(actionItem1, actionItem1.width/2, actionItem1.height/2);
372+
373+ tryCompareFunction(function() { return priv.currentItem.item == subActionItem1; }, true);
374+ }
274 }
375 }
275}
376}
tests/qmltests/ApplicationMenus/tst_MenuPopup.qml+51−23
@@ -59,18 +59,13 @@ Item {
59 }}
59 }}
60 ]
60 ]
61 }
61 }
62−
63− Binding {
64− target: activatedSpy
65− property: "target"
66− value: unityMenuModel
67− }
68 }
62 }
69 }
63 }
70
64
71 SignalSpy {
65 SignalSpy {
72− id: activatedSpy
66+ id: aboutToShowCalledSpy
67+ target: loader.item ? loader.item.unityMenuModel : undefined
73− signalName: "activated"
68+ signalName: "aboutToShowCalled"
74 }
69 }
75
70
76 UnityTestCase {
71 UnityTestCase {
@@ -88,7 +83,6 @@ Item {
88 function cleanup() {
83 function cleanup() {
89 menu.reset();
84 menu.reset();
90 wait(100); // let the page dismiss
85 wait(100); // let the page dismiss
91− activatedSpy.clear();
92
86
93 loader.active = false;
87 loader.active = false;
94 tryCompare(loader, "item", null);
88 tryCompare(loader, "item", null);
@@ -159,9 +153,6 @@ Item {
159
153
160 var priv = findInvisibleChild(menu, "d");
154 var priv = findInvisibleChild(menu, "d");
161
155
162− keyClick(Qt.Key_Down, Qt.NoModifier);
163− compare(priv.currentItem, item0, "CurrentItem should have moved to item 0");
164−
165 keyClick(Qt.Key_Down, Qt.NoModifier);
156 keyClick(Qt.Key_Down, Qt.NoModifier);
166 compare(priv.currentItem, item1, "CurrentItem should have moved to item 1");
157 compare(priv.currentItem, item1, "CurrentItem should have moved to item 1");
167
158
@@ -170,6 +161,9 @@ Item {
170
161
171 keyClick(Qt.Key_Down, Qt.NoModifier);
162 keyClick(Qt.Key_Down, Qt.NoModifier);
172 compare(priv.currentItem, item0, "CurrentItem should have moved to item 0");
163 compare(priv.currentItem, item0, "CurrentItem should have moved to item 0");
164+
165+ keyClick(Qt.Key_Down, Qt.NoModifier);
166+ compare(priv.currentItem, item1, "CurrentItem should have moved to item 1");
173 }
167 }
174
168
175 function test_keyboardNavigation_UpKeySelectsAndOpensPreviousMenuItemAndRotates() {
169 function test_keyboardNavigation_UpKeySelectsAndOpensPreviousMenuItemAndRotates() {
@@ -181,17 +175,48 @@ Item {
181
175
182 var priv = findInvisibleChild(menu, "d");
176 var priv = findInvisibleChild(menu, "d");
183
177
184− keyClick(Qt.Key_Down, Qt.NoModifier);
178+ keyClick(Qt.Key_Up, Qt.NoModifier);
185− compare(priv.currentItem, item0, "CurrentItem should have moved to item 2");
179+ compare(priv.currentItem, item2, "CurrentItem should have moved to item 2");
186
180
187− keyClick(Qt.Key_Down, Qt.NoModifier);
181+ keyClick(Qt.Key_Up, Qt.NoModifier);
188 compare(priv.currentItem, item1, "CurrentItem should have moved to item 1");
182 compare(priv.currentItem, item1, "CurrentItem should have moved to item 1");
189
183
190− keyClick(Qt.Key_Down, Qt.NoModifier);
184+ keyClick(Qt.Key_Up, Qt.NoModifier);
191− compare(priv.currentItem, item2, "CurrentItem should have moved to item 0");
185+ compare(priv.currentItem, item0, "CurrentItem should have moved to item 0");
192
186
193− keyClick(Qt.Key_Down, Qt.NoModifier);
187+ keyClick(Qt.Key_Up, Qt.NoModifier);
194− compare(priv.currentItem, item0, "CurrentItem should have moved to item 2");
188+ compare(priv.currentItem, item2, "CurrentItem should have moved to item 2");
189+ }
190+
191+ function test_aboutToShow() {
192+ menu.unityMenuModel.modelData = appMenuData.generateTestData(3,3,1,0,"menu",false);
193+
194+ var item0 = findChild(menu, "menu-item0");
195+ var item1 = findChild(menu, "menu-item1");
196+ var item2 = findChild(menu, "menu-item2");
197+
198+ aboutToShowCalledSpy.clear();
199+
200+ mouseMove(item0, item0.width/2, item0.height/2);
201+ tryCompare(aboutToShowCalledSpy, "count", 1);
202+
203+ mouseMove(item1, item0.width/2, item0.height/2);
204+ tryCompare(aboutToShowCalledSpy, "count", 2);
205+
206+ mouseMove(item2, item0.width/2, item0.height/2);
207+ tryCompare(aboutToShowCalledSpy, "count", 3);
208+
209+ mouseMove(item0, item0.width/2, item0.height/2);
210+ tryCompare(aboutToShowCalledSpy, "count", 4);
211+
212+ item0.item.trigger();
213+ // it's already visible
214+ tryCompare(aboutToShowCalledSpy, "count", 4);
215+
216+ compare(aboutToShowCalledSpy.signalArguments[0][0], 0);
217+ compare(aboutToShowCalledSpy.signalArguments[1][0], 1);
218+ compare(aboutToShowCalledSpy.signalArguments[2][0], 2);
219+ compare(aboutToShowCalledSpy.signalArguments[3][0], 0);
195 }
220 }
196
221
197 function test_keyboardNavigation_RightKeyEntersSubMenu() {
222 function test_keyboardNavigation_RightKeyEntersSubMenu() {
@@ -217,7 +242,7 @@ Item {
217
242
218 var menuItem = findChild(menu, "menu-item0"); verify(menuItem);
243 var menuItem = findChild(menu, "menu-item0"); verify(menuItem);
219 mouseClick(menuItem, menuItem.width/2, menuItem.height/2);
244 mouseClick(menuItem, menuItem.width/2, menuItem.height/2);
220− tryCompareFunction(function() { return menuItem.popup !== null && menuItem.popup.visible }, true);
245+ tryCompareFunction(function() { return menuItem.popup !== null && findInvisibleChild(menuItem.popup, "d").currentItem !== null }, true);
221
246
222 keyClick(Qt.Key_Left, Qt.NoModifier);
247 keyClick(Qt.Key_Left, Qt.NoModifier);
223 tryCompareFunction(function() { return menuItem.popup !== null && menuItem.popup.visible }, false);
248 tryCompareFunction(function() { return menuItem.popup !== null && menuItem.popup.visible }, false);
@@ -245,13 +270,16 @@ Item {
245
270
246 menu.unityMenuModel.modelData = differentSizesMenu;
271 menu.unityMenuModel.modelData = differentSizesMenu;
247
272
248− waitForRendering(menu);
273+ // Wait for the two items to be there
274+ tryCompareFunction(function() { return findChild(menu, "menu-item1") !== null; }, true);
249 var longWidth = menu.width;
275 var longWidth = menu.width;
276+
277+ // Now pop one item and make sure it's smaller
250 differentSizesMenu.pop();
278 differentSizesMenu.pop();
251 menu.unityMenuModel.modelData = differentSizesMenu;
279 menu.unityMenuModel.modelData = differentSizesMenu;
252
280
253− waitForRendering(menu);
281+ tryCompareFunction(function() { return findChild(menu, "menu-item0") !== null; }, true);
254− verify(menu.width < longWidth);
282+ tryCompareFunction(function() { return menu.width < longWidth; }, true);
255 }
283 }
256
284
257 function test_minimumWidth() {
285 function test_minimumWidth() {
tests/qmltests/Launcher/tst_Drawer.qml+39
@@ -328,5 +328,44 @@ StyledItem {
328
328
329 tryCompare(launcher, "state", "visibleTemporary");
329 tryCompare(launcher, "state", "visibleTemporary");
330 }
330 }
331+
332+ function test_focusMovesCorrectlyBetweenLauncherAndDrawer() {
333+ var panel = findChild(launcher, "launcherPanel");
334+ var drawer = findChild(launcher, "drawer");
335+ var searchField = findChild(drawer, "searchField");
336+
337+ launcher.openForKeyboardNavigation();
338+ tryCompare(panel, "highlightIndex", -1);
339+ keyClick(Qt.Key_Down);
340+ tryCompare(panel, "highlightIndex", 0);
341+
342+ launcher.openDrawer(true);
343+ tryCompare(searchField, "focus", true);
344+
345+ keyClick(Qt.Key_Escape);
346+
347+ launcher.openForKeyboardNavigation();
348+ tryCompare(panel, "highlightIndex", -1);
349+ keyClick(Qt.Key_Down);
350+ tryCompare(panel, "highlightIndex", 0);
351+ }
352+
353+ function test_closeWhileDragging() {
354+ launcher.openDrawer(true);
355+ waitForRendering(launcher);
356+ waitUntilTransitionsEnd(launcher);
357+
358+ var drawer = findChild(launcher, "drawer");
359+ tryCompare(drawer.anchors, "rightMargin", -drawer.width);
360+
361+ mousePress(drawer, drawer.width / 2, drawer.height / 2);
362+ mouseMove(drawer, drawer.width / 4, drawer.height / 2);
363+ tryCompare(drawer, "draggingHorizontally", true);
364+
365+ keyPress(Qt.Key_Escape);
366+
367+ tryCompare(launcher, "state", "");
368+ tryCompare(drawer, "draggingHorizontally", false);
369+ }
331 }
370 }
332}
371}
tests/qmltests/Launcher/tst_Launcher.qml+42
@@ -95,6 +95,11 @@ Rectangle {
95 property: "lockedVisible"
95 property: "lockedVisible"
96 value: lockedVisibleCheckBox.checked
96 value: lockedVisibleCheckBox.checked
97 }
97 }
98+ Binding {
99+ target: launcherLoader.item
100+ property: "privateMode"
101+ value: privateModeCheckBox.checked
102+ }
98 Binding {
103 Binding {
99 target: launcherLoader.item
104 target: launcherLoader.item
100 property: "panelWidth"
105 property: "panelWidth"
@@ -120,6 +125,20 @@ Rectangle {
120 }
125 }
121 }
126 }
122
127
128+ RowLayout {
129+ CheckBox {
130+ id: privateModeCheckBox
131+ checked: false
132+ }
133+ Label {
134+ text: "Private mode (lockscreen locked)"
135+ AbstractButton {
136+ anchors.fill: parent
137+ onClicked: privateModeCheckBox.checked = !privateModeCheckBox.checked
138+ }
139+ }
140+ }
141+
123 Slider {
142 Slider {
124 id: widthSlider
143 id: widthSlider
125 Layout.fillWidth: true
144 Layout.fillWidth: true
@@ -1242,6 +1261,7 @@ Rectangle {
1242 keyClick(Qt.Key_Down);
1261 keyClick(Qt.Key_Down);
1243 keyClick(Qt.Key_Down);
1262 keyClick(Qt.Key_Down);
1244 keyClick(Qt.Key_Down);
1263 keyClick(Qt.Key_Down);
1264+ keyClick(Qt.Key_Down);
1245 tryCompare(quickList, "selectedIndex", 0)
1265 tryCompare(quickList, "selectedIndex", 0)
1246
1266
1247 // Left gets us back to the launcher
1267 // Left gets us back to the launcher
@@ -1493,6 +1513,28 @@ Rectangle {
1493 compare(launcher.state, "visibleTemporary");
1513 compare(launcher.state, "visibleTemporary");
1494 }
1514 }
1495
1515
1516+ function test_hideQuicklistItemsInPrivateModel_data() {
1517+ return [
1518+ { tag: "private mode", private: true },
1519+ { tag: "normal mode", private: false }
1520+ ];
1521+ }
1522+
1523+ function test_hideQuicklistItemsInPrivateModel(data) {
1524+ privateModeCheckBox.checked = data.private;
1525+
1526+ revealByEdgePush();
1527+
1528+ var item = findChild(launcher, "launcherDelegate4");
1529+ var quickListShape = findChild(launcher, "quickListShape")
1530+
1531+ mousePress(item)
1532+ tryCompare(quickListShape, "visible", true)
1533+
1534+ var repeater = findChild(launcher, "popoverRepeater");
1535+ tryCompare(repeater, "count", LauncherModel.get(4).quickList.count - (data.private ? 1 : 0))
1536+ }
1537+
1496 function test_hintOnSizeChange() {
1538 function test_hintOnSizeChange() {
1497 var oldSize = launcher.panelWidth;
1539 var oldSize = launcher.panelWidth;
1498 launcher.maxPanelX = -launcher.panelWidth;
1540 launcher.maxPanelX = -launcher.panelWidth;
tests/qmltests/Panel/tst_Panel.qml+66−5
@@ -57,6 +57,11 @@ PanelTest {
57 color: "darkgrey"
57 color: "darkgrey"
58 }
58 }
59
59
60+ SignalSpy {
61+ id: aboutToShowCalledSpy
62+ signalName: "aboutToShowCalled"
63+ }
64+
60 RowLayout {
65 RowLayout {
61 anchors.fill: parent
66 anchors.fill: parent
62 anchors.margins: units.gu(1)
67 anchors.margins: units.gu(1)
@@ -315,12 +320,15 @@ PanelTest {
315 tryCompare(panel.indicators, "fullyOpened", true);
320 tryCompare(panel.indicators, "fullyOpened", true);
316 }
321 }
317
322
318− function pullDownApplicationsMenu() {
323+ function pullDownApplicationsMenu(xPos) {
319 var showDragHandle = findChild(panel.applicationMenus, "showDragHandle");
324 var showDragHandle = findChild(panel.applicationMenus, "showDragHandle");
325+ if (xPos === undefined) {
326+ xPos = showDragHandle.width / 2;
327+ }
320 touchFlick(showDragHandle,
328 touchFlick(showDragHandle,
321− showDragHandle.width / 2,
329+ xPos,
322 showDragHandle.height / 2,
330 showDragHandle.height / 2,
323− showDragHandle.width / 2,
331+ xPos,
324 showDragHandle.height / 2 + (showDragHandle.autoCompleteDragThreshold * 1.1));
332 showDragHandle.height / 2 + (showDragHandle.autoCompleteDragThreshold * 1.1));
325 tryCompare(panel.applicationMenus, "fullyOpened", true);
333 tryCompare(panel.applicationMenus, "fullyOpened", true);
326 }
334 }
@@ -769,7 +777,7 @@ PanelTest {
769 panel.mode = "staged";
777 panel.mode = "staged";
770 mouseEmulation.checked = false;
778 mouseEmulation.checked = false;
771
779
772− var appTitle = findChild(panel.applicationMenus, "panelTitle"); verify(appTitle);
780+ var appTitle = findChild(panel, "panelTitle"); verify(appTitle);
773 var appMenuRow = findChild(panel.applicationMenus, "panelRow"); verify(appMenuRow);
781 var appMenuRow = findChild(panel.applicationMenus, "panelRow"); verify(appMenuRow);
774 var appMenuBar = findChild(panel, "menuBar"); verify(appMenuBar);
782 var appMenuBar = findChild(panel, "menuBar"); verify(appMenuBar);
775
783
@@ -787,7 +795,7 @@ PanelTest {
787 panel.mode = "windowed";
795 panel.mode = "windowed";
788 mouseEmulation.checked = false;
796 mouseEmulation.checked = false;
789
797
790− var appTitle = findChild(panel.applicationMenus, "panelTitle"); verify(appTitle);
798+ var appTitle = findChild(panel, "panelTitle"); verify(appTitle);
791 var appMenuRow = findChild(panel.applicationMenus, "panelRow"); verify(appMenuRow);
799 var appMenuRow = findChild(panel.applicationMenus, "panelRow"); verify(appMenuRow);
792 var appMenuBar = findChild(panel, "menuBar"); verify(appMenuBar);
800 var appMenuBar = findChild(panel, "menuBar"); verify(appMenuBar);
793
801
@@ -838,5 +846,58 @@ PanelTest {
838 keyClick(Qt.Key_Escape);
846 keyClick(Qt.Key_Escape);
839 tryCompare(panel.indicators, "fullyClosed", true);
847 tryCompare(panel.indicators, "fullyClosed", true);
840 }
848 }
849+
850+ function test_aboutToShowMenu() {
851+ waitForRendering(panel);
852+
853+ aboutToShowCalledSpy.target = panel.applicationMenus.model
854+ aboutToShowCalledSpy.clear();
855+
856+ var indicatorsBar = findChild(panel.applicationMenus, "indicatorsBar");
857+
858+ PanelState.title = "Fake Title"
859+ pullDownApplicationsMenu(0 /*xPos*/);
860+ compare(aboutToShowCalledSpy.count, 1);
861+
862+ keyClick(Qt.Key_Right);
863+ tryCompare(indicatorsBar, "currentItemIndex", 1);
864+ compare(aboutToShowCalledSpy.count, 2);
865+
866+ compare(aboutToShowCalledSpy.signalArguments[0][0], 0);
867+ compare(aboutToShowCalledSpy.signalArguments[1][0], 1);
868+
869+ keyClick(Qt.Key_Tab);
870+ keyClick(Qt.Key_Tab);
871+
872+ aboutToShowCalledSpy.target = panel.applicationMenus.model.submenu(1);
873+ aboutToShowCalledSpy.clear();
874+
875+ keyClick(Qt.Key_Enter);
876+ compare(aboutToShowCalledSpy.count, 1);
877+ }
878+
879+ function test_disabledTopLevel() {
880+ var modelData = appMenuData.generateTestData(3,3,0,0,"menu");
881+ modelData[1].rowData.sensitive = false;
882+ panel.applicationMenus.model.modelData = modelData;
883+
884+ waitForRendering(panel);
885+
886+ aboutToShowCalledSpy.target = panel.applicationMenus.model
887+ aboutToShowCalledSpy.clear();
888+
889+ var indicatorsBar = findChild(panel.applicationMenus, "indicatorsBar");
890+
891+ PanelState.title = "Fake Title"
892+ pullDownApplicationsMenu(0 /*xPos*/);
893+
894+ tryCompare(indicatorsBar, "currentItemIndex", 0);
895+
896+ keyClick(Qt.Key_Right);
897+ tryCompare(indicatorsBar, "currentItemIndex", 2);
898+
899+ keyClick(Qt.Key_Left);
900+ tryCompare(indicatorsBar, "currentItemIndex", 0);
901+ }
841 }
902 }
842}
903}
tests/qmltests/Stage/tst_TabletStage.qml+33−1
@@ -1,5 +1,5 @@
1/*
1/*
2− * Copyright (C) 2015-2016 Canonical, Ltd.
2+ * Copyright (C) 2015-2017 Canonical, Ltd.
3 *
3 *
4 * This program is free software; you can redistribute it and/or modify
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
5 * it under the terms of the GNU General Public License as published by
@@ -761,6 +761,38 @@ Rectangle {
761 tryCompare(appDelegate, "stage", ApplicationInfoInterface.SideStage);
761 tryCompare(appDelegate, "stage", ApplicationInfoInterface.SideStage);
762 }
762 }
763
763
764+ /*
765+ Regression test for https://bugs.launchpad.net/ubuntu/+source/unity8/+bug/1670361
766+
767+ Clicks near the top window edge (but still inside the window boundaries) should go to
768+ the window (and not get eaten by some translucent decoration like in that bug).
769+ */
770+ function test_clickNearTopEdgeGoesToWindow() {
771+ compare(topLevelSurfaceList.count, 1); // assume unity8-dash is already there
772+
773+ var appDelegate = findChild(stage, "appDelegate_" + topLevelSurfaceList.idAt(0));
774+ verify(appDelegate);
775+
776+ var surfaceItem = findChild(appDelegate, "surfaceItem");
777+ verify(surfaceItem);
778+
779+ compare(surfaceItem.mousePressCount, 0);
780+ compare(surfaceItem.mouseReleaseCount, 0);
764
781
782+ mouseClick(appDelegate, 1, 1); // near top left
783+
784+ compare(surfaceItem.mousePressCount, 1);
785+ compare(surfaceItem.mouseReleaseCount, 1);
786+
787+ mouseClick(appDelegate, appDelegate.width / 2, 1); // near top
788+
789+ compare(surfaceItem.mousePressCount, 2);
790+ compare(surfaceItem.mouseReleaseCount, 2);
791+
792+ mouseClick(appDelegate, appDelegate.width - 1, 1); // near top right
793+
794+ compare(surfaceItem.mousePressCount, 3);
795+ compare(surfaceItem.mouseReleaseCount, 3);
796+ }
765 }
797 }
766}
798}
tests/qmltests/tst_Shell.qml+227−10
@@ -2536,27 +2536,44 @@ Rectangle {
2536 tryCompare(app2Surface, "keymap", "fr");
2536 tryCompare(app2Surface, "keymap", "fr");
2537 }
2537 }
2538
2538
2539+ function test_dragPanelToRestoreMaximizedWindow_data() {
2540+ return [
2541+ { tag: "with mouse", mouse: true },
2542+ { tag: "with touch", mouse: false }
2543+ ]
2544+ }
2545+
2539− function test_dragPanelToRestoreMaximizedWindow() {
2546+ function test_dragPanelToRestoreMaximizedWindow(data) {
2540 loadShell("desktop");
2547 loadShell("desktop");
2541 shell.usageScenario = "desktop";
2548 shell.usageScenario = "desktop";
2542 waitForRendering(shell);
2549 waitForRendering(shell);
2543 var panel = findChild(shell, "windowControlArea");
2550 var panel = findChild(shell, "windowControlArea");
2544 verify(panel);
2551 verify(panel);
2545
2552
2546− var appSurfaceId = topLevelSurfaceList.nextId;
2547− var app = ApplicationManager.startApplication("dialer-app")
2548− waitUntilAppWindowIsFullyLoaded(appSurfaceId);
2549−
2550 // start dialer, maximize it
2553 // start dialer, maximize it
2551− var appContainer = findChild(shell, "appContainer");
2554+ var appDelegate = startApplication("dialer-app");
2552− var appDelegate = findChild(appContainer, "appDelegate_" + appSurfaceId);
2553 verify(appDelegate);
2555 verify(appDelegate);
2556+
2554 var maximizeButton = findChild(appDelegate, "maximizeWindowButton");
2557 var maximizeButton = findChild(appDelegate, "maximizeWindowButton");
2558+ if (data.mouse) {
2555− mouseClick(maximizeButton);
2559+ mouseClick(maximizeButton);
2560+ } else {
2561+ tap(maximizeButton);
2562+ }
2556
2563
2564+ waitUntilTransitionsEnd(appDelegate);
2557 tryCompare(appDelegate, "state", "maximized");
2565 tryCompare(appDelegate, "state", "maximized");
2558
2566
2567+ if (data.mouse) {
2568+ mouseMove(panel, panel.width/2, panel.panelHeight/2); // to reveal the menus
2569+ var menuBarLoader = findInvisibleChild(panel, "menuBarLoader");
2570+ verify(menuBarLoader);
2571+ tryCompare(menuBarLoader.item, "visible", true);
2559− mouseDrag(panel, panel.width/2, panel.height/2, 0, shell.height/3, Qt.LeftButton, Qt.NoModifier, 500);
2572+ mouseDrag(panel, panel.width/2, panel.height/2, 0, shell.height/3, Qt.LeftButton, Qt.NoModifier, 500);
2573+ } else {
2574+ touchFlick(panel, panel.width/2, panel.panelHeight/2, panel.width/2, shell.height/3);
2575+ }
2576+
2560 tryCompare(appDelegate, "state", "restored");
2577 tryCompare(appDelegate, "state", "restored");
2561 }
2578 }
2562
2579
@@ -2871,7 +2888,7 @@ Rectangle {
2871 loadShell(data.tag);
2888 loadShell(data.tag);
2872
2889
2873 var panel = findChild(shell, "panel"); verify(panel);
2890 var panel = findChild(shell, "panel"); verify(panel);
2874− var panelTitle = findChild(panel.applicationMenus, "panelTitle"); verify(panelTitle);
2891+ var panelTitle = findChild(panel, "panelTitle"); verify(panelTitle);
2875 compare(panelTitle.visible, false, "Panel title should not be visible when greeter is shown");
2892 compare(panelTitle.visible, false, "Panel title should not be visible when greeter is shown");
2876
2893
2877 swipeAwayGreeter();
2894 swipeAwayGreeter();
@@ -2936,6 +2953,86 @@ Rectangle {
2936 tryCompare(appDelegate, "state", "maximizedRight");
2953 tryCompare(appDelegate, "state", "maximizedRight");
2937 }
2954 }
2938
2955
2956+
2957+ function test_closeAppsInSpreadWithQ() {
2958+ loadShell("desktop");
2959+ shell.usageScenario = "desktop";
2960+ waitForRendering(shell);
2961+ swipeAwayGreeter();
2962+
2963+ var appSurfaceId = topLevelSurfaceList.nextId;
2964+ var app = ApplicationManager.startApplication("dialer-app")
2965+ waitUntilAppWindowIsFullyLoaded(appSurfaceId);
2966+
2967+ appSurfaceId = topLevelSurfaceList.nextId;
2968+ app = ApplicationManager.startApplication("calendar-app")
2969+ waitUntilAppWindowIsFullyLoaded(appSurfaceId);
2970+
2971+ keyPress(Qt.Key_Alt);
2972+ keyClick(Qt.Key_Tab);
2973+
2974+ var stage = findChild(shell, "stage");
2975+ var spread = findChild(stage, "spreadItem");
2976+ var appRepeater = findChild(stage, "appRepeater");
2977+
2978+ tryCompare(stage, "state", "spread");
2979+
2980+ tryCompare(ApplicationManager, "count", 3);
2981+ tryCompareFunction(function() {return appRepeater.itemAt(spread.highlightedIndex).appId == "dialer-app"}, true);
2982+
2983+ // Close one app with Q while in spread
2984+ keyClick(Qt.Key_Q);
2985+
2986+ tryCompare(ApplicationManager, "count", 2);
2987+
2988+ // Now the dash should be highlighted
2989+ tryCompareFunction(function() {return appRepeater.itemAt(spread.highlightedIndex).appId == "unity8-dash"}, true);
2990+
2991+ keyClick(Qt.Key_Q);
2992+
2993+ // Dash is not closeable, should still be 2
2994+ tryCompare(ApplicationManager, "count", 2);
2995+
2996+ // Move to the next one, should be closable again
2997+ keyClick(Qt.Key_Tab);
2998+ tryCompareFunction(function() {return appRepeater.itemAt(spread.highlightedIndex).appId == "calendar-app"}, true);
2999+
3000+ // close it
3001+ keyClick(Qt.Key_Q);
3002+ tryCompare(ApplicationManager, "count", 1);
3003+
3004+ keyRelease(Qt.Key_Alt);
3005+
3006+ // Now start the apps again
3007+ appSurfaceId = topLevelSurfaceList.nextId;
3008+ app = ApplicationManager.startApplication("dialer-app");
3009+ waitUntilAppWindowIsFullyLoaded(appSurfaceId);
3010+
3011+ appSurfaceId = topLevelSurfaceList.nextId;
3012+ app = ApplicationManager.startApplication("calendar-app");
3013+ waitUntilAppWindowIsFullyLoaded(appSurfaceId);
3014+
3015+ // First focus the dash so it'll be the leftmost in the spread
3016+ ApplicationManager.requestFocusApplication("unity8-dash");
3017+
3018+ keyPress(Qt.Key_Alt);
3019+ keyClick(Qt.Key_Tab);
3020+ tryCompare(stage, "state", "spread");
3021+
3022+ // Move to the last one
3023+ keyClick(Qt.Key_Tab);
3024+
3025+ // Close the last one, make sure the highlight fixes itself to stick within the list
3026+ tryCompare(spread, "highlightedIndex", ApplicationManager.count - 1);
3027+ var oldHighlighted = spread.highlightedIndex;
3028+
3029+ keyClick(Qt.Key_Q);
3030+ tryCompare(spread, "highlightedIndex", oldHighlighted - 1);
3031+
3032+ keyRelease(Qt.Key_Alt);
3033+
3034+ }
3035+
2939 function test_altTabToMinimizedApp() {
3036 function test_altTabToMinimizedApp() {
2940 loadShell("desktop");
3037 loadShell("desktop");
2941 shell.usageScenario = "desktop";
3038 shell.usageScenario = "desktop";
@@ -2964,6 +3061,61 @@ Rectangle {
2964 tryCompare(topLevelSurfaceList.applicationAt(0), "appId", "dialer-app");
3061 tryCompare(topLevelSurfaceList.applicationAt(0), "appId", "dialer-app");
2965 }
3062 }
2966
3063
3064+ function test_touchMenuPosition_data() {
3065+ return [
3066+ { tag: "launcher locked", lockLauncher: true },
3067+ { tag: "launcher not locked", lockLauncher: false }
3068+ ];
3069+ }
3070+
3071+ function test_touchMenuPosition(data) {
3072+ loadShell("desktop");
3073+ shell.usageScenario = "desktop";
3074+ waitForRendering(shell);
3075+ swipeAwayGreeter();
3076+
3077+ var panel = findChild(shell, "panel");
3078+ var launcher = testCase.findChild(shell, "launcher");
3079+ launcher.lockedVisible = data.lockLauncher;
3080+ if (data.lockLauncher) {
3081+ compare(panel.applicationMenus.x, launcher.panelWidth);
3082+ } else {
3083+ compare(panel.applicationMenus.x, 0);
3084+ }
3085+ }
3086+
3087+ function test_touchMenuHidesOnLauncherAppDrawer_data() {
3088+ return [
3089+ { tag: "launcher locked", lockLauncher: true },
3090+ { tag: "launcher not locked", lockLauncher: false }
3091+ ];
3092+ }
3093+
3094+ function test_touchMenuHidesOnLauncherAppDrawer(data) {
3095+ loadShell("desktop");
3096+ shell.usageScenario = "desktop";
3097+ waitForRendering(shell);
3098+ swipeAwayGreeter();
3099+
3100+ var panel = findChild(shell, "panel");
3101+ var launcher = testCase.findChild(shell, "launcher");
3102+ launcher.lockedVisible = data.lockLauncher;
3103+
3104+ waitForRendering(panel.applicationMenus);
3105+
3106+ if (data.lockLauncher) {
3107+ panel.applicationMenus.show();
3108+ tryCompare(panel.applicationMenus, "fullyOpened", true);
3109+ launcher.openDrawer();
3110+ } else {
3111+ tryCompare(launcher, "shown", false);
3112+ panel.applicationMenus.show();
3113+ tryCompare(panel.applicationMenus, "fullyOpened", true);
3114+ launcher.switchToNextState("visible");
3115+ }
3116+ tryCompare(panel.applicationMenus, "fullyClosed", true);
3117+ }
3118+
2967 function test_doubleClickPanelRestoresWindow() {
3119 function test_doubleClickPanelRestoresWindow() {
2968 loadShell("desktop");
3120 loadShell("desktop");
2969 shell.usageScenario = "desktop";
3121 shell.usageScenario = "desktop";
@@ -2987,5 +3139,70 @@ Rectangle {
2987 mouseDoubleClickSequence(panel, panel.width/2, PanelState.panelHeight/2, Qt.LeftButton, Qt.NoModifier, 300);
3139 mouseDoubleClickSequence(panel, panel.width/2, PanelState.panelHeight/2, Qt.LeftButton, Qt.NoModifier, 300);
2988 tryCompare(appDelegate, "state", "restored");
3140 tryCompare(appDelegate, "state", "restored");
2989 }
3141 }
3142+
3143+ function test_noMenusWithActiveCall() {
3144+ loadShell("desktop");
3145+ shell.usageScenario = "desktop";
3146+ waitForRendering(shell);
3147+ swipeAwayGreeter();
3148+
3149+ // start music-app, maximize it
3150+ var appDelegate = startApplication("music-app")
3151+ verify(appDelegate);
3152+ appDelegate.requestMaximize();
3153+
3154+ // move the mouse over panel to reveal the menus
3155+ var panel = findChild(shell, "panel");
3156+ verify(panel);
3157+ mouseMove(panel, panel.width/2, panel.panelHeight/2); // to reveal the menus
3158+ var menuBarLoader = findInvisibleChild(panel, "menuBarLoader");
3159+ verify(menuBarLoader);
3160+ tryCompare(menuBarLoader.item, "visible", true);
3161+
3162+ // place a phone call
3163+ callManager.foregroundCall = phoneCall;
3164+
3165+ // menu bar should be hidden
3166+ tryCompare(menuBarLoader, "active", false);
3167+ tryCompare(menuBarLoader, "item", null);
3168+
3169+ // remove call
3170+ callManager.foregroundCall = null;
3171+
3172+ // menu bar should be revealed
3173+ tryCompare(menuBarLoader, "active", true);
3174+ tryCompare(menuBarLoader.item, "visible", true);
3175+ }
3176+
3177+ function test_maximizedWindowAndMenuInPanel() {
3178+ loadShell("desktop");
3179+ shell.usageScenario = "desktop";
3180+ waitForRendering(shell);
3181+ swipeAwayGreeter();
3182+
3183+ // start music-app, maximize it
3184+ var appDelegate = startApplication("music-app")
3185+ verify(appDelegate);
3186+ appDelegate.requestMaximize();
3187+ tryCompare(appDelegate, "state", "maximized");
3188+
3189+ // move the mouse over panel to reveal the menus
3190+ var panel = findChild(shell, "panel");
3191+ verify(panel);
3192+ mouseMove(panel, panel.width/2, panel.panelHeight/2); // to reveal the menus
3193+ var menuBar = findChild(panel, "menuBar");
3194+ verify(menuBar);
3195+ tryCompare(menuBar, "visible", true);
3196+
3197+ // check that the menu popup appears
3198+ var priv = findInvisibleChild(menuBar, "d");
3199+ var menuItem0 = findChild(menuBar, "menuBar-item0");
3200+ verify(menuItem0);
3201+ mouseMove(menuItem0, menuItem0.width/2, menuItem0.height/2, 200);
3202+ tryCompare(menuItem0, "visible", true);
3203+ mouseClick(menuItem0);
3204+ tryCompare(priv, "currentItem", menuItem0);
3205+ tryCompare(priv.currentItem, "popupVisible", true);
3206+ }
2990 }
3207 }
2991}
3208}