summaryrefslogtreecommitdiff
path: root/libdecor/src/plugins/gtk
diff options
context:
space:
mode:
Diffstat (limited to 'libdecor/src/plugins/gtk')
-rw-r--r--libdecor/src/plugins/gtk/libdecor-gtk.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/libdecor/src/plugins/gtk/libdecor-gtk.c b/libdecor/src/plugins/gtk/libdecor-gtk.c
index 661e526d0..228161e43 100644
--- a/libdecor/src/plugins/gtk/libdecor-gtk.c
+++ b/libdecor/src/plugins/gtk/libdecor-gtk.c
@@ -1727,17 +1727,18 @@ libdecor_plugin_gtk_frame_get_border_size(struct libdecor_plugin *plugin,
if (bottom)
*bottom = 0;
if (top) {
- /* Redraw decoration to ensure size will be up-to-date */
- draw_decoration((struct libdecor_frame_gtk *) frame);
-
GtkWidget *header = ((struct libdecor_frame_gtk *)frame)->header;
enum decoration_type type = window_state_to_decoration_type(window_state);
/* avoid warnings after decoration has been turned off */
- if (GTK_IS_WIDGET(header) && (type != DECORATION_TYPE_NONE))
+ if (GTK_IS_WIDGET(header) && (type != DECORATION_TYPE_NONE)) {
+ /* Redraw title bar to ensure size will be up-to-date */
+ if (configuration && type == DECORATION_TYPE_TITLE_ONLY)
+ draw_title_bar((struct libdecor_frame_gtk *) frame);
*top = gtk_widget_get_allocated_height(header);
- else
+ } else {
*top = 0;
+ }
}
return true;