xwm: set the root window pointer to left_ptr

More pretty and also consistent with toytoolkit.

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
Tiago Vignatti 12 years ago committed by Kristian Høgsberg
parent 236b48d414
commit c190323c90
  1. 16
      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 static void
weston_wm_frame_set_cursor(struct weston_wm *wm, weston_wm_window_set_cursor(struct weston_wm *wm, xcb_window_t window_id,
struct weston_wm_window *window, int cursor) int cursor)
{ {
uint32_t cursor_value_list; uint32_t cursor_value_list;
if (!window->frame_id)
return;
if (wm->last_cursor == cursor) if (wm->last_cursor == cursor)
return; return;
wm->last_cursor = cursor; wm->last_cursor = cursor;
cursor_value_list = wm->cursors[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_CW_CURSOR, &cursor_value_list);
xcb_flush(wm->conn); 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, cursor = get_cursor_for_location(wm->theme, width, height,
motion->event_x, motion->event_y); 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 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, cursor = get_cursor_for_location(wm->theme, width, height,
enter->event_x, enter->event_y); 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 static void
@ -1118,7 +1115,7 @@ weston_wm_handle_leave(struct weston_wm *wm, xcb_generic_event_t *event)
if (!window) if (!window)
return; 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 static int
@ -1444,6 +1441,7 @@ weston_wm_create(struct weston_xserver *wxs)
&wm->activate_listener); &wm->activate_listener);
weston_wm_create_cursors(wm); weston_wm_create_cursors(wm);
weston_wm_window_set_cursor(wm, wm->screen->root, XWM_CURSOR_LEFT_PTR);
weston_log("created wm\n"); weston_log("created wm\n");

Loading…
Cancel
Save