Commit graph

11 commits

Author SHA1 Message Date
h3p
0945b23b01 Improve editor UX across iOS, iPadOS, and macOS
iOS
- Keep compact, phone-appropriate toolbar behavior
- Improve toolbar/menu responsiveness and action access consistency
- Include mobile editor parity fixes (syntax highlighting and line-number visibility)

iPadOS
- Make toolbar width adaptive to device/screen size
- Keep toolbar height compact (matching iPhone-style vertical density)
- Distribute toolbar controls across available width
- Promote key overflow actions to visible toolbar buttons when space allows
  (open/save, sidebar toggles, find/replace, wrap, completion), with overflow fallback
- Use active UIWindowScene screen bounds for width calculation (deprecation-safe)

macOS
- Keep full toolbar + menubar action coverage aligned
- Preserve desktop toolbar behavior while iOS/iPadOS layouts diverge
- Retain platform-specific toolbar/menu polish without regressions
2026-02-07 11:51:52 +01:00
h3p
2371c48bf1 refactor(editor): split ContentView and improve window/sidebar/search UX
- Split large ContentView into focused files:
  - ContentView+Toolbar.swift
  - ContentView+Actions.swift
  - EditorTextView.swift
  - SyntaxHighlighting.swift
  - SidebarViews.swift
  - PanelsAndHelpers.swift
- Fix markdown highlighting over-coloring by tightening markdown regex patterns
- Add true blank-window flow:
  - New Window scene with isolated EditorViewModel
  - Wire Cmd+N/system New to open blank window
  - Add toolbar New Window button
- Add right-side project structure panel:
  - Default disabled
  - Open Folder + recursive folder tree browsing
  - Open file from tree and refresh tree actions
- Add toolbar toggle for right project structure sidebar
- Upgrade find/replace:
  - Regex mode
  - Case-sensitive mode
  - Find Next / Replace / Replace All status feedback
- Apply translucent window background behavior consistently across windows and side panels
- Resolve post-refactor access-control/build issues:
  - Expose cross-file ContentView action methods
  - Expose NSRange.toOptional() for action extensions`
2026-02-06 19:59:53 +01:00
h3p
38e5911220 Fix line number ruler scrolling and translucency
- Move LineNumberRulerView into its own file
- Fix line number updates while scrolling
- Preserve window translucency by avoiding opaque ruler drawing
- Remove unused textContainer binding
2026-02-06 17:06:34 +01:00
h3p
77b402044f Improve editor behavior and UI options
- Fix Swift code being misclassified as C# by unifying language detection
- Remove conflicting AI-based language detection on paste
- Route paste, open, and edit events through LanguageDetector
- Add toggle for translucent editor background
- Persist translucency preference across sessions
- Minor cleanup of conflicting or redundant editor logic
2026-02-06 14:29:34 +01:00
h3p
94493cb498 Improve AppleFM Foundation Models integration and fix streaming issues
• Add robust availability checks for Apple Intelligence (iOS 18 / macOS 15) before using system language model
• Implement health check via LanguageModelSession to validate model responsiveness (“ping” -> “pong”)
• Provide synchronous completion API appleFMComplete(prompt:) returning model response text
• Implement streaming completion API appleFMStream(prompt:) that yields incremental deltas
• Fix optional handling in streaming: unwrap partial.content.text safely and remove force unwraps
• Correct delta computation using unwrapped current string and maintain last state
• Add graceful fallback to single-shot completion if streaming fails
• Provide stubbed implementations when USE_FOUNDATION_MODELS is disabled to ensure build stability across configs
2026-02-05 22:30:21 +01:00
h3pdesign
e4bf47fa08 Further changes to Complete rework of the AI selector. Added OpenAI and Gemini. Drag & Drop files to App Window. Added Tooltips on hover for the Toolbar. Added clean window button. Added AI Model API settings. 2026-01-25 13:46:33 +01:00
Rodric Krogh
a21b27466d UI changes. Fixed Sidebar 2026-01-17 12:25:50 +01:00
Rodric Krogh
881fcf6332 app-adjustments for textfield 2026-01-15 19:02:41 +01:00
Rodric Krogh
39ce3f3443 Adjustments for the rewrite code. Text field adjustments 2026-01-15 18:48:06 +01:00
Rodric Krogh
c509d31a27 Adjustments for the rewrite code 2025-09-25 11:01:45 +02:00
Rodric Krogh
d9d424878e Complete rewrite of the code 2025-09-25 11:00:22 +02:00