Age | Commit message (Collapse) | Author |
|
Fixes [YOCTO #13319]
Signed-off-by: Mingde (Matthew) Zeng <matthew.zeng@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Added support to handle configure real by drawing only when needed in
comp-manager.
Signed-off-by: Ross Burton <ross.burton@intel.com>
|
|
* configure.ac:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
Use ClutterGLXTexturePixmap when building agains clutter GLX
backend.
|
|
* /matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(tidy_texture_frame_paint):
Updated to match upstream API change.
|
|
* /matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_restack_real):
Do a parent check when restacking to avoid triggering clutter
warning.
(mb_wm_comp_mgr_clutter_add_actor):
Handle clients with desktop unset gracefully.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h:
Added MBWMCompMgrClutter::client_new() virtual to simplify
subclassing.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h:
Added getter for client flags.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h:
Added public API for setting client flags to allow subclasses of
MBWMCompMgrClutter to efficiently implement effects.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_client_destroy):
(mb_wm_comp_mgr_clutter_private_free):
Use clutter_actor_destroy() rather than g_object_unref() to
destroy actors we own.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h:
(mb_wm_comp_mgr_clutter_get_arena):
Added an intermediate ClutterGroup to sit between stage and the CM
actors to provide a greater flexibility for any derived
compositing managers.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/managers/simple/matchbox-window-manager-2-simple.c:
Further changes to sync up with clutter.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c
* matchbox/core/mb-window-manager.c:
Sync up with changes to clutter API.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
Fixed gaussian shadows with TidyTextureFrame.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c
Replace incorrect use of mb_wm_object_ref with
g_object_ref (in mb_wm_comp_mgr_clutter_client_get_actor)
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
Refactored effect creation (allocate effects on demand and destroy
when finished).
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_client_event_real):
Reorganized to avoid leaking the CM client; removed unnecessary
call to clutter_behaviour_get_actors().
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h
Some minor additions to give more control to comp-mgr-clutter
sub-classes. Adds:
- mb_wm_comp_mgr_clutter_client_get_actor
- mb_wm_comp_mgr_clutter_get_desktops and
and exports mb_wm_comp_mgr_clutter_get_nth_desktop
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.h:
* matchbox/core/mb-window-manager.c:
Added old_desktop parameter to MBWMCompMgr::select_desktop() to
simplify implementation of desktop switching effects.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-xrender.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.h:
Added MBWindowManager reference to MBWMCompMgr needed during
MBWMCompMgr destruction; broke reference cycle between
MBWindowManager and MBWMCompMgr client.
* matchbox/core/mb-window-manager.c:
(mb_wm_handle_destroy_notify):
Fixed memory leak.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_client_repair_real):
(mb_wm_comp_mgr_clutter_client_init):
Shrink to 80 columns.
(mb_wm_comp_mgr_clutter_client_event_new):
Test that we have an actor to run an effect on.
(mb_wm_comp_mgr_clutter_client_event_real):
Test we have an effect to start.
(mb_wm_comp_mgr_clutter_restack_real):
Handle multiple desktops correctly.
|
|
* matchbox-window-manager-2/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c
* matchbox-window-manager-2/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h
* matchbox-window-manager-2/matchbox/comp-mgr/mb-wm-comp-mgr.c
* matchbox-window-manager-2/matchbox/comp-mgr/mb-wm-comp-mgr.h
* matchbox-window-manager-2/matchbox/core/mb-wm-client.c
* matchbox-window-manager-2/matchbox/core/mb-wm-types.h
The ->effect and ->transition comp-mgr virtuals have been renamed to
client_event and client_transition. (Other supporting types/functions
have also been renamed in a corresponding way.)
MBWMCompMgrClutterClient gets a ->priv member and is made
sub-classable.
The variable name "cclient" is now used more consistently for
MBWMCompMgrClutterClients.
|
|
* matchbox/core/mb-window-manager.c:
* matchbox/core/mb-window-manager.h:
Initialize XComposite, XDamage and XFixes in the WM init method
when building a compositor (avoids duplication of code in the CMs).
* matchbox/core/mb-wm-main-context.c:
* matchbox/core/mb-wm-main-context.h:
Handle DamageNotify the same way as other standard events to avoid
unnecessary calls to the CM event callbacks.
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.h:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-xrender.c:
Replaced MBWMCompMgr::handle_event with more specific
::handle_damage().
|
|
* configure.ac:
* matchbox/mb-wm-config.h.in:
Added missing MBWM_WANT_DEBUG to mb-wm-config.h.
* matchbox/core/mb-wm.h:
Ensure mb-wm-config.h is included before all other mbwm includes.
* matchbox/client-types/mb-wm-client-app.c:
* matchbox/client-types/mb-wm-client-desktop.c:
* matchbox/client-types/mb-wm-client-dialog.c:
* matchbox/client-types/mb-wm-client-input.c:
* matchbox/client-types/mb-wm-client-menu.c:
* matchbox/client-types/mb-wm-client-note.c:
* matchbox/client-types/mb-wm-client-override.c:
* matchbox/client-types/mb-wm-client-panel.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-xrender.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
* matchbox/core/mb-window-manager.c:
* matchbox/core/mb-wm-client-base.c:
* matchbox/core/mb-wm-debug.c:
* matchbox/core/mb-wm-debug.h:
* matchbox/core/mb-wm-decor.c:
* matchbox/core/mb-wm-layout.c:
* matchbox/core/mb-wm-macros.h:
* matchbox/core/mb-wm-main-context.c:
* matchbox/core/mb-wm-object.c:
* matchbox/core/mb-wm-object.h:
* matchbox/core/mb-wm-root-window.c:
* matchbox/core/xas.c:
* matchbox/managers/maemo/Makefile.am:
* matchbox/managers/maemo/maemo-input.c:
* matchbox/managers/maemo/maemo-window-manager.c:
* matchbox/managers/maemo/maemo-toolbar.c:
* matchbox/managers/maemo/maemo-window-manager.h:
* matchbox/managers/maemo/matchbox-window-manager-2-maemo.c:
* matchbox/managers/simple/matchbox-window-manager-2-simple.c:
* matchbox/theme-engines/mb-wm-theme-png.c:
* matchbox/theme-engines/mb-wm-theme.c:
Replaced #ifdef MBWM_WANT_DEBUG with #if MBWM_WANT_DEBUG.
* matchbox/managers/maemo/maemo-window-manager.c:
(maemo_window_manager_class_type):
Fixed incorrect object initialization.
|
|
Further work on multiple desktop support:
* matchbox/core/mb-wm-client.c:
* matchbox/core/mb-wm-client.h:
(mb_wm_client_desktop_change):
Do not reset the hiding_from_desktop flag when showing a client
* matchbox/core/mb-window-manager.c:
(mb_wm_client_reset_hiding_from_desktop):
Public API so that the WM can reset the flag when window maps.
(mb_wm_handle_map_notify):
Do not pass notification for our frame decors, etc, to the CM.
(mb_wm_select_desktop):
Set MBWindowManager::active_desktop when destkop changes; hook
into CM API.
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.h:
(mb_wm_comp_mgr_client_init):
(mb_wm_comp_mgr_client_destroy):
Take/release reference to MBWindowClient object to avoid it
disappearing on us during effect animations.
(mb_wm_comp_mgr_render):
Make class implementation of the render method optional to avoid
unnecessary function calls.
(mb_wm_comp_mgr_map_notify):
(mb_wm_comp_mgr_unmap_notify):
Do not trigger map application map animation when switching
desktops.
(mb_wm_comp_mgr_select_desktop):
CM API for WM to hook into for desktop switching.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h:
(mb_wm_comp_mgr_clutter_select_desktop):
(mb_wm_comp_mgr_clutter_map_notify_real):
CM desktop switching implementation.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h:
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.h:
* matchbox/core/mb-wm-client.c:
* matchbox/core/mb-wm-types.h:
* matchbox/theme-engines/mb-wm-theme-xml.c:
* matchbox/theme-engines/mb-wm-theme-xml.h:
* matchbox/theme-engines/mb-wm-theme.c:
* matchbox/theme-engines/mb-wm-theme.h:
Simplified effect framework (effect are no longer themeable).
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_map_notify_real):
Only create shadows for select group of client types.
* matchbox/theme-engines/mb-wm-theme-simple.h:
Fixed broken include.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
Initial stab at gaussian shadows.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_fetch_texture):
Handle shaped windows correctly.
(mb_wm_comp_mgr_clutter_turn_on_real):
Removed debug colour for stage.
|
|
* matchbox/theme-engines/mb-wm-theme-xml.c:
* matchbox/theme-engines/mb-wm-theme.c:
Fixed parsing of colour alpha.
* data/themes/Default/theme.xml
Added shaddow colour definition.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
Implemented simple shaddows.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.h:
* matchbox/core/mb-window-manager.c:
(mb_wm_sync):
Added MBWMCompMgr::restack() virtual for CMs that need to
track WM stacking order.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
Implemented MBWMCompMgrClutter::restack().
Fixed fade transition to handle transients correctly.
|
|
* matchbox/core/mb-wm-types.h:
* matchbox/theme-engines/mb-wm-theme.c:
* matchbox/theme-engines/mb-wm-theme.h:
* matchbox/theme-engines/mb-wm-theme-xml.c:
* matchbox/theme-engines/mb-wm-theme-xml.h:
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
* data/themes/Default/theme.xml:
Added transition support to theme.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.h:
* matchbox/core/mb-window-manager.c
(mb_wm_cycle_apps):
Simple API for client transition effects.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_client_destroy):
Remove actor from stage when destroying cm client.
(mb_wm_comp_mgr_clutter_transition_real):
Sample transition implementation.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr.h:
(MBWMCompMgrEffect::run):
(mb_wm_comp_mgr_client_run_effect):
Simplified effect API by removing completion callback from run()
function (no longer required; custom CM implementations must
implement effects in a way that does not block the WM processing).
* matchbox/core/mb-wm-client.c:
(mb_wm_client_iconize):
Adjusted following the above API change.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_effect_run_real):
Set an EffectRunning flag on client to indicate that effect is in
progress.
(mb_wm_comp_mgr_clutter_client_hide_real):
Do not hide client actor if effect is in progress.
(mb_wm_comp_mgr_clutter_effect_completed_cb):
Call clutter_actor_hide() when unmap or minimize effects are
completed.
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
(mb_wm_comp_mgr_client_run_effect):
Release assumed reference on client object if no effects were
started to avoid memory leak.
|
|
* configure.ac:
Fixed incorrect string quoting.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
* matchbox/comp-mgr/mb-wm-comp-mgr-default.c:
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
(mb_wm_comp_mgr_unregister_client):
Moved shared code into the public function, and removed
unnecessary implementations from the default and clutter managers.
Removed call to mb_wm_comp_mgr_client_hide() as this interfers
with managers implementing an unmap effect.
* matchbox/comp-mgr/mb-wm-comp-mgr.h:
Added MBWMCompMgr::unmap_notify virtual.
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
(mb_wm_comp_mgr_map_notify):
(mb_wm_comp_mgr_unmap_notify):
Moved the effects handling for map and umap events out of
MBWindowManager into the CM.
(mb_wm_comp_mgr_client_run_effect):
Take a temporary reference of the CM client object to enusure that
it is not destroyed while an effect is running.
* matchbox/core/mb-window-manager.c:
(mb_wm_handle_unmap_notify):
Removed handling of CM unmap effect.
(mb_wm_unmanage_client):
Extra comments.
|
|
* matchbox/core/mb-wm-debug.c:
* matchbox/core/mb-wm-debug.h:
Added DAMAGE debug domain.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_client_show_real):
Clear DontUpdate flag if set.
(mb_wm_comp_mgr_clutter_client_repair_real):
Added debug output.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
Insert texture actors into a 'desktop' ClutterGroup rather than
directly into stage to provide greater flexibility in subclassing.
|
|
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(MBWMCompMgrClutterClient):
Collapsed a bunch of boolean members into flag set; 'done' flag
for effects that should only run once.
* matchbox/core/mb-wm-client.c:
(mb_wm_client_deliver_delete):
Hooked unmap effect in.
|
|
* matchbox/core/mb-window-manager.c:
(mb_wm_manage_preexistsing_wins):
Fixed handling of pre-exising windows when compositing.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_turn_on_real):
Remove no longer needed pre-existing windows code.
(mb_wm_comp_mgr_clutter_fetch_texture):
Update actor position when re-fetching texture; use client
geometry rather than pixmap geometery for actor size.
(mb_wm_comp_mgr_clutter_map_notify_real):
Removed unneeded effect callback.
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
(mb_wm_comp_mgr_client_hide):
(mb_wm_comp_mgr_map_notify):
Added checks for NULL.
(mb_wm_comp_mgr_unregister_client):
Call mb_wm_comp_mgr_client_hide() to provide more coherent
show/hide behaviour; clear the client data pointer.
|
|
* matchbox/core/mb-wm-client.c:
(mb_wm_comp_mgr_map_notify):
Removed superfluous mb_wm_comp_mgr_client_show/hide().
* matchbox/comp-mgr/mb-wm-comp-mgr.c:
(mb_wm_comp_mgr_map_notify):
Call mb_wm_comp_mgr_client_show() to provide more coherent
show/hide behaviour.
* matchbox/core/mb-window-manager.c:
(mb_wm_comp_mgr_map_notify):
Only call mb_wm_comp_mgr_client_hide() if we are not
unregistering the client.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
Code cleanup.
|
|
* matchbox/core/mb-window-manager.c:
(mb_wm_unmanage_client):
Make sure that mb_wm_comp_mgr_client_hide() is called when
unmanaging a client.
* matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c:
(mb_wm_comp_mgr_clutter_client_destroy):
Removed a superfluous call to mb_wm_comp_mgr_client_hide().
|
|
* configure.ac, *.am, *.h:
Changes for building mbwm2 as a library (based on patch by Johan
Bilien):
Moved 'src' to 'matchbox'; fixed up headers to use #include <>.
Moved config.h to matchbox/mb-wm-config.h.
Added --enable-libmatchbox configure option, libmatchbox2.pc.in
|