Merge lp:~sjakthol/compiz/fix-986051 into lp:compiz/0.9.10
Status: | Merged |
---|---|
Approved by: | Sam Spilsbury |
Approved revision: | 3768 |
Merged at revision: | 3775 |
Proposed branch: | lp:~sjakthol/compiz/fix-986051 |
Merge into: | lp:compiz/0.9.10 |
Diff against target: |
214 lines (+32/-54) 2 files modified
plugins/decor/src/decor.cpp (+3/-3) plugins/decor/tests/acceptance/xorg-gtest/compiz_decor_acceptance_tests.cpp (+29/-51) |
To merge this branch: | bzr merge lp:~sjakthol/compiz/fix-986051 |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
PS Jenkins bot (community) | continuous-integration | Approve | |
Sam Spilsbury | Approve | ||
MC Return | Needs Information | ||
Review via email: mp+175740@code.launchpad.net |
Commit message
Decor: Use maximized border extents only if window is fully maximized.
The decorator draws a normal border around semi-maximized windows. When
maximized border extents were used for semi-maximized windows, compiz didn't
reserve any space for the border in its geometry calculations.
At least following problems are a result of this behavior:
- Semi-maximized windows have 1px borders drawn on adjacent workspaces
(LP: #986051).
- Grid placed window overlaps the adjacent viewport (LP: #898870).
Description of the change
Some observations
- this seems fix the issues with gtk-window-
- haven't been able to test kde-window-
- Emerald seems to still be broken with this but that's because Emerald gives compiz invalid frame extents for restored windows.
Hmm, I though the convention was to use the maximized border extents whenever a window was semi-maximized. I can't remember now what the design was supposed to be though. I think it might have been to use the normal borders.
If that's the case, then you'll need to update the acceptance tests for this. They're found in decor/tests/ acceptance/ xorg-gtest/ compiz_ decor_acceptanc e_tests. There should be a few tests in there that vertically maximize and horizontally maximize windows and expect the window to be placed with respect to its maximized extents. Those expectations need to be replaced with ones that use the normal extents instead.