* Unified the Desktop and ServerApp AS_ACTIVATE_WORKSPACE to work in the same

way.
* Use that newly exposed feature of taking the focus window to the new workspace
  when using the Ctrl-Alt-Shift-Arrow shortcut.
* This fixes #5675.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36585 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2010-05-02 17:15:13 +00:00
parent 8104bd5422
commit 0a51dbde98
3 changed files with 11 additions and 18 deletions
+6 -17
View File
@@ -1,5 +1,5 @@
/*
* Copyright 2001-2009, Haiku.
* Copyright 2001-2010, Haiku.
* Distributed under the terms of the MIT License.
*
* Authors:
@@ -941,22 +941,11 @@ BWindow::DispatchMessage(BMessage* msg, BHandler* target)
int32 next = nextColumn + nextRow * columns;
if (next != current) {
uint32 workspaces = 0;
if (takeMeThere) {
workspaces = Workspaces() | (1 << next);
// add the next workspaces to the workspaces
if (workspaces != Workspaces())
SetWorkspaces(workspaces);
}
// switch to it
activate_workspace(next);
if (takeMeThere && workspaces != B_ALL_WORKSPACES) {
workspaces &= ~(1 << current);
SetWorkspaces(workspaces);
}
BPrivate::AppServerLink link;
link.StartMessage(AS_ACTIVATE_WORKSPACE);
link.Attach<int32>(next);
link.Attach<bool>(true);
link.Flush();
}
break;
}