lp://staging/~compiz-team/compiz/compiz.ccs_test_990690
- Get this branch:
- bzr branch lp://staging/~compiz-team/compiz/compiz.ccs_test_990690
Branch merges
- Sam Spilsbury: Needs Fixing
- Daniel van Vugt: Approve
-
Diff: 8584 lines (+4686/-1148)25 files modifiedcompizconfig/cmake/exec_setup_py_with_destdir.cmake (+0/-2)
compizconfig/compizconfig-python/src/compizconfig.pyx (+123/-103)
compizconfig/gconf/src/gconf.c (+27/-27)
compizconfig/gsettings/src/gconf-integration.c (+9/-9)
compizconfig/gsettings/src/gsettings.c (+29/-27)
compizconfig/libcompizconfig/CMakeLists.txt (+1/-0)
compizconfig/libcompizconfig/backend/src/ini.c (+31/-31)
compizconfig/libcompizconfig/include/ccs.h (+466/-141)
compizconfig/libcompizconfig/src/CMakeLists.txt (+3/-0)
compizconfig/libcompizconfig/src/ccs-private.h (+68/-3)
compizconfig/libcompizconfig/src/compiz.cpp (+241/-164)
compizconfig/libcompizconfig/src/ini.c (+1/-1)
compizconfig/libcompizconfig/src/main.c (+1869/-614)
compizconfig/libcompizconfig/tests/CMakeLists.txt (+100/-0)
compizconfig/libcompizconfig/tests/context-mock.cpp (+76/-0)
compizconfig/libcompizconfig/tests/mock-context.h (+338/-0)
compizconfig/libcompizconfig/tests/mock-plugin.h (+166/-0)
compizconfig/libcompizconfig/tests/mock-setting.h (+353/-0)
compizconfig/libcompizconfig/tests/plugin-mock.cpp (+61/-0)
compizconfig/libcompizconfig/tests/setting-mock.cpp (+82/-0)
compizconfig/libcompizconfig/tests/test-ccs-object.cpp (+356/-0)
compizconfig/libcompizconfig/tests/test-context.cpp (+94/-0)
compizconfig/libcompizconfig/tests/test-plugin.cpp (+60/-0)
compizconfig/libcompizconfig/tests/test-setting.cpp (+109/-0)
plugins/ccp/src/ccp.cpp (+23/-26)
Branch information
Recent revisions
- 3262. By Sam Spilsbury
-
Do the initial work to get libcompizconfig under test. (LP: #990690)
libcompizconfig underwent some fairly large refactorings so that we could
get it under test. This includes moving all of the public data in the public
API structs into private structs and creating accessor functions for all of
that data. The accessor functions are wrappers around interface structures which
can be replaced at runtime for testing purposes.A C based object system was added to make this possible:
This branch introduces some preliminary work in a series of branches to get libcompizconfig under test. In order to test the objects properly, we need to abstract away their interfaces$
This would be awkward to do correctly if we didn't have a suitable object system to handle interface implementation, referencing, private storage etc.
As such, a new struct CCSObject is introduced. It is similar in design to GObject, but with a much smaller feature set centered mostly around the handling of interfaces and composition$
Tests are included.
Basic mock classes for all of the public API were added for testing.
The gconf backend and compizconfig-python were adapted as necessary.
Merge in the following branches manually:
lp:~smspillaz/compiz-compizconfig-python/compiz-compizconfig-python.context-api ⇒ lp:compiz-compizconfig-python
lp:~smspillaz/compiz-compizconfig-python/compiz-compizconfig-python.plugin-api ⇒ lp:compiz-compizconfig-python
lp:~smspillaz/compiz-compizconfig-python/compiz-compizconfig-python.setting-api ⇒ lp:compiz-compizconfig-python
lp:~smspillaz/compiz-compizconfig-gconf/compiz-compizconfig-gconf.adapt-to-new-interfaces ⇒ lp:compiz-compizconfig-gconf
lp:~smspillaz/compiz-libcompizconfig/refactor-setting ⇒ lp:compiz-libcompizconfig
lp:~smspillaz/compiz-libcompizconfig/setting-funcs-behind-interface ⇒ lp:compiz-libcompizconfig
lp:~smspillaz/compiz-libcompizconfig/context-mock ⇒ lp:compiz-libcompizconfig
lp:~smspillaz/compiz-libcompizconfig/plugin-mock ⇒ lp:compiz-libcompizconfig
lp:~smspillaz/compiz-libcompizconfig/setting-mock ⇒ lp:compiz-libcompizconfig
lp:~smspillaz/compiz-libcompizconfig/refactor-context ⇒ lp:compiz-libcompizconfig
lp:~smspillaz/compiz-libcompizconfig/ccs-object ⇒ lp:compiz-libcompizconfig
lp:~smspillaz/compiz-libcompizconfig/refactor-plugin ⇒ lp:compiz-libcompizconfig
lp:~smspillaz/compiz-libcompizconfig/context-funcs-behind-interface ⇒ lp:compiz-libcompizconfig
lp:~smspillaz/compiz-libcompizconfig/plugin-funcs-behind-interface ⇒ lp:compiz-libcompizconfig - 3261. By Sam Spilsbury
-
Don't set decoration contexts on undecorated windows, since that might be
read later and code will assume the window is decorated when it isn't.
(LP: #1015593) - 3260. By Alan Bell
-
makes compiz enhanced zoom and show mouse plugins considerably smoother to use
(LP: #930783) - 3259. By Sam Spilsbury
-
Don't insert the window into the server list above the window it was
created above.The server list might have been modified by the time that we process the
create event, and as such there is a case where a window can be inserted
into the server list above another window and not at the top (the default
for where windows are created) if that window is pending a restack.When updateAttributes is called later, putting it above the correct window
will silently fail, because it is already there in the server list, even
though a restack was never issued to put it there. - 3258. By Sam Spilsbury
-
Check if the window would actually paint before painting the shadow, since
it is possible that another plugin could be inhibiting paint of the dock
window. (LP: #1012956) - 3257. By Daniel van Vugt
-
Add reliable detection of the compiz bin directory, which works even if
compiz is started without an explicit path (LP: #1015898) - 3256. By Daniel van Vugt
-
Don't waste memory leaving /bin/sh running for the lifetime of the decorator.
(LP: #1015422) - 3255. By Sam Spilsbury
-
Fixed: Crash in compiz:
:wall:: movementWindowO nScreen (
const CompRect &serverBorderRect, const CompRegion &screenRegion) because we
were iterating a temporary CompRect::vector which went out of scope within
the for statement. (LP: #1015151)
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)
- Stacked on:
- lp://staging/compiz/0.9.8