xwm: set the root window pointer to left_ptr
authorTiago Vignatti <tiago.vignatti@intel.com>
Mon, 16 Jul 2012 16:15:37 +0000 (12:15 -0400)
committerKristian Høgsberg <krh@bitplanet.net>
Mon, 16 Jul 2012 17:35:27 +0000 (13:35 -0400)
More pretty and also consistent with toytoolkit.

Signed-off-by: Tiago Vignatti <tiago.vignatti@intel.com>
src/xwayland/window-manager.c

index e73e588..e131238 100644 (file)
@@ -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");