commit 0364acb2ab6c9de13d84a09be0e16d532e049453
parent 3abbddaebc07658e7f1093d9245fbbf7b96d2cd0
Author: Kris Maglione <kris@suckless.org>
Date: Sat, 29 May 2010 11:38:35 -0400
Fix some managed grabbox move bugs.
Diffstat:
2 files changed, 7 insertions(+), 4 deletions(-)
diff --git a/cmd/wmii/frame.c b/cmd/wmii/frame.c
@@ -620,7 +620,7 @@ frame_focus(Frame *f) {
if(old_a != v->oldsel && f != old_f)
v->oldsel = nil;
- if(v != selview || a != v->sel)
+ if(v != selview || a != v->sel || resizing)
return;
move_focus(old_f, f);
diff --git a/cmd/wmii/layout.c b/cmd/wmii/layout.c
@@ -377,10 +377,13 @@ column_openstack(Area *a, Frame *f, int h) {
static void
column_drop(Area *a, Frame *f, int y) {
Frame *ff;
- int dy;
+ int dy, extra_y;
- for(ff=a->frame; ff; ff=ff->anext)
+ extra_y = Dy(a->r);
+ for(ff=a->frame; ff; ff=ff->anext) {
assert(ff != f);
+ extra_y -= Dy(ff->colr);
+ }
if(a->frame == nil || y <= a->frame->r.min.y) {
f->collapsed = true;
@@ -403,7 +406,7 @@ column_drop(Area *a, Frame *f, int y) {
column_openstack(a, ff, labelh(def.font) - dy);
}else {
f->colr.min.y = y;
- f->colr.max.y = ff->colr.max.y;
+ f->colr.max.y = ff->colr.max.y + extra_y;
ff->colr.max.y = y;
}
column_insert(a, f, ff);