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
=== modified file 'debian/control'
--- debian/control 2014-04-29 15:08:05 +0000
+++ debian/control 2014-04-30 08:42:30 +0000
@@ -102,7 +102,7 @@
102 qtdeclarative5-unity-notifications-plugin | unity-notifications-impl,102 qtdeclarative5-unity-notifications-plugin | unity-notifications-impl,
103 ubuntu-thumbnailer-impl-0,103 ubuntu-thumbnailer-impl-0,
104 unity-application-impl-2,104 unity-application-impl-2,
105 unity-notifications-impl-2,105 unity-notifications-impl-3,
106 unity-plugin-scopes | unity-scopes-impl,106 unity-plugin-scopes | unity-scopes-impl,
107 unity-scopes-impl-0,107 unity-scopes-impl-0,
108 unity8-fake-env | unity-application-impl,108 unity8-fake-env | unity-application-impl,
109109
=== modified file 'qml/Notifications/Notifications.qml'
--- qml/Notifications/Notifications.qml 2014-03-17 15:31:06 +0000
+++ qml/Notifications/Notifications.qml 2014-04-30 08:42:30 +0000
@@ -16,6 +16,8 @@
1616
17import QtQuick 2.017import QtQuick 2.0
18import Ubuntu.Components 0.118import Ubuntu.Components 0.1
19import Unity.Notifications 1.0 as UnityNotifications
20import Utils 0.1
19import "../Components"21import "../Components"
2022
21ListView {23ListView {
@@ -25,6 +27,15 @@
25 interactive: false27 interactive: false
2628
27 property real margin29 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 }
28 spacing: delegate.fullscreen ? 0 : units.gu(.5)39 spacing: delegate.fullscreen ? 0 : units.gu(.5)
2940
30 currentIndex: (currentIndex < 1 && count > 1) ? 1 : -141 currentIndex: (currentIndex < 1 && count > 1) ? 1 : -1
3142
=== modified file 'qml/Shell.qml'
--- qml/Shell.qml 2014-04-17 15:43:16 +0000
+++ qml/Shell.qml 2014-04-30 08:42:30 +0000
@@ -582,6 +582,24 @@
582 }582 }
583 }583 }
584584
585 Rectangle {
586 id: modalNotificationBackground
587
588 visible: notifications.useModal && !greeter.shown && (notifications.state == "narrow")
589 color: "#000000"
590 anchors.fill: parent
591 opacity: 0.5
592
593 MouseArea {
594 anchors.fill: parent
595 }
596
597 InputFilterArea {
598 anchors.fill: parent
599 blockInput: modalNotificationBackground.visible
600 }
601 }
602
585 Notifications {603 Notifications {
586 id: notifications604 id: notifications
587605
588606
=== modified file 'tests/autopilot/unity8/shell/tests/test_notifications.py'
--- tests/autopilot/unity8/shell/tests/test_notifications.py 2014-04-29 15:21:20 +0000
+++ tests/autopilot/unity8/shell/tests/test_notifications.py 2014-04-30 08:42:30 +0000
@@ -211,6 +211,89 @@
211 self.touch.tap_object(notification.select_single(objectName="button4"))211 self.touch.tap_object(notification.select_single(objectName="button4"))
212 self.assert_notification_action_id_was_called("action_decline_4")212 self.assert_notification_action_id_was_called("action_decline_4")
213213
214 def test_modal_sd_without_greeter (self):
215 """A snap-decision on a phone should block input to shell beneath it when there's no greeter."""
216 unity_proxy = self.launch_unity()
217 unlock_unity(unity_proxy)
218
219 summary = "Incoming file"
220 body = "Frank would like to send you the file: essay.pdf"
221 icon_path = "sync-idle"
222 hints = [
223 ("x-canonical-snap-decisions", "true"),
224 ("x-canonical-non-shaped-icon", "true"),
225 ]
226
227 actions = [
228 ('action_accept', 'Accept'),
229 ('action_decline_1', 'Decline'),
230 ]
231
232 self._create_interactive_notification(
233 summary,
234 body,
235 icon_path,
236 "NORMAL",
237 actions,
238 hints
239 )
240
241 # verify that we cannot reveal the launcher (no longer interact with the shell)
242 time.sleep(1)
243 self.main_window.show_dash_swiping()
244 launcher = self.main_window.get_launcher()
245 self.assertThat(launcher.shown, Eventually(Equals(False)))
246
247 # verify and interact with the triggered snap-decision notification
248 notify_list = self._get_notifications_list()
249 get_notification = lambda: notify_list.wait_select_single(
250 'Notification', objectName='notification1')
251 notification = get_notification()
252 self._assert_notification(notification, summary, body, True, False, 1.0)
253 self.touch.tap_object(notification.select_single(objectName="button0"))
254 self.assert_notification_action_id_was_called("action_accept")
255
256 def test_modal_sd_with_greeter (self):
257 """A snap-decision on a phone should not block input to the greeter beneath it."""
258 unity_proxy = self.launch_unity()
259
260 summary = "Incoming file"
261 body = "Frank would like to send you the file: essay.pdf"
262 icon_path = "sync-idle"
263 hints = [
264 ("x-canonical-snap-decisions", "true"),
265 ("x-canonical-non-shaped-icon", "true"),
266 ]
267
268 actions = [
269 ('action_accept', 'Accept'),
270 ('action_decline_1', 'Decline'),
271 ]
272
273 self._create_interactive_notification(
274 summary,
275 body,
276 icon_path,
277 "NORMAL",
278 actions,
279 hints
280 )
281
282 # verify that we can swipe away the greeter (interact with the "shell")
283 time.sleep(1)
284 self.main_window.show_dash_swiping()
285 greeter = self.main_window.get_greeter()
286 self.assertThat(greeter.shown, Eventually(Equals(False)))
287
288 # verify and interact with the triggered snap-decision notification
289 notify_list = self._get_notifications_list()
290 get_notification = lambda: notify_list.wait_select_single(
291 'Notification', objectName='notification1')
292 notification = get_notification()
293 self._assert_notification(notification, summary, body, True, False, 1.0)
294 self.touch.tap_object(notification.select_single(objectName="button0"))
295 self.assert_notification_action_id_was_called("action_accept")
296
214 def _create_interactive_notification(297 def _create_interactive_notification(
215 self,298 self,
216 summary="",299 summary="",

Subscribers

People subscribed via source and target branches