Merge lp:~artmello/gallery-app/gallery-app-fix_1542083 into lp:gallery-app

Proposed by Arthur Mello
Status: Merged
Approved by: Bill Filler
Approved revision: 1267
Merged at revision: 1276
Proposed branch: lp:~artmello/gallery-app/gallery-app-fix_1542083
Merge into: lp:gallery-app
Diff against target: 517 lines (+159/-111)
5 files modified
po/gallery-app.pot (+78/-104)
rc/qml/AlbumViewer/AlbumInternals/FramePortrait.qml (+17/-0)
rc/qml/Components/MediaGrid.qml (+13/-2)
rc/qml/MediaViewer/SingleMediaViewer.qml (+38/-3)
rc/qml/OrganicView/OrganicMediaList.qml (+13/-2)
To merge this branch: bzr merge lp:~artmello/gallery-app/gallery-app-fix_1542083
Reviewer Review Type Date Requested Status
PS Jenkins bot continuous-integration Needs Fixing
Ubuntu Phablet Team Pending
Review via email: mp+285705@code.launchpad.net

Commit message

Following some changes on thumbnailer image provider we need to handle Image.Error status for videos that are unable to load correctly

Description of the change

Following some changes on thumbnailer image provider we need to handle Image.Error status for videos that are unable to load correctly

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'po/gallery-app.pot'
2--- po/gallery-app.pot 2015-05-21 10:13:59 +0000
3+++ po/gallery-app.pot 2016-02-11 11:55:55 +0000
4@@ -8,7 +8,7 @@
5 msgstr ""
6 "Project-Id-Version: gallery-app\n"
7 "Report-Msgid-Bugs-To: \n"
8-"POT-Creation-Date: 2015-05-21 13:13+0300\n"
9+"POT-Creation-Date: 2016-02-11 09:44-0200\n"
10 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
13@@ -23,19 +23,17 @@
14 msgstr ""
15
16 #: rc/qml/AlbumEditor/AlbumEditMenu.qml:50
17-#: rc/qml/AlbumViewer/AlbumViewer.qml:375
18-#: rc/qml/Components/DeleteDialog.qml:32
19-#: rc/qml/MediaViewer/MediaViewer.qml:345 rc/qml/Utility/EditingHUD.qml:67
20-#: rc/qml/Utility/SelectionToolbarAction.qml:56
21+#: rc/qml/AlbumViewer/AlbumViewer.qml:378
22+#: rc/qml/Components/DeleteDialog.qml:32 rc/qml/EventsOverview.qml:138
23+#: rc/qml/MediaViewer/MediaViewer.qml:354 rc/qml/PhotosOverview.qml:164
24+#: rc/qml/Utility/EditingHUD.qml:67
25 msgid "Delete"
26 msgstr ""
27
28 #: rc/qml/AlbumEditor/AlbumEditor.qml:39
29-#: rc/qml/Components/MediaSelector.qml:92
30-#: rc/qml/MediaViewer/MediaViewer.qml:275
31-#: rc/qml/MediaViewer/PhotoEditor.qml:206
32-#: rc/qml/MediaViewer/PhotoEditor/ExposureAdjuster.qml:80
33-#: rc/qml/PickerScreen.qml:235 rc/qml/Utility/SelectionToolbarAction.qml:75
34+#: rc/qml/Components/MediaSelector.qml:93 rc/qml/EventsOverview.qml:156
35+#: rc/qml/MediaViewer/MediaViewer.qml:282 rc/qml/PhotosOverview.qml:182
36+#: rc/qml/PickerScreen.qml:227
37 msgid "Cancel"
38 msgstr ""
39
40@@ -59,43 +57,39 @@
41 msgid "Red"
42 msgstr ""
43
44-#: rc/qml/AlbumViewer/AlbumViewer.qml:107 rc/qml/MainScreen.qml:60
45+#: rc/qml/AlbumViewer/AlbumViewer.qml:107 rc/qml/MainScreen.qml:58
46 msgid "Album"
47 msgstr ""
48
49-#: rc/qml/AlbumViewer/AlbumViewer.qml:369
50-#: rc/qml/MediaViewer/MediaViewer.qml:335
51+#: rc/qml/AlbumViewer/AlbumViewer.qml:372
52+#: rc/qml/MediaViewer/MediaViewer.qml:344
53 msgid "Add to album"
54 msgstr ""
55
56-#: rc/qml/AlbumsOverview.qml:236 rc/qml/Components/PopupAlbumPicker.qml:91
57+#: rc/qml/AlbumsOverview.qml:228 rc/qml/Components/PopupAlbumPicker.qml:91
58 msgid "Add new album"
59 msgstr ""
60
61-#: rc/qml/AlbumsOverview.qml:240 rc/qml/Components/PopupAlbumPicker.qml:101
62+#: rc/qml/AlbumsOverview.qml:232 rc/qml/Components/PopupAlbumPicker.qml:101
63 msgid "New Photo Album"
64 msgstr ""
65
66-#: rc/qml/AlbumsOverview.qml:241 rc/qml/Components/PopupAlbumPicker.qml:102
67+#: rc/qml/AlbumsOverview.qml:233 rc/qml/Components/PopupAlbumPicker.qml:102
68 msgid "Subtitle"
69 msgstr ""
70
71-#: rc/qml/AlbumsOverview.qml:247 rc/qml/Utility/EditingHUD.qml:77
72-#: rc/qml/Utility/SelectionToolbarAction.qml:47
73-msgid "Add"
74-msgstr ""
75-
76-#: rc/qml/AlbumsOverview.qml:252 rc/qml/Utility/PhotosToolbarActions.qml:51
77+#: rc/qml/AlbumsOverview.qml:240 rc/qml/EventsOverview.qml:115
78+#: rc/qml/PhotosOverview.qml:141
79 msgid "Camera"
80 msgstr ""
81
82 #: rc/qml/Components/DeleteDialog.qml:36
83-#: rc/qml/MediaViewer/MediaViewer.qml:223
84+#: rc/qml/MediaViewer/MediaViewer.qml:230
85 msgid "Yes"
86 msgstr ""
87
88 #: rc/qml/Components/DeleteDialog.qml:45
89-#: rc/qml/MediaViewer/MediaViewer.qml:234
90+#: rc/qml/MediaViewer/MediaViewer.qml:241
91 msgid "No"
92 msgstr ""
93
94@@ -116,7 +110,7 @@
95 msgstr ""
96
97 #: rc/qml/Components/MediaSelector.qml:59
98-#: rc/qml/Components/MediaSelector.qml:80
99+#: rc/qml/Components/MediaSelector.qml:81
100 msgid "Add to Album"
101 msgstr ""
102
103@@ -161,115 +155,75 @@
104 msgid "Delete %1 photos and %2 videos"
105 msgstr ""
106
107-#: rc/qml/EventsOverview.qml:151 rc/qml/PhotosOverview.qml:165
108+#: rc/qml/EventsOverview.qml:108 rc/qml/MainScreen.qml:200
109+#: rc/qml/MainScreen.qml:252 rc/qml/PhotosOverview.qml:134
110+#: rc/qml/PickerScreen.qml:139 rc/qml/PickerScreen.qml:186
111+msgid "Select"
112+msgstr ""
113+
114+#: rc/qml/EventsOverview.qml:127 rc/qml/PhotosOverview.qml:153
115+#: rc/qml/Utility/EditingHUD.qml:77
116+msgid "Add"
117+msgstr ""
118+
119+#: rc/qml/EventsOverview.qml:145 rc/qml/MediaViewer/MediaViewer.qml:365
120+#: rc/qml/PhotosOverview.qml:171 rc/qml/Utility/EditingHUD.qml:72
121+msgid "Share"
122+msgstr ""
123+
124+#: rc/qml/EventsOverview.qml:184 rc/qml/MediaViewer/MediaViewer.qml:186
125+#: rc/qml/PhotosOverview.qml:196
126 msgid "Share to"
127 msgstr ""
128
129-#: rc/qml/LoadingScreen.qml:46
130+#: rc/qml/LoadingScreen.qml:39
131 msgid "Loading…"
132 msgstr ""
133
134-#: rc/qml/MainScreen.qml:147
135+#: rc/qml/MainScreen.qml:148
136 msgid "Albums"
137 msgstr ""
138
139-#: rc/qml/MainScreen.qml:161 rc/qml/MainScreen.qml:190
140-#: rc/qml/PickerScreen.qml:101
141+#: rc/qml/MainScreen.qml:162 rc/qml/MainScreen.qml:202
142+#: rc/qml/PickerScreen.qml:99
143 msgid "Events"
144 msgstr ""
145
146-#: rc/qml/MainScreen.qml:188 rc/qml/MainScreen.qml:233
147-#: rc/qml/PickerScreen.qml:141 rc/qml/PickerScreen.qml:194
148-#: rc/qml/Utility/PhotosToolbarActions.qml:34
149-msgid "Select"
150-msgstr ""
151-
152-#: rc/qml/MainScreen.qml:199 rc/qml/MainScreen.qml:235
153-#: rc/qml/PickerScreen.qml:152
154+#: rc/qml/MainScreen.qml:211 rc/qml/MainScreen.qml:254
155+#: rc/qml/PickerScreen.qml:150
156 msgid "Photos"
157 msgstr ""
158
159-#: rc/qml/MediaViewer/ExtrasPhotoEditorPage.qml:26
160-#: rc/qml/MediaViewer/GalleryPhotoEditorPage.qml:25
161-msgid "Edit Photo"
162-msgstr ""
163-
164-#: rc/qml/MediaViewer/MediaViewer.qml:212
165+#: rc/qml/MediaViewer/MediaViewer.qml:219
166 msgid "Delete a photo"
167 msgstr ""
168
169-#: rc/qml/MediaViewer/MediaViewer.qml:212
170+#: rc/qml/MediaViewer/MediaViewer.qml:219
171 msgid "Delete a video"
172 msgstr ""
173
174-#: rc/qml/MediaViewer/MediaViewer.qml:245
175+#: rc/qml/MediaViewer/MediaViewer.qml:252
176 msgid "Remove a photo from album"
177 msgstr ""
178
179-#: rc/qml/MediaViewer/MediaViewer.qml:245
180+#: rc/qml/MediaViewer/MediaViewer.qml:252
181 msgid "Remove a video from album"
182 msgstr ""
183
184-#: rc/qml/MediaViewer/MediaViewer.qml:254
185+#: rc/qml/MediaViewer/MediaViewer.qml:261
186 msgid "Remove from Album"
187 msgstr ""
188
189-#: rc/qml/MediaViewer/MediaViewer.qml:265
190+#: rc/qml/MediaViewer/MediaViewer.qml:272
191 msgid "Remove from Album and Delete"
192 msgstr ""
193
194-#: rc/qml/MediaViewer/MediaViewer.qml:312
195+#: rc/qml/MediaViewer/MediaViewer.qml:319
196 msgid "Edit"
197 msgstr ""
198
199-#: rc/qml/MediaViewer/MediaViewer.qml:356 rc/qml/Utility/EditingHUD.qml:72
200-#: rc/qml/Utility/SelectionToolbarAction.qml:65
201-msgid "Share"
202-msgstr ""
203-
204-#: rc/qml/MediaViewer/PhotoEditor.qml:43
205-#: rc/qml/MediaViewer/PhotoEditor/CropOverlay.qml:349
206-#: rc/qml/Utility/EditingHUD.qml:106
207-msgid "Crop"
208-msgstr ""
209-
210-#: rc/qml/MediaViewer/PhotoEditor.qml:52 rc/qml/Utility/EditingHUD.qml:99
211-msgid "Rotate"
212-msgstr ""
213-
214-#: rc/qml/MediaViewer/PhotoEditor.qml:196
215-msgid "Revert to original"
216-msgstr ""
217-
218-#: rc/qml/MediaViewer/PhotoEditor.qml:197
219-msgid "This will undo all edits, including those from previous sessions."
220-msgstr ""
221-
222-#: rc/qml/MediaViewer/PhotoEditor.qml:212
223-msgid "Revert Photo"
224-msgstr ""
225-
226-#: rc/qml/MediaViewer/PhotoEditor.qml:226
227-msgid "Enhancing photo..."
228-msgstr ""
229-
230-#: rc/qml/MediaViewer/PhotoEditor/EditStack.qml:114
231-#: rc/qml/Utility/EditingHUD.qml:82
232-msgid "Undo"
233-msgstr ""
234-
235-#: rc/qml/MediaViewer/PhotoEditor/EditStack.qml:121
236-#: rc/qml/Utility/EditingHUD.qml:87
237-msgid "Redo"
238-msgstr ""
239-
240-#: rc/qml/MediaViewer/PhotoEditor/EditStack.qml:128
241-#: rc/qml/Utility/EditingHUD.qml:113
242-msgid "Revert to Original"
243-msgstr ""
244-
245-#: rc/qml/MediaViewer/PhotoEditor/ExposureAdjuster.qml:71
246-msgid "Done"
247+#: rc/qml/MediaViewer/PhotoEditorPage.qml:26
248+msgid "Edit Photo"
249 msgstr ""
250
251 #: rc/qml/MediaViewer/PopupPhotoViewer.qml:46
252@@ -277,11 +231,15 @@
253 msgid "Gallery"
254 msgstr ""
255
256-#: rc/qml/MediaViewer/PopupPhotoViewer.qml:167
257+#: rc/qml/MediaViewer/PopupPhotoViewer.qml:183
258 msgid "Toggle Selection"
259 msgstr ""
260
261-#: rc/qml/PickerScreen.qml:241
262+#: rc/qml/MediaViewer/SingleMediaViewer.qml:225
263+msgid "An error has occurred attempting to load media"
264+msgstr ""
265+
266+#: rc/qml/PickerScreen.qml:233
267 msgid "Pick"
268 msgstr ""
269
270@@ -293,10 +251,18 @@
271 msgid "Post;Upload;Attach"
272 msgstr ""
273
274+#: rc/qml/Utility/EditingHUD.qml:82
275+msgid "Undo"
276+msgstr ""
277+
278 #: rc/qml/Utility/EditingHUD.qml:83
279 msgid "Cancel Action;Backstep"
280 msgstr ""
281
282+#: rc/qml/Utility/EditingHUD.qml:87
283+msgid "Redo"
284+msgstr ""
285+
286 #: rc/qml/Utility/EditingHUD.qml:88
287 msgid "Reapply;Make Again"
288 msgstr ""
289@@ -313,6 +279,10 @@
290 msgid "Automatically Adjust Photo"
291 msgstr ""
292
293+#: rc/qml/Utility/EditingHUD.qml:99
294+msgid "Rotate"
295+msgstr ""
296+
297 #: rc/qml/Utility/EditingHUD.qml:100
298 msgid "Turn Clockwise"
299 msgstr ""
300@@ -321,6 +291,10 @@
301 msgid "Rotate the image clockwise"
302 msgstr ""
303
304+#: rc/qml/Utility/EditingHUD.qml:106
305+msgid "Crop"
306+msgstr ""
307+
308 #: rc/qml/Utility/EditingHUD.qml:107
309 msgid "Trim;Cut"
310 msgstr ""
311@@ -329,6 +303,10 @@
312 msgid "Crop the image"
313 msgstr ""
314
315+#: rc/qml/Utility/EditingHUD.qml:113
316+msgid "Revert to Original"
317+msgstr ""
318+
319 #: rc/qml/Utility/EditingHUD.qml:114
320 msgid "Discard Changes"
321 msgstr ""
322@@ -385,10 +363,6 @@
323 msgid "Hue"
324 msgstr ""
325
326-#: rc/qml/Utility/PhotosToolbarActions.qml:43
327-msgid "Import"
328-msgstr ""
329-
330 #: desktop/gallery-app.desktop.in.in.h:2
331 msgid "Ubuntu Photo Viewer"
332 msgstr ""
333
334=== modified file 'rc/qml/AlbumViewer/AlbumInternals/FramePortrait.qml'
335--- rc/qml/AlbumViewer/AlbumInternals/FramePortrait.qml 2015-11-27 08:13:49 +0000
336+++ rc/qml/AlbumViewer/AlbumInternals/FramePortrait.qml 2016-02-11 11:55:55 +0000
337@@ -18,6 +18,7 @@
338 */
339
340 import QtQuick 2.4
341+import Ubuntu.Components 1.3
342 import Gallery 1.0
343 import "../../../js/Gallery.js" as Gallery
344
345@@ -66,6 +67,22 @@
346 NumberAnimation { duration: Gallery.SNAP_DURATION }
347 }
348 }
349+
350+ Rectangle {
351+ anchors.fill: parent
352+ color: "black"
353+ visible: preview.status == Image.Error
354+
355+ Icon {
356+ anchors.centerIn: parent
357+ width: isPreview ? units.gu(4) : units.gu(6)
358+ height: width
359+ name: "stock_image"
360+ color: "white"
361+ opacity: 0.8
362+ }
363+ }
364+
365 Image {
366 // Display a play icon if the thumbnail is from a video
367 source: "../../../img/icon_play.png"
368
369=== modified file 'rc/qml/Components/MediaGrid.qml'
370--- rc/qml/Components/MediaGrid.qml 2015-11-27 08:13:49 +0000
371+++ rc/qml/Components/MediaGrid.qml 2016-02-11 11:55:55 +0000
372@@ -81,7 +81,8 @@
373
374 radius: "medium"
375 property bool isLoading: source.status === Image.Loading
376-
377+
378+ backgroundColor: "black"
379 sourceFillMode: UbuntuShape.PreserveAspectCrop
380 source: Image {
381 id: thumbImage
382@@ -94,11 +95,21 @@
383 }
384 }
385
386+ Icon {
387+ anchors.centerIn: parent
388+ width: units.gu(6)
389+ height: width
390+ visible: thumbImage.status == Image.Error
391+ name: "stock_image"
392+ color: "white"
393+ opacity: 0.8
394+ }
395+
396 Image {
397 // Display a play icon if the thumbnail is from a video
398 source: "../../img/icon_play.png"
399 anchors.centerIn: parent
400- visible: mediaSource.type === MediaSource.Video
401+ visible: mediaSource.type === MediaSource.Video && thumbImage.status == Image.Ready
402 }
403
404 OrganicItemInteraction {
405
406=== modified file 'rc/qml/MediaViewer/SingleMediaViewer.qml'
407--- rc/qml/MediaViewer/SingleMediaViewer.qml 2015-11-05 19:04:22 +0000
408+++ rc/qml/MediaViewer/SingleMediaViewer.qml 2016-02-11 11:55:55 +0000
409@@ -81,7 +81,7 @@
410 ActivityIndicator {
411 anchors.centerIn: parent
412 visible: running
413- running: image.status != Image.Ready
414+ running: image.status != Image.Ready && image.status != Image.Error
415 }
416
417 PinchArea {
418@@ -191,6 +191,41 @@
419 opacity: status == Image.Ready ? 1.0 : 0.0
420 fillMode: Image.PreserveAspectFit
421 }
422+
423+ Item {
424+ id: mediaLoadingError
425+ anchors.centerIn: parent
426+ width: parent.width
427+ height: mediaLoadingErrorIcon.height + units.gu(5) + mediaLoadingErrorLabel.contentHeight
428+ visible: opacity > 0
429+ opacity: image.status == Image.Error ? 1.0 : 0.0
430+ Behavior on opacity { UbuntuNumberAnimation {duration: UbuntuAnimation.FastDuration} }
431+
432+ Icon {
433+ id: mediaLoadingErrorIcon
434+ anchors.horizontalCenter: parent.horizontalCenter
435+ width: units.gu(8)
436+ height: width
437+ name: "stock_image"
438+ color: "white"
439+ opacity: 0.8
440+ }
441+
442+ Label {
443+ id: mediaLoadingErrorLabel
444+ anchors {
445+ horizontalCenter: parent.horizontalCenter
446+ top: mediaLoadingErrorIcon.bottom
447+ topMargin: units.gu(5)
448+ }
449+
450+ width: units.gu(30)
451+ wrapMode: Text.WordWrap
452+ horizontalAlignment: Text.AlignHCenter
453+ text: i18n.tr("An error has occurred attempting to load media")
454+ fontSize: "large"
455+ }
456+ }
457 }
458
459 Icon {
460@@ -200,7 +235,7 @@
461 name: "media-playback-start"
462 color: "white"
463 opacity: 0.8
464- visible: viewer.isVideo
465+ visible: viewer.isVideo && image.status == Image.Ready
466 }
467
468 MouseArea {
469@@ -251,7 +286,7 @@
470 anchors.centerIn: parent
471 width: units.gu(10)
472 height: units.gu(10)
473- enabled: viewer.isVideo
474+ enabled: viewer.isVideo && image.status == Image.Ready
475 onClicked: {
476 if (viewer.isVideo) {
477 var url = mediaSource.path.toString().replace("file://", "video://");
478
479=== modified file 'rc/qml/OrganicView/OrganicMediaList.qml'
480--- rc/qml/OrganicView/OrganicMediaList.qml 2015-11-27 08:13:49 +0000
481+++ rc/qml/OrganicView/OrganicMediaList.qml 2016-02-11 11:55:55 +0000
482@@ -167,10 +167,11 @@
483 }
484 }
485
486- visible: source.status === Image.Ready
487+ visible: source.status === Image.Ready || source.status === Image.Error
488
489 radius: "medium"
490
491+ backgroundColor: "black"
492 sourceFillMode: UbuntuShape.PreserveAspectCrop
493 source: Image {
494 id: thumbImage
495@@ -188,11 +189,21 @@
496 fillMode: Image.PreserveAspectCrop
497 }
498
499+ Icon {
500+ anchors.centerIn: parent
501+ width: units.gu(6)
502+ height: width
503+ visible: thumbImage.status == Image.Error
504+ name: "stock_image"
505+ color: "white"
506+ opacity: 0.8
507+ }
508+
509 Image {
510 // Display a play icon if the thumbnail is from a video
511 source: "../../img/icon_play.png"
512 anchors.centerIn: parent
513- visible: model.mediaSource.type === MediaSource.Video
514+ visible: model.mediaSource.type === MediaSource.Video && thumbImage.status == Image.Ready
515 }
516
517 OrganicItemInteraction {

Subscribers

People subscribed via source and target branches