Merge lp:~azzar1/unity/dash-hud-fullscreen into lp:unity

Proposed by Andrea Azzarone
Status: Merged
Approved by: Marco Trevisan (Treviño)
Approved revision: no longer in the source branch.
Merged at revision: 3905
Proposed branch: lp:~azzar1/unity/dash-hud-fullscreen
Merge into: lp:unity
Diff against target: 41 lines (+6/-10)
1 file modified
plugins/unityshell/src/unityshell.cpp (+6/-10)
To merge this branch: bzr merge lp:~azzar1/unity/dash-hud-fullscreen
Reviewer Review Type Date Requested Status
Marco Trevisan (Treviño) Approve
PS Jenkins bot (community) continuous-integration Needs Fixing
Review via email: mp+245168@code.launchpad.net

Commit message

Enable dash and hud if there is a fullscreen window.

Description of the change

Enable dash/hud if there is a fullscreen window. I don't remember why we disabled it, seems to work fine here.
I did not test it on a multi monitor setup. Would be nice if someone can do that for me.

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
Marco Trevisan (Treviño) (3v1n0) wrote :

Oh, finally... I always wanted to do that.

However, I'm a little concerned about the IsTopWindowFullscreenOnMonitorWithMouse removal, because it might cause a regression for lp:741869.

By the way, this won't affect virtualbox, or vmware because they're using grabs (and part of the fix for the bug above, was considering them), but not fully sure about citrix (it should do the same, though but last version crashes to me).

Also it works perfectly even in multi-monitor, but I've not tested games.

So, I'm going to approve this, but we need to test it further in vivid before backporting to trusty.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'plugins/unityshell/src/unityshell.cpp'
2--- plugins/unityshell/src/unityshell.cpp 2014-11-28 12:55:36 +0000
3+++ plugins/unityshell/src/unityshell.cpp 2014-12-19 02:52:10 +0000
4@@ -961,6 +961,8 @@
5 {
6 return !allowWindowPaint ||
7 lockscreen_controller_->IsLocked() ||
8+ dash_controller_->IsVisible() ||
9+ hud_controller_->IsVisible() ||
10 ((switcher_controller_->Visible() ||
11 WindowManager::Default().IsExpoActive())
12 && !fullscreen_windows_.empty () && (!(screen->grabbed () && !screen->otherGrabExist (NULL))));
13@@ -2119,14 +2121,11 @@
14
15 if (!dash_controller_->IsVisible())
16 {
17- if (!adapter.IsTopWindowFullscreenOnMonitorWithMouse())
18+ if (dash_controller_->ShowDash())
19 {
20- if (dash_controller_->ShowDash())
21- {
22- tap_handled = true;
23- ubus_manager_.SendMessage(UBUS_PLACE_ENTRY_ACTIVATE_REQUEST,
24- g_variant_new("(sus)", "home.scope", dash::GOTO_DASH_URI, ""));
25- }
26+ tap_handled = true;
27+ ubus_manager_.SendMessage(UBUS_PLACE_ENTRY_ACTIVATE_REQUEST,
28+ g_variant_new("(sus)", "home.scope", dash::GOTO_DASH_URI, ""));
29 }
30 }
31 else
32@@ -2537,9 +2536,6 @@
33
34 auto& wm = WindowManager::Default();
35
36- if (wm.IsTopWindowFullscreenOnMonitorWithMouse())
37- return false;
38-
39 if (wm.IsScreenGrabbed())
40 {
41 hud_ungrab_slot_ = wm.screen_ungrabbed.connect([this] { ShowHud(); });