From 74899599a6816d868480cf5228f59ce8fb844abf Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 17 Jun 2020 13:48:40 -0400 Subject: [PATCH 1/6] gtk-demo: Add a missing source file --- demos/gtk-demo/demo.gresource.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/demos/gtk-demo/demo.gresource.xml b/demos/gtk-demo/demo.gresource.xml index 400ecbf208..a1500f0b80 100644 --- a/demos/gtk-demo/demo.gresource.xml +++ b/demos/gtk-demo/demo.gresource.xml @@ -296,6 +296,7 @@ portland-rose.jpg + bluroverlay.h bluroverlay.c From 0fb83d76196da27631b2e925ed9172015cb7ade1 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 17 Jun 2020 17:46:40 -0400 Subject: [PATCH 2/6] gtk4-demo: Cosmetic fixes to the dialog demo Make this look a bit less ancient. --- demos/gtk-demo/dialog.c | 53 ++++++++++++++++------------------------- 1 file changed, 21 insertions(+), 32 deletions(-) diff --git a/demos/gtk-demo/dialog.c b/demos/gtk-demo/dialog.c index ccc16c9f6f..ed5e6b072e 100644 --- a/demos/gtk-demo/dialog.c +++ b/demos/gtk-demo/dialog.c @@ -1,6 +1,7 @@ -/* Dialogs and Message Boxes +/* Dialogs * - * Dialog widgets are used to pop up a transient window for user feedback. + * Dialogs are used to pop up transient windows for information + * and user feedback. */ #include @@ -21,10 +22,9 @@ message_dialog_clicked (GtkButton *button, GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK_CANCEL, - "This message box has been popped up the following\n" - "number of times:"); + "Test message"); gtk_message_dialog_format_secondary_text (GTK_MESSAGE_DIALOG (dialog), - "%d", i); + ngettext ("Has been shown once", "Has been shown %d times", i), i); g_signal_connect (dialog, "response", G_CALLBACK (gtk_window_destroy), NULL); gtk_widget_show (dialog); i++; @@ -61,8 +61,6 @@ interactive_dialog_clicked (GtkButton *button, { GtkWidget *content_area; GtkWidget *dialog; - GtkWidget *hbox; - GtkWidget *image; GtkWidget *table; GtkWidget *local_entry1; GtkWidget *local_entry2; @@ -71,26 +69,24 @@ interactive_dialog_clicked (GtkButton *button, dialog = gtk_dialog_new_with_buttons ("Interactive Dialog", GTK_WINDOW (window), - GTK_DIALOG_MODAL| GTK_DIALOG_DESTROY_WITH_PARENT, - _("_OK"), - GTK_RESPONSE_OK, - "_Cancel", - GTK_RESPONSE_CANCEL, + GTK_DIALOG_MODAL| GTK_DIALOG_DESTROY_WITH_PARENT|GTK_DIALOG_USE_HEADER_BAR, + _("_OK"), GTK_RESPONSE_OK, + _("_Cancel"), GTK_RESPONSE_CANCEL, NULL); + gtk_dialog_set_default_response (GTK_DIALOG (dialog), GTK_RESPONSE_OK); + content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog)); - hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8); - gtk_box_append (GTK_BOX (content_area), hbox); - - image = gtk_image_new_from_icon_name ("dialog-question"); - gtk_image_set_icon_size (GTK_IMAGE (image), GTK_ICON_SIZE_LARGE); - gtk_box_append (GTK_BOX (hbox), image); - table = gtk_grid_new (); - gtk_grid_set_row_spacing (GTK_GRID (table), 4); - gtk_grid_set_column_spacing (GTK_GRID (table), 4); - gtk_box_append (GTK_BOX (hbox), table); + gtk_widget_set_hexpand (table, TRUE); + gtk_widget_set_vexpand (table, TRUE); + gtk_widget_set_halign (table, GTK_ALIGN_CENTER); + gtk_widget_set_valign (table, GTK_ALIGN_CENTER); + gtk_box_append (GTK_BOX (content_area), table); + gtk_grid_set_row_spacing (GTK_GRID (table), 6); + gtk_grid_set_column_spacing (GTK_GRID (table), 6); + label = gtk_label_new_with_mnemonic ("_Entry 1"); gtk_grid_attach (GTK_GRID (table), label, 0, 0, 1, 1); local_entry1 = gtk_entry_new (); @@ -123,7 +119,6 @@ interactive_dialog_clicked (GtkButton *button, GtkWidget * do_dialog (GtkWidget *do_widget) { - GtkWidget *frame; GtkWidget *vbox; GtkWidget *vbox2; GtkWidget *hbox; @@ -136,22 +131,16 @@ do_dialog (GtkWidget *do_widget) window = gtk_window_new (); gtk_window_set_display (GTK_WINDOW (window), gtk_widget_get_display (do_widget)); - gtk_window_set_title (GTK_WINDOW (window), "Dialogs and Message Boxes"); + gtk_window_set_title (GTK_WINDOW (window), "Dialogs"); + gtk_window_set_resizable (GTK_WINDOW (window), FALSE); g_object_add_weak_pointer (G_OBJECT (window), (gpointer *)&window); - frame = gtk_frame_new ("Dialogs"); - gtk_widget_set_margin_start (frame, 8); - gtk_widget_set_margin_end (frame, 8); - gtk_widget_set_margin_top (frame, 8); - gtk_widget_set_margin_bottom (frame, 8); - gtk_window_set_child (GTK_WINDOW (window), frame); - vbox = gtk_box_new (GTK_ORIENTATION_VERTICAL, 8); gtk_widget_set_margin_start (vbox, 8); gtk_widget_set_margin_end (vbox, 8); gtk_widget_set_margin_top (vbox, 8); gtk_widget_set_margin_bottom (vbox, 8); - gtk_frame_set_child (GTK_FRAME (frame), vbox); + gtk_window_set_child (GTK_WINDOW (window), vbox); /* Standard message dialog */ hbox = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 8); From 6141c139e63e5cf7de9b2607a31eb68d8f2e6b7c Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 17 Jun 2020 17:53:40 -0400 Subject: [PATCH 3/6] gtk-demo: Fix the tagged entry demo We were using gtk_box_append on a button. Fallout from the container removal. --- demos/gtk-demo/demotaggedentry.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demos/gtk-demo/demotaggedentry.c b/demos/gtk-demo/demotaggedentry.c index ed92460e0c..d66bbaed23 100644 --- a/demos/gtk-demo/demotaggedentry.c +++ b/demos/gtk-demo/demotaggedentry.c @@ -469,7 +469,7 @@ demo_tagged_entry_tag_set_has_close_button (DemoTaggedEntryTag *tag, image = gtk_image_new_from_icon_name ("window-close-symbolic"); tag->button = gtk_button_new (); - gtk_box_append (GTK_BOX (tag->button), image); + gtk_button_set_child (GTK_BUTTON (tag->button), image); gtk_widget_set_halign (tag->button, GTK_ALIGN_CENTER); gtk_widget_set_valign (tag->button, GTK_ALIGN_CENTER); gtk_button_set_has_frame (GTK_BUTTON (tag->button), FALSE); From b46bfcafd190fa9e2aecbe8e0d0b649d4cb923d1 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 17 Jun 2020 18:06:28 -0400 Subject: [PATCH 4/6] gtk-demo: Cosmetic changes to the tagged entry demo --- demos/gtk-demo/tagged_entry.c | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/demos/gtk-demo/tagged_entry.c b/demos/gtk-demo/tagged_entry.c index 50020c19cf..c07858b546 100644 --- a/demos/gtk-demo/tagged_entry.c +++ b/demos/gtk-demo/tagged_entry.c @@ -57,7 +57,6 @@ do_tagged_entry (GtkWidget *do_widget) static GtkWidget *window = NULL; GtkWidget *box; GtkWidget *box2; - GtkWidget *header; GtkWidget *entry; GtkWidget *button; @@ -66,12 +65,9 @@ do_tagged_entry (GtkWidget *do_widget) window = gtk_window_new (); gtk_window_set_display (GTK_WINDOW (window), gtk_widget_get_display (do_widget)); - header = gtk_header_bar_new (); - gtk_header_bar_set_show_title_buttons (GTK_HEADER_BAR (header), FALSE); - gtk_window_set_titlebar (GTK_WINDOW (window), header); - gtk_window_set_title (GTK_WINDOW (window), "A tagged entry"); - gtk_window_set_resizable (GTK_WINDOW (window), TRUE); - gtk_window_set_deletable (GTK_WINDOW (window), FALSE); + gtk_window_set_title (GTK_WINDOW (window), "Tagged Entry"); + gtk_window_set_resizable (GTK_WINDOW (window), FALSE); + g_object_add_weak_pointer (G_OBJECT (window), (gpointer *)&window); box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 6); @@ -95,13 +91,6 @@ do_tagged_entry (GtkWidget *do_widget) button = gtk_check_button_new_with_mnemonic ("_Spinner"); g_signal_connect (button, "toggled", G_CALLBACK (toggle_spinner), entry); gtk_box_append (GTK_BOX (box2), button); - - button = gtk_button_new_with_mnemonic ("_Done"); - gtk_widget_add_css_class (button, "suggested-action"); - g_signal_connect_swapped (button, "clicked", G_CALLBACK (gtk_window_destroy), window); - gtk_header_bar_pack_end (GTK_HEADER_BAR (header), button); - - gtk_window_set_default_widget (GTK_WINDOW (window), button); } if (!gtk_widget_get_visible (window)) From a9943922d59a02c1ab2623608055548a65b8246f Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Wed, 17 Jun 2020 18:08:17 -0400 Subject: [PATCH 5/6] gtk-demo: Cosmetic changes Reword the titles and texts for several demos. --- demos/gtk-demo/entry_completion.c | 6 +++--- demos/gtk-demo/entry_undo.c | 8 ++++---- demos/gtk-demo/textundo.c | 4 ++-- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/demos/gtk-demo/entry_completion.c b/demos/gtk-demo/entry_completion.c index 6e2d28400c..11ff063a42 100644 --- a/demos/gtk-demo/entry_completion.c +++ b/demos/gtk-demo/entry_completion.c @@ -1,4 +1,4 @@ -/* Entry/Entry Completion +/* Entry/Completion * * GtkEntryCompletion provides a mechanism for adding support for * completion in GtkEntry. @@ -48,7 +48,7 @@ do_entry_completion (GtkWidget *do_widget) window = gtk_window_new (); gtk_window_set_display (GTK_WINDOW (window), gtk_widget_get_display (do_widget)); - gtk_window_set_title (GTK_WINDOW (window), "Entry Completion"); + gtk_window_set_title (GTK_WINDOW (window), "Completion"); gtk_window_set_resizable (GTK_WINDOW (window), FALSE); g_object_add_weak_pointer (G_OBJECT (window), (gpointer *)&window); @@ -60,7 +60,7 @@ do_entry_completion (GtkWidget *do_widget) gtk_window_set_child (GTK_WINDOW (window), vbox); label = gtk_label_new (NULL); - gtk_label_set_markup (GTK_LABEL (label), "Completion demo, try writing total or gnome for example."); + gtk_label_set_markup (GTK_LABEL (label), "Try writing total or gnome for example."); gtk_box_append (GTK_BOX (vbox), label); /* Create our entry */ diff --git a/demos/gtk-demo/entry_undo.c b/demos/gtk-demo/entry_undo.c index 752d87849c..41c4965ecf 100644 --- a/demos/gtk-demo/entry_undo.c +++ b/demos/gtk-demo/entry_undo.c @@ -1,8 +1,8 @@ -/* Entry/Entry Undo +/* Entry/Undo and Redo * * GtkEntry can provide basic Undo/Redo support using standard keyboard - * accelerators such as Primary+z to undo and Primary+Shift+z to redo. - * Additionally, Primary+y can be used to redo. + * accelerators such as Control+z to undo and Control+Shift+z to redo. + * Additionally, Control+y can be used to redo. * * Use gtk_entry_set_enable_undo() to enable undo/redo support. */ @@ -23,7 +23,7 @@ do_entry_undo (GtkWidget *do_widget) window = gtk_window_new (); gtk_window_set_display (GTK_WINDOW (window), gtk_widget_get_display (do_widget)); - gtk_window_set_title (GTK_WINDOW (window), "Entry Undo"); + gtk_window_set_title (GTK_WINDOW (window), "Undo and Redo"); gtk_window_set_resizable (GTK_WINDOW (window), FALSE); g_object_add_weak_pointer (G_OBJECT (window), (gpointer *)&window); diff --git a/demos/gtk-demo/textundo.c b/demos/gtk-demo/textundo.c index f60aa4d189..102b9de84b 100644 --- a/demos/gtk-demo/textundo.c +++ b/demos/gtk-demo/textundo.c @@ -4,7 +4,7 @@ * GtkTextBuffer. You can enable or disable undo support using * gtk_text_buffer_set_enable_undo(). * - * Use Primary+Z to undo and Primary+Shift+Z or Primary+Y to + * Use Control+z to undo and Control+Shift+z or Control+y to * redo previously undone operations. */ @@ -29,7 +29,7 @@ do_textundo (GtkWidget *do_widget) gtk_window_set_default_size (GTK_WINDOW (window), 450, 450); g_object_add_weak_pointer (G_OBJECT (window), (gpointer *)&window); - gtk_window_set_title (GTK_WINDOW (window), "TextView Undo"); + gtk_window_set_title (GTK_WINDOW (window), "Undo and Redo"); view = gtk_text_view_new (); gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (view), GTK_WRAP_WORD); From cd1078563dcc8d5e7ee9f47c2f1c13b7ea22bcfe Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Tue, 16 Jun 2020 16:22:19 -0400 Subject: [PATCH 6/6] gtk-demo: Fix the settings demo This was not updated to the latest api of GtkEditableLabel. --- demos/gtk-demo/listview_settings.ui | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/demos/gtk-demo/listview_settings.ui b/demos/gtk-demo/listview_settings.ui index 8bf7e2582d..b7dfc1733e 100644 --- a/demos/gtk-demo/listview_settings.ui +++ b/demos/gtk-demo/listview_settings.ui @@ -114,7 +114,7 @@