From 83f6336f3b024f4a7c55a7499d036f03d946c1b9 Mon Sep 17 00:00:00 2001 From: ManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com> Date: Tue, 14 Nov 2023 14:29:36 +0100 Subject: Libdecor-gtk and GTK Shell: take care of LIBDECOR_PLUGIN_DIR --- libdecor/build/fl_libdecor-plugins.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/libdecor/build/fl_libdecor-plugins.c b/libdecor/build/fl_libdecor-plugins.c index a5adbbbc2..c0078b615 100644 --- a/libdecor/build/fl_libdecor-plugins.c +++ b/libdecor/build/fl_libdecor-plugins.c @@ -437,6 +437,14 @@ void use_FLTK_pointer_button(struct libdecor_frame *frame) { wl_list_for_each(seat, &lfg->plugin_gtk->seat_list, link) { break; } + + struct wl_surface *surface = lfg->headerbar.wl_surface; + if (surface && !own_surface(surface)) { + // occurs if libdecor-gtk.so was dynamically loaded via LIBDECOR_PLUGIN_DIR + gtk_shell = NULL; + return; + } + struct wl_object *object = (struct wl_object *)seat->wl_pointer; if (!object) return; struct wl_pointer_listener *decor_listener = -- cgit v1.2.3