diff options
author | Matthias Clasen <mclasen@redhat.com> | 2017-10-04 07:34:30 -0400 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2017-10-04 07:35:45 -0400 |
commit | 899cfb3c50e013589540c59c57ba0dd3722255e7 (patch) | |
tree | a252bc7e81fd985abcea585d0d83f2aeb196942b | |
parent | 223a709403c7947758b0990fb3c2478d9a4a4704 (diff) | |
download | gtk+-899cfb3c50e013589540c59c57ba0dd3722255e7.tar.gz |
Fix several issues with resizing
Some of the border windows were not placed correctly.
Patch by Jan Steffens.
-rw-r--r-- | gtk/gtkwindow.c | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c index ffc841871f..a4ba098224 100644 --- a/gtk/gtkwindow.c +++ b/gtk/gtkwindow.c @@ -6855,7 +6855,7 @@ update_corner_windows (GtkWindow *window, region, 0, 0); cairo_region_destroy (region); - gdk_window_hide (priv->border_window[GDK_WINDOW_EDGE_NORTH_EAST]); + gdk_window_show_unraised (priv->border_window[GDK_WINDOW_EDGE_NORTH_EAST]); } else { @@ -7065,13 +7065,13 @@ update_border_windows (GtkWindow *window) if (resize_n) { - y += window_border.top; + y += window_border.top + handle_v; h -= window_border.top + handle_v; } if (resize_w) { - x += window_border.left; + x += window_border.left + handle_h; w -= window_border.left + handle_h; } @@ -7084,9 +7084,9 @@ update_border_windows (GtkWindow *window) /* North */ if (resize_n) { - gdk_window_move_resize (priv->border_window[GDK_WINDOW_EDGE_SOUTH], - x, window_border.top + height, - w, border.bottom); + gdk_window_move_resize (priv->border_window[GDK_WINDOW_EDGE_NORTH], + x, window_border.top - border.top, + w, border.top); gdk_window_show_unraised (priv->border_window[GDK_WINDOW_EDGE_NORTH]); } @@ -7096,7 +7096,7 @@ update_border_windows (GtkWindow *window) } /* South */ - if (resize_n) + if (resize_s) { gdk_window_move_resize (priv->border_window[GDK_WINDOW_EDGE_SOUTH], x, window_border.top + height, @@ -7109,13 +7109,6 @@ update_border_windows (GtkWindow *window) gdk_window_hide (priv->border_window[GDK_WINDOW_EDGE_SOUTH]); } - /* - * Horizontal edges - */ - - y = (resize_n || resize_s) ? window_border.top + handle_v : 0; - h = (resize_n || resize_s) ? height - 2 * handle_v : height + window_border.top + window_border.bottom; - /* East */ if (resize_e) { |