summaryrefslogtreecommitdiff
path: root/openbox/moveresize.c
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-09-29 07:41:11 +0000
committerDana Jansens <danakj@orodu.net>2003-09-29 07:41:11 +0000
commit638fc4b70b550fa1e39667cb5f3d0263c3e8b34e (patch)
treea3c1219d48c505f011f70c925fe6eb4e66859361 /openbox/moveresize.c
parent8feba8518b4c990e91e7d870172b07d8489e4a1e (diff)
dont start a move/resize on clients that cant do it
Diffstat (limited to 'openbox/moveresize.c')
-rw-r--r--openbox/moveresize.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/openbox/moveresize.c b/openbox/moveresize.c
index 41bb2d2a..9f0f41ba 100644
--- a/openbox/moveresize.c
+++ b/openbox/moveresize.c
@@ -90,7 +90,13 @@ void moveresize_start(ObClient *c, int x, int y, guint b, guint32 cnr)
{
ObCursor cur;
- if (moveresize_in_progress || !c->frame->visible)
+ moving = (cnr == prop_atoms.net_wm_moveresize_move ||
+ cnr == prop_atoms.net_wm_moveresize_move_keyboard);
+
+ if (moveresize_in_progress || !c->frame->visible ||
+ !(moving ?
+ (c->functions & OB_CLIENT_FUNC_MOVE) :
+ (c->functions & OB_CLIENT_FUNC_RESIZE)))
return;
moveresize_client = c;
@@ -116,15 +122,12 @@ void moveresize_start(ObClient *c, int x, int y, guint b, guint32 cnr)
c->area.width / 2, c->area.height / 2);
*/
- if (corner == prop_atoms.net_wm_moveresize_move ||
- corner == prop_atoms.net_wm_moveresize_move_keyboard) {
+ if (moving) {
cur_x = start_cx;
cur_y = start_cy;
- moving = TRUE;
} else {
cur_x = start_cw;
cur_y = start_ch;
- moving = FALSE;
}
moveresize_in_progress = TRUE;