Posted by member 37809 on 2003-06-26 16:00:45 link

The problem with this not being hardcoded is that you lose the ability to drag windows to an edge to effectively move windows to different desktops.

Well, this is the case last I tried, years ago with hotspots. I think once you hit the hotspot with a window being dragged, you lose 'hold' or focus of the window you are dragging. Either that or once you switch desktops, the window is at the same place when it hits the edge.

The dragging of windows using VWMs that have this built-in do get moved, in such a manner that the reality of the VWM is heightened (ever so slightly). For example, if you have virtual desktops in a horizontal row, you can drag a window to the right edge, and it will appear in the next desktop, though now at the left edge, still at your control (you still are in the process of moving of the window until you release the mouse button). I think with ckVWM, this even holds true for when you wrap desktops. I do not remember if I tried to recreate this correct behavior in my script, but anyway, the ability to drag windows amongst desks is largely the only reason I think anyone would use this feature at discussion.

I once suggested that this feature of switching desktops on edges should only work when the user was dragging a window. If you could detect if the user was in the process of moving a window and you hit a screen edge, then and only then switch desks. I still think this is cool, though I hear from programmers that you cannot detect if a window is currently being dragged. I wish to believe that all you have to do is check when there is a mouse click down on a titlebar (to initiate the dragging/moving of a window), and then temporarily enable this edge-switching behavior, disabling it once you release the mouse button.