From 3ee5354e0f8a127e284e2d96b379b9f675f20cf7 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 18 Feb 2021 15:33:01 -0500 Subject: [PATCH 1/3] imwayland: Be careful about cursor positions We don't want to hand out cursor positions based on the original preedit text and then tweak the text to be different. --- gtk/gtkimcontextwayland.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gtk/gtkimcontextwayland.c b/gtk/gtkimcontextwayland.c index 397909064d..0bee5162d9 100644 --- a/gtk/gtkimcontextwayland.c +++ b/gtk/gtkimcontextwayland.c @@ -609,7 +609,7 @@ gtk_im_context_wayland_get_preedit_string (GtkIMContext *context, int *cursor_pos) { GtkIMContextWayland *context_wayland = GTK_IM_CONTEXT_WAYLAND (context); - const char *preedit_str; + char *preedit_str; if (attrs) *attrs = NULL; @@ -628,10 +628,8 @@ gtk_im_context_wayland_get_preedit_string (GtkIMContext *context, } preedit_str = - context_wayland->current_preedit.text ? context_wayland->current_preedit.text : ""; + tweak_preedit (context_wayland->current_preedit.text ? context_wayland->current_preedit.text : ""); - if (str) - *str = tweak_preedit (preedit_str); if (cursor_pos) *cursor_pos = g_utf8_strlen (preedit_str, context_wayland->current_preedit.cursor_begin); @@ -665,6 +663,10 @@ gtk_im_context_wayland_get_preedit_string (GtkIMContext *context, pango_attr_list_insert (*attrs, cursor); } } + if (str) + *str = preedit_str; + else + g_free (preedit_str); } static gboolean From 4d0a1a97ccce80092ab7a9323c41d09f08865b9a Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 18 Feb 2021 22:51:35 -0500 Subject: [PATCH 2/3] widget-factory: Make --version match about Print the same version information in --version that we show in the about dialog. --- demos/widget-factory/widget-factory.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/demos/widget-factory/widget-factory.c b/demos/widget-factory/widget-factory.c index ef952aca6a..8e8da85f4a 100644 --- a/demos/widget-factory/widget-factory.c +++ b/demos/widget-factory/widget-factory.c @@ -2329,10 +2329,10 @@ activate (GApplication *app) static void print_version (void) { - g_print ("gtk4-widget-factory %d.%d.%d\n", - gtk_get_major_version (), - gtk_get_minor_version (), - gtk_get_micro_version ()); + g_print ("gtk4-widget-factory %s%s%s\n", + PACKAGE_VERSION, + g_strcmp0 (PROFILE, "devel") == 0 ? "-" : "", + g_strcmp0 (PROFILE, "devel") == 0 ? VCS_TAG : ""); } static int From 516776b630d38a7e95b1bc0b33fb1f0e6ecccfbf Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Thu, 18 Feb 2021 22:52:15 -0500 Subject: [PATCH 3/3] gtk-demo: Make --version match about Print the same version information in --version that we show in the about dialog. --- demos/gtk-demo/main.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/demos/gtk-demo/main.c b/demos/gtk-demo/main.c index 5ae00882ac..96ec96e476 100644 --- a/demos/gtk-demo/main.c +++ b/demos/gtk-demo/main.c @@ -1052,10 +1052,10 @@ out: static void print_version (void) { - g_print ("gtk4-demo %d.%d.%d\n", - gtk_get_major_version (), - gtk_get_minor_version (), - gtk_get_micro_version ()); + g_print ("gtk4-demo %s%s%s\n", + PACKAGE_VERSION, + g_strcmp0 (PROFILE, "devel") == 0 ? "-" : "", + g_strcmp0 (PROFILE, "devel") == 0 ? VCS_TAG : ""); } static int