summaryrefslogtreecommitdiff
path: root/app-i18n/ibus/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2021-12-05 02:47:11 +0000
committerV3n3RiX <venerix@koprulu.sector>2021-12-05 02:47:11 +0000
commit2771f79232c273bc2a57d23bf335dd81ccf6af28 (patch)
treec8af0fd04194aed03cf067d44e53c7edd3e9ab84 /app-i18n/ibus/files
parente9d044d4b9b71200a96adfa280848858c0f468c9 (diff)
gentoo resync : 05.12.2021
Diffstat (limited to 'app-i18n/ibus/files')
-rw-r--r--app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch b/app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch
new file mode 100644
index 000000000000..6187ff77fbac
--- /dev/null
+++ b/app-i18n/ibus/files/ibus-1.5.25-ibusimcontext.patch
@@ -0,0 +1,35 @@
+https://github.com/ibus/ibus/issues/2337
+https://bugs.gentoo.org/824494
+---
+diff --git a/client/gtk2/ibusimcontext.c b/client/gtk2/ibusimcontext.c
+index da9a402..b1ccede 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;
+diff --git a/client/gtk3/ibusimcontext.c b/client/gtk3/ibusimcontext.c
+index da9a402..b1ccede 100644
+--- a/client/gtk3/ibusimcontext.c
++++ b/client/gtk3/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;