Merge lp:~alecu/unity-scope-click/merge-devel into lp:unity-scope-click

Proposed by Alejandro J. Cura
Status: Merged
Approved by: dobey
Approved revision: no longer in the source branch.
Merged at revision: 267
Proposed branch: lp:~alecu/unity-scope-click/merge-devel
Merge into: lp:unity-scope-click
Diff against target: 12294 lines (+3416/-2035)
80 files modified
HACKING (+5/-0)
bin/CMakeLists.txt (+1/-1)
bin/enable-purchases (+44/-0)
data/CMakeLists.txt (+1/-1)
data/clickscope.ini.in.in (+1/-0)
data/update_schema.sh (+97/-0)
debian/changelog (+24/-0)
debian/control (+3/-1)
libclickscope/click/application.h (+5/-2)
libclickscope/click/departments-db.cpp (+61/-5)
libclickscope/click/departments-db.h (+7/-1)
libclickscope/click/download-manager.cpp (+52/-13)
libclickscope/click/download-manager.h (+11/-5)
libclickscope/click/interface.cpp (+32/-5)
libclickscope/click/network_access_manager.cpp (+8/-0)
libclickscope/click/package.cpp (+5/-0)
libclickscope/click/package.h (+2/-0)
libclickscope/click/preview.cpp (+84/-44)
libclickscope/click/preview.h (+30/-16)
libclickscope/click/webclient.cpp (+7/-3)
libclickscope/tests/fake_json.cpp (+11/-0)
libclickscope/tests/fake_json.h (+1/-0)
libclickscope/tests/test_departments-db.cpp (+34/-2)
libclickscope/tests/test_download_manager.cpp (+7/-4)
libclickscope/tests/test_index.cpp (+2/-0)
libclickscope/tests/test_preview.cpp (+142/-7)
libclickscope/tests/test_webclient.cpp (+7/-7)
po/am.po (+52/-47)
po/ar.po (+50/-44)
po/ast.po (+51/-45)
po/br.po (+51/-45)
po/ca.po (+61/-55)
po/da.po (+51/-45)
po/de.po (+71/-65)
po/el.po (+63/-57)
po/en_AU.po (+51/-45)
po/en_GB.po (+51/-45)
po/es.po (+51/-45)
po/eu.po (+51/-45)
po/fa.po (+52/-46)
po/fi.po (+51/-45)
po/fr.po (+69/-63)
po/gd.po (+51/-45)
po/gl.po (+52/-46)
po/he.po (+51/-45)
po/hu.po (+51/-45)
po/id.po (+50/-44)
po/is.po (+61/-55)
po/it.po (+52/-46)
po/ja.po (+213/-0)
po/km.po (+53/-48)
po/ko.po (+72/-67)
po/lv.po (+51/-45)
po/my.po (+50/-44)
po/nb.po (+51/-45)
po/nl.po (+53/-47)
po/pl.po (+51/-45)
po/pt.po (+51/-45)
po/pt_BR.po (+57/-51)
po/ro.po (+218/-0)
po/ru.po (+68/-61)
po/sl.po (+52/-46)
po/sv.po (+53/-47)
po/ug.po (+51/-45)
po/uk.po (+51/-45)
po/unity-scope-click.pot (+48/-42)
po/zh_CN.po (+50/-44)
po/zh_TW.po (+51/-45)
scope/clickapps/apps-query.cpp (+69/-15)
scope/clickapps/apps-query.h (+1/-2)
scope/clickapps/apps-scope.cpp (+3/-1)
scope/clickstore/store-query.cpp (+10/-5)
scope/clickstore/store-query.h (+0/-1)
scope/clickstore/store-scope.cpp (+7/-1)
scope/tests/CMakeLists.txt (+1/-0)
scope/tests/download_manager_tool/download_manager_tool.cpp (+10/-10)
scope/tests/download_manager_tool/download_manager_tool.h (+2/-2)
scope/tests/test_apps_query.cpp (+21/-6)
scope/tests/test_helpers.h (+2/-0)
scope/tests/test_store_scope.cpp (+68/-0)
To merge this branch: bzr merge lp:~alecu/unity-scope-click/merge-devel
Reviewer Review Type Date Requested Status
dobey (community) Approve
Review via email: mp+231450@code.launchpad.net

Commit message

* New upstream release.
  - Display Ubuntu logo in the header of apps scope. (LP: #1350610)
  - Pass the sha512 hash from the details webservice to download manager.
    (LP: #1330770)
  - Sort departments alphabetically. (LP: #1354044)
  - Exclude empty departments from the departments tree in Apps.
    (LP: #1350609)
  - Provide updated departments to match latest server changes. Bumped
    schema to 3.
  - New script to enable purchases in the scope. (LP: #1356419)
  - Enable QNetworkDiskCache for http GET requests. (LP: #1351212)
  - Query download manager for in-progress downloads. (LP: #1234965)
  - Only show extended info for apps from the store. (LP: #1350571)
  - Don't expand categories by default in the store. (LP: #1355221)
  - Do not use static const strings for translations. (LP: #1354501)
  - Change "All departments" to just "All". (LP: #1351536)
  - Localize the extra department title in the store. (LP: #1358790)
  - Updated translations.

To post a comment you must log in.
Revision history for this message
dobey (dobey) :
review: Approve
267. By Alejandro J. Cura

* New upstream release.
  - Display Ubuntu logo in the header of apps scope. (LP: #1350610)
  - Pass the sha512 hash from the details webservice to download manager.
    (LP: #1330770)
  - Sort departments alphabetically. (LP: #1354044)
  - Exclude empty departments from the departments tree in Apps.
    (LP: #1350609)
  - Provide updated departments to match latest server changes. Bumped
    schema to 3.
  - New script to enable purchases in the scope. (LP: #1356419)
  - Enable QNetworkDiskCache for http GET requests. (LP: #1351212)
  - Query download manager for in-progress downloads. (LP: #1234965)
  - Only show extended info for apps from the store. (LP: #1350571)
  - Don't expand categories by default in the store. (LP: #1355221)
  - Do not use static const strings for translations. (LP: #1354501)
  - Change "All departments" to just "All". (LP: #1351536)
  - Localize the extra department title in the store. (LP: #1358790)
  - Updated translations. Fixes: 1333797
Approved by: Rodney Dawes

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'HACKING'
2--- HACKING 2014-05-16 21:08:36 +0000
3+++ HACKING 2014-08-21 20:38:09 +0000
4@@ -65,3 +65,8 @@
5 $ make coverage-html
6
7 The html will be left on the coveragereport directory.
8+
9+Updating departments db
10+-----------------------
11+See tools/init-departments/README for details about how to re-create departments database
12+file found in data/departments.db.
13
14=== modified file 'bin/CMakeLists.txt'
15--- bin/CMakeLists.txt 2014-06-20 20:00:53 +0000
16+++ bin/CMakeLists.txt 2014-08-21 20:38:09 +0000
17@@ -1,1 +1,1 @@
18-install(PROGRAMS install-helper DESTINATION lib/unity-scope-click/)
19+install(PROGRAMS install-helper enable-purchases DESTINATION lib/unity-scope-click/)
20
21=== added file 'bin/enable-purchases'
22--- bin/enable-purchases 1970-01-01 00:00:00 +0000
23+++ bin/enable-purchases 2014-08-21 20:38:09 +0000
24@@ -0,0 +1,44 @@
25+#!/bin/sh
26+#
27+# Copyright (C) 2014 Canonical Ltd.
28+#
29+# This program is free software: you can redistribute it and/or modify it
30+# under the terms of the GNU General Public License version 3, as published
31+# by the Free Software Foundation.
32+#
33+# This program is distributed in the hope that it will be useful, but
34+# WITHOUT ANY WARRANTY; without even the implied warranties of
35+# MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
36+# PURPOSE. See the GNU General Public License for more details.
37+#
38+# You should have received a copy of the GNU General Public License along
39+# with this program. If not, see <http://www.gnu.org/licenses/>.
40+#
41+# In addition, as a special exception, the copyright holders give
42+# permission to link the code of portions of this program with the
43+# OpenSSL library under certain conditions as described in each
44+# individual source file, and distribute linked combinations
45+# including the two.
46+# You must obey the GNU General Public License in all respects
47+# for all of the code used other than OpenSSL. If you modify
48+# file(s) with this exception, you may extend this exception to your
49+# version of the file(s), but you are not obligated to do so. If you
50+# do not wish to do so, delete this exception statement from your
51+# version. If you delete this exception statement from all source
52+# files in the program, then also delete it here.
53+#
54+set -e
55+
56+CLICK_STORE_ENABLE_PURCHASES=1
57+
58+/sbin/initctl set-env --global CLICK_STORE_ENABLE_PURCHASES=$CLICK_STORE_ENABLE_PURCHASES
59+
60+gdbus call --session \
61+ --dest org.freedesktop.DBus \
62+ --object-path / \
63+ --method org.freedesktop.DBus.UpdateActivationEnvironment \
64+ "[{'CLICK_STORE_ENABLE_PURCHASES', '$CLICK_STORE_ENABLE_PURCHASES'}]"
65+
66+/sbin/restart scope-registry
67+
68+echo "Purchases enabled and scope-registry restarted."
69
70=== modified file 'data/CMakeLists.txt'
71--- data/CMakeLists.txt 2014-08-11 19:08:16 +0000
72+++ data/CMakeLists.txt 2014-08-21 20:38:09 +0000
73@@ -35,7 +35,7 @@
74 )
75
76 install(
77- FILES clickscope-screenshot.jpg apps-scope.png
78+ FILES clickscope-screenshot.jpg apps-scope.png ubuntu-logo.png
79 DESTINATION "${APPS_DATA_DIR}"
80 )
81
82
83=== modified file 'data/clickscope.ini.in.in'
84--- data/clickscope.ini.in.in 2014-08-07 13:30:34 +0000
85+++ data/clickscope.ini.in.in 2014-08-21 20:38:09 +0000
86@@ -7,4 +7,5 @@
87 _SearchHint=Search apps
88
89 [Appearance]
90+PageHeader.Logo=@APPS_DATA_DIR@/ubuntu-logo.png
91 LogoOverlayColor=#ffffffff
92
93=== modified file 'data/departments.db'
94Binary files data/departments.db 2014-08-05 17:12:54 +0000 and data/departments.db 2014-08-21 20:38:09 +0000 differ
95=== added file 'data/ubuntu-logo.png'
96Binary files data/ubuntu-logo.png 1970-01-01 00:00:00 +0000 and data/ubuntu-logo.png 2014-08-21 20:38:09 +0000 differ
97=== modified file 'data/update_schema.sh'
98--- data/update_schema.sh 2014-08-06 17:31:50 +0000
99+++ data/update_schema.sh 2014-08-21 20:38:09 +0000
100@@ -52,4 +52,101 @@
101 UPDATE meta SET value='2' WHERE name='version';
102 END TRANSACTION;
103 _UPDATE_TO_VER2
104+SCHEMA_VERSION=$(sqlite3 "$DBFILE" "SELECT value FROM meta WHERE name='version'")
105+fi
106+
107+if [ "x$SCHEMA_VERSION" = "x2" ]
108+then
109+ sqlite3 "$DBFILE" << _UPDATE_TO_VER3
110+ BEGIN TRANSACTION;
111+ UPDATE pkgmap SET deptid='developer-tools' WHERE deptid='3d';
112+ UPDATE pkgmap SET deptid='developer-tools' WHERE deptid='computing-robotics';
113+ UPDATE pkgmap SET deptid='developer-tools' WHERE deptid='debugging';
114+ UPDATE pkgmap SET deptid='developer-tools' WHERE deptid='electronics';
115+ UPDATE pkgmap SET deptid='developer-tools' WHERE deptid='engineering';
116+ UPDATE pkgmap SET deptid='developer-tools' WHERE deptid='ides';
117+ UPDATE pkgmap SET deptid='developer-tools' WHERE deptid='profiling';
118+ UPDATE pkgmap SET deptid='developer-tools' WHERE deptid='version-control';
119+ UPDATE pkgmap SET deptid='developer-tools' WHERE deptid='web-development';
120+ UPDATE pkgmap SET deptid='science-engineering' WHERE deptid='astronomy';
121+ UPDATE pkgmap SET deptid='science-engineering' WHERE deptid='biology';
122+ UPDATE pkgmap SET deptid='science-engineering' WHERE deptid='chemistry';
123+ UPDATE pkgmap SET deptid='science-engineering' WHERE deptid='geography';
124+ UPDATE pkgmap SET deptid='science-engineering' WHERE deptid='geology';
125+ UPDATE pkgmap SET deptid='science-engineering' WHERE deptid='mathematics';
126+ UPDATE pkgmap SET deptid='science-engineering' WHERE deptid='medicine';
127+ UPDATE pkgmap SET deptid='science-engineering' WHERE deptid='physics';
128+ UPDATE pkgmap SET deptid='games' WHERE deptid='board-games';
129+ UPDATE pkgmap SET deptid='games' WHERE deptid='card-games';
130+ UPDATE pkgmap SET deptid='games' WHERE deptid='puzzles';
131+ UPDATE pkgmap SET deptid='games' WHERE deptid='role-playing';
132+ UPDATE pkgmap SET deptid='books-comics' WHERE deptid='books-magazines';
133+ UPDATE pkgmap SET deptid='communication' WHERE deptid='chat';
134+ UPDATE pkgmap SET deptid='communication' WHERE deptid='file-sharing';
135+ UPDATE pkgmap SET deptid='communication' WHERE deptid='internet';
136+ UPDATE pkgmap SET deptid='communication' WHERE deptid='mail';
137+ UPDATE pkgmap SET deptid='communication' WHERE deptid='web-browsers';
138+ UPDATE pkgmap SET deptid='graphics' WHERE deptid='drawing';
139+ UPDATE pkgmap SET deptid='graphics' WHERE deptid='graphic-interface-design';
140+ UPDATE pkgmap SET deptid='graphics' WHERE deptid='photography';
141+ UPDATE pkgmap SET deptid='graphics' WHERE deptid='publishing';
142+ UPDATE pkgmap SET deptid='graphics' WHERE deptid='scanning-ocr';
143+ UPDATE pkgmap SET deptid='personalisation' WHERE deptid='localization';
144+ UPDATE pkgmap SET deptid='personalisation' WHERE deptid='themes-tweaks';
145+ UPDATE pkgmap SET deptid='productivity' WHERE deptid='office';
146+ UPDATE pkgmap SET deptid='music-audio' WHERE deptid='sound-video';
147+ UPDATE pkgmap SET deptid='universal-accessaccessibility' WHERE deptid='universal-access';
148+ UPDATE pkgmap SET deptid='accessories' WHERE deptid='viewers';
149+
150+ DELETE FROM depts;
151+ INSERT INTO depts (deptid,parentid) VALUES ('travel-local', '');
152+ INSERT INTO depts (deptid,parentid) VALUES ('productivity', '');
153+ INSERT INTO depts (deptid,parentid) VALUES ('finance', '');
154+ INSERT INTO depts (deptid,parentid) VALUES ('universal-accessaccessibility', '');
155+ INSERT INTO depts (deptid,parentid) VALUES ('entertainment', '');
156+ INSERT INTO depts (deptid,parentid) VALUES ('communication', '');
157+ INSERT INTO depts (deptid,parentid) VALUES ('graphics', '');
158+ INSERT INTO depts (deptid,parentid) VALUES ('science-engineering', '');
159+ INSERT INTO depts (deptid,parentid) VALUES ('news-magazines', '');
160+ INSERT INTO depts (deptid,parentid) VALUES ('accessories', '');
161+ INSERT INTO depts (deptid,parentid) VALUES ('sports', '');
162+ INSERT INTO depts (deptid,parentid) VALUES ('developer-tools', '');
163+ INSERT INTO depts (deptid,parentid) VALUES ('games', '');
164+ INSERT INTO depts (deptid,parentid) VALUES ('books-comics', '');
165+ INSERT INTO depts (deptid,parentid) VALUES ('music-audio', '');
166+ INSERT INTO depts (deptid,parentid) VALUES ('shopping', '');
167+ INSERT INTO depts (deptid,parentid) VALUES ('education', '');
168+
169+ DELETE FROM deptnames;
170+ INSERT INTO deptnames (deptid,locale,name) VALUES ('books-comics','en_US','Books & Comics');
171+ INSERT INTO deptnames (deptid,locale,name) VALUES ('business','en_US','Business');
172+ INSERT INTO deptnames (deptid,locale,name) VALUES ('communication','en_US','Communication');
173+ INSERT INTO deptnames (deptid,locale,name) VALUES ('developer-tools','en_US','Developer Tools');
174+ INSERT INTO deptnames (deptid,locale,name) VALUES ('education','en_US','Education');
175+ INSERT INTO deptnames (deptid,locale,name) VALUES ('entertainment','en_US','Entertainment');
176+ INSERT INTO deptnames (deptid,locale,name) VALUES ('finance','en_US','Finance');
177+ INSERT INTO deptnames (deptid,locale,name) VALUES ('food-drink','en_US','Food & Drink');
178+ INSERT INTO deptnames (deptid,locale,name) VALUES ('games','en_US','Games');
179+ INSERT INTO deptnames (deptid,locale,name) VALUES ('graphics','en_US','Graphics');
180+ INSERT INTO deptnames (deptid,locale,name) VALUES ('health-fitness','en_US','Lifestyle');
181+ INSERT INTO deptnames (deptid,locale,name) VALUES ('lifestyle','en_US','Health & Fitness');
182+ INSERT INTO deptnames (deptid,locale,name) VALUES ('media-video','en_US','Media & Video');
183+ INSERT INTO deptnames (deptid,locale,name) VALUES ('medical','en_US','Medical');
184+ INSERT INTO deptnames (deptid,locale,name) VALUES ('music-audio','en_US','Music & Audio');
185+ INSERT INTO deptnames (deptid,locale,name) VALUES ('news-magazines','en_US','News & Magazines');
186+ INSERT INTO deptnames (deptid,locale,name) VALUES ('personalisation','en_US','Personalisation');
187+ INSERT INTO deptnames (deptid,locale,name) VALUES ('productivity','en_US','Productivity');
188+ INSERT INTO deptnames (deptid,locale,name) VALUES ('reference','en_US','Reference');
189+ INSERT INTO deptnames (deptid,locale,name) VALUES ('science-engineering','en_US','Science & Engineering');
190+ INSERT INTO deptnames (deptid,locale,name) VALUES ('shopping','en_US','Shopping');
191+ INSERT INTO deptnames (deptid,locale,name) VALUES ('social-networking','en_US','Social Networking');
192+ INSERT INTO deptnames (deptid,locale,name) VALUES ('sports','en_US','Sports');
193+ INSERT INTO deptnames (deptid,locale,name) VALUES ('travel-local','en_US','Travel & Local');
194+ INSERT INTO deptnames (deptid,locale,name) VALUES ('universal-accessaccessibility','en_US','Universal Access/Accessibility');
195+ INSERT INTO deptnames (deptid,locale,name) VALUES ('weather','en_US','Weather');
196+ INSERT INTO deptnames (deptid,locale,name) VALUES ('accessories','en_US','Utilities');
197+
198+ UPDATE meta SET value='3' WHERE name='version';
199+ END TRANSACTION;
200+_UPDATE_TO_VER3
201 fi
202
203=== modified file 'debian/changelog'
204--- debian/changelog 2014-08-15 14:24:40 +0000
205+++ debian/changelog 2014-08-21 20:38:09 +0000
206@@ -1,3 +1,27 @@
207+unity-scope-click (0.1.1+14.10.20140815-0ubuntu2) UNRELEASED; urgency=medium
208+
209+ * New upstream release.
210+ - Display Ubuntu logo in the header of apps scope. (LP: #1350610)
211+ - Pass the sha512 hash from the details webservice to download manager.
212+ (LP: #1330770)
213+ - Sort departments alphabetically. (LP: #1354044)
214+ - Exclude empty departments from the departments tree in Apps.
215+ (LP: #1350609)
216+ - Provide updated departments to match latest server changes. Bumped
217+ schema to 3.
218+ - New script to enable purchases in the scope during beta. (LP: #1356419)
219+ - Add dependency on libglib2.0-bin and upstart-bin for script above.
220+ - Enable QNetworkDiskCache for http GET requests. (LP: #1351212)
221+ - Query download manager for in-progress downloads. (LP: #1234965)
222+ - Only show extended info for apps from the store. (LP: #1350571)
223+ - Don't expand categories by default in the store. (LP: #1355221)
224+ - Do not use static const strings for translations. (LP: #1354501)
225+ - Change "All departments" to just "All". (LP: #1351536)
226+ - Localize the extra department title in the store. (LP: #1358790)
227+ - Updated translations.
228+
229+ -- Alejandro J. Cura (alecu) <alecu@canonical.com> Tue, 19 Aug 2014 17:18:37 -0300
230+
231 unity-scope-click (0.1.1+14.10.20140815-0ubuntu1) utopic; urgency=low
232
233 [ Rodney Dawes ]
234
235=== modified file 'debian/control'
236--- debian/control 2014-08-01 15:04:19 +0000
237+++ debian/control 2014-08-21 20:38:09 +0000
238@@ -30,13 +30,15 @@
239 Package: unity-scope-click
240 Architecture: armhf i386 amd64
241 Depends: account-plugin-ubuntuone,
242+ libglib2.0-bin,
243+ libsqlite3-0 (>= 3.8.5),
244 packagekit-tools,
245 pay-service,
246 ubuntu-app-launch-tools,
247 ubuntu-download-manager,
248 ubuntu-sdk-libs,
249- libsqlite3-0 (>= 3.8.5),
250 unity-scope-click-departmentsdb (= ${binary:Version}),
251+ upstart-bin,
252 ${misc:Depends},
253 ${shlibs:Depends},
254 Breaks: unity (<< 7.0),
255
256=== modified file 'libclickscope/click/application.h'
257--- libclickscope/click/application.h 2014-07-18 10:35:52 +0000
258+++ libclickscope/click/application.h 2014-08-21 20:38:09 +0000
259@@ -43,11 +43,13 @@
260 std::string url,
261 std::string description,
262 std::string main_screenshot,
263- std::string default_department
264+ std::string default_department,
265+ std::string real_department = ""
266 ) : Package {name, title, price, icon_url, url},
267 description(description),
268 main_screenshot(main_screenshot),
269- default_department(default_department)
270+ default_department(default_department),
271+ real_department(real_department)
272 {
273
274 }
275@@ -58,6 +60,7 @@
276 std::vector<std::string> keywords;
277 std::string main_screenshot;
278 std::string default_department;
279+ std::string real_department;
280 time_t installed_time;
281 };
282
283
284=== modified file 'libclickscope/click/departments-db.cpp'
285--- libclickscope/click/departments-db.cpp 2014-08-05 14:16:26 +0000
286+++ libclickscope/click/departments-db.cpp 2014-08-21 20:38:09 +0000
287@@ -81,11 +81,14 @@
288 insert_dept_id_query_.reset(new QSqlQuery(db_));
289 insert_dept_name_query_.reset(new QSqlQuery(db_));
290 select_pkgs_by_dept_.reset(new QSqlQuery(db_));
291+ select_dept_for_pkg_.reset(new QSqlQuery(db_));
292 select_pkg_by_pkgid_.reset(new QSqlQuery(db_));
293 select_pkgs_by_dept_recursive_.reset(new QSqlQuery(db_));
294+ select_pkgs_count_in_dept_recursive_.reset(new QSqlQuery(db_));
295 select_parent_dept_.reset(new QSqlQuery(db_));
296 select_children_depts_.reset(new QSqlQuery(db_));
297 select_dept_name_.reset(new QSqlQuery(db_));
298+ select_is_descendant_of_dept_.reset(new QSqlQuery(db_));
299
300 delete_pkgmap_query_->prepare("DELETE FROM pkgmap WHERE pkgid=:pkgid");
301 delete_depts_query_->prepare("DELETE FROM depts");
302@@ -94,11 +97,14 @@
303 insert_dept_id_query_->prepare("INSERT OR REPLACE INTO depts (deptid, parentid) VALUES (:deptid, :parentid)");
304 insert_dept_name_query_->prepare("INSERT OR REPLACE INTO deptnames (deptid, locale, name) VALUES (:deptid, :locale, :name)");
305 select_pkgs_by_dept_->prepare("SELECT pkgid FROM pkgmap WHERE deptid=:deptid");
306- select_pkgs_by_dept_recursive_->prepare("WITH RECURSIVE recdepts(deptid) AS (SELECT deptid FROM depts WHERE deptid=:deptid UNION SELECT depts.deptid FROM recdepts,depts WHERE recdepts.deptid=depts.parentid) SELECT pkgid FROM pkgmap NATURAL JOIN recdepts");
307+ select_pkgs_by_dept_recursive_->prepare("WITH RECURSIVE recdepts(deptid) AS (SELECT deptid FROM depts WHERE deptid=:deptid OR parentid=:deptid UNION SELECT depts.deptid FROM recdepts,depts WHERE recdepts.deptid=depts.parentid) SELECT pkgid FROM pkgmap NATURAL JOIN recdepts");
308+ select_dept_for_pkg_->prepare("SELECT deptid from pkgmap WHERE pkgid=:pkgid");
309+ select_pkgs_count_in_dept_recursive_->prepare("WITH RECURSIVE recdepts(deptid) AS (SELECT deptid FROM depts WHERE deptid=:deptid OR parentid=:deptid UNION SELECT depts.deptid FROM recdepts,depts WHERE recdepts.deptid=depts.parentid) SELECT COUNT(pkgid) FROM pkgmap NATURAL JOIN recdepts");
310 select_pkg_by_pkgid_->prepare("SELECT pkgid FROM pkgmap WHERE pkgid=:pkgid");
311 select_children_depts_->prepare("SELECT deptid,(SELECT COUNT(1) from depts AS inner WHERE inner.parentid=outer.deptid) FROM depts AS outer WHERE parentid=:parentid");
312 select_parent_dept_->prepare("SELECT parentid FROM depts WHERE deptid=:deptid");
313 select_dept_name_->prepare("SELECT name FROM deptnames WHERE deptid=:deptid AND locale=:locale");
314+ select_is_descendant_of_dept_->prepare("WITH RECURSIVE recdepts(deptid) AS (SELECT deptid FROM depts WHERE parentid=:parentid UNION SELECT depts.deptid FROM recdepts,depts WHERE recdepts.deptid=depts.parentid) SELECT COUNT(1) FROM recdepts WHERE deptid=:deptid");
315 }
316
317 DepartmentsDb::~DepartmentsDb()
318@@ -150,7 +156,7 @@
319 //
320 // note: this will fail due to unique constraint, but that's fine; it's expected to succeed only when new database is created; in other
321 // cases the version needs to be bumped in the update_schema.sh script.
322- query.exec("INSERT INTO meta (name, value) VALUES ('version', 2)");
323+ query.exec("INSERT INTO meta (name, value) VALUES ('version', 3)");
324
325 if (!db_.commit())
326 {
327@@ -205,7 +211,6 @@
328
329 std::list<DepartmentsDb::DepartmentInfo> DepartmentsDb::get_children_departments(const std::string& department_id)
330 {
331- // FIXME: this should only return departments that have results, and set 'has_children' flag on the same basis.
332 select_children_depts_->bindValue(":parentid", QVariant(QString::fromStdString(department_id)));
333 if (!select_children_depts_->exec())
334 {
335@@ -215,14 +220,47 @@
336 std::list<DepartmentInfo> depts;
337 while (select_children_depts_->next())
338 {
339- const DepartmentInfo inf(select_children_depts_->value(0).toString().toStdString(), select_children_depts_->value(1).toBool());
340- depts.push_back(inf);
341+ auto const child_id = select_children_depts_->value(0).toString().toStdString();
342+ // only return child department if it's not empty
343+ if (!is_empty(child_id))
344+ {
345+ const DepartmentInfo inf(child_id, select_children_depts_->value(1).toBool());
346+ depts.push_back(inf);
347+ }
348 }
349
350 select_children_depts_->finish();
351+
352 return depts;
353 }
354
355+bool DepartmentsDb::is_descendant_of_department(const std::string& department_id, const std::string& parent_department_id)
356+{
357+ select_is_descendant_of_dept_->bindValue(":deptid", QVariant(QString::fromStdString(department_id)));
358+ select_is_descendant_of_dept_->bindValue(":parentid", QVariant(QString::fromStdString(parent_department_id)));
359+
360+ if (!select_is_descendant_of_dept_->exec() || !select_is_descendant_of_dept_->next())
361+ {
362+ report_db_error(select_is_descendant_of_dept_->lastError(), "Failed to query for package count of department " + department_id);
363+ }
364+ auto cnt = select_is_descendant_of_dept_->value(0).toInt();
365+ select_is_descendant_of_dept_->finish();
366+
367+ return cnt > 0;
368+}
369+
370+bool DepartmentsDb::is_empty(const std::string& department_id)
371+{
372+ select_pkgs_count_in_dept_recursive_->bindValue(":deptid", QVariant(QString::fromStdString(department_id)));
373+ if (!select_pkgs_count_in_dept_recursive_->exec() || !select_pkgs_count_in_dept_recursive_->next())
374+ {
375+ report_db_error(select_pkgs_count_in_dept_recursive_->lastError(), "Failed to query for package count of department " + department_id);
376+ }
377+ auto cnt = select_pkgs_count_in_dept_recursive_->value(0).toInt();
378+ select_pkgs_count_in_dept_recursive_->finish();
379+ return cnt == 0;
380+}
381+
382 std::unordered_set<std::string> DepartmentsDb::get_packages_for_department(const std::string& department_id, bool recursive)
383 {
384 std::unordered_set<std::string> pkgs;
385@@ -240,6 +278,24 @@
386 return pkgs;
387 }
388
389+std::string DepartmentsDb::get_department_for_package(const std::string& package_id)
390+{
391+ select_dept_for_pkg_->bindValue(":pkgid", QVariant(QString::fromStdString(package_id)));
392+ if (!select_dept_for_pkg_->exec())
393+ {
394+ report_db_error(select_dept_for_pkg_->lastError(), "Failed to query for department of package " + package_id);
395+ }
396+ if (!select_dept_for_pkg_->next())
397+ {
398+ select_dept_for_pkg_->finish();
399+ throw std::logic_error("Unknown package '" + package_id + "'");
400+ }
401+ auto const res = select_dept_for_pkg_->value(0).toString().toStdString();
402+ select_dept_for_pkg_->finish();
403+ return res;
404+
405+}
406+
407 bool DepartmentsDb::has_package(const std::string& package_id)
408 {
409 select_pkg_by_pkgid_->bindValue(":pkgid", QVariant(QString::fromStdString(package_id)));
410
411=== modified file 'libclickscope/click/departments-db.h'
412--- libclickscope/click/departments-db.h 2014-07-22 20:07:28 +0000
413+++ libclickscope/click/departments-db.h 2014-08-21 20:38:09 +0000
414@@ -66,9 +66,12 @@
415
416 virtual std::string get_department_name(const std::string& department_id, const std::list<std::string>& locales);
417 virtual std::unordered_set<std::string> get_packages_for_department(const std::string& department_id, bool recursive = true);
418+ virtual std::string get_department_for_package(const std::string& package_id);
419+ virtual bool is_empty(const std::string& department_id);
420 virtual bool has_package(const std::string& package_id);
421 virtual std::string get_parent_department_id(const std::string& department_id);
422 virtual std::list<DepartmentInfo> get_children_departments(const std::string& department_id);
423+ virtual bool is_descendant_of_department(const std::string& department_id, const std::string& parent_department_id);
424
425 virtual void store_package_mapping(const std::string& package_id, const std::string& department_id);
426 virtual void store_department_mapping(const std::string& department_id, const std::string& parent_department_id);
427@@ -79,7 +82,7 @@
428 virtual int package_count() const;
429 virtual int department_name_count() const;
430
431- void store_departments(const click::DepartmentList& depts, const std::string& locale);
432+ virtual void store_departments(const click::DepartmentList& depts, const std::string& locale);
433
434 static std::unique_ptr<DepartmentsDb> open(bool create = true);
435
436@@ -96,11 +99,14 @@
437 std::unique_ptr<QSqlQuery> insert_dept_id_query_;
438 std::unique_ptr<QSqlQuery> insert_dept_name_query_;
439 std::unique_ptr<QSqlQuery> select_pkgs_by_dept_;
440+ std::unique_ptr<QSqlQuery> select_dept_for_pkg_;
441 std::unique_ptr<QSqlQuery> select_pkg_by_pkgid_;
442 std::unique_ptr<QSqlQuery> select_pkgs_by_dept_recursive_;
443+ std::unique_ptr<QSqlQuery> select_pkgs_count_in_dept_recursive_;
444 std::unique_ptr<QSqlQuery> select_parent_dept_;
445 std::unique_ptr<QSqlQuery> select_children_depts_;
446 std::unique_ptr<QSqlQuery> select_dept_name_;
447+ std::unique_ptr<QSqlQuery> select_is_descendant_of_dept_;
448 };
449
450 }
451
452=== modified file 'libclickscope/click/download-manager.cpp'
453--- libclickscope/click/download-manager.cpp 2014-06-20 03:23:40 +0000
454+++ libclickscope/click/download-manager.cpp 2014-08-21 20:38:09 +0000
455@@ -43,6 +43,7 @@
456
457 namespace udm = Ubuntu::DownloadManager;
458 #include <ubuntu/download_manager/download_struct.h>
459+#include <ubuntu/download_manager/downloads_list.h>
460 #include <ubuntu/download_manager/download.h>
461 #include <ubuntu/download_manager/error.h>
462
463@@ -54,8 +55,7 @@
464
465 static const QString DOWNLOAD_COMMAND = CLICK_INSTALL_HELPER;
466
467-static const QString DOWNLOAD_MANAGER_DO_NOT_HASH = "";
468-static const QString DOWNLOAD_MANAGER_IGNORE_HASH_ALGORITHM = "";
469+static const QString DOWNLOAD_MANAGER_SHA512 = "sha512";
470 }
471
472 struct click::DownloadManager::Private
473@@ -78,6 +78,7 @@
474 QSharedPointer<udm::Manager> systemDownloadManager;
475 QSharedPointer<click::network::Reply> reply;
476 QString downloadUrl;
477+ QString download_sha512;
478 QString package_name;
479 };
480
481@@ -121,7 +122,7 @@
482 click::DownloadManager::~DownloadManager(){
483 }
484
485-void click::DownloadManager::startDownload(const QString& downloadUrl, const QString& package_name)
486+void click::DownloadManager::startDownload(const QString& downloadUrl, const QString& download_sha512, const QString& package_name)
487 {
488 impl->package_name = package_name;
489
490@@ -133,7 +134,7 @@
491 QObject::connect(this, SIGNAL(clickTokenFetchError(QString)),
492 this, SLOT(handleClickTokenFetchError(QString)),
493 Qt::UniqueConnection);
494- fetchClickToken(downloadUrl);
495+ fetchClickToken(downloadUrl, download_sha512);
496 }
497
498 void click::DownloadManager::handleClickTokenFetched(const QString& clickToken)
499@@ -149,8 +150,8 @@
500 headers[CLICK_TOKEN_HEADER()] = clickToken;
501
502 udm::DownloadStruct downloadStruct(impl->downloadUrl,
503- DOWNLOAD_MANAGER_DO_NOT_HASH,
504- DOWNLOAD_MANAGER_IGNORE_HASH_ALGORITHM,
505+ impl->download_sha512,
506+ DOWNLOAD_MANAGER_SHA512,
507 metadata,
508 headers);
509
510@@ -175,9 +176,10 @@
511 }
512 }
513
514-void click::DownloadManager::fetchClickToken(const QString& downloadUrl)
515+void click::DownloadManager::fetchClickToken(const QString& downloadUrl, const QString& download_sha512)
516 {
517 impl->downloadUrl = downloadUrl;
518+ impl->download_sha512 = download_sha512;
519 impl->updateCredentialsFromService();
520 }
521
522@@ -251,6 +253,12 @@
523 emit clickTokenFetchError(QString("Network Error"));
524 }
525
526+void click::DownloadManager::getAllDownloadsWithMetadata(const QString &key, const QString &value,
527+ MetadataDownloadsListCb callback,
528+ MetadataDownloadsListCb errback)
529+{
530+ impl->systemDownloadManager->getAllDownloadsWithMetadata(key, value, callback, errback);
531+}
532
533 // Downloader
534 namespace
535@@ -280,9 +288,40 @@
536 {
537 }
538
539-void click::Downloader::get_download_progress(std::string /*package_name*/, const std::function<void (std::string)>& /*callback*/)
540-{
541- // TODO, unimplemented. see https://bugs.launchpad.net/ubuntu-download-manager/+bug/1277814
542+click::Downloader::~Downloader()
543+{
544+
545+}
546+
547+click::DownloadManager& click::Downloader::getDownloadManager()
548+{
549+ return downloadManagerInstance(networkAccessManager);
550+}
551+
552+void click::Downloader::get_download_progress(std::string package_name, const std::function<void (std::string)>& callback)
553+{
554+ auto& dm = getDownloadManager();
555+
556+ dm.getAllDownloadsWithMetadata(DOWNLOAD_APP_ID_KEY, QString::fromStdString(package_name),
557+ [callback, package_name](const QString& /*key*/, const QString& /*value*/, DownloadsList* downloads_list){
558+ // got downloads matching metadata
559+ std::string object_path;
560+ auto downloads = downloads_list->downloads();
561+ if (downloads.size() > 0) {
562+ auto download = downloads.at(0);
563+ object_path = download->id().toStdString();
564+ }
565+ qDebug() << "Found object path" << QString::fromStdString(object_path)
566+ << "for package" << QString::fromStdString(package_name);
567+ if (downloads.size() != 1) {
568+ qWarning() << "More than one download with the same object path";
569+ }
570+ callback(object_path);
571+ }, [callback, package_name](const QString& /*key*/, const QString& /*value*/, DownloadsList* /*downloads_list*/){
572+ // no downloads found
573+ qDebug() << "No object path found for package" << QString::fromStdString(package_name);
574+ callback("");
575+ });
576 }
577
578 namespace
579@@ -323,10 +362,10 @@
580 };
581 }
582
583-void click::Downloader::startDownload(std::string url, std::string package_name,
584+void click::Downloader::startDownload(const std::string& url, const std::string& download_sha512, const std::string& package_name,
585 const std::function<void (std::pair<std::string, click::InstallError >)>& callback)
586 {
587- qt::core::world::enter_with_task([this, callback, url, package_name] ()
588+ qt::core::world::enter_with_task([this, callback, url, download_sha512, package_name] ()
589 {
590 auto& dm = downloadManagerInstance(networkAccessManager);
591
592@@ -342,7 +381,7 @@
593 QObject::connect(&dm, &click::DownloadManager::downloadError,
594 cb, &Callback::onDownloadError);
595
596- dm.startDownload(QString::fromStdString(url),
597+ dm.startDownload(QString::fromStdString(url), QString::fromStdString(download_sha512),
598 QString::fromStdString(package_name));
599 });
600 }
601
602=== modified file 'libclickscope/click/download-manager.h'
603--- libclickscope/click/download-manager.h 2014-06-19 21:22:53 +0000
604+++ libclickscope/click/download-manager.h 2014-08-21 20:38:09 +0000
605@@ -63,12 +63,16 @@
606 const QSharedPointer<click::CredentialsService>& ssoService,
607 const QSharedPointer<Ubuntu::DownloadManager::Manager>& systemDownloadManager,
608 QObject *parent = 0);
609+ DownloadManager();
610 virtual ~DownloadManager();
611
612 public slots:
613- virtual void startDownload(const QString& downloadUrl, const QString& package_name);
614- virtual void fetchClickToken(const QString& downloadUrl);
615-
616+ virtual void startDownload(const QString& downloadUrl, const QString& download_sha512, const QString& package_name);
617+ virtual void fetchClickToken(const QString& downloadUrl, const QString& download_sha512);
618+ virtual void getAllDownloadsWithMetadata(const QString& key,
619+ const QString& value,
620+ MetadataDownloadsListCb callback,
621+ MetadataDownloadsListCb errback);
622 signals:
623
624 void credentialsNotFound();
625@@ -97,9 +101,11 @@
626 {
627 public:
628 Downloader(const QSharedPointer<click::network::AccessManager>& networkAccessManager);
629- void get_download_progress(std::string package_name, const std::function<void (std::string)>& callback);
630- void startDownload(std::string url, std::string package_name,
631+ virtual void get_download_progress(std::string package_name, const std::function<void (std::string)>& callback);
632+ void startDownload(const std::string& url, const std::string& download_sha512, const std::string& package_name,
633 const std::function<void (std::pair<std::string, InstallError>)>& callback);
634+ virtual ~Downloader();
635+ virtual click::DownloadManager& getDownloadManager();
636 private:
637 QSharedPointer<click::network::AccessManager> networkAccessManager;
638 };
639
640=== modified file 'libclickscope/click/interface.cpp'
641--- libclickscope/click/interface.cpp 2014-07-23 16:22:19 +0000
642+++ libclickscope/click/interface.cpp 2014-08-21 20:38:09 +0000
643@@ -277,12 +277,13 @@
644 || Interface::is_non_click_app(QString::fromStdString(filename))) {
645 auto app = load_app_from_desktop(keyFile, filename);
646
647+ // app from click package has non-empty name; for non-click apps use desktop filename
648+ const std::string department_key = app.name.empty() ? filename : app.name;
649+
650 // check if apps is present in current department
651 if (apply_department_filter)
652 {
653- // app from click package has non-empty name; for non-click apps use desktop filename
654- const std::string key = app.name.empty() ? filename : app.name;
655- if (packages_in_department.find(key) == packages_in_department.end())
656+ if (packages_in_department.find(department_key) == packages_in_department.end())
657 {
658 if (app.default_department.empty())
659 {
660@@ -293,7 +294,7 @@
661 {
662 // default department not empty: check if this app is in a different
663 // department in the db (i.e. got moved from the default department);
664- if (depts_db->has_package(key))
665+ if (depts_db->has_package(department_key))
666 {
667 // app is now in a different department
668 return;
669@@ -303,12 +304,38 @@
670 {
671 return;
672 }
673-
674 // else - this package is in current department
675 }
676 }
677 }
678
679+ //
680+ // the packages_in_department set contains packages from
681+ // all its subdepartments; we need to find actual department now
682+ // to update app.real_department.
683+ if (depts_db)
684+ {
685+ if (depts_db->has_package(department_key))
686+ {
687+ try
688+ {
689+ app.real_department = depts_db->get_department_for_package(department_key);
690+ }
691+ catch (const std::exception &e)
692+ {
693+ qWarning() << "Failed to get department of package:" << QString::fromStdString(department_key);
694+ }
695+ }
696+ else
697+ {
698+ app.real_department = app.default_department;
699+ if (app.real_department.empty())
700+ {
701+ qWarning() << "No default department set in the .desktop file and no entry in the database for" << QString::fromStdString(department_key);
702+ }
703+ }
704+ }
705+
706 if (search_query.empty()) {
707 result.push_back(app);
708 } else {
709
710=== modified file 'libclickscope/click/network_access_manager.cpp'
711--- libclickscope/click/network_access_manager.cpp 2014-05-20 19:33:41 +0000
712+++ libclickscope/click/network_access_manager.cpp 2014-08-21 20:38:09 +0000
713@@ -28,6 +28,8 @@
714 */
715
716 #include "network_access_manager.h"
717+#include <QNetworkDiskCache>
718+#include <QStandardPaths>
719
720 click::network::Reply::Reply(QNetworkReply* reply) : reply(reply)
721 {
722@@ -91,6 +93,12 @@
723 QNetworkAccessManager& networkAccessManagerInstance()
724 {
725 static QNetworkAccessManager nam;
726+ if (!nam.cache())
727+ {
728+ QNetworkDiskCache* cache = new QNetworkDiskCache(&nam);
729+ cache->setCacheDirectory(QString("%1/unity-scope-click/network").arg(QStandardPaths::writableLocation(QStandardPaths::CacheLocation)));
730+ nam.setCache(cache);
731+ }
732 return nam;
733 }
734 }
735
736=== modified file 'libclickscope/click/package.cpp'
737--- libclickscope/click/package.cpp 2014-08-05 19:00:03 +0000
738+++ libclickscope/click/package.cpp 2014-08-21 20:38:09 +0000
739@@ -52,6 +52,7 @@
740 return lhs.package == rhs.package &&
741 lhs.description == rhs.description &&
742 lhs.download_url == rhs.download_url &&
743+ lhs.download_sha512 == rhs.download_sha512 &&
744 lhs.rating == rhs.rating &&
745 // TODO: keywords should be a list of strings
746 lhs.keywords == rhs.keywords &&
747@@ -144,6 +145,9 @@
748 }
749
750 // Optional details go here.
751+ if (root[JsonKeys::download_sha512].isString())
752+ details.download_sha512 = root[JsonKeys::download_sha512].asString();
753+
754 if (root[JsonKeys::version].isString())
755 details.version = root[JsonKeys::version].asString();
756
757@@ -245,6 +249,7 @@
758 << print_string_if_not_empty(details.package.icon_url) << ", "
759 << print_string_if_not_empty(details.description) << ", "
760 << print_string_if_not_empty(details.download_url) << ", "
761+ << print_string_if_not_empty(details.download_sha512) << ", "
762 << details.rating << ", "
763 << print_string_if_not_empty(details.keywords) << ", "
764 << print_string_if_not_empty(details.terms_of_service) << ", "
765
766=== modified file 'libclickscope/click/package.h'
767--- libclickscope/click/package.h 2014-08-05 22:30:30 +0000
768+++ libclickscope/click/package.h 2014-08-21 20:38:09 +0000
769@@ -126,6 +126,7 @@
770 constexpr static const char* icon_url{"icon_url"};
771 constexpr static const char* description{"description"};
772 constexpr static const char* download_url{"download_url"};
773+ constexpr static const char* download_sha512{"download_sha512"};
774 constexpr static const char* rating{"rating"};
775 constexpr static const char* keywords{"keywords"};
776
777@@ -155,6 +156,7 @@
778
779 std::string description;
780 std::string download_url;
781+ std::string download_sha512;
782 double rating;
783 std::string keywords;
784
785
786=== modified file 'libclickscope/click/preview.cpp'
787--- libclickscope/click/preview.cpp 2014-07-25 20:25:49 +0000
788+++ libclickscope/click/preview.cpp 2014-08-21 20:38:09 +0000
789@@ -55,10 +55,6 @@
790
791 namespace click {
792
793-const std::string PreviewStrategy::INFO_LABEL = _("Info");
794-const std::string PreviewStrategy::UPDATES_LABEL = _("Updates");
795-const std::string PreviewStrategy::WHATS_NEW_LABEL = _("What's new");
796-
797 DepartmentUpdater::DepartmentUpdater(const std::shared_ptr<click::DepartmentsDb>& depts)
798 : depts(depts)
799 {
800@@ -95,16 +91,34 @@
801 // Preview base class
802
803 Preview::Preview(const unity::scopes::Result& result,
804- const unity::scopes::ActionMetadata& metadata,
805- const QSharedPointer<click::web::Client>& client,
806- const QSharedPointer<click::network::AccessManager>& nam,
807- std::shared_ptr<click::DepartmentsDb> depts)
808- : PreviewQueryBase(result, metadata)
809-{
810- strategy.reset(choose_strategy(result, metadata, client, nam, depts));
811-}
812-
813-PreviewStrategy* Preview::choose_strategy(const unity::scopes::Result &result,
814+ const unity::scopes::ActionMetadata& metadata)
815+ : PreviewQueryBase(result, metadata), result(result), metadata(metadata)
816+{
817+}
818+
819+Preview::~Preview()
820+{
821+}
822+
823+void Preview::choose_strategy(const QSharedPointer<web::Client> &client,
824+ const QSharedPointer<click::network::AccessManager>& nam,
825+ std::shared_ptr<click::DepartmentsDb> depts)
826+{
827+ strategy.reset(build_strategy(result, metadata, client, nam, depts));
828+}
829+
830+PreviewStrategy* Preview::build_installing(const std::string& download_url,
831+ const std::string& download_sha512,
832+ const unity::scopes::Result& result,
833+ const QSharedPointer<click::web::Client>& client,
834+ const QSharedPointer<click::network::AccessManager>& nam,
835+ std::shared_ptr<click::DepartmentsDb> depts)
836+{
837+ return new InstallingPreview(download_url, download_sha512, result, client, nam, depts);
838+}
839+
840+
841+PreviewStrategy* Preview::build_strategy(const unity::scopes::Result &result,
842 const unity::scopes::ActionMetadata &metadata,
843 const QSharedPointer<web::Client> &client,
844 const QSharedPointer<click::network::AccessManager>& nam,
845@@ -126,22 +140,23 @@
846 } else if (metadict.count("action_id") != 0 && metadict.count("download_url") != 0) {
847 std::string action_id = metadict["action_id"].get_string();
848 std::string download_url = metadict["download_url"].get_string();
849+ std::string download_sha512 = metadict["download_sha512"].get_string();
850 if (action_id == click::Preview::Actions::INSTALL_CLICK) {
851- return new InstallingPreview(download_url, result, client, nam, depts);
852+ return build_installing(download_url, download_sha512, result, client, nam, depts);
853 } else {
854 qWarning() << "unexpected action id " << QString::fromStdString(action_id)
855 << " given with download_url" << QString::fromStdString(download_url);
856- return new UninstalledPreview(result, client, depts);
857+ return new UninstalledPreview(result, client, depts, nam);
858 }
859 } else if (metadict.count(click::Preview::Actions::UNINSTALL_CLICK) != 0) {
860 return new UninstallConfirmationPreview(result);
861 } else if (metadict.count(click::Preview::Actions::CONFIRM_UNINSTALL) != 0) {
862- return new UninstallingPreview(result, client);
863+ return new UninstallingPreview(result, client, nam);
864 } else if (metadict.count(click::Preview::Actions::RATED) != 0) {
865 return new InstalledPreview(result, metadata, client, depts);
866 } else {
867 qWarning() << "preview() called with unexpected metadata. returning uninstalled preview";
868- return new UninstalledPreview(result, client, depts);
869+ return new UninstalledPreview(result, client, depts, nam);
870 }
871 } else {
872 // metadata.scope_data() is Null, so we return an appropriate "default" preview:
873@@ -152,7 +167,7 @@
874 if (result["installed"].get_bool() == true) {
875 return new InstalledPreview(result, metadata, client, depts);
876 } else {
877- return new UninstalledPreview(result, client, depts);
878+ return new UninstalledPreview(result, client, depts, nam);
879 }
880 }
881
882@@ -330,25 +345,27 @@
883 if (!details.description.empty())
884 {
885 scopes::PreviewWidget summary("summary", "text");
886- summary.add_attribute_value("title", scopes::Variant(INFO_LABEL));
887+ summary.add_attribute_value("title", scopes::Variant(_("Info")));
888 summary.add_attribute_value("text", scopes::Variant(details.description));
889 widgets.push_back(summary);
890 }
891
892- scopes::PreviewWidget other_metadata("other_metadata", "text");
893- other_metadata.add_attribute_value("text", scopes::Variant(build_other_metadata(details)));
894- widgets.push_back(other_metadata);
895-
896- scopes::PreviewWidget updates("updates", "text");
897- updates.add_attribute_value("title", scopes::Variant(UPDATES_LABEL));
898- updates.add_attribute_value("text", scopes::Variant(build_updates_table(details)));
899- widgets.push_back(updates);
900-
901- scopes::PreviewWidget whats_new("whats_new", "text");
902- whats_new.add_attribute_value("title", scopes::Variant(WHATS_NEW_LABEL));
903- whats_new.add_attribute_value("text", scopes::Variant(build_whats_new(details)));
904- widgets.push_back(whats_new);
905-
906+ if (!details.download_url.empty())
907+ {
908+ scopes::PreviewWidget other_metadata("other_metadata", "text");
909+ other_metadata.add_attribute_value("text", scopes::Variant(build_other_metadata(details)));
910+ widgets.push_back(other_metadata);
911+
912+ scopes::PreviewWidget updates("updates", "text");
913+ updates.add_attribute_value("title", scopes::Variant(_("Updates")));
914+ updates.add_attribute_value("text", scopes::Variant(build_updates_table(details)));
915+ widgets.push_back(updates);
916+
917+ scopes::PreviewWidget whats_new("whats_new", "text");
918+ whats_new.add_attribute_value("title", scopes::Variant(_("What's new")));
919+ whats_new.add_attribute_value("text", scopes::Variant(build_whats_new(details)));
920+ widgets.push_back(whats_new);
921+ }
922 return widgets;
923 }
924
925@@ -447,12 +464,14 @@
926 // class InstallingPreview
927
928 InstallingPreview::InstallingPreview(const std::string &download_url,
929+ const std::string &download_sha512,
930 const unity::scopes::Result &result,
931 const QSharedPointer<click::web::Client>& client,
932 const QSharedPointer<click::network::AccessManager> &nam,
933 std::shared_ptr<click::DepartmentsDb> depts)
934 : PreviewStrategy(result, client), DepartmentUpdater(depts),
935 download_url(download_url),
936+ download_sha512(download_sha512),
937 downloader(new click::Downloader(nam)),
938 depts_db(depts)
939 {
940@@ -473,7 +492,8 @@
941
942 void InstallingPreview::run(const unity::scopes::PreviewReplyProxy &reply)
943 {
944- downloader->startDownload(download_url, result["name"].get_string(),
945+ qDebug() << "Starting installation" << QString(download_url.c_str()) << QString(download_sha512.c_str());
946+ downloader->startDownload(download_url, download_sha512, result["name"].get_string(),
947 [this, reply] (std::pair<std::string, click::InstallError> rc){
948 // NOTE: details not needed by fooErrorWidgets, so no need to populateDetails():
949 switch (rc.second)
950@@ -508,7 +528,7 @@
951 });
952 }
953
954-scopes::PreviewWidgetList InstallingPreview::progressBarWidget(const std::string& object_path)
955+scopes::PreviewWidgetList PreviewStrategy::progressBarWidget(const std::string& object_path)
956 {
957 scopes::PreviewWidgetList widgets;
958 scopes::PreviewWidget progress("download", "progress");
959@@ -789,11 +809,18 @@
960
961 // class UninstalledPreview
962
963+click::Downloader* UninstalledPreview::get_downloader(const QSharedPointer<click::network::AccessManager>& nam)
964+{
965+ static auto downloader = new click::Downloader(nam);
966+ return downloader;
967+}
968+
969 UninstalledPreview::UninstalledPreview(const unity::scopes::Result& result,
970 const QSharedPointer<click::web::Client>& client,
971- const std::shared_ptr<click::DepartmentsDb>& depts)
972+ const std::shared_ptr<click::DepartmentsDb>& depts,
973+ const QSharedPointer<click::network::AccessManager>& nam)
974 : PreviewStrategy(result, client),
975- DepartmentUpdater(depts)
976+ DepartmentUpdater(depts), nam(nam)
977 {
978 }
979
980@@ -803,11 +830,20 @@
981
982 void UninstalledPreview::run(unity::scopes::PreviewReplyProxy const& reply)
983 {
984-qDebug() << "in UninstalledPreview::run, about to populate details";
985-
986+ qDebug() << "in UninstalledPreview::run, about to populate details";
987 populateDetails([this, reply](const PackageDetails &details){
988 store_department(details);
989- pushPackagePreviewWidgets(reply, details, uninstalledActionButtonWidgets(details));
990+ std::string app_name = result["name"].get_string();
991+ get_downloader(nam)->get_download_progress(app_name,
992+ [this, reply, details](std::string object_path){
993+ scopes::PreviewWidgetList button_widgets;
994+ if(object_path.empty()) {
995+ button_widgets = uninstalledActionButtonWidgets(details);
996+ } else {
997+ button_widgets = progressBarWidget(object_path);
998+ }
999+ pushPackagePreviewWidgets(reply, details, button_widgets);
1000+ });
1001 },
1002 [this, reply](const ReviewList& reviewlist,
1003 click::Reviews::Error error) {
1004@@ -832,6 +868,7 @@
1005 tuple["price"] = scopes::Variant(details.package.price);
1006 tuple["store_item_id"] = details.package.name;
1007 tuple["download_url"] = details.download_url;
1008+ tuple["download_sha512"] = details.download_sha512;
1009 payments.add_attribute_value("source", scopes::Variant(tuple));
1010 widgets.push_back(payments);
1011 } else {
1012@@ -841,7 +878,8 @@
1013 {
1014 {"id", scopes::Variant(click::Preview::Actions::INSTALL_CLICK)},
1015 {"label", scopes::Variant(_("Install"))},
1016- {"download_url", scopes::Variant(details.download_url)}
1017+ {"download_url", scopes::Variant(details.download_url)},
1018+ {"download_sha512", scopes::Variant(details.download_sha512)},
1019 });
1020 buttons.add_attribute_value("actions", builder.end());
1021 widgets.push_back(buttons);
1022@@ -854,10 +892,12 @@
1023
1024 // TODO: this class should be removed once uninstall() is handled elsewhere.
1025 UninstallingPreview::UninstallingPreview(const unity::scopes::Result& result,
1026- const QSharedPointer<click::web::Client>& client)
1027- : UninstalledPreview(result, client, nullptr)
1028+ const QSharedPointer<click::web::Client>& client,
1029+ const QSharedPointer<click::network::AccessManager>& nam)
1030+ : UninstalledPreview(result, client, nullptr, nam)
1031 {
1032 }
1033+
1034 UninstallingPreview::~UninstallingPreview()
1035 {
1036 }
1037
1038=== modified file 'libclickscope/click/preview.h'
1039--- libclickscope/click/preview.h 2014-07-24 04:25:22 +0000
1040+++ libclickscope/click/preview.h 2014-08-21 20:38:09 +0000
1041@@ -42,6 +42,7 @@
1042 #include <unity/scopes/PreviewWidget.h>
1043 #include <unity/scopes/Result.h>
1044 #include <unity/scopes/ScopeBase.h>
1045+#include <unity/util/DefinesPtrs.h>
1046
1047 namespace scopes = unity::scopes;
1048
1049@@ -67,12 +68,21 @@
1050 {
1051 protected:
1052 std::unique_ptr<PreviewStrategy> strategy;
1053- PreviewStrategy* choose_strategy(const unity::scopes::Result& result,
1054- const unity::scopes::ActionMetadata& metadata,
1055- const QSharedPointer<web::Client> &client,
1056- const QSharedPointer<click::network::AccessManager>& nam,
1057- std::shared_ptr<click::DepartmentsDb> depts);
1058+ const unity::scopes::Result& result;
1059+ const unity::scopes::ActionMetadata& metadata;
1060+ PreviewStrategy* build_strategy(const unity::scopes::Result& result,
1061+ const unity::scopes::ActionMetadata& metadata,
1062+ const QSharedPointer<web::Client> &client,
1063+ const QSharedPointer<click::network::AccessManager>& nam,
1064+ std::shared_ptr<click::DepartmentsDb> depts);
1065+ virtual PreviewStrategy* build_installing(const std::string& download_url,
1066+ const std::string& download_sha512,
1067+ const unity::scopes::Result& result,
1068+ const QSharedPointer<click::web::Client>& client,
1069+ const QSharedPointer<click::network::AccessManager>& nam,
1070+ std::shared_ptr<click::DepartmentsDb> depts);
1071 public:
1072+ UNITY_DEFINES_PTRS(Preview);
1073 struct Actions
1074 {
1075 Actions() = delete;
1076@@ -94,10 +104,11 @@
1077
1078 Preview(const unity::scopes::Result& result);
1079 Preview(const unity::scopes::Result& result,
1080- const unity::scopes::ActionMetadata& metadata,
1081- const QSharedPointer<click::web::Client>& client,
1082- const QSharedPointer<click::network::AccessManager>& nam,
1083- std::shared_ptr<click::DepartmentsDb> depts);
1084+ const unity::scopes::ActionMetadata& metadata);
1085+ virtual ~Preview();
1086+ void choose_strategy(const QSharedPointer<web::Client> &client,
1087+ const QSharedPointer<click::network::AccessManager>& nam,
1088+ std::shared_ptr<click::DepartmentsDb> depts);
1089 // From unity::scopes::PreviewQuery
1090 void cancelled() override;
1091 virtual void run(unity::scopes::PreviewReplyProxy const& reply) override;
1092@@ -115,9 +126,6 @@
1093
1094 virtual void cancelled();
1095 virtual void run(unity::scopes::PreviewReplyProxy const& reply) = 0;
1096- static const std::string INFO_LABEL;
1097- static const std::string UPDATES_LABEL;
1098- static const std::string WHATS_NEW_LABEL;
1099 protected:
1100 virtual void populateDetails(std::function<void(const PackageDetails &)> details_callback,
1101 std::function<void(const click::ReviewList&,
1102@@ -125,6 +133,7 @@
1103 virtual scopes::PreviewWidgetList headerWidgets(const PackageDetails &details);
1104 virtual scopes::PreviewWidgetList screenshotsWidgets(const PackageDetails &details);
1105 virtual scopes::PreviewWidgetList descriptionWidgets(const PackageDetails &details);
1106+ virtual scopes::PreviewWidgetList progressBarWidget(const std::string& object_path);
1107 virtual scopes::PreviewWidgetList reviewsWidgets(const click::ReviewList &reviewlist);
1108 virtual scopes::PreviewWidgetList downloadErrorWidgets();
1109 virtual scopes::PreviewWidgetList loginErrorWidgets();
1110@@ -163,7 +172,8 @@
1111 {
1112 public:
1113 InstallingPreview(const unity::scopes::Result& result) : PreviewStrategy(result) {}
1114- InstallingPreview(std::string const& download_url,
1115+ InstallingPreview(const std::string& download_url,
1116+ const std::string& download_sha512,
1117 const unity::scopes::Result& result,
1118 const QSharedPointer<click::web::Client>& client,
1119 const QSharedPointer<click::network::AccessManager>& nam,
1120@@ -174,8 +184,8 @@
1121 void run(unity::scopes::PreviewReplyProxy const& reply) override;
1122
1123 protected:
1124- virtual scopes::PreviewWidgetList progressBarWidget(const std::string& object_path);
1125 std::string download_url;
1126+ std::string download_sha512;
1127 QSharedPointer<click::Downloader> downloader;
1128 std::shared_ptr<click::DepartmentsDb> depts_db;
1129 void startLauncherAnimation(const PackageDetails& details);
1130@@ -235,15 +245,18 @@
1131
1132 class UninstalledPreview : public PreviewStrategy, public DepartmentUpdater
1133 {
1134+ const QSharedPointer<click::network::AccessManager>& nam;
1135 public:
1136 UninstalledPreview(const unity::scopes::Result& result,
1137 const QSharedPointer<click::web::Client>& client,
1138- const std::shared_ptr<click::DepartmentsDb>& depts);
1139+ const std::shared_ptr<click::DepartmentsDb>& depts,
1140+ const QSharedPointer<click::network::AccessManager>& nam);
1141
1142 virtual ~UninstalledPreview();
1143
1144 void run(unity::scopes::PreviewReplyProxy const& reply) override;
1145 protected:
1146+ virtual click::Downloader* get_downloader(const QSharedPointer<click::network::AccessManager>& nam);
1147 virtual scopes::PreviewWidgetList uninstalledActionButtonWidgets(const PackageDetails &details);
1148 };
1149
1150@@ -253,7 +266,8 @@
1151 {
1152 public:
1153 UninstallingPreview(const unity::scopes::Result& result,
1154- const QSharedPointer<click::web::Client>& client);
1155+ const QSharedPointer<click::web::Client>& client,
1156+ const QSharedPointer<click::network::AccessManager>& nam);
1157
1158 virtual ~UninstallingPreview();
1159
1160
1161=== modified file 'libclickscope/click/webclient.cpp'
1162--- libclickscope/click/webclient.cpp 2014-06-17 13:56:26 +0000
1163+++ libclickscope/click/webclient.cpp 2014-08-21 20:38:09 +0000
1164@@ -99,6 +99,8 @@
1165 request->setRawHeader(ACCEPT_LANGUAGE_HEADER.c_str(),
1166 Configuration().get_accept_languages().c_str());
1167
1168+ request->setAttribute(QNetworkRequest::CacheLoadControlAttribute, QNetworkRequest::PreferCache);
1169+
1170 for (const auto& kv : headers) {
1171 QByteArray header_name(kv.first.c_str(), kv.first.length());
1172 QByteArray header_value(kv.second.c_str(), kv.second.length());
1173@@ -109,9 +111,11 @@
1174
1175 auto doConnect = [=]() {
1176 QByteArray verb(method.c_str(), method.length());
1177- auto reply = impl->network_access_manager->sendCustomRequest(*request,
1178- verb,
1179- buffer.data());
1180+ //
1181+ // for 'get' use get method of access manager explicitly as sendCustomRequest disables the use of cache.
1182+ auto reply = (method == "GET" && buffer->size() == 0) ?
1183+ impl->network_access_manager->get(*request) :
1184+ impl->network_access_manager->sendCustomRequest(*request, verb, buffer.data());
1185 responsePtr->setReply(reply);
1186 };
1187
1188
1189=== modified file 'libclickscope/tests/fake_json.cpp'
1190--- libclickscope/tests/fake_json.cpp 2014-08-05 19:00:03 +0000
1191+++ libclickscope/tests/fake_json.cpp 2014-08-21 20:38:09 +0000
1192@@ -194,6 +194,7 @@
1193 "title": "\u1F4A9 Weather",
1194 "description": "\u1F4A9 Weather\nA weather application.",
1195 "download_url": "https://public.apps.staging.ubuntu.com/download/ar.com.beuno/wheather-touch/ar.com.beuno.wheather-touch-0.2",
1196+ "download_sha512": "fake_sha512",
1197 "rating": 3.5,
1198 "keywords": "these, are, key, words",
1199
1200@@ -224,6 +225,16 @@
1201 }
1202 )foo";
1203
1204+const std::string FAKE_JSON_PACKAGE_DETAILS_DEB = R"foo(
1205+ {
1206+ "name": "weather-app",
1207+ "icon_url": "theme://weather-app",
1208+ "title": "\u1F4A9 Weather",
1209+ "description": "A weather application.",
1210+ "keywords": "these, are, key, words"
1211+ }
1212+)foo";
1213+
1214 const std::string FAKE_JSON_BOOTSTRAP = R"(
1215 {
1216 "_embedded": {
1217
1218=== modified file 'libclickscope/tests/fake_json.h'
1219--- libclickscope/tests/fake_json.h 2014-08-05 19:00:03 +0000
1220+++ libclickscope/tests/fake_json.h 2014-08-21 20:38:09 +0000
1221@@ -39,6 +39,7 @@
1222 extern const std::string FAKE_JSON_SEARCH_RESULT_MANY;
1223 extern const std::string FAKE_JSON_SEARCH_RESULT_RECOMMENDS;
1224 extern const std::string FAKE_JSON_PACKAGE_DETAILS;
1225+extern const std::string FAKE_JSON_PACKAGE_DETAILS_DEB;
1226 extern const std::string FAKE_JSON_BOOTSTRAP;
1227 extern const std::string FAKE_JSON_BROKEN_BOOTSTRAP;
1228 extern const std::string FAKE_JSON_DEPARTMENTS_ONLY;
1229
1230=== modified file 'libclickscope/tests/test_departments-db.cpp'
1231--- libclickscope/tests/test_departments-db.cpp 2014-08-05 14:16:26 +0000
1232+++ libclickscope/tests/test_departments-db.cpp 2014-08-21 20:38:09 +0000
1233@@ -53,10 +53,13 @@
1234 EXPECT_FALSE(insert_dept_name_query_->isActive());
1235 EXPECT_FALSE(select_pkgs_by_dept_->isActive());
1236 EXPECT_FALSE(select_pkgs_by_dept_recursive_->isActive());
1237+ EXPECT_FALSE(select_dept_for_pkg_->isActive());
1238+ EXPECT_FALSE(select_pkgs_count_in_dept_recursive_->isActive());
1239 EXPECT_FALSE(select_pkg_by_pkgid_->isActive());
1240 EXPECT_FALSE(select_parent_dept_->isActive());
1241 EXPECT_FALSE(select_children_depts_->isActive());
1242 EXPECT_FALSE(select_dept_name_->isActive());
1243+ EXPECT_FALSE(select_is_descendant_of_dept_->isActive());
1244 }
1245 };
1246
1247@@ -112,6 +115,35 @@
1248 }
1249 }
1250
1251+TEST_F(DepartmentsDbTest, testDepartmentForPackageLookup)
1252+{
1253+ EXPECT_EQ("rpg", db->get_department_for_package("game1"));
1254+ EXPECT_EQ("fps", db->get_department_for_package("game2"));
1255+ EXPECT_EQ("office", db->get_department_for_package("app2"));
1256+ EXPECT_EQ("tools", db->get_department_for_package("app1"));
1257+ EXPECT_THROW(db->get_department_for_package("foobar"), std::logic_error);
1258+}
1259+
1260+TEST_F(DepartmentsDbTest, testIsDepartmentEmpty)
1261+{
1262+ EXPECT_TRUE(db->is_empty("card"));
1263+ EXPECT_FALSE(db->is_empty(""));
1264+ EXPECT_FALSE(db->is_empty("games"));
1265+ EXPECT_FALSE(db->is_empty("office"));
1266+ EXPECT_FALSE(db->is_empty("tools"));
1267+}
1268+
1269+TEST_F(DepartmentsDbTest, testIsDescendantOfDepartment)
1270+{
1271+ EXPECT_TRUE(db->is_descendant_of_department("rpg", "games"));
1272+ EXPECT_TRUE(db->is_descendant_of_department("office", "tools"));
1273+ EXPECT_TRUE(db->is_descendant_of_department("office", ""));
1274+ EXPECT_TRUE(db->is_descendant_of_department("rpg", ""));
1275+ EXPECT_TRUE(db->is_descendant_of_department("games", ""));
1276+ EXPECT_FALSE(db->is_descendant_of_department("games", "office"));
1277+ EXPECT_FALSE(db->is_descendant_of_department("", "games"));
1278+}
1279+
1280 TEST_F(DepartmentsDbTest, testDepartmentNameUpdates)
1281 {
1282 {
1283@@ -156,10 +188,10 @@
1284 }
1285 {
1286 auto depts = db->get_children_departments("games");
1287- EXPECT_EQ(3u, depts.size());
1288+ EXPECT_EQ(2u, depts.size());
1289 EXPECT_TRUE(std::find(depts.begin(), depts.end(), DepartmentsDb::DepartmentInfo("rpg", false)) != depts.end());
1290 EXPECT_TRUE(std::find(depts.begin(), depts.end(), DepartmentsDb::DepartmentInfo("fps", false)) != depts.end());
1291- EXPECT_TRUE(std::find(depts.begin(), depts.end(), DepartmentsDb::DepartmentInfo("card", false)) != depts.end());
1292+ EXPECT_FALSE(std::find(depts.begin(), depts.end(), DepartmentsDb::DepartmentInfo("card", false)) != depts.end());
1293 }
1294 }
1295
1296
1297=== modified file 'libclickscope/tests/test_download_manager.cpp'
1298--- libclickscope/tests/test_download_manager.cpp 2014-06-19 21:22:53 +0000
1299+++ libclickscope/tests/test_download_manager.cpp 2014-08-21 20:38:09 +0000
1300@@ -47,6 +47,8 @@
1301
1302 #include "mock_ubuntu_download_manager.h"
1303
1304+using namespace ::testing;
1305+
1306 namespace udm = Ubuntu::DownloadManager;
1307 #include <ubuntu/download_manager/download_struct.h>
1308
1309@@ -58,6 +60,7 @@
1310 namespace
1311 {
1312 const QString TEST_URL("http://test.local/");
1313+const QString TEST_SHA512("fake_hash");
1314 const QString TEST_HEADER_VALUE("test header value");
1315 const QString TEST_APP_ID("test_app_id");
1316 const QString TEST_CLICK_TOKEN_VALUE("test token value");
1317@@ -326,7 +329,7 @@
1318 QTimer timer;
1319 timer.setSingleShot(true);
1320 QObject::connect(&timer, &QTimer::timeout, [&dm]() {
1321- dm.fetchClickToken(TEST_URL);
1322+ dm.fetchClickToken(TEST_URL, TEST_SHA512);
1323 } );
1324 timer.start(0);
1325
1326@@ -382,13 +385,13 @@
1327
1328 std::function<void()> clickTokenSignalFunc;
1329 if (p.clickTokenFetchSignalsError) {
1330- clickTokenSignalFunc = std::function<void()>([&](){
1331+ clickTokenSignalFunc = std::function<void()>([&](){
1332 dm.clickTokenFetchError(TEST_DOWNLOADERROR_STRING);
1333 });
1334 EXPECT_CALL(*mockSystemDownloadManager, createDownload(_)).Times(0);
1335
1336 } else {
1337- clickTokenSignalFunc = std::function<void()>([&](){
1338+ clickTokenSignalFunc = std::function<void()>([&](){
1339 dm.clickTokenFetched(TEST_CLICK_TOKEN_VALUE);
1340 });
1341
1342@@ -466,7 +469,7 @@
1343 QTimer timer;
1344 timer.setSingleShot(true);
1345 QObject::connect(&timer, &QTimer::timeout, [&dm]() {
1346- dm.startDownload(TEST_URL, TEST_APP_ID);
1347+ dm.startDownload(TEST_URL, TEST_SHA512, TEST_APP_ID);
1348 } );
1349 timer.start(0);
1350
1351
1352=== modified file 'libclickscope/tests/test_index.cpp'
1353--- libclickscope/tests/test_index.cpp 2014-08-05 19:00:03 +0000
1354+++ libclickscope/tests/test_index.cpp 2014-08-21 20:38:09 +0000
1355@@ -342,6 +342,7 @@
1356 },
1357 "\u1F4A9 Weather\nA weather application.",
1358 "https://public.apps.staging.ubuntu.com/download/ar.com.beuno/wheather-touch/ar.com.beuno.wheather-touch-0.2",
1359+ "fake_sha512",
1360 3.5,
1361 "these, are, key, words",
1362
1363@@ -407,6 +408,7 @@
1364 },
1365 (std::string("\u1F4A9 ") + std::string(appname_utf8.constData()) + "\nA weather application.").c_str(),
1366 "https://public.apps.staging.ubuntu.com/download/ar.com.beuno/wheather-touch/ar.com.beuno.wheather-touch-0.2",
1367+ "fake_sha512",
1368 3.5,
1369 "these, are, key, words",
1370
1371
1372=== modified file 'libclickscope/tests/test_preview.cpp'
1373--- libclickscope/tests/test_preview.cpp 2014-07-24 04:25:22 +0000
1374+++ libclickscope/tests/test_preview.cpp 2014-08-21 20:38:09 +0000
1375@@ -28,6 +28,7 @@
1376 */
1377
1378 #include <unity/scopes/testing/MockPreviewReply.h>
1379+#include <unity/scopes/testing/Result.h>
1380
1381 #include <gtest/gtest.h>
1382 #include <click/preview.h>
1383@@ -110,10 +111,8 @@
1384 click::PackageDetails details;
1385 unity::scopes::PreviewWidgetList widgets;
1386
1387- PreviewStrategyDescriptionTest() : details(click::PackageDetails::from_json(FAKE_JSON_PACKAGE_DETAILS))
1388+ PreviewStrategyDescriptionTest()
1389 {
1390- widgets = preview.descriptionWidgets(details);
1391-
1392 }
1393 void assertWidgetAttribute(int n, std::string attribute_name, std::string expected_value)
1394 {
1395@@ -124,21 +123,41 @@
1396 }
1397 };
1398
1399-TEST_F(PreviewStrategyDescriptionTest, testDescriptionWidgets)
1400+TEST_F(PreviewStrategyDescriptionTest, testDescriptionWidgetsFull)
1401 {
1402- assertWidgetAttribute(0, "title", click::PreviewStrategy::INFO_LABEL);
1403+ details = click::PackageDetails::from_json(FAKE_JSON_PACKAGE_DETAILS);
1404+ widgets = preview.descriptionWidgets(details);
1405+
1406+ assertWidgetAttribute(0, "title", "Info");
1407 assertWidgetAttribute(0, "text", details.description);
1408
1409 assertWidgetAttribute(1, "text", preview.build_other_metadata(details));
1410
1411- assertWidgetAttribute(2, "title", click::PreviewStrategy::UPDATES_LABEL);
1412+ assertWidgetAttribute(2, "title", "Updates");
1413 assertWidgetAttribute(2, "text", preview.build_updates_table(details));
1414
1415- assertWidgetAttribute(3, "title", click::PreviewStrategy::WHATS_NEW_LABEL);
1416+ assertWidgetAttribute(3, "title", "What's new");
1417 assertWidgetAttribute(3, "text", preview.build_whats_new(details));
1418
1419 }
1420
1421+TEST_F(PreviewStrategyDescriptionTest, testDescriptionWidgetsMinimal)
1422+{
1423+ details = click::PackageDetails::from_json(FAKE_JSON_PACKAGE_DETAILS_DEB);
1424+ widgets = preview.descriptionWidgets(details);
1425+
1426+ ASSERT_EQ(1, widgets.size());
1427+
1428+ assertWidgetAttribute(0, "title", "Info");
1429+ assertWidgetAttribute(0, "text", details.description);
1430+}
1431+
1432+TEST_F(PreviewStrategyDescriptionTest, testDescriptionWidgetsNone)
1433+{
1434+ widgets = preview.descriptionWidgets(details);
1435+ ASSERT_EQ(0, widgets.size());
1436+}
1437+
1438 class FakePreviewStrategy : public click::PreviewStrategy
1439 {
1440 public:
1441@@ -171,3 +190,119 @@
1442 std::vector<std::string> expected_order {"header", "screenshots"};
1443 ASSERT_EQ(expected_order, preview.call_order);
1444 }
1445+
1446+class StrategyChooserTest : public Test {
1447+protected:
1448+ unity::scopes::testing::Result result;
1449+ unity::scopes::ActionMetadata metadata;
1450+ unity::scopes::VariantMap metadict;
1451+ QSharedPointer<click::web::Client> client;
1452+ QSharedPointer<click::network::AccessManager> nam;
1453+ std::shared_ptr<click::DepartmentsDb> depts;
1454+ const std::string FAKE_SHA512 = "FAKE_SHA512";
1455+
1456+public:
1457+ StrategyChooserTest() : metadata("en_EN", "phone") {
1458+ }
1459+};
1460+
1461+class MockablePreview : public click::Preview {
1462+public:
1463+ MockablePreview(const unity::scopes::Result& result, const unity::scopes::ActionMetadata& metadata) :
1464+ click::Preview(result, metadata)
1465+ {
1466+
1467+ }
1468+
1469+ MOCK_METHOD6(build_installing, click::PreviewStrategy*(const std::string&, const std::string&,
1470+ const unity::scopes::Result&, const QSharedPointer<click::web::Client>&,
1471+ const QSharedPointer<click::network::AccessManager>&, std::shared_ptr<click::DepartmentsDb>));
1472+};
1473+
1474+TEST_F(StrategyChooserTest, testSha512IsUsed) {
1475+ metadict["action_id"] = click::Preview::Actions::INSTALL_CLICK;
1476+ metadict["download_url"] = "fake_download_url";
1477+ metadict["download_sha512"] = FAKE_SHA512;
1478+ metadata.set_scope_data(unity::scopes::Variant(metadict));
1479+ MockablePreview preview(result, metadata);
1480+ EXPECT_CALL(preview, build_installing(_, FAKE_SHA512, _, _, _, _));
1481+ preview.choose_strategy(client, nam, depts);
1482+}
1483+
1484+
1485+class UninstalledPreviewTest : public PreviewsBaseTest {
1486+public:
1487+ FakeResult result{vm};
1488+ click::PackageDetails details;
1489+ unity::scopes::PreviewWidgetList widgets;
1490+ QSharedPointer<click::web::Client> client;
1491+ QSharedPointer<click::network::AccessManager> nam;
1492+ std::shared_ptr<click::DepartmentsDb> depts;
1493+ unity::scopes::testing::MockPreviewReply reply;
1494+ std::shared_ptr<unity::scopes::testing::MockPreviewReply> replyptr{&reply, [](unity::scopes::testing::MockPreviewReply*){}};
1495+};
1496+
1497+class FakeDownloader : public click::Downloader {
1498+ std::string object_path;
1499+public:
1500+ FakeDownloader(const std::string& object_path, const QSharedPointer<click::network::AccessManager>& networkAccessManager)
1501+ : click::Downloader(networkAccessManager), object_path(object_path)
1502+ {
1503+
1504+ }
1505+ void get_download_progress(std::string /*package_name*/, const std::function<void (std::string)> &callback)
1506+ {
1507+ callback(object_path);
1508+ }
1509+};
1510+
1511+class FakeUninstalledPreview : public click::UninstalledPreview {
1512+ std::string object_path;
1513+public:
1514+ FakeUninstalledPreview(const std::string& object_path,
1515+ const unity::scopes::Result& result,
1516+ const QSharedPointer<click::web::Client>& client,
1517+ const std::shared_ptr<click::DepartmentsDb>& depts,
1518+ const QSharedPointer<click::network::AccessManager>& nam)
1519+ : click::UninstalledPreview(result, client, depts, nam), object_path(object_path)
1520+ {
1521+
1522+ }
1523+
1524+ virtual click::Downloader* get_downloader(const QSharedPointer<click::network::AccessManager> &nam)
1525+ {
1526+ return new FakeDownloader(object_path, nam);
1527+ }
1528+
1529+ void populateDetails(std::function<void (const click::PackageDetails &)> details_callback,
1530+ std::function<void (const click::ReviewList &, click::Reviews::Error)> /*reviews_callback*/) {
1531+ click::PackageDetails details;
1532+ details_callback(details);
1533+ }
1534+ MOCK_METHOD1(uninstalledActionButtonWidgets, scopes::PreviewWidgetList (const click::PackageDetails &details));
1535+ MOCK_METHOD1(progressBarWidget, scopes::PreviewWidgetList(const std::string& object_path));
1536+};
1537+
1538+TEST_F(UninstalledPreviewTest, testDownloadInProgress) {
1539+ std::string fake_object_path = "/fake/object/path";
1540+
1541+ result["name"] = "fake_app_name";
1542+ scopes::PreviewWidgetList response;
1543+ FakeUninstalledPreview preview(fake_object_path, result, client, depts, nam);
1544+ EXPECT_CALL(preview, progressBarWidget(_))
1545+ .Times(1)
1546+ .WillOnce(Return(response));
1547+ preview.run(replyptr);
1548+}
1549+
1550+TEST_F(UninstalledPreviewTest, testNoDownloadProgress) {
1551+ std::string fake_object_path = "";
1552+
1553+ result["name"] = "fake_app_name";
1554+ scopes::PreviewWidgetList response;
1555+ FakeUninstalledPreview preview(fake_object_path, result, client, depts, nam);
1556+ EXPECT_CALL(preview, uninstalledActionButtonWidgets(_))
1557+ .Times(1)
1558+ .WillOnce(Return(response));
1559+ preview.run(replyptr);
1560+}
1561
1562=== modified file 'libclickscope/tests/test_webclient.cpp'
1563--- libclickscope/tests/test_webclient.cpp 2014-05-23 18:45:01 +0000
1564+++ libclickscope/tests/test_webclient.cpp 2014-08-21 20:38:09 +0000
1565@@ -95,7 +95,7 @@
1566
1567 click::web::Client wc(namPtr);
1568
1569- EXPECT_CALL(nam, sendCustomRequest(IsCorrectUrl(QString("http://fake-server/fake/api/path")), _, _))
1570+ EXPECT_CALL(nam, get(IsCorrectUrl(QString("http://fake-server/fake/api/path"))))
1571 .Times(1)
1572 .WillOnce(Return(replyPtr));
1573
1574@@ -116,7 +116,7 @@
1575 params.add("a", "1");
1576 params.add("b", "2");
1577
1578- EXPECT_CALL(nam, sendCustomRequest(IsCorrectUrl(QString("http://fake-server/fake/api/path?a=1&b=2")), _, _))
1579+ EXPECT_CALL(nam, get(IsCorrectUrl(QString("http://fake-server/fake/api/path?a=1&b=2"))))
1580 .Times(1)
1581 .WillOnce(Return(replyPtr));
1582
1583@@ -163,7 +163,7 @@
1584
1585 click::web::Client wc(namPtr);
1586
1587- EXPECT_CALL(nam, sendCustomRequest(IsCorrectCookieHeader("CookieCookieCookie"), _, _))
1588+ EXPECT_CALL(nam, get(IsCorrectCookieHeader("CookieCookieCookie")))
1589 .Times(1)
1590 .WillOnce(Return(replyPtr));
1591
1592@@ -287,7 +287,7 @@
1593
1594 click::web::Client wc(namPtr);
1595
1596- EXPECT_CALL(nam, sendCustomRequest(_, _, _))
1597+ EXPECT_CALL(nam, get(_))
1598 .Times(1)
1599 .WillOnce(Return(replyPtr));
1600
1601@@ -306,7 +306,7 @@
1602
1603 click::web::Client wc(namPtr);
1604
1605- EXPECT_CALL(nam, sendCustomRequest(_, _, _))
1606+ EXPECT_CALL(nam, get(_))
1607 .Times(1)
1608 .WillOnce(Return(replyPtr));
1609 EXPECT_CALL(*reply, errorString())
1610@@ -335,7 +335,7 @@
1611
1612 click::web::Client wc(namPtr);
1613
1614- EXPECT_CALL(nam, sendCustomRequest(_, _, _))
1615+ EXPECT_CALL(nam, get(_))
1616 .Times(1)
1617 .WillOnce(Return(replyPtr));
1618
1619@@ -357,7 +357,7 @@
1620
1621 ASSERT_EQ(setenv(click::Configuration::LANGUAGE_ENVVAR,
1622 "en_US.UTF-8", 1), 0);
1623- EXPECT_CALL(nam, sendCustomRequest(IsCorrectAcceptLanguageHeader("en-US, en"), _, _))
1624+ EXPECT_CALL(nam, get(IsCorrectAcceptLanguageHeader("en-US, en")))
1625 .Times(1)
1626 .WillOnce(Return(replyPtr));
1627
1628
1629=== modified file 'po/am.po'
1630--- po/am.po 2014-08-06 23:12:02 +0000
1631+++ po/am.po 2014-08-21 20:38:09 +0000
1632@@ -6,21 +6,20 @@
1633 msgid ""
1634 msgstr ""
1635 "Project-Id-Version: unity-scope-click\n"
1636-"Report-Msgid-Bugs-To: \n"
1637-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
1638+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
1639+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
1640 "PO-Revision-Date: 2014-08-04 20:24+0000\n"
1641 "Last-Translator: samson <Unknown>\n"
1642 "Language-Team: Amharic <am@li.org>\n"
1643-"Language: am\n"
1644 "MIME-Version: 1.0\n"
1645 "Content-Type: text/plain; charset=UTF-8\n"
1646 "Content-Transfer-Encoding: 8bit\n"
1647 "Plural-Forms: nplurals=2; plural=n > 1;\n"
1648-"X-Launchpad-Export-Date: 2014-08-05 06:47+0000\n"
1649-"X-Generator: Launchpad (build 17147)\n"
1650+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
1651+"X-Generator: Launchpad (build 17163)\n"
1652
1653 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
1654-#: ../scope/clickapps/apps-query.cpp:259
1655+#: ../scope/clickapps/apps-query.cpp:261
1656 msgid "Ubuntu Store"
1657 msgstr "የ ኡቡንቱ ሱቅ"
1658
1659@@ -32,7 +31,8 @@
1660 msgid "Search store"
1661 msgstr "ሱቅ መፈለጊያ"
1662
1663-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
1664+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
1665+#: ../scope/clickapps/apps-query.cpp:159
1666 msgid "Apps"
1667 msgstr "መተግበሪያዎች"
1668
1669@@ -44,6 +44,10 @@
1670 msgid "Search apps"
1671 msgstr "መተግበሪያ መፈለጊያ"
1672
1673+#: ../libclickscope/click/highlights.cpp:119
1674+msgid "Scopes"
1675+msgstr ""
1676+
1677 #: ../libclickscope/click/preview.cpp:58
1678 msgid "Info"
1679 msgstr "መረጃ"
1680@@ -56,104 +60,104 @@
1681 msgid "What's new"
1682 msgstr "ምን አዲስ ነገር አለ"
1683
1684-#: ../libclickscope/click/preview.cpp:210
1685+#: ../libclickscope/click/preview.cpp:229
1686 msgid "Publisher/Creator"
1687 msgstr "አታሚው/ፈጣሪው"
1688
1689-#: ../libclickscope/click/preview.cpp:211
1690+#: ../libclickscope/click/preview.cpp:230
1691 msgid "Seller"
1692 msgstr "ሻጩ"
1693
1694-#: ../libclickscope/click/preview.cpp:212
1695+#: ../libclickscope/click/preview.cpp:231
1696 msgid "Website"
1697 msgstr "ድህረ ገጽ"
1698
1699-#: ../libclickscope/click/preview.cpp:213
1700+#: ../libclickscope/click/preview.cpp:232
1701 msgid "Contact"
1702 msgstr "ግንኙነት"
1703
1704-#: ../libclickscope/click/preview.cpp:214
1705+#: ../libclickscope/click/preview.cpp:233
1706 msgid "License"
1707 msgstr "ፍቃድ"
1708
1709-#: ../libclickscope/click/preview.cpp:222
1710+#: ../libclickscope/click/preview.cpp:241
1711 msgid "Version number"
1712 msgstr "የእትም ቁጥር"
1713
1714-#: ../libclickscope/click/preview.cpp:223
1715+#: ../libclickscope/click/preview.cpp:242
1716 msgid "Last updated"
1717 msgstr "መጨረሻ የተሻሻለው"
1718
1719-#: ../libclickscope/click/preview.cpp:224
1720+#: ../libclickscope/click/preview.cpp:243
1721 msgid "First released"
1722 msgstr "መጀመሪያ የተለቀቀው"
1723
1724-#: ../libclickscope/click/preview.cpp:225
1725+#: ../libclickscope/click/preview.cpp:244
1726 msgid "Size"
1727 msgstr "መጠን"
1728
1729-#: ../libclickscope/click/preview.cpp:233
1730+#: ../libclickscope/click/preview.cpp:252
1731 msgid "Version"
1732 msgstr "እትም"
1733
1734-#: ../libclickscope/click/preview.cpp:364
1735+#: ../libclickscope/click/preview.cpp:383
1736 msgid "Reviews"
1737 msgstr "ግምገማው"
1738
1739-#: ../libclickscope/click/preview.cpp:383
1740+#: ../libclickscope/click/preview.cpp:402
1741 msgid "Download Error"
1742 msgstr "የማውረድ ስህተት"
1743
1744-#: ../libclickscope/click/preview.cpp:384
1745+#: ../libclickscope/click/preview.cpp:403
1746 msgid "Download or install failed. Please try again."
1747 msgstr "ማውረድ ወይንም መግጠም አልተሳካም፡ እባክዎን እንደገና ይሞክሩ"
1748
1749 #. TODO see bug LP: #1289434
1750-#: ../libclickscope/click/preview.cpp:386
1751+#: ../libclickscope/click/preview.cpp:405
1752 msgid "Close"
1753 msgstr "መዝጊያ"
1754
1755-#: ../libclickscope/click/preview.cpp:391
1756+#: ../libclickscope/click/preview.cpp:410
1757 msgid "Login Error"
1758 msgstr "የመግቢያ ስህተት"
1759
1760-#: ../libclickscope/click/preview.cpp:392
1761+#: ../libclickscope/click/preview.cpp:411
1762 msgid "Please log in to your Ubuntu One account."
1763 msgstr "እባክዎን ወደ ኡቡንቱ ዋን መግለጫዎ ይግቡ"
1764
1765-#: ../libclickscope/click/preview.cpp:394
1766+#: ../libclickscope/click/preview.cpp:413
1767 msgid "Go to Accounts"
1768 msgstr "ወደ መግለጫ መሄጃ"
1769
1770-#: ../libclickscope/click/preview.cpp:624
1771+#: ../libclickscope/click/preview.cpp:646
1772 msgid "Open"
1773 msgstr "መክፈቻ"
1774
1775-#: ../libclickscope/click/preview.cpp:627
1776-#: ../libclickscope/click/preview.cpp:711
1777+#: ../libclickscope/click/preview.cpp:649
1778+#: ../libclickscope/click/preview.cpp:733
1779 msgid "Search"
1780 msgstr "መፈለጊያ"
1781
1782-#: ../libclickscope/click/preview.cpp:645
1783-#: ../libclickscope/click/preview.cpp:782
1784+#: ../libclickscope/click/preview.cpp:667
1785+#: ../libclickscope/click/preview.cpp:804
1786 msgid "Uninstall"
1787 msgstr "ማጥፊያ"
1788
1789-#: ../libclickscope/click/preview.cpp:766
1790+#: ../libclickscope/click/preview.cpp:788
1791 msgid "Confirmation"
1792 msgstr "ማረጋገጫ"
1793
1794 #. TRANSLATORS: Do NOT translate ${title} here.
1795-#: ../libclickscope/click/preview.cpp:769
1796+#: ../libclickscope/click/preview.cpp:791
1797 msgid "Uninstall ${title}?"
1798 msgstr "ማጥፊያ ${title}?"
1799
1800 #. TODO: see bug LP: #1289434
1801-#: ../libclickscope/click/preview.cpp:778
1802+#: ../libclickscope/click/preview.cpp:800
1803 msgid "Cancel"
1804 msgstr "መሰረዣ"
1805
1806-#: ../libclickscope/click/preview.cpp:843
1807+#: ../libclickscope/click/preview.cpp:866
1808 msgid "Install"
1809 msgstr "መግጠሚያ"
1810
1811@@ -163,48 +167,49 @@
1812 msgstr[0] "{1} ባይት"
1813 msgstr[1] "{1} ባይትስ"
1814
1815-#: ../scope/clickapps/apps-query.cpp:260
1816+#: ../scope/clickapps/apps-query.cpp:262
1817 msgid "Get more apps from the store"
1818 msgstr "ተጨማሪ መተግበሪያ በ ሱቅ ውስጥ መፈለጊያ"
1819
1820-#: ../scope/clickapps/apps-query.cpp:266
1821+#: ../scope/clickapps/apps-query.cpp:268
1822 #, c-format
1823 msgid "Search for '%s' in the store"
1824 msgstr "መፈለጊያ በ '%s' ሱቅ ውስጥ"
1825
1826-#: ../scope/clickapps/apps-query.cpp:273
1827+#: ../scope/clickapps/apps-query.cpp:275
1828 msgid "Get more apps like this from the Store"
1829 msgstr "እንደዚህ ያለ ተጨማሪ መተግበሪያ በ ሱቅ ውስጥ መፈለጊያ"
1830
1831-#: ../scope/clickapps/apps-query.cpp:302
1832-#: ../scope/clickstore/store-query.cpp:236
1833-#: ../scope/clickstore/store-query.cpp:247
1834-msgid "All departments"
1835-msgstr "በ ሁሉም ክፍሎች ውስጥ"
1836+#: ../scope/clickapps/apps-query.cpp:315
1837+#: ../scope/clickstore/store-query.cpp:244
1838+#: ../scope/clickstore/store-query.cpp:255
1839+#: ../scope/clickstore/store-query.cpp:467
1840+msgid "All"
1841+msgstr ""
1842
1843-#: ../scope/clickstore/store-query.cpp:285
1844+#: ../scope/clickstore/store-query.cpp:297
1845 msgid "✔ INSTALLED"
1846 msgstr "✔ ተገጥሟል"
1847
1848-#: ../scope/clickstore/store-query.cpp:290
1849+#: ../scope/clickstore/store-query.cpp:302
1850 msgid "✔ PURCHASED"
1851 msgstr "✔ ተገዝቷል"
1852
1853-#: ../scope/clickstore/store-query.cpp:298
1854+#: ../scope/clickstore/store-query.cpp:310
1855 msgid "FREE"
1856 msgstr "ነፃ"
1857
1858-#: ../scope/clickstore/store-query.cpp:415
1859+#: ../scope/clickstore/store-query.cpp:427
1860 msgid "Available"
1861 msgstr "ዝግጁ"
1862
1863-#: ../scope/clickstore/store-query.cpp:421
1864+#: ../scope/clickstore/store-query.cpp:433
1865 #, c-format
1866 msgid "%u result in Ubuntu Store"
1867 msgid_plural "%u results in Ubuntu Store"
1868 msgstr[0] "%u ውጤት ከ ኡቡንቱ ሱቅ ውስጥ"
1869 msgstr[1] "%u ውጤቶች ከ ኡቡንቱ ሱቅ ውስጥ"
1870
1871-#: ../scope/clickstore/store-query.cpp:431
1872+#: ../scope/clickstore/store-query.cpp:443
1873 msgid "Recommended"
1874 msgstr "የተጠቆመው"
1875
1876=== modified file 'po/ar.po'
1877--- po/ar.po 2014-07-30 07:11:20 +0000
1878+++ po/ar.po 2014-08-21 20:38:09 +0000
1879@@ -7,7 +7,7 @@
1880 msgstr ""
1881 "Project-Id-Version: unity-scope-click\n"
1882 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
1883-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
1884+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
1885 "PO-Revision-Date: 2014-05-16 23:33+0000\n"
1886 "Last-Translator: Ibrahim Saed <ibraheem5000@gmail.com>\n"
1887 "Language-Team: Arabic <ar@li.org>\n"
1888@@ -16,11 +16,11 @@
1889 "Content-Transfer-Encoding: 8bit\n"
1890 "Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n % 100 >= "
1891 "3 && n % 100 <= 10 ? 3 : n % 100 >= 11 && n % 100 <= 99 ? 4 : 5;\n"
1892-"X-Launchpad-Export-Date: 2014-07-30 07:10+0000\n"
1893-"X-Generator: Launchpad (build 17131)\n"
1894+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
1895+"X-Generator: Launchpad (build 17163)\n"
1896
1897 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
1898-#: ../scope/clickapps/apps-query.cpp:259
1899+#: ../scope/clickapps/apps-query.cpp:261
1900 msgid "Ubuntu Store"
1901 msgstr ""
1902
1903@@ -32,7 +32,8 @@
1904 msgid "Search store"
1905 msgstr ""
1906
1907-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
1908+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
1909+#: ../scope/clickapps/apps-query.cpp:159
1910 msgid "Apps"
1911 msgstr "التطبيقات"
1912
1913@@ -44,6 +45,10 @@
1914 msgid "Search apps"
1915 msgstr ""
1916
1917+#: ../libclickscope/click/highlights.cpp:119
1918+msgid "Scopes"
1919+msgstr ""
1920+
1921 #: ../libclickscope/click/preview.cpp:58
1922 msgid "Info"
1923 msgstr ""
1924@@ -56,104 +61,104 @@
1925 msgid "What's new"
1926 msgstr ""
1927
1928-#: ../libclickscope/click/preview.cpp:210
1929+#: ../libclickscope/click/preview.cpp:229
1930 msgid "Publisher/Creator"
1931 msgstr ""
1932
1933-#: ../libclickscope/click/preview.cpp:211
1934+#: ../libclickscope/click/preview.cpp:230
1935 msgid "Seller"
1936 msgstr ""
1937
1938-#: ../libclickscope/click/preview.cpp:212
1939+#: ../libclickscope/click/preview.cpp:231
1940 msgid "Website"
1941 msgstr ""
1942
1943-#: ../libclickscope/click/preview.cpp:213
1944+#: ../libclickscope/click/preview.cpp:232
1945 msgid "Contact"
1946 msgstr ""
1947
1948-#: ../libclickscope/click/preview.cpp:214
1949+#: ../libclickscope/click/preview.cpp:233
1950 msgid "License"
1951 msgstr ""
1952
1953-#: ../libclickscope/click/preview.cpp:222
1954+#: ../libclickscope/click/preview.cpp:241
1955 msgid "Version number"
1956 msgstr ""
1957
1958-#: ../libclickscope/click/preview.cpp:223
1959+#: ../libclickscope/click/preview.cpp:242
1960 msgid "Last updated"
1961 msgstr ""
1962
1963-#: ../libclickscope/click/preview.cpp:224
1964+#: ../libclickscope/click/preview.cpp:243
1965 msgid "First released"
1966 msgstr ""
1967
1968-#: ../libclickscope/click/preview.cpp:225
1969+#: ../libclickscope/click/preview.cpp:244
1970 msgid "Size"
1971 msgstr ""
1972
1973-#: ../libclickscope/click/preview.cpp:233
1974+#: ../libclickscope/click/preview.cpp:252
1975 msgid "Version"
1976 msgstr ""
1977
1978-#: ../libclickscope/click/preview.cpp:364
1979+#: ../libclickscope/click/preview.cpp:383
1980 msgid "Reviews"
1981 msgstr ""
1982
1983-#: ../libclickscope/click/preview.cpp:383
1984+#: ../libclickscope/click/preview.cpp:402
1985 msgid "Download Error"
1986 msgstr "خطأ في التنزيل"
1987
1988-#: ../libclickscope/click/preview.cpp:384
1989+#: ../libclickscope/click/preview.cpp:403
1990 msgid "Download or install failed. Please try again."
1991 msgstr "فشل في التنزيل أو التثبيت. يرجى المحاولة مجددًا."
1992
1993 #. TODO see bug LP: #1289434
1994-#: ../libclickscope/click/preview.cpp:386
1995+#: ../libclickscope/click/preview.cpp:405
1996 msgid "Close"
1997 msgstr "إغلاق"
1998
1999-#: ../libclickscope/click/preview.cpp:391
2000+#: ../libclickscope/click/preview.cpp:410
2001 msgid "Login Error"
2002 msgstr "خطأ في الولوج"
2003
2004-#: ../libclickscope/click/preview.cpp:392
2005+#: ../libclickscope/click/preview.cpp:411
2006 msgid "Please log in to your Ubuntu One account."
2007 msgstr "يرجى الولوج إلى حساب أوبونتو ون خاصتك."
2008
2009-#: ../libclickscope/click/preview.cpp:394
2010+#: ../libclickscope/click/preview.cpp:413
2011 msgid "Go to Accounts"
2012 msgstr "انتقل إلى الحسابات"
2013
2014-#: ../libclickscope/click/preview.cpp:624
2015+#: ../libclickscope/click/preview.cpp:646
2016 msgid "Open"
2017 msgstr "فتح"
2018
2019-#: ../libclickscope/click/preview.cpp:627
2020-#: ../libclickscope/click/preview.cpp:711
2021+#: ../libclickscope/click/preview.cpp:649
2022+#: ../libclickscope/click/preview.cpp:733
2023 msgid "Search"
2024 msgstr ""
2025
2026-#: ../libclickscope/click/preview.cpp:645
2027-#: ../libclickscope/click/preview.cpp:782
2028+#: ../libclickscope/click/preview.cpp:667
2029+#: ../libclickscope/click/preview.cpp:804
2030 msgid "Uninstall"
2031 msgstr "إزالة التثبيت"
2032
2033-#: ../libclickscope/click/preview.cpp:766
2034+#: ../libclickscope/click/preview.cpp:788
2035 msgid "Confirmation"
2036 msgstr "التأكيد"
2037
2038 #. TRANSLATORS: Do NOT translate ${title} here.
2039-#: ../libclickscope/click/preview.cpp:769
2040+#: ../libclickscope/click/preview.cpp:791
2041 msgid "Uninstall ${title}?"
2042 msgstr "إزالة تثبيت ${title}؟"
2043
2044 #. TODO: see bug LP: #1289434
2045-#: ../libclickscope/click/preview.cpp:778
2046+#: ../libclickscope/click/preview.cpp:800
2047 msgid "Cancel"
2048 msgstr "إلغاء"
2049
2050-#: ../libclickscope/click/preview.cpp:843
2051+#: ../libclickscope/click/preview.cpp:866
2052 msgid "Install"
2053 msgstr "تثبيت"
2054
2055@@ -163,48 +168,49 @@
2056 msgstr[0] ""
2057 msgstr[1] ""
2058
2059-#: ../scope/clickapps/apps-query.cpp:260
2060+#: ../scope/clickapps/apps-query.cpp:262
2061 msgid "Get more apps from the store"
2062 msgstr ""
2063
2064-#: ../scope/clickapps/apps-query.cpp:266
2065+#: ../scope/clickapps/apps-query.cpp:268
2066 #, c-format
2067 msgid "Search for '%s' in the store"
2068 msgstr ""
2069
2070-#: ../scope/clickapps/apps-query.cpp:273
2071+#: ../scope/clickapps/apps-query.cpp:275
2072 msgid "Get more apps like this from the Store"
2073 msgstr ""
2074
2075-#: ../scope/clickapps/apps-query.cpp:302
2076-#: ../scope/clickstore/store-query.cpp:236
2077-#: ../scope/clickstore/store-query.cpp:247
2078-msgid "All departments"
2079+#: ../scope/clickapps/apps-query.cpp:315
2080+#: ../scope/clickstore/store-query.cpp:244
2081+#: ../scope/clickstore/store-query.cpp:255
2082+#: ../scope/clickstore/store-query.cpp:467
2083+msgid "All"
2084 msgstr ""
2085
2086-#: ../scope/clickstore/store-query.cpp:285
2087+#: ../scope/clickstore/store-query.cpp:297
2088 msgid "✔ INSTALLED"
2089 msgstr ""
2090
2091-#: ../scope/clickstore/store-query.cpp:290
2092+#: ../scope/clickstore/store-query.cpp:302
2093 msgid "✔ PURCHASED"
2094 msgstr ""
2095
2096-#: ../scope/clickstore/store-query.cpp:298
2097+#: ../scope/clickstore/store-query.cpp:310
2098 msgid "FREE"
2099 msgstr ""
2100
2101-#: ../scope/clickstore/store-query.cpp:415
2102+#: ../scope/clickstore/store-query.cpp:427
2103 msgid "Available"
2104 msgstr "متوفر"
2105
2106-#: ../scope/clickstore/store-query.cpp:421
2107+#: ../scope/clickstore/store-query.cpp:433
2108 #, c-format
2109 msgid "%u result in Ubuntu Store"
2110 msgid_plural "%u results in Ubuntu Store"
2111 msgstr[0] ""
2112 msgstr[1] ""
2113
2114-#: ../scope/clickstore/store-query.cpp:431
2115+#: ../scope/clickstore/store-query.cpp:443
2116 msgid "Recommended"
2117 msgstr ""
2118
2119=== modified file 'po/ast.po'
2120--- po/ast.po 2014-08-02 06:42:45 +0000
2121+++ po/ast.po 2014-08-21 20:38:09 +0000
2122@@ -7,7 +7,7 @@
2123 msgstr ""
2124 "Project-Id-Version: unity-scope-click\n"
2125 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
2126-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
2127+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
2128 "PO-Revision-Date: 2014-08-01 07:56+0000\n"
2129 "Last-Translator: ivarela <ivarela@ubuntu.com>\n"
2130 "Language-Team: Asturian <ast@li.org>\n"
2131@@ -15,11 +15,11 @@
2132 "Content-Type: text/plain; charset=UTF-8\n"
2133 "Content-Transfer-Encoding: 8bit\n"
2134 "Plural-Forms: nplurals=2; plural=n != 1;\n"
2135-"X-Launchpad-Export-Date: 2014-08-02 06:42+0000\n"
2136-"X-Generator: Launchpad (build 17147)\n"
2137+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
2138+"X-Generator: Launchpad (build 17163)\n"
2139
2140 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
2141-#: ../scope/clickapps/apps-query.cpp:259
2142+#: ../scope/clickapps/apps-query.cpp:261
2143 msgid "Ubuntu Store"
2144 msgstr "Tienda Ubuntu"
2145
2146@@ -31,7 +31,8 @@
2147 msgid "Search store"
2148 msgstr "Guetar na tienda"
2149
2150-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
2151+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
2152+#: ../scope/clickapps/apps-query.cpp:159
2153 msgid "Apps"
2154 msgstr "Apps"
2155
2156@@ -43,6 +44,10 @@
2157 msgid "Search apps"
2158 msgstr "Guetar apps"
2159
2160+#: ../libclickscope/click/highlights.cpp:119
2161+msgid "Scopes"
2162+msgstr ""
2163+
2164 #: ../libclickscope/click/preview.cpp:58
2165 msgid "Info"
2166 msgstr "Info"
2167@@ -55,104 +60,104 @@
2168 msgid "What's new"
2169 msgstr "Qué hai nuevo"
2170
2171-#: ../libclickscope/click/preview.cpp:210
2172+#: ../libclickscope/click/preview.cpp:229
2173 msgid "Publisher/Creator"
2174 msgstr "Espublizador/Creador"
2175
2176-#: ../libclickscope/click/preview.cpp:211
2177+#: ../libclickscope/click/preview.cpp:230
2178 msgid "Seller"
2179 msgstr "Vendedor"
2180
2181-#: ../libclickscope/click/preview.cpp:212
2182+#: ../libclickscope/click/preview.cpp:231
2183 msgid "Website"
2184 msgstr "Sitiu web"
2185
2186-#: ../libclickscope/click/preview.cpp:213
2187+#: ../libclickscope/click/preview.cpp:232
2188 msgid "Contact"
2189 msgstr "Contautu"
2190
2191-#: ../libclickscope/click/preview.cpp:214
2192+#: ../libclickscope/click/preview.cpp:233
2193 msgid "License"
2194 msgstr "Llicencia"
2195
2196-#: ../libclickscope/click/preview.cpp:222
2197+#: ../libclickscope/click/preview.cpp:241
2198 msgid "Version number"
2199 msgstr "Númberu de versión"
2200
2201-#: ../libclickscope/click/preview.cpp:223
2202+#: ../libclickscope/click/preview.cpp:242
2203 msgid "Last updated"
2204 msgstr "Caberu anovamientu"
2205
2206-#: ../libclickscope/click/preview.cpp:224
2207+#: ../libclickscope/click/preview.cpp:243
2208 msgid "First released"
2209 msgstr "Primera espublización"
2210
2211-#: ../libclickscope/click/preview.cpp:225
2212+#: ../libclickscope/click/preview.cpp:244
2213 msgid "Size"
2214 msgstr "Tamañu"
2215
2216-#: ../libclickscope/click/preview.cpp:233
2217+#: ../libclickscope/click/preview.cpp:252
2218 msgid "Version"
2219 msgstr "Versión"
2220
2221-#: ../libclickscope/click/preview.cpp:364
2222+#: ../libclickscope/click/preview.cpp:383
2223 msgid "Reviews"
2224 msgstr "Revisiones"
2225
2226-#: ../libclickscope/click/preview.cpp:383
2227+#: ../libclickscope/click/preview.cpp:402
2228 msgid "Download Error"
2229 msgstr "Fallu de descarga"
2230
2231-#: ../libclickscope/click/preview.cpp:384
2232+#: ../libclickscope/click/preview.cpp:403
2233 msgid "Download or install failed. Please try again."
2234 msgstr "La descarga o la instalación fallaron. Inténtalo de nueves."
2235
2236 #. TODO see bug LP: #1289434
2237-#: ../libclickscope/click/preview.cpp:386
2238+#: ../libclickscope/click/preview.cpp:405
2239 msgid "Close"
2240 msgstr "Zarrar"
2241
2242-#: ../libclickscope/click/preview.cpp:391
2243+#: ../libclickscope/click/preview.cpp:410
2244 msgid "Login Error"
2245 msgstr "Fallu de rexistru"
2246
2247-#: ../libclickscope/click/preview.cpp:392
2248+#: ../libclickscope/click/preview.cpp:411
2249 msgid "Please log in to your Ubuntu One account."
2250 msgstr "Accedi a la to cuenta d'Ubuntu One."
2251
2252-#: ../libclickscope/click/preview.cpp:394
2253+#: ../libclickscope/click/preview.cpp:413
2254 msgid "Go to Accounts"
2255 msgstr "Dir a Cuentes"
2256
2257-#: ../libclickscope/click/preview.cpp:624
2258+#: ../libclickscope/click/preview.cpp:646
2259 msgid "Open"
2260 msgstr "Abrir"
2261
2262-#: ../libclickscope/click/preview.cpp:627
2263-#: ../libclickscope/click/preview.cpp:711
2264+#: ../libclickscope/click/preview.cpp:649
2265+#: ../libclickscope/click/preview.cpp:733
2266 msgid "Search"
2267 msgstr "Guetar"
2268
2269-#: ../libclickscope/click/preview.cpp:645
2270-#: ../libclickscope/click/preview.cpp:782
2271+#: ../libclickscope/click/preview.cpp:667
2272+#: ../libclickscope/click/preview.cpp:804
2273 msgid "Uninstall"
2274 msgstr "Desinstalar"
2275
2276-#: ../libclickscope/click/preview.cpp:766
2277+#: ../libclickscope/click/preview.cpp:788
2278 msgid "Confirmation"
2279 msgstr "Confirmación"
2280
2281 #. TRANSLATORS: Do NOT translate ${title} here.
2282-#: ../libclickscope/click/preview.cpp:769
2283+#: ../libclickscope/click/preview.cpp:791
2284 msgid "Uninstall ${title}?"
2285 msgstr "Desinstalar ${title}?"
2286
2287 #. TODO: see bug LP: #1289434
2288-#: ../libclickscope/click/preview.cpp:778
2289+#: ../libclickscope/click/preview.cpp:800
2290 msgid "Cancel"
2291 msgstr "Encaboxar"
2292
2293-#: ../libclickscope/click/preview.cpp:843
2294+#: ../libclickscope/click/preview.cpp:866
2295 msgid "Install"
2296 msgstr "Instalar"
2297
2298@@ -162,48 +167,49 @@
2299 msgstr[0] "{1} byte"
2300 msgstr[1] "{1} bytes"
2301
2302-#: ../scope/clickapps/apps-query.cpp:260
2303+#: ../scope/clickapps/apps-query.cpp:262
2304 msgid "Get more apps from the store"
2305 msgstr "Consigui más aplicaciones na tienda"
2306
2307-#: ../scope/clickapps/apps-query.cpp:266
2308+#: ../scope/clickapps/apps-query.cpp:268
2309 #, c-format
2310 msgid "Search for '%s' in the store"
2311 msgstr "Guetar «%s» na tienda"
2312
2313-#: ../scope/clickapps/apps-query.cpp:273
2314+#: ../scope/clickapps/apps-query.cpp:275
2315 msgid "Get more apps like this from the Store"
2316 msgstr "Más aplicaciones como esta na Tienda"
2317
2318-#: ../scope/clickapps/apps-query.cpp:302
2319-#: ../scope/clickstore/store-query.cpp:236
2320-#: ../scope/clickstore/store-query.cpp:247
2321-msgid "All departments"
2322-msgstr "Tolos departamentos"
2323+#: ../scope/clickapps/apps-query.cpp:315
2324+#: ../scope/clickstore/store-query.cpp:244
2325+#: ../scope/clickstore/store-query.cpp:255
2326+#: ../scope/clickstore/store-query.cpp:467
2327+msgid "All"
2328+msgstr ""
2329
2330-#: ../scope/clickstore/store-query.cpp:285
2331+#: ../scope/clickstore/store-query.cpp:297
2332 msgid "✔ INSTALLED"
2333 msgstr "✔ INSTALÓSE"
2334
2335-#: ../scope/clickstore/store-query.cpp:290
2336+#: ../scope/clickstore/store-query.cpp:302
2337 msgid "✔ PURCHASED"
2338 msgstr "✔ MERCADA"
2339
2340-#: ../scope/clickstore/store-query.cpp:298
2341+#: ../scope/clickstore/store-query.cpp:310
2342 msgid "FREE"
2343 msgstr "LLIBRE"
2344
2345-#: ../scope/clickstore/store-query.cpp:415
2346+#: ../scope/clickstore/store-query.cpp:427
2347 msgid "Available"
2348 msgstr "Disponible"
2349
2350-#: ../scope/clickstore/store-query.cpp:421
2351+#: ../scope/clickstore/store-query.cpp:433
2352 #, c-format
2353 msgid "%u result in Ubuntu Store"
2354 msgid_plural "%u results in Ubuntu Store"
2355 msgstr[0] "%u resultáu na Tienda d'Ubuntu"
2356 msgstr[1] "%u resultaos na Tienda d'Ubuntu"
2357
2358-#: ../scope/clickstore/store-query.cpp:431
2359+#: ../scope/clickstore/store-query.cpp:443
2360 msgid "Recommended"
2361 msgstr "Recomendaes"
2362
2363=== modified file 'po/br.po'
2364--- po/br.po 2014-07-30 07:11:20 +0000
2365+++ po/br.po 2014-08-21 20:38:09 +0000
2366@@ -7,7 +7,7 @@
2367 msgstr ""
2368 "Project-Id-Version: unity-scope-click\n"
2369 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
2370-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
2371+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
2372 "PO-Revision-Date: 2014-07-25 06:55+0000\n"
2373 "Last-Translator: Fohanno Thierry <thierry.fohanno@ofis-bzh.org>\n"
2374 "Language-Team: Breton <br@li.org>\n"
2375@@ -15,11 +15,11 @@
2376 "Content-Type: text/plain; charset=UTF-8\n"
2377 "Content-Transfer-Encoding: 8bit\n"
2378 "Plural-Forms: nplurals=2; plural=n > 1;\n"
2379-"X-Launchpad-Export-Date: 2014-07-30 07:10+0000\n"
2380-"X-Generator: Launchpad (build 17131)\n"
2381+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
2382+"X-Generator: Launchpad (build 17163)\n"
2383
2384 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
2385-#: ../scope/clickapps/apps-query.cpp:259
2386+#: ../scope/clickapps/apps-query.cpp:261
2387 msgid "Ubuntu Store"
2388 msgstr "Stal Ubuntu"
2389
2390@@ -31,7 +31,8 @@
2391 msgid "Search store"
2392 msgstr ""
2393
2394-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
2395+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
2396+#: ../scope/clickapps/apps-query.cpp:159
2397 msgid "Apps"
2398 msgstr "Arloadoù"
2399
2400@@ -43,6 +44,10 @@
2401 msgid "Search apps"
2402 msgstr ""
2403
2404+#: ../libclickscope/click/highlights.cpp:119
2405+msgid "Scopes"
2406+msgstr ""
2407+
2408 #: ../libclickscope/click/preview.cpp:58
2409 msgid "Info"
2410 msgstr ""
2411@@ -55,104 +60,104 @@
2412 msgid "What's new"
2413 msgstr ""
2414
2415-#: ../libclickscope/click/preview.cpp:210
2416+#: ../libclickscope/click/preview.cpp:229
2417 msgid "Publisher/Creator"
2418 msgstr ""
2419
2420-#: ../libclickscope/click/preview.cpp:211
2421+#: ../libclickscope/click/preview.cpp:230
2422 msgid "Seller"
2423 msgstr ""
2424
2425-#: ../libclickscope/click/preview.cpp:212
2426+#: ../libclickscope/click/preview.cpp:231
2427 msgid "Website"
2428 msgstr ""
2429
2430-#: ../libclickscope/click/preview.cpp:213
2431+#: ../libclickscope/click/preview.cpp:232
2432 msgid "Contact"
2433 msgstr ""
2434
2435-#: ../libclickscope/click/preview.cpp:214
2436+#: ../libclickscope/click/preview.cpp:233
2437 msgid "License"
2438 msgstr ""
2439
2440-#: ../libclickscope/click/preview.cpp:222
2441+#: ../libclickscope/click/preview.cpp:241
2442 msgid "Version number"
2443 msgstr ""
2444
2445-#: ../libclickscope/click/preview.cpp:223
2446+#: ../libclickscope/click/preview.cpp:242
2447 msgid "Last updated"
2448 msgstr ""
2449
2450-#: ../libclickscope/click/preview.cpp:224
2451+#: ../libclickscope/click/preview.cpp:243
2452 msgid "First released"
2453 msgstr ""
2454
2455-#: ../libclickscope/click/preview.cpp:225
2456+#: ../libclickscope/click/preview.cpp:244
2457 msgid "Size"
2458 msgstr ""
2459
2460-#: ../libclickscope/click/preview.cpp:233
2461+#: ../libclickscope/click/preview.cpp:252
2462 msgid "Version"
2463 msgstr ""
2464
2465-#: ../libclickscope/click/preview.cpp:364
2466+#: ../libclickscope/click/preview.cpp:383
2467 msgid "Reviews"
2468 msgstr ""
2469
2470-#: ../libclickscope/click/preview.cpp:383
2471+#: ../libclickscope/click/preview.cpp:402
2472 msgid "Download Error"
2473 msgstr "Fazi pellgargañ"
2474
2475-#: ../libclickscope/click/preview.cpp:384
2476+#: ../libclickscope/click/preview.cpp:403
2477 msgid "Download or install failed. Please try again."
2478 msgstr "C'hwitet eo ar pellgargañ pe ar staliañ. Esaeit en-dro, mar plij."
2479
2480 #. TODO see bug LP: #1289434
2481-#: ../libclickscope/click/preview.cpp:386
2482+#: ../libclickscope/click/preview.cpp:405
2483 msgid "Close"
2484 msgstr "Serriñ"
2485
2486-#: ../libclickscope/click/preview.cpp:391
2487+#: ../libclickscope/click/preview.cpp:410
2488 msgid "Login Error"
2489 msgstr "Fazi kevreañ"
2490
2491-#: ../libclickscope/click/preview.cpp:392
2492+#: ../libclickscope/click/preview.cpp:411
2493 msgid "Please log in to your Ubuntu One account."
2494 msgstr "Kevreit ouzh ho kont Ubuntu One, mar plij."
2495
2496-#: ../libclickscope/click/preview.cpp:394
2497+#: ../libclickscope/click/preview.cpp:413
2498 msgid "Go to Accounts"
2499 msgstr "Mont d'ar c'hontoù."
2500
2501-#: ../libclickscope/click/preview.cpp:624
2502+#: ../libclickscope/click/preview.cpp:646
2503 msgid "Open"
2504 msgstr "Digeriñ"
2505
2506-#: ../libclickscope/click/preview.cpp:627
2507-#: ../libclickscope/click/preview.cpp:711
2508+#: ../libclickscope/click/preview.cpp:649
2509+#: ../libclickscope/click/preview.cpp:733
2510 msgid "Search"
2511 msgstr "Klask"
2512
2513-#: ../libclickscope/click/preview.cpp:645
2514-#: ../libclickscope/click/preview.cpp:782
2515+#: ../libclickscope/click/preview.cpp:667
2516+#: ../libclickscope/click/preview.cpp:804
2517 msgid "Uninstall"
2518 msgstr "Distaliañ"
2519
2520-#: ../libclickscope/click/preview.cpp:766
2521+#: ../libclickscope/click/preview.cpp:788
2522 msgid "Confirmation"
2523 msgstr "Kadarnadur"
2524
2525 #. TRANSLATORS: Do NOT translate ${title} here.
2526-#: ../libclickscope/click/preview.cpp:769
2527+#: ../libclickscope/click/preview.cpp:791
2528 msgid "Uninstall ${title}?"
2529 msgstr "Distaliañ ${title} ?"
2530
2531 #. TODO: see bug LP: #1289434
2532-#: ../libclickscope/click/preview.cpp:778
2533+#: ../libclickscope/click/preview.cpp:800
2534 msgid "Cancel"
2535 msgstr "Nullañ"
2536
2537-#: ../libclickscope/click/preview.cpp:843
2538+#: ../libclickscope/click/preview.cpp:866
2539 msgid "Install"
2540 msgstr "Staliañ"
2541
2542@@ -162,48 +167,49 @@
2543 msgstr[0] ""
2544 msgstr[1] ""
2545
2546-#: ../scope/clickapps/apps-query.cpp:260
2547+#: ../scope/clickapps/apps-query.cpp:262
2548 msgid "Get more apps from the store"
2549 msgstr "Tapout muioc'h a arloadoù er stal"
2550
2551-#: ../scope/clickapps/apps-query.cpp:266
2552+#: ../scope/clickapps/apps-query.cpp:268
2553 #, c-format
2554 msgid "Search for '%s' in the store"
2555 msgstr "Klask '%s' er stal"
2556
2557-#: ../scope/clickapps/apps-query.cpp:273
2558+#: ../scope/clickapps/apps-query.cpp:275
2559 msgid "Get more apps like this from the Store"
2560 msgstr "Tapout muioc'h a arloadoù evel hemañ er Stal"
2561
2562-#: ../scope/clickapps/apps-query.cpp:302
2563-#: ../scope/clickstore/store-query.cpp:236
2564-#: ../scope/clickstore/store-query.cpp:247
2565-msgid "All departments"
2566-msgstr "An holl rannoù"
2567+#: ../scope/clickapps/apps-query.cpp:315
2568+#: ../scope/clickstore/store-query.cpp:244
2569+#: ../scope/clickstore/store-query.cpp:255
2570+#: ../scope/clickstore/store-query.cpp:467
2571+msgid "All"
2572+msgstr ""
2573
2574-#: ../scope/clickstore/store-query.cpp:285
2575+#: ../scope/clickstore/store-query.cpp:297
2576 msgid "✔ INSTALLED"
2577 msgstr "✔ STALIET"
2578
2579-#: ../scope/clickstore/store-query.cpp:290
2580+#: ../scope/clickstore/store-query.cpp:302
2581 msgid "✔ PURCHASED"
2582 msgstr "PRENET"
2583
2584-#: ../scope/clickstore/store-query.cpp:298
2585+#: ../scope/clickstore/store-query.cpp:310
2586 msgid "FREE"
2587 msgstr "DIGOUST"
2588
2589-#: ../scope/clickstore/store-query.cpp:415
2590+#: ../scope/clickstore/store-query.cpp:427
2591 msgid "Available"
2592 msgstr "A c'haller kaout"
2593
2594-#: ../scope/clickstore/store-query.cpp:421
2595+#: ../scope/clickstore/store-query.cpp:433
2596 #, c-format
2597 msgid "%u result in Ubuntu Store"
2598 msgid_plural "%u results in Ubuntu Store"
2599 msgstr[0] "%u disoc'h e stal Ubuntu"
2600 msgstr[1] "%u results in Ubuntu Store"
2601
2602-#: ../scope/clickstore/store-query.cpp:431
2603+#: ../scope/clickstore/store-query.cpp:443
2604 msgid "Recommended"
2605 msgstr "Erbedet"
2606
2607=== modified file 'po/ca.po'
2608--- po/ca.po 2014-07-31 08:14:29 +0000
2609+++ po/ca.po 2014-08-21 20:38:09 +0000
2610@@ -7,19 +7,19 @@
2611 msgstr ""
2612 "Project-Id-Version: unity-scope-click\n"
2613 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
2614-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
2615-"PO-Revision-Date: 2014-07-30 12:09+0000\n"
2616-"Last-Translator: David Planella <david.planella@ubuntu.com>\n"
2617+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
2618+"PO-Revision-Date: 2014-08-17 03:57+0000\n"
2619+"Last-Translator: Adolfo Jayme <fitoschido@gmail.com>\n"
2620 "Language-Team: Catalan <ca@li.org>\n"
2621 "MIME-Version: 1.0\n"
2622 "Content-Type: text/plain; charset=UTF-8\n"
2623 "Content-Transfer-Encoding: 8bit\n"
2624 "Plural-Forms: nplurals=2; plural=n != 1;\n"
2625-"X-Launchpad-Export-Date: 2014-07-31 08:14+0000\n"
2626-"X-Generator: Launchpad (build 17131)\n"
2627+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
2628+"X-Generator: Launchpad (build 17163)\n"
2629
2630 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
2631-#: ../scope/clickapps/apps-query.cpp:259
2632+#: ../scope/clickapps/apps-query.cpp:261
2633 msgid "Ubuntu Store"
2634 msgstr "Botiga de l'Ubuntu"
2635
2636@@ -31,7 +31,8 @@
2637 msgid "Search store"
2638 msgstr "Cerca a la botiga"
2639
2640-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
2641+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
2642+#: ../scope/clickapps/apps-query.cpp:159
2643 msgid "Apps"
2644 msgstr "Aplicacions"
2645
2646@@ -43,6 +44,10 @@
2647 msgid "Search apps"
2648 msgstr "Cerca aplicacions"
2649
2650+#: ../libclickscope/click/highlights.cpp:119
2651+msgid "Scopes"
2652+msgstr ""
2653+
2654 #: ../libclickscope/click/preview.cpp:58
2655 msgid "Info"
2656 msgstr "Informació"
2657@@ -55,155 +60,156 @@
2658 msgid "What's new"
2659 msgstr "Novetats"
2660
2661-#: ../libclickscope/click/preview.cpp:210
2662+#: ../libclickscope/click/preview.cpp:229
2663 msgid "Publisher/Creator"
2664 msgstr "Creador"
2665
2666-#: ../libclickscope/click/preview.cpp:211
2667+#: ../libclickscope/click/preview.cpp:230
2668 msgid "Seller"
2669 msgstr "Venedor"
2670
2671-#: ../libclickscope/click/preview.cpp:212
2672+#: ../libclickscope/click/preview.cpp:231
2673 msgid "Website"
2674 msgstr "Lloc web"
2675
2676-#: ../libclickscope/click/preview.cpp:213
2677+#: ../libclickscope/click/preview.cpp:232
2678 msgid "Contact"
2679 msgstr "Contacte"
2680
2681-#: ../libclickscope/click/preview.cpp:214
2682+#: ../libclickscope/click/preview.cpp:233
2683 msgid "License"
2684 msgstr "Llicència"
2685
2686-#: ../libclickscope/click/preview.cpp:222
2687+#: ../libclickscope/click/preview.cpp:241
2688 msgid "Version number"
2689-msgstr ""
2690+msgstr "Número de versió"
2691
2692-#: ../libclickscope/click/preview.cpp:223
2693+#: ../libclickscope/click/preview.cpp:242
2694 msgid "Last updated"
2695-msgstr ""
2696+msgstr "Darrera actualització"
2697
2698-#: ../libclickscope/click/preview.cpp:224
2699+#: ../libclickscope/click/preview.cpp:243
2700 msgid "First released"
2701-msgstr ""
2702+msgstr "Primera publicació"
2703
2704-#: ../libclickscope/click/preview.cpp:225
2705+#: ../libclickscope/click/preview.cpp:244
2706 msgid "Size"
2707-msgstr ""
2708+msgstr "Mida"
2709
2710-#: ../libclickscope/click/preview.cpp:233
2711+#: ../libclickscope/click/preview.cpp:252
2712 msgid "Version"
2713-msgstr ""
2714+msgstr "Versió"
2715
2716-#: ../libclickscope/click/preview.cpp:364
2717+#: ../libclickscope/click/preview.cpp:383
2718 msgid "Reviews"
2719-msgstr ""
2720+msgstr "Ressenyes"
2721
2722-#: ../libclickscope/click/preview.cpp:383
2723+#: ../libclickscope/click/preview.cpp:402
2724 msgid "Download Error"
2725 msgstr "Error de baixada"
2726
2727-#: ../libclickscope/click/preview.cpp:384
2728+#: ../libclickscope/click/preview.cpp:403
2729 msgid "Download or install failed. Please try again."
2730 msgstr "Ha fallat la baixada o la instal·lació. Torneu-ho a provar."
2731
2732 #. TODO see bug LP: #1289434
2733-#: ../libclickscope/click/preview.cpp:386
2734+#: ../libclickscope/click/preview.cpp:405
2735 msgid "Close"
2736 msgstr "Tanca"
2737
2738-#: ../libclickscope/click/preview.cpp:391
2739+#: ../libclickscope/click/preview.cpp:410
2740 msgid "Login Error"
2741 msgstr "Error d'inici de sessió"
2742
2743-#: ../libclickscope/click/preview.cpp:392
2744+#: ../libclickscope/click/preview.cpp:411
2745 msgid "Please log in to your Ubuntu One account."
2746 msgstr "Inicieu la sessió amb el vostre compte de l'Ubuntu One."
2747
2748-#: ../libclickscope/click/preview.cpp:394
2749+#: ../libclickscope/click/preview.cpp:413
2750 msgid "Go to Accounts"
2751 msgstr "Vés als comptes"
2752
2753-#: ../libclickscope/click/preview.cpp:624
2754+#: ../libclickscope/click/preview.cpp:646
2755 msgid "Open"
2756 msgstr "Obre-la"
2757
2758-#: ../libclickscope/click/preview.cpp:627
2759-#: ../libclickscope/click/preview.cpp:711
2760+#: ../libclickscope/click/preview.cpp:649
2761+#: ../libclickscope/click/preview.cpp:733
2762 msgid "Search"
2763 msgstr "Cerca"
2764
2765-#: ../libclickscope/click/preview.cpp:645
2766-#: ../libclickscope/click/preview.cpp:782
2767+#: ../libclickscope/click/preview.cpp:667
2768+#: ../libclickscope/click/preview.cpp:804
2769 msgid "Uninstall"
2770 msgstr "Suprimeix-la"
2771
2772-#: ../libclickscope/click/preview.cpp:766
2773+#: ../libclickscope/click/preview.cpp:788
2774 msgid "Confirmation"
2775 msgstr "Confirmació"
2776
2777 #. TRANSLATORS: Do NOT translate ${title} here.
2778-#: ../libclickscope/click/preview.cpp:769
2779+#: ../libclickscope/click/preview.cpp:791
2780 msgid "Uninstall ${title}?"
2781 msgstr "Voleu suprimir ${title}?"
2782
2783 #. TODO: see bug LP: #1289434
2784-#: ../libclickscope/click/preview.cpp:778
2785+#: ../libclickscope/click/preview.cpp:800
2786 msgid "Cancel"
2787 msgstr "Cancel·la"
2788
2789-#: ../libclickscope/click/preview.cpp:843
2790+#: ../libclickscope/click/preview.cpp:866
2791 msgid "Install"
2792 msgstr "Instal·la-la"
2793
2794 #: ../libclickscope/click/utils.cpp:54
2795 msgid "{1} byte"
2796 msgid_plural "{1} bytes"
2797-msgstr[0] ""
2798-msgstr[1] ""
2799+msgstr[0] "{1} byte"
2800+msgstr[1] "{1} bytes"
2801
2802-#: ../scope/clickapps/apps-query.cpp:260
2803+#: ../scope/clickapps/apps-query.cpp:262
2804 msgid "Get more apps from the store"
2805 msgstr "Obtén més aplicacions a la botiga"
2806
2807-#: ../scope/clickapps/apps-query.cpp:266
2808+#: ../scope/clickapps/apps-query.cpp:268
2809 #, c-format
2810 msgid "Search for '%s' in the store"
2811 msgstr "Cerca «%s» a la botiga"
2812
2813-#: ../scope/clickapps/apps-query.cpp:273
2814+#: ../scope/clickapps/apps-query.cpp:275
2815 msgid "Get more apps like this from the Store"
2816 msgstr "Obtén aplicacions similars de la botiga de l'Ubuntu"
2817
2818-#: ../scope/clickapps/apps-query.cpp:302
2819-#: ../scope/clickstore/store-query.cpp:236
2820-#: ../scope/clickstore/store-query.cpp:247
2821-msgid "All departments"
2822-msgstr "Tots els departaments"
2823+#: ../scope/clickapps/apps-query.cpp:315
2824+#: ../scope/clickstore/store-query.cpp:244
2825+#: ../scope/clickstore/store-query.cpp:255
2826+#: ../scope/clickstore/store-query.cpp:467
2827+msgid "All"
2828+msgstr ""
2829
2830-#: ../scope/clickstore/store-query.cpp:285
2831+#: ../scope/clickstore/store-query.cpp:297
2832 msgid "✔ INSTALLED"
2833 msgstr "✔ INSTAL·LADA"
2834
2835-#: ../scope/clickstore/store-query.cpp:290
2836+#: ../scope/clickstore/store-query.cpp:302
2837 msgid "✔ PURCHASED"
2838 msgstr "✔ COMPRADA"
2839
2840-#: ../scope/clickstore/store-query.cpp:298
2841+#: ../scope/clickstore/store-query.cpp:310
2842 msgid "FREE"
2843 msgstr "GRATUÏTA"
2844
2845-#: ../scope/clickstore/store-query.cpp:415
2846+#: ../scope/clickstore/store-query.cpp:427
2847 msgid "Available"
2848 msgstr "Disponibles"
2849
2850-#: ../scope/clickstore/store-query.cpp:421
2851+#: ../scope/clickstore/store-query.cpp:433
2852 #, c-format
2853 msgid "%u result in Ubuntu Store"
2854 msgid_plural "%u results in Ubuntu Store"
2855 msgstr[0] "%u resultat a la botiga de l'Ubuntu"
2856 msgstr[1] "%u resultats a la botiga de l'Ubuntu"
2857
2858-#: ../scope/clickstore/store-query.cpp:431
2859+#: ../scope/clickstore/store-query.cpp:443
2860 msgid "Recommended"
2861 msgstr "Recomanades"
2862
2863=== modified file 'po/da.po'
2864--- po/da.po 2014-07-31 08:14:29 +0000
2865+++ po/da.po 2014-08-21 20:38:09 +0000
2866@@ -8,7 +8,7 @@
2867 msgstr ""
2868 "Project-Id-Version: unity-scope-click\n"
2869 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
2870-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
2871+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
2872 "PO-Revision-Date: 2014-07-30 16:53+0000\n"
2873 "Last-Translator: Ask Hjorth Larsen <asklarsen@gmail.com>\n"
2874 "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
2875@@ -16,11 +16,11 @@
2876 "Content-Type: text/plain; charset=UTF-8\n"
2877 "Content-Transfer-Encoding: 8bit\n"
2878 "Plural-Forms: nplurals=2; plural=n != 1;\n"
2879-"X-Launchpad-Export-Date: 2014-07-31 08:14+0000\n"
2880-"X-Generator: Launchpad (build 17131)\n"
2881+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
2882+"X-Generator: Launchpad (build 17163)\n"
2883
2884 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
2885-#: ../scope/clickapps/apps-query.cpp:259
2886+#: ../scope/clickapps/apps-query.cpp:261
2887 msgid "Ubuntu Store"
2888 msgstr "Ubuntu-butikken"
2889
2890@@ -32,7 +32,8 @@
2891 msgid "Search store"
2892 msgstr "Søg i butikken"
2893
2894-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
2895+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
2896+#: ../scope/clickapps/apps-query.cpp:159
2897 msgid "Apps"
2898 msgstr "Apps"
2899
2900@@ -44,6 +45,10 @@
2901 msgid "Search apps"
2902 msgstr "Søg efter apps"
2903
2904+#: ../libclickscope/click/highlights.cpp:119
2905+msgid "Scopes"
2906+msgstr ""
2907+
2908 #: ../libclickscope/click/preview.cpp:58
2909 msgid "Info"
2910 msgstr "Info"
2911@@ -56,104 +61,104 @@
2912 msgid "What's new"
2913 msgstr "Nyheder"
2914
2915-#: ../libclickscope/click/preview.cpp:210
2916+#: ../libclickscope/click/preview.cpp:229
2917 msgid "Publisher/Creator"
2918 msgstr "Udgiver/forfatter"
2919
2920-#: ../libclickscope/click/preview.cpp:211
2921+#: ../libclickscope/click/preview.cpp:230
2922 msgid "Seller"
2923 msgstr "Sælger"
2924
2925-#: ../libclickscope/click/preview.cpp:212
2926+#: ../libclickscope/click/preview.cpp:231
2927 msgid "Website"
2928 msgstr "Websted"
2929
2930-#: ../libclickscope/click/preview.cpp:213
2931+#: ../libclickscope/click/preview.cpp:232
2932 msgid "Contact"
2933 msgstr "Kontaktperson"
2934
2935-#: ../libclickscope/click/preview.cpp:214
2936+#: ../libclickscope/click/preview.cpp:233
2937 msgid "License"
2938 msgstr "Licens"
2939
2940-#: ../libclickscope/click/preview.cpp:222
2941+#: ../libclickscope/click/preview.cpp:241
2942 msgid "Version number"
2943 msgstr "Versionsnummer"
2944
2945-#: ../libclickscope/click/preview.cpp:223
2946+#: ../libclickscope/click/preview.cpp:242
2947 msgid "Last updated"
2948 msgstr "Sidst opdateret"
2949
2950-#: ../libclickscope/click/preview.cpp:224
2951+#: ../libclickscope/click/preview.cpp:243
2952 msgid "First released"
2953 msgstr "Først udgivet"
2954
2955-#: ../libclickscope/click/preview.cpp:225
2956+#: ../libclickscope/click/preview.cpp:244
2957 msgid "Size"
2958 msgstr "Størrelse"
2959
2960-#: ../libclickscope/click/preview.cpp:233
2961+#: ../libclickscope/click/preview.cpp:252
2962 msgid "Version"
2963 msgstr "Version"
2964
2965-#: ../libclickscope/click/preview.cpp:364
2966+#: ../libclickscope/click/preview.cpp:383
2967 msgid "Reviews"
2968 msgstr "Anmeldelser"
2969
2970-#: ../libclickscope/click/preview.cpp:383
2971+#: ../libclickscope/click/preview.cpp:402
2972 msgid "Download Error"
2973 msgstr "Overførselsfejl"
2974
2975-#: ../libclickscope/click/preview.cpp:384
2976+#: ../libclickscope/click/preview.cpp:403
2977 msgid "Download or install failed. Please try again."
2978 msgstr "Overførsel eller installation mislykkedes. Prøv venligst igen."
2979
2980 #. TODO see bug LP: #1289434
2981-#: ../libclickscope/click/preview.cpp:386
2982+#: ../libclickscope/click/preview.cpp:405
2983 msgid "Close"
2984 msgstr "Luk"
2985
2986-#: ../libclickscope/click/preview.cpp:391
2987+#: ../libclickscope/click/preview.cpp:410
2988 msgid "Login Error"
2989 msgstr "Logindfejl"
2990
2991-#: ../libclickscope/click/preview.cpp:392
2992+#: ../libclickscope/click/preview.cpp:411
2993 msgid "Please log in to your Ubuntu One account."
2994 msgstr "Log venligst ind med din Ubuntu One-konto."
2995
2996-#: ../libclickscope/click/preview.cpp:394
2997+#: ../libclickscope/click/preview.cpp:413
2998 msgid "Go to Accounts"
2999 msgstr "Gå til konti"
3000
3001-#: ../libclickscope/click/preview.cpp:624
3002+#: ../libclickscope/click/preview.cpp:646
3003 msgid "Open"
3004 msgstr "Åbn"
3005
3006-#: ../libclickscope/click/preview.cpp:627
3007-#: ../libclickscope/click/preview.cpp:711
3008+#: ../libclickscope/click/preview.cpp:649
3009+#: ../libclickscope/click/preview.cpp:733
3010 msgid "Search"
3011 msgstr "Søg"
3012
3013-#: ../libclickscope/click/preview.cpp:645
3014-#: ../libclickscope/click/preview.cpp:782
3015+#: ../libclickscope/click/preview.cpp:667
3016+#: ../libclickscope/click/preview.cpp:804
3017 msgid "Uninstall"
3018 msgstr "Afinstallér"
3019
3020-#: ../libclickscope/click/preview.cpp:766
3021+#: ../libclickscope/click/preview.cpp:788
3022 msgid "Confirmation"
3023 msgstr "Bekræftelse"
3024
3025 #. TRANSLATORS: Do NOT translate ${title} here.
3026-#: ../libclickscope/click/preview.cpp:769
3027+#: ../libclickscope/click/preview.cpp:791
3028 msgid "Uninstall ${title}?"
3029 msgstr "Afinstaller ${title}?"
3030
3031 #. TODO: see bug LP: #1289434
3032-#: ../libclickscope/click/preview.cpp:778
3033+#: ../libclickscope/click/preview.cpp:800
3034 msgid "Cancel"
3035 msgstr "Annullér"
3036
3037-#: ../libclickscope/click/preview.cpp:843
3038+#: ../libclickscope/click/preview.cpp:866
3039 msgid "Install"
3040 msgstr "Installér"
3041
3042@@ -163,48 +168,49 @@
3043 msgstr[0] "{1} byte"
3044 msgstr[1] "{1} byte"
3045
3046-#: ../scope/clickapps/apps-query.cpp:260
3047+#: ../scope/clickapps/apps-query.cpp:262
3048 msgid "Get more apps from the store"
3049 msgstr "Hent flere apps fra butikken"
3050
3051-#: ../scope/clickapps/apps-query.cpp:266
3052+#: ../scope/clickapps/apps-query.cpp:268
3053 #, c-format
3054 msgid "Search for '%s' in the store"
3055 msgstr "Søg efter \"%s\" i butikken"
3056
3057-#: ../scope/clickapps/apps-query.cpp:273
3058+#: ../scope/clickapps/apps-query.cpp:275
3059 msgid "Get more apps like this from the Store"
3060 msgstr "Find flere apps som denne fra butikken"
3061
3062-#: ../scope/clickapps/apps-query.cpp:302
3063-#: ../scope/clickstore/store-query.cpp:236
3064-#: ../scope/clickstore/store-query.cpp:247
3065-msgid "All departments"
3066-msgstr "Alle afdelinger"
3067+#: ../scope/clickapps/apps-query.cpp:315
3068+#: ../scope/clickstore/store-query.cpp:244
3069+#: ../scope/clickstore/store-query.cpp:255
3070+#: ../scope/clickstore/store-query.cpp:467
3071+msgid "All"
3072+msgstr ""
3073
3074-#: ../scope/clickstore/store-query.cpp:285
3075+#: ../scope/clickstore/store-query.cpp:297
3076 msgid "✔ INSTALLED"
3077 msgstr "✔ INSTALLERET"
3078
3079-#: ../scope/clickstore/store-query.cpp:290
3080+#: ../scope/clickstore/store-query.cpp:302
3081 msgid "✔ PURCHASED"
3082 msgstr "✔ KØBT"
3083
3084-#: ../scope/clickstore/store-query.cpp:298
3085+#: ../scope/clickstore/store-query.cpp:310
3086 msgid "FREE"
3087 msgstr "GRATIS"
3088
3089-#: ../scope/clickstore/store-query.cpp:415
3090+#: ../scope/clickstore/store-query.cpp:427
3091 msgid "Available"
3092 msgstr "Tilgængelig"
3093
3094-#: ../scope/clickstore/store-query.cpp:421
3095+#: ../scope/clickstore/store-query.cpp:433
3096 #, c-format
3097 msgid "%u result in Ubuntu Store"
3098 msgid_plural "%u results in Ubuntu Store"
3099 msgstr[0] "%u resultat i Ubuntu-butikken"
3100 msgstr[1] "%u resultater i Ubuntu-butikken"
3101
3102-#: ../scope/clickstore/store-query.cpp:431
3103+#: ../scope/clickstore/store-query.cpp:443
3104 msgid "Recommended"
3105 msgstr "Anbefalet"
3106
3107=== modified file 'po/de.po'
3108--- po/de.po 2014-07-30 07:11:20 +0000
3109+++ po/de.po 2014-08-21 20:38:09 +0000
3110@@ -7,19 +7,19 @@
3111 msgstr ""
3112 "Project-Id-Version: unity-scope-click\n"
3113 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
3114-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
3115-"PO-Revision-Date: 2014-07-16 13:21+0000\n"
3116+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
3117+"PO-Revision-Date: 2014-08-17 18:03+0000\n"
3118 "Last-Translator: Phillip Sz <Unknown>\n"
3119 "Language-Team: German <de@li.org>\n"
3120 "MIME-Version: 1.0\n"
3121 "Content-Type: text/plain; charset=UTF-8\n"
3122 "Content-Transfer-Encoding: 8bit\n"
3123 "Plural-Forms: nplurals=2; plural=n != 1;\n"
3124-"X-Launchpad-Export-Date: 2014-07-30 07:10+0000\n"
3125-"X-Generator: Launchpad (build 17131)\n"
3126+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
3127+"X-Generator: Launchpad (build 17163)\n"
3128
3129 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
3130-#: ../scope/clickapps/apps-query.cpp:259
3131+#: ../scope/clickapps/apps-query.cpp:261
3132 msgid "Ubuntu Store"
3133 msgstr "Ubuntu Store"
3134
3135@@ -29,9 +29,10 @@
3136
3137 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:3
3138 msgid "Search store"
3139-msgstr ""
3140+msgstr "Store durchsuchen"
3141
3142-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
3143+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
3144+#: ../scope/clickapps/apps-query.cpp:159
3145 msgid "Apps"
3146 msgstr "Anwendungen"
3147
3148@@ -41,120 +42,124 @@
3149
3150 #: ../data/clickscope.ini.in.in.h:3
3151 msgid "Search apps"
3152+msgstr "Apps suchen"
3153+
3154+#: ../libclickscope/click/highlights.cpp:119
3155+msgid "Scopes"
3156 msgstr ""
3157
3158 #: ../libclickscope/click/preview.cpp:58
3159 msgid "Info"
3160-msgstr ""
3161+msgstr "Info"
3162
3163 #: ../libclickscope/click/preview.cpp:59
3164 msgid "Updates"
3165-msgstr ""
3166+msgstr "Aktualisierungen"
3167
3168 #: ../libclickscope/click/preview.cpp:60
3169 msgid "What's new"
3170-msgstr ""
3171+msgstr "Was ist neu"
3172
3173-#: ../libclickscope/click/preview.cpp:210
3174+#: ../libclickscope/click/preview.cpp:229
3175 msgid "Publisher/Creator"
3176 msgstr ""
3177
3178-#: ../libclickscope/click/preview.cpp:211
3179+#: ../libclickscope/click/preview.cpp:230
3180 msgid "Seller"
3181-msgstr ""
3182+msgstr "Verkäufer"
3183
3184-#: ../libclickscope/click/preview.cpp:212
3185+#: ../libclickscope/click/preview.cpp:231
3186 msgid "Website"
3187-msgstr ""
3188+msgstr "Webseite"
3189
3190-#: ../libclickscope/click/preview.cpp:213
3191+#: ../libclickscope/click/preview.cpp:232
3192 msgid "Contact"
3193-msgstr ""
3194+msgstr "Kontakt"
3195
3196-#: ../libclickscope/click/preview.cpp:214
3197+#: ../libclickscope/click/preview.cpp:233
3198 msgid "License"
3199-msgstr ""
3200+msgstr "Lizenz"
3201
3202-#: ../libclickscope/click/preview.cpp:222
3203+#: ../libclickscope/click/preview.cpp:241
3204 msgid "Version number"
3205-msgstr ""
3206+msgstr "Versionsnummer"
3207
3208-#: ../libclickscope/click/preview.cpp:223
3209+#: ../libclickscope/click/preview.cpp:242
3210 msgid "Last updated"
3211-msgstr ""
3212+msgstr "Letzte Aktualisierung"
3213
3214-#: ../libclickscope/click/preview.cpp:224
3215+#: ../libclickscope/click/preview.cpp:243
3216 msgid "First released"
3217 msgstr ""
3218
3219-#: ../libclickscope/click/preview.cpp:225
3220+#: ../libclickscope/click/preview.cpp:244
3221 msgid "Size"
3222-msgstr ""
3223+msgstr "Größe"
3224
3225-#: ../libclickscope/click/preview.cpp:233
3226+#: ../libclickscope/click/preview.cpp:252
3227 msgid "Version"
3228-msgstr ""
3229+msgstr "Version"
3230
3231-#: ../libclickscope/click/preview.cpp:364
3232+#: ../libclickscope/click/preview.cpp:383
3233 msgid "Reviews"
3234-msgstr ""
3235+msgstr "Bewertungen"
3236
3237-#: ../libclickscope/click/preview.cpp:383
3238+#: ../libclickscope/click/preview.cpp:402
3239 msgid "Download Error"
3240 msgstr "Fehler beim Herunterladen"
3241
3242-#: ../libclickscope/click/preview.cpp:384
3243+#: ../libclickscope/click/preview.cpp:403
3244 msgid "Download or install failed. Please try again."
3245 msgstr ""
3246 "Herunterladen oder installieren ist fehlgeschlagen. Bitte versuchen Sie es "
3247 "erneut."
3248
3249 #. TODO see bug LP: #1289434
3250-#: ../libclickscope/click/preview.cpp:386
3251+#: ../libclickscope/click/preview.cpp:405
3252 msgid "Close"
3253 msgstr "Schließen"
3254
3255-#: ../libclickscope/click/preview.cpp:391
3256+#: ../libclickscope/click/preview.cpp:410
3257 msgid "Login Error"
3258 msgstr "Anmeldefehler"
3259
3260-#: ../libclickscope/click/preview.cpp:392
3261+#: ../libclickscope/click/preview.cpp:411
3262 msgid "Please log in to your Ubuntu One account."
3263 msgstr "Bitte melden Sie sich mit Ihrem »Ubuntu One«-Konto an."
3264
3265-#: ../libclickscope/click/preview.cpp:394
3266+#: ../libclickscope/click/preview.cpp:413
3267 msgid "Go to Accounts"
3268 msgstr "Gehen Sie zu Konten"
3269
3270-#: ../libclickscope/click/preview.cpp:624
3271+#: ../libclickscope/click/preview.cpp:646
3272 msgid "Open"
3273 msgstr "Öffnen"
3274
3275-#: ../libclickscope/click/preview.cpp:627
3276-#: ../libclickscope/click/preview.cpp:711
3277+#: ../libclickscope/click/preview.cpp:649
3278+#: ../libclickscope/click/preview.cpp:733
3279 msgid "Search"
3280 msgstr "Suchen"
3281
3282-#: ../libclickscope/click/preview.cpp:645
3283-#: ../libclickscope/click/preview.cpp:782
3284+#: ../libclickscope/click/preview.cpp:667
3285+#: ../libclickscope/click/preview.cpp:804
3286 msgid "Uninstall"
3287 msgstr "Entfernen"
3288
3289-#: ../libclickscope/click/preview.cpp:766
3290+#: ../libclickscope/click/preview.cpp:788
3291 msgid "Confirmation"
3292 msgstr "Bestätigung"
3293
3294 #. TRANSLATORS: Do NOT translate ${title} here.
3295-#: ../libclickscope/click/preview.cpp:769
3296+#: ../libclickscope/click/preview.cpp:791
3297 msgid "Uninstall ${title}?"
3298 msgstr "Entferne ${title}?"
3299
3300 #. TODO: see bug LP: #1289434
3301-#: ../libclickscope/click/preview.cpp:778
3302+#: ../libclickscope/click/preview.cpp:800
3303 msgid "Cancel"
3304 msgstr "Abbrechen"
3305
3306-#: ../libclickscope/click/preview.cpp:843
3307+#: ../libclickscope/click/preview.cpp:866
3308 msgid "Install"
3309 msgstr "Installieren"
3310
3311@@ -164,48 +169,49 @@
3312 msgstr[0] ""
3313 msgstr[1] ""
3314
3315-#: ../scope/clickapps/apps-query.cpp:260
3316+#: ../scope/clickapps/apps-query.cpp:262
3317 msgid "Get more apps from the store"
3318-msgstr ""
3319+msgstr "Erhalten Sie mehr Anwendungen aus dem Store"
3320
3321-#: ../scope/clickapps/apps-query.cpp:266
3322+#: ../scope/clickapps/apps-query.cpp:268
3323 #, c-format
3324 msgid "Search for '%s' in the store"
3325-msgstr ""
3326+msgstr "Suche nach »%s« im Store"
3327
3328-#: ../scope/clickapps/apps-query.cpp:273
3329+#: ../scope/clickapps/apps-query.cpp:275
3330 msgid "Get more apps like this from the Store"
3331+msgstr "Erhalten Sie mehr Anwendungen wie diese aus dem Store"
3332+
3333+#: ../scope/clickapps/apps-query.cpp:315
3334+#: ../scope/clickstore/store-query.cpp:244
3335+#: ../scope/clickstore/store-query.cpp:255
3336+#: ../scope/clickstore/store-query.cpp:467
3337+msgid "All"
3338 msgstr ""
3339
3340-#: ../scope/clickapps/apps-query.cpp:302
3341-#: ../scope/clickstore/store-query.cpp:236
3342-#: ../scope/clickstore/store-query.cpp:247
3343-msgid "All departments"
3344-msgstr "Alle Abteilungen"
3345-
3346-#: ../scope/clickstore/store-query.cpp:285
3347+#: ../scope/clickstore/store-query.cpp:297
3348 msgid "✔ INSTALLED"
3349 msgstr "✔ INSTALLIERT"
3350
3351-#: ../scope/clickstore/store-query.cpp:290
3352+#: ../scope/clickstore/store-query.cpp:302
3353 msgid "✔ PURCHASED"
3354-msgstr ""
3355+msgstr "✔ GEKAUFT"
3356
3357-#: ../scope/clickstore/store-query.cpp:298
3358+#: ../scope/clickstore/store-query.cpp:310
3359 msgid "FREE"
3360 msgstr "KOSTENLOS"
3361
3362-#: ../scope/clickstore/store-query.cpp:415
3363+#: ../scope/clickstore/store-query.cpp:427
3364 msgid "Available"
3365 msgstr "Verfügbar"
3366
3367-#: ../scope/clickstore/store-query.cpp:421
3368+#: ../scope/clickstore/store-query.cpp:433
3369 #, c-format
3370 msgid "%u result in Ubuntu Store"
3371 msgid_plural "%u results in Ubuntu Store"
3372-msgstr[0] ""
3373-msgstr[1] ""
3374+msgstr[0] "%u Ergebnis im »Ubuntu Store«"
3375+msgstr[1] "%u Ergebnisse im »Ubuntu Store«"
3376
3377-#: ../scope/clickstore/store-query.cpp:431
3378+#: ../scope/clickstore/store-query.cpp:443
3379 msgid "Recommended"
3380 msgstr "Empfohlen"
3381
3382=== modified file 'po/el.po'
3383--- po/el.po 2014-07-30 07:11:20 +0000
3384+++ po/el.po 2014-08-21 20:38:09 +0000
3385@@ -7,21 +7,21 @@
3386 msgstr ""
3387 "Project-Id-Version: unity-scope-click\n"
3388 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
3389-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
3390-"PO-Revision-Date: 2014-06-21 23:02+0000\n"
3391-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
3392+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
3393+"PO-Revision-Date: 2014-08-20 17:31+0000\n"
3394+"Last-Translator: Simos Xenitellis <Unknown>\n"
3395 "Language-Team: Greek <el@li.org>\n"
3396 "MIME-Version: 1.0\n"
3397 "Content-Type: text/plain; charset=UTF-8\n"
3398 "Content-Transfer-Encoding: 8bit\n"
3399 "Plural-Forms: nplurals=2; plural=n != 1;\n"
3400-"X-Launchpad-Export-Date: 2014-07-30 07:11+0000\n"
3401-"X-Generator: Launchpad (build 17131)\n"
3402+"X-Launchpad-Export-Date: 2014-08-21 06:50+0000\n"
3403+"X-Generator: Launchpad (build 17163)\n"
3404
3405 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
3406-#: ../scope/clickapps/apps-query.cpp:259
3407+#: ../scope/clickapps/apps-query.cpp:261
3408 msgid "Ubuntu Store"
3409-msgstr ""
3410+msgstr "Κατάστημα Ubuntu"
3411
3412 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:2
3413 msgid "Scope for searching the click app store"
3414@@ -31,9 +31,10 @@
3415 msgid "Search store"
3416 msgstr ""
3417
3418-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
3419+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
3420+#: ../scope/clickapps/apps-query.cpp:159
3421 msgid "Apps"
3422-msgstr ""
3423+msgstr "Εφαρμογές"
3424
3425 #: ../data/clickscope.ini.in.in.h:2
3426 msgid "Scope for searching the installed click apps"
3427@@ -43,116 +44,120 @@
3428 msgid "Search apps"
3429 msgstr ""
3430
3431+#: ../libclickscope/click/highlights.cpp:119
3432+msgid "Scopes"
3433+msgstr ""
3434+
3435 #: ../libclickscope/click/preview.cpp:58
3436 msgid "Info"
3437-msgstr ""
3438+msgstr "Πληροφορίες"
3439
3440 #: ../libclickscope/click/preview.cpp:59
3441 msgid "Updates"
3442-msgstr ""
3443+msgstr "Ενημερώσεις"
3444
3445 #: ../libclickscope/click/preview.cpp:60
3446 msgid "What's new"
3447 msgstr ""
3448
3449-#: ../libclickscope/click/preview.cpp:210
3450+#: ../libclickscope/click/preview.cpp:229
3451 msgid "Publisher/Creator"
3452 msgstr ""
3453
3454-#: ../libclickscope/click/preview.cpp:211
3455+#: ../libclickscope/click/preview.cpp:230
3456 msgid "Seller"
3457 msgstr ""
3458
3459-#: ../libclickscope/click/preview.cpp:212
3460+#: ../libclickscope/click/preview.cpp:231
3461 msgid "Website"
3462-msgstr ""
3463+msgstr "Ιστότοπος"
3464
3465-#: ../libclickscope/click/preview.cpp:213
3466+#: ../libclickscope/click/preview.cpp:232
3467 msgid "Contact"
3468-msgstr ""
3469+msgstr "Επαφή"
3470
3471-#: ../libclickscope/click/preview.cpp:214
3472+#: ../libclickscope/click/preview.cpp:233
3473 msgid "License"
3474-msgstr ""
3475+msgstr "Άδεια χρήσης"
3476
3477-#: ../libclickscope/click/preview.cpp:222
3478+#: ../libclickscope/click/preview.cpp:241
3479 msgid "Version number"
3480-msgstr ""
3481+msgstr "Αριθμός έκδοσης"
3482
3483-#: ../libclickscope/click/preview.cpp:223
3484+#: ../libclickscope/click/preview.cpp:242
3485 msgid "Last updated"
3486-msgstr ""
3487+msgstr "Τελευταία ενημέρωση"
3488
3489-#: ../libclickscope/click/preview.cpp:224
3490+#: ../libclickscope/click/preview.cpp:243
3491 msgid "First released"
3492 msgstr ""
3493
3494-#: ../libclickscope/click/preview.cpp:225
3495+#: ../libclickscope/click/preview.cpp:244
3496 msgid "Size"
3497-msgstr ""
3498+msgstr "Μέγεθος"
3499
3500-#: ../libclickscope/click/preview.cpp:233
3501+#: ../libclickscope/click/preview.cpp:252
3502 msgid "Version"
3503-msgstr ""
3504+msgstr "Έκδοση"
3505
3506-#: ../libclickscope/click/preview.cpp:364
3507+#: ../libclickscope/click/preview.cpp:383
3508 msgid "Reviews"
3509 msgstr ""
3510
3511-#: ../libclickscope/click/preview.cpp:383
3512+#: ../libclickscope/click/preview.cpp:402
3513 msgid "Download Error"
3514 msgstr ""
3515
3516-#: ../libclickscope/click/preview.cpp:384
3517+#: ../libclickscope/click/preview.cpp:403
3518 msgid "Download or install failed. Please try again."
3519 msgstr ""
3520
3521 #. TODO see bug LP: #1289434
3522-#: ../libclickscope/click/preview.cpp:386
3523+#: ../libclickscope/click/preview.cpp:405
3524 msgid "Close"
3525 msgstr ""
3526
3527-#: ../libclickscope/click/preview.cpp:391
3528+#: ../libclickscope/click/preview.cpp:410
3529 msgid "Login Error"
3530 msgstr ""
3531
3532-#: ../libclickscope/click/preview.cpp:392
3533+#: ../libclickscope/click/preview.cpp:411
3534 msgid "Please log in to your Ubuntu One account."
3535 msgstr ""
3536
3537-#: ../libclickscope/click/preview.cpp:394
3538+#: ../libclickscope/click/preview.cpp:413
3539 msgid "Go to Accounts"
3540 msgstr ""
3541
3542-#: ../libclickscope/click/preview.cpp:624
3543+#: ../libclickscope/click/preview.cpp:646
3544 msgid "Open"
3545 msgstr ""
3546
3547-#: ../libclickscope/click/preview.cpp:627
3548-#: ../libclickscope/click/preview.cpp:711
3549+#: ../libclickscope/click/preview.cpp:649
3550+#: ../libclickscope/click/preview.cpp:733
3551 msgid "Search"
3552 msgstr ""
3553
3554-#: ../libclickscope/click/preview.cpp:645
3555-#: ../libclickscope/click/preview.cpp:782
3556+#: ../libclickscope/click/preview.cpp:667
3557+#: ../libclickscope/click/preview.cpp:804
3558 msgid "Uninstall"
3559 msgstr ""
3560
3561-#: ../libclickscope/click/preview.cpp:766
3562+#: ../libclickscope/click/preview.cpp:788
3563 msgid "Confirmation"
3564 msgstr ""
3565
3566 #. TRANSLATORS: Do NOT translate ${title} here.
3567-#: ../libclickscope/click/preview.cpp:769
3568+#: ../libclickscope/click/preview.cpp:791
3569 msgid "Uninstall ${title}?"
3570 msgstr ""
3571
3572 #. TODO: see bug LP: #1289434
3573-#: ../libclickscope/click/preview.cpp:778
3574+#: ../libclickscope/click/preview.cpp:800
3575 msgid "Cancel"
3576 msgstr ""
3577
3578-#: ../libclickscope/click/preview.cpp:843
3579+#: ../libclickscope/click/preview.cpp:866
3580 msgid "Install"
3581 msgstr ""
3582
3583@@ -162,48 +167,49 @@
3584 msgstr[0] ""
3585 msgstr[1] ""
3586
3587-#: ../scope/clickapps/apps-query.cpp:260
3588+#: ../scope/clickapps/apps-query.cpp:262
3589 msgid "Get more apps from the store"
3590 msgstr ""
3591
3592-#: ../scope/clickapps/apps-query.cpp:266
3593+#: ../scope/clickapps/apps-query.cpp:268
3594 #, c-format
3595 msgid "Search for '%s' in the store"
3596 msgstr ""
3597
3598-#: ../scope/clickapps/apps-query.cpp:273
3599+#: ../scope/clickapps/apps-query.cpp:275
3600 msgid "Get more apps like this from the Store"
3601 msgstr ""
3602
3603-#: ../scope/clickapps/apps-query.cpp:302
3604-#: ../scope/clickstore/store-query.cpp:236
3605-#: ../scope/clickstore/store-query.cpp:247
3606-msgid "All departments"
3607+#: ../scope/clickapps/apps-query.cpp:315
3608+#: ../scope/clickstore/store-query.cpp:244
3609+#: ../scope/clickstore/store-query.cpp:255
3610+#: ../scope/clickstore/store-query.cpp:467
3611+msgid "All"
3612 msgstr ""
3613
3614-#: ../scope/clickstore/store-query.cpp:285
3615+#: ../scope/clickstore/store-query.cpp:297
3616 msgid "✔ INSTALLED"
3617 msgstr ""
3618
3619-#: ../scope/clickstore/store-query.cpp:290
3620+#: ../scope/clickstore/store-query.cpp:302
3621 msgid "✔ PURCHASED"
3622 msgstr ""
3623
3624-#: ../scope/clickstore/store-query.cpp:298
3625+#: ../scope/clickstore/store-query.cpp:310
3626 msgid "FREE"
3627 msgstr ""
3628
3629-#: ../scope/clickstore/store-query.cpp:415
3630+#: ../scope/clickstore/store-query.cpp:427
3631 msgid "Available"
3632 msgstr ""
3633
3634-#: ../scope/clickstore/store-query.cpp:421
3635+#: ../scope/clickstore/store-query.cpp:433
3636 #, c-format
3637 msgid "%u result in Ubuntu Store"
3638 msgid_plural "%u results in Ubuntu Store"
3639 msgstr[0] ""
3640 msgstr[1] ""
3641
3642-#: ../scope/clickstore/store-query.cpp:431
3643+#: ../scope/clickstore/store-query.cpp:443
3644 msgid "Recommended"
3645 msgstr ""
3646
3647=== modified file 'po/en_AU.po'
3648--- po/en_AU.po 2014-07-31 08:14:29 +0000
3649+++ po/en_AU.po 2014-08-21 20:38:09 +0000
3650@@ -7,7 +7,7 @@
3651 msgstr ""
3652 "Project-Id-Version: unity-scope-click\n"
3653 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
3654-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
3655+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
3656 "PO-Revision-Date: 2014-07-30 12:46+0000\n"
3657 "Last-Translator: Joel Addison <jaddi27@gmail.com>\n"
3658 "Language-Team: English (Australia) <en_AU@li.org>\n"
3659@@ -15,11 +15,11 @@
3660 "Content-Type: text/plain; charset=UTF-8\n"
3661 "Content-Transfer-Encoding: 8bit\n"
3662 "Plural-Forms: nplurals=2; plural=n != 1;\n"
3663-"X-Launchpad-Export-Date: 2014-07-31 08:14+0000\n"
3664-"X-Generator: Launchpad (build 17131)\n"
3665+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
3666+"X-Generator: Launchpad (build 17163)\n"
3667
3668 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
3669-#: ../scope/clickapps/apps-query.cpp:259
3670+#: ../scope/clickapps/apps-query.cpp:261
3671 msgid "Ubuntu Store"
3672 msgstr "Ubuntu Store"
3673
3674@@ -31,7 +31,8 @@
3675 msgid "Search store"
3676 msgstr "Search store"
3677
3678-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
3679+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
3680+#: ../scope/clickapps/apps-query.cpp:159
3681 msgid "Apps"
3682 msgstr "Apps"
3683
3684@@ -43,6 +44,10 @@
3685 msgid "Search apps"
3686 msgstr "Search apps"
3687
3688+#: ../libclickscope/click/highlights.cpp:119
3689+msgid "Scopes"
3690+msgstr ""
3691+
3692 #: ../libclickscope/click/preview.cpp:58
3693 msgid "Info"
3694 msgstr "Info"
3695@@ -55,104 +60,104 @@
3696 msgid "What's new"
3697 msgstr "What's new"
3698
3699-#: ../libclickscope/click/preview.cpp:210
3700+#: ../libclickscope/click/preview.cpp:229
3701 msgid "Publisher/Creator"
3702 msgstr "Publisher/Creator"
3703
3704-#: ../libclickscope/click/preview.cpp:211
3705+#: ../libclickscope/click/preview.cpp:230
3706 msgid "Seller"
3707 msgstr "Seller"
3708
3709-#: ../libclickscope/click/preview.cpp:212
3710+#: ../libclickscope/click/preview.cpp:231
3711 msgid "Website"
3712 msgstr "Website"
3713
3714-#: ../libclickscope/click/preview.cpp:213
3715+#: ../libclickscope/click/preview.cpp:232
3716 msgid "Contact"
3717 msgstr "Contact"
3718
3719-#: ../libclickscope/click/preview.cpp:214
3720+#: ../libclickscope/click/preview.cpp:233
3721 msgid "License"
3722 msgstr "Licence"
3723
3724-#: ../libclickscope/click/preview.cpp:222
3725+#: ../libclickscope/click/preview.cpp:241
3726 msgid "Version number"
3727 msgstr "Version number"
3728
3729-#: ../libclickscope/click/preview.cpp:223
3730+#: ../libclickscope/click/preview.cpp:242
3731 msgid "Last updated"
3732 msgstr "Last updated"
3733
3734-#: ../libclickscope/click/preview.cpp:224
3735+#: ../libclickscope/click/preview.cpp:243
3736 msgid "First released"
3737 msgstr "First released"
3738
3739-#: ../libclickscope/click/preview.cpp:225
3740+#: ../libclickscope/click/preview.cpp:244
3741 msgid "Size"
3742 msgstr "Size"
3743
3744-#: ../libclickscope/click/preview.cpp:233
3745+#: ../libclickscope/click/preview.cpp:252
3746 msgid "Version"
3747 msgstr "Version"
3748
3749-#: ../libclickscope/click/preview.cpp:364
3750+#: ../libclickscope/click/preview.cpp:383
3751 msgid "Reviews"
3752 msgstr "Reviews"
3753
3754-#: ../libclickscope/click/preview.cpp:383
3755+#: ../libclickscope/click/preview.cpp:402
3756 msgid "Download Error"
3757 msgstr "Download Error"
3758
3759-#: ../libclickscope/click/preview.cpp:384
3760+#: ../libclickscope/click/preview.cpp:403
3761 msgid "Download or install failed. Please try again."
3762 msgstr "Download or install failed. Please try again."
3763
3764 #. TODO see bug LP: #1289434
3765-#: ../libclickscope/click/preview.cpp:386
3766+#: ../libclickscope/click/preview.cpp:405
3767 msgid "Close"
3768 msgstr "Close"
3769
3770-#: ../libclickscope/click/preview.cpp:391
3771+#: ../libclickscope/click/preview.cpp:410
3772 msgid "Login Error"
3773 msgstr "Login Error"
3774
3775-#: ../libclickscope/click/preview.cpp:392
3776+#: ../libclickscope/click/preview.cpp:411
3777 msgid "Please log in to your Ubuntu One account."
3778 msgstr "Please log in to your Ubuntu One account."
3779
3780-#: ../libclickscope/click/preview.cpp:394
3781+#: ../libclickscope/click/preview.cpp:413
3782 msgid "Go to Accounts"
3783 msgstr "Go to Accounts"
3784
3785-#: ../libclickscope/click/preview.cpp:624
3786+#: ../libclickscope/click/preview.cpp:646
3787 msgid "Open"
3788 msgstr "Open"
3789
3790-#: ../libclickscope/click/preview.cpp:627
3791-#: ../libclickscope/click/preview.cpp:711
3792+#: ../libclickscope/click/preview.cpp:649
3793+#: ../libclickscope/click/preview.cpp:733
3794 msgid "Search"
3795 msgstr "Search"
3796
3797-#: ../libclickscope/click/preview.cpp:645
3798-#: ../libclickscope/click/preview.cpp:782
3799+#: ../libclickscope/click/preview.cpp:667
3800+#: ../libclickscope/click/preview.cpp:804
3801 msgid "Uninstall"
3802 msgstr "Uninstall"
3803
3804-#: ../libclickscope/click/preview.cpp:766
3805+#: ../libclickscope/click/preview.cpp:788
3806 msgid "Confirmation"
3807 msgstr "Confirmation"
3808
3809 #. TRANSLATORS: Do NOT translate ${title} here.
3810-#: ../libclickscope/click/preview.cpp:769
3811+#: ../libclickscope/click/preview.cpp:791
3812 msgid "Uninstall ${title}?"
3813 msgstr "Uninstall ${title}?"
3814
3815 #. TODO: see bug LP: #1289434
3816-#: ../libclickscope/click/preview.cpp:778
3817+#: ../libclickscope/click/preview.cpp:800
3818 msgid "Cancel"
3819 msgstr "Cancel"
3820
3821-#: ../libclickscope/click/preview.cpp:843
3822+#: ../libclickscope/click/preview.cpp:866
3823 msgid "Install"
3824 msgstr "Install"
3825
3826@@ -162,48 +167,49 @@
3827 msgstr[0] "{1} byte"
3828 msgstr[1] "{1} bytes"
3829
3830-#: ../scope/clickapps/apps-query.cpp:260
3831+#: ../scope/clickapps/apps-query.cpp:262
3832 msgid "Get more apps from the store"
3833 msgstr "Get more apps from the store"
3834
3835-#: ../scope/clickapps/apps-query.cpp:266
3836+#: ../scope/clickapps/apps-query.cpp:268
3837 #, c-format
3838 msgid "Search for '%s' in the store"
3839 msgstr "Search for '%s' in the store"
3840
3841-#: ../scope/clickapps/apps-query.cpp:273
3842+#: ../scope/clickapps/apps-query.cpp:275
3843 msgid "Get more apps like this from the Store"
3844 msgstr "Get more apps like this from the Store"
3845
3846-#: ../scope/clickapps/apps-query.cpp:302
3847-#: ../scope/clickstore/store-query.cpp:236
3848-#: ../scope/clickstore/store-query.cpp:247
3849-msgid "All departments"
3850-msgstr "All departments"
3851+#: ../scope/clickapps/apps-query.cpp:315
3852+#: ../scope/clickstore/store-query.cpp:244
3853+#: ../scope/clickstore/store-query.cpp:255
3854+#: ../scope/clickstore/store-query.cpp:467
3855+msgid "All"
3856+msgstr ""
3857
3858-#: ../scope/clickstore/store-query.cpp:285
3859+#: ../scope/clickstore/store-query.cpp:297
3860 msgid "✔ INSTALLED"
3861 msgstr "✔ INSTALLED"
3862
3863-#: ../scope/clickstore/store-query.cpp:290
3864+#: ../scope/clickstore/store-query.cpp:302
3865 msgid "✔ PURCHASED"
3866 msgstr "✔ PURCHASED"
3867
3868-#: ../scope/clickstore/store-query.cpp:298
3869+#: ../scope/clickstore/store-query.cpp:310
3870 msgid "FREE"
3871 msgstr "FREE"
3872
3873-#: ../scope/clickstore/store-query.cpp:415
3874+#: ../scope/clickstore/store-query.cpp:427
3875 msgid "Available"
3876 msgstr "Available"
3877
3878-#: ../scope/clickstore/store-query.cpp:421
3879+#: ../scope/clickstore/store-query.cpp:433
3880 #, c-format
3881 msgid "%u result in Ubuntu Store"
3882 msgid_plural "%u results in Ubuntu Store"
3883 msgstr[0] "%u result in Ubuntu Store"
3884 msgstr[1] "%u results in Ubuntu Store"
3885
3886-#: ../scope/clickstore/store-query.cpp:431
3887+#: ../scope/clickstore/store-query.cpp:443
3888 msgid "Recommended"
3889 msgstr "Recommended"
3890
3891=== modified file 'po/en_GB.po'
3892--- po/en_GB.po 2014-07-31 08:14:29 +0000
3893+++ po/en_GB.po 2014-08-21 20:38:09 +0000
3894@@ -7,7 +7,7 @@
3895 msgstr ""
3896 "Project-Id-Version: unity-scope-click\n"
3897 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
3898-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
3899+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
3900 "PO-Revision-Date: 2014-07-30 17:38+0000\n"
3901 "Last-Translator: Alan Pope ㋛ <alan@ubuntu.com>\n"
3902 "Language-Team: English (United Kingdom) <en_GB@li.org>\n"
3903@@ -15,11 +15,11 @@
3904 "Content-Type: text/plain; charset=UTF-8\n"
3905 "Content-Transfer-Encoding: 8bit\n"
3906 "Plural-Forms: nplurals=2; plural=n != 1;\n"
3907-"X-Launchpad-Export-Date: 2014-07-31 08:14+0000\n"
3908-"X-Generator: Launchpad (build 17131)\n"
3909+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
3910+"X-Generator: Launchpad (build 17163)\n"
3911
3912 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
3913-#: ../scope/clickapps/apps-query.cpp:259
3914+#: ../scope/clickapps/apps-query.cpp:261
3915 msgid "Ubuntu Store"
3916 msgstr "Ubuntu Store"
3917
3918@@ -31,7 +31,8 @@
3919 msgid "Search store"
3920 msgstr "Search store"
3921
3922-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
3923+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
3924+#: ../scope/clickapps/apps-query.cpp:159
3925 msgid "Apps"
3926 msgstr "Apps"
3927
3928@@ -43,6 +44,10 @@
3929 msgid "Search apps"
3930 msgstr "Search apps"
3931
3932+#: ../libclickscope/click/highlights.cpp:119
3933+msgid "Scopes"
3934+msgstr ""
3935+
3936 #: ../libclickscope/click/preview.cpp:58
3937 msgid "Info"
3938 msgstr "Info"
3939@@ -55,104 +60,104 @@
3940 msgid "What's new"
3941 msgstr "What's new"
3942
3943-#: ../libclickscope/click/preview.cpp:210
3944+#: ../libclickscope/click/preview.cpp:229
3945 msgid "Publisher/Creator"
3946 msgstr "Publisher/Creator"
3947
3948-#: ../libclickscope/click/preview.cpp:211
3949+#: ../libclickscope/click/preview.cpp:230
3950 msgid "Seller"
3951 msgstr "Seller"
3952
3953-#: ../libclickscope/click/preview.cpp:212
3954+#: ../libclickscope/click/preview.cpp:231
3955 msgid "Website"
3956 msgstr "Website"
3957
3958-#: ../libclickscope/click/preview.cpp:213
3959+#: ../libclickscope/click/preview.cpp:232
3960 msgid "Contact"
3961 msgstr "Contact"
3962
3963-#: ../libclickscope/click/preview.cpp:214
3964+#: ../libclickscope/click/preview.cpp:233
3965 msgid "License"
3966 msgstr "Licence"
3967
3968-#: ../libclickscope/click/preview.cpp:222
3969+#: ../libclickscope/click/preview.cpp:241
3970 msgid "Version number"
3971 msgstr "Version number"
3972
3973-#: ../libclickscope/click/preview.cpp:223
3974+#: ../libclickscope/click/preview.cpp:242
3975 msgid "Last updated"
3976 msgstr "Last updated"
3977
3978-#: ../libclickscope/click/preview.cpp:224
3979+#: ../libclickscope/click/preview.cpp:243
3980 msgid "First released"
3981 msgstr "First released"
3982
3983-#: ../libclickscope/click/preview.cpp:225
3984+#: ../libclickscope/click/preview.cpp:244
3985 msgid "Size"
3986 msgstr "Size"
3987
3988-#: ../libclickscope/click/preview.cpp:233
3989+#: ../libclickscope/click/preview.cpp:252
3990 msgid "Version"
3991 msgstr "Version"
3992
3993-#: ../libclickscope/click/preview.cpp:364
3994+#: ../libclickscope/click/preview.cpp:383
3995 msgid "Reviews"
3996 msgstr "Reviews"
3997
3998-#: ../libclickscope/click/preview.cpp:383
3999+#: ../libclickscope/click/preview.cpp:402
4000 msgid "Download Error"
4001 msgstr "Download Error"
4002
4003-#: ../libclickscope/click/preview.cpp:384
4004+#: ../libclickscope/click/preview.cpp:403
4005 msgid "Download or install failed. Please try again."
4006 msgstr "Download or install failed. Please try again."
4007
4008 #. TODO see bug LP: #1289434
4009-#: ../libclickscope/click/preview.cpp:386
4010+#: ../libclickscope/click/preview.cpp:405
4011 msgid "Close"
4012 msgstr "Close"
4013
4014-#: ../libclickscope/click/preview.cpp:391
4015+#: ../libclickscope/click/preview.cpp:410
4016 msgid "Login Error"
4017 msgstr "Login Error"
4018
4019-#: ../libclickscope/click/preview.cpp:392
4020+#: ../libclickscope/click/preview.cpp:411
4021 msgid "Please log in to your Ubuntu One account."
4022 msgstr "Please log in to your Ubuntu One account."
4023
4024-#: ../libclickscope/click/preview.cpp:394
4025+#: ../libclickscope/click/preview.cpp:413
4026 msgid "Go to Accounts"
4027 msgstr "Go to Accounts"
4028
4029-#: ../libclickscope/click/preview.cpp:624
4030+#: ../libclickscope/click/preview.cpp:646
4031 msgid "Open"
4032 msgstr "Open"
4033
4034-#: ../libclickscope/click/preview.cpp:627
4035-#: ../libclickscope/click/preview.cpp:711
4036+#: ../libclickscope/click/preview.cpp:649
4037+#: ../libclickscope/click/preview.cpp:733
4038 msgid "Search"
4039 msgstr "Search"
4040
4041-#: ../libclickscope/click/preview.cpp:645
4042-#: ../libclickscope/click/preview.cpp:782
4043+#: ../libclickscope/click/preview.cpp:667
4044+#: ../libclickscope/click/preview.cpp:804
4045 msgid "Uninstall"
4046 msgstr "Uninstall"
4047
4048-#: ../libclickscope/click/preview.cpp:766
4049+#: ../libclickscope/click/preview.cpp:788
4050 msgid "Confirmation"
4051 msgstr "Confirmation"
4052
4053 #. TRANSLATORS: Do NOT translate ${title} here.
4054-#: ../libclickscope/click/preview.cpp:769
4055+#: ../libclickscope/click/preview.cpp:791
4056 msgid "Uninstall ${title}?"
4057 msgstr "Uninstall ${title}?"
4058
4059 #. TODO: see bug LP: #1289434
4060-#: ../libclickscope/click/preview.cpp:778
4061+#: ../libclickscope/click/preview.cpp:800
4062 msgid "Cancel"
4063 msgstr "Cancel"
4064
4065-#: ../libclickscope/click/preview.cpp:843
4066+#: ../libclickscope/click/preview.cpp:866
4067 msgid "Install"
4068 msgstr "Install"
4069
4070@@ -162,48 +167,49 @@
4071 msgstr[0] "{1} byte"
4072 msgstr[1] "{1} bytes"
4073
4074-#: ../scope/clickapps/apps-query.cpp:260
4075+#: ../scope/clickapps/apps-query.cpp:262
4076 msgid "Get more apps from the store"
4077 msgstr "Get more apps from the store"
4078
4079-#: ../scope/clickapps/apps-query.cpp:266
4080+#: ../scope/clickapps/apps-query.cpp:268
4081 #, c-format
4082 msgid "Search for '%s' in the store"
4083 msgstr "Search for '%s' in the store"
4084
4085-#: ../scope/clickapps/apps-query.cpp:273
4086+#: ../scope/clickapps/apps-query.cpp:275
4087 msgid "Get more apps like this from the Store"
4088 msgstr "Get more apps like this from the Store"
4089
4090-#: ../scope/clickapps/apps-query.cpp:302
4091-#: ../scope/clickstore/store-query.cpp:236
4092-#: ../scope/clickstore/store-query.cpp:247
4093-msgid "All departments"
4094-msgstr "All departments"
4095+#: ../scope/clickapps/apps-query.cpp:315
4096+#: ../scope/clickstore/store-query.cpp:244
4097+#: ../scope/clickstore/store-query.cpp:255
4098+#: ../scope/clickstore/store-query.cpp:467
4099+msgid "All"
4100+msgstr ""
4101
4102-#: ../scope/clickstore/store-query.cpp:285
4103+#: ../scope/clickstore/store-query.cpp:297
4104 msgid "✔ INSTALLED"
4105 msgstr "✔ INSTALLED"
4106
4107-#: ../scope/clickstore/store-query.cpp:290
4108+#: ../scope/clickstore/store-query.cpp:302
4109 msgid "✔ PURCHASED"
4110 msgstr "✔ PURCHASED"
4111
4112-#: ../scope/clickstore/store-query.cpp:298
4113+#: ../scope/clickstore/store-query.cpp:310
4114 msgid "FREE"
4115 msgstr "FREE"
4116
4117-#: ../scope/clickstore/store-query.cpp:415
4118+#: ../scope/clickstore/store-query.cpp:427
4119 msgid "Available"
4120 msgstr "Available"
4121
4122-#: ../scope/clickstore/store-query.cpp:421
4123+#: ../scope/clickstore/store-query.cpp:433
4124 #, c-format
4125 msgid "%u result in Ubuntu Store"
4126 msgid_plural "%u results in Ubuntu Store"
4127 msgstr[0] "%u result in Ubuntu Store"
4128 msgstr[1] "%u results in Ubuntu Store"
4129
4130-#: ../scope/clickstore/store-query.cpp:431
4131+#: ../scope/clickstore/store-query.cpp:443
4132 msgid "Recommended"
4133 msgstr "Recommended"
4134
4135=== modified file 'po/es.po'
4136--- po/es.po 2014-07-31 08:14:29 +0000
4137+++ po/es.po 2014-08-21 20:38:09 +0000
4138@@ -7,7 +7,7 @@
4139 msgstr ""
4140 "Project-Id-Version: unity-scope-click\n"
4141 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
4142-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
4143+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
4144 "PO-Revision-Date: 2014-07-30 16:50+0000\n"
4145 "Last-Translator: Adolfo Jayme <fitoschido@gmail.com>\n"
4146 "Language-Team: Spanish <es@li.org>\n"
4147@@ -15,11 +15,11 @@
4148 "Content-Type: text/plain; charset=UTF-8\n"
4149 "Content-Transfer-Encoding: 8bit\n"
4150 "Plural-Forms: nplurals=2; plural=n != 1;\n"
4151-"X-Launchpad-Export-Date: 2014-07-31 08:14+0000\n"
4152-"X-Generator: Launchpad (build 17131)\n"
4153+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
4154+"X-Generator: Launchpad (build 17163)\n"
4155
4156 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
4157-#: ../scope/clickapps/apps-query.cpp:259
4158+#: ../scope/clickapps/apps-query.cpp:261
4159 msgid "Ubuntu Store"
4160 msgstr "Tienda Ubuntu"
4161
4162@@ -31,7 +31,8 @@
4163 msgid "Search store"
4164 msgstr "Buscar en la tienda"
4165
4166-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
4167+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
4168+#: ../scope/clickapps/apps-query.cpp:159
4169 msgid "Apps"
4170 msgstr "Aplicaciones"
4171
4172@@ -43,6 +44,10 @@
4173 msgid "Search apps"
4174 msgstr "Buscar aplicaciones"
4175
4176+#: ../libclickscope/click/highlights.cpp:119
4177+msgid "Scopes"
4178+msgstr ""
4179+
4180 #: ../libclickscope/click/preview.cpp:58
4181 msgid "Info"
4182 msgstr "Información"
4183@@ -55,104 +60,104 @@
4184 msgid "What's new"
4185 msgstr "Novedades"
4186
4187-#: ../libclickscope/click/preview.cpp:210
4188+#: ../libclickscope/click/preview.cpp:229
4189 msgid "Publisher/Creator"
4190 msgstr "Autor/editor"
4191
4192-#: ../libclickscope/click/preview.cpp:211
4193+#: ../libclickscope/click/preview.cpp:230
4194 msgid "Seller"
4195 msgstr "Vendedor"
4196
4197-#: ../libclickscope/click/preview.cpp:212
4198+#: ../libclickscope/click/preview.cpp:231
4199 msgid "Website"
4200 msgstr "Sitio web"
4201
4202-#: ../libclickscope/click/preview.cpp:213
4203+#: ../libclickscope/click/preview.cpp:232
4204 msgid "Contact"
4205 msgstr "Contacto"
4206
4207-#: ../libclickscope/click/preview.cpp:214
4208+#: ../libclickscope/click/preview.cpp:233
4209 msgid "License"
4210 msgstr "Licencia"
4211
4212-#: ../libclickscope/click/preview.cpp:222
4213+#: ../libclickscope/click/preview.cpp:241
4214 msgid "Version number"
4215 msgstr "Número de versión"
4216
4217-#: ../libclickscope/click/preview.cpp:223
4218+#: ../libclickscope/click/preview.cpp:242
4219 msgid "Last updated"
4220 msgstr "Última actualización"
4221
4222-#: ../libclickscope/click/preview.cpp:224
4223+#: ../libclickscope/click/preview.cpp:243
4224 msgid "First released"
4225 msgstr "Primera publicación"
4226
4227-#: ../libclickscope/click/preview.cpp:225
4228+#: ../libclickscope/click/preview.cpp:244
4229 msgid "Size"
4230 msgstr "Tamaño"
4231
4232-#: ../libclickscope/click/preview.cpp:233
4233+#: ../libclickscope/click/preview.cpp:252
4234 msgid "Version"
4235 msgstr "Versión"
4236
4237-#: ../libclickscope/click/preview.cpp:364
4238+#: ../libclickscope/click/preview.cpp:383
4239 msgid "Reviews"
4240 msgstr "Reseñas"
4241
4242-#: ../libclickscope/click/preview.cpp:383
4243+#: ../libclickscope/click/preview.cpp:402
4244 msgid "Download Error"
4245 msgstr "Error en la descarga"
4246
4247-#: ../libclickscope/click/preview.cpp:384
4248+#: ../libclickscope/click/preview.cpp:403
4249 msgid "Download or install failed. Please try again."
4250 msgstr "La descarga o la instalación han fallado. Inténtelo nuevamente."
4251
4252 #. TODO see bug LP: #1289434
4253-#: ../libclickscope/click/preview.cpp:386
4254+#: ../libclickscope/click/preview.cpp:405
4255 msgid "Close"
4256 msgstr "Cerrar"
4257
4258-#: ../libclickscope/click/preview.cpp:391
4259+#: ../libclickscope/click/preview.cpp:410
4260 msgid "Login Error"
4261 msgstr "Error de autenticación"
4262
4263-#: ../libclickscope/click/preview.cpp:392
4264+#: ../libclickscope/click/preview.cpp:411
4265 msgid "Please log in to your Ubuntu One account."
4266 msgstr "Acceda a su cuenta de Ubuntu One."
4267
4268-#: ../libclickscope/click/preview.cpp:394
4269+#: ../libclickscope/click/preview.cpp:413
4270 msgid "Go to Accounts"
4271 msgstr "Ir a cuentas"
4272
4273-#: ../libclickscope/click/preview.cpp:624
4274+#: ../libclickscope/click/preview.cpp:646
4275 msgid "Open"
4276 msgstr "Abrir"
4277
4278-#: ../libclickscope/click/preview.cpp:627
4279-#: ../libclickscope/click/preview.cpp:711
4280+#: ../libclickscope/click/preview.cpp:649
4281+#: ../libclickscope/click/preview.cpp:733
4282 msgid "Search"
4283 msgstr "Buscar"
4284
4285-#: ../libclickscope/click/preview.cpp:645
4286-#: ../libclickscope/click/preview.cpp:782
4287+#: ../libclickscope/click/preview.cpp:667
4288+#: ../libclickscope/click/preview.cpp:804
4289 msgid "Uninstall"
4290 msgstr "Desinstalar"
4291
4292-#: ../libclickscope/click/preview.cpp:766
4293+#: ../libclickscope/click/preview.cpp:788
4294 msgid "Confirmation"
4295 msgstr "Confirmación"
4296
4297 #. TRANSLATORS: Do NOT translate ${title} here.
4298-#: ../libclickscope/click/preview.cpp:769
4299+#: ../libclickscope/click/preview.cpp:791
4300 msgid "Uninstall ${title}?"
4301 msgstr "¿Desinstalar ${title}?"
4302
4303 #. TODO: see bug LP: #1289434
4304-#: ../libclickscope/click/preview.cpp:778
4305+#: ../libclickscope/click/preview.cpp:800
4306 msgid "Cancel"
4307 msgstr "Cancelar"
4308
4309-#: ../libclickscope/click/preview.cpp:843
4310+#: ../libclickscope/click/preview.cpp:866
4311 msgid "Install"
4312 msgstr "Instalar"
4313
4314@@ -162,48 +167,49 @@
4315 msgstr[0] "{1} byte"
4316 msgstr[1] "{1} bytes"
4317
4318-#: ../scope/clickapps/apps-query.cpp:260
4319+#: ../scope/clickapps/apps-query.cpp:262
4320 msgid "Get more apps from the store"
4321 msgstr "Consiga más aplicaciones en la tienda"
4322
4323-#: ../scope/clickapps/apps-query.cpp:266
4324+#: ../scope/clickapps/apps-query.cpp:268
4325 #, c-format
4326 msgid "Search for '%s' in the store"
4327 msgstr "Busque «%s» en la tienda"
4328
4329-#: ../scope/clickapps/apps-query.cpp:273
4330+#: ../scope/clickapps/apps-query.cpp:275
4331 msgid "Get more apps like this from the Store"
4332 msgstr "Más aplicaciones como esta en la Tienda"
4333
4334-#: ../scope/clickapps/apps-query.cpp:302
4335-#: ../scope/clickstore/store-query.cpp:236
4336-#: ../scope/clickstore/store-query.cpp:247
4337-msgid "All departments"
4338-msgstr "Todos los departamentos"
4339+#: ../scope/clickapps/apps-query.cpp:315
4340+#: ../scope/clickstore/store-query.cpp:244
4341+#: ../scope/clickstore/store-query.cpp:255
4342+#: ../scope/clickstore/store-query.cpp:467
4343+msgid "All"
4344+msgstr ""
4345
4346-#: ../scope/clickstore/store-query.cpp:285
4347+#: ../scope/clickstore/store-query.cpp:297
4348 msgid "✔ INSTALLED"
4349 msgstr "✔ INSTALADA"
4350
4351-#: ../scope/clickstore/store-query.cpp:290
4352+#: ../scope/clickstore/store-query.cpp:302
4353 msgid "✔ PURCHASED"
4354 msgstr "✔ COMPRADA"
4355
4356-#: ../scope/clickstore/store-query.cpp:298
4357+#: ../scope/clickstore/store-query.cpp:310
4358 msgid "FREE"
4359 msgstr "GRATIS"
4360
4361-#: ../scope/clickstore/store-query.cpp:415
4362+#: ../scope/clickstore/store-query.cpp:427
4363 msgid "Available"
4364 msgstr "Disponible"
4365
4366-#: ../scope/clickstore/store-query.cpp:421
4367+#: ../scope/clickstore/store-query.cpp:433
4368 #, c-format
4369 msgid "%u result in Ubuntu Store"
4370 msgid_plural "%u results in Ubuntu Store"
4371 msgstr[0] "%u resultado en la Tienda de Ubuntu"
4372 msgstr[1] "%u resultados en la Tienda de Ubuntu"
4373
4374-#: ../scope/clickstore/store-query.cpp:431
4375+#: ../scope/clickstore/store-query.cpp:443
4376 msgid "Recommended"
4377 msgstr "Recomendado"
4378
4379=== modified file 'po/eu.po'
4380--- po/eu.po 2014-07-31 08:14:29 +0000
4381+++ po/eu.po 2014-08-21 20:38:09 +0000
4382@@ -7,7 +7,7 @@
4383 msgstr ""
4384 "Project-Id-Version: unity-scope-click\n"
4385 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
4386-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
4387+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
4388 "PO-Revision-Date: 2014-07-30 17:33+0000\n"
4389 "Last-Translator: Ibai Oihanguren Sala <Unknown>\n"
4390 "Language-Team: Basque <eu@li.org>\n"
4391@@ -15,11 +15,11 @@
4392 "Content-Type: text/plain; charset=UTF-8\n"
4393 "Content-Transfer-Encoding: 8bit\n"
4394 "Plural-Forms: nplurals=2; plural=n != 1;\n"
4395-"X-Launchpad-Export-Date: 2014-07-31 08:14+0000\n"
4396-"X-Generator: Launchpad (build 17131)\n"
4397+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
4398+"X-Generator: Launchpad (build 17163)\n"
4399
4400 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
4401-#: ../scope/clickapps/apps-query.cpp:259
4402+#: ../scope/clickapps/apps-query.cpp:261
4403 msgid "Ubuntu Store"
4404 msgstr "Ubunturen denda"
4405
4406@@ -31,7 +31,8 @@
4407 msgid "Search store"
4408 msgstr "Bilatu dendan"
4409
4410-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
4411+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
4412+#: ../scope/clickapps/apps-query.cpp:159
4413 msgid "Apps"
4414 msgstr "Aplikazioak"
4415
4416@@ -43,6 +44,10 @@
4417 msgid "Search apps"
4418 msgstr "Bilatu aplikazioak"
4419
4420+#: ../libclickscope/click/highlights.cpp:119
4421+msgid "Scopes"
4422+msgstr ""
4423+
4424 #: ../libclickscope/click/preview.cpp:58
4425 msgid "Info"
4426 msgstr "Informazioa"
4427@@ -55,104 +60,104 @@
4428 msgid "What's new"
4429 msgstr "Zer berri?"
4430
4431-#: ../libclickscope/click/preview.cpp:210
4432+#: ../libclickscope/click/preview.cpp:229
4433 msgid "Publisher/Creator"
4434 msgstr "Argitaratzailea/Sortzailea"
4435
4436-#: ../libclickscope/click/preview.cpp:211
4437+#: ../libclickscope/click/preview.cpp:230
4438 msgid "Seller"
4439 msgstr "Saltzailea"
4440
4441-#: ../libclickscope/click/preview.cpp:212
4442+#: ../libclickscope/click/preview.cpp:231
4443 msgid "Website"
4444 msgstr "Webgunea"
4445
4446-#: ../libclickscope/click/preview.cpp:213
4447+#: ../libclickscope/click/preview.cpp:232
4448 msgid "Contact"
4449 msgstr "Kontaktua"
4450
4451-#: ../libclickscope/click/preview.cpp:214
4452+#: ../libclickscope/click/preview.cpp:233
4453 msgid "License"
4454 msgstr "Lizentzia"
4455
4456-#: ../libclickscope/click/preview.cpp:222
4457+#: ../libclickscope/click/preview.cpp:241
4458 msgid "Version number"
4459 msgstr "Bertsio-zenbakia"
4460
4461-#: ../libclickscope/click/preview.cpp:223
4462+#: ../libclickscope/click/preview.cpp:242
4463 msgid "Last updated"
4464 msgstr "Azken eguneratzea"
4465
4466-#: ../libclickscope/click/preview.cpp:224
4467+#: ../libclickscope/click/preview.cpp:243
4468 msgid "First released"
4469 msgstr "Aurreneko argitaratzea"
4470
4471-#: ../libclickscope/click/preview.cpp:225
4472+#: ../libclickscope/click/preview.cpp:244
4473 msgid "Size"
4474 msgstr "Tamaina"
4475
4476-#: ../libclickscope/click/preview.cpp:233
4477+#: ../libclickscope/click/preview.cpp:252
4478 msgid "Version"
4479 msgstr "Bertsioa"
4480
4481-#: ../libclickscope/click/preview.cpp:364
4482+#: ../libclickscope/click/preview.cpp:383
4483 msgid "Reviews"
4484 msgstr "Kritikak"
4485
4486-#: ../libclickscope/click/preview.cpp:383
4487+#: ../libclickscope/click/preview.cpp:402
4488 msgid "Download Error"
4489 msgstr "Deskarga-errorea"
4490
4491-#: ../libclickscope/click/preview.cpp:384
4492+#: ../libclickscope/click/preview.cpp:403
4493 msgid "Download or install failed. Please try again."
4494 msgstr "Deskarga edo instalazioak huts egin du. Saiatu berriro."
4495
4496 #. TODO see bug LP: #1289434
4497-#: ../libclickscope/click/preview.cpp:386
4498+#: ../libclickscope/click/preview.cpp:405
4499 msgid "Close"
4500 msgstr "Itxi"
4501
4502-#: ../libclickscope/click/preview.cpp:391
4503+#: ../libclickscope/click/preview.cpp:410
4504 msgid "Login Error"
4505 msgstr "Errorea saioa hastean"
4506
4507-#: ../libclickscope/click/preview.cpp:392
4508+#: ../libclickscope/click/preview.cpp:411
4509 msgid "Please log in to your Ubuntu One account."
4510 msgstr "Hasi saioa zure Ubuntu One kontuan."
4511
4512-#: ../libclickscope/click/preview.cpp:394
4513+#: ../libclickscope/click/preview.cpp:413
4514 msgid "Go to Accounts"
4515 msgstr "Joan Kontuak-era"
4516
4517-#: ../libclickscope/click/preview.cpp:624
4518+#: ../libclickscope/click/preview.cpp:646
4519 msgid "Open"
4520 msgstr "Ireki"
4521
4522-#: ../libclickscope/click/preview.cpp:627
4523-#: ../libclickscope/click/preview.cpp:711
4524+#: ../libclickscope/click/preview.cpp:649
4525+#: ../libclickscope/click/preview.cpp:733
4526 msgid "Search"
4527 msgstr "Bilatu"
4528
4529-#: ../libclickscope/click/preview.cpp:645
4530-#: ../libclickscope/click/preview.cpp:782
4531+#: ../libclickscope/click/preview.cpp:667
4532+#: ../libclickscope/click/preview.cpp:804
4533 msgid "Uninstall"
4534 msgstr "Desinstalatu"
4535
4536-#: ../libclickscope/click/preview.cpp:766
4537+#: ../libclickscope/click/preview.cpp:788
4538 msgid "Confirmation"
4539 msgstr "Berrespena"
4540
4541 #. TRANSLATORS: Do NOT translate ${title} here.
4542-#: ../libclickscope/click/preview.cpp:769
4543+#: ../libclickscope/click/preview.cpp:791
4544 msgid "Uninstall ${title}?"
4545 msgstr "${title} desinstalatu?"
4546
4547 #. TODO: see bug LP: #1289434
4548-#: ../libclickscope/click/preview.cpp:778
4549+#: ../libclickscope/click/preview.cpp:800
4550 msgid "Cancel"
4551 msgstr "Utzi"
4552
4553-#: ../libclickscope/click/preview.cpp:843
4554+#: ../libclickscope/click/preview.cpp:866
4555 msgid "Install"
4556 msgstr "Instalatu"
4557
4558@@ -162,48 +167,49 @@
4559 msgstr[0] "byte {1}"
4560 msgstr[1] "{1} byte"
4561
4562-#: ../scope/clickapps/apps-query.cpp:260
4563+#: ../scope/clickapps/apps-query.cpp:262
4564 msgid "Get more apps from the store"
4565 msgstr "Eskuratu dendako aplikazio gehiago"
4566
4567-#: ../scope/clickapps/apps-query.cpp:266
4568+#: ../scope/clickapps/apps-query.cpp:268
4569 #, c-format
4570 msgid "Search for '%s' in the store"
4571 msgstr "Bilatu '%s' dendan"
4572
4573-#: ../scope/clickapps/apps-query.cpp:273
4574+#: ../scope/clickapps/apps-query.cpp:275
4575 msgid "Get more apps like this from the Store"
4576 msgstr "Eskuratu hau moduko aplikazio gehiago dendan"
4577
4578-#: ../scope/clickapps/apps-query.cpp:302
4579-#: ../scope/clickstore/store-query.cpp:236
4580-#: ../scope/clickstore/store-query.cpp:247
4581-msgid "All departments"
4582-msgstr "Sail guztiak"
4583+#: ../scope/clickapps/apps-query.cpp:315
4584+#: ../scope/clickstore/store-query.cpp:244
4585+#: ../scope/clickstore/store-query.cpp:255
4586+#: ../scope/clickstore/store-query.cpp:467
4587+msgid "All"
4588+msgstr ""
4589
4590-#: ../scope/clickstore/store-query.cpp:285
4591+#: ../scope/clickstore/store-query.cpp:297
4592 msgid "✔ INSTALLED"
4593 msgstr "✔ INSTALATUTA"
4594
4595-#: ../scope/clickstore/store-query.cpp:290
4596+#: ../scope/clickstore/store-query.cpp:302
4597 msgid "✔ PURCHASED"
4598 msgstr "✔ EROSITA"
4599
4600-#: ../scope/clickstore/store-query.cpp:298
4601+#: ../scope/clickstore/store-query.cpp:310
4602 msgid "FREE"
4603 msgstr "DOAN"
4604
4605-#: ../scope/clickstore/store-query.cpp:415
4606+#: ../scope/clickstore/store-query.cpp:427
4607 msgid "Available"
4608 msgstr "Eskuragarri"
4609
4610-#: ../scope/clickstore/store-query.cpp:421
4611+#: ../scope/clickstore/store-query.cpp:433
4612 #, c-format
4613 msgid "%u result in Ubuntu Store"
4614 msgid_plural "%u results in Ubuntu Store"
4615 msgstr[0] "Emaitza %u Ubunturen dendan"
4616 msgstr[1] "%u emaitza Ubunturen dendan"
4617
4618-#: ../scope/clickstore/store-query.cpp:431
4619+#: ../scope/clickstore/store-query.cpp:443
4620 msgid "Recommended"
4621 msgstr "Gomendatua"
4622
4623=== modified file 'po/fa.po'
4624--- po/fa.po 2014-08-04 06:35:07 +0000
4625+++ po/fa.po 2014-08-21 20:38:09 +0000
4626@@ -7,19 +7,19 @@
4627 msgstr ""
4628 "Project-Id-Version: unity-scope-click\n"
4629 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
4630-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
4631-"PO-Revision-Date: 2014-08-03 12:48+0000\n"
4632+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
4633+"PO-Revision-Date: 2014-08-20 11:15+0000\n"
4634 "Last-Translator: Danial Behzadi <dani.behzi@gmail.com>\n"
4635 "Language-Team: Persian <fa@li.org>\n"
4636 "MIME-Version: 1.0\n"
4637 "Content-Type: text/plain; charset=UTF-8\n"
4638 "Content-Transfer-Encoding: 8bit\n"
4639 "Plural-Forms: nplurals=1; plural=0;\n"
4640-"X-Launchpad-Export-Date: 2014-08-04 06:35+0000\n"
4641-"X-Generator: Launchpad (build 17147)\n"
4642+"X-Launchpad-Export-Date: 2014-08-21 06:51+0000\n"
4643+"X-Generator: Launchpad (build 17163)\n"
4644
4645 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
4646-#: ../scope/clickapps/apps-query.cpp:259
4647+#: ../scope/clickapps/apps-query.cpp:261
4648 msgid "Ubuntu Store"
4649 msgstr "فروشگاه اوبونتو"
4650
4651@@ -31,7 +31,8 @@
4652 msgid "Search store"
4653 msgstr "جست‌وجوی فروشگاه"
4654
4655-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
4656+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
4657+#: ../scope/clickapps/apps-query.cpp:159
4658 msgid "Apps"
4659 msgstr "اپ‌ها"
4660
4661@@ -43,6 +44,10 @@
4662 msgid "Search apps"
4663 msgstr "جست‌وجوی اپ‌ها"
4664
4665+#: ../libclickscope/click/highlights.cpp:119
4666+msgid "Scopes"
4667+msgstr "حوزه‌ها"
4668+
4669 #: ../libclickscope/click/preview.cpp:58
4670 msgid "Info"
4671 msgstr "اطلاعات"
4672@@ -55,104 +60,104 @@
4673 msgid "What's new"
4674 msgstr "اپ‌های جدید"
4675
4676-#: ../libclickscope/click/preview.cpp:210
4677+#: ../libclickscope/click/preview.cpp:229
4678 msgid "Publisher/Creator"
4679 msgstr "منتشرکننده/سازنده"
4680
4681-#: ../libclickscope/click/preview.cpp:211
4682+#: ../libclickscope/click/preview.cpp:230
4683 msgid "Seller"
4684 msgstr "فروشنده"
4685
4686-#: ../libclickscope/click/preview.cpp:212
4687+#: ../libclickscope/click/preview.cpp:231
4688 msgid "Website"
4689 msgstr "پایگاه‌وب"
4690
4691-#: ../libclickscope/click/preview.cpp:213
4692+#: ../libclickscope/click/preview.cpp:232
4693 msgid "Contact"
4694 msgstr "مخاطب"
4695
4696-#: ../libclickscope/click/preview.cpp:214
4697+#: ../libclickscope/click/preview.cpp:233
4698 msgid "License"
4699 msgstr "پروانه"
4700
4701-#: ../libclickscope/click/preview.cpp:222
4702+#: ../libclickscope/click/preview.cpp:241
4703 msgid "Version number"
4704 msgstr "شماره‌ی نگارش"
4705
4706-#: ../libclickscope/click/preview.cpp:223
4707+#: ../libclickscope/click/preview.cpp:242
4708 msgid "Last updated"
4709 msgstr "آخرین به‌روزرسانی"
4710
4711-#: ../libclickscope/click/preview.cpp:224
4712+#: ../libclickscope/click/preview.cpp:243
4713 msgid "First released"
4714 msgstr "نخستین انتشار"
4715
4716-#: ../libclickscope/click/preview.cpp:225
4717+#: ../libclickscope/click/preview.cpp:244
4718 msgid "Size"
4719 msgstr "اندازه"
4720
4721-#: ../libclickscope/click/preview.cpp:233
4722+#: ../libclickscope/click/preview.cpp:252
4723 msgid "Version"
4724 msgstr "نگارش"
4725
4726-#: ../libclickscope/click/preview.cpp:364
4727+#: ../libclickscope/click/preview.cpp:383
4728 msgid "Reviews"
4729 msgstr "باربینی‌ها"
4730
4731-#: ../libclickscope/click/preview.cpp:383
4732+#: ../libclickscope/click/preview.cpp:402
4733 msgid "Download Error"
4734 msgstr "خطای بارگیری"
4735
4736-#: ../libclickscope/click/preview.cpp:384
4737+#: ../libclickscope/click/preview.cpp:403
4738 msgid "Download or install failed. Please try again."
4739 msgstr "بارگیری یا نصب شکست خورد. لطفاً دوباره تلاش کنید."
4740
4741 #. TODO see bug LP: #1289434
4742-#: ../libclickscope/click/preview.cpp:386
4743+#: ../libclickscope/click/preview.cpp:405
4744 msgid "Close"
4745 msgstr "بستن"
4746
4747-#: ../libclickscope/click/preview.cpp:391
4748+#: ../libclickscope/click/preview.cpp:410
4749 msgid "Login Error"
4750 msgstr "خطای ورود"
4751
4752-#: ../libclickscope/click/preview.cpp:392
4753+#: ../libclickscope/click/preview.cpp:411
4754 msgid "Please log in to your Ubuntu One account."
4755 msgstr "لطفاً به حساب کاربری اویونتووان خود وارد شوید."
4756
4757-#: ../libclickscope/click/preview.cpp:394
4758+#: ../libclickscope/click/preview.cpp:413
4759 msgid "Go to Accounts"
4760 msgstr "رفتن به حساب‌های کاربری"
4761
4762-#: ../libclickscope/click/preview.cpp:624
4763+#: ../libclickscope/click/preview.cpp:646
4764 msgid "Open"
4765 msgstr "گشودن"
4766
4767-#: ../libclickscope/click/preview.cpp:627
4768-#: ../libclickscope/click/preview.cpp:711
4769+#: ../libclickscope/click/preview.cpp:649
4770+#: ../libclickscope/click/preview.cpp:733
4771 msgid "Search"
4772 msgstr "جست‌وجو"
4773
4774-#: ../libclickscope/click/preview.cpp:645
4775-#: ../libclickscope/click/preview.cpp:782
4776+#: ../libclickscope/click/preview.cpp:667
4777+#: ../libclickscope/click/preview.cpp:804
4778 msgid "Uninstall"
4779 msgstr "حذف نصب"
4780
4781-#: ../libclickscope/click/preview.cpp:766
4782+#: ../libclickscope/click/preview.cpp:788
4783 msgid "Confirmation"
4784 msgstr "تأییدیه"
4785
4786 #. TRANSLATORS: Do NOT translate ${title} here.
4787-#: ../libclickscope/click/preview.cpp:769
4788+#: ../libclickscope/click/preview.cpp:791
4789 msgid "Uninstall ${title}?"
4790 msgstr "حذف ${title}؟"
4791
4792 #. TODO: see bug LP: #1289434
4793-#: ../libclickscope/click/preview.cpp:778
4794+#: ../libclickscope/click/preview.cpp:800
4795 msgid "Cancel"
4796 msgstr "لغو"
4797
4798-#: ../libclickscope/click/preview.cpp:843
4799+#: ../libclickscope/click/preview.cpp:866
4800 msgid "Install"
4801 msgstr "نصب"
4802
4803@@ -161,47 +166,48 @@
4804 msgid_plural "{1} bytes"
4805 msgstr[0] "{1} بایت"
4806
4807-#: ../scope/clickapps/apps-query.cpp:260
4808+#: ../scope/clickapps/apps-query.cpp:262
4809 msgid "Get more apps from the store"
4810 msgstr "گرفتن اپ‌های بیش‌تر از فروشگاه"
4811
4812-#: ../scope/clickapps/apps-query.cpp:266
4813+#: ../scope/clickapps/apps-query.cpp:268
4814 #, c-format
4815 msgid "Search for '%s' in the store"
4816 msgstr "جست‌وجو برای «%s» در فروشگاه"
4817
4818-#: ../scope/clickapps/apps-query.cpp:273
4819+#: ../scope/clickapps/apps-query.cpp:275
4820 msgid "Get more apps like this from the Store"
4821 msgstr "گرفتن اپ‌های بیش‌تری شبیه به این از فروشگاه"
4822
4823-#: ../scope/clickapps/apps-query.cpp:302
4824-#: ../scope/clickstore/store-query.cpp:236
4825-#: ../scope/clickstore/store-query.cpp:247
4826-msgid "All departments"
4827-msgstr "همه‌ی بخش‌ها"
4828+#: ../scope/clickapps/apps-query.cpp:315
4829+#: ../scope/clickstore/store-query.cpp:244
4830+#: ../scope/clickstore/store-query.cpp:255
4831+#: ../scope/clickstore/store-query.cpp:467
4832+msgid "All"
4833+msgstr "همه"
4834
4835-#: ../scope/clickstore/store-query.cpp:285
4836+#: ../scope/clickstore/store-query.cpp:297
4837 msgid "✔ INSTALLED"
4838 msgstr "✔ نصب شده"
4839
4840-#: ../scope/clickstore/store-query.cpp:290
4841+#: ../scope/clickstore/store-query.cpp:302
4842 msgid "✔ PURCHASED"
4843 msgstr "✔ خریداری شده"
4844
4845-#: ../scope/clickstore/store-query.cpp:298
4846+#: ../scope/clickstore/store-query.cpp:310
4847 msgid "FREE"
4848 msgstr "رایگان"
4849
4850-#: ../scope/clickstore/store-query.cpp:415
4851+#: ../scope/clickstore/store-query.cpp:427
4852 msgid "Available"
4853 msgstr "موجود"
4854
4855-#: ../scope/clickstore/store-query.cpp:421
4856+#: ../scope/clickstore/store-query.cpp:433
4857 #, c-format
4858 msgid "%u result in Ubuntu Store"
4859 msgid_plural "%u results in Ubuntu Store"
4860 msgstr[0] "%u یافته در فروشگاه اوبونتو"
4861
4862-#: ../scope/clickstore/store-query.cpp:431
4863+#: ../scope/clickstore/store-query.cpp:443
4864 msgid "Recommended"
4865 msgstr "توصيه شده"
4866
4867=== modified file 'po/fi.po'
4868--- po/fi.po 2014-08-01 07:16:52 +0000
4869+++ po/fi.po 2014-08-21 20:38:09 +0000
4870@@ -7,7 +7,7 @@
4871 msgstr ""
4872 "Project-Id-Version: unity-scope-click\n"
4873 "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
4874-"POT-Creation-Date: 2014-07-28 17:25-0400\n"
4875+"POT-Creation-Date: 2014-08-19 17:19-0400\n"
4876 "PO-Revision-Date: 2014-07-31 08:25+0000\n"
4877 "Last-Translator: Jiri Grönroos <Unknown>\n"
4878 "Language-Team: Finnish <fi@li.org>\n"
4879@@ -15,11 +15,11 @@
4880 "Content-Type: text/plain; charset=UTF-8\n"
4881 "Content-Transfer-Encoding: 8bit\n"
4882 "Plural-Forms: nplurals=2; plural=n != 1;\n"
4883-"X-Launchpad-Export-Date: 2014-08-01 07:16+0000\n"
4884-"X-Generator: Launchpad (build 17141)\n"
4885+"X-Launchpad-Export-Date: 2014-08-20 06:26+0000\n"
4886+"X-Generator: Launchpad (build 17163)\n"
4887
4888 #: ../data/com.canonical.scopes.clickstore.ini.in.in.h:1
4889-#: ../scope/clickapps/apps-query.cpp:259
4890+#: ../scope/clickapps/apps-query.cpp:261
4891 msgid "Ubuntu Store"
4892 msgstr "Ubuntu-kauppa"
4893
4894@@ -31,7 +31,8 @@
4895 msgid "Search store"
4896 msgstr "Etsi kaupasta"
4897
4898-#: ../data/clickscope.ini.in.in.h:1 ../scope/clickapps/apps-query.cpp:157
4899+#: ../data/clickscope.ini.in.in.h:1 ../libclickscope/click/highlights.cpp:116
4900+#: ../scope/clickapps/apps-query.cpp:159
4901 msgid "Apps"
4902 msgstr "Sovellukset"
4903
4904@@ -43,6 +44,10 @@
4905 msgid "Search apps"
4906 msgstr "Etsi sovelluksia"
4907
4908+#: ../libclickscope/click/highlights.cpp:119
4909+msgid "Scopes"
4910+msgstr ""
4911+
4912 #: ../libclickscope/click/preview.cpp:58
4913 msgid "Info"
4914 msgstr "Tiedot"
4915@@ -55,104 +60,104 @@
4916 msgid "What's new"
4917 msgstr "Uutuudet"
4918
4919-#: ../libclickscope/click/preview.cpp:210
4920+#: ../libclickscope/click/preview.cpp:229
4921 msgid "Publisher/Creator"
4922 msgstr "Julkaisija/tekijä"
4923
4924-#: ../libclickscope/click/preview.cpp:211
4925+#: ../libclickscope/click/preview.cpp:230
4926 msgid "Seller"
4927 msgstr "Myyjä"
4928
4929-#: ../libclickscope/click/preview.cpp:212
4930+#: ../libclickscope/click/preview.cpp:231
4931 msgid "Website"
4932 msgstr "Verkkosivusto"
4933
4934-#: ../libclickscope/click/preview.cpp:213
4935+#: ../libclickscope/click/preview.cpp:232
4936 msgid "Contact"
4937 msgstr "Yhteys"
4938
4939-#: ../libclickscope/click/preview.cpp:214
4940+#: ../libclickscope/click/preview.cpp:233
4941 msgid "License"
4942 msgstr "Lisenssi"
4943
4944-#: ../libclickscope/click/preview.cpp:222
4945+#: ../libclickscope/click/preview.cpp:241
4946 msgid "Version number"
4947 msgstr "Versionumero"
4948
4949-#: ../libclickscope/click/preview.cpp:223
4950+#: ../libclickscope/click/preview.cpp:242
4951 msgid "Last updated"
4952 msgstr "Viimeksi päivitetty"
4953
4954-#: ../libclickscope/click/preview.cpp:224
4955+#: ../libclickscope/click/preview.cpp:243
4956 msgid "First released"
4957 msgstr "Ensijulkaisu"
4958
4959-#: ../libclickscope/click/preview.cpp:225
4960+#: ../libclickscope/click/preview.cpp:244
4961 msgid "Size"
4962 msgstr "Koko"
4963
4964-#: ../libclickscope/click/preview.cpp:233
4965+#: ../libclickscope/click/preview.cpp:252
4966 msgid "Version"
4967 msgstr "Versio"
4968
4969-#: ../libclickscope/click/preview.cpp:364
4970+#: ../libclickscope/click/preview.cpp:383
4971 msgid "Reviews"
4972 msgstr "Arvostelut"
4973
4974-#: ../libclickscope/click/preview.cpp:383
4975+#: ../libclickscope/click/preview.cpp:402
4976 msgid "Download Error"
4977 msgstr "Latausvirhe"
4978
4979-#: ../libclickscope/click/preview.cpp:384
4980+#: ../libclickscope/click/preview.cpp:403
4981 msgid "Download or install failed. Please try again."
4982 msgstr "Lataus tai asennus epäonnistui. Yritä uudelleen."
4983
4984 #. TODO see bug LP: #1289434
4985-#: ../libclickscope/click/preview.cpp:386
4986+#: ../libclickscope/click/preview.cpp:405
4987 msgid "Close"
4988 msgstr "Sulje"
4989
4990-#: ../libclickscope/click/preview.cpp:391
4991+#: ../libclickscope/click/preview.cpp:410
4992 msgid "Login Error"
4993 msgstr "Kirjautumisvirhe"
4994
4995-#: ../libclickscope/click/preview.cpp:392
4996+#: ../libclickscope/click/preview.cpp:411
4997 msgid "Please log in to your Ubuntu One account."
4998 msgstr "Kirjaudu Ubuntu One -tilillesi."
4999
5000-#: ../libclickscope/click/preview.cpp:394
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches