Merge lp:~vanvugt/compiz/fix-974242-976032 into lp:compiz/0.9.8

Proposed by Daniel van Vugt
Status: Merged
Approved by: Daniel van Vugt
Approved revision: 3295
Merged at revision: 3324
Proposed branch: lp:~vanvugt/compiz/fix-974242-976032
Merge into: lp:compiz/0.9.8
Diff against target: 25 lines (+9/-6)
1 file modified
plugins/place/src/place.cpp (+9/-6)
To merge this branch: bzr merge lp:~vanvugt/compiz/fix-974242-976032
Reviewer Review Type Date Requested Status
Daniel van Vugt Approve
Francis Ginther Abstain
Sam Spilsbury Needs Fixing
Review via email: mp+116995@code.launchpad.net

Commit message

Fix multiple window placement bugs (LP: #974242) (LP: #976032)
By: Rock <email address hidden>

Description of the change

Fix multiple window placement bugs (LP: #974242) (LP: #976032)
By: Rock <email address hidden>

Note: I have not tested this myself yet. But it seems a few people have given the patch the thumbs up. -Daniel

To post a comment you must log in.
Revision history for this message
Sam Spilsbury (smspillaz) :
review: Approve
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I'd like to test this myself before we approve it fully.

Revision history for this message
Sam Spilsbury (smspillaz) wrote :

Oh actually, no:

14 + if (!mStrutWindows.empty ())
15 + {
...
19 + if (mStrutWindows.empty ())
20 + doHandleScreenSizeChange (screen->width (),
21 + screen->height ()); /* 2nd pass */
22 + }

dohandleScreenSizeChange will never be called. This needs a better solution.

review: Needs Fixing
Revision history for this message
Francis Ginther (fginther) wrote :

Review was claimed by accident, please ignore.

review: Abstain
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I made the same mistake in reading as Sam did above. But it's just a mistake it seems. The empty checks are correct because of the
  mStrutWindows.remove (w);

So looks good.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'plugins/place/src/place.cpp'
2--- plugins/place/src/place.cpp 2012-06-24 09:00:27 +0000
3+++ plugins/place/src/place.cpp 2012-07-27 02:51:20 +0000
4@@ -228,12 +228,15 @@
5 w = screen->findWindow (event->xproperty.window);
6 if (w)
7 {
8- mStrutWindows.remove (w);
9- /* Only do when handling screen size change.
10- ps->strutWindowCount is 0 at any other time */
11- if (mStrutWindows.empty ())
12- doHandleScreenSizeChange (screen->width (),
13- screen->height ()); /* 2nd pass */
14+ if (!mStrutWindows.empty ())
15+ {
16+ mStrutWindows.remove (w);
17+ /* Only do when handling screen size change.
18+ ps->strutWindowCount is 0 at any other time */
19+ if (mStrutWindows.empty ())
20+ doHandleScreenSizeChange (screen->width (),
21+ screen->height ()); /* 2nd pass */
22+ }
23 }
24 }
25 }

Subscribers

People subscribed via source and target branches