commit 41b359a115adfcd38983a47836af0a1ce803cda4
Author: Andrzej <ndrwrdck@gmail.com>
Date:   Sun Nov 27 05:23:29 2011 +0900

    screen: propagating updates to the screen.

diff --git a/libwnck/screen.c b/libwnck/screen.c
index f00e0eb..3d3bd5e 100644
--- a/libwnck/screen.c
+++ b/libwnck/screen.c
@@ -2701,6 +2701,8 @@ wnck_screen_try_set_workspace_layout (WnckScreen *screen,
 
   if (retval != WNCK_NO_MANAGER_TOKEN)
     {
+      screen->priv->rows_of_workspaces = rows;
+      screen->priv->columns_of_workspaces = columns;
       orientation = screen->priv->vertical_workspaces ?
         WNCK_LAYOUT_ORIENTATION_VERTICAL :
         WNCK_LAYOUT_ORIENTATION_HORIZONTAL;
@@ -2756,6 +2758,7 @@ wnck_screen_try_set_workspace_orientation (WnckScreen             *screen,
 
   if (retval != WNCK_NO_MANAGER_TOKEN)
     {
+      screen->priv->vertical_workspaces = (orientation == WNCK_LAYOUT_ORIENTATION_VERTICAL);
       _wnck_set_desktop_layout_all (screen->priv->xscreen,
                                     orientation,
                                     screen->priv->rows_of_workspaces,
@@ -2812,6 +2815,7 @@ wnck_screen_try_set_workspace_corner (WnckScreen        *screen,
 
   if (retval != WNCK_NO_MANAGER_TOKEN)
     {
+      screen->priv->starting_corner = starting_corner;
       orientation = screen->priv->vertical_workspaces ?
         WNCK_LAYOUT_ORIENTATION_VERTICAL :
         WNCK_LAYOUT_ORIENTATION_HORIZONTAL;
