Commit a006f662 authored by Federico Mena Quintero's avatar Federico Mena Quintero Committed by Federico Mena Quintero
Browse files

Merged from gtk-2-4:

2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	Fix #158477:

	* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
	Remove the "save_extra_align" and "browse_extra_align" fields; use
	a single "extra_align" field.
	(save_widgets_create): Don't create the save_extra_align.
	(browse_widgets_create): Don't create the browse_extra_align.
	(gtk_file_chooser_default_constructor): Create the extra_align
	here.
	(set_extra_widget): Add the extra widget to the alignment here,
	and remove the old one if necessary.
	(update_appearance): No need to frob the extra widget's alignments
	anymore.
	(gtk_file_chooser_default_set_property): No need to call
	update_appearance() anymore when we set the extra widget.

2004-11-19  Federico Mena Quintero  <federico@ximian.com>

	Merged from gtk-2-4:

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_initial_focus): Don't set the cursor if
	we are still loading.
parent 74c14630
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix #158477:
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
Remove the "save_extra_align" and "browse_extra_align" fields; use
a single "extra_align" field.
(save_widgets_create): Don't create the save_extra_align.
(browse_widgets_create): Don't create the browse_extra_align.
(gtk_file_chooser_default_constructor): Create the extra_align
here.
(set_extra_widget): Add the extra widget to the alignment here,
and remove the old one if necessary.
(update_appearance): No need to frob the extra widget's alignments
anymore.
(gtk_file_chooser_default_set_property): No need to call
update_appearance() anymore when we set the extra widget.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_initial_focus): Don't set the cursor if
we are still loading.
2004-11-18 Federico Mena Quintero <federico@ximian.com> 2004-11-18 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4: Merged from gtk-2-4:
......
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix #158477:
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
Remove the "save_extra_align" and "browse_extra_align" fields; use
a single "extra_align" field.
(save_widgets_create): Don't create the save_extra_align.
(browse_widgets_create): Don't create the browse_extra_align.
(gtk_file_chooser_default_constructor): Create the extra_align
here.
(set_extra_widget): Add the extra widget to the alignment here,
and remove the old one if necessary.
(update_appearance): No need to frob the extra widget's alignments
anymore.
(gtk_file_chooser_default_set_property): No need to call
update_appearance() anymore when we set the extra widget.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_initial_focus): Don't set the cursor if
we are still loading.
2004-11-18 Federico Mena Quintero <federico@ximian.com> 2004-11-18 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4: Merged from gtk-2-4:
......
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix #158477:
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
Remove the "save_extra_align" and "browse_extra_align" fields; use
a single "extra_align" field.
(save_widgets_create): Don't create the save_extra_align.
(browse_widgets_create): Don't create the browse_extra_align.
(gtk_file_chooser_default_constructor): Create the extra_align
here.
(set_extra_widget): Add the extra widget to the alignment here,
and remove the old one if necessary.
(update_appearance): No need to frob the extra widget's alignments
anymore.
(gtk_file_chooser_default_set_property): No need to call
update_appearance() anymore when we set the extra widget.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_initial_focus): Don't set the cursor if
we are still loading.
2004-11-18 Federico Mena Quintero <federico@ximian.com> 2004-11-18 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4: Merged from gtk-2-4:
......
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
Fix #158477:
* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
Remove the "save_extra_align" and "browse_extra_align" fields; use
a single "extra_align" field.
(save_widgets_create): Don't create the save_extra_align.
(browse_widgets_create): Don't create the browse_extra_align.
(gtk_file_chooser_default_constructor): Create the extra_align
here.
(set_extra_widget): Add the extra widget to the alignment here,
and remove the old one if necessary.
(update_appearance): No need to frob the extra widget's alignments
anymore.
(gtk_file_chooser_default_set_property): No need to call
update_appearance() anymore when we set the extra widget.
2004-11-19 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4:
* gtk/gtkfilechooserdefault.c
(gtk_file_chooser_default_initial_focus): Don't set the cursor if
we are still loading.
2004-11-18 Federico Mena Quintero <federico@ximian.com> 2004-11-18 Federico Mena Quintero <federico@ximian.com>
Merged from gtk-2-4: Merged from gtk-2-4:
......
...@@ -110,7 +110,6 @@ struct _GtkFileChooserDefault ...@@ -110,7 +110,6 @@ struct _GtkFileChooserDefault
GtkWidget *save_file_name_entry; GtkWidget *save_file_name_entry;
GtkWidget *save_folder_label; GtkWidget *save_folder_label;
GtkWidget *save_folder_combo; GtkWidget *save_folder_combo;
GtkWidget *save_extra_align;
GtkWidget *save_expander; GtkWidget *save_expander;
/* The file browsing widgets */ /* The file browsing widgets */
...@@ -124,7 +123,6 @@ struct _GtkFileChooserDefault ...@@ -124,7 +123,6 @@ struct _GtkFileChooserDefault
GtkWidget *browse_files_popup_menu_hidden_files_item; GtkWidget *browse_files_popup_menu_hidden_files_item;
GtkWidget *browse_new_folder_button; GtkWidget *browse_new_folder_button;
GtkWidget *browse_path_bar; GtkWidget *browse_path_bar;
GtkWidget *browse_extra_align;
GtkFileSystemModel *browse_files_model; GtkFileSystemModel *browse_files_model;
...@@ -133,6 +131,7 @@ struct _GtkFileChooserDefault ...@@ -133,6 +131,7 @@ struct _GtkFileChooserDefault
GtkWidget *preview_box; GtkWidget *preview_box;
GtkWidget *preview_label; GtkWidget *preview_label;
GtkWidget *preview_widget; GtkWidget *preview_widget;
GtkWidget *extra_align;
GtkWidget *extra_widget; GtkWidget *extra_widget;
GtkListStore *shortcuts_model; GtkListStore *shortcuts_model;
...@@ -3360,10 +3359,6 @@ save_widgets_create (GtkFileChooserDefault *impl) ...@@ -3360,10 +3359,6 @@ save_widgets_create (GtkFileChooserDefault *impl)
0, 0); 0, 0);
gtk_label_set_mnemonic_widget (GTK_LABEL (impl->save_folder_label), impl->save_folder_combo); gtk_label_set_mnemonic_widget (GTK_LABEL (impl->save_folder_label), impl->save_folder_combo);
/* custom widget */
impl->save_extra_align = gtk_alignment_new (0.0, 0.5, 1.0, 1.0);
gtk_box_pack_start (GTK_BOX (vbox), impl->save_extra_align, FALSE, FALSE, 0);
/* Expander */ /* Expander */
alignment = gtk_alignment_new (0.0, 0.5, 1.0, 1.0); alignment = gtk_alignment_new (0.0, 0.5, 1.0, 1.0);
gtk_box_pack_start (GTK_BOX (vbox), alignment, FALSE, FALSE, 0); gtk_box_pack_start (GTK_BOX (vbox), alignment, FALSE, FALSE, 0);
...@@ -3404,10 +3399,6 @@ browse_widgets_create (GtkFileChooserDefault *impl) ...@@ -3404,10 +3399,6 @@ browse_widgets_create (GtkFileChooserDefault *impl)
g_object_unref (size_group); g_object_unref (size_group);
/* Alignment to hold custom widget */
impl->browse_extra_align = gtk_alignment_new (0.0, .5, 1.0, 1.0);
gtk_box_pack_start (GTK_BOX (vbox), impl->browse_extra_align, FALSE, FALSE, 0);
return vbox; return vbox;
} }
...@@ -3440,6 +3431,10 @@ gtk_file_chooser_default_constructor (GType type, ...@@ -3440,6 +3431,10 @@ gtk_file_chooser_default_constructor (GType type,
impl->browse_widgets = browse_widgets_create (impl); impl->browse_widgets = browse_widgets_create (impl);
gtk_box_pack_start (GTK_BOX (impl), impl->browse_widgets, TRUE, TRUE, 0); gtk_box_pack_start (GTK_BOX (impl), impl->browse_widgets, TRUE, TRUE, 0);
/* Alignment to hold extra widget */
impl->extra_align = gtk_alignment_new (0.0, 0.5, 1.0, 1.0);
gtk_box_pack_start (GTK_BOX (impl), impl->extra_align, FALSE, FALSE, 0);
gtk_widget_pop_composite_child (); gtk_widget_pop_composite_child ();
update_appearance (impl); update_appearance (impl);
...@@ -3459,9 +3454,19 @@ set_extra_widget (GtkFileChooserDefault *impl, ...@@ -3459,9 +3454,19 @@ set_extra_widget (GtkFileChooserDefault *impl,
} }
if (impl->extra_widget) if (impl->extra_widget)
{
gtk_container_remove (GTK_CONTAINER (impl->extra_align), impl->extra_widget);
g_object_unref (impl->extra_widget); g_object_unref (impl->extra_widget);
}
impl->extra_widget = extra_widget; impl->extra_widget = extra_widget;
if (impl->extra_widget)
{
gtk_container_add (GTK_CONTAINER (impl->extra_align), impl->extra_widget);
gtk_widget_show (impl->extra_align);
}
else
gtk_widget_hide (impl->extra_align);
} }
static void static void
...@@ -3600,8 +3605,6 @@ set_file_system_backend (GtkFileChooserDefault *impl, ...@@ -3600,8 +3605,6 @@ set_file_system_backend (GtkFileChooserDefault *impl,
static void static void
update_appearance (GtkFileChooserDefault *impl) update_appearance (GtkFileChooserDefault *impl)
{ {
GtkWidget *child;
if (impl->action == GTK_FILE_CHOOSER_ACTION_SAVE || if (impl->action == GTK_FILE_CHOOSER_ACTION_SAVE ||
impl->action == GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER) impl->action == GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER)
{ {
...@@ -3650,56 +3653,6 @@ update_appearance (GtkFileChooserDefault *impl) ...@@ -3650,56 +3653,6 @@ update_appearance (GtkFileChooserDefault *impl)
else else
gtk_widget_show (impl->browse_new_folder_button); gtk_widget_show (impl->browse_new_folder_button);
if (impl->extra_widget)
{
GtkWidget *align;
GtkWidget *unused_align;
if (impl->action == GTK_FILE_CHOOSER_ACTION_SAVE
|| impl->action == GTK_FILE_CHOOSER_ACTION_CREATE_FOLDER)
{
align = impl->save_extra_align;
unused_align = impl->browse_extra_align;
}
else
{
align = impl->browse_extra_align;
unused_align = impl->save_extra_align;
}
/* We own a ref on extra_widget, so it's safe to do this */
child = GTK_BIN (unused_align)->child;
if (child)
gtk_container_remove (GTK_CONTAINER (unused_align), child);
child = GTK_BIN (align)->child;
if (child && child != impl->extra_widget)
{
gtk_container_remove (GTK_CONTAINER (align), child);
gtk_container_add (GTK_CONTAINER (align), impl->extra_widget);
}
else if (child == NULL)
{
gtk_container_add (GTK_CONTAINER (align), impl->extra_widget);
}
gtk_widget_show (align);
gtk_widget_hide (unused_align);
}
else
{
child = GTK_BIN (impl->browse_extra_align)->child;
if (child)
gtk_container_remove (GTK_CONTAINER (impl->browse_extra_align), child);
child = GTK_BIN (impl->save_extra_align)->child;
if (child)
gtk_container_remove (GTK_CONTAINER (impl->save_extra_align), child);
gtk_widget_hide (impl->save_extra_align);
gtk_widget_hide (impl->browse_extra_align);
}
gtk_widget_queue_draw (impl->browse_files_tree_view); gtk_widget_queue_draw (impl->browse_files_tree_view);
g_signal_emit_by_name (impl, "default-size-changed"); g_signal_emit_by_name (impl, "default-size-changed");
...@@ -3760,7 +3713,6 @@ gtk_file_chooser_default_set_property (GObject *object, ...@@ -3760,7 +3713,6 @@ gtk_file_chooser_default_set_property (GObject *object,
break; break;
case GTK_FILE_CHOOSER_PROP_EXTRA_WIDGET: case GTK_FILE_CHOOSER_PROP_EXTRA_WIDGET:
set_extra_widget (impl, g_value_get_object (value)); set_extra_widget (impl, g_value_get_object (value));
update_appearance (impl);
break; break;
case GTK_FILE_CHOOSER_PROP_SELECT_MULTIPLE: case GTK_FILE_CHOOSER_PROP_SELECT_MULTIPLE:
{ {
...@@ -5191,12 +5143,15 @@ gtk_file_chooser_default_initial_focus (GtkFileChooserEmbed *chooser_embed) ...@@ -5191,12 +5143,15 @@ gtk_file_chooser_default_initial_focus (GtkFileChooserEmbed *chooser_embed)
if (impl->action == GTK_FILE_CHOOSER_ACTION_OPEN if (impl->action == GTK_FILE_CHOOSER_ACTION_OPEN
|| impl->action == GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER) || impl->action == GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER)
{
if (impl->load_state == LOAD_FINISHED)
{ {
GtkTreePath *path; GtkTreePath *path;
path = gtk_tree_path_new_from_indices (0, -1); path = gtk_tree_path_new_from_indices (0, -1);
gtk_tree_view_set_cursor (GTK_TREE_VIEW (impl->browse_files_tree_view), path, NULL, FALSE); gtk_tree_view_set_cursor (GTK_TREE_VIEW (impl->browse_files_tree_view), path, NULL, FALSE);
gtk_tree_path_free (path); gtk_tree_path_free (path);
}
widget = impl->browse_files_tree_view; widget = impl->browse_files_tree_view;
} }
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment