Releases: S-Pillow/Workpad
Releases · S-Pillow/Workpad
v1.5.0 - View Modes, Tab Navigation & Drag-Drop Reorder
What's New
View Modes (Phase 1)
- Full Screen (F11): Maximized, no chrome, tab strip stays visible, exit button top-right
- Post-It Mode (F12): Same window size/position, only editor visible, no tab strip
- Distraction Free (Ctrl+Shift+F): Full screen with centered ~900px reading width
- Always On Top: Toggle via View menu, persists across restarts
- All modes exit via Esc, shortcut toggle, or exit overlay button
- Esc safety: won't steal from open dialogs, context menus, or Find/Replace
Tab Navigation (Phase 2)
- Ctrl+Tab / Ctrl+Shift+Tab: Cycle forward/backward through tabs (wraps)
- Ctrl+1..9: Jump to tab by number (Ctrl+9 always goes to last tab)
- Ctrl+Shift+Left/Right: Move current tab left or right in the strip
- Drag and drop: Reorder tabs by dragging tab headers
Architecture
- ViewModeManager service with MVVM ICommand bindings
- RelayCommand infrastructure for future phases
- BoolToVisibilityConverter for XAML bindings
- All existing editor behaviors (context menus, spell check, selection, Ctrl+Click) untouched
Download
Extract the zip and run WorkNotes.exe. Keep the Dictionaries folder next to the exe for spell check.
v1.4.0 - Email Auto-linking, Bold/Italic Fixes & Self-Contained Build
What's New
Self-Contained Portable Build
- No .NET runtime required - the exe bundles the full .NET 8 runtime
- Download, extract, and run. Spell check dictionaries included alongside the exe.
Email Auto-linking
- Email addresses (e.g. user@example.com) are now auto-detected and rendered as clickable mailto: links in both Formatted and Source views
- Previously, only the domain portion after @ was linked
Bold/Italic Fixes
- Fixed empty bold/italic markers appearing as literal text after deleting formatted content
- Applying bold or italic now preserves the text selection instead of losing it
- The 500ms link re-parse no longer drops the selection (saves and restores both start and end)
Download
Extract the zip and run WorkNotes.exe. Keep the Dictionaries folder next to the exe for spell check.
v1.3.0 - Notepad-style Tabs, Dialog Fixes & Bug Squashing
What's New
Notepad-style Tab Strip
- Redesigned tabs with rounded top corners, inline + new tab button right after the last tab
- Horizontal scroll overflow when many tabs are open
- Ctrl+T creates a new tab, Ctrl+W closes current tab, middle-click closes a tab
- Unsaved indicator dot swaps with close X on hover (Notepad behavior)
Dialog Fixes
- Insert Link and Confirm Link dialogs: buttons no longer clipped off-screen (auto-sizing height)
- Both dialogs now properly support dark mode with theme-aware Background and Foreground
Bug Fixes
- Find/Replace tab sync: dialog now updates its editor reference when switching tabs
- Memory leak fix: MainWindow event handlers properly unsubscribed when tabs close
- Duplicate close-button wiring: prevented multiple event subscriptions on tab Loaded events
UI Polish
- Unified title bar background with header surface for cohesive single-header look
- Adjusted light theme hover/pressed colors for better contrast
- Dark theme title bar color aligned with surface tone
Release 1.2: Modern Windows 11 UI Overhaul
🎨 Release 1.2: Modern Windows 11 UI Overhaul
A comprehensive visual modernization bringing WorkNotes up to Windows 11 design standards with custom chrome, unified header shell, and polished status bar.
✨ Major UI Enhancements
Custom Title Bar
- Native-looking caption buttons that adapt to light and dark themes
- Smooth hover and pressed states matching Windows 11 style
- Full native window functionality (drag, double-click maximize, system menu)
- Respects Windows 11 rounded corners
Unified Header Shell
- Title bar, menu, and toolbar now feel like one cohesive surface
- Reduced visual fragmentation and border noise
- Consistent spacing and padding throughout
- Modern toolbar with standardized icons and overflow support
Modern Tab Control
- Clean underline accent indicator for active tabs
- Visual unsaved dot indicator (no more text clutter)
- Refined close button alignment and hover states
- Improved spacing for better readability
Enhanced Status Bar
- Clickable view mode toggle chip with visual feedback
- Real-time line, column, and word count tracking
- Zoom controls with reset functionality
- Clickable theme toggle with immediate feedback
- Less segmented look with subtle dividers instead of hard borders
Editor Polish
- Comfortable inner padding (32px) around text for better reading experience
- Empty state placeholder ("Start writing...") for new documents
- Improved selection colors and caret visibility
- No more text hugging edges
Menu & Popup Refinement
- Modern dropdown shadows and rounded corners
- Consistent theme application across all popups
- No white flashes in dark mode
- Proper hover states throughout
🐛 Bug Fixes
- Find/Replace: Now correctly updates editor reference when switching tabs
- Hyperlink Insertion: Links inserted at correct position when replacing selected text
- Right-Click Selection: Fixed boundary check to exclude position immediately after selection
- Memory Leak: Fixed Loaded event not being unsubscribed in EditorControl cleanup
- Spell Check: Fixed closure bug where suggestion menu items captured loop variable by reference
- Duplicate Indicators: Removed text "•" from tab headers in favor of clean visual dot
- Line/Column Tracking: Real-time updates with proper caret position monitoring
- Theme Toggle: Now applies theme changes immediately with visual button feedback
🎯 Theme Consistency
- Equal polish for both light and dark modes
- Standardized hover and pressed colors across all controls
- All menus, popups, tooltips, and context menus properly themed
- No inconsistent colors or backgrounds
- Comprehensive theme token system for easy maintenance
📦 Technical Details
- 12 files changed: 1,108 insertions, 433 deletions
- WindowChrome implementation for custom title bar
- Extensive ControlTemplate updates for modern styling
- New converters for data binding
- Enhanced event handling for real-time UI updates
🙏 Acknowledgments
All UI modernization work completed with best practices for WPF/XAML and Windows 11 design guidelines.
Release 1.1.0: Release Hardening
What's New in 1.1
Release hardening pass: crash-safe saves, resource leak fixes, dark-mode theming, and zero build warnings.
Critical Fixes
- Right-click context menu now works — Copy/Cut/Paste/Select All execute correctly in both Source and Formatted editors
- Right-click preserves selection — selecting text and right-clicking inside it no longer clears the highlight
- Spellcheck suggestions work on opened files — previously only worked on new files due to stale document references
- Split-view save writes to disk — was previously only updating memory, never persisting (silent data loss)
Crash-Safe Atomic Writes
- Document save, settings, and session files all use temp-file + flush + atomic-rename
- If the app crashes mid-save, the file is either the old version or the new version — never partial/corrupt
- All swallowed exceptions now log to Debug output for diagnosability
Resource Leak Fixes
- Tab close stops all 3 DispatcherTimers and unsubscribes 8 event handlers per editor
- SplitViewContainer properly implements IDisposable with event cleanup
- Find/Replace dialog reused instead of stacking unlimited instances
- Process handles from link navigation disposed
- Close-button handler no longer duplicated on each tab re-render
Dark Mode Theming
- Context menus: dark popup surface with themed border (no more white flash)
- Tooltips: dark tooltip background (no more system yellow)
- Scrollbars: dark track and thumb with hover/pressed states
- CheckBox/RadioButton: fully themed indicators visible in dark mode
- Menu checkmarks: checkable menu items now show a visible checkmark glyph
Additional Improvements
- Ctrl+C with no selection falls through to default behavior (copy current line in Source view)
- Context menu Copy uses same clipboard format as Ctrl+C
- InsertLink no longer corrupts text when replacing a partial selection
- Malformed URLs no longer crash the app (Uri.TryCreate)
- Bionic Reading preserves italic style when bolding word prefixes
- Regex allocation in render loop eliminated (was leaking compiled IL per render pass)
Build Quality
- 0 warnings, 0 errors in Release build (was 10 warnings)
- All CS8602 nullable reference warnings resolved