added cycling to the grid stuff
Scott Moynes smoynes@nexus.carleton.ca
1 files changed,
14 insertions(+),
0 deletions(-)
jump to
M
util/epist/screen.cc
→
util/epist/screen.cc
@@ -588,15 +588,29 @@
if (width > _num_desktops || width <= 0) return; + // a cookie to the person that makes this pretty if (num < 0) { int wnum = _active_desktop - width; if (wnum >= 0) changeWorkspace(wnum); + else { + wnum = _num_desktops/width * width + _active_desktop; + if (wnum >= _num_desktops) + wnum = _num_desktops - 1; + changeWorkspace(wnum); + } } else { int wnum = _active_desktop + width; if (wnum < _num_desktops) changeWorkspace(wnum); + else { + wnum = (_active_desktop + width) % _num_desktops - 1; + if (wnum < 0) + wnum = 0; + changeWorkspace(wnum); + } + } }