Description: Fix workspace miniature size calculation wrong for viewport mode
Author: Bin Guo <gb2312@rcn.com>
Debian-Bug: https://bugs.debian.org/785582

--- a/plugins/pager/pager.c
+++ b/plugins/pager/pager.c
@@ -662,6 +662,18 @@ pager_plugin_get_preferred_width (GtkWid
   else if (plugin->miniature_view)
     {
       n_workspaces = wnck_screen_get_workspace_count (plugin->wnck_screen);
+      if (n_workspaces == 1)
+        {
+           WnckWorkspace *active_ws;
+           /* check if we ware in viewport mode */
+           active_ws = wnck_screen_get_active_workspace (plugin->wnck_screen);
+           if (wnck_workspace_is_virtual (active_ws))
+             {
+               /* number of rows * number of columns */
+               n_workspaces = (wnck_workspace_get_width (active_ws) / wnck_screen_get_width (plugin->wnck_screen))
+                               * (wnck_workspace_get_height (active_ws) / wnck_screen_get_height (plugin->wnck_screen));
+             }
+        }
       n_cols = MAX (1, (n_workspaces + plugin->rows - 1) / plugin->rows);
       min_width = nat_width = (gint) (xfce_panel_plugin_get_size (XFCE_PANEL_PLUGIN (plugin)) / plugin->rows * plugin->ratio * n_cols);
     }
