Summary
On Fedora GNOME Wayland, launching Zed leaves the mouse cursor in GNOME's busy/loading state for about 15 seconds. The Zed window is visible and usable immediately; only the global cursor feedback remains busy until it times out.
The busy cursor appears everywhere, not just over the Zed window.
Environment
- Zed:
1.6.3 stable.306, commit 601ecb3ee5c16940191818ee7f244837abf6983c
- Install method: official per-user install under
~/.local/zed.app
- CLI:
~/.local/bin/zed -> ~/.local/zed.app/bin/zed
- App binary:
~/.local/zed.app/libexec/zed-editor
- OS: Fedora release 44 (Forty Four)
- GNOME Shell: 50.2
- Session: Wayland
XDG_SESSION_TYPE=wayland
XDG_CURRENT_DESKTOP=GNOME
WAYLAND_DISPLAY=wayland-0
Reproduction
- Launch Zed from GNOME app launcher, or from terminal with
zed.
- Zed window appears and is usable immediately.
- Mouse cursor stays in the GNOME loading/busy state globally for about 15 seconds.
- Cursor then returns to normal.
This happens even when launching from terminal, not only from the app launcher.
Expected behavior
The cursor should return to the normal pointer once the Zed window is visible/ready.
Actual behavior
The cursor remains in GNOME's busy/loading state globally for about 15 seconds, despite Zed being visible and usable.
Things tested
Desktop file StartupNotify
The installed desktop entry originally had:
StartupNotify=true
Exec=/home/user/.local/zed.app/bin/zed %U
I tested copied/local desktop entries with:
and also patched the original local desktop entry to StartupNotify=false. The problem still occurs.
Debug launcher wrapper
A wrapper launcher with StartupNotify=false showed no startup notification env vars being passed:
DESKTOP_STARTUP_ID=
XDG_ACTIVATION_TOKEN=
GIO_LAUNCHED_DESKTOP_FILE=/home/user/.local/share/applications/dev.zed.Zed-debug-no-startupnotify.desktop
XDG_CURRENT_DESKTOP=GNOME
XDG_SESSION_TYPE=wayland
The cursor still remained busy for ~15 seconds.
CLI variants
zed: starts quickly; cursor still becomes busy globally for ~15 seconds.
zed --foreground: starts and renders first frame immediately.
zed --disable-gpu: not accepted by this CLI version:
error: unexpected argument '--disable-gpu' found
Relevant Zed logs
Startup appears fast; first frame is rendered immediately:
INFO [zed] ========== starting zed version 1.6.3+stable.306.601ecb3ee5c16940191818ee7f244837abf6983c, sha 601ecb3 ==========
INFO [gpui_wgpu::wgpu_context] Selected GPU adapter: "Intel(R) Graphics (LNL)" (Vulkan)
INFO [workspace] Rendered first frame
INFO [zed::zed] Using GPU: GpuSpecs { is_software_emulated: false, device_name: "Intel(R) Graphics (LNL)", driver_name: "Intel open-source Mesa driver", driver_info: "Mesa 26.0.8" }
ERROR [gpui_linux::linux::wayland::client] activation token received with no pending activation
Other related logs seen during startup:
INFO [gpui_linux::linux::platform] activate is not implemented on Linux, ignoring the call
WAYLAND_DEBUG observations
With WAYLAND_DEBUG=1 zed --foreground, Zed sets the expected app id:
xdg_toplevel.set_app_id("dev.zed.Zed")
Then it requests activation tokens with serial 0 and activates the surface:
xdg_activation_token_v1.set_app_id("dev.zed.Zed")
xdg_activation_token_v1.set_serial(0, wl_seat)
xdg_activation_token_v1.set_surface(wl_surface#29)
xdg_activation_token_v1.commit()
xdg_activation_v1.activate("..._TIME0", wl_surface#29)
Given the log message activation token received with no pending activation, this may be related to Wayland activation/startup notification handling under GNOME.
Additional note
Because the busy cursor appears everywhere, this seems to be GNOME Shell launch feedback/activation timeout rather than Zed setting a cursor shape only over its own window.
Summary
On Fedora GNOME Wayland, launching Zed leaves the mouse cursor in GNOME's busy/loading state for about 15 seconds. The Zed window is visible and usable immediately; only the global cursor feedback remains busy until it times out.
The busy cursor appears everywhere, not just over the Zed window.
Environment
1.6.3 stable.306, commit601ecb3ee5c16940191818ee7f244837abf6983c~/.local/zed.app~/.local/bin/zed -> ~/.local/zed.app/bin/zed~/.local/zed.app/libexec/zed-editorXDG_SESSION_TYPE=waylandXDG_CURRENT_DESKTOP=GNOMEWAYLAND_DISPLAY=wayland-0Reproduction
zed.This happens even when launching from terminal, not only from the app launcher.
Expected behavior
The cursor should return to the normal pointer once the Zed window is visible/ready.
Actual behavior
The cursor remains in GNOME's busy/loading state globally for about 15 seconds, despite Zed being visible and usable.
Things tested
Desktop file StartupNotify
The installed desktop entry originally had:
I tested copied/local desktop entries with:
StartupNotify=falseand also patched the original local desktop entry to
StartupNotify=false. The problem still occurs.Debug launcher wrapper
A wrapper launcher with
StartupNotify=falseshowed no startup notification env vars being passed:The cursor still remained busy for ~15 seconds.
CLI variants
zed: starts quickly; cursor still becomes busy globally for ~15 seconds.zed --foreground: starts and renders first frame immediately.zed --disable-gpu: not accepted by this CLI version:Relevant Zed logs
Startup appears fast; first frame is rendered immediately:
Other related logs seen during startup:
WAYLAND_DEBUG observations
With
WAYLAND_DEBUG=1 zed --foreground, Zed sets the expected app id:Then it requests activation tokens with serial
0and activates the surface:Given the log message
activation token received with no pending activation, this may be related to Wayland activation/startup notification handling under GNOME.Additional note
Because the busy cursor appears everywhere, this seems to be GNOME Shell launch feedback/activation timeout rather than Zed setting a cursor shape only over its own window.