summaryrefslogtreecommitdiff
path: root/openbox
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2007-05-10 03:43:56 +0000
committerDana Jansens <danakj@orodu.net>2007-05-10 03:43:56 +0000
commit902555c95cfdfc20313a26e8740def7e7dcf4dc7 (patch)
tree03bdd1df8b8f0de5b2491435c8e637054e35b389 /openbox
parent7d27d9d398b92e73aa47dd37e4418166c03bf0ca (diff)
the coordiantes are from the client, not the frame
Diffstat (limited to 'openbox')
-rw-r--r--openbox/resist.c8
-rw-r--r--openbox/resist.h6
2 files changed, 14 insertions, 0 deletions
diff --git a/openbox/resist.c b/openbox/resist.c
index 077c4667..729f83fc 100644
--- a/openbox/resist.c
+++ b/openbox/resist.c
@@ -36,6 +36,8 @@ void resist_move_windows(ObClient *c, gint resist, gint *x, gint *y)
if (!resist) return;
+ frame_client_gravity(c->frame, x, y, c->area.width, c->area.height);
+
w = c->frame->area.width;
h = c->frame->area.height;
@@ -112,6 +114,8 @@ void resist_move_windows(ObClient *c, gint resist, gint *x, gint *y)
if (snapx && snapy) break;
}
+
+ frame_frame_gravity(c->frame, x, y, c->area.width, c->area.height);
}
void resist_move_monitors(ObClient *c, gint resist, gint *x, gint *y)
@@ -126,6 +130,8 @@ void resist_move_monitors(ObClient *c, gint resist, gint *x, gint *y)
if (!resist) return;
+ frame_client_gravity(c->frame, x, y, c->area.width, c->area.height);
+
w = c->frame->area.width;
h = c->frame->area.height;
@@ -173,6 +179,8 @@ void resist_move_monitors(ObClient *c, gint resist, gint *x, gint *y)
else if (cb <= pb && b > pb && b < pb + resist)
*y = pb - h + 1;
}
+
+ frame_frame_gravity(c->frame, x, y, c->area.width, c->area.height);
}
void resist_size_windows(ObClient *c, gint resist, gint *w, gint *h,
diff --git a/openbox/resist.h b/openbox/resist.h
index 7c3ed3c3..d61e7f2e 100644
--- a/openbox/resist.h
+++ b/openbox/resist.h
@@ -23,7 +23,13 @@ struct _ObClient;
#include <glib.h>
+/*! @x The client's x destination (in the client's coordinates, not the frame's
+ @y The client's y destination (in the client's coordinates, not the frame's
+*/
void resist_move_windows(struct _ObClient *c, gint resist, gint *x, gint *y);
+/*! @x The client's x destination (in the client's coordinates, not the frame's
+ @y The client's y destination (in the client's coordinates, not the frame's
+*/
void resist_move_monitors(struct _ObClient *c, gint resist, gint *x, gint *y);
void resist_size_windows(struct _ObClient *c, gint resist, gint *w, gint *h,
ObCorner corn);