Commit graph

12 commits

Author SHA1 Message Date
Nick Ustinov
e4597b069c Fix duplicate File menu in menu bar
Replace the separate CommandMenu("File") with CommandGroup placements
that inject items into the existing macOS File menu, eliminating the
duplicate menu.
2026-02-07 14:34:37 +00:00
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