all repos — openbox @ b8c0c7af126928fde8c4bb4a90d10f6d86fd0d75

openbox fork - make it a bit more like ryudo

dont snap things around crazy with small windows in resistance mode
Dana Jansens danakj@orodu.net
commit

b8c0c7af126928fde8c4bb4a90d10f6d86fd0d75

parent

a2a348c233247315e39c8a677064da51de57a9d5

1 files changed, 7 insertions(+), 4 deletions(-)

jump to
M src/Window.ccsrc/Window.cc

@@ -3193,12 +3193,14 @@ dleft = wright - offsetrect.left();

dright = offsetrect.right() - wleft; // snap left of other window? - if (dleft >= 0 && dleft < resistance_size) { + if (dleft >= 0 && dleft < resistance_size && + dleft < (wright - wleft)) { dx = offsetrect.left() - frame.rect.width(); snapped = True; } // snap right of other window? - else if (dright >= 0 && dright < resistance_size) { + else if (dright >= 0 && dright < resistance_size && + dright < (wright - wleft)) { dx = offsetrect.right() + 1; snapped = True; }

@@ -3258,12 +3260,13 @@ dtop = wbottom - offsetrect.top();

dbottom = offsetrect.bottom() - wtop; // snap top of other window? - if (dtop >= 0 && dtop < resistance_size) { + if (dtop >= 0 && dtop < resistance_size && dtop < (wbottom - wtop)) { dy = offsetrect.top() - frame.rect.height(); snapped = True; } // snap bottom of other window? - else if (dbottom >= 0 && dbottom < resistance_size) { + else if (dbottom >= 0 && dbottom < resistance_size && + dbottom < (wbottom - wtop)) { dy = offsetrect.bottom() + 1; snapped = True; }