summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDerek Foreman <derekf@osg.samsung.com>2018-03-28 09:33:56 -0500
committerDerek Foreman <derekf@osg.samsung.com>2018-03-28 09:41:18 -0500
commit676523396e19f630d073484bee5c9de81a733263 (patch)
treedfc8f161d59f98eadcb12e6dc579b0c93b5dcdcc
parentbef761796c2ada6344d227142af4a0f40b9760dd (diff)
downloadweston-676523396e19f630d073484bee5c9de81a733263.tar.gz
Revert "xwm: do not include shadow in input region"
This reverts commit 332d1892bbb380b32ff1c9f99d20184b447535dd. And re-introduces the bug it was intended to fix, see: https://lists.freedesktop.org/archives/wayland-devel/2017-December/036402.html Reverting this because it causes harm to all xwayland clients - the input region no longer gets adjusted when resizing windows. start an xterm, resize it larger, you can no longer interact with the new area of the window (including the server side decor).
-rw-r--r--xwayland/window-manager.c34
1 files changed, 0 insertions, 34 deletions
diff --git a/xwayland/window-manager.c b/xwayland/window-manager.c
index 7b98e140..62087941 100644
--- a/xwayland/window-manager.c
+++ b/xwayland/window-manager.c
@@ -645,20 +645,6 @@ weston_wm_window_get_child_position(struct weston_wm_window *window,
}
static void
-weston_wm_window_get_input_rect(struct weston_wm_window *window,
- int32_t *x, int32_t *y,
- int32_t *width, int32_t *height)
-{
- if (!window->decorate) {
- weston_wm_window_get_child_position(window, x, y);
- *width = window->width;
- *height = window->height;
- } else {
- frame_input_rect(window->frame, x, y, width, height);
- }
-}
-
-static void
weston_wm_window_send_configure_notify(struct weston_wm_window *window)
{
xcb_configure_notify_event_t configure_notify;
@@ -983,7 +969,6 @@ weston_wm_window_create_frame(struct weston_wm_window *window)
{
struct weston_wm *wm = window->wm;
uint32_t values[3];
- xcb_rectangle_t rect;
int x, y, width, height;
int buttons = FRAME_BUTTON_CLOSE;
@@ -1040,25 +1025,6 @@ weston_wm_window_create_frame(struct weston_wm_window *window)
&wm->format_rgba,
width, height);
- weston_wm_window_get_input_rect(window, &x, &y, &width, &height);
- rect.x = x;
- rect.y = y;
- rect.width = width;
- rect.height = height;
-
- /* The window frame was created with position and size which include
- * an offset for margins and shadow. Set the input region to ignore
- * shadow. */
- xcb_shape_rectangles(wm->conn,
- XCB_SHAPE_SO_SET,
- XCB_SHAPE_SK_INPUT,
- 0,
- window->frame_id,
- 0,
- 0,
- 1,
- &rect);
-
hash_table_insert(wm->window_hash, window->frame_id, window);
}