X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=openbox%2Fscreen.c;h=f424ca041c13480c076eea71840da70878bb3649;hb=4a45cabd4fb99ac787a3f84f89541e1c76e578b4;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;