mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2025-01-17 07:30:09 +00:00
gtkwindow: apply CSD in configure size request
Just like we did for the default size, that reduces the chances of having the headerbar missing or wrongly sized when computing the client side decorations controls. https://bugzilla.gnome.org/show_bug.cgi?id=756618
This commit is contained in:
parent
0384f9eaf3
commit
e933233479
@ -5319,7 +5319,6 @@ gtk_window_resize (GtkWindow *window,
|
||||
g_return_if_fail (height > 0);
|
||||
|
||||
info = gtk_window_get_geometry_info (window, TRUE);
|
||||
gtk_window_update_csd_size (window, &width, &height, INCLUDE_CSD_SIZE);
|
||||
|
||||
info->resize_width = width;
|
||||
info->resize_height = height;
|
||||
@ -8973,15 +8972,21 @@ gtk_window_compute_configure_request_size (GtkWindow *window,
|
||||
}
|
||||
else if (info)
|
||||
{
|
||||
gint resize_width_csd = info->resize_width;
|
||||
gint resize_height_csd = info->resize_height;
|
||||
gtk_window_update_csd_size (window,
|
||||
&resize_width_csd, &resize_height_csd,
|
||||
INCLUDE_CSD_SIZE);
|
||||
|
||||
if (info->resize_width > 0)
|
||||
*width = info->resize_width;
|
||||
*width = resize_width_csd;
|
||||
if (info->resize_height > 0)
|
||||
*height = info->resize_height;
|
||||
*height = resize_height_csd;
|
||||
|
||||
if (info->resize_is_geometry)
|
||||
geometry_size_to_pixels (geometry, flags,
|
||||
info->resize_width > 0 ? width : NULL,
|
||||
info->resize_height > 0 ? height : NULL);
|
||||
geometry_size_to_pixels (geometry, flags,
|
||||
info->resize_width > 0 ? width : NULL,
|
||||
info->resize_height > 0 ? height : NULL);
|
||||
}
|
||||
|
||||
/* Don't ever request zero width or height, it's not supported by
|
||||
|
Loading…
Reference in New Issue
Block a user