[evolution] EMailSignatureEditor: Use a header bar as title bar



commit a98463cd34b1352ad1cdf7c9d0a1bebd1a8c8c93
Author: Cédric Bellegarde <cedric bellegarde adishatz org>
Date:   Sat Jun 25 16:20:31 2022 +0200

    EMailSignatureEditor: Use a header bar as title bar

 src/e-util/e-mail-signature-editor.c | 23 +++++++++++++----------
 1 file changed, 13 insertions(+), 10 deletions(-)
---
diff --git a/src/e-util/e-mail-signature-editor.c b/src/e-util/e-mail-signature-editor.c
index 77b01e2fb8..4227dce950 100644
--- a/src/e-util/e-mail-signature-editor.c
+++ b/src/e-util/e-mail-signature-editor.c
@@ -79,11 +79,6 @@ static const gchar *ui =
 "      </menu>\n"
 "    </placeholder>\n"
 "  </menubar>\n"
-"  <toolbar name='main-toolbar'>\n"
-"    <placeholder name='pre-main-toolbar'>\n"
-"      <toolitem action='save-and-close'/>\n"
-"    </placeholder>\n"
-"  </toolbar>\n"
 "</ui>";
 
 G_DEFINE_TYPE (
@@ -523,6 +518,7 @@ mail_signature_editor_constructed (GObject *object)
        GtkAction *action;
        GtkWidget *container;
        GtkWidget *widget;
+       GtkWidget *button;
        GtkWidget *hbox;
        const gchar *display_name;
        GError *error = NULL;
@@ -561,7 +557,6 @@ mail_signature_editor_constructed (GObject *object)
 
        gtk_ui_manager_ensure_update (ui_manager);
 
-       gtk_window_set_title (GTK_WINDOW (window), _("Edit Signature"));
        gtk_window_set_default_size (GTK_WINDOW (window), 600, 440);
 
        widget = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
@@ -572,14 +567,22 @@ mail_signature_editor_constructed (GObject *object)
 
        /* Construct the main menu and toolbar. */
 
+       widget = gtk_header_bar_new ();
+       gtk_widget_show (widget);
+       gtk_header_bar_set_show_close_button (GTK_HEADER_BAR (widget), TRUE);
+       gtk_header_bar_set_title (GTK_HEADER_BAR (widget), _("Edit Signature"));
+       gtk_window_set_titlebar (GTK_WINDOW (window), widget);
+
+       action = gtk_action_group_get_action (window->priv->action_group, "save-and-close");
+       button = e_header_bar_button_new (_("Save"), action);
+       e_header_bar_button_css_add_class (E_HEADER_BAR_BUTTON (button), "suggested-action");
+       gtk_widget_show (button);
+       gtk_header_bar_pack_start (GTK_HEADER_BAR (widget), button);
+
        widget = e_html_editor_get_managed_widget (editor, "/main-menu");
        window->priv->menu_bar = e_menu_bar_new (GTK_MENU_BAR (widget), GTK_WINDOW (window));
        gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
 
-       widget = e_html_editor_get_managed_widget (editor, "/main-toolbar");
-       gtk_box_pack_start (GTK_BOX (container), widget, FALSE, FALSE, 0);
-       gtk_widget_show (widget);
-
        /* Construct the signature name entry. */
 
        widget = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 6);


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