Merge lp://qastaging/~nick-dedekind/unity/lp857422.dash-mouse-steal into lp://qastaging/unity
Proposed by
Nick Dedekind
Status: | Merged |
---|---|
Approved by: | Brandon Schaefer |
Approved revision: | no longer in the source branch. |
Merged at revision: | 2715 |
Proposed branch: | lp://qastaging/~nick-dedekind/unity/lp857422.dash-mouse-steal |
Merge into: | lp://qastaging/unity |
Diff against target: |
948 lines (+329/-111) 17 files modified
dash/DashController.cpp (+30/-13) dash/DashController.h (+4/-5) dash/DashView.cpp (+5/-0) dash/DashView.h (+2/-0) hud/HudAbstractView.h (+3/-1) hud/HudController.cpp (+42/-11) hud/HudController.h (+7/-3) hud/HudView.cpp (+60/-65) hud/HudView.h (+4/-5) hud/StandaloneHud.cpp (+1/-4) plugins/unityshell/src/unityshell.cpp (+45/-3) plugins/unityshell/src/unityshell.h (+2/-0) tests/autopilot/unity/emulators/dash.py (+4/-0) tests/autopilot/unity/tests/test_dash.py (+33/-0) tests/autopilot/unity/tests/test_hud.py (+32/-0) tests/test_hud_controller.cpp (+2/-1) unity-shared/ResizingBaseWindow.h (+53/-0) |
To merge this branch: | bzr merge lp://qastaging/~nick-dedekind/unity/lp857422.dash-mouse-steal |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Brandon Schaefer (community) | Approve | ||
Review via email:
|
Commit message
Dash/Hud no longer steal mouse events outside their content area. Better draw handling of hud animation.
Description of the change
Resize input window relative to the size of the dash/hud. Now only encompasses the required content area.
Added some draw performance fixes for the hud. (only redraw when needed)
To post a comment you must log in.
This is a bit of a cheeky fix.
The problem causing the events to be stolen is that the base window of the dash/hud takes the monitor geometry as it's own. The XInputWindow which is responsible for receiving the XEvents has the same geometry.
This branch side-steps this issue by resizing the XInputWindow to match the actual size of the dash/hud, so if a user clicks outside the dash, it doesnt receive the click.