Merge lp:~macslow/unity8/modal-snap-decisions into lp:unity8

Proposed by Mirco Müller
Status: Merged
Approved by: Albert Astals Cid
Approved revision: 779
Merged at revision: 874
Proposed branch: lp:~macslow/unity8/modal-snap-decisions
Merge into: lp:unity8
Diff against target: 164 lines (+113/-1)
4 files modified
debian/control (+1/-1)
qml/Notifications/Notifications.qml (+11/-0)
qml/Shell.qml (+18/-0)
tests/autopilot/unity8/shell/tests/test_notifications.py (+83/-0)
To merge this branch: bzr merge lp:~macslow/unity8/modal-snap-decisions
Reviewer Review Type Date Requested Status
Albert Astals Cid (community) Approve
Michał Sawicz Approve
PS Jenkins bot (community) continuous-integration Needs Fixing
Jouni Helminen (community) Approve
Review via email: mp+210988@code.launchpad.net

Commit message

Implemented feature-request from Design for modal snap-decision notifications on the phone. See LP #1285712

Description of the change

Implemented feature-request from Design for modal snap-decision notifications on the phone. See LP #1285712

* Are there any related MPs required for this MP to build/function as expected?
Yes, lp:~macslow/unity-notifications/modal-snap-decisions and lp:~macslow/unity-api/version-bump-to-0.1.3 is needed for this to work.

* Did you perform an exploratory manual test run of your code change and any related functionality?
Yes.

* If you changed the packaging (debian), did you subscribe the ubuntu-unity team to this MP?
Yes.

* If you changed the UI, has there been a design review?
Since this is a Design-feature request, they are certainly aware and expecting this change. Still waiting on Design-feedback on screencast of implementation shown here: https://www.youtube.com/watch?v=sqqmPBa97U0

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

FAILED: Continuous integration, rev:766
http://jenkins.qa.ubuntu.com/job/unity8-ci/2493/
Executed test runs:
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/3905
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty-touch/3490/console
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1363
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1014
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1018
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1018/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1014
    SUCCESS: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/3412
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/3938
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/3938/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3492
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3492/artifact/work/output/*zip*/output.zip
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-mako/5830/console
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/4767

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2493/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Continuous integration, rev:766
http://jenkins.qa.ubuntu.com/job/unity8-ci/2521/
Executed test runs:
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/3985
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty-touch/3570
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1391
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1042
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1046
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1046/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1042
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/3479
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4020
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4020/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3572
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3572/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-mako/5904
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/4861

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2521/rebuild

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

8 + Component.onCompleted: {
9 + if (type == Notification.SnapDecision) {
10 + notificationList.snapDecisionCount++;
11 + }
12 + }
13 +
14 + Component.onDestruction: {
15 + if (type == Notification.SnapDecision) {
16 + notificationList.snapDecisionCount--;
17 + }
18 + }
19 +

That will be racy. Use a SortFilterProxyModel and its .count property instead.

review: Needs Fixing
Revision history for this message
Mirco Müller (macslow) wrote :

Fixed with r767.

Revision history for this message
Mirco Müller (macslow) wrote :

Please note the added requirement for lp:~macslow/unity-notifications/modal-snap-decisions now.

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

FAILED: Continuous integration, rev:767
http://jenkins.qa.ubuntu.com/job/unity8-ci/2612/
Executed test runs:
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/4191
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty-touch/3775/console
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1482
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1133
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1137
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1137/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1133
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/3644
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4260
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4260/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3777
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3777/artifact/work/output/*zip*/output.zip
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-mako/6075/console
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/5137

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2612/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Albert Astals Cid (aacid) wrote :

Text conflict in qml/Notifications/Notifications.qml

review: Needs Fixing
Revision history for this message
Mirco Müller (macslow) wrote :

Merged with trunk and fixed resulting merge-conflict.

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

FAILED: Continuous integration, rev:768
http://jenkins.qa.ubuntu.com/job/unity8-ci/2683/
Executed test runs:
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/4381
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty-touch/3976/console
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1553
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1204
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1208
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1208/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1204
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/3795
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4482
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4482/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3997
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/3997/artifact/work/output/*zip*/output.zip
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-mako/6248/console
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/5436

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2683/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Continuous integration, rev:768
http://jenkins.qa.ubuntu.com/job/unity8-ci/2687/
Executed test runs:
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/4388
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty-touch/3985/console
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1558
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1209
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1212
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1212/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1209
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/3801
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4489
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4489/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4006
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4006/artifact/work/output/*zip*/output.zip
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-mako/6255/console
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/5444

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2687/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Continuous integration, rev:770
http://jenkins.qa.ubuntu.com/job/unity8-ci/2723/
Executed test runs:
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/4477/console
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty-touch/4076/console
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1593
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1244
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1248
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1248/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1244
    FAILURE: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/3870/console
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4583
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4583/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4111
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4111/artifact/work/output/*zip*/output.zip
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-runner-mako/6326/console
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/5579

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2723/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Jouni Helminen (jounihelminen) wrote :

Looks good! approved

review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Michał Sawicz (saviq) wrote :

Too quick, we still need code reviews ;)

Revision history for this message
Albert Astals Cid (aacid) wrote :

Can you collapse this two lines in one?

+ property bool useModal
+
+ useModal: snapDecisionProxyModel.count > 0

Look a bit weird this way

review: Needs Fixing
Revision history for this message
Mirco Müller (macslow) wrote :

Done

Revision history for this message
Albert Astals Cid (aacid) wrote :

I'm having two autopilot tests when running this+dependencies on the phone. Please have a look.

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

FAILED: Continuous integration, rev:771
http://jenkins.qa.ubuntu.com/job/unity8-ci/2796/
Executed test runs:
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-deb-autopilot-trusty-touch/186
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/4754
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1660
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1317
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1321
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1321/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1317
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-deb-autopilot-runner-mako/179
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4337
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4337/artifact/work/output/*zip*/output.zip
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/5908
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/4106
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4883
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4883/artifact/work/output/*zip*/output.zip

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2796/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Continuous integration, rev:772
http://jenkins.qa.ubuntu.com/job/unity8-ci/2802/
Executed test runs:
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-deb-autopilot-trusty-touch/212
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/4796
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1666
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1323
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1327
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1327/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1323
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-deb-autopilot-runner-mako/200
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4377
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4377/artifact/work/output/*zip*/output.zip
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/5963
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/4142
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4928
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4928/artifact/work/output/*zip*/output.zip

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2802/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Albert Astals Cid (aacid) wrote :

Code looks good. Tests pass.

 * Did you perform an exploratory manual test run of the code change and any related functionality?
Yes

 * Did CI run pass? If not, please explain why.
No, otto is a bit broken.

review: Approve
Revision history for this message
Michał Sawicz (saviq) wrote :
Revision history for this message
Mirco Müller (macslow) wrote :

The tag-wiping has been kicked off... taking its time :)

Revision history for this message
Mirco Müller (macslow) wrote :

All tags cleaned up.

Revision history for this message
Michał Sawicz (saviq) wrote :

A few things I noticed here:

- unity-notification-impl should be bumped in Depends here, in Provides in unity-notifications and in the .pc file in unity-api, otherwise we end up with this relying on new api unavailable in old plugin
- I can still interact with apps behind the darkening
- using ./sd-example-simunlock.py I can see the pin screen not align properly at the top and shift a little

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

Actually the last item from above is a bug in trunk: bug #1308011

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

FAILED: Continuous integration, rev:774
http://jenkins.qa.ubuntu.com/job/unity8-ci/2821/
Executed test runs:
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-deb-autopilot-trusty-touch/242
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/4837
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1685
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1342
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1346
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1346/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1342
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-deb-autopilot-runner-mako/229
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4414
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4414/artifact/work/output/*zip*/output.zip
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/6035
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/4181
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4974
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4974/artifact/work/output/*zip*/output.zip

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2821/rebuild

review: Needs Fixing (continuous-integration)
775. By Mirco Müller

Make sure input is also blocked for apps when snap-decisions show up.

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

FAILED: Continuous integration, rev:775
http://jenkins.qa.ubuntu.com/job/unity8-ci/2822/
Executed test runs:
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-deb-autopilot-trusty-touch/246
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-trusty/4844
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity-phablet-qmluitests-trusty/1686
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-amd64-ci/1343
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1347
        deb: http://jenkins.qa.ubuntu.com/job/unity8-trusty-armhf-ci/1347/artifact/work/output/*zip*/output.zip
    SUCCESS: http://jenkins.qa.ubuntu.com/job/unity8-trusty-i386-ci/1343
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/generic-deb-autopilot-runner-mako/233
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4420
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-armhf/4420/artifact/work/output/*zip*/output.zip
    SUCCESS: http://s-jenkins.ubuntu-ci:8080/job/touch-flash-device/6044
    UNSTABLE: http://jenkins.qa.ubuntu.com/job/autopilot-testrunner-otto-trusty/4187
    SUCCESS: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4981
        deb: http://jenkins.qa.ubuntu.com/job/generic-mediumtests-builder-trusty-amd64/4981/artifact/work/output/*zip*/output.zip

Click here to trigger a rebuild:
http://s-jenkins.ubuntu-ci:8080/job/unity8-ci/2822/rebuild

review: Needs Fixing (continuous-integration)
776. By Mirco Müller

Make sure to depend on unity-notifications-impl-3.

777. By Mirco Müller

Make sure build depends on unity-notifications-impl-3 (unity-api 0.1.3).

Revision history for this message
Mirco Müller (macslow) wrote :
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Michał Sawicz (saviq) wrote :

8 + unity-notifications-impl-3,

Don't add that in build-dependencies. We already have libunity-api-dev (>= 0.1.3)

16 - qtdeclarative5-unity-notifications-plugin | unity-notifications-impl,
17 + qtdeclarative5-unity-notifications-plugin | unity-notifications-impl-3,

Leave that be.

21 - unity-notifications-impl-2,
22 + unity-notifications-impl-3,

Only this needs to happen.

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

(>= 7.80.6) that is, and that's fine - we don't rely on the changes for our *mocks*, for which this would be necessary.

778. By Mirco Müller

Only bump the run-time dependency regarding the unity-notifications.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Albert Astals Cid (aacid) wrote :

Text conflict in debian/control
1 conflicts encountered.

review: Needs Fixing
779. By Mirco Müller

Merged with trunk and resolved merge-conflicts.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
Revision history for this message
Michał Sawicz (saviq) wrote :

Packaging looks good.

review: Approve
Revision history for this message
Albert Astals Cid (aacid) wrote :

Talking with Saviq over IRC he agrees the issues he raised are now fixed.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/control'
2--- debian/control 2014-04-29 15:08:05 +0000
3+++ debian/control 2014-04-30 08:42:30 +0000
4@@ -102,7 +102,7 @@
5 qtdeclarative5-unity-notifications-plugin | unity-notifications-impl,
6 ubuntu-thumbnailer-impl-0,
7 unity-application-impl-2,
8- unity-notifications-impl-2,
9+ unity-notifications-impl-3,
10 unity-plugin-scopes | unity-scopes-impl,
11 unity-scopes-impl-0,
12 unity8-fake-env | unity-application-impl,
13
14=== modified file 'qml/Notifications/Notifications.qml'
15--- qml/Notifications/Notifications.qml 2014-03-17 15:31:06 +0000
16+++ qml/Notifications/Notifications.qml 2014-04-30 08:42:30 +0000
17@@ -16,6 +16,8 @@
18
19 import QtQuick 2.0
20 import Ubuntu.Components 0.1
21+import Unity.Notifications 1.0 as UnityNotifications
22+import Utils 0.1
23 import "../Components"
24
25 ListView {
26@@ -25,6 +27,15 @@
27 interactive: false
28
29 property real margin
30+ property bool useModal: snapDecisionProxyModel.count > 0
31+
32+ SortFilterProxyModel {
33+ id: snapDecisionProxyModel
34+
35+ model: notificationList.model
36+ filterRole: UnityNotifications.ModelInterface.RoleType
37+ filterRegExp: RegExp(UnityNotifications.Notification.SnapDecision)
38+ }
39 spacing: delegate.fullscreen ? 0 : units.gu(.5)
40
41 currentIndex: (currentIndex < 1 && count > 1) ? 1 : -1
42
43=== modified file 'qml/Shell.qml'
44--- qml/Shell.qml 2014-04-17 15:43:16 +0000
45+++ qml/Shell.qml 2014-04-30 08:42:30 +0000
46@@ -582,6 +582,24 @@
47 }
48 }
49
50+ Rectangle {
51+ id: modalNotificationBackground
52+
53+ visible: notifications.useModal && !greeter.shown && (notifications.state == "narrow")
54+ color: "#000000"
55+ anchors.fill: parent
56+ opacity: 0.5
57+
58+ MouseArea {
59+ anchors.fill: parent
60+ }
61+
62+ InputFilterArea {
63+ anchors.fill: parent
64+ blockInput: modalNotificationBackground.visible
65+ }
66+ }
67+
68 Notifications {
69 id: notifications
70
71
72=== modified file 'tests/autopilot/unity8/shell/tests/test_notifications.py'
73--- tests/autopilot/unity8/shell/tests/test_notifications.py 2014-04-29 15:21:20 +0000
74+++ tests/autopilot/unity8/shell/tests/test_notifications.py 2014-04-30 08:42:30 +0000
75@@ -211,6 +211,89 @@
76 self.touch.tap_object(notification.select_single(objectName="button4"))
77 self.assert_notification_action_id_was_called("action_decline_4")
78
79+ def test_modal_sd_without_greeter (self):
80+ """A snap-decision on a phone should block input to shell beneath it when there's no greeter."""
81+ unity_proxy = self.launch_unity()
82+ unlock_unity(unity_proxy)
83+
84+ summary = "Incoming file"
85+ body = "Frank would like to send you the file: essay.pdf"
86+ icon_path = "sync-idle"
87+ hints = [
88+ ("x-canonical-snap-decisions", "true"),
89+ ("x-canonical-non-shaped-icon", "true"),
90+ ]
91+
92+ actions = [
93+ ('action_accept', 'Accept'),
94+ ('action_decline_1', 'Decline'),
95+ ]
96+
97+ self._create_interactive_notification(
98+ summary,
99+ body,
100+ icon_path,
101+ "NORMAL",
102+ actions,
103+ hints
104+ )
105+
106+ # verify that we cannot reveal the launcher (no longer interact with the shell)
107+ time.sleep(1)
108+ self.main_window.show_dash_swiping()
109+ launcher = self.main_window.get_launcher()
110+ self.assertThat(launcher.shown, Eventually(Equals(False)))
111+
112+ # verify and interact with the triggered snap-decision notification
113+ notify_list = self._get_notifications_list()
114+ get_notification = lambda: notify_list.wait_select_single(
115+ 'Notification', objectName='notification1')
116+ notification = get_notification()
117+ self._assert_notification(notification, summary, body, True, False, 1.0)
118+ self.touch.tap_object(notification.select_single(objectName="button0"))
119+ self.assert_notification_action_id_was_called("action_accept")
120+
121+ def test_modal_sd_with_greeter (self):
122+ """A snap-decision on a phone should not block input to the greeter beneath it."""
123+ unity_proxy = self.launch_unity()
124+
125+ summary = "Incoming file"
126+ body = "Frank would like to send you the file: essay.pdf"
127+ icon_path = "sync-idle"
128+ hints = [
129+ ("x-canonical-snap-decisions", "true"),
130+ ("x-canonical-non-shaped-icon", "true"),
131+ ]
132+
133+ actions = [
134+ ('action_accept', 'Accept'),
135+ ('action_decline_1', 'Decline'),
136+ ]
137+
138+ self._create_interactive_notification(
139+ summary,
140+ body,
141+ icon_path,
142+ "NORMAL",
143+ actions,
144+ hints
145+ )
146+
147+ # verify that we can swipe away the greeter (interact with the "shell")
148+ time.sleep(1)
149+ self.main_window.show_dash_swiping()
150+ greeter = self.main_window.get_greeter()
151+ self.assertThat(greeter.shown, Eventually(Equals(False)))
152+
153+ # verify and interact with the triggered snap-decision notification
154+ notify_list = self._get_notifications_list()
155+ get_notification = lambda: notify_list.wait_select_single(
156+ 'Notification', objectName='notification1')
157+ notification = get_notification()
158+ self._assert_notification(notification, summary, body, True, False, 1.0)
159+ self.touch.tap_object(notification.select_single(objectName="button0"))
160+ self.assert_notification_action_id_was_called("action_accept")
161+
162 def _create_interactive_notification(
163 self,
164 summary="",

Subscribers

People subscribed via source and target branches