Merge lp:~aacid/unity8/alt_tab_close_top_menu into lp:unity8
- alt_tab_close_top_menu
- Merge into trunk
Status: | Rejected | ||||
---|---|---|---|---|---|
Rejected by: | Albert Astals Cid | ||||
Proposed branch: | lp:~aacid/unity8/alt_tab_close_top_menu | ||||
Merge into: | lp:unity8 | ||||
Prerequisite: | lp:~lukas-kde/unity8/fix-window-title-vs-menu | ||||
Diff against target: |
74 lines (+53/-0) 2 files modified
qml/Shell.qml (+1/-0) tests/qmltests/tst_Shell.qml (+52/-0) |
||||
To merge this branch: | bzr merge lp:~aacid/unity8/alt_tab_close_top_menu | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Unity8 CI Bot | continuous-integration | Approve | |
Daniel d'Andrada (community) | Approve | ||
Review via email: mp+321699@code.launchpad.net |
This proposal supersedes a proposal from 2017-03-14.
Commit message
Fix focus on alt+tab if menubar was open
Includes test that checks the menubar is also closed on alt+tab (and checks focus doesn't get lost in the middle of nowhere later)
Description of the change
* Are there any related MPs required for this MP to build/function as expected?
No
* 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?
N/A
* If you changed the UI, has there been a design review?
N/A
Unity8 CI Bot (unity8-ci-bot) wrote : Posted in a previous version of this proposal | # |
Daniel d'Andrada (dandrader) wrote : Posted in a previous version of this proposal | # |
"""
mouseClick(
"""
Just mouseClick(
Daniel d'Andrada (dandrader) wrote : Posted in a previous version of this proposal | # |
Still about the test:
- Can you click to show the menu instead of doing it programmatically?
- Shouldn't you check that the menu is no longer around while Alt is still pressed (and so the spread is still being shown)?
Daniel d'Andrada (dandrader) : Posted in a previous version of this proposal | # |
Albert Astals Cid (aacid) wrote : Posted in a previous version of this proposal | # |
> Still about the test:
> - Can you click to show the menu instead of doing it programmatically?
Yep, done
> - Shouldn't you check that the menu is no longer around while Alt is still
> pressed (and so the spread is still being shown)?
Makes sense, done.
Unity8 CI Bot (unity8-ci-bot) wrote : Posted in a previous version of this proposal | # |
FAILED: Continuous integration, rev:2870
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
UNSTABLE: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Unity8 CI Bot (unity8-ci-bot) wrote : Posted in a previous version of this proposal | # |
PASSED: Continuous integration, rev:2870
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Unity8 CI Bot (unity8-ci-bot) wrote : Posted in a previous version of this proposal | # |
PASSED: Continuous integration, rev:2871
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Daniel d'Andrada (dandrader) wrote : Posted in a previous version of this proposal | # |
Thanks
* 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.
Yes
Unity8 CI Bot (unity8-ci-bot) wrote : Posted in a previous version of this proposal | # |
FAILED: Continuous integration, rev:2873
https:/
Executed test runs:
SUCCESS: https:/
UNSTABLE: https:/
UNSTABLE: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Unity8 CI Bot (unity8-ci-bot) wrote : Posted in a previous version of this proposal | # |
FAILED: Continuous integration, rev:2876
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Unity8 CI Bot (unity8-ci-bot) wrote : Posted in a previous version of this proposal | # |
FAILED: Continuous integration, rev:2876
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Unity8 CI Bot (unity8-ci-bot) wrote : Posted in a previous version of this proposal | # |
PASSED: Continuous integration, rev:2876
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Daniel d'Andrada (dandrader) wrote : | # |
reapproving
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:2878
https:/
Executed test runs:
SUCCESS: https:/
UNSTABLE: https:/
UNSTABLE: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
- 2879. By Albert Astals Cid
-
mrege again
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:2879
https:/
Executed test runs:
SUCCESS: https:/
UNSTABLE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:2879
https:/
Executed test runs:
SUCCESS: https:/
UNSTABLE: https:/
UNSTABLE: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Unity8 CI Bot (unity8-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:2879
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Albert Astals Cid (aacid) wrote : | # |
we will be taking https:/
Unmerged revisions
- 2879. By Albert Astals Cid
-
mrege again
- 2878. By Albert Astals Cid
-
Adapt to code changes, now it's mostly a test
- 2877. By Albert Astals Cid
- 2876. By Albert Astals Cid
-
try to find a non conflicting place ^_^
- 2875. By Albert Astals Cid
-
Merge
- 2874. By Albert Astals Cid
-
Need to wait a bit
- 2873. By Albert Astals Cid
-
whitespace
- 2872. By Albert Astals Cid
-
Merge
- 2871. By Albert Astals Cid
-
Move the check for no popup to before releasing alt
- 2870. By Albert Astals Cid
-
Use the mouse to show the menu
Preview Diff
1 | === modified file 'qml/Shell.qml' | |||
2 | --- qml/Shell.qml 2017-03-24 14:04:50 +0000 | |||
3 | +++ qml/Shell.qml 2017-04-03 15:12:58 +0000 | |||
4 | @@ -328,6 +328,7 @@ | |||
5 | 328 | panel.indicators.hide(); | 328 | panel.indicators.hide(); |
6 | 329 | panel.applicationMenus.hide(); | 329 | panel.applicationMenus.hide(); |
7 | 330 | } | 330 | } |
8 | 331 | onAltTabPressedChanged: if (altTabPressed) focus = true; | ||
9 | 331 | } | 332 | } |
10 | 332 | 333 | ||
11 | 333 | TouchGestureArea { | 334 | TouchGestureArea { |
12 | 334 | 335 | ||
13 | === modified file 'tests/qmltests/tst_Shell.qml' | |||
14 | --- tests/qmltests/tst_Shell.qml 2017-03-24 11:08:11 +0000 | |||
15 | +++ tests/qmltests/tst_Shell.qml 2017-04-03 15:12:58 +0000 | |||
16 | @@ -3057,6 +3057,58 @@ | |||
17 | 3057 | tryCompare(topLevelSurfaceList.applicationAt(0), "appId", "dialer-app"); | 3057 | tryCompare(topLevelSurfaceList.applicationAt(0), "appId", "dialer-app"); |
18 | 3058 | } | 3058 | } |
19 | 3059 | 3059 | ||
20 | 3060 | function test_maximizedWindowMenuThenAltTab_data() { | ||
21 | 3061 | return [ | ||
22 | 3062 | { tag: "show spread", showSpread: true }, | ||
23 | 3063 | { tag: "do not show spread", showSpread: false }, | ||
24 | 3064 | ]; | ||
25 | 3065 | } | ||
26 | 3066 | |||
27 | 3067 | function test_maximizedWindowMenuThenAltTab(data) { | ||
28 | 3068 | loadShell("desktop"); | ||
29 | 3069 | shell.usageScenario = "desktop"; | ||
30 | 3070 | waitForRendering(shell); | ||
31 | 3071 | swipeAwayGreeter(); | ||
32 | 3072 | |||
33 | 3073 | var appDelegate = startApplication("gmail-webapp"); | ||
34 | 3074 | var appDelegate2 = startApplication("dialer-app"); | ||
35 | 3075 | |||
36 | 3076 | var maximizeButton = findChild(appDelegate2, "maximizeWindowButton"); | ||
37 | 3077 | mouseClick(maximizeButton); | ||
38 | 3078 | tryCompare(appDelegate2, "state", "maximized"); | ||
39 | 3079 | |||
40 | 3080 | var panel = findChild(shell, "panel"); | ||
41 | 3081 | var panelMouse = findChild(panel, "windowControlArea"); | ||
42 | 3082 | mouseMove(panelMouse); | ||
43 | 3083 | var panelMenu = findChild(panel, "menuBar"); | ||
44 | 3084 | var menuBarLoader = findChild(panel, "menuBarLoader"); | ||
45 | 3085 | mouseMove(panelMenu); | ||
46 | 3086 | var panelMenuItem = findChild(panelMenu, "menuBar-item0"); | ||
47 | 3087 | tryCompare(panelMenuItem, "visible", true); | ||
48 | 3088 | Util.waitForBehaviors(shell); | ||
49 | 3089 | mouseClick(panelMenuItem); | ||
50 | 3090 | var panelMenuItemItem = findChild(panelMenu, "menuBar-item0-menu-item0-actionItem"); | ||
51 | 3091 | mouseMove(panelMenuItemItem, panelMenuItemItem.width/2, panelMenuItemItem.height/2); | ||
52 | 3092 | verify(panelMenuItemItem.activeFocus); | ||
53 | 3093 | verify(panelMenuItem.__popup); | ||
54 | 3094 | |||
55 | 3095 | keyPress(Qt.Key_Alt); | ||
56 | 3096 | keyClick(Qt.Key_Tab); | ||
57 | 3097 | if (data.showSpread) { | ||
58 | 3098 | tryCompare(stage, "spreadShown", true); | ||
59 | 3099 | } | ||
60 | 3100 | tryCompareFunction(function() { return menuBarLoader.active === false; }, true); | ||
61 | 3101 | keyRelease(Qt.Key_Alt) | ||
62 | 3102 | |||
63 | 3103 | tryCompare(appDelegate.surface, "activeFocus", true); | ||
64 | 3104 | |||
65 | 3105 | keyPress(Qt.Key_Alt); | ||
66 | 3106 | keyClick(Qt.Key_Tab); | ||
67 | 3107 | keyRelease(Qt.Key_Alt) | ||
68 | 3108 | |||
69 | 3109 | tryCompare(appDelegate2.surface, "activeFocus", true); | ||
70 | 3110 | } | ||
71 | 3111 | |||
72 | 3060 | function test_touchMenuPosition_data() { | 3112 | function test_touchMenuPosition_data() { |
73 | 3061 | return [ | 3113 | return [ |
74 | 3062 | { tag: "launcher locked", lockLauncher: true }, | 3114 | { tag: "launcher locked", lockLauncher: true }, |
PASSED: Continuous integration, rev:2869 /unity8- jenkins. ubuntu. com/job/ lp-unity8- ci/3371/ /unity8- jenkins. ubuntu. com/job/ build/4443 /unity8- jenkins. ubuntu. com/job/ test-0- autopkgtest/ label=amd64, release= xenial+ overlay, testname= qmluitests. sh/2662 /unity8- jenkins. ubuntu. com/job/ test-0- autopkgtest/ label=amd64, release= zesty,testname= qmluitests. sh/2662 /unity8- jenkins. ubuntu. com/job/ build-0- fetch/4471 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= xenial+ overlay/ 4301 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= xenial+ overlay/ 4301/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= zesty/4301 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= zesty/4301/ artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= xenial+ overlay/ 4301 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= xenial+ overlay/ 4301/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= zesty/4301 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= zesty/4301/ artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= xenial+ overlay/ 4301 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= xenial+ overlay/ 4301/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= zesty/4301 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= zesty/4301/ artifact/ output/ *zip*/output. zip
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild: /unity8- jenkins. ubuntu. com/job/ lp-unity8- ci/3371/ rebuild
https:/