wmaker: Allow window snapping and linked workspaces simultaneously.

If workspaces are linked, then windows will only snap to the top or bottom
of the screen.

Suggested-by: Josip Deanovic <djosip+news@linuxpages.net>
This commit is contained in:
Doug Torrance authored and Carlos R. Mafra committed 2015-06-23 15:56:27 +01:00
1 parent e666cfc6a5
commit 791fdd1eff
2 files changed
+10 -5

No files matched your search

+4 -4
View File
@@ -12,10 +12,10 @@ screen, by dragging it to that side or corner. It is enabled by setting
"WindowSnapping = YES" in ~/GNUstep/Defaults/WindowMaker or selecting "Enable
window snapping" under "Expert User Preferences" in WPrefs.app.
Note that window snapping is automatically disabled if "Switch workspaces while
dragging windows" is selected under "Workspace Preferences" in WPrefs.app, or
if "DontLinkWorkspaces = NO" in ~/GNUstep/Defaults/WindowMaker, as this feature
also involves dragging a window to one side of the screen.
Note that if "Switch workspaces while dragging windows" is selected under
"Workspace Preferences" in WPrefs.app, or if "DontLinkWorkspaces = NO" in
~/GNUstep/Defaults/WindowMaker, then you may only snap a window to the top or
bottom of the screen.
Dragging maximized windows
+6 -1
View File
@@ -1766,11 +1766,16 @@ int wMouseMoveWindow(WWindow * wwin, XEvent * ev)
break;
case MotionNotify:
if (IS_RESIZABLE(wwin) && wPreferences.window_snapping && wPreferences.no_autowrap) {
if (IS_RESIZABLE(wwin) && wPreferences.window_snapping) {
int snap_direction;
snap_direction = get_snap_direction(scr, moveData.mouseX, moveData.mouseY);
if (!wPreferences.no_autowrap &&
snap_direction != SNAP_TOP &&
snap_direction != SNAP_BOTTOM)
snap_direction = SNAP_NONE;
if (moveData.snap != snap_direction) {
/* erase old frame */
if (moveData.snap)