Skip to content

Support emoji in workspace names#22

Open
vabs wants to merge 2 commits intoGeek-1001:mainfrom
vabs:main
Open

Support emoji in workspace names#22
vabs wants to merge 2 commits intoGeek-1001:mainfrom
vabs:main

Conversation

@vabs
Copy link
Copy Markdown

@vabs vabs commented Feb 21, 2026

Summary

Workspace rename currently fails in common emoji-entry flows. When users open the macOS emoji picker (Ctrl+Cmd+Space) while renaming a workspace, the field can lose focus and the edit gets canceled instead of saved.

This change allows workspace renames to commit on focus loss (while still cancelling on explicit cancel movement), so emoji characters can be inserted and persisted reliably.

Root Cause

Workspace inline rename logic only committed when editing ended with NSReturnTextMovement.
Any other end-editing movement was treated as cancel, which includes focus changes that happen during emoji picker interactions.

Changes

  • Added a configurable commitsOnFocusLoss behavior to /Users/vaibhavsomani/Desktop/Projects/personal/arcmark/Sources/ArcmarkCore/Components/Base/InlineEditableTextField.swift.
  • Enabled commitsOnFocusLoss for workspace rows in /Users/vaibhavsomani/Desktop/Projects/personal/arcmark/Sources/ArcmarkCore/WorkspaceRowView.swift.
  • Updated workspace switcher inline rename commit logic in /Users/vaibhavsomani/Desktop/Projects/personal/arcmark/Sources/ArcmarkCore/WorkspaceSwitcherView.swift to commit on non-cancel focus-loss events.

User Impact

  • Users can now add emoji to workspace names without losing edits.
  • Existing cancel behavior is preserved for explicit cancel movement.
  • Empty/whitespace-only names still do not commit.

Validation

  • swift build -c release
  • ./scripts/run.sh
  • ./scripts/verify-build.sh .build/bundler/Arcmark.app
  • Runtime check: osascript -e 'application "Arcmark" is running' returned true

@vabs
Copy link
Copy Markdown
Author

vabs commented Feb 21, 2026

@claude review this

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