aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c24
-rw-r--r--matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h15
3 files changed, 38 insertions, 8 deletions
diff --git a/ChangeLog b/ChangeLog
index 9719d91..e9f8c83 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
2008-05-22 Tomas Frydrych <tf@o-hand.com>
+ * 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.
+
+2008-05-22 Tomas Frydrych <tf@o-hand.com>
+
* /matchbox/core/mb-wm-client.c:
(mb_wm_client_shutdown):
Fixed for clients that do not have _NET_WM_PID set.
diff --git a/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c b/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c
index 79dbdd5..0efa280 100644
--- a/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c
+++ b/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c
@@ -57,14 +57,6 @@ static void
mb_wm_comp_mgr_clutter_add_actor (MBWMCompMgrClutter *,
MBWMCompMgrClutterClient *);
-enum
-{
- MBWMCompMgrClutterClientMapped = (1<<0),
- MBWMCompMgrClutterClientDontUpdate = (1<<1),
- MBWMCompMgrClutterClientDone = (1<<2),
- MBWMCompMgrClutterClientEffectRunning = (1<<3),
-};
-
/*
* A helper object to store manager's per-client data
*/
@@ -355,6 +347,22 @@ mb_wm_comp_mgr_clutter_client_show_real (MBWMCompMgrClient * client)
clutter_actor_show_all (cclient->priv->actor);
}
+void
+mb_wm_comp_mgr_clutter_client_set_flags (MBWMCompMgrClutterClient *cclient,
+ MBWMCompMgrClutterClientFlags flags)
+{
+ cclient->priv->flags |= flags;
+}
+
+
+void
+mb_wm_comp_mgr_clutter_client_unset_flags (MBWMCompMgrClutterClient *cclient,
+ MBWMCompMgrClutterClientFlags flags)
+{
+ cclient->priv->flags &= ~flags;
+}
+
+
/*
* MBWMCompMgrClutterClientEventEffect
*/
diff --git a/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h b/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h
index 27f9219..f9426c1 100644
--- a/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h
+++ b/matchbox/comp-mgr/mb-wm-comp-mgr-clutter.h
@@ -40,6 +40,13 @@ typedef struct _MBWMCompMgrClutterClient MBWMCompMgrClutterClient;
typedef struct _MBWMCompMgrClutterClientClass MBWMCompMgrClutterClientClass;
typedef struct _MBWMCompMgrClutterClientPrivate MBWMCompMgrClutterClientPrivate;
+typedef enum
+{
+ MBWMCompMgrClutterClientMapped = (1<<0),
+ MBWMCompMgrClutterClientDontUpdate = (1<<1),
+ MBWMCompMgrClutterClientDone = (1<<2),
+ MBWMCompMgrClutterClientEffectRunning = (1<<3),
+} MBWMCompMgrClutterClientFlags;
struct _MBWMCompMgrClutter
{
@@ -76,6 +83,14 @@ mb_wm_comp_mgr_clutter_client_class_type ();
ClutterActor *
mb_wm_comp_mgr_clutter_client_get_actor (MBWMCompMgrClutterClient *cclient);
+void
+mb_wm_comp_mgr_clutter_client_set_flags (MBWMCompMgrClutterClient *cclient,
+ MBWMCompMgrClutterClientFlags flags);
+
+void
+mb_wm_comp_mgr_clutter_client_unset_flags (MBWMCompMgrClutterClient *cclient,
+ MBWMCompMgrClutterClientFlags flags);
+
MBWMList *
mb_wm_comp_mgr_clutter_get_desktops (MBWMCompMgrClutter *cmgr);