Asks the window manager to move 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.
- the position is the position of the gravity-determined reference point for the window. The gravity determines two things: first, the location of the reference point in root window coordinates; and second, which point on the window is positioned at the reference point.
By default the gravity is Gdk::GRAVITY_NORTH_WEST, so the reference point is simply the x
supplied to move()
top-left corner of the window decorations (aka window frame or border) will be placed at x
. 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, gdk_screen_width() - window_width, gdk_screen_height() - window_height).
The Extended Window Manager Hints specification at http://www.freedesktop.org/standards/wm-spec has a nice table of gravities in the "implementation notes" section.
The get_position() documentation may also be relevant.
|x ||X coordinate to move window to. |
|y ||Y coordinate to move window to. |
Definition at line 877 of file window.cc.
gtk_window_move(gobj(), x, y);