aboutsummaryrefslogtreecommitdiff
path: root/src/Ewmh.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ewmh.cc')
-rw-r--r--src/Ewmh.cc10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/Ewmh.cc b/src/Ewmh.cc
index 843b8d2..46bb94e 100644
--- a/src/Ewmh.cc
+++ b/src/Ewmh.cc
@@ -241,7 +241,8 @@ void Ewmh::setupFrame(FluxboxWindow &win) {
241 win.setWorkspace(desktop); 241 win.setWorkspace(desktop);
242 242
243 XFree(data); 243 XFree(data);
244 } 244 } else
245 updateWorkspace(win);
245 246
246} 247}
247 248
@@ -265,6 +266,10 @@ void Ewmh::updateFocusedWindow(BScreen &screen, Window win) {
265 (unsigned char *)&win, 1); 266 (unsigned char *)&win, 1);
266} 267}
267 268
269void Ewmh::updateClientClose(WinClient &winclient){
270 updateClientList(winclient.screen());
271}
272
268void Ewmh::updateClientList(BScreen &screen) { 273void Ewmh::updateClientList(BScreen &screen) {
269 size_t num=0; 274 size_t num=0;
270 275
@@ -568,7 +573,8 @@ void Ewmh::updateHints(FluxboxWindow &win) {
568} 573}
569 574
570void Ewmh::updateWorkspace(FluxboxWindow &win) { 575void Ewmh::updateWorkspace(FluxboxWindow &win) {
571 long workspace = win.workspaceNumber(); 576 long workspace = win.isInitialized() ? win.workspaceNumber() : win.screen().currentWorkspaceID();
577
572 if (win.isStuck()) 578 if (win.isStuck())
573 workspace = 0xFFFFFFFF; // appear on all desktops/workspaces 579 workspace = 0xFFFFFFFF; // appear on all desktops/workspaces
574 580