[Xfce4-commits] [apps/gigolo] 20/26: Improve appearance of edit bookmark dialog

noreply at xfce.org noreply at xfce.org
Thu Oct 25 08:04:12 CEST 2018


This is an automated email from the git hooks/post-receive script.

l   a   n   d   r   y       p   u   s   h   e   d       a       c   o   m   m   i   t       t   o       b   r   a   n   c   h       m   a   s   t   e   r   
   in repository apps/gigolo.

commit 862e5aac606acdaa787112fd01358f4c4964e15b
Author: Sean Davis <smd.seandavis at gmail.com>
Date:   Wed Oct 24 12:53:15 2018 -0400

    Improve appearance of edit bookmark dialog
---
 src/bookmarkeditdialog.c | 315 ++++++++++++++++++++++++-----------------------
 1 file changed, 164 insertions(+), 151 deletions(-)

diff --git a/src/bookmarkeditdialog.c b/src/bookmarkeditdialog.c
index 2fd69d9..1e6fb20 100644
--- a/src/bookmarkeditdialog.c
+++ b/src/bookmarkeditdialog.c
@@ -41,18 +41,14 @@ struct _GigoloBookmarkEditDialogPrivate
 	GigoloWindow *parent;
 	gint dialog_type;
 
-	GtkWidget *table;
-
 	GtkWidget *type_combo;
-	GtkWidget *information_label;
-
-	GtkWidget *separator;
+	GtkWidget *information_frame;
 
 	GtkWidget *name_label;
 	GtkWidget *name_entry;
 
 	GtkWidget *autoconnect_label;
-	GtkWidget *autoconnect_checkbtn;
+	GtkWidget *autoconnect_switch;
 
 	GtkWidget *uri_label;
 	GtkWidget *uri_entry;
@@ -79,6 +75,7 @@ struct _GigoloBookmarkEditDialogPrivate
 	GtkWidget *share_combo;
 	GtkWidget *share_button;
 	GtkWidget *share_entry;
+	GtkWidget *share_box;
 
 	GtkWidget *color_label;
 	GtkWidget *color_chooser;
@@ -141,8 +138,8 @@ enum {
 };
 
 static struct MethodInfo methods[] = {
-	{ "sftp", 22,	SHOW_PORT | SHOW_USER | SHOW_FOLDER },
 	{ "ftp",  21,	SHOW_PORT | SHOW_USER | SHOW_FOLDER },
+	{ "sftp", 22,	SHOW_PORT | SHOW_USER | SHOW_FOLDER },
 	{ "smb",  0,	SHOW_SHARE | SHOW_USER | SHOW_DOMAIN | SHOW_FOLDER },
 	{ "dav",  80,	SHOW_PATH | SHOW_PORT | SHOW_USER | SHOW_FOLDER },
 	{ "davs", 443,	SHOW_PATH | SHOW_PORT | SHOW_USER | SHOW_FOLDER },
@@ -184,7 +181,6 @@ static void gigolo_bookmark_edit_dialog_finalize(GObject *object)
 	gtk_widget_destroy(priv->share_combo);
 	gtk_widget_destroy(priv->share_button);
 	gtk_widget_destroy(priv->share_label);
-	gtk_widget_destroy(priv->information_label);
 
 	G_OBJECT_CLASS(gigolo_bookmark_edit_dialog_parent_class)->finalize(object);
 }
@@ -479,8 +475,8 @@ static void init_values(GigoloBookmarkEditDialog *dialog)
 
 	idx = scheme_to_index(gigolo_bookmark_get_scheme(priv->bookmark_init));
 
-	gtk_toggle_button_set_active(
-		GTK_TOGGLE_BUTTON(priv->autoconnect_checkbtn),
+	gtk_switch_set_active(
+		GTK_SWITCH(priv->autoconnect_switch),
 		gigolo_bookmark_get_autoconnect(priv->bookmark_init));
 
 	if (port == 0)
@@ -494,7 +490,6 @@ static void init_values(GigoloBookmarkEditDialog *dialog)
 static void setup_for_type(GigoloBookmarkEditDialog *dialog)
 {
 	struct MethodInfo *meth;
-	guint i;
 	guint idx;
 	GtkWidget *table;
 	GtkTreeIter iter;
@@ -508,66 +503,39 @@ static void setup_for_type(GigoloBookmarkEditDialog *dialog)
 	g_return_if_fail(idx < methods_len);
 	meth = &(methods[idx]);
 
-	if (gtk_widget_get_parent(priv->uri_entry) != NULL)
-	{
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->uri_label);
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->uri_entry);
-	}
-	if (gtk_widget_get_parent(priv->host_entry) != NULL)
-	{
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->host_label);
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->host_entry);
-	}
-	if (gtk_widget_get_parent(priv->folder_entry) != NULL)
-	{
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->folder_label);
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->folder_entry);
-	}
-	if (gtk_widget_get_parent(priv->port_spin) != NULL)
-	{
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->port_label);
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->port_spin);
-	}
-	if (gtk_widget_get_parent(priv->user_entry) != NULL)
-	{
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->user_label);
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->user_entry);
-	}
-	if (gtk_widget_get_parent(priv->domain_entry) != NULL)
-	{
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->domain_label);
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->domain_entry);
-	}
-	if (gtk_widget_get_parent(priv->path_entry) != NULL)
-	{
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->path_label);
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->path_entry);
-	}
-	if (gtk_widget_get_parent(priv->share_combo) != NULL)
-	{
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->share_label);
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->share_combo);
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->share_button);
-	}
-	if (gtk_widget_get_parent(priv->information_label) != NULL)
-	{
-		gtk_container_remove(GTK_CONTAINER(priv->table), priv->information_label);
-	}
+	gtk_widget_hide (priv->uri_label);
+	gtk_widget_hide (priv->uri_entry);
+
+	gtk_widget_hide (priv->host_label);
+	gtk_widget_hide (priv->host_entry);
+
+	gtk_widget_hide (priv->folder_label);
+	gtk_widget_hide (priv->folder_entry);
 
-	i = 6;
-	table = priv->table;
+	gtk_widget_hide (priv->port_label);
+	gtk_widget_hide (priv->port_spin);
+
+	gtk_widget_hide (priv->user_label);
+	gtk_widget_hide (priv->user_entry);
+
+	gtk_widget_hide (priv->domain_label);
+	gtk_widget_hide (priv->domain_entry);
+
+	gtk_widget_hide (priv->path_label);
+	gtk_widget_hide (priv->path_entry);
+
+	gtk_widget_hide (priv->share_label);
+	gtk_widget_hide (priv->share_box);
+
+	gtk_widget_hide (priv->information_frame);
 
 	if (meth->scheme == NULL)
 	{
 		gtk_label_set_xalign(GTK_LABEL(priv->uri_label), 0);
 		gtk_widget_show(priv->uri_label);
-		gtk_grid_attach(GTK_GRID(table), priv->uri_label, 0, i, 1, 1);
 
 		gtk_label_set_mnemonic_widget(GTK_LABEL(priv->uri_label), priv->uri_entry);
 		gtk_widget_show(priv->uri_entry);
-		gtk_grid_attach(GTK_GRID(table), priv->uri_entry, 1, i, 1, 1);
-
-		i++;
 	}
 	else
 	{
@@ -578,101 +546,66 @@ static void setup_for_type(GigoloBookmarkEditDialog *dialog)
 
 		gtk_label_set_xalign(GTK_LABEL(priv->host_label), 0);
 		gtk_widget_show(priv->host_label);
-		gtk_grid_attach(GTK_GRID(table), priv->host_label, 0, i, 1, 1);
 
 		gtk_label_set_mnemonic_widget(GTK_LABEL(priv->host_label), priv->host_entry);
 		gtk_widget_show(priv->host_entry);
-		gtk_grid_attach(GTK_GRID(table), priv->host_entry, 1, i, 1, 1);
-
-		i++;
 
 		if (meth->flags & SHOW_SHARE)
 		{
 			gtk_label_set_xalign(GTK_LABEL(priv->share_label), 0);
 			gtk_widget_show(priv->share_label);
-			gtk_grid_attach(GTK_GRID(table), priv->share_label, 0, i, 1, 1);
 
 			gtk_label_set_mnemonic_widget(GTK_LABEL(priv->share_label), priv->share_combo);
-			gtk_widget_show(priv->share_combo);
-			gtk_grid_attach(GTK_GRID(table), priv->share_combo, 1, i, 1, 1);
-
-			gtk_widget_show(priv->share_button);
-			gtk_grid_attach(GTK_GRID(table), priv->share_button, 2, i, 1, 1);
-
-			i++;
+			gtk_widget_show(priv->share_box);
 		}
 		if (meth->flags & SHOW_PATH)
 		{
 			gtk_label_set_xalign(GTK_LABEL(priv->path_label), 0);
 			gtk_widget_show(priv->path_label);
-			gtk_grid_attach(GTK_GRID(table), priv->path_label, 0, i, 1, 1);
 
 			gtk_label_set_mnemonic_widget(GTK_LABEL(priv->path_label), priv->path_entry);
 			gtk_widget_show(priv->path_entry);
-			gtk_grid_attach(GTK_GRID(table), priv->path_entry, 1, i, 1, 1);
-
-			i++;
 		}
 	}
 
 	if (meth->flags & (SHOW_PORT | SHOW_DOMAIN | SHOW_USER))
 	{
-		gtk_label_set_xalign(GTK_LABEL(priv->information_label), 0);
-		gtk_widget_show(priv->information_label);
-		gtk_grid_attach(GTK_GRID(table), priv->information_label, 0, i, 2, 1);
-
-		i++;
+		gtk_widget_show(priv->information_frame);
 
 		if (meth->flags & SHOW_PORT)
 		{
 			gtk_label_set_xalign(GTK_LABEL(priv->port_label), 0);
 			gtk_widget_show(priv->port_label);
-			gtk_grid_attach(GTK_GRID(table), priv->port_label, 0, i, 1, 1);
 
 			gtk_label_set_mnemonic_widget(GTK_LABEL(priv->port_label), priv->port_spin);
 			gtk_widget_show(priv->port_spin);
-			gtk_grid_attach(GTK_GRID(table), priv->port_spin, 1, i, 1, 1);
-
-			i++;
 		}
 
 		if (meth->flags & SHOW_FOLDER && priv->dialog_type != GIGOLO_BE_MODE_CONNECT)
 		{
 			gtk_label_set_xalign(GTK_LABEL(priv->folder_label), 0);
 			gtk_widget_show(priv->folder_label);
-			gtk_grid_attach(GTK_GRID(table), priv->folder_label, 0, i, 1, 1);
 
 			gtk_label_set_mnemonic_widget(GTK_LABEL(priv->folder_label), priv->folder_entry);
 			gtk_widget_show(priv->folder_entry);
-			gtk_grid_attach(GTK_GRID(table), priv->folder_entry, 1, i, 1, 1);
-
-			i++;
 		}
 
 		if (meth->flags & SHOW_DOMAIN)
 		{
 			gtk_label_set_xalign(GTK_LABEL(priv->domain_label), 0);
 			gtk_widget_show(priv->domain_label);
-			gtk_grid_attach(GTK_GRID(table), priv->domain_label, 0, i, 1, 1);
 
 			gtk_label_set_mnemonic_widget(GTK_LABEL(priv->domain_label), priv->domain_entry);
 			gtk_widget_show(priv->domain_entry);
-			gtk_grid_attach(GTK_GRID(table), priv->domain_entry, 1, i, 1, 1);
-
-			i++;
 		}
 
 		if (meth->flags & SHOW_USER)
 		{
 			gtk_label_set_xalign(GTK_LABEL(priv->user_label), 0);
 			gtk_widget_show(priv->user_label);
-			gtk_grid_attach(GTK_GRID(table), priv->user_label, 0, i, 1, 1);
 
 			gtk_label_set_mnemonic_widget(GTK_LABEL(priv->user_label), priv->user_entry);
 			gtk_widget_show(priv->user_entry);
-			gtk_grid_attach(GTK_GRID(table), priv->user_entry, 1, i, 1, 1);
-
-			i++;
 		}
 	}
 }
@@ -837,7 +770,7 @@ static void update_bookmark(GigoloBookmarkEditDialog *dialog)
 			gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(priv->port_spin)));
 	}
 
-	autoconnect = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(priv->autoconnect_checkbtn));
+	autoconnect = gtk_switch_get_active(GTK_SWITCH(priv->autoconnect_switch));
 	gigolo_bookmark_set_autoconnect(priv->bookmark_update, autoconnect);
 }
 
@@ -892,8 +825,7 @@ static void gigolo_bookmark_edit_dialog_set_property(GObject *object, guint prop
 				gtk_widget_hide(priv->color_label);
 				gtk_widget_hide(priv->color_chooser);
 				gtk_widget_hide(priv->autoconnect_label);
-				gtk_widget_hide(priv->autoconnect_checkbtn);
-				gtk_widget_hide(priv->separator);
+				gtk_widget_hide(priv->autoconnect_switch);
 				break;
 			}
 		}
@@ -972,6 +904,43 @@ static void color_chooser_set_cb(G_GNUC_UNUSED GtkColorButton *widget,
 }
 
 
+static GtkWidget *make_frame (const gchar *label)
+{
+	GtkWidget *frame = gtk_frame_new (label);
+	GtkWidget *widget = gtk_frame_get_label_widget (GTK_FRAME (frame));
+	gchar     *formatted;
+
+	gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_NONE);
+
+	formatted = g_markup_printf_escaped ("<b>%s</b>", label);
+	gtk_label_set_markup (GTK_LABEL (widget), formatted);
+
+	gtk_widget_show (frame);
+
+	return frame;
+}
+
+
+static GtkWidget *make_table ()
+{
+	GtkWidget *table = gtk_grid_new ();
+	gtk_grid_set_row_spacing (GTK_GRID (table), 6);
+	gtk_grid_set_column_spacing (GTK_GRID (table), 12);
+	gtk_widget_set_margin_start (GTK_WIDGET (table), 12);
+	gtk_widget_set_margin_top (GTK_WIDGET (table), 6);
+	return table;
+}
+
+
+static GtkWidget *make_label (const gchar *text, GtkSizeGroup *sg)
+{
+	GtkWidget *label = gtk_label_new_with_mnemonic(text);
+	gtk_label_set_xalign(GTK_LABEL(label), 0);
+	gtk_size_group_add_widget(sg, label);
+	return label;
+}
+
+
 static void gigolo_bookmark_edit_dialog_init(GigoloBookmarkEditDialog *dialog)
 {
 	GtkWidget *label;
@@ -981,9 +950,13 @@ static void gigolo_bookmark_edit_dialog_init(GigoloBookmarkEditDialog *dialog)
 	GtkWidget *entry;
 	GtkWidget *hbox;
 	GtkWidget *vbox;
+	GtkWidget *frame;
+	GtkSizeGroup *sg;
 	GtkCellRenderer *renderer;
 	GigoloBookmarkEditDialogPrivate *priv = gigolo_bookmark_edit_dialog_get_instance_private(dialog);
 
+	sg = gtk_size_group_new (GTK_SIZE_GROUP_HORIZONTAL);
+
 	priv->browse_host_signal_id = 0;
 	priv->dialog_type = GIGOLO_BE_MODE_EDIT;
 
@@ -995,21 +968,19 @@ static void gigolo_bookmark_edit_dialog_init(GigoloBookmarkEditDialog *dialog)
 
 	gtk_dialog_set_default_response(GTK_DIALOG(dialog), GTK_RESPONSE_OK);
 
-	vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 6);
-	gtk_container_set_border_width(GTK_CONTAINER (vbox), 5);
+	vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 18);
+	gtk_container_set_border_width(GTK_CONTAINER (vbox), 12);
 	gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),
 		vbox, FALSE, TRUE, 0);
 
-	hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 6);
-	gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, TRUE, 0);
+	/* Bookmark Settings */
+	frame = make_frame (_("Bookmark Settings"));
+	gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, TRUE, 0);
 
-	priv->table = table = gtk_grid_new();
-	gtk_grid_set_row_spacing(GTK_GRID(table), 6);
-	gtk_grid_set_column_spacing(GTK_GRID(table), 12);
-	gtk_box_pack_start(GTK_BOX(hbox), table, TRUE, TRUE, 0);
+	table = make_table ();
+	gtk_container_add (GTK_CONTAINER (frame), table);
 
-	priv->name_label = gtk_label_new_with_mnemonic(_("_Bookmark name:"));
-	gtk_label_set_xalign(GTK_LABEL(priv->name_label), 0);
+	priv->name_label = make_label (_("_Name:"), sg);
 	gtk_grid_attach(GTK_GRID(table), priv->name_label, 0, 0, 1, 1);
 
 	priv->name_entry = entry = gtk_entry_new();
@@ -1018,8 +989,7 @@ static void gigolo_bookmark_edit_dialog_init(GigoloBookmarkEditDialog *dialog)
 	gtk_label_set_mnemonic_widget(GTK_LABEL(priv->name_label), entry);
 	gtk_grid_attach(GTK_GRID(table), entry, 1, 0, 1, 1);
 
-	priv->color_label = gtk_label_new_with_mnemonic(_("_Color:"));
-	gtk_label_set_xalign(GTK_LABEL(priv->color_label), 0);
+	priv->color_label = make_label (_("_Color:"), sg);
 	gtk_grid_attach(GTK_GRID(table), priv->color_label, 0, 1, 1, 1);
 
 	priv->color_set = FALSE;
@@ -1028,26 +998,29 @@ static void gigolo_bookmark_edit_dialog_init(GigoloBookmarkEditDialog *dialog)
 	gtk_label_set_mnemonic_widget(GTK_LABEL(priv->color_label), priv->color_chooser);
 	gtk_grid_attach(GTK_GRID(table), priv->color_chooser, 1, 1, 1, 1);
 
-	priv->autoconnect_label = gtk_label_new_with_mnemonic(_("Au_to-Connect"));
-	gtk_label_set_xalign(GTK_LABEL(priv->autoconnect_label), 0);
+	priv->autoconnect_label = make_label (_("Au_to-Connect:"), sg);
 	gtk_grid_attach(GTK_GRID(table), priv->autoconnect_label, 0, 2, 1, 1);
 
-	priv->autoconnect_checkbtn = gtk_check_button_new();
-	gtk_label_set_mnemonic_widget(GTK_LABEL(priv->autoconnect_label), priv->autoconnect_checkbtn);
-	gtk_grid_attach(GTK_GRID(table), priv->autoconnect_checkbtn, 1, 2, 1, 1);
+	priv->autoconnect_switch = gtk_switch_new();
+	gtk_widget_set_hexpand (GTK_WIDGET (priv->autoconnect_switch), FALSE);
+	gtk_widget_set_halign (GTK_WIDGET (priv->autoconnect_switch), GTK_ALIGN_END);
+	gtk_widget_set_valign (GTK_WIDGET (priv->autoconnect_switch), GTK_ALIGN_CENTER);
+	gtk_label_set_mnemonic_widget(GTK_LABEL(priv->autoconnect_label), priv->autoconnect_switch);
+	gtk_grid_attach(GTK_GRID(table), priv->autoconnect_switch, 1, 2, 1, 1);
 
-	priv->separator = gtk_separator_new(GTK_ORIENTATION_HORIZONTAL);
-	gtk_grid_attach(GTK_GRID(table), priv->separator, 0, 3, 2, 1);
+	/* Connection Settings */
+	frame = make_frame (_("Connection Settings"));
+	gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, TRUE, 0);
 
-	label = gtk_label_new_with_mnemonic(_("Service t_ype:"));
-	gtk_label_set_xalign(GTK_LABEL(label), 0);
-	gtk_grid_attach(GTK_GRID(table), label, 0, 4, 1, 1);
+	table = make_table ();
+	gtk_container_add (GTK_CONTAINER (frame), table);
 
-	priv->type_combo = combo = gtk_combo_box_new();
-	gtk_grid_attach(GTK_GRID(table), combo, 1, 4, 1, 1);
+	label = make_label (_("Service t_ype:"), sg);
+	gtk_grid_attach(GTK_GRID(table), label, 0, 0, 1, 1);
 
-	label_tmp = gtk_label_new(" ");
-	gtk_grid_attach(GTK_GRID(table), label_tmp, 0, 5, 2, 1);
+	priv->type_combo = combo = gtk_combo_box_new();
+	gtk_grid_attach(GTK_GRID(table), combo, 1, 0, 1, 1);
+	gtk_widget_set_hexpand(GTK_WIDGET(priv->type_combo), TRUE);
 
 	renderer = gtk_cell_renderer_text_new();
 	gtk_cell_layout_pack_start(GTK_CELL_LAYOUT(combo), renderer, TRUE);
@@ -1058,29 +1031,79 @@ static void gigolo_bookmark_edit_dialog_init(GigoloBookmarkEditDialog *dialog)
 	gtk_label_set_mnemonic_widget(GTK_LABEL(label), combo);
 	g_signal_connect(combo, "changed", G_CALLBACK(combo_changed_callback), dialog);
 
+	priv->uri_label = make_label (_("_Location (URI):"), sg);
+	gtk_grid_attach(GTK_GRID(table), priv->uri_label, 0, 1, 1, 1);
+
 	priv->uri_entry = gtk_entry_new();
+	gtk_grid_attach(GTK_GRID(table), priv->uri_entry, 1, 1, 1, 1);
+
+	priv->host_label = make_label (_("_Server:"), sg);
+	gtk_grid_attach(GTK_GRID(table), priv->host_label, 0, 2, 1, 1);
+
 	priv->host_entry = gtk_entry_new();
-	priv->folder_entry = gtk_entry_new();
+	gtk_grid_attach(GTK_GRID(table), priv->host_entry, 1, 2, 1, 1);
+
+	priv->path_label = make_label (_("P_ath:"), sg);
+	gtk_grid_attach(GTK_GRID(table), priv->path_label, 0, 3, 1, 1);
+
 	priv->path_entry = gtk_entry_new();
+	gtk_grid_attach(GTK_GRID(table), priv->path_entry, 1, 3, 1, 1);
+
+	priv->share_label = make_label (_("_Share:"), sg);
+	gtk_grid_attach(GTK_GRID(table), priv->share_label, 0, 4, 1, 1);
+
+	priv->share_combo = gtk_combo_box_text_new_with_entry();
+	gtk_widget_set_hexpand (priv->share_combo, TRUE);
+	priv->share_entry = gtk_bin_get_child(GTK_BIN(priv->share_combo));
+
+	priv->share_button = gtk_button_new();
+	gtk_button_set_image(GTK_BUTTON(priv->share_button),
+						 gtk_image_new_from_icon_name("gtk-refresh", GTK_ICON_SIZE_MENU));
+	gtk_widget_set_sensitive(priv->share_button, FALSE);
+	g_signal_connect(priv->share_button, "clicked", G_CALLBACK(share_button_clicked_cb), dialog);
+
+	priv->share_box = hbox = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 6);
+	gtk_box_pack_start(GTK_BOX(hbox), priv->share_combo, FALSE, TRUE, 0);
+	gtk_box_pack_start(GTK_BOX(hbox), priv->share_button, FALSE, FALSE, 0);
+	gtk_grid_attach(GTK_GRID(table), hbox, 1, 4, 1, 1);
+
+	/* Optional Information */
+	priv->information_frame = frame = make_frame (_("Optional Information"));
+	gtk_box_pack_start(GTK_BOX(vbox), frame, FALSE, TRUE, 0);
+
+	table = make_table ();
+	gtk_container_add(GTK_CONTAINER(frame), table);
+
+	priv->port_label = make_label (_("_Port:"), sg);
+	gtk_grid_attach(GTK_GRID(table), priv->port_label, 0, 0, 1, 1);
+
 	priv->port_spin = gtk_spin_button_new_with_range(0, 65535, 1);
+	gtk_grid_attach(GTK_GRID(table), priv->port_spin, 1, 0, 1, 1);
 	gtk_spin_button_set_value(GTK_SPIN_BUTTON(priv->port_spin), 0.0);
 	gtk_widget_set_tooltip_text(priv->port_spin, _("Set the port to 0 to use the default port"));
+
+	priv->folder_label = make_label (_("_Folder:"), sg);
+	gtk_grid_attach(GTK_GRID(table), priv->folder_label, 0, 1, 1, 1);
+
+	priv->folder_entry = gtk_entry_new();
+	gtk_grid_attach(GTK_GRID(table), priv->folder_entry, 1, 1, 1, 1);
 	gtk_widget_set_tooltip_text(priv->folder_entry,
 		_("This is not used for the actual mount, only necessary for opening the mount point in a file browser"));
-	priv->user_entry = gtk_entry_new();
+	gtk_widget_set_hexpand(priv->folder_entry, TRUE);
+
+	priv->domain_label = make_label (_("_Domain:"), sg);
+	gtk_grid_attach(GTK_GRID(table), priv->domain_label, 0, 2, 1, 1);
+
 	priv->domain_entry = gtk_entry_new();
-	priv->share_combo = gtk_combo_box_text_new_with_entry();
-	priv->share_entry = gtk_bin_get_child(GTK_BIN(priv->share_combo));
+	gtk_grid_attach(GTK_GRID(table), priv->domain_entry, 1, 2, 1, 1);
 
-	priv->uri_label = gtk_label_new_with_mnemonic(_("_Location (URI):"));
-	priv->host_label = gtk_label_new_with_mnemonic(_("_Server:"));
-	priv->folder_label = gtk_label_new_with_mnemonic(_("_Folder:"));
-	priv->path_label = gtk_label_new_with_mnemonic(_("P_ath:"));
-	priv->user_label = gtk_label_new_with_mnemonic(_("_User Name:"));
-	priv->information_label = gtk_label_new(_("Optional information:"));
-	priv->port_label = gtk_label_new_with_mnemonic(_("_Port:"));
-	priv->domain_label = gtk_label_new_with_mnemonic(_("_Domain:"));
-	priv->share_label = gtk_label_new_with_mnemonic(_("_Share:"));
+	priv->user_label = make_label (_("_User Name:"), sg);
+	gtk_grid_attach(GTK_GRID(table), priv->user_label, 0, 3, 1, 1);
+
+	priv->user_entry = gtk_entry_new();
+	gtk_grid_attach(GTK_GRID(table), priv->user_entry, 1, 3, 1, 1);
+	g_signal_connect(priv->host_entry, "changed",
+		G_CALLBACK(host_entry_changed_cb), priv->share_button);
 
 	gtk_entry_set_activates_default(GTK_ENTRY(priv->name_entry), TRUE);
 	gtk_entry_set_activates_default(GTK_ENTRY(priv->uri_entry), TRUE);
@@ -1090,15 +1113,6 @@ static void gigolo_bookmark_edit_dialog_init(GigoloBookmarkEditDialog *dialog)
 	gtk_entry_set_activates_default(GTK_ENTRY(priv->port_spin), TRUE);
 	gtk_entry_set_activates_default(GTK_ENTRY(priv->user_entry), TRUE);
 
-	priv->share_button = gtk_button_new();
-	gtk_button_set_image(GTK_BUTTON(priv->share_button),
-		gtk_image_new_from_icon_name("gtk-refresh", GTK_ICON_SIZE_MENU));
-	gtk_widget_set_sensitive(priv->share_button, FALSE);
-	g_signal_connect(priv->share_button, "clicked", G_CALLBACK(share_button_clicked_cb), dialog);
-
-	g_signal_connect(priv->host_entry, "changed",
-		G_CALLBACK(host_entry_changed_cb), priv->share_button);
-
 	g_signal_connect(priv->name_entry, "activate", G_CALLBACK(entry_activate_cb), dialog);
 	g_signal_connect(priv->uri_entry, "activate", G_CALLBACK(entry_activate_cb), dialog);
 	g_signal_connect(priv->host_entry, "activate", G_CALLBACK(entry_activate_cb), dialog);
@@ -1124,7 +1138,6 @@ static void gigolo_bookmark_edit_dialog_init(GigoloBookmarkEditDialog *dialog)
 	g_object_ref(priv->share_combo);
 	g_object_ref(priv->share_button);
 	g_object_ref(priv->share_label);
-	g_object_ref(priv->information_label);
 
 	gtk_widget_show_all(vbox);
 }

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Xfce4-commits mailing list