XSetWMNormalHints()XSetWMNormalHints()NameXSetWMNormalHints – set a window's XA_WM_NORMAL_HINTS property.
Synopsis
void XSetWMNormalHints(display, w, hints)
Display *display;
Window w;
XSizeHints *hints;
Arguments
display Specifies a connection to an X server; returned from
XOpenDisplay().
w Specifies the window.
hints Specifies the size hints for the window in its normal state.
Availability
Release 4 and later.
DescriptionXSetWMNormalHints() sets the size hints in the XA_WM_NORMAL_HINTS prop‐
erty on the specified window. The property is stored with a type of
WM_SIZE_HINTS and a format of 32. XSetWMNormalHints() supersedes XSet‐
NormalHints(). This property can also be set with XSetWMProperties().
Applications use XSetNormalHints() to inform the window manager of the
sizes desirable for that window.
To set size hints, an application must assign values to the appropriate
elements in the hints structure, and also set the flags field of the
structure to indicate which members have assigned values and the source
of the assignment. These flags are listed in the Structures section
below.
For more information, see Volume One, Chapter 12, Interclient Communi‐
cation.
Structures
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 */
} XSizeHints;
#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/max aspect
ratios */
#define PAllHints (PPosition PSize PMinSize PMaxSize PResizeInc PAspect)
#define PBaseSize (1L << 8) /* program specified base
* for incrementing */
#define PWinGravity (1L << 9) /* program specified window gravity */
Errors
BadAlloc
BadWindow
See AlsoXGetWMNormalHints(), XSetWMProperties(), XSetWMSizeHints(), XGetWMSize‐
Hints().
Xlib - Window Manager Hints XSetWMNormalHints()