X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fmoveresize.c;h=837f3e92feec451dd59993944d42fa9f785fc36e;hb=ed4d0ca31a9c1c6c815cb87a058bb1d36a0888c1;hp=37c190d507cb23e56af98c1a7dc8147b3ba64baa;hpb=627125a6c6e6728de98aa813e353ec75bab7b54c;p=chaz%2Fopenbox diff --git a/openbox/moveresize.c b/openbox/moveresize.c index 37c190d5..837f3e92 100644 --- a/openbox/moveresize.c +++ b/openbox/moveresize.c @@ -162,35 +162,36 @@ void moveresize_start(ObClient *c, gint x, gint y, guint b, guint32 cnr) (c->functions & OB_CLIENT_FUNC_RESIZE))) return; - if (corner == prop_atoms.net_wm_moveresize_size_topleft) + if (cnr == prop_atoms.net_wm_moveresize_size_topleft) cur = OB_CURSOR_NORTHWEST; - else if (corner == prop_atoms.net_wm_moveresize_size_top) + else if (cnr == prop_atoms.net_wm_moveresize_size_top) cur = OB_CURSOR_NORTH; - else if (corner == prop_atoms.net_wm_moveresize_size_topright) + else if (cnr == prop_atoms.net_wm_moveresize_size_topright) cur = OB_CURSOR_NORTHEAST; - else if (corner == prop_atoms.net_wm_moveresize_size_right) + else if (cnr == prop_atoms.net_wm_moveresize_size_right) cur = OB_CURSOR_EAST; - else if (corner == prop_atoms.net_wm_moveresize_size_bottomright) + else if (cnr == prop_atoms.net_wm_moveresize_size_bottomright) cur = OB_CURSOR_SOUTHEAST; - else if (corner == prop_atoms.net_wm_moveresize_size_bottom) + else if (cnr == prop_atoms.net_wm_moveresize_size_bottom) cur = OB_CURSOR_SOUTH; - else if (corner == prop_atoms.net_wm_moveresize_size_bottomleft) + else if (cnr == prop_atoms.net_wm_moveresize_size_bottomleft) cur = OB_CURSOR_SOUTHWEST; - else if (corner == prop_atoms.net_wm_moveresize_size_left) + else if (cnr == prop_atoms.net_wm_moveresize_size_left) cur = OB_CURSOR_WEST; - else if (corner == prop_atoms.net_wm_moveresize_size_keyboard) + else if (cnr == prop_atoms.net_wm_moveresize_size_keyboard) cur = OB_CURSOR_SOUTHEAST; - else if (corner == prop_atoms.net_wm_moveresize_move) + else if (cnr == prop_atoms.net_wm_moveresize_move) cur = OB_CURSOR_MOVE; - else if (corner == prop_atoms.net_wm_moveresize_move_keyboard) + else if (cnr == prop_atoms.net_wm_moveresize_move_keyboard) cur = OB_CURSOR_MOVE; else g_assert_not_reached(); - if (!grab_pointer(TRUE, FALSE, cur)) + /* keep the pointer bounded to the screen for move/resize */ + if (!grab_pointer(FALSE, TRUE, cur)) return; - if (!grab_keyboard(TRUE)) { - grab_pointer(FALSE, FALSE, OB_CURSOR_NONE); + if (!grab_keyboard()) { + ungrab_pointer(); return; } @@ -275,8 +276,8 @@ void moveresize_end(gboolean cancel) { gint x, y; - grab_keyboard(FALSE); - grab_pointer(FALSE, FALSE, OB_CURSOR_NONE); + ungrab_keyboard(); + ungrab_pointer(); popup_hide(popup);