summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiago Vignatti <tiago.vignatti@intel.com>2012-06-04 19:29:22 +0300
committerTiago Vignatti <tiago.vignatti@intel.com>2012-06-11 20:33:36 +0300
commit55bbb844ceba6c241a453a4769b92bf750564ad8 (patch)
tree5e85a08cbffce7797823b508cb91cf910c7784df
parente9f68f66dc9d559d9da77d641f3ca925b9973c7b (diff)
xwm: initialize window decoration before and always as !override
One problem we have now is that clients can get a XCB_CONFIGURE_REQUEST before a XCB_PROPERTY_NOTIFY, which is the first time it calls read_properties to initialize the decorate field. On the configure request, it's needed to know in advance if the window is decorated or not, to perform correctly the calls to weston_wm_window_get_{child_position, frame_size}. This patch solves the issue bringing the pointer initialization when the window is just created and later it checks whether MOTIF_WM_HINTS wants to change it to a different value. It also changes the initialization to always be !override. Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
-rw-r--r--src/xwayland/window-manager.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/xwayland/window-manager.c b/src/xwayland/window-manager.c
index da4d800..389cc78 100644
--- a/src/xwayland/window-manager.c
+++ b/src/xwayland/window-manager.c
@@ -253,7 +253,6 @@ weston_wm_window_read_properties(struct weston_wm_window *window)
props[i].atom,
XCB_ATOM_ANY, 0, 2048);
- window->decorate = 1;
for (i = 0; i < ARRAY_LENGTH(props); i++) {
reply = xcb_get_property_reply(wm->conn, cookie[i], NULL);
if (!reply)
@@ -711,6 +710,7 @@ weston_wm_window_create(struct weston_wm *wm,
window->id = id;
window->properties_dirty = 1;
window->override_redirect = override;
+ window->decorate = !window->override_redirect;
window->width = width;
window->height = height;