summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlynx Zhou <alynx.zhou@gmail.com>2021-09-01 12:04:12 +0900
committerfujiwarat <takao.fujiwara1@gmail.com>2021-09-01 12:04:12 +0900
commit936a0e76df79d92a8bdc03e9205330fb84a2083e (patch)
tree7f0ccd588ec28395bafaf9cedf2a3d6e71a97349
parentcfb263f04f82a83dd94f6eedcd5017d40a4a1a05 (diff)
downloadibus-936a0e76df79d92a8bdc03e9205330fb84a2083e.tar.gz
client/gtk2/ibusimcontext: Fix wrong cursor location in gtk3 apps
If you apply this patch in your tarball, please also apply this to client/gtk3/ibusimcontext.c besides client/gtk2/ibusimcontext.c . BUG=https://github.com/ibus/ibus/issues/2337
-rw-r--r--client/gtk2/ibusimcontext.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c
index da9a402f..b1ccede9 100644
--- a/client/gtk2/ibusimcontext.c
+++ b/client/gtk2/ibusimcontext.c
@@ -1497,7 +1497,10 @@ _set_cursor_location_internal (IBusIMContext *ibusimcontext)
#if GTK_CHECK_VERSION (3, 98, 4)
#elif GTK_CHECK_VERSION (2, 91, 0)
- area.y += gdk_window_get_height (ibusimcontext->client_window);
+ if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
+ area.x = 0;
+ area.y += gdk_window_get_height (ibusimcontext->client_window);
+ }
#else
if (area.x == -1 && area.y == -1 && area.width == 0 && area.height == 0) {
gint w, h;