[epiphany] PasswordsDialog: Use tree_selection.



commit 7b23f3dd2a9987de7112ee8af7408699539341ee
Author: Arnaud Bonatti <arnaud bonatti gmail com>
Date:   Fri Oct 30 02:45:11 2015 +0100

    PasswordsDialog: Use tree_selection.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=757344

 src/passwords-dialog.c            |   14 +++++---------
 src/resources/passwords-dialog.ui |    2 +-
 2 files changed, 6 insertions(+), 10 deletions(-)
---
diff --git a/src/passwords-dialog.c b/src/passwords-dialog.c
index 7d2a602..248c639 100644
--- a/src/passwords-dialog.c
+++ b/src/passwords-dialog.c
@@ -48,6 +48,7 @@ typedef enum
 struct PasswordsDialogPrivate
 {
        GtkWidget *passwords_treeview;
+       GtkTreeSelection *tree_selection;
        GtkWidget *liststore;
        GtkWidget *treemodelfilter;
        GtkWidget *treemodelsort;
@@ -117,13 +118,11 @@ delete_selection (PasswordsDialog *dialog)
 {
        GList *llist, *rlist = NULL, *l, *r;
        GtkTreeModel *model;
-       GtkTreeSelection *selection;
        GtkTreePath *path;
        GtkTreeIter iter, iter2;
        GtkTreeRowReference *row_ref = NULL;
 
-       selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (dialog->priv->passwords_treeview));
-       llist = gtk_tree_selection_get_selected_rows (selection, &model);
+       llist = gtk_tree_selection_get_selected_rows (dialog->priv->tree_selection, &model);
 
        if (llist == NULL)
        {
@@ -274,14 +273,12 @@ static char *
 get_selected_item (PasswordsDialog *dialog,
                   PasswordsDialogColumn column)
 {
-       GtkTreeSelection *selection;
        GtkTreeModel *model;
        GList *selected;
        GtkTreeIter iter;
        char *value;
 
-       selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (dialog->priv->passwords_treeview));
-       selected = gtk_tree_selection_get_selected_rows (selection, &model);
+       selected = gtk_tree_selection_get_selected_rows (dialog->priv->tree_selection, &model);
        gtk_tree_model_get_iter (model, &iter, selected->data);
        gtk_tree_model_get (model, &iter,
                            column, &value,
@@ -327,11 +324,9 @@ on_passwords_treeview_button_press_event (GtkWidget       *widget,
                                          PasswordsDialog *dialog)
 {
        if (event->button == 3) {
-               GtkTreeSelection *selection;
                int n;
 
-               selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (dialog->priv->passwords_treeview));
-               n = gtk_tree_selection_count_selected_rows (selection);
+               n = gtk_tree_selection_count_selected_rows (dialog->priv->tree_selection);
                if (n == 0)
                        return FALSE;
 
@@ -362,6 +357,7 @@ passwords_dialog_class_init (PasswordsDialogClass *klass)
        gtk_widget_class_bind_template_child_private (widget_class, PasswordsDialog, treemodelfilter);
        gtk_widget_class_bind_template_child_private (widget_class, PasswordsDialog, treemodelsort);
        gtk_widget_class_bind_template_child_private (widget_class, PasswordsDialog, passwords_treeview);
+       gtk_widget_class_bind_template_child_private (widget_class, PasswordsDialog, tree_selection);
        gtk_widget_class_bind_template_child_private (widget_class, PasswordsDialog, remove_button);
        gtk_widget_class_bind_template_child_private (widget_class, PasswordsDialog, show_passwords_button);
        gtk_widget_class_bind_template_child_private (widget_class, PasswordsDialog, password_column);
diff --git a/src/resources/passwords-dialog.ui b/src/resources/passwords-dialog.ui
index 42545fe..1b2f0ee 100644
--- a/src/resources/passwords-dialog.ui
+++ b/src/resources/passwords-dialog.ui
@@ -91,7 +91,7 @@
                         <signal name="key-press-event" handler="on_passwords_treeview_key_press_event"/>
                         <signal name="button-press-event" 
handler="on_passwords_treeview_button_press_event"/>
                         <child internal-child="selection">
-                          <object class="GtkTreeSelection" id="tree_selection"> <!-- TODO use this -->
+                          <object class="GtkTreeSelection" id="tree_selection">
                             <property name="mode">multiple</property>
                             <signal name="changed" handler="on_treeview_selection_changed"/>
                           </object>


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