49e471ae64
feat(gpui, gpui_widgets): i18n string-table hook + node-graph fit API
Mike-Solar2026-08-10 16:52:39 +08:00
16ae7c42df
gpui_widgets defect fixes: menu checkmarks, dock ratios, meter orientation, CPU frames, drop-frame timecode
Mike-Solar2026-08-09 21:11:57 +08:00
a64234936c
test(gpui_widgets): add interaction tests for view code, raising coverage to 89.4%
Mike-Solar2026-08-09 07:37:57 +08:00
816d6db93e
fix(gpui_macos): silence const-in-pattern warnings in surface format check
Mike-Solar2026-08-09 06:33:31 +08:00
098d422628
feat(gpui_widgets): add olive theme system with runtime switching
Mike-Solar2026-08-09 06:31:44 +08:00
bdb1684de7
feat(gpui_widgets): add scope widgets and audio level meter
Mike-Solar2026-08-09 06:29:06 +08:00
63dbc64a32
feat(gpui_widgets): add project explorer (material bin) with tree/icon views
Mike-Solar2026-08-09 06:25:38 +08:00
47c6126d0c
feat(gpui): add track selection and transition-resize gestures to timeline
Mike-Solar2026-08-09 06:22:15 +08:00
d97e3abd20
feat(gpui): support BGRA surfaces on macOS; add W4 viewer widget
Mike-Solar2026-08-09 06:05:54 +08:00
66b05b0ebe
feat(oak_bridge): macOS wgpu Metal texture to IOSurface CVPixelBuffer bridge
Mike-Solar2026-08-09 05:54:58 +08:00
d72d2e8210
feat(gpui_widgets): add menu bar, context menu and modal dialog framework
Mike-Solar2026-08-09 05:33:29 +08:00
4a92ab13d8
feat(gpui_widgets): add controls demo example and mark W1 complete
Mike-Solar2026-08-09 05:24:10 +08:00
5484fbaf88
Merge PR #86: Add EditableText 'text_input' and 'text_area' elements
𝑷𝒉𝒊𝒍𝒐𝒄𝒂𝒍𝒚𝒔𝒕2026-07-12 19:43:14 -04:00
309d319880
remove legacy input example now that gpui_elements::editable_text exists
temportalflux2026-07-12 17:42:53 -04:00
cb26ad76dc
remove stop_propagation on_mouse_up to avoid unintended consequence of input always highlighting/selecting while mousing over
temportalflux2026-07-11 13:12:07 -04:00
7c0de7f924
add gpui_elements root documentation so its not weird that the docs page is empty
temportalflux2026-07-11 09:29:31 -04:00
32cca07bb4
add an extremely basic example for editable_text which only shows a subset of what is documented in the module
temportalflux2026-07-11 09:18:02 -04:00
5bfb5ef58b
fix caret getting stuck as visible without focus when the text field pauses blinking while it is without focus
temportalflux2026-07-10 19:57:29 -04:00
09be9ed98e
stop propagation of mouse events when clicking on editable text, so that users which consume click events on wrapping elements do not receive events when they are used to focus/update the editable text state
temportalflux2026-07-10 19:39:19 -04:00
d5b3191738
add simpler api for configuring the caret blink interval via element
temportalflux2026-07-10 18:16:00 -04:00
d6d35ab410
add external api for access to caret by routing it through keyed element data
temportalflux2026-07-07 10:50:30 -04:00
25f922283a
refactor text position queries by factoring out common logic
temportalflux2026-07-03 19:50:09 -04:00
50b01e0532
first pass at simplifying text position queries
temportalflux2026-07-03 19:39:11 -04:00
760a79c3ca
rework caret implementaiton to increase clarity and reduce code duplication
temportalflux2026-07-03 18:54:18 -04:00
bd7bbdd0e6
reorganize element implementation to be more readable
temportalflux2026-07-03 18:22:59 -04:00
151d2c32aa
assign default editable text colors as consts
temportalflux2026-07-03 17:44:31 -04:00
252683a830
reduce complexity of mouse click handler and cut/copy handlers
temportalflux2026-07-03 17:26:33 -04:00
db856ae57a
reduce bounds_for_range to be more readable
temportalflux2026-07-03 17:01:04 -04:00
3a7d11a808
remove EditableTextState::storage() in favor of direct access to the member
temportalflux2026-07-03 16:37:47 -04:00
0daa97cd47
resolve clippy errors from using Range in reverse. Add CaretSelection to represent a bidirectional inclusive range
temportalflux2026-07-03 16:34:01 -04:00
bbf2679380
reorganize blocks in editable text element
temportalflux2026-07-03 16:08:56 -04:00
787d747deb
migrate EditableTextActionElement::register_action and bindings to an internal macro
temportalflux2026-07-03 15:57:35 -04:00
2cc4f237d6
rework element api to expose EditableTextState as a viable entity for users to create via use_keyed_state
temportalflux2026-07-03 15:29:32 -04:00
cc055b7f7d
add very basic text sanitation for no-multiline fields
temportalflux2026-06-26 11:25:10 -04:00
44e65e544f
rework focus handle semantics to only use Window::set_focus_handle during prepaint instead of requiring changes to Interactivity
temportalflux2026-06-26 11:06:01 -04:00
812d5aa91a
add on_text_changed callback binding to allow the caller to be notified on every change to the text
temportalflux2026-06-26 10:48:31 -04:00
6beeecb5a8
add module-level documentation with examples
temportalflux2026-06-25 18:42:46 -04:00
de19ea0d6d
fix discrpencies between where to render the caret and determining what line semantically contains the caret
temportalflux2026-06-25 13:12:04 -04:00
f3e9ae3c56
add caret blinking which is handled via a separate entity
temportalflux2026-06-25 13:01:38 -04:00