X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fscreen.c;h=f424ca041c13480c076eea71840da70878bb3649;hb=20cb425fd31b86febacbc3e80fba94e88f0ef016;hp=08b2d74036dc663f625d3b77be2eb2f8004df586;hpb=5d5156dcb3a18a271880b16f951d83bfda0fed03;p=chaz%2Fopenbox diff --git a/openbox/screen.c b/openbox/screen.c index 08b2d740..f424ca04 100644 --- a/openbox/screen.c +++ b/openbox/screen.c @@ -508,10 +508,11 @@ void screen_set_desktop(guint num, gboolean dofocus) g_assert(num < screen_num_desktops); - if (old == num) return; - old = screen_desktop; screen_desktop = num; + + if (old == num) return; + PROP_SET32(RootWindow(ob_display, ob_screen), net_current_desktop, cardinal, num); @@ -532,7 +533,8 @@ void screen_set_desktop(guint num, gboolean dofocus) } } - if (focus_client && (focus_client->desktop == DESKTOP_ALL || + if (focus_client && ((client_normal(focus_client) && + focus_client->desktop == DESKTOP_ALL) || focus_client->desktop == screen_desktop)) dofocus = FALSE;