7 Commits
Author SHA1 Message Date
phranck db8ea40c0a Refactor: Fix SwiftLint warnings and refactor StatusBar to _StatusBarCore pattern
- Fix 80 SwiftLint warnings (159 -> 79): vertical_whitespace, prefer_self_in_static_references, modifier_order, trailing_newline, trailing_whitespace, prefer_for_where, unneeded_synthesized_initializer, redundant_type_annotation, implicit_optional_initialization, superfluous_disable_command, shorthand_optional_binding, syntactic_sugar, empty_string, vertical_whitespace_closing_braces, identifier_name in BadgeModifier
- Refactor StatusBar from direct Renderable to _StatusBarCore pattern (public View with real body wrapping private Renderable core)
2026-02-15 02:35:18 +01:00
phranck ae25b164e8 Fix: Split TextFieldHandler tests to avoid type_body_length violation 2026-02-10 04:08:16 +01:00
phranck f8881f2bc1 Feat: Add clipboard and undo support to TextField
- Fix escape sequence parsing for fast key repeat (read byte-by-byte)
- Ctrl+A: Select all text
- Ctrl+C: Copy selection to system clipboard (pbcopy/xclip)
- Ctrl+X: Cut selection to clipboard
- Ctrl+V: Paste from clipboard (pbpaste/xsel)
- Ctrl+Z: Undo last change (up to 50 states)
- 12 new tests (998 total)
2026-02-10 04:03:16 +01:00
phranck c1bda23c92 Feat: Add text selection support to TextField and SecureField
- Parse CSI modifier codes (Shift/Alt/Ctrl) in escape sequences
- Add selection state to TextFieldHandler (anchor, range, helpers)
- Implement Shift+Arrow selection keyboard handling
- Render selection with accent background highlight
- Support delete/replace selected text with Backspace/Delete/typing
- Add 41 new tests (14 KeyEvent + 27 TextFieldHandler)
2026-02-09 22:57:22 +01:00
phranck 339e5123a1 Refactor: Improve TextField rendering and input responsiveness
- Remove textInputAutocapitalization (not relevant for TUI)
- TextField now has fixed width with horizontal scrolling
- New visual style: background color + focus indicator bars
- Increase frame rate to 30 FPS and process up to 5 events/frame
- Fix Space key handling in ActionHandler (.space instead of .character)
2026-02-09 21:03:21 +01:00
phranck d607fdc831 Feat: Add TextField<Label> generic, ViewBuilder init, and textInputAutocapitalization 2026-02-09 19:15:56 +01:00
phranck c4ca87f70e Feat: Add TextField component with text input, cursor navigation, and onSubmit 2026-02-09 19:01:28 +01:00