diff -Nur gnome-control-center-2.19.5/capplets/appearance/appearance-effects.c gnome-control-center-2.19.5.new/capplets/appearance/appearance-effects.c
--- gnome-control-center-2.19.5/capplets/appearance/appearance-effects.c	1970-01-01 01:00:00.000000000 +0100
+++ gnome-control-center-2.19.5.new/capplets/appearance/appearance-effects.c	2007-07-30 11:39:45.000000000 +0200
@@ -0,0 +1,624 @@
+/*
+ * Copyright (C) 2007 Canonical
+ * Written by Michael Vogt <mvo@ubuntu.com>
+ * All Rights Reserved
+ *
+ * Based on desktop-effects.c:
+ *   Desktop Effects. A preference panel for compiz.
+ *   Copyright (C) 2006   Red Hat, Inc.
+ * Author: Soren Sandmann (sandmann@redhat.com) *
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#include <glib.h>
+#include <glib/gstdio.h>
+#include <X11/Xlib.h>
+#include <X11/Xatom.h>
+#include <gdk/gdkx.h>
+
+#include "appearance.h"
+
+#include "gconf-property-editor.h"
+
+typedef enum
+{
+    COMPIZ,
+    METACITY
+} WindowManager;
+
+#define WINDOW_MANAGER_KEY "/desktop/gnome/applications/window_manager/default"
+#define COMPIZ_BIN "/usr/bin/compiz"
+#define METACITY_BIN "/usr/bin/metacity"
+#define REVERT_COUNT 40
+#define SECONDS_WE_WILL_WAIT_FOR_COMPIZ_TO_START 8
+
+static const char *effect_choices[] = {"no_effects_button", "normal_effects_button", "extra_effects_button",};
+
+static const char* gconf_extra_effects[] = {
+   "/apps/compiz/plugins/ring/allscreens/options/____plugin_enabled",
+   "/apps/compiz/plugins/blur/allscreens/options/____plugin_enabled",
+   "/apps/compiz/plugins/wobbly/allscreens/options/____plugin_enabled",
+   NULL
+};
+
+static gboolean
+check_graphics_driver ()
+{
+    return system ("restricted-manager --check-composite") == 0;
+}
+
+static void
+show_info (const char *text)
+{
+    GtkWidget *dialog;
+    
+    dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL,
+				     GTK_MESSAGE_INFO,
+				     GTK_BUTTONS_OK,
+				     text);
+    
+    gtk_dialog_run (GTK_DIALOG (dialog));
+    gtk_widget_destroy (dialog);
+}
+
+static void
+apply_settings (AppearanceData *app, gboolean effects_enabled)
+{
+    const char *str = effects_enabled? COMPIZ_BIN : METACITY_BIN;
+    char *session_file;
+    
+    gconf_client_set_string (app->client,
+			     WINDOW_MANAGER_KEY,
+			     str, NULL);
+    
+    session_file = g_build_filename (g_get_home_dir (),
+				     ".gnome2", "session", NULL);
+    g_unlink (session_file);
+    g_free (session_file);
+}
+
+
+static void
+set_busy (GtkWidget *widget, gboolean busy)
+{
+    GdkCursor *cursor;
+    
+    if (busy)
+	cursor = gdk_cursor_new (GDK_WATCH);
+    else
+	cursor = NULL;
+    
+    gdk_window_set_cursor (widget->window, cursor);
+    
+    if (cursor)
+	gdk_cursor_unref (cursor);
+    
+    gdk_flush ();
+}
+
+/* get_wm_window() and current_window_manager() are essentially cutted and pasted
+ * from gnome-wm.c from gnome-control-center.
+ */
+static Window
+get_wm_window (void)
+{
+    Window *xwindow;
+    Atom type;
+    gint format;
+    gulong nitems;
+    gulong bytes_after;
+    Window result;
+    
+    XGetWindowProperty (GDK_DISPLAY (), GDK_ROOT_WINDOW (),
+			XInternAtom (GDK_DISPLAY (), "_NET_SUPPORTING_WM_CHECK", False),
+			0, G_MAXLONG, False, XA_WINDOW, &type, &format,
+			&nitems, &bytes_after, (guchar **) &xwindow);
+    
+    if (type != XA_WINDOW)
+    {
+	return None;
+    }
+    
+    gdk_error_trap_push ();
+    XSelectInput (GDK_DISPLAY (), *xwindow, StructureNotifyMask | PropertyChangeMask);
+    XSync (GDK_DISPLAY (), False);
+    
+    if (gdk_error_trap_pop ())
+    {
+	XFree (xwindow);
+	return None;
+    }
+    
+    result = *xwindow;
+    XFree (xwindow);
+    
+    return result;
+}
+
+static char*
+get_current_window_manager (void)
+{
+    Atom utf8_string, atom, type;
+    int result;
+    char *retval;
+    int format;
+    gulong nitems;
+    gulong bytes_after;
+    guchar *val;
+    Window wm_window = get_wm_window ();
+    
+    utf8_string = XInternAtom (GDK_DISPLAY (), "UTF8_STRING", False);
+    atom = XInternAtom (GDK_DISPLAY (), "_NET_WM_NAME", False);
+    
+    gdk_error_trap_push ();
+    
+    result = XGetWindowProperty (GDK_DISPLAY (),
+				 wm_window,
+				 atom,
+				 0, G_MAXLONG,
+				 False, utf8_string,
+				 &type, &format, &nitems,
+				 &bytes_after, (guchar **)&val);
+    
+    if (gdk_error_trap_pop () || result != Success)
+	return NULL;
+    
+    if (type != utf8_string ||
+	format !=8 ||
+	nitems == 0)
+    {
+	if (val)
+	    XFree (val);
+	return NULL;
+    }
+    
+    if (!g_utf8_validate (val, nitems, NULL))
+    {
+	XFree (val);
+	return NULL;
+    }
+    
+    retval = g_strndup (val, nitems);
+    
+    XFree (val);
+    
+    return retval;
+}
+
+static gboolean
+compiz_started (void)
+{
+    gboolean result;
+    char *wm = get_current_window_manager ();
+    
+    result = wm && strcmp (wm, "compiz") == 0;
+    
+    g_free (wm);
+    
+    return result;
+}
+
+typedef struct TimedDialogInfo
+{
+    AppearanceData *app;
+    GTimer *timer;
+    GtkWidget *button;
+} TimedDialogInfo;
+
+
+
+static WindowManager
+current_configured_wm (AppearanceData *app,
+		       GError **err)
+{
+    GError *tmp = NULL;
+    
+    const char *str = gconf_client_get_string (app->client,
+					       WINDOW_MANAGER_KEY,
+					       &tmp);
+    
+    if (tmp)
+    {
+	g_propagate_error (err, tmp);
+	return METACITY;
+    }
+    
+    if (str && strcmp (str, "/usr/bin/compiz") == 0)
+    {
+	return COMPIZ;
+    }
+    else
+    {
+	return METACITY;
+    }
+}
+
+static void
+show_error (const GError *err)
+{
+    if (!err)
+	return;
+    
+    GtkWidget *dialog = gtk_message_dialog_new (
+	NULL,
+	GTK_DIALOG_DESTROY_WITH_PARENT,
+	GTK_MESSAGE_WARNING,
+	GTK_BUTTONS_OK, err->message);
+    
+    gtk_window_set_title (GTK_WINDOW (dialog), "");
+    
+    gtk_dialog_run (GTK_DIALOG (dialog));
+    gtk_widget_destroy (dialog);
+}
+
+struct TimeoutData
+{
+    int time;
+    GtkLabel *label;
+    GtkDialog *dialog;
+    gboolean timed_out;
+};
+
+static gboolean
+free_at_idle (gpointer data)
+{
+    g_free (data);
+    return FALSE;
+}
+
+static char *
+idle_free (char *str)
+{
+    g_idle_add (free_at_idle, str);
+    return str;
+}
+
+static char *
+timeout_string (int time)
+{
+    char *str = g_strdup_printf (ngettext ("Testing the new settings. If you don't respond in %d second the previous settings will be restored.", "Testing the new settings. If you don't respond in %d seconds the previous settings will be restored.", time), time);
+    
+    return idle_free (str);
+}
+
+static gboolean
+save_timeout_callback (gpointer _data)
+{
+    struct TimeoutData *data = _data;
+    
+    data->time--;
+    
+    if (data->time == 0)
+    {
+	gtk_dialog_response (data->dialog, GTK_RESPONSE_NO);
+	data->timed_out = TRUE;
+	return FALSE;
+    }
+    
+    gtk_label_set_text (data->label, timeout_string (data->time));
+    
+    return TRUE;
+}
+
+static gboolean
+run_timed_dialog (AppearanceData *app)
+{
+    GtkWidget *dialog;
+    GtkWidget *hbox;
+    GtkWidget *vbox;
+    GtkWidget *label;
+    GtkWidget *label_sec;
+    GtkWidget *image;
+    int res;
+    struct TimeoutData timeout_data;
+    guint timeout;
+    
+    dialog = gtk_dialog_new ();
+    gtk_window_set_transient_for (
+	GTK_WINDOW (dialog), GTK_WINDOW (app->dialog));
+    gtk_window_set_destroy_with_parent (GTK_WINDOW (dialog), TRUE);
+    gtk_window_set_modal (GTK_WINDOW (dialog), TRUE);
+    gtk_container_set_border_width (GTK_CONTAINER (dialog), 12);
+    gtk_dialog_set_has_separator (GTK_DIALOG (dialog), FALSE);
+    gtk_window_set_title (GTK_WINDOW (dialog), _("Keep Settings"));
+    gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_CENTER_ALWAYS);
+    
+    label = gtk_label_new (NULL);
+    gtk_label_set_markup (GTK_LABEL (label), idle_free (
+			      g_strdup_printf ("<b>%s</b>",
+					       _("Do you want to keep these settings?"))));
+    image = gtk_image_new_from_stock (GTK_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG);
+    gtk_misc_set_alignment (GTK_MISC (image), 0.5, 0.0);
+    
+    gtk_label_set_line_wrap (GTK_LABEL (label), TRUE);
+    gtk_label_set_selectable (GTK_LABEL (label), TRUE);
+    gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5);
+    
+    label_sec = gtk_label_new (timeout_string (REVERT_COUNT));
+    gtk_label_set_line_wrap (GTK_LABEL (label_sec), TRUE);
+    gtk_label_set_selectable (GTK_LABEL (label_sec), TRUE);
+    gtk_misc_set_alignment (GTK_MISC (label_sec), 0.0, 0.5);
+    
+    hbox = gtk_hbox_new (FALSE, 6);
+    vbox = gtk_vbox_new (FALSE, 6);
+    
+    gtk_box_pack_start (GTK_BOX (vbox), label, TRUE, TRUE, 0);
+    gtk_box_pack_start (GTK_BOX (vbox), label_sec, TRUE, TRUE, 0);
+    gtk_box_pack_start (GTK_BOX (hbox), image, FALSE, FALSE, 0);
+    gtk_box_pack_start (GTK_BOX (hbox), vbox, TRUE, TRUE, 0);
+    gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), hbox, FALSE, FALSE, 0);
+    gtk_dialog_add_buttons (GTK_DIALOG (dialog),
+			    _("Use _previous settings"), GTK_RESPONSE_NO,
+			    _("_Keep settings"), GTK_RESPONSE_YES, NULL);
+    
+    gtk_widget_show_all (hbox);
+    
+    timeout_data.time = REVERT_COUNT;
+    timeout_data.label = GTK_LABEL (label_sec);
+    timeout_data.dialog = GTK_DIALOG (dialog);
+    timeout_data.timed_out = FALSE;
+    
+    timeout = g_timeout_add (1000, save_timeout_callback, &timeout_data);
+    res = gtk_dialog_run (GTK_DIALOG (dialog));
+    
+    if (!timeout_data.timed_out)
+	g_source_remove (timeout);
+    
+    gtk_widget_destroy (dialog);
+    
+    return (res == GTK_RESPONSE_YES);
+}
+
+static gboolean
+show_dialog_timeout (gpointer data)
+{
+    TimedDialogInfo *info = data;
+    gboolean has_compiz;
+    
+    gtk_window_present (GTK_WINDOW (info->app->dialog));
+    
+    has_compiz = compiz_started();
+    
+    if (has_compiz || g_timer_elapsed (info->timer, NULL) > SECONDS_WE_WILL_WAIT_FOR_COMPIZ_TO_START)
+    {
+	if (has_compiz)
+	{
+	    set_busy (info->app->dialog, FALSE);
+	
+	    if (run_timed_dialog (info->app))
+		apply_settings (info->app, info->app->desktop_effects_level >= 1);
+	    else
+		gtk_toggle_button_set_active (info->button, TRUE);
+	}
+	else
+	{
+	    GtkWidget *dialog;
+
+	    gtk_toggle_button_set_active (info->button, TRUE);
+
+	    set_busy (info->app->dialog, FALSE);
+	
+	    dialog = gtk_message_dialog_new (
+		(GtkWindow *)info->app->dialog,
+		GTK_DIALOG_DESTROY_WITH_PARENT,
+		GTK_MESSAGE_WARNING,
+		GTK_BUTTONS_OK, _("Desktop effects could not be enabled"));
+	    
+	    gtk_window_set_title (GTK_WINDOW (dialog), "");
+	    gtk_dialog_run (GTK_DIALOG (dialog));
+	    gtk_widget_destroy (dialog);
+	}
+	
+	gtk_widget_set_sensitive (info->app->dialog, TRUE);
+	
+	g_timer_destroy (info->timer);
+	g_free (info);
+	
+	return FALSE;
+    }
+    
+    return TRUE;
+}
+
+static gboolean
+start_compiz (AppearanceData *app, GError **err)
+{
+    if (!g_spawn_command_line_async ("gtk-window-decorator", err))
+	return FALSE;
+    
+    if (!g_spawn_command_line_async ("compiz --replace", err))
+	return FALSE;
+    
+    app->compiz_running = TRUE;
+    
+    return TRUE;
+}
+
+static gboolean
+start_metacity (AppearanceData *app, GError **err)
+{
+    if (!g_spawn_command_line_async ("metacity --replace", err))
+	return FALSE;
+    
+    app->compiz_running = FALSE;
+    
+    return TRUE;
+}
+
+static gboolean
+has_composite ()
+{
+    int dummy1, dummy2;
+
+    if (XCompositeQueryExtension (GDK_DISPLAY (), &dummy1, &dummy2))
+	return TRUE;
+
+    return FALSE;
+}
+
+static void
+show_alert (const char *text)
+{
+    GtkWidget *dialog;
+    
+    dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_MODAL,
+				     GTK_MESSAGE_ERROR,
+				     GTK_BUTTONS_OK,
+				     text);
+    
+    gtk_dialog_run (GTK_DIALOG (dialog));
+}
+
+static gboolean
+are_extra_effects_enabled (AppearanceData *data)
+{
+   int i;
+   gboolean res = TRUE;
+
+   for(i=0;gconf_extra_effects[i] != NULL; i++)
+      res &= gconf_client_get_bool (data->client, 
+				    gconf_extra_effects[i], NULL);
+
+   return res;
+}
+
+static gint
+get_effects_level (AppearanceData *data)
+{
+	if (data->compiz_running)
+	{
+		if (are_extra_effects_enabled (data))
+			return 2;
+		else 
+			return 1;
+	}
+	else
+		return 0;       
+}
+
+static void on_effects_toggle (GtkWidget *widget,
+			       gpointer user_data)
+{
+	AppearanceData *appdata = user_data;
+	GtkWidget *previously_selected_button;
+	static gint old_effects_level;
+	static gboolean do_init = TRUE;
+	gint i, current_effects_level;
+	GError *err = NULL;
+
+	if (do_init == TRUE)
+	{
+		old_effects_level = get_effects_level (appdata);
+		do_init = FALSE;
+	}
+
+	if (!gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON (widget))) 
+		return;
+
+	previously_selected_button = glade_xml_get_widget(appdata->xml, effect_choices [old_effects_level]);
+
+	/* Look for the button which has been selected */
+	for(i = 0; i < G_N_ELEMENTS (effect_choices); i++) 
+	{
+		if (widget == glade_xml_get_widget(appdata->xml, effect_choices [i]))
+			break;
+	}
+	current_effects_level = i;
+
+	if (current_effects_level >= 1)
+	{		
+		int n;
+
+		if (check_graphics_driver())
+		{
+			show_info (_("Please run \"desktop effects\" again after restarting "
+				     "the computer, when the new graphics driver is active."));
+			g_signal_handlers_block_by_func (widget, on_effects_toggle, appdata);
+			gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (glade_xml_get_widget(appdata->xml, effect_choices [old_effects_level])), TRUE);
+			g_signal_handlers_unblock_by_func (widget, on_effects_toggle, appdata);
+			return;
+		}
+		if (!has_composite())
+		{
+			show_alert ("The Composite extension is not available");
+			return;
+		}
+		if (old_effects_level == 0)
+			start_compiz (appdata, &err);
+
+		for(n=0;gconf_extra_effects[n] != NULL; n++)
+			gconf_client_set_bool (appdata->client, 
+					       gconf_extra_effects[n], 
+					       current_effects_level != 1, NULL);
+	}
+	else 
+	{
+		apply_settings (appdata, FALSE);
+		start_metacity (appdata, &err);
+	}
+	
+	if (err)
+	{
+		show_error (err);
+		
+		g_signal_handlers_block_by_func (widget, on_effects_toggle, appdata);
+		gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (glade_xml_get_widget(appdata->xml, effect_choices [old_effects_level])), TRUE);		
+		g_signal_handlers_unblock_by_func (widget, on_effects_toggle, appdata);
+	}
+	else
+	{
+		if (current_effects_level >= 1 && old_effects_level == 0)
+		{
+			TimedDialogInfo *info = g_new0 (TimedDialogInfo, 1);
+			
+			info->app = appdata;
+			info->button = previously_selected_button;
+			info->timer = g_timer_new ();
+			
+			set_busy (info->app->dialog, TRUE);
+			gtk_widget_set_sensitive (appdata->dialog, FALSE);
+			
+			g_timeout_add (250, show_dialog_timeout, info);
+		}
+	}
+
+	old_effects_level = i;  
+}
+
+void
+effects_init (AppearanceData *data)
+{
+    GError *error = NULL;
+    GtkWidget *level_effects_button;
+    gint i, desktop_effects_level;
+
+    WindowManager wm = current_configured_wm (data, &error);
+    data->compiz_running = (wm == COMPIZ);
+    data->dialog = glade_xml_get_widget(data->xml,
+					"appearance_window");
+
+    desktop_effects_level = get_effects_level (data);
+
+    for(i = 0; i < G_N_ELEMENTS (effect_choices); i++) 
+    {
+	    level_effects_button = glade_xml_get_widget(data->xml, effect_choices[i]);
+
+	    if (i == desktop_effects_level)
+		    gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (level_effects_button), TRUE);
+	    
+	    g_signal_connect (level_effects_button, "toggled", G_CALLBACK (on_effects_toggle), data);
+    }
+}
diff -Nur gnome-control-center-2.19.5/capplets/appearance/appearance-effects.h gnome-control-center-2.19.5.new/capplets/appearance/appearance-effects.h
--- gnome-control-center-2.19.5/capplets/appearance/appearance-effects.h	1970-01-01 01:00:00.000000000 +0100
+++ gnome-control-center-2.19.5.new/capplets/appearance/appearance-effects.h	2007-07-30 11:39:45.000000000 +0200
@@ -0,0 +1,21 @@
+/*
+ * Copyright (C) 2007 Canonical
+ * Written by Michael Vogt <mvo@ubuntu.com>
+ * All Rights Reserved
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+void effects_init (AppearanceData *data);
diff -Nur gnome-control-center-2.19.5/capplets/appearance/appearance.glade gnome-control-center-2.19.5.new/capplets/appearance/appearance.glade
--- gnome-control-center-2.19.5/capplets/appearance/appearance.glade	2007-07-09 15:36:29.000000000 +0200
+++ gnome-control-center-2.19.5.new/capplets/appearance/appearance.glade	2007-07-30 11:40:09.000000000 +0200
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
-<!--Generated with glade3 3.2.2 on Thu Jun  7 14:53:18 2007 by denis@dwashington-->
+<!--Generated with glade3 3.3.1 on Mon Jul 16 19:10:50 2007 by seb@ubuntu-->
 <glade-interface>
   <widget class="GtkDialog" id="render_details">
     <property name="border_width">5</property>
@@ -93,15 +93,17 @@
                       <placeholder/>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox12">
+                      <widget class="GtkVBox" id="vbox14">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="antialias_none_radio">
+                          <widget class="GtkRadioButton" id="antialias_subpixel_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_None</property>
+                            <property name="label" translatable="yes">Sub_pixel (LCDs)</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
+                            <property name="group">antialias_none_radio</property>
                           </widget>
                           <packing>
                             <property name="expand">False</property>
@@ -109,11 +111,11 @@
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkAlignment" id="alignment6">
+                          <widget class="GtkAlignment" id="alignment8">
                             <property name="visible">True</property>
                             <property name="border_width">5</property>
                             <child>
-                              <widget class="GtkDrawingArea" id="antialias_none_sample">
+                              <widget class="GtkDrawingArea" id="antialias_subpixel_sample">
                                 <property name="visible">True</property>
                               </widget>
                             </child>
@@ -124,6 +126,8 @@
                         </child>
                       </widget>
                       <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
                         <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
@@ -136,6 +140,7 @@
                             <property name="can_focus">True</property>
                             <property name="label" translatable="yes">Gra_yscale</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
                             <property name="group">antialias_none_radio</property>
                           </widget>
@@ -166,16 +171,16 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox14">
+                      <widget class="GtkVBox" id="vbox12">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="antialias_subpixel_radio">
+                          <widget class="GtkRadioButton" id="antialias_none_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">Sub_pixel (LCDs)</property>
+                            <property name="label" translatable="yes">_None</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
-                            <property name="group">antialias_none_radio</property>
                           </widget>
                           <packing>
                             <property name="expand">False</property>
@@ -183,11 +188,11 @@
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkAlignment" id="alignment8">
+                          <widget class="GtkAlignment" id="alignment6">
                             <property name="visible">True</property>
                             <property name="border_width">5</property>
                             <child>
-                              <widget class="GtkDrawingArea" id="antialias_subpixel_sample">
+                              <widget class="GtkDrawingArea" id="antialias_none_sample">
                                 <property name="visible">True</property>
                               </widget>
                             </child>
@@ -198,8 +203,6 @@
                         </child>
                       </widget>
                       <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
                         <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
@@ -234,15 +237,17 @@
                     <property name="n_rows">2</property>
                     <property name="n_columns">2</property>
                     <child>
-                      <widget class="GtkVBox" id="vbox15">
+                      <widget class="GtkVBox" id="vbox18">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="hint_none_radio">
+                          <widget class="GtkRadioButton" id="hint_full_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">N_one</property>
+                            <property name="label" translatable="yes">_Full</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
+                            <property name="group">hint_none_radio</property>
                           </widget>
                           <packing>
                             <property name="expand">False</property>
@@ -250,11 +255,11 @@
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkAlignment" id="alignment9">
+                          <widget class="GtkAlignment" id="alignment12">
                             <property name="visible">True</property>
                             <property name="border_width">5</property>
                             <child>
-                              <widget class="GtkDrawingArea" id="hint_none_sample">
+                              <widget class="GtkDrawingArea" id="hint_full_sample">
                                 <property name="visible">True</property>
                               </widget>
                             </child>
@@ -264,16 +269,25 @@
                           </packing>
                         </child>
                       </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options">GTK_FILL</property>
+                      </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox16">
+                      <widget class="GtkVBox" id="vbox17">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="hint_slight_radio">
+                          <widget class="GtkRadioButton" id="hint_medium_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_Slight</property>
+                            <property name="label" translatable="yes">_Medium</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
                             <property name="group">hint_none_radio</property>
                           </widget>
@@ -283,11 +297,11 @@
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkAlignment" id="alignment10">
+                          <widget class="GtkAlignment" id="alignment11">
                             <property name="visible">True</property>
                             <property name="border_width">5</property>
                             <child>
-                              <widget class="GtkDrawingArea" id="hint_slight_sample">
+                              <widget class="GtkDrawingArea" id="hint_medium_sample">
                                 <property name="visible">True</property>
                               </widget>
                             </child>
@@ -298,20 +312,21 @@
                         </child>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="y_options">GTK_FILL</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox17">
+                      <widget class="GtkVBox" id="vbox16">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="hint_medium_radio">
+                          <widget class="GtkRadioButton" id="hint_slight_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_Medium</property>
+                            <property name="label" translatable="yes">_Slight</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
                             <property name="group">hint_none_radio</property>
                           </widget>
@@ -321,11 +336,11 @@
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkAlignment" id="alignment11">
+                          <widget class="GtkAlignment" id="alignment10">
                             <property name="visible">True</property>
                             <property name="border_width">5</property>
                             <child>
-                              <widget class="GtkDrawingArea" id="hint_medium_sample">
+                              <widget class="GtkDrawingArea" id="hint_slight_sample">
                                 <property name="visible">True</property>
                               </widget>
                             </child>
@@ -336,22 +351,22 @@
                         </child>
                       </widget>
                       <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="y_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkVBox" id="vbox18">
+                      <widget class="GtkVBox" id="vbox15">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="hint_full_radio">
+                          <widget class="GtkRadioButton" id="hint_none_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_Full</property>
+                            <property name="label" translatable="yes">N_one</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
-                            <property name="group">hint_none_radio</property>
                           </widget>
                           <packing>
                             <property name="expand">False</property>
@@ -359,11 +374,11 @@
                           </packing>
                         </child>
                         <child>
-                          <widget class="GtkAlignment" id="alignment12">
+                          <widget class="GtkAlignment" id="alignment9">
                             <property name="visible">True</property>
                             <property name="border_width">5</property>
                             <child>
-                              <widget class="GtkDrawingArea" id="hint_full_sample">
+                              <widget class="GtkDrawingArea" id="hint_none_sample">
                                 <property name="visible">True</property>
                               </widget>
                             </child>
@@ -373,14 +388,6 @@
                           </packing>
                         </child>
                       </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
-                        <property name="y_options">GTK_FILL</property>
-                      </packing>
                     </child>
                   </widget>
                   <packing>
@@ -415,19 +422,21 @@
                     <property name="column_spacing">5</property>
                     <property name="row_spacing">5</property>
                     <child>
-                      <widget class="GtkHBox" id="hbox2">
+                      <widget class="GtkHBox" id="hbox5">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="subpixel_rgb_radio">
+                          <widget class="GtkRadioButton" id="subpixel_vbgr_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_RGB</property>
+                            <property name="label" translatable="yes">VB_GR</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
+                            <property name="group">subpixel_rgb_radio</property>
                           </widget>
                         </child>
                         <child>
-                          <widget class="GtkImage" id="subpixel_rgb_image">
+                          <widget class="GtkImage" id="subpixel_vbgr_image">
                             <property name="visible">True</property>
                             <property name="stock">gtk-missing-image</property>
                           </widget>
@@ -439,22 +448,31 @@
                           </packing>
                         </child>
                       </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options">GTK_FILL</property>
+                      </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox3">
+                      <widget class="GtkHBox" id="hbox4">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="subpixel_bgr_radio">
+                          <widget class="GtkRadioButton" id="subpixel_vrgb_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_BGR</property>
+                            <property name="label" translatable="yes">_VRGB</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
                             <property name="group">subpixel_rgb_radio</property>
                           </widget>
                         </child>
                         <child>
-                          <widget class="GtkImage" id="subpixel_bgr_image">
+                          <widget class="GtkImage" id="subpixel_vrgb_image">
                             <property name="visible">True</property>
                             <property name="stock">gtk-missing-image</property>
                           </widget>
@@ -467,26 +485,27 @@
                         </child>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="y_options">GTK_FILL</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox4">
+                      <widget class="GtkHBox" id="hbox3">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="subpixel_vrgb_radio">
+                          <widget class="GtkRadioButton" id="subpixel_bgr_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">_VRGB</property>
+                            <property name="label" translatable="yes">_BGR</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
                             <property name="group">subpixel_rgb_radio</property>
                           </widget>
                         </child>
                         <child>
-                          <widget class="GtkImage" id="subpixel_vrgb_image">
+                          <widget class="GtkImage" id="subpixel_bgr_image">
                             <property name="visible">True</property>
                             <property name="stock">gtk-missing-image</property>
                           </widget>
@@ -499,26 +518,26 @@
                         </child>
                       </widget>
                       <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="y_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkHBox" id="hbox5">
+                      <widget class="GtkHBox" id="hbox2">
                         <property name="visible">True</property>
                         <child>
-                          <widget class="GtkRadioButton" id="subpixel_vbgr_radio">
+                          <widget class="GtkRadioButton" id="subpixel_rgb_radio">
                             <property name="visible">True</property>
                             <property name="can_focus">True</property>
-                            <property name="label" translatable="yes">VB_GR</property>
+                            <property name="label" translatable="yes">_RGB</property>
                             <property name="use_underline">True</property>
+                            <property name="response_id">0</property>
                             <property name="draw_indicator">True</property>
-                            <property name="group">subpixel_rgb_radio</property>
                           </widget>
                         </child>
                         <child>
-                          <widget class="GtkImage" id="subpixel_vbgr_image">
+                          <widget class="GtkImage" id="subpixel_rgb_image">
                             <property name="visible">True</property>
                             <property name="stock">gtk-missing-image</property>
                           </widget>
@@ -530,14 +549,6 @@
                           </packing>
                         </child>
                       </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
-                        <property name="y_options">GTK_FILL</property>
-                      </packing>
                     </child>
                   </widget>
                   <packing>
@@ -636,18 +647,18 @@
                     <property name="shadow_type">GTK_SHADOW_IN</property>
                     <child>
                       <widget class="GtkIconView" id="theme_list">
+                        <property name="width_request">1</property>
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="selection_mode">GTK_SELECTION_BROWSE</property>
                         <property name="pixbuf_column">0</property>
                         <property name="markup_column">1</property>
+                        <property name="selection_mode">GTK_SELECTION_BROWSE</property>
+                        <property name="item_width">150</property>
+                        <property name="spacing">3</property>
                         <property name="row_spacing">18</property>
                         <property name="column_spacing">18</property>
-                        <property name="spacing">3</property>
                         <property name="margin">18</property>
-                        <property name="width_request">1</property>
-                        <property name="item_width">150</property>
                       </widget>
                     </child>
                   </widget>
@@ -659,37 +670,24 @@
                     <property name="spacing">6</property>
                     <property name="layout_style">GTK_BUTTONBOX_END</property>
                     <child>
-                      <widget class="GtkButton" id="theme_install">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label" translatable="yes">_Install...</property>
-                        <property name="use_underline">True</property>
-                      </widget>
-                      <packing>
-                        <property name="position">3</property>
-                      </packing>
-                    </child>
-                    <child>
                       <widget class="GtkButton" id="theme_delete">
                         <property name="visible">True</property>
+                        <property name="sensitive">False</property>
                         <property name="can_focus">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <property name="label">gtk-delete</property>
                         <property name="use_stock">True</property>
-                        <property name="sensitive">False</property>
+                        <property name="response_id">0</property>
                       </widget>
-                      <packing>
-                        <property name="position">0</property>
-                      </packing>
                     </child>
                     <child>
                       <widget class="GtkButton" id="theme_save">
                         <property name="visible">True</property>
+                        <property name="sensitive">False</property>
                         <property name="can_focus">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label" translatable="true">Save _As...</property>
-                        <property name="sensitive">False</property>
+                        <property name="label">Save _As...</property>
+                        <property name="response_id">0</property>
                       </widget>
                       <packing>
                         <property name="position">1</property>
@@ -702,11 +700,25 @@
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <property name="label" translatable="yes">C_ustomize...</property>
                         <property name="use_underline">True</property>
+                        <property name="response_id">0</property>
                       </widget>
                       <packing>
                         <property name="position">2</property>
                       </packing>
                     </child>
+                    <child>
+                      <widget class="GtkButton" id="theme_install">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label" translatable="yes">_Install...</property>
+                        <property name="use_underline">True</property>
+                        <property name="response_id">0</property>
+                      </widget>
+                      <packing>
+                        <property name="position">3</property>
+                      </packing>
+                    </child>
                   </widget>
                   <packing>
                     <property name="expand">False</property>
@@ -789,6 +801,7 @@
                                 <property name="shadow_type">GTK_SHADOW_IN</property>
                                 <child>
                                   <widget class="GtkIconView" id="wp_view">
+                                    <property name="width_request">1</property>
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
                                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
@@ -797,7 +810,6 @@
                                     <property name="row_spacing">3</property>
                                     <property name="column_spacing">3</property>
                                     <property name="reorderable">True</property>
-                                    <property name="width_request">1</property>
                                   </widget>
                                 </child>
                               </widget>
@@ -841,6 +853,7 @@
                                 <property name="can_focus">True</property>
                                 <property name="label" translatable="yes">_Add...</property>
                                 <property name="use_underline">True</property>
+                                <property name="response_id">0</property>
                               </widget>
                               <packing>
                                 <property name="expand">False</property>
@@ -855,6 +868,7 @@
                                 <property name="can_focus">True</property>
                                 <property name="label">gtk-remove</property>
                                 <property name="use_stock">True</property>
+                                <property name="response_id">0</property>
                               </widget>
                               <packing>
                                 <property name="expand">False</property>
@@ -945,6 +959,7 @@
                       <widget class="GtkColorButton" id="wp_pcpicker">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                         <accessibility>
                           <atkproperty name="AtkObject::accessible_description" translatable="yes">Open a dialog to specify the color</atkproperty>
                         </accessibility>
@@ -958,6 +973,7 @@
                     <child>
                       <widget class="GtkColorButton" id="wp_scpicker">
                         <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                         <accessibility>
                           <atkproperty name="AtkObject::accessible_description" translatable="yes">Open a dialog to specify the color</atkproperty>
                         </accessibility>
@@ -1007,75 +1023,57 @@
                     <property name="column_spacing">12</property>
                     <property name="row_spacing">6</property>
                     <child>
-                      <widget class="GtkFontButton" id="document_font">
-                        <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="use_font">True</property>
-                      </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
-                        <property name="y_options"></property>
-                      </packing>
-                    </child>
-                    <child>
-                      <widget class="GtkLabel" id="label32">
+                      <widget class="GtkLabel" id="label28">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Document font:</property>
+                        <property name="label" translatable="yes">_Application font:</property>
                         <property name="use_underline">True</property>
+                        <property name="justify">GTK_JUSTIFY_RIGHT</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
                         <property name="x_options">GTK_FILL</property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkFontButton" id="desktop_font">
+                      <widget class="GtkFontButton" id="application_font">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                         <property name="use_font">True</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
-                        <property name="x_options">GTK_FILL</property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkFontButton" id="window_title_font">
+                      <widget class="GtkLabel" id="label29">
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="use_font">True</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">_Fixed width font:</property>
+                        <property name="use_underline">True</property>
+                        <property name="justify">GTK_JUSTIFY_RIGHT</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">3</property>
-                        <property name="bottom_attach">4</property>
+                        <property name="top_attach">4</property>
+                        <property name="bottom_attach">5</property>
                         <property name="x_options">GTK_FILL</property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkFontButton" id="monospace_font">
+                      <widget class="GtkLabel" id="label30">
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
-                        <property name="use_font">True</property>
-                      </widget>
-                      <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="top_attach">4</property>
-                        <property name="bottom_attach">5</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">_Window title font:</property>
+                        <property name="use_underline">True</property>
+                        <property name="justify">GTK_JUSTIFY_RIGHT</property>
+                      </widget>
+                      <packing>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
                         <property name="x_options">GTK_FILL</property>
                         <property name="y_options"></property>
                       </packing>
@@ -1096,56 +1094,79 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label30">
+                      <widget class="GtkFontButton" id="monospace_font">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Window title font:</property>
-                        <property name="use_underline">True</property>
-                        <property name="justify">GTK_JUSTIFY_RIGHT</property>
+                        <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
+                        <property name="use_font">True</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">3</property>
-                        <property name="bottom_attach">4</property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">4</property>
+                        <property name="bottom_attach">5</property>
                         <property name="x_options">GTK_FILL</property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label29">
+                      <widget class="GtkFontButton" id="window_title_font">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Fixed width font:</property>
-                        <property name="use_underline">True</property>
-                        <property name="justify">GTK_JUSTIFY_RIGHT</property>
+                        <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
+                        <property name="use_font">True</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">4</property>
-                        <property name="bottom_attach">5</property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
                         <property name="x_options">GTK_FILL</property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkFontButton" id="application_font">
+                      <widget class="GtkFontButton" id="desktop_font">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                         <property name="use_font">True</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
+                        <property name="x_options">GTK_FILL</property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label28">
+                      <widget class="GtkLabel" id="label32">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Application font:</property>
+                        <property name="label" translatable="yes">_Document font:</property>
                         <property name="use_underline">True</property>
-                        <property name="justify">GTK_JUSTIFY_RIGHT</property>
                       </widget>
                       <packing>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options"></property>
+                      </packing>
+                    </child>
+                    <child>
+                      <widget class="GtkFontButton" id="document_font">
+                        <property name="visible">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
+                        <property name="use_font">True</property>
+                      </widget>
+                      <packing>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
                         <property name="x_options">GTK_FILL</property>
                         <property name="y_options"></property>
                       </packing>
@@ -1183,17 +1204,17 @@
                             <property name="column_spacing">12</property>
                             <property name="row_spacing">6</property>
                             <child>
-                              <widget class="GtkVBox" id="vbox21">
+                              <widget class="GtkVBox" id="vbox11">
                                 <property name="visible">True</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkRadioButton" id="subpixel_radio">
+                                  <widget class="GtkRadioButton" id="monochrome_radio">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Sub_pixel smoothing (LCDs)</property>
+                                    <property name="label" translatable="yes">_Monochrome</property>
                                     <property name="use_underline">True</property>
+                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
-                                    <property name="group">monochrome_radio</property>
                                   </widget>
                                   <packing>
                                     <property name="expand">False</property>
@@ -1201,10 +1222,10 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkAlignment" id="alignment13">
+                                  <widget class="GtkAlignment" id="alignment2">
                                     <property name="visible">True</property>
                                     <child>
-                                      <widget class="GtkDrawingArea" id="subpixel_sample">
+                                      <widget class="GtkDrawingArea" id="monochrome_sample">
                                         <property name="visible">True</property>
                                       </widget>
                                     </child>
@@ -1214,23 +1235,18 @@
                                   </packing>
                                 </child>
                               </widget>
-                              <packing>
-                                <property name="left_attach">1</property>
-                                <property name="right_attach">2</property>
-                                <property name="top_attach">1</property>
-                                <property name="bottom_attach">2</property>
-                              </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox20">
+                              <widget class="GtkVBox" id="vbox19">
                                 <property name="visible">True</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkRadioButton" id="best_contrast_radio">
+                                  <widget class="GtkRadioButton" id="best_shapes_radio">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Best co_ntrast</property>
+                                    <property name="label" translatable="yes">Best _shapes</property>
                                     <property name="use_underline">True</property>
+                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
                                     <property name="group">monochrome_radio</property>
                                   </widget>
@@ -1240,10 +1256,10 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkAlignment" id="alignment4">
+                                  <widget class="GtkAlignment" id="alignment3">
                                     <property name="visible">True</property>
                                     <child>
-                                      <widget class="GtkDrawingArea" id="best_contrast_sample">
+                                      <widget class="GtkDrawingArea" id="best_shapes_sample">
                                         <property name="visible">True</property>
                                       </widget>
                                     </child>
@@ -1254,20 +1270,21 @@
                                 </child>
                               </widget>
                               <packing>
-                                <property name="top_attach">1</property>
-                                <property name="bottom_attach">2</property>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox19">
+                              <widget class="GtkVBox" id="vbox20">
                                 <property name="visible">True</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkRadioButton" id="best_shapes_radio">
+                                  <widget class="GtkRadioButton" id="best_contrast_radio">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">Best _shapes</property>
+                                    <property name="label" translatable="yes">Best co_ntrast</property>
                                     <property name="use_underline">True</property>
+                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
                                     <property name="group">monochrome_radio</property>
                                   </widget>
@@ -1277,10 +1294,10 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkAlignment" id="alignment3">
+                                  <widget class="GtkAlignment" id="alignment4">
                                     <property name="visible">True</property>
                                     <child>
-                                      <widget class="GtkDrawingArea" id="best_shapes_sample">
+                                      <widget class="GtkDrawingArea" id="best_contrast_sample">
                                         <property name="visible">True</property>
                                       </widget>
                                     </child>
@@ -1291,21 +1308,23 @@
                                 </child>
                               </widget>
                               <packing>
-                                <property name="left_attach">1</property>
-                                <property name="right_attach">2</property>
+                                <property name="top_attach">1</property>
+                                <property name="bottom_attach">2</property>
                               </packing>
                             </child>
                             <child>
-                              <widget class="GtkVBox" id="vbox11">
+                              <widget class="GtkVBox" id="vbox21">
                                 <property name="visible">True</property>
                                 <property name="spacing">6</property>
                                 <child>
-                                  <widget class="GtkRadioButton" id="monochrome_radio">
+                                  <widget class="GtkRadioButton" id="subpixel_radio">
                                     <property name="visible">True</property>
                                     <property name="can_focus">True</property>
-                                    <property name="label" translatable="yes">_Monochrome</property>
+                                    <property name="label" translatable="yes">Sub_pixel smoothing (LCDs)</property>
                                     <property name="use_underline">True</property>
+                                    <property name="response_id">0</property>
                                     <property name="draw_indicator">True</property>
+                                    <property name="group">monochrome_radio</property>
                                   </widget>
                                   <packing>
                                     <property name="expand">False</property>
@@ -1313,10 +1332,10 @@
                                   </packing>
                                 </child>
                                 <child>
-                                  <widget class="GtkAlignment" id="alignment2">
+                                  <widget class="GtkAlignment" id="alignment13">
                                     <property name="visible">True</property>
                                     <child>
-                                      <widget class="GtkDrawingArea" id="monochrome_sample">
+                                      <widget class="GtkDrawingArea" id="subpixel_sample">
                                         <property name="visible">True</property>
                                       </widget>
                                     </child>
@@ -1326,6 +1345,12 @@
                                   </packing>
                                 </child>
                               </widget>
+                              <packing>
+                                <property name="left_attach">1</property>
+                                <property name="right_attach">2</property>
+                                <property name="top_attach">1</property>
+                                <property name="bottom_attach">2</property>
+                              </packing>
                             </child>
                           </widget>
                         </child>
@@ -1351,6 +1376,7 @@
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <property name="label" translatable="yes">D_etails...</property>
                         <property name="use_underline">True</property>
+                        <property name="response_id">0</property>
                       </widget>
                     </child>
                   </widget>
@@ -1421,6 +1447,7 @@
                                 <property name="can_focus">True</property>
                                 <property name="label" translatable="yes">Show _icons in menus</property>
                                 <property name="use_underline">True</property>
+                                <property name="response_id">0</property>
                                 <property name="active">True</property>
                                 <property name="draw_indicator">True</property>
                               </widget>
@@ -1435,6 +1462,7 @@
                                 <property name="can_focus">True</property>
                                 <property name="label" translatable="yes">_Editable menu shortcut keys</property>
                                 <property name="use_underline">True</property>
+                                <property name="response_id">0</property>
                                 <property name="draw_indicator">True</property>
                               </widget>
                               <packing>
@@ -1540,90 +1568,6 @@
                                     <property name="visible">True</property>
                                     <property name="label" translatable="yes">_File</property>
                                     <property name="use_underline">True</property>
-                                    <child>
-                                      <widget class="GtkMenu" id="File Menu_menu">
-                                        <child>
-                                          <widget class="GtkImageMenuItem" id="menu_item_1">
-                                            <property name="visible">True</property>
-                                            <property name="label" translatable="yes">_New</property>
-                                            <property name="use_underline">True</property>
-                                            <child internal-child="image">
-                                              <widget class="GtkImage" id="menu-item-image9">
-                                                <property name="visible">True</property>
-                                                <property name="stock">gtk-new</property>
-                                                <property name="icon_size">1</property>
-                                              </widget>
-                                            </child>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkImageMenuItem" id="menu_item_2">
-                                            <property name="visible">True</property>
-                                            <property name="label" translatable="yes">_Open</property>
-                                            <property name="use_underline">True</property>
-                                            <child internal-child="image">
-                                              <widget class="GtkImage" id="menu-item-image10">
-                                                <property name="visible">True</property>
-                                                <property name="stock">gtk-open</property>
-                                                <property name="icon_size">1</property>
-                                              </widget>
-                                            </child>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkImageMenuItem" id="menu_item_3">
-                                            <property name="visible">True</property>
-                                            <property name="label" translatable="yes">_Save</property>
-                                            <property name="use_underline">True</property>
-                                            <child internal-child="image">
-                                              <widget class="GtkImage" id="menu-item-image11">
-                                                <property name="visible">True</property>
-                                                <property name="stock">gtk-save</property>
-                                                <property name="icon_size">1</property>
-                                              </widget>
-                                            </child>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="separator1">
-                                            <property name="visible">True</property>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkImageMenuItem" id="menu_item_4">
-                                            <property name="visible">True</property>
-                                            <property name="label" translatable="yes">_Print</property>
-                                            <property name="use_underline">True</property>
-                                            <child internal-child="image">
-                                              <widget class="GtkImage" id="menu-item-image12">
-                                                <property name="visible">True</property>
-                                                <property name="stock">gtk-print</property>
-                                                <property name="icon_size">1</property>
-                                              </widget>
-                                            </child>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkMenuItem" id="separator2">
-                                            <property name="visible">True</property>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkImageMenuItem" id="menu_item_5">
-                                            <property name="visible">True</property>
-                                            <property name="label" translatable="yes">_Quit</property>
-                                            <property name="use_underline">True</property>
-                                            <child internal-child="image">
-                                              <widget class="GtkImage" id="menu-item-image13">
-                                                <property name="visible">True</property>
-                                                <property name="stock">gtk-quit</property>
-                                                <property name="icon_size">1</property>
-                                              </widget>
-                                            </child>
-                                          </widget>
-                                        </child>
-                                      </widget>
-                                    </child>
                                   </widget>
                                 </child>
                                 <child>
@@ -1631,52 +1575,6 @@
                                     <property name="visible">True</property>
                                     <property name="label" translatable="yes">_Edit</property>
                                     <property name="use_underline">True</property>
-                                    <child>
-                                      <widget class="GtkMenu" id="edit1_menu">
-                                        <child>
-                                          <widget class="GtkImageMenuItem" id="cut">
-                                            <property name="visible">True</property>
-                                            <property name="label" translatable="yes">C_ut</property>
-                                            <property name="use_underline">True</property>
-                                            <child internal-child="image">
-                                              <widget class="GtkImage" id="menu-item-image14">
-                                                <property name="visible">True</property>
-                                                <property name="stock">gtk-cut</property>
-                                                <property name="icon_size">1</property>
-                                              </widget>
-                                            </child>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkImageMenuItem" id="copy">
-                                            <property name="visible">True</property>
-                                            <property name="label" translatable="yes">_Copy</property>
-                                            <property name="use_underline">True</property>
-                                            <child internal-child="image">
-                                              <widget class="GtkImage" id="menu-item-image15">
-                                                <property name="visible">True</property>
-                                                <property name="stock">gtk-copy</property>
-                                                <property name="icon_size">1</property>
-                                              </widget>
-                                            </child>
-                                          </widget>
-                                        </child>
-                                        <child>
-                                          <widget class="GtkImageMenuItem" id="paste">
-                                            <property name="visible">True</property>
-                                            <property name="label" translatable="yes">_Paste</property>
-                                            <property name="use_underline">True</property>
-                                            <child internal-child="image">
-                                              <widget class="GtkImage" id="menu-item-image16">
-                                                <property name="visible">True</property>
-                                                <property name="stock">gtk-paste</property>
-                                                <property name="icon_size">1</property>
-                                              </widget>
-                                            </child>
-                                          </widget>
-                                        </child>
-                                      </widget>
-                                    </child>
                                   </widget>
                                 </child>
                               </widget>
@@ -1771,6 +1669,112 @@
                 <property name="tab_fill">False</property>
               </packing>
             </child>
+            <child>
+              <widget class="GtkAlignment" id="alignment7">
+                <property name="visible">True</property>
+                <property name="border_width">10</property>
+                <child>
+                  <widget class="GtkFrame" id="frame3">
+                    <property name="visible">True</property>
+                    <property name="label_xalign">0</property>
+                    <property name="shadow_type">GTK_SHADOW_NONE</property>
+                    <child>
+                      <widget class="GtkAlignment" id="alignment8">
+                        <property name="visible">True</property>
+                        <property name="top_padding">6</property>
+                        <property name="left_padding">6</property>
+                        <child>
+                          <widget class="GtkVBox" id="vbox5">
+                            <property name="visible">True</property>
+                            <child>
+                              <widget class="GtkVBox" id="vbox1">
+                                <property name="visible">True</property>
+                                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                <child>
+                                  <widget class="GtkRadioButton" id="no_effects_button">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                    <property name="label" translatable="yes">No effects</property>
+                                    <property name="response_id">0</property>
+                                    <property name="active">True</property>
+                                    <property name="draw_indicator">True</property>
+                                  </widget>
+                                </child>
+                                <child>
+                                  <widget class="GtkRadioButton" id="normal_effects_button">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                    <property name="label" translatable="yes">Normal effects</property>
+                                    <property name="response_id">0</property>
+                                    <property name="active">True</property>
+                                    <property name="draw_indicator">True</property>
+                                    <property name="group">no_effects_button</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="position">1</property>
+                                  </packing>
+                                </child>
+                                <child>
+                                  <widget class="GtkRadioButton" id="extra_effects_button">
+                                    <property name="visible">True</property>
+                                    <property name="can_focus">True</property>
+                                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                                    <property name="label" translatable="yes">Extra effects</property>
+                                    <property name="response_id">0</property>
+                                    <property name="active">True</property>
+                                    <property name="draw_indicator">True</property>
+                                    <property name="group">no_effects_button</property>
+                                  </widget>
+                                  <packing>
+                                    <property name="position">2</property>
+                                  </packing>
+                                </child>
+                              </widget>
+                              <packing>
+                                <property name="expand">False</property>
+                                <property name="fill">False</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <placeholder/>
+                            </child>
+                          </widget>
+                        </child>
+                      </widget>
+                    </child>
+                    <child>
+                      <widget class="GtkLabel" id="label6">
+                        <property name="visible">True</property>
+                        <property name="label" translatable="yes">&lt;b&gt;Desktop Effects&lt;/b&gt;</property>
+                        <property name="use_markup">True</property>
+                      </widget>
+                      <packing>
+                        <property name="type">label_item</property>
+                      </packing>
+                    </child>
+                  </widget>
+                </child>
+              </widget>
+              <packing>
+                <property name="position">4</property>
+                <property name="tab_expand">False</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkLabel" id="label5">
+                <property name="visible">True</property>
+                <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                <property name="label" translatable="yes">Desktop Effects</property>
+              </widget>
+              <packing>
+                <property name="type">tab</property>
+                <property name="position">4</property>
+                <property name="tab_expand">False</property>
+                <property name="tab_fill">False</property>
+              </packing>
+            </child>
           </widget>
           <packing>
             <property name="position">1</property>
@@ -1867,12 +1871,13 @@
                     <child>
                       <widget class="GtkButton" id="gtk_themes_delete">
                         <property name="visible">True</property>
+                        <property name="sensitive">False</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <property name="label" translatable="yes">gtk-delete</property>
                         <property name="use_stock">True</property>
-                        <property name="sensitive">False</property>
+                        <property name="response_id">0</property>
                       </widget>
                     </child>
                   </widget>
@@ -1949,67 +1954,74 @@
                       <placeholder/>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label6">
+                      <widget class="GtkColorButton" id="selected_fg_colorbutton">
                         <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label" translatable="yes">Background</property>
+                        <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">1</property>
-                        <property name="right_attach">2</property>
-                        <property name="x_options">GTK_FILL</property>
-                        <property name="y_options">GTK_FILL</property>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
+                        <property name="x_options"></property>
+                        <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label7">
+                      <widget class="GtkColorButton" id="text_colorbutton">
                         <property name="visible">True</property>
-                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
-                        <property name="label" translatable="yes">Text</property>
+                        <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                       </widget>
                       <packing>
                         <property name="left_attach">2</property>
                         <property name="right_attach">3</property>
-                        <property name="x_options">GTK_FILL</property>
-                        <property name="y_options">GTK_FILL</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
+                        <property name="x_options"></property>
+                        <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label3">
+                      <widget class="GtkColorButton" id="fg_colorbutton">
                         <property name="visible">True</property>
-                        <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Windows:</property>
-                        <property name="use_underline">True</property>
+                        <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                       </widget>
                       <packing>
+                        <property name="left_attach">2</property>
+                        <property name="right_attach">3</property>
                         <property name="top_attach">1</property>
                         <property name="bottom_attach">2</property>
+                        <property name="x_options"></property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label2">
+                      <widget class="GtkLabel" id="label4">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Input boxes:</property>
+                        <property name="label" translatable="yes">_Selected items:</property>
                         <property name="use_underline">True</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkColorButton" id="bg_colorbutton">
+                      <widget class="GtkColorButton" id="selected_bg_colorbutton">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
-                        <property name="top_attach">1</property>
-                        <property name="bottom_attach">2</property>
+                        <property name="top_attach">3</property>
+                        <property name="bottom_attach">4</property>
                         <property name="x_options"></property>
                         <property name="y_options"></property>
                       </packing>
@@ -2018,6 +2030,7 @@
                       <widget class="GtkColorButton" id="base_colorbutton">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
@@ -2029,72 +2042,70 @@
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkColorButton" id="selected_bg_colorbutton">
+                      <widget class="GtkColorButton" id="bg_colorbutton">
                         <property name="visible">True</property>
                         <property name="can_focus">True</property>
+                        <property name="response_id">0</property>
                       </widget>
                       <packing>
                         <property name="left_attach">1</property>
                         <property name="right_attach">2</property>
-                        <property name="top_attach">3</property>
-                        <property name="bottom_attach">4</property>
+                        <property name="top_attach">1</property>
+                        <property name="bottom_attach">2</property>
                         <property name="x_options"></property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkLabel" id="label4">
+                      <widget class="GtkLabel" id="label2">
                         <property name="visible">True</property>
                         <property name="xalign">0</property>
-                        <property name="label" translatable="yes">_Selected items:</property>
+                        <property name="label" translatable="yes">_Input boxes:</property>
                         <property name="use_underline">True</property>
                       </widget>
                       <packing>
-                        <property name="top_attach">3</property>
-                        <property name="bottom_attach">4</property>
+                        <property name="top_attach">2</property>
+                        <property name="bottom_attach">3</property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkColorButton" id="fg_colorbutton">
+                      <widget class="GtkLabel" id="label3">
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
+                        <property name="xalign">0</property>
+                        <property name="label" translatable="yes">_Windows:</property>
+                        <property name="use_underline">True</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">2</property>
-                        <property name="right_attach">3</property>
                         <property name="top_attach">1</property>
                         <property name="bottom_attach">2</property>
-                        <property name="x_options"></property>
                         <property name="y_options"></property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkColorButton" id="text_colorbutton">
+                      <widget class="GtkLabel" id="label7">
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label" translatable="yes">Text</property>
                       </widget>
                       <packing>
                         <property name="left_attach">2</property>
                         <property name="right_attach">3</property>
-                        <property name="top_attach">2</property>
-                        <property name="bottom_attach">3</property>
-                        <property name="x_options"></property>
-                        <property name="y_options"></property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options">GTK_FILL</property>
                       </packing>
                     </child>
                     <child>
-                      <widget class="GtkColorButton" id="selected_fg_colorbutton">
+                      <widget class="GtkLabel" id="label6">
                         <property name="visible">True</property>
-                        <property name="can_focus">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="label" translatable="yes">Background</property>
                       </widget>
                       <packing>
-                        <property name="left_attach">2</property>
-                        <property name="right_attach">3</property>
-                        <property name="top_attach">3</property>
-                        <property name="bottom_attach">4</property>
-                        <property name="x_options"></property>
-                        <property name="y_options"></property>
+                        <property name="left_attach">1</property>
+                        <property name="right_attach">2</property>
+                        <property name="x_options">GTK_FILL</property>
+                        <property name="y_options">GTK_FILL</property>
                       </packing>
                     </child>
                   </widget>
@@ -2115,6 +2126,7 @@
                         <property name="receives_default">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <property name="label" translatable="yes">Reset to Defaults</property>
+                        <property name="response_id">0</property>
                       </widget>
                     </child>
                   </widget>
@@ -2176,12 +2188,13 @@
                     <child>
                       <widget class="GtkButton" id="window_themes_delete">
                         <property name="visible">True</property>
+                        <property name="sensitive">False</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <property name="label" translatable="yes">gtk-delete</property>
                         <property name="use_stock">True</property>
-                        <property name="sensitive">False</property>
+                        <property name="response_id">0</property>
                       </widget>
                     </child>
                   </widget>
@@ -2243,12 +2256,13 @@
                     <child>
                       <widget class="GtkButton" id="icon_themes_delete">
                         <property name="visible">True</property>
+                        <property name="sensitive">False</property>
                         <property name="can_focus">True</property>
                         <property name="receives_default">True</property>
                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <property name="label" translatable="yes">gtk-delete</property>
                         <property name="use_stock">True</property>
-                        <property name="sensitive">False</property>
+                        <property name="response_id">0</property>
                       </widget>
                     </child>
                   </widget>
@@ -2303,10 +2317,10 @@
                 </child>
                 <child>
                   <widget class="GtkHBox" id="hbox6">
-                     <property name="visible">True</property>
-                     <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                    <property name="visible">True</property>
+                    <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                     <property name="spacing">12</property>
-                     <child>
+                    <child>
                       <widget class="GtkLabel" id="label5">
                         <property name="label" translatable="yes">Size:</property>
                       </widget>
@@ -2316,8 +2330,8 @@
                     </child>
                     <child>
                       <widget class="GtkHBox" id="hbox13">
-                         <property name="visible">True</property>
-                         <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
+                        <property name="visible">True</property>
+                        <property name="events">GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK</property>
                         <property name="spacing">6</property>
                         <child>
                           <widget class="GtkLabel" id="cursor_size_small_label">
@@ -2358,7 +2372,7 @@
                       <packing>
                         <property name="position">1</property>
                       </packing>
-                     </child>
+                    </child>
                     <child>
                       <widget class="GtkHButtonBox" id="hbuttonbox9">
                         <property name="visible">True</property>
@@ -2382,12 +2396,12 @@
                         <property name="position">2</property>
                       </packing>
                     </child>
-                   </widget>
-                   <packing>
-                     <property name="expand">False</property>
-                     <property name="position">1</property>
-                   </packing>
-                 </child>
+                  </widget>
+                  <packing>
+                    <property name="expand">False</property>
+                    <property name="position">1</property>
+                  </packing>
+                </child>
               </widget>
               <packing>
                 <property name="position">4</property>
@@ -2453,218 +2467,144 @@
   <widget class="GtkDialog" id="theme_save_dialog">
     <property name="border_width">6</property>
     <property name="title" translatable="yes">Save Theme As...</property>
-    <property name="type">GTK_WINDOW_TOPLEVEL</property>
-    <property name="window_position">GTK_WIN_POS_NONE</property>
     <property name="modal">True</property>
-    <property name="resizable">True</property>
-    <property name="destroy_with_parent">False</property>
-    <property name="decorated">True</property>
-    <property name="skip_taskbar_hint">False</property>
-    <property name="skip_pager_hint">False</property>
     <property name="type_hint">GDK_WINDOW_TYPE_HINT_DIALOG</property>
-    <property name="gravity">GDK_GRAVITY_NORTH_WEST</property>
-    <property name="focus_on_map">True</property>
-    <property name="urgency_hint">False</property>
     <property name="has_separator">False</property>
-
     <child internal-child="vbox">
       <widget class="GtkVBox" id="dialog-vbox3">
         <property name="visible">True</property>
-        <property name="homogeneous">False</property>
         <property name="spacing">2</property>
-
-        <child internal-child="action_area">
-	  <widget class="GtkHButtonBox" id="dialog-action_area3">
-	    <property name="visible">True</property>
-	    <property name="layout_style">GTK_BUTTONBOX_END</property>
-
-	    <child>
-	      <widget class="GtkButton" id="save_dialog_cancel_button">
-	        <property name="visible">True</property>
-	        <property name="can_default">True</property>
-	        <property name="can_focus">True</property>
-	        <property name="label">gtk-cancel</property>
-	        <property name="use_stock">True</property>
-	        <property name="relief">GTK_RELIEF_NORMAL</property>
-	        <property name="focus_on_click">True</property>
-	        <property name="response_id">-6</property>
-	      </widget>
-	    </child>
-
-	    <child>
-	      <widget class="GtkButton" id="save_dialog_save_button">
-	        <property name="visible">True</property>
-	        <property name="can_default">True</property>
-	        <property name="has_default">True</property>
-	        <property name="can_focus">True</property>
-	        <property name="label">gtk-save</property>
-	        <property name="use_stock">True</property>
-	        <property name="relief">GTK_RELIEF_NORMAL</property>
-	        <property name="focus_on_click">True</property>
-	        <property name="response_id">-5</property>
-	      </widget>
-	    </child>
-	  </widget>
-	  <packing>
-	    <property name="padding">0</property>
-	    <property name="expand">False</property>
-	    <property name="fill">True</property>
-	    <property name="pack_type">GTK_PACK_END</property>
-	  </packing>
-        </child>
-
         <child>
-	  <widget class="GtkTable" id="table3">
-	    <property name="border_width">6</property>
-	    <property name="visible">True</property>
-	    <property name="n_rows">3</property>
-	    <property name="n_columns">2</property>
-	    <property name="homogeneous">False</property>
-	    <property name="row_spacing">6</property>
-	    <property name="column_spacing">12</property>
-
-	    <child>
-	      <widget class="GtkEntry" id="save_dialog_entry">
-	        <property name="visible">True</property>
-	        <property name="can_focus">True</property>
-	        <property name="editable">True</property>
-	        <property name="visibility">True</property>
-	        <property name="max_length">0</property>
-	        <property name="text" translatable="yes"></property>
-	        <property name="has_frame">True</property>
-	        <property name="activates_default">True</property>
-	      </widget>
-	      <packing>
-	        <property name="left_attach">1</property>
-	        <property name="right_attach">2</property>
-	        <property name="top_attach">0</property>
-	        <property name="bottom_attach">1</property>
-	        <property name="y_options"></property>
-	      </packing>
-	    </child>
-
-	    <child>
-	      <widget class="GtkLabel" id="label49">
-	        <property name="visible">True</property>
-	        <property name="label" translatable="yes">_Name:</property>
-	        <property name="use_underline">True</property>
-	        <property name="use_markup">False</property>
-	        <property name="justify">GTK_JUSTIFY_LEFT</property>
-	        <property name="wrap">False</property>
-	        <property name="selectable">False</property>
-	        <property name="xalign">0</property>
-	        <property name="yalign">0.5</property>
-	        <property name="xpad">0</property>
-	        <property name="ypad">0</property>
-	        <property name="mnemonic_widget">save_dialog_entry</property>
-	        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-	        <property name="width_chars">-1</property>
-	        <property name="single_line_mode">False</property>
-	        <property name="angle">0</property>
-	      </widget>
-	      <packing>
-	        <property name="left_attach">0</property>
-	        <property name="right_attach">1</property>
-	        <property name="top_attach">0</property>
-	        <property name="bottom_attach">1</property>
-	        <property name="x_options">fill</property>
-	        <property name="y_options">fill</property>
-	      </packing>
-	    </child>
-
-	    <child>
-	      <widget class="GtkScrolledWindow" id="scrolledwindow4">
-	        <property name="visible">True</property>
-	        <property name="can_focus">True</property>
-	        <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
-	        <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
-	        <property name="shadow_type">GTK_SHADOW_IN</property>
-	        <property name="window_placement">GTK_CORNER_TOP_LEFT</property>
-
-	        <child>
-		  <widget class="GtkTextView" id="save_dialog_textview">
-		    <property name="visible">True</property>
-		    <property name="can_focus">True</property>
-		    <property name="editable">True</property>
-		    <property name="overwrite">False</property>
-		    <property name="accepts_tab">False</property>
-		    <property name="justification">GTK_JUSTIFY_LEFT</property>
-		    <property name="wrap_mode">GTK_WRAP_WORD</property>
-		    <property name="cursor_visible">True</property>
-		    <property name="pixels_above_lines">0</property>
-		    <property name="pixels_below_lines">0</property>
-		    <property name="pixels_inside_wrap">0</property>
-		    <property name="left_margin">0</property>
-		    <property name="right_margin">0</property>
-		    <property name="indent">0</property>
-		    <property name="text" translatable="yes"></property>
-		  </widget>
-	        </child>
-	      </widget>
-	      <packing>
-	        <property name="left_attach">1</property>
-	        <property name="right_attach">2</property>
-	        <property name="top_attach">1</property>
-	        <property name="bottom_attach">2</property>
-	      </packing>
-	    </child>
-
-	    <child>
-	      <widget class="GtkLabel" id="label50">
-	        <property name="visible">True</property>
-	        <property name="label" translatable="yes">_Description:</property>
-	        <property name="use_underline">True</property>
-	        <property name="use_markup">False</property>
-	        <property name="justify">GTK_JUSTIFY_LEFT</property>
-	        <property name="wrap">False</property>
-	        <property name="selectable">False</property>
-	        <property name="xalign">0</property>
-	        <property name="yalign">0</property>
-	        <property name="xpad">0</property>
-	        <property name="ypad">0</property>
-	        <property name="mnemonic_widget">scrolledwindow4</property>
-	        <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property>
-	        <property name="width_chars">-1</property>
-	        <property name="single_line_mode">False</property>
-	        <property name="angle">0</property>
-	      </widget>
-	      <packing>
-	        <property name="left_attach">0</property>
-	        <property name="right_attach">1</property>
-	        <property name="top_attach">1</property>
-	        <property name="bottom_attach">2</property>
-	        <property name="x_options">fill</property>
-	        <property name="y_options">fill</property>
-	      </packing>
-	    </child>
-
-	    <child>
-	      <widget class="GtkCheckButton" id="save_background_checkbutton">
-	        <property name="visible">True</property>
-	        <property name="can_focus">True</property>
-	        <property name="label" translatable="yes">Save _Background Image</property>
-	        <property name="use_underline">True</property>
-	        <property name="relief">GTK_RELIEF_NORMAL</property>
-	        <property name="focus_on_click">True</property>
-	        <property name="active">False</property>
-	        <property name="inconsistent">False</property>
-	        <property name="draw_indicator">True</property>
-	      </widget>
-	      <packing>
-	        <property name="left_attach">1</property>
-	        <property name="right_attach">2</property>
-	        <property name="top_attach">2</property>
-	        <property name="bottom_attach">3</property>
-	        <property name="x_options">fill</property>
-	        <property name="y_options"></property>
-	      </packing>
-	    </child>
-	  </widget>
-	  <packing>
-	    <property name="padding">0</property>
-	    <property name="expand">True</property>
-	    <property name="fill">True</property>
-	  </packing>
+          <widget class="GtkTable" id="table3">
+            <property name="visible">True</property>
+            <property name="border_width">6</property>
+            <property name="n_rows">3</property>
+            <property name="n_columns">2</property>
+            <property name="column_spacing">12</property>
+            <property name="row_spacing">6</property>
+            <child>
+              <placeholder/>
+            </child>
+            <child>
+              <widget class="GtkEntry" id="save_dialog_entry">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="activates_default">True</property>
+              </widget>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="right_attach">2</property>
+                <property name="y_options"></property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkLabel" id="label49">
+                <property name="visible">True</property>
+                <property name="xalign">0</property>
+                <property name="label" translatable="yes">_Name:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">save_dialog_entry</property>
+              </widget>
+              <packing>
+                <property name="x_options">GTK_FILL</property>
+                <property name="y_options">GTK_FILL</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkScrolledWindow" id="scrolledwindow4">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="hscrollbar_policy">GTK_POLICY_NEVER</property>
+                <property name="vscrollbar_policy">GTK_POLICY_AUTOMATIC</property>
+                <property name="shadow_type">GTK_SHADOW_IN</property>
+                <child>
+                  <widget class="GtkTextView" id="save_dialog_textview">
+                    <property name="visible">True</property>
+                    <property name="can_focus">True</property>
+                    <property name="wrap_mode">GTK_WRAP_WORD</property>
+                    <property name="accepts_tab">False</property>
+                  </widget>
+                </child>
+              </widget>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="right_attach">2</property>
+                <property name="top_attach">1</property>
+                <property name="bottom_attach">2</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkLabel" id="label50">
+                <property name="visible">True</property>
+                <property name="xalign">0</property>
+                <property name="yalign">0</property>
+                <property name="label" translatable="yes">_Description:</property>
+                <property name="use_underline">True</property>
+                <property name="mnemonic_widget">scrolledwindow4</property>
+              </widget>
+              <packing>
+                <property name="top_attach">1</property>
+                <property name="bottom_attach">2</property>
+                <property name="x_options">GTK_FILL</property>
+                <property name="y_options">GTK_FILL</property>
+              </packing>
+            </child>
+            <child>
+              <widget class="GtkCheckButton" id="save_background_checkbutton">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="label" translatable="yes">Save _Background Image</property>
+                <property name="use_underline">True</property>
+                <property name="response_id">0</property>
+                <property name="draw_indicator">True</property>
+              </widget>
+              <packing>
+                <property name="left_attach">1</property>
+                <property name="right_attach">2</property>
+                <property name="top_attach">2</property>
+                <property name="bottom_attach">3</property>
+                <property name="x_options">GTK_FILL</property>
+                <property name="y_options"></property>
+              </packing>
+            </child>
+          </widget>
+          <packing>
+            <property name="position">1</property>
+          </packing>
+        </child>
+        <child internal-child="action_area">
+          <widget class="GtkHButtonBox" id="dialog-action_area3">
+            <property name="visible">True</property>
+            <property name="layout_style">GTK_BUTTONBOX_END</property>
+            <child>
+              <widget class="GtkButton" id="save_dialog_cancel_button">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="label">gtk-cancel</property>
+                <property name="use_stock">True</property>
+                <property name="response_id">-6</property>
+              </widget>
+            </child>
+            <child>
+              <widget class="GtkButton" id="save_dialog_save_button">
+                <property name="visible">True</property>
+                <property name="can_focus">True</property>
+                <property name="can_default">True</property>
+                <property name="has_default">True</property>
+                <property name="label">gtk-save</property>
+                <property name="use_stock">True</property>
+                <property name="response_id">-5</property>
+              </widget>
+              <packing>
+                <property name="position">1</property>
+              </packing>
+            </child>
+          </widget>
+          <packing>
+            <property name="expand">False</property>
+            <property name="pack_type">GTK_PACK_END</property>
+          </packing>
         </child>
       </widget>
     </child>
diff -Nur gnome-control-center-2.19.5/capplets/appearance/appearance.h gnome-control-center-2.19.5.new/capplets/appearance/appearance.h
--- gnome-control-center-2.19.5/capplets/appearance/appearance.h	2007-07-02 14:30:16.000000000 +0200
+++ gnome-control-center-2.19.5.new/capplets/appearance/appearance.h	2007-07-30 11:39:45.000000000 +0200
@@ -57,6 +57,11 @@
   GdkPixbuf *theme_icon;
   GtkWidget *theme_save_dialog;
 
+  /* effects */
+  gboolean compiz_running;
+  gint desktop_effects_level;
+  GtkWidget *dialog;
+
   /* style */
   GdkPixbuf *gtk_theme_icon;
   GdkPixbuf *window_theme_icon;
diff -Nur gnome-control-center-2.19.5/capplets/appearance/appearance-main.c gnome-control-center-2.19.5.new/capplets/appearance/appearance-main.c
--- gnome-control-center-2.19.5/capplets/appearance/appearance-main.c	2007-07-02 14:30:16.000000000 +0200
+++ gnome-control-center-2.19.5.new/capplets/appearance/appearance-main.c	2007-07-30 11:39:45.000000000 +0200
@@ -141,6 +141,7 @@
   desktop_init (data);
   font_init (data);
   ui_init (data);
+  effects_init (data);
 
   /* prepare the main window */
   w = glade_xml_get_widget (data->xml, "appearance_window");
diff -Nur gnome-control-center-2.19.5/capplets/appearance/Makefile.am gnome-control-center-2.19.5.new/capplets/appearance/Makefile.am
--- gnome-control-center-2.19.5/capplets/appearance/Makefile.am	2007-07-02 14:30:16.000000000 +0200
+++ gnome-control-center-2.19.5.new/capplets/appearance/Makefile.am	2007-07-30 11:39:45.000000000 +0200
@@ -7,6 +7,8 @@
 	appearance.h \
 	appearance-desktop.c \
 	appearance-desktop.h \
+	appearance-effects.c\
+	appearance-effects.h\
 	appearance-font.c \
 	appearance-font.h \
 	appearance-main.c \
