From d7f30816321580c5a99aeffcc2a7108876a4b3e4e3fa41f4ce42b6e3c3ff28ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Lie?= Date: Thu, 7 Oct 2021 10:29:52 +0000 Subject: [PATCH] Accepting request 923587 from GNOME:Next Add upstream patch to fix jumpy cursor in gedit and gnome-builder OBS-URL: https://build.opensuse.org/request/show/923587 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gnome-shell?expand=0&rev=487 --- ...2db1d9047ecffcef7d78f00184963b403efc.patch | 50 +++++++++++++++++++ gnome-shell.changes | 10 ++++ gnome-shell.spec | 3 ++ 3 files changed, 63 insertions(+) create mode 100644 380d2db1d9047ecffcef7d78f00184963b403efc.patch diff --git a/380d2db1d9047ecffcef7d78f00184963b403efc.patch b/380d2db1d9047ecffcef7d78f00184963b403efc.patch new file mode 100644 index 0000000..d2a1d17 --- /dev/null +++ b/380d2db1d9047ecffcef7d78f00184963b403efc.patch @@ -0,0 +1,50 @@ +From 380d2db1d9047ecffcef7d78f00184963b403efc Mon Sep 17 00:00:00 2001 +From: Christian Hergert +Date: Wed, 29 Sep 2021 12:46:45 -0700 +Subject: [PATCH] inputMethod: Clear preeditStr before reset + +Previously, these were performed in a different order before GNOME 41. +During some other changes they were swapped. + +However, this causes both GTK 3 and GTK 4 applications to scroll to +incorrect positions from the preedit change. + +Fixes #4647 +Fixes GNOME/gtk#4289 +Fixes GNOME/gnome-builder#1536 +Fixes GNOME/gnome-builder#1531 + +Part-of: +--- + js/misc/inputMethod.js | 10 +++++----- + 1 file changed, 5 insertions(+), 5 deletions(-) + +diff --git a/js/misc/inputMethod.js b/js/misc/inputMethod.js +index 25b02e35b8..1f9eaee7a8 100644 +--- a/js/misc/inputMethod.js ++++ b/js/misc/inputMethod.js +@@ -179,16 +179,16 @@ class InputMethod extends Clutter.InputMethod { + } + + vfunc_reset() { ++ if (this._context) { ++ this._context.reset(); ++ this._emitRequestSurrounding(); ++ } ++ + if (this._preeditStr !== null) { + // Unset any preedit text + this.set_preedit_text(null, 0, Clutter.PreeditResetMode.CLEAR); + this._preeditStr = null; + } +- +- if (this._context) { +- this._context.reset(); +- this._emitRequestSurrounding(); +- } + } + + vfunc_set_cursor_location(rect) { +-- +GitLab + diff --git a/gnome-shell.changes b/gnome-shell.changes index ba6a244..6c36304 100644 --- a/gnome-shell.changes +++ b/gnome-shell.changes @@ -1,3 +1,13 @@ +------------------------------------------------------------------- +Wed Oct 6 20:15:02 UTC 2021 - Bjørn Lie + +- Add 380d2db1d9047ecffcef7d78f00184963b403efc.patch: inputMethod: + Clear preeditStr before reset. Previously, these were performed + in a different order before GNOME 41. During some other changes + they were swapped. + However, this causes both GTK 3 and GTK 4 applications to scroll + to incorrect positions from the preedit change. + ------------------------------------------------------------------- Wed Sep 22 19:25:03 UTC 2021 - Michael Gorse diff --git a/gnome-shell.spec b/gnome-shell.spec index d5270ec..7910a58 100644 --- a/gnome-shell.spec +++ b/gnome-shell.spec @@ -44,6 +44,8 @@ Patch5: gnome-shell-jscSLE9267-Remove-sessionList-of-endSessionDialog.pa Patch6: gnome-shell-jsc#SLE-16051-Input-method-recommendation.patch # PATCH-FIX-OPENSUSE gnome-shell-executable-path-not-absolute.patch bsc#1176051 xwang@suse.com -- Fix ExecStart is not absolute path Patch7: gnome-shell-executable-path-not-absolute.patch +# PATCH-FIX-UPSTREAM 380d2db1d9047ecffcef7d78f00184963b403efc.patch -- inputMethod: Clear preeditStr before reset +Patch8: https://gitlab.gnome.org/GNOME/gnome-shell/-/commit/380d2db1d9047ecffcef7d78f00184963b403efc.patch ## NOTE: Keep SLE-only patches at bottom (starting on 1000). # PATCH-FEATURE-SLE gnome-shell-gdm-login-applet.patch fate#314545 dliang@suse.com -- Add an applet on login UI to display suse icon, product name, hostname. @@ -181,6 +183,7 @@ This package contains an optional extensions app for managing GNOME Shell extens %patch6 -p1 %endif %patch7 -p1 +%patch8 -p1 %if 0%{?sle_version} %patch1001 -p1