summaryrefslogtreecommitdiff
path: root/src/preferences/passwords-dialog.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/preferences/passwords-dialog.c')
-rw-r--r--src/preferences/passwords-dialog.c94
1 files changed, 38 insertions, 56 deletions
diff --git a/src/preferences/passwords-dialog.c b/src/preferences/passwords-dialog.c
index 2979b2058..aa6349263 100644
--- a/src/preferences/passwords-dialog.c
+++ b/src/preferences/passwords-dialog.c
@@ -278,54 +278,25 @@ populate_model_cb (GList *records,
GtkWidget *button;
GtkWidget *image;
GtkWidget *entry;
- GtkWidget *row_switch;
- GtkWidget *row_separator;
const char *text;
- row = GTK_WIDGET (hdy_expander_row_new ());
+ row = hdy_expander_row_new ();
g_object_set_data (G_OBJECT (row), "record", record);
- hdy_action_row_set_title (HDY_ACTION_ROW (row), ephy_password_record_get_origin (record));
- hdy_action_row_set_subtitle (HDY_ACTION_ROW (row), ephy_password_record_get_username (record));
- row_switch = dzl_gtk_widget_find_child_typed (row, GTK_TYPE_SWITCH);
- if (row_switch)
- gtk_widget_set_no_show_all (row_switch, TRUE);
- row_separator = dzl_gtk_widget_find_child_typed (row, GTK_TYPE_SEPARATOR);
- if (row_separator)
- gtk_widget_set_no_show_all (row_separator, TRUE);
+ hdy_expander_row_set_title (HDY_EXPANDER_ROW (row), ephy_password_record_get_origin (record));
+ hdy_expander_row_set_subtitle (HDY_EXPANDER_ROW (row), ephy_password_record_get_username (record));
hdy_expander_row_set_show_enable_switch (HDY_EXPANDER_ROW (row), FALSE);
- separator = gtk_separator_new (GTK_ORIENTATION_VERTICAL);
- gtk_widget_set_margin_top (separator, 8);
- gtk_widget_set_margin_bottom (separator, 8);
- hdy_action_row_add_action (HDY_ACTION_ROW (row), separator);
-
button = gtk_button_new_from_icon_name ("edit-copy-symbolic", GTK_ICON_SIZE_BUTTON);
gtk_widget_set_valign (button, GTK_ALIGN_CENTER);
gtk_widget_set_tooltip_text (button, _("Copy password"));
- hdy_action_row_add_action (HDY_ACTION_ROW (row), button);
+ hdy_expander_row_add_action (HDY_EXPANDER_ROW (row), button);
g_signal_connect (button, "clicked", G_CALLBACK (copy_password_clicked), (void *)(ephy_password_record_get_password (record)));
- separator = gtk_separator_new (GTK_ORIENTATION_VERTICAL);
- gtk_widget_set_margin_top (separator, 8);
- gtk_widget_set_margin_bottom (separator, 8);
- gtk_container_add (GTK_CONTAINER (row), separator);
-
/* Username */
- sub_row = GTK_WIDGET (hdy_action_row_new ());
+ sub_row = hdy_action_row_new ();
hdy_action_row_set_title (HDY_ACTION_ROW (sub_row), _("Username"));
gtk_container_add (GTK_CONTAINER (row), sub_row);
- button = gtk_button_new_from_icon_name ("edit-copy-symbolic", GTK_ICON_SIZE_BUTTON);
- g_signal_connect (button, "clicked", G_CALLBACK (copy_username_clicked), (void *)(ephy_password_record_get_username (record)));
- gtk_widget_set_tooltip_text (button, _("Copy username"));
- gtk_widget_set_valign (button, GTK_ALIGN_CENTER);
- hdy_action_row_add_action (HDY_ACTION_ROW (sub_row), button);
-
- separator = gtk_separator_new (GTK_ORIENTATION_VERTICAL);
- gtk_widget_set_margin_top (separator, 8);
- gtk_widget_set_margin_bottom (separator, 8);
- hdy_action_row_add_action (HDY_ACTION_ROW (sub_row), separator);
-
entry = gtk_entry_new ();
gtk_widget_set_hexpand (entry, TRUE);
gtk_widget_set_valign (entry, GTK_ALIGN_CENTER);
@@ -337,24 +308,23 @@ populate_model_cb (GList *records,
if (text)
gtk_entry_set_text (GTK_ENTRY (entry), text);
- hdy_action_row_add_action (HDY_ACTION_ROW (sub_row), entry);
-
- /* Password */
- sub_row = GTK_WIDGET (hdy_action_row_new ());
- hdy_action_row_set_title (HDY_ACTION_ROW (sub_row), _("Password"));
- gtk_container_add (GTK_CONTAINER (row), sub_row);
-
- button = gtk_toggle_button_new ();
- image = gtk_image_new_from_icon_name ("dialog-password-symbolic", GTK_ICON_SIZE_BUTTON);
- gtk_button_set_image (GTK_BUTTON (button), image);
- gtk_widget_set_tooltip_text (button, _("Reveal password"));
- gtk_widget_set_valign (button, GTK_ALIGN_CENTER);
- hdy_action_row_add_action (HDY_ACTION_ROW (sub_row), button);
+ gtk_container_add (GTK_CONTAINER (sub_row), entry);
separator = gtk_separator_new (GTK_ORIENTATION_VERTICAL);
gtk_widget_set_margin_top (separator, 8);
gtk_widget_set_margin_bottom (separator, 8);
- hdy_action_row_add_action (HDY_ACTION_ROW (sub_row), separator);
+ gtk_container_add (GTK_CONTAINER (sub_row), separator);
+
+ button = gtk_button_new_from_icon_name ("edit-copy-symbolic", GTK_ICON_SIZE_BUTTON);
+ g_signal_connect (button, "clicked", G_CALLBACK (copy_username_clicked), (void *)(ephy_password_record_get_username (record)));
+ gtk_widget_set_tooltip_text (button, _("Copy username"));
+ gtk_widget_set_valign (button, GTK_ALIGN_CENTER);
+ gtk_container_add (GTK_CONTAINER (sub_row), button);
+
+ /* Password */
+ sub_row = hdy_action_row_new ();
+ hdy_action_row_set_title (HDY_ACTION_ROW (sub_row), _("Password"));
+ gtk_container_add (GTK_CONTAINER (row), sub_row);
entry = gtk_entry_new ();
gtk_widget_set_hexpand (entry, TRUE);
@@ -368,17 +338,31 @@ populate_model_cb (GList *records,
if (text)
gtk_entry_set_text (GTK_ENTRY (entry), text);
+ gtk_container_add (GTK_CONTAINER (sub_row), entry);
+
+ separator = gtk_separator_new (GTK_ORIENTATION_VERTICAL);
+ gtk_widget_set_margin_top (separator, 8);
+ gtk_widget_set_margin_bottom (separator, 8);
+ gtk_container_add (GTK_CONTAINER (sub_row), separator);
+
+ button = gtk_toggle_button_new ();
+ image = gtk_image_new_from_icon_name ("dialog-password-symbolic", GTK_ICON_SIZE_BUTTON);
+ gtk_button_set_image (GTK_BUTTON (button), image);
+ gtk_widget_set_tooltip_text (button, _("Reveal password"));
+ gtk_widget_set_valign (button, GTK_ALIGN_CENTER);
+
g_object_bind_property (G_OBJECT (button), "active", G_OBJECT (entry), "visibility", G_BINDING_DEFAULT);
- hdy_action_row_add_action (HDY_ACTION_ROW (sub_row), entry);
+ gtk_container_add (GTK_CONTAINER (sub_row), button);
/* Remove button */
+ sub_row = hdy_action_row_new ();
+ gtk_container_add (GTK_CONTAINER (row), sub_row);
+
button = gtk_button_new_with_label (_("Remove Password"));
- gtk_widget_set_halign (button, GTK_ALIGN_CENTER);
- gtk_widget_set_margin_top (button, 18);
- gtk_widget_set_margin_bottom (button, 18);
+ gtk_widget_set_valign (button, GTK_ALIGN_CENTER);
dzl_gtk_widget_add_style_class (button, GTK_STYLE_CLASS_DESTRUCTIVE_ACTION);
g_signal_connect (button, "clicked", G_CALLBACK (forget_clicked), record);
- gtk_container_add (GTK_CONTAINER (row), button);
+ gtk_container_add (GTK_CONTAINER (sub_row), button);
g_object_set_data (G_OBJECT (record), "dialog", dialog);
@@ -436,8 +420,7 @@ password_filter (GtkListBoxRow *row,
gpointer user_data)
{
EphyPasswordsDialog *dialog = EPHY_PASSWORDS_DIALOG (user_data);
- HdyActionRow *action_row = HDY_ACTION_ROW (row);
- EphyPasswordRecord *record = g_object_get_data (G_OBJECT (action_row), "record");
+ EphyPasswordRecord *record = g_object_get_data (G_OBJECT (row), "record");
const char *username;
const char *origin;
gboolean visible = FALSE;
@@ -467,7 +450,6 @@ ephy_passwords_dialog_init (EphyPasswordsDialog *dialog)
g_signal_connect (GTK_WIDGET (dialog), "show", G_CALLBACK (show_dialog_cb), NULL);
- gtk_list_box_set_header_func (GTK_LIST_BOX (dialog->listbox), hdy_list_box_separator_header, NULL, NULL);
gtk_list_box_set_filter_func (GTK_LIST_BOX (dialog->listbox), password_filter, dialog, NULL);
gtk_list_box_set_selection_mode (GTK_LIST_BOX (dialog->listbox), GTK_SELECTION_NONE);
}