Skip to content

feat: add interactive workspace overview - #39

Merged
qeude merged 3 commits into
mainfrom
feat/niri-overview
Aug 25, 2026
Merged

feat: add interactive workspace overview#39
qeude merged 3 commits into
mainfrom
feat/niri-overview

Conversation

@qeude

@qeude qeude commented Aug 25, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add an interactive overview of workspaces and window columns.
  • Support workspace navigation, window focusing, dragging, stacking, and floating-window placement.
  • Add configurable overview zoom and optional window previews.
  • Add the toggle-overview command and default <mod>-o hotkey.
  • Add overview projection, runtime, macOS controller, preview, and coverage tests.

Testing

  • Not run: swift build
  • Not run: swift test
  • Not run: ./script/build_and_run.sh --verify
  • Not run: desktop smoke tests via ./script/test_desktop.sh

- Add configurable workspace overview with zoom and window previews
- Support navigation, focus, and drag-and-drop window placement
@greptile-apps

greptile-apps Bot commented Aug 25, 2026

Copy link
Copy Markdown

Greptile Summary

The PR adds an interactive workspace overview with keyboard and pointer navigation, window movement, optional previews, and configuration support.

  • Adds pure overview projection, hit-testing, drop targeting, and runtime state transitions.
  • Adds macOS panels, navigation, dragging, preview capture, and preview-cache lifecycle management.
  • Integrates overview commands, hotkeys, daemon synchronization, border suppression, configuration, documentation, and tests.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Important Files Changed

Filename Overview
Sources/DefiMacOS/OverviewPreviewCapture.swift Captures optional previews through ScreenCaptureKit and now validates the captured window owner before accepting pixels.
Sources/DefiMacOS/OverviewController.swift Implements overview panels, selection, navigation, dragging, viewport animation, and guarded preview caching.
Sources/DefiRuntime/OverviewRuntime.swift Adds validated pure-runtime transitions for overview focus, workspace selection, and window drops.
Sources/DefiDaemon/DaemonOverview.swift Wires overview interactions into runtime transitions, native layout application, focus, persistence, and snapshot refresh.
Sources/DefiCore/Overview.swift Adds pure overview projection, hit-testing, viewport interpolation, and drop-target calculation.

Sequence Diagram

sequenceDiagram
    participant User
    participant Controller as OverviewController
    participant Daemon
    participant Runtime as DefiRuntime
    participant Platform as macOS Platform

    User->>Controller: Navigate, select, or drag
    Controller->>Daemon: Focus/workspace/drop intent
    Daemon->>Runtime: Validate and reduce state
    Runtime-->>Daemon: Updated monitor/workspace result
    Daemon->>Platform: Apply layout and focus
    Daemon->>Controller: Refresh overview snapshot
    Controller-->>User: Render updated overview
Loading

Reviews (3): Last reviewed commit: "Merge branch 'main' into feat/niri-overv..." | Re-trigger Greptile

Comment thread Sources/DefiMacOS/OverviewPreviewCapture.swift
Comment thread Sources/DefiDaemon/DaemonOverview.swift
@qeude
qeude merged commit ab45175 into main Aug 25, 2026
2 checks passed
@qeude
qeude deleted the feat/niri-overview branch August 25, 2026 20:56
qeude added a commit that referenced this pull request Aug 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant