summaryrefslogtreecommitdiff
path: root/libdecor/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'libdecor/src/plugins')
-rw-r--r--libdecor/src/plugins/cairo/libdecor-cairo.c4
-rw-r--r--libdecor/src/plugins/gtk/libdecor-gtk.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/libdecor/src/plugins/cairo/libdecor-cairo.c b/libdecor/src/plugins/cairo/libdecor-cairo.c
index 155a495a5..d58c1f82d 100644
--- a/libdecor/src/plugins/cairo/libdecor-cairo.c
+++ b/libdecor/src/plugins/cairo/libdecor-cairo.c
@@ -2374,8 +2374,10 @@ pointer_button(void *data,
toggle_maximized(&frame_cairo->frame);
break;
case BUTTON_CLOSE:
- if (closeable(frame_cairo))
+ if (closeable(frame_cairo)) {
libdecor_frame_close(&frame_cairo->frame);
+ return;
+ }
break;
default:
break;
diff --git a/libdecor/src/plugins/gtk/libdecor-gtk.c b/libdecor/src/plugins/gtk/libdecor-gtk.c
index 53cc81339..34477470d 100644
--- a/libdecor/src/plugins/gtk/libdecor-gtk.c
+++ b/libdecor/src/plugins/gtk/libdecor-gtk.c
@@ -2221,9 +2221,11 @@ pointer_button(void *data,
toggle_maximized(&frame_gtk->frame);
break;
case HEADER_CLOSE:
- if (closeable(frame_gtk))
+ if (closeable(frame_gtk)) {
libdecor_frame_close(
&frame_gtk->frame);
+ return;
+ }
break;
default:
break;