[nautilus] Bug 698932 - Allow double clicking to toggle visible column in chooser
- From: Garrett Regier <gregier src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [nautilus] Bug 698932 - Allow double clicking to toggle visible column in chooser
- Date: Fri, 21 Jun 2013 12:24:22 +0000 (UTC)
commit 2986e4ff025952b225b663e19195b1ea25e7f866
Author: Garrett Regier <garrettregier gmail com>
Date: Thu Jun 20 19:25:43 2013 -0700
Bug 698932 - Allow double clicking to toggle visible column in chooser
libnautilus-private/nautilus-column-chooser.c | 40 ++++++++++++++++++-------
1 files changed, 29 insertions(+), 11 deletions(-)
---
diff --git a/libnautilus-private/nautilus-column-chooser.c b/libnautilus-private/nautilus-column-chooser.c
index 5b338a4..984135e 100644
--- a/libnautilus-private/nautilus-column-chooser.c
+++ b/libnautilus-private/nautilus-column-chooser.c
@@ -182,28 +182,43 @@ list_changed (NautilusColumnChooser *chooser)
}
static void
-visible_toggled_callback (GtkCellRendererToggle *cell,
- char *path_string,
- gpointer user_data)
+toggle_path (NautilusColumnChooser *chooser,
+ GtkTreePath *path)
{
- NautilusColumnChooser *chooser;
- GtkTreePath *path;
GtkTreeIter iter;
gboolean visible;
- chooser = NAUTILUS_COLUMN_CHOOSER (user_data);
-
- path = gtk_tree_path_new_from_string (path_string);
- gtk_tree_model_get_iter (GTK_TREE_MODEL (chooser->details->store),
+ gtk_tree_model_get_iter (GTK_TREE_MODEL (chooser->details->store),
&iter, path);
gtk_tree_model_get (GTK_TREE_MODEL (chooser->details->store),
&iter, COLUMN_VISIBLE, &visible, -1);
gtk_list_store_set (chooser->details->store,
&iter, COLUMN_VISIBLE, !visible, -1);
- gtk_tree_path_free (path);
list_changed (chooser);
}
+
+static void
+visible_toggled_callback (GtkCellRendererToggle *cell,
+ char *path_string,
+ gpointer user_data)
+{
+ GtkTreePath *path;
+
+ path = gtk_tree_path_new_from_string (path_string);
+ toggle_path (NAUTILUS_COLUMN_CHOOSER (user_data), path);
+ gtk_tree_path_free (path);
+}
+
+static void
+view_row_activated_callback (GtkTreeView *tree_view,
+ GtkTreePath *path,
+ GtkTreeViewColumn *column,
+ gpointer user_data)
+{
+ toggle_path (NAUTILUS_COLUMN_CHOOSER (user_data), path);
+}
+
static void
selection_changed_callback (GtkTreeSelection *selection, gpointer user_data)
{
@@ -241,7 +256,10 @@ add_tree_view (NautilusColumnChooser *chooser)
g_object_unref (store);
gtk_tree_view_set_reorderable (GTK_TREE_VIEW (view), TRUE);
-
+
+ g_signal_connect (view, "row-activated",
+ G_CALLBACK (view_row_activated_callback), chooser);
+
selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (view));
g_signal_connect (selection, "changed",
G_CALLBACK (selection_changed_callback), chooser);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]