Index: gnome-control-center-3.6.3/shell/gnome-control-center.c
===================================================================
--- gnome-control-center-3.6.3.orig/shell/gnome-control-center.c	2012-11-24 10:39:18.476282140 -0500
+++ gnome-control-center-3.6.3/shell/gnome-control-center.c	2012-11-24 10:52:26.776249171 -0500
@@ -50,7 +50,8 @@
  * for the user than resizing vertically
  * Both sizes are defined in https://live.gnome.org/Design/SystemSettings/ */
 #define FIXED_WIDTH 740
-#define FIXED_HEIGHT 636
+#define UNITY_FIXED_WIDTH 850
+#define FIXED_HEIGHT 650
 #define SMALL_SCREEN_FIXED_HEIGHT 400
 
 #define MIN_ICON_VIEW_HEIGHT 300
@@ -910,8 +911,12 @@
       gtk_widget_show (W (priv->builder, "search-entry"));
       gtk_widget_hide (W (priv->builder, "lock-button"));
 
-      gtk_widget_get_preferred_height_for_width (GTK_WIDGET (priv->main_vbox),
-                                                 FIXED_WIDTH, NULL, &nat_height);
+      if (!g_strcmp0(g_getenv("XDG_CURRENT_DESKTOP"), "Unity"))
+        gtk_widget_get_preferred_height_for_width (GTK_WIDGET (priv->main_vbox),
+                                                   UNITY_FIXED_WIDTH, NULL, &nat_height);
+      else
+        gtk_widget_get_preferred_height_for_width (GTK_WIDGET (priv->main_vbox),
+                                                   FIXED_WIDTH, NULL, &nat_height);
       gtk_scrolled_window_set_min_content_height (GTK_SCROLLED_WINDOW (priv->scrolled_window),
                                                   priv->small_screen == SMALL_SCREEN_TRUE ? SMALL_SCREEN_FIXED_HEIGHT : nat_height);
     }
@@ -921,12 +926,22 @@
       gtk_widget_hide (W (priv->builder, "search-entry"));
       /* set the scrolled window small so that it doesn't force
          the window to be larger than this panel */
-      gtk_widget_get_preferred_height_for_width (GTK_WIDGET (priv->window),
-                                                 FIXED_WIDTH, NULL, &nat_height);
-      gtk_scrolled_window_set_min_content_height (GTK_SCROLLED_WINDOW (priv->scrolled_window), MIN_ICON_VIEW_HEIGHT);
-      gtk_window_resize (GTK_WINDOW (priv->window),
-                         FIXED_WIDTH,
-                         nat_height);
+      if (!g_strcmp0(g_getenv("XDG_CURRENT_DESKTOP"), "Unity")) {
+        gtk_widget_get_preferred_height_for_width (GTK_WIDGET (priv->window),
+                                                   UNITY_FIXED_WIDTH, NULL, &nat_height);
+        gtk_scrolled_window_set_min_content_height (GTK_SCROLLED_WINDOW (priv->scrolled_window), MIN_ICON_VIEW_HEIGHT);
+        gtk_window_resize (GTK_WINDOW (priv->window),
+                           UNITY_FIXED_WIDTH,
+                           nat_height);
+      }
+      else {
+        gtk_widget_get_preferred_height_for_width (GTK_WIDGET (priv->window),
+                                                   FIXED_WIDTH, NULL, &nat_height);
+        gtk_scrolled_window_set_min_content_height (GTK_SCROLLED_WINDOW (priv->scrolled_window), MIN_ICON_VIEW_HEIGHT);
+        gtk_window_resize (GTK_WINDOW (priv->window),
+                           FIXED_WIDTH,
+                           nat_height);
+      }
     }
 }
 
@@ -1373,7 +1388,10 @@
   /* Main scrolled window */
   priv->scrolled_window = W (priv->builder, "scrolledwindow1");
 
-  gtk_widget_set_size_request (priv->scrolled_window, FIXED_WIDTH, -1);
+  if (!g_strcmp0(g_getenv("XDG_CURRENT_DESKTOP"), "Unity"))
+    gtk_widget_set_size_request (priv->scrolled_window, UNITY_FIXED_WIDTH, -1);
+  else
+    gtk_widget_set_size_request (priv->scrolled_window, FIXED_WIDTH, -1);
   priv->main_vbox = W (priv->builder, "main-vbox");
   g_signal_connect (priv->notebook, "notify::page",
                     G_CALLBACK (notebook_page_notify_cb), priv);
