summaryrefslogtreecommitdiff
path: root/programs/Xserver/hw/xwin/winmultiwindowclass.h
diff options
context:
space:
mode:
Diffstat (limited to 'programs/Xserver/hw/xwin/winmultiwindowclass.h')
-rw-r--r--programs/Xserver/hw/xwin/winmultiwindowclass.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/programs/Xserver/hw/xwin/winmultiwindowclass.h b/programs/Xserver/hw/xwin/winmultiwindowclass.h
index 79b3a1c5d..f9cfee30f 100644
--- a/programs/Xserver/hw/xwin/winmultiwindowclass.h
+++ b/programs/Xserver/hw/xwin/winmultiwindowclass.h
@@ -49,6 +49,47 @@ typedef struct {
/*
+ * new version containing base_width, base_height, and win_gravity fields;
+ * used with WM_NORMAL_HINTS.
+ */
+typedef struct {
+ long flags; /* marks which fields in this structure are defined */
+ int x, y; /* obsolete for new window mgrs, but clients */
+ int width, height; /* should set so old wm's don't mess up */
+ int min_width, min_height;
+ int max_width, max_height;
+ int width_inc, height_inc;
+ struct {
+ int x; /* numerator */
+ int y; /* denominator */
+ } min_aspect, max_aspect;
+ int base_width, base_height; /* added by ICCCM version 1 */
+ int win_gravity; /* added by ICCCM version 1 */
+} WinXSizeHints;
+
+/*
+ * The next block of definitions are for window manager properties that
+ * clients and applications use for communication.
+ */
+
+/* flags argument in size hints */
+#define USPosition (1L << 0) /* user specified x, y */
+#define USSize (1L << 1) /* user specified width, height */
+
+#define PPosition (1L << 2) /* program specified position */
+#define PSize (1L << 3) /* program specified size */
+#define PMinSize (1L << 4) /* program specified minimum size */
+#define PMaxSize (1L << 5) /* program specified maximum size */
+#define PResizeInc (1L << 6) /* program specified resize increments */
+#define PAspect (1L << 7) /* program specified min and max aspect ratios */
+#define PBaseSize (1L << 8) /* program specified base for incrementing */
+#define PWinGravity (1L << 9) /* program specified window gravity */
+
+/* obsolete */
+#define PAllHints (PPosition|PSize|PMinSize|PMaxSize|PResizeInc|PAspect)
+
+
+/*
* Function prototypes
*/
@@ -60,3 +101,10 @@ winMultiWindowGetClassHint (WindowPtr pWin, char **res_name, char **res_class);
int
winMultiWindowGetWindowRole (WindowPtr pWin, char **res_role);
+
+int
+winMultiWindowGetWMNormalHints (WindowPtr pWin, WinXSizeHints *hints);
+
+int
+winMultiWindowGetWMName (WindowPtr pWin, char **wmName);
+