diff options
-rw-r--r-- | gtk/gtkfilechooserdialog.c | 67 | ||||
-rw-r--r-- | gtk/gtkheaderbar.c | 3 | ||||
-rw-r--r-- | gtk/gtkprinteroptionwidget.c | 2 | ||||
-rw-r--r-- | tests/print-editor.c | 1 |
4 files changed, 39 insertions, 34 deletions
diff --git a/gtk/gtkfilechooserdialog.c b/gtk/gtkfilechooserdialog.c index 1eae65ae18..f7f8356c6c 100644 --- a/gtk/gtkfilechooserdialog.c +++ b/gtk/gtkfilechooserdialog.c @@ -488,38 +488,41 @@ setup_search (GtkFileChooserDialog *dialog) priv->widget, "search-mode", G_BINDING_BIDIRECTIONAL); - box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); - gtk_widget_set_valign (box, GTK_ALIGN_CENTER); - - label = gtk_label_new (NULL); - gtk_widget_set_halign (label, GTK_ALIGN_CENTER); - gtk_label_set_single_line_mode (GTK_LABEL (label), TRUE); - gtk_label_set_ellipsize (GTK_LABEL (label), PANGO_ELLIPSIZE_END); - gtk_label_set_width_chars (GTK_LABEL (label), 5); - gtk_widget_add_css_class (label, GTK_STYLE_CLASS_TITLE); - gtk_widget_set_parent (label, box); - - g_object_bind_property (dialog, "title", - label, "label", - G_BINDING_SYNC_CREATE); - - label = gtk_label_new (NULL); - gtk_widget_set_halign (label, GTK_ALIGN_CENTER); - gtk_label_set_single_line_mode (GTK_LABEL (label), TRUE); - gtk_label_set_ellipsize (GTK_LABEL (label), PANGO_ELLIPSIZE_END); - gtk_widget_add_css_class (label, GTK_STYLE_CLASS_SUBTITLE); - gtk_widget_set_parent (label, box); - - g_object_bind_property (priv->widget, "subtitle", - label, "label", - G_BINDING_SYNC_CREATE); - g_object_bind_property_full (priv->widget, "subtitle", - label, "visible", - G_BINDING_SYNC_CREATE, - translate_subtitle_to_visible, - NULL, NULL, NULL); - - gtk_header_bar_set_title_widget (GTK_HEADER_BAR (header), box); + if (!priv->has_entry) + { + box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); + gtk_widget_set_valign (box, GTK_ALIGN_CENTER); + + label = gtk_label_new (NULL); + gtk_widget_set_halign (label, GTK_ALIGN_CENTER); + gtk_label_set_single_line_mode (GTK_LABEL (label), TRUE); + gtk_label_set_ellipsize (GTK_LABEL (label), PANGO_ELLIPSIZE_END); + gtk_label_set_width_chars (GTK_LABEL (label), 5); + gtk_widget_add_css_class (label, GTK_STYLE_CLASS_TITLE); + gtk_widget_set_parent (label, box); + + g_object_bind_property (dialog, "title", + label, "label", + G_BINDING_SYNC_CREATE); + + label = gtk_label_new (NULL); + gtk_widget_set_halign (label, GTK_ALIGN_CENTER); + gtk_label_set_single_line_mode (GTK_LABEL (label), TRUE); + gtk_label_set_ellipsize (GTK_LABEL (label), PANGO_ELLIPSIZE_END); + gtk_widget_add_css_class (label, GTK_STYLE_CLASS_SUBTITLE); + gtk_widget_set_parent (label, box); + + g_object_bind_property (priv->widget, "subtitle", + label, "label", + G_BINDING_SYNC_CREATE); + g_object_bind_property_full (priv->widget, "subtitle", + label, "visible", + G_BINDING_SYNC_CREATE, + translate_subtitle_to_visible, + NULL, NULL, NULL); + + gtk_header_bar_set_title_widget (GTK_HEADER_BAR (header), box); + } gtk_container_forall (GTK_CONTAINER (header), add_button, dialog); } diff --git a/gtk/gtkheaderbar.c b/gtk/gtkheaderbar.c index 25fb6d7e75..eee669e2c8 100644 --- a/gtk/gtkheaderbar.c +++ b/gtk/gtkheaderbar.c @@ -318,7 +318,8 @@ gtk_header_bar_set_title_widget (GtkHeaderBar *bar, if (priv->title_widget == title_widget) return; - g_clear_pointer (&priv->title_widget, gtk_widget_unparent); + gtk_center_box_set_center_widget (GTK_CENTER_BOX (priv->center_box), NULL); + priv->title_widget = NULL; if (title_widget != NULL) { diff --git a/gtk/gtkprinteroptionwidget.c b/gtk/gtkprinteroptionwidget.c index 694fec9e48..eff9f7fd9a 100644 --- a/gtk/gtkprinteroptionwidget.c +++ b/gtk/gtkprinteroptionwidget.c @@ -498,7 +498,7 @@ dialog_response_callback (GtkDialog *dialog, g_free (uri); } - g_object_unref (new_location); + g_clear_object (&new_location); g_clear_object (&priv->last_location); /* unblock the handler which was blocked in the filesave_choose_cb function */ diff --git a/tests/print-editor.c b/tests/print-editor.c index 2ae6f6609f..0d2ee82133 100644 --- a/tests/print-editor.c +++ b/tests/print-editor.c @@ -746,6 +746,7 @@ activate (GApplication *app) main_window = gtk_application_window_new (GTK_APPLICATION (app)); gtk_window_set_icon_name (GTK_WINDOW (main_window), "text-editor"); gtk_window_set_default_size (GTK_WINDOW (main_window), 400, 600); + gtk_application_window_set_show_menubar (GTK_APPLICATION_WINDOW (main_window), TRUE); update_title (GTK_WINDOW (main_window)); box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); |