From c190323c90c39c536cb9317d68d3277f53389839 Mon Sep 17 00:00:00 2001 From: Tiago Vignatti Date: Mon, 16 Jul 2012 12:15:37 -0400 Subject: [PATCH] xwm: set the root window pointer to left_ptr More pretty and also consistent with toytoolkit. Signed-off-by: Tiago Vignatti --- src/xwayland/window-manager.c | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/src/xwayland/window-manager.c b/src/xwayland/window-manager.c index e73e5887..e1312387 100644 --- a/src/xwayland/window-manager.c +++ b/src/xwayland/window-manager.c @@ -1005,21 +1005,18 @@ get_cursor_for_location(struct theme *t, int width, int height, int x, int y) } static void -weston_wm_frame_set_cursor(struct weston_wm *wm, - struct weston_wm_window *window, int cursor) +weston_wm_window_set_cursor(struct weston_wm *wm, xcb_window_t window_id, + int cursor) { uint32_t cursor_value_list; - if (!window->frame_id) - return; - if (wm->last_cursor == cursor) return; wm->last_cursor = cursor; cursor_value_list = wm->cursors[cursor]; - xcb_change_window_attributes (wm->conn, window->frame_id, + xcb_change_window_attributes (wm->conn, window_id, XCB_CW_CURSOR, &cursor_value_list); xcb_flush(wm->conn); } @@ -1087,7 +1084,7 @@ weston_wm_handle_motion(struct weston_wm *wm, xcb_generic_event_t *event) cursor = get_cursor_for_location(wm->theme, width, height, motion->event_x, motion->event_y); - weston_wm_frame_set_cursor(wm, window, cursor); + weston_wm_window_set_cursor(wm, window->frame_id, cursor); } static void @@ -1105,7 +1102,7 @@ weston_wm_handle_enter(struct weston_wm *wm, xcb_generic_event_t *event) cursor = get_cursor_for_location(wm->theme, width, height, enter->event_x, enter->event_y); - weston_wm_frame_set_cursor(wm, window, cursor); + weston_wm_window_set_cursor(wm, window->frame_id, cursor); } static void @@ -1118,7 +1115,7 @@ weston_wm_handle_leave(struct weston_wm *wm, xcb_generic_event_t *event) if (!window) return; - weston_wm_frame_set_cursor(wm, window, XWM_CURSOR_LEFT_PTR); + weston_wm_window_set_cursor(wm, window->frame_id, XWM_CURSOR_LEFT_PTR); } static int @@ -1444,6 +1441,7 @@ weston_wm_create(struct weston_xserver *wxs) &wm->activate_listener); weston_wm_create_cursors(wm); + weston_wm_window_set_cursor(wm, wm->screen->root, XWM_CURSOR_LEFT_PTR); weston_log("created wm\n");