From 4047db26e1ef58ccb5c8f25f6f8afc3be46eedd7 Mon Sep 17 00:00:00 2001 From: Antoine Martin Date: Tue, 27 Oct 2015 15:47:47 +0000 Subject: [PATCH] #990: * skip _NET_MOVERESIZE_WINDOW silently for non-"WindowModel" windows (OR and trays) * make sure we call the superclass process_client_message_event from the base window class * remove duplicated _NET_CLOSE_WINDOW code git-svn-id: https://xpra.org/svn/Xpra/trunk@11057 3bb7dfac-3a0b-4e04-842a-767bc560f471 --- src/xpra/x11/gtk2/models/base.py | 12 ++++-------- src/xpra/x11/gtk2/models/core.py | 4 ++++ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/xpra/x11/gtk2/models/base.py b/src/xpra/x11/gtk2/models/base.py index 9523997fba..27c48f3155 100644 --- a/src/xpra/x11/gtk2/models/base.py +++ b/src/xpra/x11/gtk2/models/base.py @@ -594,11 +594,7 @@ def process_client_message_event(self, event): # _NET_RESTACK_WINDOW # _NET_WM_STATE (more fully) - if event.message_type=="_NET_CLOSE_WINDOW": - log.info("_NET_CLOSE_WINDOW received by %s", self) - self.request_close() - return True - elif event.message_type=="_NET_WM_STATE": + if event.message_type=="_NET_WM_STATE": def update_wm_state(prop): current = self.get_property(prop) mode = event.data[0] @@ -611,7 +607,7 @@ def update_wm_state(prop): else: log.warn("invalid mode for _NET_WM_STATE: %s", mode) return - log("do_xpra_client_message_event(%s) window %s=%s after %s (current state=%s)", event, prop, v, STATE_STRING.get(mode, mode), current) + log("process_client_message_event(%s) window %s=%s after %s (current state=%s)", event, prop, v, STATE_STRING.get(mode, mode), current) if v!=current: self.update_wm_state(prop, v) atom1 = get_pyatom(event.window, event.data[1]) @@ -644,7 +640,7 @@ def update_wm_state(prop): elif atom1=="_NET_WM_STATE_MODAL": update_wm_state("modal") else: - log.info("do_xpra_client_message_event(%s) unhandled atom=%s", event, atom1) + log.info("process_client_message_event(%s) unhandled atom=%s", event, atom1) return True elif event.message_type=="WM_CHANGE_STATE": log("WM_CHANGE_STATE: %s", event.data[0]) @@ -689,4 +685,4 @@ def update_wm_state(prop): # it may make sense to apply it to the client_window # whereas the code in WindowModel assumes there is a corral window #not handled: - return False + return CoreX11WindowModel.process_client_message_event(self, event) diff --git a/src/xpra/x11/gtk2/models/core.py b/src/xpra/x11/gtk2/models/core.py index 2fe32976a9..00c7dc1f5e 100644 --- a/src/xpra/x11/gtk2/models/core.py +++ b/src/xpra/x11/gtk2/models/core.py @@ -677,6 +677,10 @@ def process_client_message_event(self, event): framelog("_NET_REQUEST_FRAME_EXTENTS") self._handle_frame_changed() return True + elif event.message_type=="_NET_MOVERESIZE_WINDOW": + #this is overriden in WindowModel, skipped everywhere else: + geomlog("_NET_MOVERESIZE_WINDOW skipped on %s (data=%s)", self, event.data) + return True #not handled: return False