aboutsummaryrefslogtreecommitdiffstats
path: root/matchbox/mb-wm-types.h
AgeCommit message (Collapse)Author
2010-12-09Overhaul our mainloop integrationRobert Bragg
This removes mb-wm-main-context.c since we now just use a glib mainloop context instead. The new mainloop integration API allows matchbox to be fed X events from an external toolkit so core matchbox no longer needs to have any gtk specific event source integration code, since it should be straightforward for a gtk based wm/compositor to decide to take ownership of event fetching and pass those events through to matchbox manually if they want. In the process of removing references to the mb-wm-main-context API it was necessary to refactor how we handle mouse grabs for moving and resizing windows. Previously we would do an X grab and then then immediately enter a tight loop, polling for X mouse events and handling them until something triggers an ungrab and then resume fetching events in the normal way. Now though when we do the mouse grab we just use mb_wm_manager_add_event_handler to register a temporary interest in mouse events and mb_wm_manager_remove_event_handler when the grab is finished. This means we can continue to use the normal event delivery mechanism during a grab and more importantly we don't block the mainloop which would really upset window managers and compositors needing to process other asynchronous events during a grab.
2010-12-09rename mb-window-manager -> mb-wm-managerRobert Bragg
So the naming of MBWindowManager is consistent with other matchbox objects the new name is MBWMManager. The API has also been modified so that method functions aren't simply using the mb_wm_method_name scheme they new use a mb_wm_manager_method_name scheme. Some of the property setters were missing an explicit "set" in the name which has been added, and in anticipation that we will start to replace the use of "client" with "window" some of methods corresponding to windows have been renamed ahead of time.
2010-12-09lists: Completely removes mb_wm_util_listRobert Bragg
This actually replaces all use of the mb_wm_util_list API so all the code now just uses the g_list API directly.
2010-12-09build: Another pass at overhauling the naming schemesRobert Bragg
There currently lots of inconsistent ways we refer to matchbox 2; it can be mbwm2, matchbox-wm-2, matchbox2, matchbox-window-manager-2 and things are also confusing when considering the naming of pkg-config files and for choosing the directory name for installing headers. The approach I'm starting to settle on (this goes back on some of the renaming changes I made recently, so sorry for the churn) is to consider the canonical name of the project just "matchbox" and then we use the package/library versioning to define it as "2.0". Headers now get installed in $prefix/include/matchbox-2.0/matchbox and the top level header has been renamed from mb-wm.h to matchbox.h. The pkg-config file will be installed as matchbox-2.0.pc