diff options
Diffstat (limited to 'src/client.c')
-rw-r--r-- | src/client.c | 44 |
1 files changed, 39 insertions, 5 deletions
diff --git a/src/client.c b/src/client.c index 175e984de..3a9218f49 100644 --- a/src/client.c +++ b/src/client.c @@ -2595,8 +2595,6 @@ clientEnterContextMenuState (Client * c) void clientSetLayer (Client * c, guint l) { - ScreenInfo *screen_info; - DisplayInfo *display_info; GList *list_of_windows = NULL; GList *list = NULL; Client *c2 = NULL; @@ -2604,9 +2602,6 @@ clientSetLayer (Client * c, guint l) g_return_if_fail (c != NULL); TRACE ("entering clientSetLayer for \"%s\" (0x%lx) on layer %d", c->name, c->window, l); - screen_info = c->screen_info; - display_info = screen_info->display_info; - list_of_windows = clientListTransientOrModal (c); for (list = list_of_windows; list; list = g_list_next (list)) { @@ -3404,6 +3399,45 @@ clientScreenResize(ScreenInfo *screen_info, gboolean fully_visible) g_list_free (list_of_windows); } +void +clientUpdateCursor (Client *c) +{ + ScreenInfo *screen_info; + DisplayInfo *display_info; + guint i; + + g_return_if_fail (c != NULL); + + screen_info = c->screen_info; + display_info = screen_info->display_info; + + for (i = 0; i <= SIDE_TOP; i++) + { + xfwmWindowSetCursor (&c->sides[i], + myDisplayGetCursorResize(display_info, CORNER_COUNT + i)); + } + + for (i = 0; i < CORNER_COUNT; i++) + { + xfwmWindowSetCursor (&c->corners[i], + myDisplayGetCursorResize(display_info, i)); + } +} + +void +clientUpdateAllCursor (ScreenInfo *screen_info) +{ + Client *c; + guint i; + + g_return_if_fail (screen_info != NULL); + + for (c = screen_info->clients, i = 0; i < screen_info->client_count; c = c->next, ++i) + { + clientUpdateCursor (c); + } +} + static eventFilterStatus clientButtonPressEventFilter (XEvent * xevent, gpointer data) { |