Bug: gnome 51 mouse not following focus

Aperta Adatta ai principianti
#593 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
75/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
javascript

Direzione di ricerca

Leggi lib/extension/window.js, in particolare warpPointerToNodeWindow, e controlla come viene ottenuto il seat predefinito in GNOME Shell 51. L’issue include una modifica proposta da Clutter.get_default_backend() a global.stage.context.get_backend() e log che mostrano che la chiamata attuale non riesce. Verifica che il puntatore segua il focus in GNOME Shell 51 e che il comportamento esistente continui a funzionare nelle versioni supportate.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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

Lingua principale
JavaScript
Stelle
1.3k
Fork
112
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di forge-ext/forge

Tutte le issue di forge-ext/forge

Issue simili

Altre issue su JavaScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.