summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/terminal-window.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/terminal-window.c b/src/terminal-window.c
index 96beb2a..292eea8 100644
--- a/src/terminal-window.c
+++ b/src/terminal-window.c
@@ -2776,6 +2776,7 @@ terminal_window_update_size_set_geometry (TerminalWindow *window,
unsigned int force_grid_width = 0, force_grid_height = 0;
int grid_width, grid_height;
gint pixel_width, pixel_height;
+ gint sc_width, sc_height;
GdkWindow *gdk_window;
GdkGravity pos_gravity;
@@ -2851,14 +2852,16 @@ terminal_window_update_size_set_geometry (TerminalWindow *window,
if ((geom_result & YValue) == 0)
force_pos_y = 0;
+ gdk_window_get_geometry (gdk_screen_get_root_window (gtk_widget_get_screen (app)),
+ NULL, NULL, &sc_width, &sc_height);
+
if (pos_gravity == GDK_GRAVITY_SOUTH_EAST ||
pos_gravity == GDK_GRAVITY_NORTH_EAST)
- force_pos_x = gdk_screen_get_width (gtk_widget_get_screen (app)) -
- pixel_width + force_pos_x;
+ force_pos_x = sc_width - pixel_width + force_pos_x;
+
if (pos_gravity == GDK_GRAVITY_SOUTH_WEST ||
pos_gravity == GDK_GRAVITY_SOUTH_EAST)
- force_pos_y = gdk_screen_get_height (gtk_widget_get_screen (app)) -
- pixel_height + force_pos_y;
+ force_pos_y = sc_height - pixel_height + force_pos_y;
/* we don't let you put a window offscreen; maybe some people would
* prefer to be able to, but it's kind of a bogus thing to do.