Bug: gnome 51 mouse not following focus

オープン 初心者向け
#593 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
75/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
javascript

調査の方向性

lib/extension/window.js、特に warpPointerToNodeWindow を読み、GNOME Shell 51 でデフォルトのシートをどのように取得しているか確認してください。Issue には、Clutter.get_default_backend() を global.stage.context.get_backend() に変更する提案と、現在の呼び出しが失敗することを示すログが含まれています。GNOME Shell 51 でポインターがフォーカスに追従すること、またサポート対象バージョンで既存の動作が引き続き機能することを確認してください。

索引モデルが issue の本文から書いたものです。

説明

bug
Issue/Bug Description/Video Capture/Screenshots

Hello,

Since gnome 51 (on fedora 45) the mouse does not follow the focus anymore.
This fixes it.

--- a/lib/extension/window.js
+++ b/lib/extension/window.js
@@ -1891,7 +1891,8 @@ export class WindowManager extends GObject.Object {
   warpPointerToNodeWindow(nodeWindow) {
     const newCoord = this.getPointerPositionInside(nodeWindow);
     if (newCoord && newCoord.x && newCoord.y) {
-      const seat = Clutter.get_default_backend().get_default_seat();
+      const backend = global.stage.context.get_backend();
+      const seat = backend.get_default_seat();
       if (seat) {
         const wmTitle = nodeWindow.nodeValue.get_title();
         Logger.debug(`moved pointer to [${wmTitle}] at (${newCoord.x},${newCoord.y})`);
Steps to reproduce

No response

Distribution and Linux version
NAME="Fedora Linux"
VERSION="45 (Workstation Edition)"
RELEASE_TYPE=stable
ID=fedora
VERSION_ID=45
VERSION_CODENAME=""
PRETTY_NAME="Fedora Linux 45 (Workstation Edition)"
ANSI_COLOR="0;38;2;60;110;180"
LOGO=fedora-logo-icon
CPE_NAME="cpe:/o:fedoraproject:fedora:45"
DEFAULT_HOSTNAME="fedora"
HOME_URL="https://fedoraproject.org/"
DOCUMENTATION_URL="https://docs.fedoraproject.org/en-US/fedora/f45/"
SUPPORT_URL="https://ask.fedoraproject.org/"
BUG_REPORT_URL="https://bugzilla.redhat.com/"
REDHAT_BUGZILLA_PRODUCT="Fedora"
REDHAT_BUGZILLA_PRODUCT_VERSION=45
REDHAT_SUPPORT_PRODUCT="Fedora"
REDHAT_SUPPORT_PRODUCT_VERSION=45
SUPPORT_END=2027-12-08
VARIANT="Workstation Edition"
VARIANT_ID=workstation
Linux zephyrusg14 7.3.3-1.cachyos1.fc45.x86_64 #1 SMP PREEMPT_DYNAMIC Sun Nov  8 17:32:56 UTC 2026 x86_64 GNU/Linux
Journal Logs from the last hour
nov. 09 20:23:02 zephyrusg14 gnome-shell[87805]: meta_window_set_stack_position_no_sync: assertion 'window->stack_position >= 0' failed
nov. 09 20:30:21 zephyrusg14 gnome-shell[87805]: JS ERROR: TypeError: (intermediate value).get_default_backend is not a function
                                                 warpPointerToNodeWindow@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/window.js:1897:28
                                                 movePointerWith@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/window.js:1887:14
                                                 focus@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/tree.js:851:20
                                                 command@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/window.js:542:37
                                                 buildBindingDefinitions/window-focus-left/<@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/keybindings.js:212:22
                                                 window-focus-left@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/keybindings.js:211:17
                                                 @resource:///org/gnome/shell/ui/init.js:20:20
nov. 09 20:30:21 zephyrusg14 gnome-shell[87805]: JS ERROR: TypeError: (intermediate value).get_default_backend is not a function
                                                 warpPointerToNodeWindow@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/window.js:1897:28
                                                 movePointerWith@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/window.js:1887:14
                                                 focus@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/tree.js:851:20
                                                 command@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/window.js:542:37
                                                 buildBindingDefinitions/window-focus-right/<@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/keybindings.js:245:22
                                                 window-focus-right@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/keybindings.js:244:17
                                                 @resource:///org/gnome/shell/ui/init.js:20:20
nov. 09 20:30:21 zephyrusg14 gnome-shell[87805]: JS ERROR: TypeError: (intermediate value).get_default_backend is not a function
                                                 warpPointerToNodeWindow@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/window.js:1897:28
                                                 movePointerWith@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/window.js:1887:14
                                                 focus@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/tree.js:851:20
                                                 command@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/window.js:542:37
                                                 buildBindingDefinitions/window-focus-left/<@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/keybindings.js:212:22
                                                 window-focus-left@file:///usr/share/gnome-shell/extensions/[email protected]/lib/extension/keybindings.js:211:17
                                                 @resource:///org/gnome/shell/ui/init.js:20:20
GNOME Shell version

GNOME Shell 51.1

Forge version

a458e308b59254ae6e5208ac751be7dbb8ba349b

Other installed/enabled extensions
blur-my-shell@aunetx
  Nom: Blur my Shell
  Description: Adds a blur look to different parts of GNOME Shell, including the top panel, dash and overview.

Note: if the extension shows an error after updating, restart your session to see whether it persists. This is due to a GNOME Shell bug that the extension cannot work around.
  Chemin: /home/vcarbona/.local/share/gnome-shell/extensions/blur-my-shell@aunetx
  URL: https://github.com/aunetx/blur-my-shell
  Version: 77
  Activé: Oui
  État: ACTIVE

[email protected]
  Nom: GPU Supergfxctl Switch
  Description: Simple GPU Profile switcher Gnome-Shell-Extension for ASUS laptops using Supergfxctl
  Chemin: /home/vcarbona/.local/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/chikobara/GPU-Switcher-Supergfxctl
  Version: 17
  Activé: Oui
  État: ACTIVE

[email protected]
  Nom: AppIndicator and KStatusNotifierItem Support
  Description: Adds AppIndicator, KStatusNotifierItem and legacy Tray icons support to the Shell
  Chemin: /usr/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/ubuntu/gnome-shell-extension-appindicator
  Activé: Oui
  État: ACTIVE

[email protected]
  Nom: Forge
  Description: Tiling and window manager for GNOME
- Please report bugs/issues on https://github.com/forge-ext/forge/issues
- Needs a new maintainer.
  Chemin: /usr/share/gnome-shell/extensions/[email protected]
  URL: https://github.com/forge-ext/forge
  Activé: Oui
  État: ACTIVE
Monitor Setup

1x 4k horizontal

Other Notes

No response

主要言語
JavaScript
スター
1.3k
フォーク
112
PR マージ指標
30日以内にマージされた PR はありません

環境構築

このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

forge-ext/forge のほかの issue

forge-ext/forge の issue をすべて見る

似ている issue

JavaScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。