Commit Graph
33592 Commits
Author SHA1 Message Date
temportalflux 246bc3e6e4 implement undo/redo history tracking 2026-07-11 09:31:07 -04:00
temportalflux 58c66d50f2 resolve deprecated num_visual_lines 2026-07-11 09:31:07 -04:00
temportalflux dd61395440 add accepts_input flag as a way to track an input field's disabled state 2026-07-11 09:31:07 -04:00
temportalflux b5acea4809 merge element and state implementations back to a single type 2026-07-11 09:31:07 -04:00
temportalflux 76a02bbc46 add default-value via init-storage 2026-07-11 09:31:07 -04:00
temportalflux c1d3deb170 rename editable text module structs for consistency 2026-07-11 09:31:07 -04:00
temportalflux e84af920b9 properly implement overflow-driven scrolling via interactivity 2026-07-11 09:31:07 -04:00
temportalflux 3cff5195e2 implement coarse approach to navigating up and down a large textarea 2026-07-11 09:31:07 -04:00
temportalflux a9d139ba47 manually mark editable text elements as stateful-interactive so overflow can be specified 2026-07-11 09:31:07 -04:00
temportalflux a6aebd6ae4 render cursor even when there is no content so the user knows when they have focus in the element 2026-07-11 09:31:07 -04:00
temportalflux 7caea04bf6 reimplement text layout wrapping using the existing gpui TextLayout logic 2026-07-11 09:31:07 -04:00
temportalflux 3539798e9c disable text layout in preparation for a full rewrite taking into account the existing TextLayout implementation 2026-07-11 09:31:07 -04:00
temportalflux 030706b288 add support for padding to editable text rendering 2026-07-11 09:31:07 -04:00
temportalflux 0e34470a40 add stubs for allowing the user to provide their own storage mediums 2026-07-11 09:31:07 -04:00
temportalflux 5e08033021 move element implementation details to shared trait for input and text-area 2026-07-11 09:31:07 -04:00
temportalflux c2e3315c1d add mutator for placeholder on element 2026-07-11 09:31:07 -04:00
temportalflux 75e90de692 change select_to behavior to just move the caret/front w/o changing the end of the selected range 2026-07-11 09:31:07 -04:00
temportalflux d237be3a1a attach disabled notifies so Render updates when the selection state changes 2026-07-11 09:31:07 -04:00
temportalflux a8281b2555 rework state tracking so that action handlers can access the state of a text field, which occurs outside of the render/frame stack 2026-07-11 09:31:07 -04:00
temportalflux bf22400798 identify issue with state storage, where it cannot be accessed outside of element painting (aka in action handlers) 2026-07-11 09:31:07 -04:00
temportalflux 84af172e35 apply implemention for mouse events 2026-07-11 09:31:07 -04:00
temportalflux 56234ed27e fix caret not moving while typing 2026-07-11 09:31:07 -04:00
temportalflux b10d6c36e1 implement remaining ime operations now that layout lines are stored
add missing ime operations to textarea
2026-07-11 09:31:07 -04:00
temportalflux 3260184b5c add versioning to storage so that the ui can re-render on storage change 2026-07-11 09:31:07 -04:00
temportalflux 479ee65c8b reorganize paint logic and actions module 2026-07-11 09:31:07 -04:00
temportalflux 6dcc1e8677 begin merging paint implementations for multi-line runs 2026-07-11 09:31:07 -04:00
temportalflux bee1f68e9c reorganizing line paint logic 2026-07-11 09:31:07 -04:00
temportalflux 93b00c5d32 stub out mouse events and painting of simple lines and quads 2026-07-11 09:31:07 -04:00
temportalflux 19e4791a33 stub out prepaint and paint for <input> 2026-07-11 09:31:07 -04:00
temportalflux 3f6faa20a5 stub out <textarea> element 2026-07-11 09:31:07 -04:00
temportalflux bad745a761 register text-based actions with <input> element via traits 2026-07-11 09:31:07 -04:00
temportalflux 7c1658a24a add empty render for <input> element 2026-07-11 09:31:07 -04:00
temportalflux 93248e8ce9 implement keybinding actions 2026-07-11 09:31:07 -04:00
temportalflux dd9d4585d6 outline reimplemented ime operations 2026-07-11 09:31:07 -04:00
temportalflux bde62d95ea add UnicodeTextStorage trait for String and SharedString 2026-07-11 09:31:07 -04:00
temportalflux 866b7f4d62 add new editable text actions 2026-07-11 09:31:07 -04:00
temportalflux b3ab491240 flip cursor implementation to have an element and a state-entity 2026-07-11 09:31:07 -04:00
temportalflux 6ebe87025b mocking out cursor event interop 2026-07-11 09:31:07 -04:00
temportalflux 02531c48f7 rework cursor to render itself 2026-07-11 09:31:07 -04:00
temportalflux 454b3210fb Move cursor entity to input element and set it up as an Element so it can render independently 2026-07-11 09:31:07 -04:00
temportalflux 7affa0393f explore storage backend abstraction 2026-07-11 09:31:07 -04:00
temportalflux 08043295bd refine cursor-blink documentation 2026-07-11 09:31:07 -04:00
temportalflux 75a2fcb25c add documentation to input colors 2026-07-11 09:31:07 -04:00
temportalflux e68eef433b make layout information private 2026-07-11 09:31:07 -04:00
temportalflux 2a53c80ab7 move layout update into InputState 2026-07-11 09:31:07 -04:00
temportalflux 344804c232 make more InputState properties private 2026-07-11 09:31:07 -04:00
temportalflux 6ce4ebbb2a make cached_utf16_len private 2026-07-11 09:31:07 -04:00
temportalflux 4c7b51273c add documentation 2026-07-11 09:31:07 -04:00
temportalflux edf7cba153 undo SharedString being the backbone for InputState in favor of retaining mutablity of std::String. Safer now that painting doesnt need actual access to the string itself. 2026-07-11 09:31:07 -04:00
temportalflux c37593343a expose api for users to configure styling colors for input elements 2026-07-11 09:31:07 -04:00