on xenial help sign in
Merge trunk.
e7358c1Michał Sawicz
cmake/modules/QmlTest.cmake+20−7
@@ -80,13 +80,26 @@ macro(add_qml_test SUBPATH COMPONENT_NAME)
80 endforeach(IMPORT_PATH)
80 endforeach(IMPORT_PATH)
81 endif()
81 endif()
82
82
83+ string(TOLOWER "${CMAKE_GENERATOR}" cmake_generator_lower)
84+ if(cmake_generator_lower STREQUAL "unix makefiles")
83− set(qmltest_command
85+ set(qmltest_command
84− env ${qmltest_ENVIRONMENT}
86+ env ${qmltest_ENVIRONMENT}
85− ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
87+ ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
86− ${qmltestrunner_imports}
88+ ${qmltestrunner_imports}
87− -o ${CMAKE_BINARY_DIR}/${qmltest_TARGET}.xml,xunitxml
89+ -o ${CMAKE_BINARY_DIR}/${qmltest_TARGET}.xml,xunitxml
90+ -o -,txt
91+ $(FUNCTION)
92+ )
93+ else()
94+ set(qmltest_command
95+ env ${qmltest_ENVIRONMENT}
96+ ${qmltestrunner_exe} -input ${CMAKE_CURRENT_SOURCE_DIR}/${qmltest_FILE}.qml
97+ ${qmltestrunner_imports}
98+ -o ${CMAKE_BINARY_DIR}/${qmltest_TARGET}.xml,xunitxml
88− -o -,txt
99+ -o -,txt
89− )
100+ )
101+ endif()
102+
90 add_custom_target(${qmltest_TARGET} ${qmltest_command})
103 add_custom_target(${qmltest_TARGET} ${qmltest_command})
91
104
92 if(NOT "${qmltest_PROPERTIES}" STREQUAL "")
105 if(NOT "${qmltest_PROPERTIES}" STREQUAL "")
data/unity8.conf+1−1
@@ -6,7 +6,7 @@ emits scope-ui-starting
6start on ((xsession SESSION=ubuntu-touch) or (xsession SESSION=ubuntu-touch-surfaceflinger)) and started dbus
6start on ((xsession SESSION=ubuntu-touch) or (xsession SESSION=ubuntu-touch-surfaceflinger)) and started dbus
7stop on desktop-end
7stop on desktop-end
8
8
9−kill timeout 30
9+kill timeout 120
10
10
11respawn
11respawn
12expect stop
12expect stop
debian/changelog+29
@@ -1,3 +1,32 @@
1+unity8 (7.84+14.04.20140327.1-0ubuntu1) trusty; urgency=low
2+
3+ [ Michał Sawicz ]
4+ * Increase kill timeout so that crashes are not truncated.
5+
6+ [ Ying-Chun Liu ]
7+ * Fix a small typo in LazyImage: scale -> scaleTo
8+
9+ [ Albert Astals ]
10+ * Make geometry calls for autopilot work again -geometry is a internal
11+ Qt argument that only works for QWidget based apps Before it was
12+ being returned to us in -args but now it's eaten so we need to use a
13+ different one, -windowgeometry
14+ * Make "Recent" translatable and update pot file
15+
16+ [ Mirco Müller ]
17+ * Make visual queue of (up to five) snap-decisions contract and expand
18+ according to visual design-spec.
19+
20+ [ Michael Terry ]
21+ * Pass user's preference for auto-brightness on to powerd. (LP:
22+ #1273174)
23+
24+ [ Michael Zanetti ]
25+ * allow executing a single test function example: make testShell
26+ FUNCTION="Shell::test_background"
27+
28+ -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Thu, 27 Mar 2014 12:38:21 +0000
29+
1unity8 (7.84+14.04.20140324.4-0ubuntu1) trusty; urgency=low
30unity8 (7.84+14.04.20140324.4-0ubuntu1) trusty; urgency=low
2
31
3 [ Michal Hruby ]
32 [ Michal Hruby ]
plugins/Powerd/CMakeLists.txt+8
@@ -1,4 +1,11 @@
1include(Plugins)
1include(Plugins)
2+include(FindPkgConfig)
3+
4+pkg_search_module(GIO REQUIRED gio-2.0)
5+
6+include_directories(
7+ ${GIO_INCLUDE_DIRS}
8+)
2
9
3add_definitions(-DSM_BUSNAME=systemBus)
10add_definitions(-DSM_BUSNAME=systemBus)
4
11
@@ -8,6 +15,7 @@ add_library(Powerd-qml MODULE
8 )
15 )
9
16
10qt5_use_modules(Powerd-qml DBus Qml)
17qt5_use_modules(Powerd-qml DBus Qml)
18+target_link_libraries(Powerd-qml ${GIO_LDFLAGS})
11
19
12export_qmlfiles(Powerd Powerd)
20export_qmlfiles(Powerd Powerd)
13export_qmlplugin(Powerd 0.1 Powerd TARGETS Powerd-qml)
21export_qmlplugin(Powerd 0.1 Powerd TARGETS Powerd-qml)
plugins/Powerd/Powerd.cpp+17
@@ -17,6 +17,13 @@
17 */
17 */
18
18
19#include "Powerd.h"
19#include "Powerd.h"
20+#include <QDBusPendingCall>
21+
22+void autoBrightnessChanged(GSettings *settings, const gchar *key, QDBusInterface *powerd)
23+{
24+ bool value = g_settings_get_boolean(settings, key);
25+ powerd->asyncCall("userAutobrightnessEnable", QVariant(value));
26+}
20
27
21Powerd::Powerd(QObject* parent)
28Powerd::Powerd(QObject* parent)
22 : QObject(parent),
29 : QObject(parent),
@@ -33,4 +40,14 @@ Powerd::Powerd(QObject* parent)
33 "DisplayPowerStateChange",
40 "DisplayPowerStateChange",
34 this,
41 this,
35 SIGNAL(displayPowerStateChange(int, unsigned int)));
42 SIGNAL(displayPowerStateChange(int, unsigned int)));
43+
44+ systemSettings = g_settings_new("com.ubuntu.touch.system");
45+ g_signal_connect(systemSettings, "changed::auto-brightness", G_CALLBACK(autoBrightnessChanged), powerd);
46+ autoBrightnessChanged(systemSettings, "auto-brightness", powerd);
47+}
48+
49+Powerd::~Powerd()
50+{
51+ g_signal_handlers_disconnect_by_data(systemSettings, powerd);
52+ g_object_unref(systemSettings);
36}
53}
plugins/Powerd/Powerd.h+3
@@ -20,6 +20,7 @@
20#ifndef UNITY_POWERD_H
20#ifndef UNITY_POWERD_H
21#define UNITY_POWERD_H
21#define UNITY_POWERD_H
22
22
23+#include <gio/gio.h>
23#include <QtCore/QObject>
24#include <QtCore/QObject>
24#include <QtDBus/QDBusInterface>
25#include <QtDBus/QDBusInterface>
25
26
@@ -43,12 +44,14 @@ public:
43 };
44 };
44
45
45 explicit Powerd(QObject *parent = 0);
46 explicit Powerd(QObject *parent = 0);
47+ ~Powerd();
46
48
47Q_SIGNALS:
49Q_SIGNALS:
48 void displayPowerStateChange(int status, unsigned int flags);
50 void displayPowerStateChange(int status, unsigned int flags);
49
51
50private:
52private:
51 QDBusInterface *powerd;
53 QDBusInterface *powerd;
54+ GSettings *systemSettings;
52};
55};
53
56
54#endif
57#endif
po/am.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ar.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ast.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/az.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/bg.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/bs.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ca.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ckb.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/cs.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/da.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/de.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/el.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/en_AU.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/en_GB.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/eo.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/es.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/eu.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/fa.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/fi.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/fo.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/fr.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/gd.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/gl.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/he.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/hi.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/hr.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/hu.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/hy.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/id.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/is.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/it.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ja.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/km.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/kn.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ko.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ky.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/lo.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/lt.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/lv.po+2−2
@@ -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%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n"
17"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2;\n"
18−"X-Launchpad-Export-Date: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ml.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/mr.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ms.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/my.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/nb.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/nl.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/pl.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/pt.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/pt_BR.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ro.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ru.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/shn.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/si.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/sl.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/sq.po+2−2
@@ -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: 2014-03-18 06:25+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/sr.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/sv.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/sw.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ta.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20"Language: ta\n"
20"Language: ta\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
po/te.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/tr.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/ug.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/uk.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
19+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
20−"X-Generator: Launchpad (build 16963)\n"
20+"X-Generator: Launchpad (build 16967)\n"
21
21
22#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:43
23#: plugins/Unity/Launcher/launcheritem.cpp:73
23#: plugins/Unity/Launcher/launcheritem.cpp:73
po/unity8.pot+14−28
@@ -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: 2014-02-13 18:37+0000\n"
11+"POT-Creation-Date: 2014-03-25 16:48+0100\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"
@@ -16,7 +16,6 @@ msgstr ""
16"MIME-Version: 1.0\n"
16"MIME-Version: 1.0\n"
17"Content-Type: text/plain; charset=CHARSET\n"
17"Content-Type: text/plain; charset=CHARSET\n"
18"Content-Transfer-Encoding: 8bit\n"
18"Content-Transfer-Encoding: 8bit\n"
19−"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
20
19
21#: plugins/Unity/Launcher/launcheritem.cpp:43
20#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
21#: plugins/Unity/Launcher/launcheritem.cpp:73
@@ -73,7 +72,7 @@ msgid ""
73"phone<br><br>Tap on the screen to start"
72"phone<br><br>Tap on the screen to start"
74msgstr ""
73msgstr ""
75
74
76−#: qml/Components/PageHeader.qml:340
75+#: qml/Components/PageHeader.qml:365
77msgid "Recent searches"
76msgid "Recent searches"
78msgstr ""
77msgstr ""
79
78
@@ -81,28 +80,19 @@ msgstr ""
81msgid "See more"
80msgid "See more"
82msgstr ""
81msgstr ""
83
82
84−#: qml/Components/SeeMore.qml:57
83+#: qml/Components/SeeMore.qml:58
85msgid "See less"
84msgid "See less"
86msgstr ""
85msgstr ""
87
86
88−#: qml/Dash/Apps/AppPreview.qml:136 qml/Dash/Previews/PreviewRating.qml:70
87+#: qml/Dash/DashApps.qml:38
89−msgid "Rate this"
88+msgid "Recent"
90msgstr ""
89msgstr ""
91
90
92−#. TRANSLATORS: Number of persons who rated this app/video/whatever
91+#: qml/Dash/PreviewListView.qml:52
93−#: qml/Dash/Previews/Header.qml:93
94#, qt-format
92#, qt-format
95−msgid "(%1)"
93+msgid "%1 Preview"
96msgstr ""
94msgstr ""
97
95
98−#. TRANSLATORS: Number of persons who wrote reviews for this app/video/whatever
99−#: qml/Dash/Previews/Header.qml:105
100−#, qt-format
101−msgid "%1 review"
102−msgid_plural "%1 reviews"
103−msgstr[0] ""
104−msgstr[1] ""
105−
106#: qml/Dash/Previews/PreviewActionCombo.qml:34
96#: qml/Dash/Previews/PreviewActionCombo.qml:34
107msgid "More..."
97msgid "More..."
108msgstr ""
98msgstr ""
@@ -111,20 +101,16 @@ msgstr ""
111msgid "Less..."
101msgid "Less..."
112msgstr ""
102msgstr ""
113
103
114−#: qml/Dash/Previews/PreviewRating.qml:114 qml/Dash/Previews/Reviews.qml:74
104+#: qml/Dash/Previews/PreviewRatingInput.qml:81
115−msgid "Add a review"
105+msgid "Rate this"
116−msgstr ""
117−
118−#: qml/Dash/Previews/PreviewRating.qml:153 qml/Dash/Previews/Reviews.qml:121
119−msgid "Send"
120msgstr ""
106msgstr ""
121
107
122−#: qml/Dash/Previews/Reviews.qml:86
108+#: qml/Dash/Previews/PreviewRatingInput.qml:126
123−msgid "Review"
109+msgid "Add a review"
124msgstr ""
110msgstr ""
125
111
126−#: qml/Dash/Previews/Reviews.qml:139
112+#: qml/Dash/Previews/PreviewRatingInput.qml:166
127−msgid "Comments:"
113+msgid "Send"
128msgstr ""
114msgstr ""
129
115
130#: qml/Greeter/Lockscreen.qml:149
116#: qml/Greeter/Lockscreen.qml:149
@@ -172,7 +158,7 @@ msgstr ""
172msgid "Search"
158msgid "Search"
173msgstr ""
159msgstr ""
174
160
175−#: qml/Shell.qml:440
161+#: qml/Shell.qml:417
176#, qt-format
162#, qt-format
177msgid "Please enter %1"
163msgid "Please enter %1"
178msgstr ""
164msgstr ""
po/vi.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/xh.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/zh_CN.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/zh_HK.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
po/zh_TW.po+2−2
@@ -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: 2014-03-18 06:26+0000\n"
18+"X-Launchpad-Export-Date: 2014-03-27 08:17+0000\n"
19−"X-Generator: Launchpad (build 16963)\n"
19+"X-Generator: Launchpad (build 16967)\n"
20
20
21#: plugins/Unity/Launcher/launcheritem.cpp:43
21#: plugins/Unity/Launcher/launcheritem.cpp:43
22#: plugins/Unity/Launcher/launcheritem.cpp:73
22#: plugins/Unity/Launcher/launcheritem.cpp:73
qml/Components/LazyImage.qml+2−2
@@ -99,10 +99,10 @@ Item {
99 horizontalAlignment: Image.AlignHCenter
99 horizontalAlignment: Image.AlignHCenter
100 verticalAlignment: Image.AlignVCenter
100 verticalAlignment: Image.AlignVCenter
101 sourceSize.width: root.scaleTo == "width" ? root.width
101 sourceSize.width: root.scaleTo == "width" ? root.width
102− : root.scaleTo == "fit" && root.width < root.height ? root.width
102+ : root.scaleTo == "fit" && root.width <= root.height ? root.width
103 : 0
103 : 0
104 sourceSize.height: root.scaleTo == "height" ? root.height
104 sourceSize.height: root.scaleTo == "height" ? root.height
105− : root.scale == "fit" && root.height < root.width ? root.height
105+ : root.scaleTo == "fit" && root.height <= root.width ? root.height
106 : 0
106 : 0
107 }
107 }
108 }
108 }
qml/Dash/DashApps.qml+1−1
@@ -34,7 +34,7 @@ GenericScopeView {
34 }
34 }
35
35
36 onScopeChanged: {
36 onScopeChanged: {
37− scopeView.scope.categories.addSpecialCategory("running.apps.category", "Recent", "", "{ \"template\": { \"category-layout\": \"running-apps\" } }", countObject);
37+ scopeView.scope.categories.addSpecialCategory("running.apps.category", i18n.tr("Recent"), "", "{ \"template\": { \"category-layout\": \"running-apps\" } }", countObject);
38 enableHeightBehaviorOnNextCreation = scopeView.runningApps.count === 0
38 enableHeightBehaviorOnNextCreation = scopeView.runningApps.count === 0
39 }
39 }
40}
40}
qml/Notifications/Notification.qml+61−4
@@ -39,20 +39,72 @@ Item {
39
39
40 fullscreen: false
40 fullscreen: false
41 objectName: "background"
41 objectName: "background"
42− implicitHeight: type !== Notification.PlaceHolder ? (fullscreen ? maxHeight : contentColumn.height + contentColumn.spacing * 4) : 0
42+ implicitHeight: type !== Notification.PlaceHolder ? (fullscreen ? maxHeight : contentColumn.height + contentColumn.spacing * 2) : 0
43
43
44 color: Qt.rgba(0.132, 0.117, 0.109, 0.97)
44 color: Qt.rgba(0.132, 0.117, 0.109, 0.97)
45 opacity: 0
45 opacity: 0
46
46
47+ state: {
48+ var result = "";
49+
50+ if (type == Notification.SnapDecision) {
51+ if (ListView.view.currentIndex == index) {
52+ result = "expanded";
53+ } else {
54+ if (ListView.view.count > 2) {
55+ if (ListView.view.currentIndex == -1 && index == 1) {
56+ result = "expanded";
57+ } else {
58+ result = "contracted";
59+ }
60+ } else {
61+ result = "expanded";
62+ }
63+ }
64+ }
65+
66+ return result;
67+ }
68+
69+ Behavior on height {
70+ id: normalHeightBehavior
71+
72+ //enabled: menuItemFactory.progress == 1
73+ enabled: true
74+ SequentialAnimation {
75+ PauseAnimation {
76+ duration: UbuntuAnimation.SnapDuration
77+ }
78+ UbuntuNumberAnimation {
79+ duration: UbuntuAnimation.SnapDuration
80+ }
81+ }
82+ }
83+
84+ states:[
85+ State {
86+ name: "contracted"
87+ PropertyChanges {target: notification; height: units.gu(8)}
88+ },
89+ State {
90+ name: "expanded"
91+ PropertyChanges {target: notification; height: implicitHeight}
92+ }
93+ ]
94+
47 clip: fullscreen ? false : true
95 clip: fullscreen ? false : true
96+
48 visible: type != Notification.PlaceHolder
97 visible: type != Notification.PlaceHolder
49
98
50 UbuntuShape {
99 UbuntuShape {
51 id: shapedBack
100 id: shapedBack
52
101
53 visible: !fullscreen
102 visible: !fullscreen
103+ anchors {
54− anchors.fill: parent
104+ fill: parent
105+ leftMargin: notification.margins
55− anchors.margins: notification.margins
106+ rightMargin: notification.margins
107+ }
56 color: parent.color
108 color: parent.color
57 opacity: parent.opacity
109 opacity: parent.opacity
58 radius: "medium"
110 radius: "medium"
@@ -104,17 +156,20 @@ Item {
104 MouseArea {
156 MouseArea {
105 id: interactiveArea
157 id: interactiveArea
106
158
107− anchors.fill: contentColumn
159+ anchors.fill: parent
108 objectName: "interactiveArea"
160 objectName: "interactiveArea"
109 onClicked: {
161 onClicked: {
110 if (notification.type == Notification.Interactive) {
162 if (notification.type == Notification.Interactive) {
111 notification.notification.invokeAction(actionRepeater.itemAt(0).actionId)
163 notification.notification.invokeAction(actionRepeater.itemAt(0).actionId)
164+ } else {
165+ notificationList.currentIndex = index;
112 }
166 }
113 }
167 }
114 }
168 }
115
169
116 Column {
170 Column {
117 id: contentColumn
171 id: contentColumn
172+ objectName: "contentColumn"
118
173
119 anchors {
174 anchors {
120 left: parent.left
175 left: parent.left
@@ -207,6 +262,8 @@ Item {
207 model: unityMenuModel
262 model: unityMenuModel
208
263
209 NotificationMenuItemFactory {
264 NotificationMenuItemFactory {
265+ id: menuItemFactory
266+
210 anchors.left: parent.left; anchors.right: parent.right
267 anchors.left: parent.left; anchors.right: parent.right
211
268
212 menuModel: unityMenuModel
269 menuModel: unityMenuModel
qml/Notifications/Notifications.qml+4
@@ -25,6 +25,9 @@ ListView {
25 interactive: false
25 interactive: false
26
26
27 property real margin
27 property real margin
28+ spacing: delegate.fullscreen ? 0 : units.gu(.5)
29+
30+ currentIndex: (currentIndex < 1 && count > 1) ? 1 : -1
28
31
29 delegate: Notification {
32 delegate: Notification {
30 objectName: "notification" + index
33 objectName: "notification" + index
@@ -75,6 +78,7 @@ ListView {
75 displaced: Transition {
78 displaced: Transition {
76 UbuntuNumberAnimation {
79 UbuntuNumberAnimation {
77 properties: "x,y"
80 properties: "x,y"
81+ duration: UbuntuAnimation.SnapDuration
78 }
82 }
79 }
83 }
80}
84}
src/ApplicationArguments.h+2−2
@@ -29,8 +29,8 @@ class ApplicationArguments : public QObject
29 Q_OBJECT
29 Q_OBJECT
30public:
30public:
31 ApplicationArguments(const QStringList& args) {
31 ApplicationArguments(const QStringList& args) {
32− if (args.contains(QLatin1String("-geometry")) && args.size() > args.indexOf(QLatin1String("-geometry")) + 1) {
32+ if (args.contains(QLatin1String("-windowgeometry")) && args.size() > args.indexOf(QLatin1String("-windowgeometry")) + 1) {
33− QStringList geometryArg = args.at(args.indexOf(QLatin1String("-geometry")) + 1).split('x');
33+ QStringList geometryArg = args.at(args.indexOf(QLatin1String("-windowgeometry")) + 1).split('x');
34 if (geometryArg.size() == 2) {
34 if (geometryArg.size() == 2) {
35 m_size.rwidth() = geometryArg.at(0).toInt();
35 m_size.rwidth() = geometryArg.at(0).toInt();
36 m_size.rheight() = geometryArg.at(1).toInt();
36 m_size.rheight() = geometryArg.at(1).toInt();
src/Panel/Indicators/client/indicatorsclient.cpp+2−2
@@ -49,8 +49,8 @@ IndicatorsClient::IndicatorsClient(int &argc, char **argv)
49
49
50 m_view->setSource(QUrl("IndicatorsClient.qml"));
50 m_view->setSource(QUrl("IndicatorsClient.qml"));
51 m_view->setResizeMode(QQuickView::SizeRootObjectToView);
51 m_view->setResizeMode(QQuickView::SizeRootObjectToView);
52− if (args.contains(QLatin1String("-geometry")) && args.size() > args.indexOf(QLatin1String("-geometry")) + 1) {
52+ if (args.contains(QLatin1String("-windowgeometry")) && args.size() > args.indexOf(QLatin1String("-windowgeometry")) + 1) {
53− QStringList geometryArg = args.at(args.indexOf(QLatin1String("-geometry")) + 1).split('x');
53+ QStringList geometryArg = args.at(args.indexOf(QLatin1String("-windowgeometry")) + 1).split('x');
54 if (geometryArg.size() == 2) {
54 if (geometryArg.size() == 2) {
55 m_view->resize(geometryArg.at(0).toInt(), geometryArg.at(1).toInt());
55 m_view->resize(geometryArg.at(0).toInt(), geometryArg.at(1).toInt());
56 }
56 }
tests/autopilot/unity8/shell/tests/__init__.py+1−1
@@ -181,7 +181,7 @@ class UnityTestCase(AutopilotTestCase):
181 )
181 )
182 geo_string = "%dx%d" % (width, height)
182 geo_string = "%dx%d" % (width, height)
183 self.unity_geometry_args = [
183 self.unity_geometry_args = [
184− '-geometry',
184+ '-windowgeometry',
185 geo_string,
185 geo_string,
186 '-frameless',
186 '-frameless',
187 '-mousetouch'
187 '-mousetouch'
tests/qmltests/CMakeLists.txt+1
@@ -72,6 +72,7 @@ add_qml_test(Hud Hud)
72add_qml_test(Hud Result)
72add_qml_test(Hud Result)
73add_qml_test(Launcher Launcher IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
73add_qml_test(Launcher Launcher IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
74add_qml_test(Notifications Notifications IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/plugins)
74add_qml_test(Notifications Notifications IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/plugins)
75+add_qml_test(Notifications VisualSnapDecisionsQueue IMPORT_PATHS ${qmltest_DEFAULT_IMPORT_PATHS} ${CMAKE_BINARY_DIR}/plugins)
75add_qml_test(Panel IndicatorRow)
76add_qml_test(Panel IndicatorRow)
76add_qml_test(Panel Indicators IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
77add_qml_test(Panel Indicators IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
77add_qml_test(Panel MenuContent IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
78add_qml_test(Panel MenuContent IMPORT_PATHS ${CMAKE_BINARY_DIR}/plugins ${qmltest_DEFAULT_IMPORT_PATHS})
tests/qmltests/Components/tst_LazyImage.qml+6
@@ -168,6 +168,12 @@ Rectangle {
168 compare(data.image.initialHeight, data.initialHeight);
168 compare(data.image.initialHeight, data.initialHeight);
169 compare(data.image.initialWidth, data.initialWidth);
169 compare(data.image.initialWidth, data.initialWidth);
170
170
171+ // check the sourceSize
172+ var sourceHeight = (data.image.scaleTo === "height" || (data.image.scaleTo === "fit" && data.height <= data.width)) ? data.height : 0
173+ var sourceWidth = (data.image.scaleTo === "width" || (data.image.scaleTo === "fit" && data.width <= data.height)) ? data.width : 0
174+ compare(data.image.sourceSize.height, sourceHeight);
175+ compare(data.image.sourceSize.width, sourceWidth);
176+
171 // check the shape dimensions
177 // check the shape dimensions
172 var shape = findChild(data.image, "shape");
178 var shape = findChild(data.image, "shape");
173 compare(shape.width, data.imageWidth);
179 compare(shape.width, data.imageWidth);
tests/qmltests/Notifications/tst_Notifications.qml+27−13
@@ -43,6 +43,21 @@ Row {
43 function getRaw(id) {
43 function getRaw(id) {
44 return mockNotification.createObject(mockModel)
44 return mockNotification.createObject(mockModel)
45 }
45 }
46+
47+ // add the default/PlaceHolder notification to the model
48+ Component.onCompleted: {
49+ var n = {
50+ type: Notification.PlaceHolder,
51+ hints: {},
52+ summary: "",
53+ body: "",
54+ icon: "",
55+ secondaryIcon: "",
56+ actions: []
57+ }
58+
59+ append(n)
60+ }
46 }
61 }
47
62
48 function addSnapDecisionNotification() {
63 function addSnapDecisionNotification() {
@@ -376,6 +391,8 @@ Row {
376 var notification = findChild(notifications, "notification" + (mockModel.count - 1))
391 var notification = findChild(notifications, "notification" + (mockModel.count - 1))
377 verify(notification !== undefined, "notification wasn't found");
392 verify(notification !== undefined, "notification wasn't found");
378
393
394+ waitForRendering(notification);
395+
379 var icon = findChild(notification, "icon")
396 var icon = findChild(notification, "icon")
380 var shapedIcon = findChild(notification, "shapedIcon")
397 var shapedIcon = findChild(notification, "shapedIcon")
381 var nonShapedIcon = findChild(notification, "nonShapedIcon")
398 var nonShapedIcon = findChild(notification, "nonShapedIcon")
@@ -384,7 +401,6 @@ Row {
384 var summaryLabel = findChild(notification, "summaryLabel")
401 var summaryLabel = findChild(notification, "summaryLabel")
385 var bodyLabel = findChild(notification, "bodyLabel")
402 var bodyLabel = findChild(notification, "bodyLabel")
386 var buttonRow = findChild(notification, "buttonRow")
403 var buttonRow = findChild(notification, "buttonRow")
387− waitForRendering(buttonRow)
388
404
389 compare(icon.visible, data.iconVisible, "avatar-icon visibility is incorrect")
405 compare(icon.visible, data.iconVisible, "avatar-icon visibility is incorrect")
390 compare(shapedIcon.visible, data.shapedIcon, "shaped-icon visibility is incorrect")
406 compare(shapedIcon.visible, data.shapedIcon, "shaped-icon visibility is incorrect")
@@ -407,12 +423,9 @@ Row {
407 var buttonCancel = findChild(buttonRow, "button1")
423 var buttonCancel = findChild(buttonRow, "button1")
408 var buttonAccept = findChild(buttonRow, "button0")
424 var buttonAccept = findChild(buttonRow, "button0")
409
425
410− waitForRendering(notification)
411−
412 // only test the left/cancel-button if two actions have been passed in
426 // only test the left/cancel-button if two actions have been passed in
413 if (data.actions.length == 2) {
427 if (data.actions.length == 2) {
414− mouseClick(buttonCancel, buttonCancel.width / 2, buttonCancel.height / 2)
428+ tryCompareFunction(function() { mouseClick(buttonCancel, buttonCancel.width / 2, buttonCancel.height / 2); return actionSpy.signalArguments.length > 0; }, true);
415− actionSpy.wait()
416 compare(actionSpy.signalArguments[0][0], data.actions[1]["id"], "got wrong id for negative action")
429 compare(actionSpy.signalArguments[0][0], data.actions[1]["id"], "got wrong id for negative action")
417 actionSpy.clear()
430 actionSpy.clear()
418 }
431 }
@@ -421,38 +434,39 @@ Row {
421 verify(buttonAccept.gradient === data.buttonTinted ? UbuntuColors.orangeGradient : UbuntuColors.greyGradient, "button has the wrong color-tint")
434 verify(buttonAccept.gradient === data.buttonTinted ? UbuntuColors.orangeGradient : UbuntuColors.greyGradient, "button has the wrong color-tint")
422
435
423 // click the positive/right button
436 // click the positive/right button
424− mouseClick(buttonAccept, buttonAccept.width / 2, buttonAccept.height / 2)
437+ tryCompareFunction(function() { mouseClick(buttonAccept, buttonAccept.width / 2, buttonAccept.height / 2); return actionSpy.signalArguments.length > 0; }, true);
425− actionSpy.wait()
426 compare(actionSpy.signalArguments[0][0], data.actions[0]["id"], "got wrong id positive action")
438 compare(actionSpy.signalArguments[0][0], data.actions[0]["id"], "got wrong id positive action")
427 actionSpy.clear()
439 actionSpy.clear()
440+ waitForRendering(notification)
428
441
429 // check if there's more than one negative choice
442 // check if there's more than one negative choice
430 if (data.actions.length > 2) {
443 if (data.actions.length > 2) {
431− var initialHeight = notification.height
444+ var initialHeight = notification.implicitHeight
432
445
433 // click to expand
446 // click to expand
434 mouseClick(buttonCancel, buttonCancel.width / 2, buttonCancel.height / 2)
447 mouseClick(buttonCancel, buttonCancel.width / 2, buttonCancel.height / 2)
435− waitForRendering(notification)
448+ var contentColumn = findChild(notification, "contentColumn")
449+ var collapsedContentColumnHeight = contentColumn.height;
450+ // Waiting for the inner column to change height because buttons appear
451+ tryCompareFunction(function() { return collapsedContentColumnHeight != contentColumn.height; }, true);
452+ // Waiting for notification to reach its target size
453+ tryCompare(notification, "height", contentColumn.height + contentColumn.spacing * 2)
436 actionSpy.clear()
454 actionSpy.clear()
437
455
438 // test the additional buttons
456 // test the additional buttons
439 for (var i = 2; i < data.actions.length; i++) {
457 for (var i = 2; i < data.actions.length; i++) {
440− waitForRendering(notification)
441 var buttonColumn = findChild(notification, "buttonColumn")
458 var buttonColumn = findChild(notification, "buttonColumn")
442 var button = findChild(buttonColumn, "button" + i)
459 var button = findChild(buttonColumn, "button" + i)
443 mouseClick(button, button.width / 2, button.height / 2)
460 mouseClick(button, button.width / 2, button.height / 2)
444− actionSpy.wait()
445 compare(actionSpy.signalArguments[0][0], data.actions[i]["id"], "got wrong id for additional negative action")
461 compare(actionSpy.signalArguments[0][0], data.actions[i]["id"], "got wrong id for additional negative action")
446 actionSpy.clear()
462 actionSpy.clear()
447 }
463 }
448
464
449 // click to collapse
465 // click to collapse
450 mouseClick(buttonCancel, buttonCancel.width / 2, buttonCancel.height / 2)
466 mouseClick(buttonCancel, buttonCancel.width / 2, buttonCancel.height / 2)
451− waitForRendering(notification)
452 tryCompare(notification, "height", initialHeight)
467 tryCompare(notification, "height", initialHeight)
453 } else {
468 } else {
454 mouseClick(buttonCancel, buttonCancel.width / 2, buttonCancel.height / 2)
469 mouseClick(buttonCancel, buttonCancel.width / 2, buttonCancel.height / 2)
455− actionSpy.wait()
456 compare(actionSpy.signalArguments[0][0], data.actions[1]["id"], "got wrong id for negative action")
470 compare(actionSpy.signalArguments[0][0], data.actions[1]["id"], "got wrong id for negative action")
457 }
471 }
458 }
472 }
tests/qmltests/Notifications/tst_VisualSnapDecisionsQueue.qmlnew file+237
@@ -0,0 +1,237 @@
1+/*
2+ * Copyright (C) 2014 Canonical, Ltd.
3+ *
4+ * This program is free software; you can redistribute it and/or modify
5+ * it under the terms of the GNU General Public License as published by
6+ * the Free Software Foundation; version 3.
7+ *
8+ * This program is distributed in the hope that it will be useful,
9+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
10+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11+ * GNU General Public License for more details.
12+ *
13+ * You should have received a copy of the GNU General Public License
14+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
15+ */
16+
17+import QtQuick 2.0
18+import QtTest 1.0
19+import ".."
20+import "../../../qml/Notifications"
21+import Ubuntu.Components 0.1
22+import Unity.Test 0.1
23+import Unity.Notifications 1.0
24+
25+Row {
26+ id: rootRow
27+
28+ Component {
29+ id: mockNotification
30+
31+ QtObject {
32+ function invokeAction(actionId) {
33+ mockModel.actionInvoked(actionId)
34+ }
35+ }
36+ }
37+
38+ ListModel {
39+ id: mockModel
40+
41+ signal actionInvoked(string actionId)
42+
43+ function getRaw(id) {
44+ return mockNotification.createObject(mockModel)
45+ }
46+
47+ // add the default/PlaceHolder notification to the model
48+ Component.onCompleted: {
49+ var n = {
50+ type: Notification.PlaceHolder,
51+ hints: {},
52+ summary: "",
53+ body: "",
54+ icon: "",
55+ secondaryIcon: "",
56+ actions: []
57+ }
58+
59+ append(n)
60+ }
61+ }
62+
63+ function addSomeSnapDecisionNotifications() {
64+ var n = [{
65+ type: Notification.SnapDecision,
66+ hints: {"x-canonical-private-button-tint": "true"},
67+ summary: "Incoming call",
68+ body: "Frank Zappa\n+44 (0)7736 027340",
69+ icon: "../graphics/avatars/funky.png",
70+ secondaryIcon: "../graphics/applicationIcons/phone-app.png",
71+ actions: [{ id: "pickup_id", label: "Pick up"},
72+ { id: "decline_1_id", label: "Decline"},
73+ { id: "decline_2_id", label: "Can't talk now, what's up?"},
74+ { id: "decline_3_id", label: "I call you back."},
75+ { id: "decline_4_id", label: "Send custom message..."}]
76+ },
77+ {
78+ type: Notification.SnapDecision,
79+ hints: {"x-canonical-private-button-tint": "true",
80+ "x-canonical-non-shaped-icon": "true"},
81+ summary: "Incoming file",
82+ body: "Frank would like to send you the file: essay.pdf.",
83+ icon: "image://theme/search",
84+ actions: [{ id: "accept_id", label: "Accept"},
85+ { id: "reject_id", label: "Reject"}]
86+ },
87+ {
88+ type: Notification.SnapDecision,
89+ hints: {"x-canonical-private-button-tint": "true",
90+ "x-canonical-non-shaped-icon": "true"},
91+ summary: "Authentication error",
92+ body: "Please authorise Ubuntu to access your Google account.",
93+ icon: "image://theme/search",
94+ actions: [{ id: "settings_id", label: "Settings..."},
95+ { id: "cancel_id", label: "Cancel"}]
96+ },
97+ {
98+ type: Notification.SnapDecision,
99+ hints: {"x-canonical-private-button-tint": "true",
100+ "x-canonical-non-shaped-icon": "true"},
101+ summary: "Morning alarm",
102+ body: "It's 6:30... time to get up!",
103+ icon: "image://theme/search",
104+ actions: [{ id: "ok_reply", label: "Ok"},
105+ { id: "snooze_id", label: "Snooze"}]
106+ },
107+ {
108+ type: Notification.SnapDecision,
109+ hints: {"x-canonical-private-button-tint": "true"},
110+ summary: "Jenny Sample",
111+ body: "Hey there! Have you been watching the latest episode of that TV-show I told you about last week?",
112+ icon: "../graphics/avatars/amanda.png",
113+ secondaryIcon: "../graphics/applicationIcons/messages-app.png",
114+ actions: [{ id: "reply_id", label: "Reply"},
115+ { id: "ignore_id", label: "Ignore"}]
116+ }]
117+
118+ mockModel.append(n)
119+ }
120+
121+ function clearNotifications() {
122+ // remove all but the first (PlaceHolder) notification
123+ mockModel.remove(1, mockModel.count - 1)
124+ }
125+
126+ function removeTopMostNotification() {
127+ // leave real/first (PlaceHolder) notification untouched
128+ if (mockModel.count > 1)
129+ mockModel.remove(1)
130+ }
131+
132+ Rectangle {
133+ id: notificationsRect
134+
135+ width: units.gu(40)
136+ height: units.gu(71)
137+
138+ MouseArea{
139+ id: clickThroughCatcher
140+
141+ anchors.fill: parent
142+ }
143+
144+ Notifications {
145+ id: notifications
146+
147+ margin: units.gu(1)
148+
149+ anchors.fill: parent
150+ model: mockModel
151+ }
152+ }
153+
154+ Rectangle {
155+ id: interactiveControls
156+
157+ width: units.gu(30)
158+ height: units.gu(81)
159+ color: "grey"
160+
161+ Column {
162+ spacing: units.gu(1)
163+ anchors.fill: parent
164+ anchors.margins: units.gu(1)
165+
166+ Button {
167+ width: parent.width
168+ text: "add some snap-decisions"
169+ onClicked: addSomeSnapDecisionNotifications()
170+ }
171+
172+ Button {
173+ width: parent.width
174+ text: "remove top-most notification"
175+ onClicked: removeTopMostNotification()
176+ }
177+
178+ Button {
179+ width: parent.width
180+ text: "clear model"
181+ onClicked: clearNotifications()
182+ }
183+ }
184+ }
185+
186+ UnityTestCase {
187+ id: root
188+ name: "VisualQueueTest"
189+ when: windowShown
190+
191+ function test_VisualSnapDecisionsQueue() {
192+ // populate model with some mock notifications
193+ addSomeSnapDecisionNotifications();
194+
195+ // make sure the view is properly updated before going on
196+ waitForRendering(notifications);
197+
198+ var snap_decision = [findChild(notifications, "notification1"),
199+ findChild(notifications, "notification2"),
200+ findChild(notifications, "notification3"),
201+ findChild(notifications, "notification4"),
202+ findChild(notifications, "notification5")]
203+
204+ for (var index = 0; index < snap_decision.length; index++) {
205+ verify(snap_decision[index] !== undefined, index + ". snap-decision wasn't found");
206+ }
207+
208+ // check initial states once all five snap-decisions were appended to the model
209+ compare(snap_decision[0].state, "expanded", "state of first snap-decision is not expanded");
210+ for (var index = 1; index < snap_decision.length; index++) {
211+ compare(snap_decision[index].state, "contracted", "state of "+ index + ".snap-decision is not contracted");
212+ }
213+
214+ // click/tap on each snap-decision and verify only one is in expanded-state at any time
215+ for (var index = 0; index < snap_decision.length; index++) {
216+ mouseClick(snap_decision[index], snap_decision[index].width / 2, snap_decision[index].height / 2)
217+ for (var kindex = 0; kindex < snap_decision.length; kindex++) {
218+ if (kindex == index) {
219+ compare(snap_decision[kindex].state, "expanded", "state of "+ kindex + ".snap-decision is not expanded");
220+ } else {
221+ compare(snap_decision[kindex].state, "contracted", "state of "+ kindex + ".snap-decision is not contracted");
222+ }
223+ }
224+ }
225+
226+ // remove top-most and verify one of the remaining ones is still getting expanded
227+
228+ // make first snap-decision expand
229+ mouseClick(snap_decision[0], snap_decision[0].width / 2, snap_decision[0].height / 2);
230+
231+ for (var index = 1; index < snap_decision.length; index++) {
232+ removeTopMostNotification();
233+ compare(snap_decision[index].state, "expanded", "state of " + index + ". snap-decision is not expanded");
234+ }
235+ }
236+ }
237+}