[PATCH] Deleteing Themes



Hi!,

Attached it's a patch for bug #105452 for deleteing gtk/icon/metacicy
theme in the details window in the theme manager.

I have replaced the "Go to theme folder" button (that opens a nautilus
window in the .themes directory) for a "Remove" button. This button can
be clicked only when the user can delete the selected theme. 

Any comments? 
--
David Sedeño <david alderia com>

Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/gnome-control-center/capplets/theme-switcher/ChangeLog,v
retrieving revision 1.151
diff -u -r1.151 ChangeLog
--- ChangeLog	11 Oct 2005 11:27:36 -0000	1.151
+++ ChangeLog	18 Oct 2005 18:23:35 -0000
@@ -1,3 +1,10 @@
+2005-10-18  David Sede�david alderia com>
+
+	* gnome-theme-details.c (gtk_theme_update_remove_button): Update the
+	sensivility of the button if the user can remove the theme.
+	(remove_theme): Remove the selected theme.
+	
+
 2005-10-11  Muktha  <muktha narayan wipro com>
 
 	* gnome-theme-manager.h:
Index: gnome-theme-details.c
===================================================================
RCS file: /cvs/gnome/gnome-control-center/capplets/theme-switcher/gnome-theme-details.c,v
retrieving revision 1.19
diff -u -r1.19 gnome-theme-details.c
--- gnome-theme-details.c	22 May 2005 15:46:42 -0000	1.19
+++ gnome-theme-details.c	18 Oct 2005 18:23:37 -0000
@@ -21,6 +21,13 @@
 static gboolean theme_details_initted = FALSE;
 static gboolean setting_model = FALSE;
 
+enum {
+	THEME_GTK,
+	THEME_WINDOW,
+	THEME_ICON
+};
+	
+
 /* Function Prototypes */
 static void cb_dialog_response              (GtkDialog        *dialog,
 					     gint              response_id);
@@ -40,7 +47,6 @@
 					     const gchar        *default_theme);
 static char *path_to_theme_id               (const char *path);
 
-
 static char *
 path_to_theme_id (const char *path)
 {
@@ -118,12 +124,82 @@
  					       NULL);
 }
 
+static void
+gtk_theme_update_remove_button (GtkTreeSelection *selection, 
+				GtkWidget *remove_button,
+				gint theme_type)
+{
+  gchar *theme_selected;
+  GtkTreeModel *model;
+  GtkTreeIter iter;
+  GList *theme_list=NULL, *string_list, *list;
+  gchar *theme_dir = NULL;
+  GnomeVFSResult vfs_result;
+  GnomeVFSFileInfo *vfs_info;
+
+  if (gtk_tree_selection_get_selected (selection, &model, &iter))
+     gtk_tree_model_get (model, &iter,
+			  THEME_NAME_COLUMN, &theme_selected,
+			  -1);
+  else
+    theme_selected = NULL;
+
+  if (theme_selected != NULL) 
+  {
+     switch (theme_type) {
+		case THEME_GTK: theme_dir = g_strdup("/gtk-2.0/");
+				theme_list = gnome_theme_info_find_by_type (GNOME_THEME_GTK_2);
+				break;
+		case THEME_ICON: theme_list = gnome_theme_icon_info_find_all();
+				 break;
+		case THEME_WINDOW: theme_dir = g_strdup("/metacity-1/");
+				    theme_list = gnome_theme_info_find_by_type (GNOME_THEME_METACITY);
+				    break;
+		default: theme_list = NULL;
+			 break;
+    }
+  }
+		
+  string_list = NULL;
+
+  for (list = theme_list; list; list = list->next)
+  {
+    GnomeThemeInfo *info = list->data;
+    if (!strcmp(info->name, theme_selected))
+    {
+	if (theme_type == THEME_ICON) 
+		theme_dir = g_strdup(info->path);
+	else 
+		theme_dir = g_strdup_printf("%s/%s", info->path, theme_dir);
+			
+	vfs_info = gnome_vfs_file_info_new ();
+	vfs_result = gnome_vfs_get_file_info (theme_dir,
+					      vfs_info,
+				              GNOME_VFS_FILE_INFO_GET_ACCESS_RIGHTS);
+        if (vfs_result == GNOME_VFS_OK) 
+	{
+		if ((vfs_info->valid_fields & GNOME_VFS_FILE_INFO_FIELDS_ACCESS) &&
+		    !(vfs_info->permissions & GNOME_VFS_PERM_ACCESS_WRITABLE)) 
+			gtk_widget_set_sensitive(remove_button, FALSE); 
+		else 
+			gtk_widget_set_sensitive(remove_button, TRUE); 
+	} else {
+		gtk_widget_set_sensitive(remove_button, FALSE);
+	}
+      }
+    }
+}
 
 static void
 gtk_theme_selection_changed (GtkTreeSelection *selection,
 			     gpointer          data)
 {
+  GladeXML *dialog;
+		
+  dialog = gnome_theme_manager_get_theme_dialog ();
+  
   update_gconf_key_from_selection (selection, GTK_THEME_KEY);
+  gtk_theme_update_remove_button(selection, WID("control_remove_button"), THEME_GTK);
 }
 
 static void
@@ -163,7 +239,11 @@
 icon_theme_selection_changed (GtkTreeSelection *selection,
 			     gpointer          data)
 {
+  GladeXML *dialog;
+		
+  dialog = gnome_theme_manager_get_theme_dialog ();
   update_gconf_key_from_selection (selection, ICON_THEME_KEY);
+  gtk_theme_update_remove_button(selection, WID("icon_remove_button"), THEME_ICON);
 }
 
 static void
@@ -266,6 +346,109 @@
   g_object_unref (client);
 }
 
+static void
+remove_theme(GtkWidget *button, gpointer data)
+{
+  GladeXML *dialog;
+  GtkWidget *confirm_dialog, *info_dialog;
+  GList *theme_list, *string_list, *list;
+  GtkTreeSelection *selection;
+  GtkTreeModel *model;
+  GtkTreeIter iter;
+  gchar *theme_dir, *theme_selected, *treeview;
+  gint response, theme_type;
+  GList *uri_list;
+  GnomeVFSResult result;
+  
+  confirm_dialog = gtk_message_dialog_new (NULL,
+		          		   GTK_DIALOG_MODAL,
+					   GTK_MESSAGE_QUESTION,
+					   GTK_BUTTONS_OK_CANCEL,
+					   _("Would you like to remove this theme?"));
+  response = gtk_dialog_run (GTK_DIALOG (confirm_dialog));
+  gtk_widget_destroy(confirm_dialog);
+  if (response == GTK_RESPONSE_CANCEL)
+	return;
+
+  theme_type = (gint)data;
+  switch (theme_type) {
+	case THEME_GTK: theme_dir = g_strdup("/gtk-2.0/");
+               		theme_list = gnome_theme_info_find_by_type (GNOME_THEME_GTK_2);
+			treeview=g_strdup("control_theme_treeview");
+                        break;
+	case THEME_ICON: theme_list = gnome_theme_icon_info_find_all();
+			 treeview=g_strdup("icon_theme_treeview");
+		 	 theme_dir = NULL;
+			 break;
+	case THEME_WINDOW: theme_dir = g_strdup("/metacity-1/");
+ 			   theme_list = gnome_theme_info_find_by_type (GNOME_THEME_METACITY);
+			   treeview=g_strdup("window_theme_treeview");
+			   break;
+	default: theme_list = NULL;
+		 theme_dir = NULL;
+		 treeview = NULL;
+		 break;
+  }
+
+
+  if (treeview != NULL) {
+	  dialog = gnome_theme_manager_get_theme_dialog ();
+	  selection = gtk_tree_view_get_selection (GTK_TREE_VIEW(WID(treeview)));
+	  if (gtk_tree_selection_get_selected (selection, &model, &iter))
+  	  {
+	  	gtk_tree_model_get (model, &iter,
+				      THEME_NAME_COLUMN, &theme_selected,
+				      -1);
+	  } else {
+		theme_selected = NULL;
+  	  }
+
+  	if (theme_selected!=NULL)
+  	{
+		string_list = NULL;
+
+		for (list = theme_list; list; list = list->next)
+		{
+			GnomeThemeInfo *info = list->data;
+			if (!strcmp(info->name, theme_selected))
+			{
+
+				if (theme_type == THEME_ICON)
+					theme_dir = g_strdup(g_path_get_dirname(info->path));
+				else
+					theme_dir = g_strdup_printf("%s/%s", info->path, theme_dir);
+	
+				uri_list = g_list_prepend(NULL, gnome_vfs_uri_new (theme_dir));
+
+				result = gnome_vfs_xfer_delete_list (uri_list, GNOME_VFS_XFER_RECURSIVE,
+								     GNOME_VFS_XFER_ERROR_MODE_ABORT,
+								     NULL, NULL);
+				if (result == GNOME_VFS_OK) 
+				{
+					info_dialog = gtk_message_dialog_new (NULL,
+					                        GTK_DIALOG_MODAL,
+								GTK_MESSAGE_INFO,
+								GTK_BUTTONS_OK_CANCEL,
+								_("Theme deleted succesfully. Please select another theme."));
+					gtk_list_store_remove (GTK_LIST_STORE(model), &iter);
+					gtk_dialog_run (info_dialog);
+
+				} else {
+					info_dialog = gtk_message_dialog_new (NULL,
+								GTK_DIALOG_MODAL,
+								GTK_MESSAGE_ERROR,
+								GTK_BUTTONS_OK,
+								_("Theme can not be deleted"));
+					gtk_dialog_run (info_dialog);
+				}
+				gtk_widget_destroy (info_dialog);
+				gnome_vfs_uri_list_free (uri_list);
+			}
+		}
+  	}
+  }
+}
+
 void
 gnome_theme_details_init (void)
 {
@@ -292,16 +475,16 @@
 		   dialog);
 
   /* gtk themes */
-  widget = WID ("control_manage_button");
-  g_signal_connect (G_OBJECT (widget), "clicked", G_CALLBACK (gnome_theme_manager_show_manage_themes), dialog);
+  widget = WID ("control_remove_button");
+  g_signal_connect (G_OBJECT (widget), "clicked", G_CALLBACK (remove_theme), THEME_GTK);
 
   /* window manager themes */
-  widget = WID ("window_manage_button");
-  g_signal_connect (G_OBJECT (widget), "clicked", G_CALLBACK (gnome_theme_manager_window_show_manage_themes), dialog);
+  widget = WID ("window_remove_button");
+  g_signal_connect (G_OBJECT (widget), "clicked", G_CALLBACK (remove_theme), (gint*)THEME_WINDOW);
 
   /* icon themes */
-  widget = WID ("icon_manage_button");
-  g_signal_connect (G_OBJECT (widget), "clicked", G_CALLBACK (gnome_theme_manager_icon_show_manage_themes), dialog);
+  widget = WID ("icon_remove_button");
+  g_signal_connect (G_OBJECT (widget), "clicked", G_CALLBACK (remove_theme), (gint*)THEME_ICON);
 
 
   g_signal_connect (G_OBJECT (parent), "response", G_CALLBACK (cb_dialog_response), NULL);
Index: theme-properties.glade
===================================================================
RCS file: /cvs/gnome/gnome-control-center/capplets/theme-switcher/theme-properties.glade,v
retrieving revision 1.31
diff -u -r1.31 theme-properties.glade
--- theme-properties.glade	1 Feb 2005 22:33:47 -0000	1.31
+++ theme-properties.glade	18 Oct 2005 18:23:45 -0000
@@ -2,7 +2,6 @@
 <!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd";>
 
 <glade-interface>
-<requires lib="gnome"/>
 
 <widget class="GtkDialog" id="theme_dialog">
   <property name="border_width">5</property>
@@ -17,6 +16,8 @@
   <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">
@@ -94,6 +95,9 @@
 		      <property name="rules_hint">False</property>
 		      <property name="reorderable">False</property>
 		      <property name="enable_search">True</property>
+		      <property name="fixed_height_mode">False</property>
+		      <property name="hover_selection">False</property>
+		      <property name="hover_expand">False</property>
 		      <accessibility>
 			<atkproperty name="AtkObject::accessible_name" translatable="yes">theme selection tree</atkproperty>
 			<atkproperty name="AtkObject::accessible_description" translatable="yes">Select theme for the desktop</atkproperty>
@@ -169,6 +173,10 @@
 				  <property name="yalign">0.5</property>
 				  <property name="xpad">0</property>
 				  <property name="ypad">0</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="padding">0</property>
@@ -243,6 +251,10 @@
 				  <property name="yalign">0.5</property>
 				  <property name="xpad">0</property>
 				  <property name="ypad">0</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="padding">0</property>
@@ -317,6 +329,10 @@
 				  <property name="yalign">0.5</property>
 				  <property name="xpad">0</property>
 				  <property name="ypad">0</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="padding">0</property>
@@ -391,6 +407,10 @@
 				  <property name="yalign">0.5</property>
 				  <property name="xpad">0</property>
 				  <property name="ypad">0</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="padding">0</property>
@@ -446,6 +466,10 @@
 		  <property name="yalign">0.5</property>
 		  <property name="xpad">0</property>
 		  <property name="ypad">0</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="tab_expand">False</property>
@@ -466,6 +490,10 @@
 		  <property name="yalign">0.5</property>
 		  <property name="xpad">0</property>
 		  <property name="ypad">0</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="type">tab</property>
@@ -491,6 +519,10 @@
 		      <property name="yalign">0.5</property>
 		      <property name="xpad">0</property>
 		      <property name="ypad">0</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="padding">0</property>
@@ -534,6 +566,10 @@
 		  <property name="yalign">0.5</property>
 		  <property name="xpad">0</property>
 		  <property name="ypad">0</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="type">tab</property>
@@ -559,6 +595,10 @@
 		      <property name="yalign">0.5</property>
 		      <property name="xpad">0</property>
 		      <property name="ypad">0</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="padding">0</property>
@@ -602,6 +642,10 @@
 		  <property name="yalign">0.5</property>
 		  <property name="xpad">0</property>
 		  <property name="ypad">0</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="type">tab</property>
@@ -627,6 +671,10 @@
 		      <property name="yalign">0.5</property>
 		      <property name="xpad">0</property>
 		      <property name="ypad">0</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="padding">0</property>
@@ -686,6 +734,10 @@
 		  <property name="yalign">0.5</property>
 		  <property name="xpad">0</property>
 		  <property name="ypad">0</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="type">tab</property>
@@ -722,6 +774,8 @@
   <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">
@@ -811,6 +865,9 @@
 			  <property name="rules_hint">False</property>
 			  <property name="reorderable">False</property>
 			  <property name="enable_search">True</property>
+			  <property name="fixed_height_mode">False</property>
+			  <property name="hover_selection">False</property>
+			  <property name="hover_expand">False</property>
 			  <accessibility>
 			    <atkproperty name="AtkObject::accessible_name" translatable="yes">theme selection tree</atkproperty>
 			  </accessibility>
@@ -831,14 +888,14 @@
 		      <property name="spacing">6</property>
 
 		      <child>
-			<widget class="GtkButton" id="control_manage_button">
+			<widget class="GtkButton" id="control_remove_button">
 			  <property name="visible">True</property>
 			  <property name="can_focus">True</property>
 			  <property name="relief">GTK_RELIEF_NORMAL</property>
 			  <property name="focus_on_click">True</property>
 
 			  <child>
-			    <widget class="GtkAlignment" id="alignment14">
+			    <widget class="GtkAlignment" id="alignment18">
 			      <property name="visible">True</property>
 			      <property name="xalign">0.5</property>
 			      <property name="yalign">0.5</property>
@@ -850,15 +907,15 @@
 			      <property name="right_padding">0</property>
 
 			      <child>
-				<widget class="GtkHBox" id="hbox21">
+				<widget class="GtkHBox" id="hbox28">
 				  <property name="visible">True</property>
 				  <property name="homogeneous">False</property>
 				  <property name="spacing">2</property>
 
 				  <child>
-				    <widget class="GtkImage" id="image13">
+				    <widget class="GtkImage" id="image17">
 				      <property name="visible">True</property>
-				      <property name="stock">gtk-jump-to</property>
+				      <property name="stock">gtk-delete</property>
 				      <property name="icon_size">4</property>
 				      <property name="xalign">0.5</property>
 				      <property name="yalign">0.5</property>
@@ -873,9 +930,9 @@
 				  </child>
 
 				  <child>
-				    <widget class="GtkLabel" id="label48">
+				    <widget class="GtkLabel" id="label52">
 				      <property name="visible">True</property>
-				      <property name="label" translatable="yes">_Go To Theme Folder</property>
+				      <property name="label" translatable="yes">_Remove</property>
 				      <property name="use_underline">True</property>
 				      <property name="use_markup">False</property>
 				      <property name="justify">GTK_JUSTIFY_LEFT</property>
@@ -885,6 +942,10 @@
 				      <property name="yalign">0.5</property>
 				      <property name="xpad">0</property>
 				      <property name="ypad">0</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="padding">0</property>
@@ -954,6 +1015,10 @@
 		      <property name="yalign">0.5</property>
 		      <property name="xpad">0</property>
 		      <property name="ypad">0</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="padding">0</property>
@@ -988,6 +1053,10 @@
 	      <property name="yalign">0.5</property>
 	      <property name="xpad">0</property>
 	      <property name="ypad">0</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="type">tab</property>
@@ -1024,6 +1093,9 @@
 			  <property name="rules_hint">False</property>
 			  <property name="reorderable">False</property>
 			  <property name="enable_search">True</property>
+			  <property name="fixed_height_mode">False</property>
+			  <property name="hover_selection">False</property>
+			  <property name="hover_expand">False</property>
 			  <accessibility>
 			    <atkproperty name="AtkObject::accessible_name" translatable="yes">theme selection tree</atkproperty>
 			  </accessibility>
@@ -1044,14 +1116,14 @@
 		      <property name="spacing">6</property>
 
 		      <child>
-			<widget class="GtkButton" id="window_manage_button">
+			<widget class="GtkButton" id="window_remove_button">
 			  <property name="visible">True</property>
 			  <property name="can_focus">True</property>
 			  <property name="relief">GTK_RELIEF_NORMAL</property>
 			  <property name="focus_on_click">True</property>
 
 			  <child>
-			    <widget class="GtkAlignment" id="alignment11">
+			    <widget class="GtkAlignment" id="alignment19">
 			      <property name="visible">True</property>
 			      <property name="xalign">0.5</property>
 			      <property name="yalign">0.5</property>
@@ -1063,15 +1135,15 @@
 			      <property name="right_padding">0</property>
 
 			      <child>
-				<widget class="GtkHBox" id="hbox18">
+				<widget class="GtkHBox" id="hbox29">
 				  <property name="visible">True</property>
 				  <property name="homogeneous">False</property>
 				  <property name="spacing">2</property>
 
 				  <child>
-				    <widget class="GtkImage" id="image10">
+				    <widget class="GtkImage" id="image18">
 				      <property name="visible">True</property>
-				      <property name="stock">gtk-jump-to</property>
+				      <property name="stock">gtk-delete</property>
 				      <property name="icon_size">4</property>
 				      <property name="xalign">0.5</property>
 				      <property name="yalign">0.5</property>
@@ -1086,9 +1158,9 @@
 				  </child>
 
 				  <child>
-				    <widget class="GtkLabel" id="label45">
+				    <widget class="GtkLabel" id="label53">
 				      <property name="visible">True</property>
-				      <property name="label" translatable="yes">_Go To Theme Folder</property>
+				      <property name="label" translatable="yes">_Remove</property>
 				      <property name="use_underline">True</property>
 				      <property name="use_markup">False</property>
 				      <property name="justify">GTK_JUSTIFY_LEFT</property>
@@ -1098,6 +1170,10 @@
 				      <property name="yalign">0.5</property>
 				      <property name="xpad">0</property>
 				      <property name="ypad">0</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="padding">0</property>
@@ -1167,6 +1243,10 @@
 		      <property name="yalign">0.5</property>
 		      <property name="xpad">0</property>
 		      <property name="ypad">0</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="padding">0</property>
@@ -1201,6 +1281,10 @@
 	      <property name="yalign">0.5</property>
 	      <property name="xpad">0</property>
 	      <property name="ypad">0</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="type">tab</property>
@@ -1237,6 +1321,9 @@
 			  <property name="rules_hint">False</property>
 			  <property name="reorderable">False</property>
 			  <property name="enable_search">True</property>
+			  <property name="fixed_height_mode">False</property>
+			  <property name="hover_selection">False</property>
+			  <property name="hover_expand">False</property>
 			  <accessibility>
 			    <atkproperty name="AtkObject::accessible_name" translatable="yes">theme selection tree</atkproperty>
 			  </accessibility>
@@ -1257,14 +1344,14 @@
 		      <property name="spacing">6</property>
 
 		      <child>
-			<widget class="GtkButton" id="icon_manage_button">
+			<widget class="GtkButton" id="icon_remove_button">
 			  <property name="visible">True</property>
 			  <property name="can_focus">True</property>
 			  <property name="relief">GTK_RELIEF_NORMAL</property>
 			  <property name="focus_on_click">True</property>
 
 			  <child>
-			    <widget class="GtkAlignment" id="alignment13">
+			    <widget class="GtkAlignment" id="alignment20">
 			      <property name="visible">True</property>
 			      <property name="xalign">0.5</property>
 			      <property name="yalign">0.5</property>
@@ -1276,15 +1363,15 @@
 			      <property name="right_padding">0</property>
 
 			      <child>
-				<widget class="GtkHBox" id="hbox20">
+				<widget class="GtkHBox" id="hbox30">
 				  <property name="visible">True</property>
 				  <property name="homogeneous">False</property>
 				  <property name="spacing">2</property>
 
 				  <child>
-				    <widget class="GtkImage" id="image12">
+				    <widget class="GtkImage" id="image19">
 				      <property name="visible">True</property>
-				      <property name="stock">gtk-jump-to</property>
+				      <property name="stock">gtk-delete</property>
 				      <property name="icon_size">4</property>
 				      <property name="xalign">0.5</property>
 				      <property name="yalign">0.5</property>
@@ -1299,9 +1386,9 @@
 				  </child>
 
 				  <child>
-				    <widget class="GtkLabel" id="label47">
+				    <widget class="GtkLabel" id="label54">
 				      <property name="visible">True</property>
-				      <property name="label" translatable="yes">_Go To Theme Folder</property>
+				      <property name="label" translatable="yes">_Remove</property>
 				      <property name="use_underline">True</property>
 				      <property name="use_markup">False</property>
 				      <property name="justify">GTK_JUSTIFY_LEFT</property>
@@ -1311,6 +1398,10 @@
 				      <property name="yalign">0.5</property>
 				      <property name="xpad">0</property>
 				      <property name="ypad">0</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="padding">0</property>
@@ -1380,6 +1471,10 @@
 		      <property name="yalign">0.5</property>
 		      <property name="xpad">0</property>
 		      <property name="ypad">0</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="padding">0</property>
@@ -1414,6 +1509,10 @@
 	      <property name="yalign">0.5</property>
 	      <property name="xpad">0</property>
 	      <property name="ypad">0</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="type">tab</property>
@@ -1443,6 +1542,8 @@
   <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">
@@ -1534,6 +1635,10 @@
 		  <property name="yalign">0.5</property>
 		  <property name="xpad">0</property>
 		  <property name="ypad">0</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="padding">0</property>
@@ -1560,7 +1665,7 @@
 		      <property name="max_length">0</property>
 		      <property name="text" translatable="yes"></property>
 		      <property name="has_frame">True</property>
-		      <property name="invisible_char" translatable="yes">*</property>
+		      <property name="invisible_char">*</property>
 		      <property name="activates_default">True</property>
 		    </widget>
 		    <packing>
@@ -1586,6 +1691,10 @@
 		      <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>
@@ -1648,6 +1757,10 @@
 		      <property name="xpad">0</property>
 		      <property name="ypad">0</property>
 		      <property name="mnemonic_widget">scrolledwindow1</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>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]