[v0.6.6] - 2026-05-09
Why Upgrade
- File opening from Finder/system dialogs is now more robust: existing windows are brought back to the foreground instead of staying in the background.
- Empty startup tabs are now cleanly reused when opening a file, preventing unnecessary extra tabs.
- Large UI monoliths were further modularized, making follow-up fixes significantly lower risk.
- iPad hardware shortcuts can now be configured directly in Settings and keyboard editing is fully reliable (text selection, copy/cut/paste, undo/redo, close tab).
- Toolbar customization on iPhone/iPad is more practical with visibility controls for primary icons and an optional compact custom 5-icon mode.
plistfiles can now be shown in a structured, collapsible tree view alongside raw text.- Welcome Tour and support prompt flows now share a consistent modern visual style, with improved spacing and button ergonomics on iPhone, iPad, and macOS.
- Release gating now runs as a single script step that combines the platform matrix build and release preflight checks.
Highlights
- Improved external file-open routing on macOS: after opening, the target editor window is brought to foreground and activated.
- Added clean untitled tab replacement flow in
EditorViewModel.openFile(url:)when only a single untouched placeholder tab exists. - Continued structural split of oversized UI files:
EditorTextViewin shared/macOS/iOS filesContentViewresponsibilities split into focused extensions (session persistence, AI completion, quick switcher/find, markdown preview UI, tab/status chrome)
- Added self-assignable editor shortcuts in Settings (command format like
cmd+shift+f) with default reset support. - Added a structured plist mode with sorted dictionary keys, color-coded value-type badges, and collapsible tree rows.
- Added a new Quick Open command (
Open plist Structure) that switches to structured plist mode when a plist file is active. - Expanded regression coverage for syntax highlighting (JSON/Markdown/HTML/CSS/C/C#/Swift/Python), shortcut parsing, and Markdown PDF pagination ranges.
- Redesigned Welcome Tour pages around a translucent full-surface layout with feature-specific symbols, a dedicated “What’s New” card format, and tuned navigation controls.
- Redesigned the post-start support prompt to match the Welcome Tour style, with centered content/actions and symbol-backed benefit bullets.
- Added
scripts/ci/release_gate.shas the unified final release gate (build_platform_matrix+release_preflight) and wiredrelease_all.shto use it. - Added iPhone/iPad toolbar favorite-count control with compact presets (
4,5,6,8,10,All) for visible primary actions. - Added dedicated visibility toggles for the four primary toolbar icons (
Open File,Undo,Settings,Help) on iPhone/iPad. - Added an optional compact
Custom 5 Iconsmode with a picker sheet so users can choose up to five specific toolbar actions without cluttering Settings. - Added user-configurable
Close Tabshortcut support (Cmd+Wdefault) to shared shortcut preferences and iPad keyboard command bridge. - Updated GitHub Actions workflow dependencies to Node-24-ready action versions (
actions/checkout@v5,actions/setup-python@v6).
Fixes
- Fixed background-open behavior where files opened externally could load without reliably surfacing the correct editor window.
- Fixed tab proliferation on first open by replacing a pristine untitled tab instead of always creating a second tab.
- Fixed macOS dock-icon click not reactivating the editor window by adding
applicationShouldHandleReopendelegate. - Fixed
Reopen Last Sessionon sandboxed macOS setups for files outside the app container by performing file-existence checks under active security-scoped resource access. - Fixed macOS shortcut settings mismatch by wiring menu commands to
ShortcutPreferencesand re-enabling the shortcut section as functional UI. - Fixed iPad text-selection regressions with Magic Keyboard/trackpad and external mice by stabilizing responder handling and pointer-drag selection behavior in the editor.
- Fixed iPad Magic Keyboard Cmd+A selection not working by registering dedicated
UIKeyCommandinEditorTextView+iOS.swift. - Fixed iPad hardware-keyboard editing parity by adding explicit
Cmd+C,Cmd+X,Cmd+V,Cmd+Z, andCmd+Shift+Zcommand routing in the editor. - Fixed iPad
Cmd+Wso closing the active tab now works through the iPad keyboard shortcut bridge. - Fixed iPad pointer/cursor text selection reliability by preventing drag-to-dismiss behavior from competing with editor selection gestures.
- Fixed JSON URL/escape highlighting regressions by enforcing coverage for escaped string patterns and numeric tokens.
- Fixed markdown PDF range slicing edge cases with explicit single-page and dense-block pagination tests.
- Fixed release-flow robustness when release metadata files are already dirty by allowing release scripts to continue when only approved release files changed.
- Fixed compact-toolbar customization scope so reducing visible primary actions no longer affects actions exposed through the
...(More) menu. - Added regression test coverage for clean-tab replacement on file open (
EditorViewModelFileOpenTests).
Milestone Issues (GitHub #18)
Closed:
- #111 [Bug]: OSX: when opening file via standard app, app window is not in foreground
- #124 [Feature]: Toolbar favorites count on iPhone/iPad with independent More menu
- #100 [Bug]: selecting text with Magic Keyboard not possible
- #108 [Feature]: Add structured plist editor support
- #107 [Bug]: not aligned text in language search box
- #106 [Bug]: empty space in search window
- #105 [Bug]: Label for German language not aligned
- #97 [Feature]: Clarify toolbar customization settings
- #109 [Feature]: Add self-assignable key commands
Breaking changes
- None.
Migration
- None.