window
to the given position. Window managers are free to ignore
this; most window managers ignore requests for initial window
positions (instead using a user-defined placement algorithm) and
honor requests after the window has already been shown.gtkWindowMove(object, x, y)
object
x
y
GDK_GRAVITY_NORTH_WEST
, so the reference
point is simply the x
, y
supplied to gtkWindowMove
. The
top-left corner of the window decorations (aka window frame or
border) will be placed at x
, y
. Therefore, to position a window
at the top left of the screen, you want to use the default gravity
(which is GDK_GRAVITY_NORTH_WEST
) and move the window to 0,0.
To position a window at the bottom right corner of the screen, you
would set GDK_GRAVITY_SOUTH_EAST
, which means that the reference
point is at x
+ the window width and y
+ the window height, and
the bottom-right corner of the window border will be placed at that
reference point. So, to place a window in the bottom right corner
you would first set gravity to south east, then write:
gtk_window_move (window, gdkScreenWidth - window_width,
gdkScreenHeight - window_height)
(note that this
example does not take multi-head scenarios into account).
The Extended Window Manager Hints specification at
http://www.freedesktop.org/Standards/wm-spec (http://www.freedesktop.org/Standards/wm-spec) has a
nice table of gravities in the "implementation notes" section.
The gtkWindowGetPosition
documentation may also be relevant.