Merge lp:~townsend/compiz/fix-lp1333277 into lp:compiz/0.9.12

Proposed by Christopher Townsend
Status: Merged
Approved by: Marco Trevisan (Treviño)
Approved revision: 3876
Merged at revision: 3876
Proposed branch: lp:~townsend/compiz/fix-lp1333277
Merge into: lp:compiz/0.9.12
Diff against target: 47 lines (+3/-10)
1 file modified
plugins/expo/src/expo.cpp (+3/-10)
To merge this branch: bzr merge lp:~townsend/compiz/fix-lp1333277
Reviewer Review Type Date Requested Status
Marco Trevisan (Treviño) Approve
Review via email: mp+224163@code.launchpad.net

Commit message

Remove the need to check the viewport we are painting the maximized window in while in Expo mode and only scale maximized windows that are not being dragged. Fixes a regression caused in r3868.

Description of the change

Remove the need to check the viewport we are painting the maximized window in while in Expo mode and only scale maximized windows that aren't being dragged. This is done because it is too tricky to paint the scaled window and get the Expo wall borders correctly.

Fixes a regression caused in r3868.

To test:
1. Open a maximized window.
2. Invoke Expo.
3. Move maximized window to another workspace while in Expo.

Note that the maximized window will go back to it's original size while being dragged. I think this OK because this is not causing a regression since this is what it looked like previously.

To post a comment you must log in.
Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote :

This looks fine to me, but I'm not getting the maximized window to be restored while dragged here... mhmh

Revision history for this message
Marco Trevisan (Treviño) (3v1n0) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'plugins/expo/src/expo.cpp'
2--- plugins/expo/src/expo.cpp 2014-06-05 13:17:05 +0000
3+++ plugins/expo/src/expo.cpp 2014-06-24 18:41:45 +0000
4@@ -1462,7 +1462,6 @@
5 unsigned int mask)
6 {
7 GLMatrix wTransform (transform);
8- GLWindowPaintAttrib wAttrib (attrib);
9
10 if (eScreen->expoActive)
11 {
12@@ -1474,8 +1473,6 @@
13 ExpoScreen::ExpoAnimationZoom;
14 bool hide = eScreen->optionGetHideDocks () &&
15 (window->wmType () & CompWindowTypeDockMask);
16- CompPoint vp;
17- screen->viewportForGeometry (window->geometry (), vp);
18
19 if (!zoomAnim)
20 opacity = attrib.opacity * eScreen->expoCam;
21@@ -1494,7 +1491,8 @@
22
23 /* Stretch maximized windows a little so that you don't
24 * have an awkward gap */
25- if ((window->state () & MAXIMIZE_STATE) == MAXIMIZE_STATE)
26+ if (((window->state () & MAXIMIZE_STATE) == MAXIMIZE_STATE) &&
27+ (eScreen->dndWindow != window))
28 {
29 CompOutput *o = &screen->outputDevs ()[screen->outputDeviceForGeometry(window->geometry())];
30 float yS = 1.0 + ((o->height () / (float) window->height ()) - 1.0f) * sigmoidProgress (eScreen->expoCam);
31@@ -1506,15 +1504,10 @@
32 wTransform.translate (-(window->x () + window->width ()),
33 -(window->y () + window->height ()),
34 0.0f);
35-
36- if (eScreen->paintingVp != vp)
37- mask |= PAINT_WINDOW_NO_CORE_INSTANCE_MASK;
38-
39- mask |= PAINT_WINDOW_TRANSFORMED_MASK;
40 }
41 }
42
43- return gWindow->glPaint (wAttrib, wTransform, region, mask);
44+ return gWindow->glPaint (attrib, wTransform, region, mask);
45 }
46
47 bool

Subscribers

People subscribed via source and target branches