Skip to content

Feature Request: Integrate Quick Settings Toggle (GNOME 44+) #10

@KonstantinMerkel

Description

@KonstantinMerkel

Feature Request: Integrate Quick Settings Toggle (GNOME 44+)

Problem Statement

Users currently have no easy way to switch the window tiling function on or off without disabling the entire extension. Disabling the whole extension drops all runtime data and creates unnecessary overhead when a user simply wants to temporarily return to standard floating window behavior.

Proposed Solution

Implement a native Quick Settings toggle button (utilizing QuickToggle from ui.quickSettings) alongside core system controls like Wi-Fi and Bluetooth. To ensure the toggle behavior works properly, we will first implement a simple toggle switch within the extension settings backend, then optionally (via a settings toggle) surface it to the GNOME Shell Quick Settings menu.

Expected Behavior

  • Instant Activation: Clicking the Quick Settings toggle immediately flips the tiling state without a shell reload or full extension cycle.
  • State Persistence: The toggle state persists across system reboots and shell restarts via a dedicated settings backend.
  • Bi-directional Sync: Flipping the switch inside the extension's preferences panel instantly updates the state of the Quick Settings button UI, and vice versa.

Implementation Starting Points

  • Existing Architecture: Check viability of reusing the internal this._isActive state flag already present inside extension.js as the core execution trigger.
  • State Decoupling: Bind this._isActive directly to a new GSettings key (tiling-enabled) so the layout engine can be frozen or resumed on the fly.
  • UI Integration: Use GNOME's ui.quickSettings module to register a custom indicator, ensuring it is cleanly removed via .destroy() during the extension's disable() lifecycle.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions