Skip to content

feat: add setVisibleOnAllWorkspaces API for macOS windows#196

Merged
YoavCodes merged 4 commits intoblackboardsh:mainfrom
chrisdadev13:main
Mar 7, 2026
Merged

feat: add setVisibleOnAllWorkspaces API for macOS windows#196
YoavCodes merged 4 commits intoblackboardsh:mainfrom
chrisdadev13:main

Conversation

@chrisdadev13
Copy link
Contributor

@chrisdadev13 chrisdadev13 commented Feb 24, 2026

Summary

Add setVisibleOnAllWorkspaces() and isVisibleOnAllWorkspaces() API to
make Electrobun windows visible on all macOS Spaces. This is commonly needed
for sticky windows, status displays, and overlay applications.

Changes

  • Native wrapper (nativeWrapper.mm): Added two new functions using
    NSWindowCollectionBehaviorCanJoinAllSpaces flag
  • FFI bindings (native.ts): Registered the new functions and added
    request handlers
  • BrowserWindow API (BrowserWindow.ts): Exposed
    setVisibleOnAllWorkspaces() and isVisibleOnAllWorkspaces() methods
  • Tests (window.test.ts): Added test case verifying toggle behavior
  • Template (bunny/index.ts): Added example usage

Demo

Screen.Recording.2026-02-27.at.8.34.48.PM.1.mov

@chrisdadev13
Copy link
Contributor Author

chrisdadev13 commented Feb 27, 2026

Address this issue: #94

Copy link
Member

@YoavCodes YoavCodes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I love this. appreciate the video also.

I resolved the conflicts with main.

@YoavCodes YoavCodes merged commit eeb9284 into blackboardsh:main Mar 7, 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.

2 participants