Merge lp:~3v1n0/unity/switcher-noinputwin into lp:unity
Status: | Merged |
---|---|
Approved by: | Brandon Schaefer |
Approved revision: | no longer in the source branch. |
Merged at revision: | 3096 |
Proposed branch: | lp:~3v1n0/unity/switcher-noinputwin |
Merge into: | lp:unity |
Diff against target: |
387 lines (+117/-59) 6 files modified
launcher/SwitcherController.cpp (+7/-17) launcher/SwitcherControllerImpl.h (+0/-2) launcher/SwitcherModel.cpp (+13/-20) plugins/unityshell/src/unityshell.cpp (+88/-19) plugins/unityshell/src/unityshell.h (+5/-1) unity-shared/WindowManager.h (+4/-0) |
To merge this branch: | bzr merge lp:~3v1n0/unity/switcher-noinputwin |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Brandon Schaefer (community) | Approve | ||
PS Jenkins bot (community) | continuous-integration | Needs Fixing | |
Review via email:
|
Commit message
SwitcherController: use again the SwitcherView as non-input window
Otherwise it could only lead to focusing troubles.
Added utilities to manage the WindowManager default close-window keybinding and using
it in our views.
Description of the change
SwitcherWindow has been made an input window some time ago to fix bug #926406. Also if that's a good workaround, it is not the best approach because it makes the WindowManager to be distracted by the switcher window as well (that should only be an overlay) moving the focus to it. This also needed a workaround to fix #1071298.
So, I disabled again the input window (we'll still be able to handle mouse events in future if needed, thanks to the grab), and to fix for good the Alt+F4 bug (lp:926406) I added few utility functions that saves into a property in WindowManager the default keybinding that should be used to close a view that now is finally dynamic.
Using it to close the Switcher (instead of the window below) and updated the code for HUD and Dash overlays.
Ap test updated. Other changes are covered by existing tests.
Yay, im happy you fixed this problem I introduced. Everything still work, and code looks good.