Bug: gnome 51 mouse not following focus

Abierto Apto para principiantes
#593 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
75/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
javascript

Línea de trabajo

Lee lib/extension/window.js, especialmente warpPointerToNodeWindow, y comprueba cómo obtiene el asiento predeterminado en GNOME Shell 51. El issue incluye un cambio propuesto de Clutter.get_default_backend() a global.stage.context.get_backend() y registros que muestran que la llamada actual falla. Verifica que el puntero siga el foco en GNOME Shell 51 y que el comportamiento existente siga funcionando en las versiones compatibles.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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

Lenguaje dominante
JavaScript
Estrellas
1.3k
Forks
112
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de forge-ext/forge

Todos los issues de forge-ext/forge

Issues similares

Más issues de JavaScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.