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
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");

Loading…
Cancel
Save