Merge lp:~cimi/unity8/carousel-music-video into lp:unity8

Proposed by Andrea Cimitan
Status: Superseded
Proposed branch: lp:~cimi/unity8/carousel-music-video
Merge into: lp:unity8
Diff against target: 318 lines (+196/-33)
7 files modified
Dash/Generic/GenericCarouselLoader.qml (+30/-0)
Dash/GenericScopeView.qml (+9/-8)
Dash/Music/CarouselDelegateMusic.qml (+58/-13)
Dash/Music/MusicCarouselLoader.qml (+24/-0)
Dash/Video/CarouselDelegateVideo.qml (+49/-10)
Dash/Video/VideoCarousel.qml (+2/-2)
Dash/Video/VideoCarouselLoader.qml (+24/-0)
To merge this branch: bzr merge lp:~cimi/unity8/carousel-music-video
Reviewer Review Type Date Requested Status
PS Jenkins bot (community) continuous-integration Needs Fixing
Michał Sawicz Needs Fixing
Review via email: mp+191247@code.launchpad.net

This proposal has been superseded by a proposal from 2013-10-22.

Commit message

Added music and video carousel using new assets (music carousel asset will need future update)

Description of the change

Added music and video carousel using new assets (music carousel asset will need future update).

This branch will conflict with https://code.launchpad.net/~unity-team/unity8/carousel-loader/+merge/190406 so the last to get approved will require a small update

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

FAILED: Continuous integration, rev:464
http://jenkins.qa.ubuntu.com/job/unity8-ci/1416/
Executed test runs:
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-saucy/5025
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-touch/2954
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-saucy/2283
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-saucy-amd64-ci/439
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-saucy-armhf-ci/1416
        deb: http://jenkins.qa.ubuntu.com/job/unity8-saucy-armhf-ci/1416/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-saucy-i386-ci/1415
    SUCCESS: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-saucy/1194
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-saucy-amd64/900
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-saucy-amd64/900/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-saucy-armhf/2956
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-saucy-armhf/2956/artifact/work/output/*zip*/output.zip
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-maguro/2462
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-mako/2505

Click here to trigger a rebuild:
http://10.97.0.26:8080/job/unity8-ci/1416/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Michał Sawicz (saviq) wrote :

What is " // XXX test on Nexus 10"?

What's the status of the incorrect shape of the overlay?

 34 + borderSource: "cimi wants no borders"
Erm... Filed a bug about this?

49 + duration: 250
50 + easing.type: Easing.InOutQuad

We've got UbuntuAnimation for standard durations. Also, opacity animations are supposed to be Linear.

67 + visible: true

Is default.

review: Needs Fixing
Revision history for this message
Andrea Cimitan (cimi) wrote :

> What is " // XXX test on Nexus 10"?
>
> What's the status of the incorrect shape of the overlay?
>
> 34 + borderSource: "cimi wants no borders"
> Erm... Filed a bug about this?
>
bordersource needs a not-empty and incorrect value to disable borders...

> 49 + duration: 250
> 50 + easing.type: Easing.InOutQuad
>
> We've got UbuntuAnimation for standard durations. Also, opacity animations are
> supposed to be Linear.
>
> 67 + visible: true
>
> Is default.
will fix those tomorrow morning

lp:~cimi/unity8/carousel-music-video updated
465. By Andrea Cimitan

use ubuntu animation

466. By Andrea Cimitan

Merged lp:~unity-team/unity8/carousel-loader

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Continuous integration, rev:466
http://jenkins.qa.ubuntu.com/job/unity8-ci/1467/
Executed test runs:
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-saucy/5125
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-touch/3137/console
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-saucy/2339
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-saucy-amd64-ci/490
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-saucy-armhf-ci/1471
        deb: http://jenkins.qa.ubuntu.com/job/unity8-saucy-armhf-ci/1471/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-saucy-i386-ci/1466
    SUCCESS: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-saucy/1289
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-saucy-amd64/1000
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-saucy-amd64/1000/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-saucy-armhf/3139
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-saucy-armhf/3139/artifact/work/output/*zip*/output.zip
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-maguro/2618/console
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-mako/2669/console
    SUCCESS: http://10.97.0.26:8080/job/touch-flash-device/267
    SUCCESS: http://10.97.0.26:8080/job/touch-flash-device/266

Click here to trigger a rebuild:
http://10.97.0.26:8080/job/unity8-ci/1467/rebuild

review: Needs Fixing (continuous-integration)
lp:~cimi/unity8/carousel-music-video updated
467. By Andrea Cimitan

Update asset

468. By Andrea Cimitan

Update comments

469. By Andrea Cimitan

Changed url :)

470. By Andrea Cimitan

Extra fixes and refinements for carousel music and video (align video grid tiles too)

471. By Andrea Cimitan

Updated overlay asset

472. By Andrea Cimitan

Delete tags

Unmerged revisions

472. By Andrea Cimitan

Delete tags

471. By Andrea Cimitan

Updated overlay asset

470. By Andrea Cimitan

Extra fixes and refinements for carousel music and video (align video grid tiles too)

469. By Andrea Cimitan

Changed url :)

468. By Andrea Cimitan

Update comments

467. By Andrea Cimitan

Update asset

466. By Andrea Cimitan

Merged lp:~unity-team/unity8/carousel-loader

465. By Andrea Cimitan

use ubuntu animation

464. By Andrea Cimitan

Added carousel music and video renderers

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'Dash/Generic/GenericCarouselLoader.qml'
2--- Dash/Generic/GenericCarouselLoader.qml 1970-01-01 00:00:00 +0000
3+++ Dash/Generic/GenericCarouselLoader.qml 2013-10-22 09:29:38 +0000
4@@ -0,0 +1,30 @@
5+/*
6+ * Copyright (C) 2013 Canonical, Ltd.
7+ *
8+ * This program is free software; you can redistribute it and/or modify
9+ * it under the terms of the GNU General Public License as published by
10+ * the Free Software Foundation; version 3.
11+ *
12+ * This program is distributed in the hope that it will be useful,
13+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
14+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15+ * GNU General Public License for more details.
16+ *
17+ * You should have received a copy of the GNU General Public License
18+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
19+ */
20+
21+import QtQuick 2.0
22+import Ubuntu.Components 0.1
23+
24+Loader {
25+ property var model: null
26+ property url carouselUrl: "GenericCarousel.qml"
27+ property url filtergridUrl: "GenericFilterGrid.qml"
28+
29+ source: model.count > 6 ? carouselUrl : filtergridUrl // FIXME do not hardcode 6, but retrieve correct minimum required count
30+
31+ onLoaded: {
32+ item.model = Qt.binding(function() { return model; })
33+ }
34+}
35
36=== modified file 'Dash/GenericScopeView.qml'
37--- Dash/GenericScopeView.qml 2013-10-11 13:54:24 +0000
38+++ Dash/GenericScopeView.qml 2013-10-22 09:29:38 +0000
39@@ -238,26 +238,27 @@
40 rendererId = getDefaultRendererId(contentType);
41 }
42 switch (rendererId) {
43+ case "carousel": {
44+ switch (contentType) {
45+ case "music": return "Music/MusicCarouselLoader.qml";
46+ case "video": return "Video/VideoCarouselLoader.qml";
47+ default: return "Generic/GenericCarouselLoader.qml";
48+ }
49+ }
50 case "grid": {
51 switch (contentType) {
52- case "video": return "Video/VideoFilterGrid.qml";
53- case "music": return "Music/MusicFilterGrid.qml";
54 case "apps": {
55 if (rendererHint == "toggled")
56 return "Apps/DashPluginFilterGrid.qml";
57 else
58 return "Generic/GenericFilterGrid.qml";
59 }
60+ case "music": return "Music/MusicFilterGrid.qml";
61+ case "video": return "Video/VideoFilterGrid.qml";
62 case "weather": return "Generic/WeatherFilterGrid.qml";
63 default: return "Generic/GenericFilterGrid.qml";
64 }
65 }
66- case "carousel": {
67- switch (contentType) {
68- case "music": return "Music/MusicCarousel.qml";
69- default: return "Generic/GenericCarousel.qml";
70- }
71- }
72 case "special": {
73 switch (contentType) {
74 case "apps": return "Apps/RunningApplicationsGrid.qml";
75
76=== modified file 'Dash/Music/CarouselDelegateMusic.qml'
77--- Dash/Music/CarouselDelegateMusic.qml 2013-07-09 11:04:25 +0000
78+++ Dash/Music/CarouselDelegateMusic.qml 2013-10-22 09:29:38 +0000
79@@ -21,22 +21,67 @@
80 BaseCarouselDelegate {
81 id: item
82
83- UbuntuShape {
84+ Image {
85 anchors.fill: parent
86- radius: "medium"
87- borderSource: ""
88- image: Image {
89- asynchronous: true
90- sourceSize { width: item.width; height: item.height }
91- source: model ? model.icon : ""
92+ source: "graphics/music_lens_carousel_itemholder.png"
93+
94+ UbuntuShape {
95+ anchors.fill: parent
96+ radius: "medium"
97+ borderSource: "cimi wants no borders"
98+ image: Image {
99+ asynchronous: true
100+ sourceSize { width: item.width; height: item.height }
101+ source: model ? model.icon : ""
102+ }
103+ }
104+
105+ Loader {
106+ id: loaderFrame
107+ anchors.fill: parent
108+ opacity: item.explicitlyScaled ? 1.0 : 0
109+
110+ Behavior on opacity {
111+ UbuntuNumberAnimation {
112+ easing.type: Easing.Linear
113+ }
114+ }
115+
116+ sourceComponent: opacity > 0 ? componentFrame : undefined
117 }
118 }
119
120- BorderImage {
121- anchors.centerIn: parent
122- opacity: 0.6
123- source: "../../Components/graphics/non-selected.sci"
124- width: parent.width + units.gu(1.5)
125- height: parent.height + units.gu(1.5)
126+ Component {
127+ id: componentFrame
128+ Image {
129+ source: "graphics/music_lens_carousel_text_overlay.png"
130+
131+ Column {
132+ anchors {
133+ left: parent.left
134+ right: parent.right
135+ bottom: parent.bottom
136+ margins: units.gu(1)
137+ }
138+
139+ Label {
140+ text: model ? model.comment : ""
141+ fontSize: "small"
142+ font.weight: Font.Bold
143+ elide: Text.ElideRight
144+ wrapMode: Text.Wrap
145+ maximumLineCount: 2
146+ width: parent.width
147+ }
148+ Label {
149+ text: model ? model.title : ""
150+ fontSize: "x-small"
151+ elide: Text.ElideRight
152+ wrapMode: Text.Wrap
153+ maximumLineCount: 1
154+ width: parent.width
155+ }
156+ }
157+ }
158 }
159 }
160
161=== added file 'Dash/Music/MusicCarouselLoader.qml'
162--- Dash/Music/MusicCarouselLoader.qml 1970-01-01 00:00:00 +0000
163+++ Dash/Music/MusicCarouselLoader.qml 2013-10-22 09:29:38 +0000
164@@ -0,0 +1,24 @@
165+/*
166+ * Copyright (C) 2013 Canonical, Ltd.
167+ *
168+ * This program is free software; you can redistribute it and/or modify
169+ * it under the terms of the GNU General Public License as published by
170+ * the Free Software Foundation; version 3.
171+ *
172+ * This program is distributed in the hope that it will be useful,
173+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
174+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
175+ * GNU General Public License for more details.
176+ *
177+ * You should have received a copy of the GNU General Public License
178+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
179+ */
180+
181+import QtQuick 2.0
182+import Ubuntu.Components 0.1
183+import "../Generic"
184+
185+GenericCarouselLoader {
186+ carouselUrl: "MusicCarousel.qml"
187+ filtergridUrl: "MusicFilterGrid.qml"
188+}
189
190=== added directory 'Dash/Music/graphics'
191=== added file 'Dash/Music/graphics/music_lens_carousel_itemholder@27.png'
192Binary files Dash/Music/graphics/music_lens_carousel_itemholder@27.png 1970-01-01 00:00:00 +0000 and Dash/Music/graphics/music_lens_carousel_itemholder@27.png 2013-10-22 09:29:38 +0000 differ
193=== added file 'Dash/Music/graphics/music_lens_carousel_text_overlay@27.png'
194Binary files Dash/Music/graphics/music_lens_carousel_text_overlay@27.png 1970-01-01 00:00:00 +0000 and Dash/Music/graphics/music_lens_carousel_text_overlay@27.png 2013-10-22 09:29:38 +0000 differ
195=== modified file 'Dash/Video/CarouselDelegateVideo.qml'
196--- Dash/Video/CarouselDelegateVideo.qml 2013-07-09 09:06:29 +0000
197+++ Dash/Video/CarouselDelegateVideo.qml 2013-10-22 09:29:38 +0000
198@@ -21,22 +21,61 @@
199 BaseCarouselDelegate {
200 id: item
201
202- UbuntuShape {
203+ Image {
204 anchors.fill: parent
205- radius: "medium"
206- borderSource: ""
207- image: Image {
208+ source: "graphics/movie_icon_holder_carousel.png"
209+
210+ Image {
211+ id: thumbnail
212 asynchronous: true
213+ anchors {
214+ fill: parent;
215+ leftMargin: units.dp(2)
216+ rightMargin: units.dp(2)
217+ topMargin: units.gu(2) + units.dp(2) // XXX test on Nexus 10
218+ bottomMargin: units.gu(2.5) - units.dp(1) // XXX test on Nexus 10
219+ }
220 sourceSize { width: item.width; height: item.height }
221 source: model ? model.icon : ""
222+ fillMode: Image.PreserveAspectCrop
223+ }
224+
225+ Loader {
226+ id: loaderFrame
227+ anchors {
228+ left: thumbnail.left
229+ right: thumbnail.right
230+ bottom: thumbnail.bottom
231+ }
232+ height: units.gu(6)
233+ opacity: item.explicitlyScaled ? 1.0 : 0
234+
235+ Behavior on opacity {
236+ UbuntuNumberAnimation {
237+ easing.type: Easing.Linear
238+ }
239+ }
240+
241+ sourceComponent: opacity > 0 ? componentFrame : undefined
242 }
243 }
244
245- BorderImage {
246- anchors.centerIn: parent
247- opacity: 0.6
248- source: "../../Components/graphics/non-selected.sci"
249- width: parent.width + units.gu(1.5)
250- height: parent.height + units.gu(1.5)
251+ Component {
252+ id: componentFrame
253+ Rectangle {
254+ color: Qt.rgba(0, 0, 0, 0.8)
255+
256+ Label {
257+ anchors.centerIn: parent
258+ width: parent.width - units.gu(2)
259+ text: model ? model.title : ""
260+ fontSize: "small"
261+ font.weight: Font.Bold
262+ elide: Text.ElideRight
263+ wrapMode: Text.Wrap
264+ maximumLineCount: 2
265+ horizontalAlignment: Text.AlignHCenter
266+ }
267+ }
268 }
269 }
270
271=== renamed file 'Dash/Video/VideosCarousel.qml' => 'Dash/Video/VideoCarousel.qml'
272--- Dash/Video/VideosCarousel.qml 2013-06-05 22:03:08 +0000
273+++ Dash/Video/VideoCarousel.qml 2013-10-22 09:29:38 +0000
274@@ -19,10 +19,10 @@
275
276 Carousel {
277 id: videosCarousel
278- tileAspectRatio: 198 / 288
279+ tileAspectRatio: 1
280 minimumTileWidth: units.gu(13)
281 itemComponent: carouselDelegateVideo
282- selectedItemScaleFactor: 1.14
283+ selectedItemScaleFactor: 1.2
284 cacheBuffer: 1404 // 18px * 13gu * 6
285 height: implicitHeight + units.gu(6)
286
287
288=== added file 'Dash/Video/VideoCarouselLoader.qml'
289--- Dash/Video/VideoCarouselLoader.qml 1970-01-01 00:00:00 +0000
290+++ Dash/Video/VideoCarouselLoader.qml 2013-10-22 09:29:38 +0000
291@@ -0,0 +1,24 @@
292+/*
293+ * Copyright (C) 2013 Canonical, Ltd.
294+ *
295+ * This program is free software; you can redistribute it and/or modify
296+ * it under the terms of the GNU General Public License as published by
297+ * the Free Software Foundation; version 3.
298+ *
299+ * This program is distributed in the hope that it will be useful,
300+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
301+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
302+ * GNU General Public License for more details.
303+ *
304+ * You should have received a copy of the GNU General Public License
305+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
306+ */
307+
308+import QtQuick 2.0
309+import Ubuntu.Components 0.1
310+import "../Generic"
311+
312+GenericCarouselLoader {
313+ carouselUrl: "VideoCarousel.qml"
314+ filtergridUrl: "VideoFilterGrid.qml"
315+}
316
317=== added file 'Dash/Video/graphics/movie_icon_holder_carousel@27.png'
318Binary files Dash/Video/graphics/movie_icon_holder_carousel@27.png 1970-01-01 00:00:00 +0000 and Dash/Video/graphics/movie_icon_holder_carousel@27.png 2013-10-22 09:29:38 +0000 differ

Subscribers

People subscribed via source and target branches