summaryrefslogtreecommitdiff
path: root/src/Screen.cc
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2002-05-30 06:51:43 +0000
committerDana Jansens <danakj@orodu.net>2002-05-30 06:51:43 +0000
commit5336c900d07804589600c8af9d838c12dec7ab1c (patch)
treef19fb7a54739280475e6d7df8f88f1c56eb0eb76 /src/Screen.cc
parent23640740ca6659ee4effb9e5c040900e0bbdeb59 (diff)
merge in netwm branch at tag netwm-merge2
Diffstat (limited to 'src/Screen.cc')
-rw-r--r--src/Screen.cc15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/Screen.cc b/src/Screen.cc
index 23638ae9..d22999ef 100644
--- a/src/Screen.cc
+++ b/src/Screen.cc
@@ -137,7 +137,7 @@ BScreen::BScreen(Blackbox *bb, unsigned int scrn) : ScreenInfo(bb, scrn) {
xatom->setSupported(this); // set-up netwm support
#ifdef HAVE_GETPID
- xatom->setValue(getRootWindow(), XAtom::blackbox_pid, XAtom::Type_Cardinal,
+ xatom->setValue(getRootWindow(), XAtom::blackbox_pid, XAtom::cardinal,
(unsigned long) getpid());
#endif // HAVE_GETPID
@@ -230,10 +230,16 @@ BScreen::BScreen(Blackbox *bb, unsigned int scrn) : ScreenInfo(bb, scrn) {
}
saveWorkspaceNames();
+ updateNetizenWorkspaceCount();
+
workspacemenu->insert(i18n(IconSet, IconIcons, "Icons"), iconmenu);
workspacemenu->update();
current_workspace = workspacesList.front();
+
+ xatom->setValue(getRootWindow(), XAtom::net_current_desktop,
+ XAtom::cardinal, 0); //first workspace
+
workspacemenu->setItemSelected(2, True);
toolbar = new Toolbar(this);
@@ -1020,6 +1026,10 @@ void BScreen::changeWorkspaceID(unsigned int id) {
current_workspace = getWorkspace(id);
+ xatom->setValue(getRootWindow(), XAtom::net_current_desktop,
+ XAtom::cardinal, id);
+ printf("%d\n", id);
+
workspacemenu->setItemSelected(current_workspace->getID() + 2, True);
toolbar->redrawWorkspaceLabel(True);
@@ -1107,6 +1117,9 @@ void BScreen::removeNetizen(Window w) {
}
+ xatom->setValue(getRootWindow(), XAtom::net_number_of_desktops,
+ XAtom::cardinal, workspacesList.size());
+
void BScreen::updateNetizenCurrentWorkspace(void) {
std::for_each(netizenList.begin(), netizenList.end(),
std::mem_fun(&Netizen::sendCurrentWorkspace));