[mutter/wip/compositor-menu: 9/13] window: Export a bunch of state flags as accessor methods



commit 10fb5e527f328ba3f86dd5d1436b8403385b0c9a
Author: Jasper St. Pierre <jstpierre mecheye net>
Date:   Thu Mar 13 18:15:26 2014 -0400

    window: Export a bunch of state flags as accessor methods
    
    This is necessary to reimplement window menus in gnome-shell.

 src/core/window.c |   54 +++++++++++++++++++++++++++++++++++++++++++++++-----
 src/meta/window.h |    7 ++++++
 2 files changed, 55 insertions(+), 6 deletions(-)
---
diff --git a/src/core/window.c b/src/core/window.c
index a70fe66..c6cf2a3 100644
--- a/src/core/window.c
+++ b/src/core/window.c
@@ -10051,12 +10051,6 @@ meta_window_compute_tile_match (MetaWindow *window)
     }
 }
 
-gboolean
-meta_window_can_close (MetaWindow *window)
-{
-  return window->has_close_func;
-}
-
 void
 meta_window_set_title (MetaWindow *window,
                        const char *title)
@@ -10398,3 +10392,51 @@ meta_window_set_custom_frame_extents (MetaWindow *window,
 
   meta_window_queue (window, META_QUEUE_MOVE_RESIZE);
 }
+
+gboolean
+meta_window_can_maximize (MetaWindow *window)
+{
+  return window->has_maximize_func;
+}
+
+gboolean
+meta_window_can_minimize (MetaWindow *window)
+{
+  return window->has_minimize_func;
+}
+
+gboolean
+meta_window_can_shade (MetaWindow *window)
+{
+  return window->has_shade_func;
+}
+
+gboolean
+meta_window_can_close (MetaWindow *window)
+{
+  return window->has_close_func;
+}
+
+gboolean
+meta_window_is_always_on_all_workspaces (MetaWindow *window)
+{
+  return window->always_sticky;
+}
+
+gboolean
+meta_window_is_above (MetaWindow *window)
+{
+  return window->wm_state_above;
+}
+
+gboolean
+meta_window_allows_move (MetaWindow *window)
+{
+  return META_WINDOW_ALLOWS_MOVE (window);
+}
+
+gboolean
+meta_window_allows_resize (MetaWindow *window)
+{
+  return META_WINDOW_ALLOWS_RESIZE (window);
+}
diff --git a/src/meta/window.h b/src/meta/window.h
index d8871c5..e979d7b 100644
--- a/src/meta/window.h
+++ b/src/meta/window.h
@@ -254,6 +254,13 @@ void meta_window_begin_grab_op (MetaWindow *window,
                                 gboolean    frame_action,
                                 guint32     timestamp);
 
+gboolean meta_window_can_maximize (MetaWindow *window);
+gboolean meta_window_can_minimize (MetaWindow *window);
+gboolean meta_window_can_shade (MetaWindow *window);
 gboolean meta_window_can_close (MetaWindow *window);
+gboolean meta_window_is_always_on_all_workspaces (MetaWindow *window);
+gboolean meta_window_is_above (MetaWindow *window);
+gboolean meta_window_allows_move (MetaWindow *window);
+gboolean meta_window_allows_resize (MetaWindow *window);
 
 #endif


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]