lp://qastaging/~compiz-team/compiz/compiz.fix_1188900.1
- Get this branch:
- bzr branch lp://qastaging/~compiz-team/compiz/compiz.fix_1188900.1
Branch merges
- PS Jenkins bot (community): Approve (continuous-integration)
- Andrea Azzarone: Approve
-
Diff: 1383 lines (+808/-157)5 files modifiedplugins/decor/tests/acceptance/xorg-gtest/CMakeLists.txt (+2/-0)
plugins/decor/tests/acceptance/xorg-gtest/compiz_decor_acceptance_tests.cpp (+777/-132)
tests/system/xorg-gtest/tests/compiz_xorg_gtest_configure_window.cpp (+6/-25)
tests/xorg-gtest/include/compiz-xorg-gtest.h (+3/-0)
tests/xorg-gtest/src/compiz-xorg-gtest.cpp (+20/-0)
Related bugs
Bug #1165343: Windows are placed with titlebar obscured by Unity menubar. | High | Fix Released |
|
Bug #1188900: Provide acceptance tests for the decor and place plugins | Medium | Fix Released |
|
Related blueprints
Branch information
Recent revisions
- 3749. By Sam Spilsbury
-
Fix failing tests and run all the tests by default.
1. Completely remove decorOffsetMove and other related code from
decor.cpp. Put the logic to handle the window->input () - window->border ()
placement offset inside of setWindowFrameExtents instead. Now the window
will always be offset from its original non-decorated position to the new
decorated position, rather than having to guess between decoration sizes.
2. Make saveGeometry and restoreGeometry work relative to window->border ()
as opposed to including it in the saved geometry. It is possible that the
border size might change during maximization, as such, we don't want to
save the position with the border before maximizing. Instead save the position
as if it were never decorated so that when the window is restored it can be
restored to its original position and then adjusted for its new border size.
3. Fix a few typoes in the tests.
4. Moved some commonly used matchers into compiz::testing
5. Make COMPIZ_PLUGIN_DIR accept multiple directories and look in each one
of them for the plugin
6. Set COMPIZ_PLUGIN_DIR appropriately for each plugin that we wish to load
on startup so that we load locally built plugins as opposed to installed
ones.
7. Uncomment compiz_discover_ tests for the acceptance tests. Now they are
run by default. - 3746. By MC Return
-
Compiz, redundant and outdated files cleanup:
Removed outdated NEWS files.
Removed outdated AUTHORS and ChangeLog files.
Removed plugins/freewins/ COPYING - we do not need another copy of the GPL v2 here.
Removed another copy of the GPL v2 from plugins/workarounds. This will reduce package sizes, download time and bring some order to chaos.
Approved by Didier Roche, PS Jenkins bot, Sam Spilsbury.
- 3745. By Iven Hsu
-
KWD: Fix compile errors with KDE 4.11.
The KWin developers made kdecorationbridge.h private.
See: http://
lists.freedeskt op.org/ archives/ compiz/ 2013-March/ 003479. html (LP: #1193792). Fixes: https:/
/bugs.launchpad .net/bugs/ 1193792. Approved by PS Jenkins bot, Sam Spilsbury, MC Return.
- 3744. By Sam Spilsbury
-
Add more acceptance tests for the decor plugin.
PixmapDecorated
WindowAcceptanc e.
UndecoratedWindowExpandToOri gSize Test that upon undecoration, the window has exactly the same geometry
as it did before decoration.DISABLED_
UndecorateStati cGravityWindow Tests that for windows with a static gravity, the window has exactly
the same geometry as it did before decoration.Disabled, as core is currently not moving the window with the static
gravity back to where it started.AdjustmentExten
ts/PixmapDecora tionAdjustment.
AdjustRestoredWindowBorderMo vesClient/ P Test that changing the border extents causes the client window's
absolute geometry to change.DISABLED_
AdjustRestoredW indowBorderShri nkClient/ P Tests that changing the border extents causes the client window's
absolute geometry to shrink by the amount of border.Disabled, as the current behavior is to expand the frame window
as opposed to shrinking the client (but this will be changed).DISABLED_
ClientExpandsAs BorderShrinks/ P Tests that as the border shrinks away, the client expands back to
its original size.Disabled, as the current behavior is to expand the frame window
as opposed to shrinking the client (but this will be changed).DISABLED_
ClientExpandsAs BorderShrinksWh ilstMaximized/ P Tests that even if the client is maximized, if the restored border
shrinks away it demaximizes back to the same position while also
accounting for any change in the restored window border size.Disabled, as the current behavior is to expand the frame window
as opposed to shrinking the client (but this will be changed).DISABLED_
ClientExpandsAs BorderShrinksWh ilstUndecorated /P Tests that even when the client is not permitted to be decorated
because the decoration hint was removed, when it is redecorated
it will be moved to the correct position taking into account any
changes in its border size.Disabled, as the current behavior is to expand the frame window
as opposed to shrinking the client (but this will be changed).DISABLED_
AdjustRestoredW indowInputNoMov eClient/ P Tests that adjusting the input extents (as independent from the
border extents) of the client does not cause the client to move.Disabled, as this behavior appears to be broken in core.
Move the "GetImmediatePa
rent" function into the compiz::testing namespace
so that it can be used by other tests. Fixes: https://bugs.launchpad .net/bugs/ 1188900. Approved by PS Jenkins bot, Andrea Azzarone.
- 3743. By Sam Spilsbury
-
Only mark for no further instantiations once we've finished destructing
the plugin(LP: #1193596). Fixes: https:/
/bugs.launchpad .net/bugs/ 1193596. Approved by PS Jenkins bot, Sami Jaktholm, MC Return.
- 3742. By Sam Spilsbury
-
Provide a basic decor plugin acceptance test suite.
This change provides a simple acceptance test suite for the decor plugin. It
creates a fake window decorator (cdt::FakeDecorator) and allows users to
create fake decorations (eg cdt::FakePixmapDecoration) which can be serialized
as decoration properties and set on windows under xorg-gtest. It also launches
compiz with the opengl, composite and decor plugins loaded and runs some
basic tests. Among them:BaseDecorAccept
ance.
Startup:Basic canary "can we start compiz with these plugins" test
FakeDecorator
SessionOwnerNam eSetOnSelection Owner: Create a fake decorator, ensure that libdecoration sets our
session name "fake" on the selection ownerFakeDecorator
ReceiveClientMe ssage: Create fake decorator, ensure that libdecoration posts a client
message to the root window announcing that the new decorator exists.DecorationSup
portsWindowType : Create a fake decorator, announce support for the WINDOW type decorations
and ensure that the correct atom is set on the session owner window.DecorationSup
portsPixmapType : Create a fake decorator, announce support for the PIXMAP type decorations
and ensure that the correct atom is set on the session owner window.DecorFakeDecora
torAcceptance.
WindowDefaultFallbackNoExten ts: By default, newly created windows should recieve a fallback decoration
but they should not have any frame extents.DecorWithPixmap
DefaultsAccepta nce. These tests create a default pixmap decoration to use in the hypothetical
situation that the window decorator hasn't yet generated a decoration
for this window.FallbackRecie
veInputFrameNot ify: Verify that we get a _COMPIZ_
WINDOW_ DECOR_INPUT_ FRAME property set on
the client when it is created and mapped (eg, an input frame window
was annonuced to be created)FallbackHasIn
putFrameInParen t: Verify that a second window exists in the frame window after this
message was recieved.FallbackNorma
lWindowExtentOn Decoration: Verify that _NET_FRAME_EXTENTS is set to the default window extents
for the default decoration when the window was mapped.FallbackNorma
lWindowInputOnF rame: Verify that the input window matches the extents set.
PixmapDecorated
WindowAcceptanc e. These tests create a new window and an associated unique decoration for
that window.MaximizeBorde
rExtentsOnMaxim ize: Maximize the window and ensure that the correct border extents are used.
MaximizeBorde
rExtentsOnVertM aximize: Vertically maximize the window and ensure that the correct border extents
are used.MaximizeBorde
rExtentsOnHorzM aximize: Horizontally maximize the window and ensure that the correct border
extents are used.MaximizeFrame
WindowSizeEqOut putSize: Maximie the window and ensure that the frame window exactly equals
the output size.VertMaximizeF
rameWindowSizeE qOutputYHeight: Maximize the window and ensure that the frame window's Y and Height
values are consistent with the output size.HorzMaximizeF
rameWindowSizeE qOutputXWidth: Ditto horizontal maximization.
DISABLED_
VertMaximizeFra meWindowSizeSam eXWidth: Maximize the window vertically and ensure that the frame window's
border-relative X position and width does not change.This test is disabled, as the behavior in compiz is currently broken,
(but it means that we can fix it later and enable the test).DISABLED_
HorzMaximizeFra meWindowSizeSam eYHeight Maximize the window horizontally and ensure that the frame window's
border-relative Y position and height does not change.This test is disabled, as the behavior in compiz is currently broken,
(but it means that we can fix it later and enable the test).(LP: #1188900). Fixes: https:/
/bugs.launchpad .net/bugs/ 1188900. Approved by PS Jenkins bot, Andrea Azzarone, MC Return.
- 3741. By Andrea Azzarone
-
Disable grid/put_
maximize_ key on ubuntu. Approved by PS Jenkins bot, MC Return, Sam Spilsbury.
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)
- Stacked on:
- lp://qastaging/compiz/0.9.10