gpui-component/crates/story/src
Jason Lee a9953a9349
input: Use zed's Rope (#1214)
Now with 10K lines plain text, in release mode on macOS. The
`large-text` example can work with:

- 120 FPS for display.
- 90 FPS for update text.

```
MTL_HUD_ENABLED=1 cargo run --example large-text --release
```

- Fixed the cursor position at end of line, also support at start of
line.


https://github.com/user-attachments/assets/1de52f6c-e138-4ed3-a600-06372a807ed8

### Check list

- [x] Modifying Text with Rope
- [x] LineColumn, GoToLine
- [x] Code Highlight
- [x] Delete word, select word
- [x] Delete line
- [x] Move left, right, up, down
2025-09-08 16:44:52 +08:00
..
fixtures plot(scale): Point scale support single point (#1185) 2025-08-29 15:05:51 +08:00
accordion_story.rs accordion: Fix accordion to size full. (#1083) 2025-07-23 10:45:02 +00:00
alert_story.rs text_view: Add to support selection. (#1169) 2025-08-28 18:09:30 +08:00
assets.rs chore: Remove SvgImg element. (#1187) 2025-08-29 17:37:11 +08:00
avatar_story.rs avatar: Add Avatar element. (#1028) 2025-07-02 18:58:06 +08:00
badge_story.rs theme: Improve theme color fallbacks based on base colors. (#1069) 2025-07-17 11:43:40 +08:00
button_story.rs theme: Improve theme color fallbacks based on base colors. (#1069) 2025-07-17 11:43:40 +08:00
calendar_story.rs chrore: Refactor the disabled API for NumberInput, DatePicker, OtpInput, Calandar. (#1102) 2025-07-29 17:31:52 +08:00
chart_story.rs plot: Use f32 instead of f64 (#1052) 2025-07-08 16:24:59 +08:00
checkbox_story.rs text_view: Add to support selection. (#1169) 2025-08-28 18:09:30 +08:00
clipboard_story.rs input: Fix column position update when text added, to support move vertical keep column. (#1211) 2025-09-05 18:47:24 +08:00
color_picker_story.rs theme: Improve theme color fallbacks based on base colors. (#1069) 2025-07-17 11:43:40 +08:00
date_picker_story.rs chrore: Refactor the disabled API for NumberInput, DatePicker, OtpInput, Calandar. (#1102) 2025-07-29 17:31:52 +08:00
description_list_story.rs text_view: Add to support selection. (#1169) 2025-08-28 18:09:30 +08:00
drawer_story.rs list: Refactor List, Dropdown delegate API to support section. (#1107) 2025-08-05 19:23:32 +08:00
dropdown_story.rs virtual_list: Fix scroll to item not align to paddings. (#1122) 2025-08-08 11:56:18 +08:00
form_story.rs list: Refactor List, Dropdown delegate API to support section. (#1107) 2025-08-05 19:23:32 +08:00
group_box_story.rs text_view: Add to support selection. (#1169) 2025-08-28 18:09:30 +08:00
icon_story.rs theme: Add theme schema to support JSON theme config. (#1050) 2025-07-07 19:40:00 +08:00
image_story.rs chore: Remove SvgImg element. (#1187) 2025-08-29 17:37:11 +08:00
indicator_story.rs theme: Add theme schema to support JSON theme config. (#1050) 2025-07-07 19:40:00 +08:00
input_story.rs input(state): Provide context to the validate method (#1082) 2025-07-23 14:30:16 +08:00
kbd_story.rs kbd: Fix Kdb to support display - key. (#1109) 2025-07-31 20:39:19 +08:00
label_story.rs label: Add support for highlighting specified text (#1073) 2025-07-18 16:33:36 +08:00
lib.rs input: Use zed's Rope (#1214) 2025-09-08 16:44:52 +08:00
list_story.rs list: Fix List scroll to item by use deferred. (#1160) 2025-08-20 13:42:25 +08:00
main.rs group_box: Add GroupBox element. (#1146) 2025-08-18 11:36:07 +08:00
menu_story.rs virtual_list: Avoid scroll when list contents not overflow. (#1125) 2025-08-08 19:13:18 +08:00
modal_story.rs text_view: Add to support selection. (#1169) 2025-08-28 18:09:30 +08:00
notification_story.rs text_view: Add to support selection. (#1169) 2025-08-28 18:09:30 +08:00
number_input_story.rs chrore: Refactor the disabled API for NumberInput, DatePicker, OtpInput, Calandar. (#1102) 2025-07-29 17:31:52 +08:00
otp_input_story.rs chrore: Refactor the disabled API for NumberInput, DatePicker, OtpInput, Calandar. (#1102) 2025-07-29 17:31:52 +08:00
popover_story.rs theme: Update secondary color and fix toggle selected color. (#1039) 2025-07-03 19:23:40 +08:00
progress_story.rs story: Add Indicator, Skeleton story. (#1038) 2025-07-03 18:54:23 +08:00
radio_story.rs radio: Render the label based on its own size (#1114) 2025-08-06 15:29:07 +08:00
resizable_story.rs story: Fix #1017 duplicate action name error. (#1020) 2025-06-30 11:18:57 +08:00
scrollable_story.rs virtual_list: Fix scrollable size calculate in VirtualList. (#1087) 2025-07-24 08:30:42 +00:00
sidebar_story.rs theme: Improve theme color fallbacks based on base colors. (#1069) 2025-07-17 11:43:40 +08:00
skeleton_story.rs story: Add Indicator, Skeleton story. (#1038) 2025-07-03 18:54:23 +08:00
slider_story.rs slider: Add to support range to Slider. (#1121) 2025-08-08 16:59:23 +08:00
switch_story.rs story: Fix #1017 duplicate action name error. (#1020) 2025-06-30 11:18:57 +08:00
table_story.rs list: Refactor List, Dropdown delegate API to support section. (#1107) 2025-08-05 19:23:32 +08:00
tabs_story.rs story: Fix #1017 duplicate action name error. (#1020) 2025-06-30 11:18:57 +08:00
tag_story.rs story: Fix #1017 duplicate action name error. (#1020) 2025-06-30 11:18:57 +08:00
textarea_story.rs input: Add to support horizontal scrolling to multi-line text. (#1131) 2025-09-01 12:33:21 +08:00
themes.rs scrollbar: Fix scrollbar width on always show mode. (#1196) 2025-09-02 15:48:06 +08:00
title_bar.rs scrollbar: Fix scrollbar width on always show mode. (#1196) 2025-09-02 15:48:06 +08:00
toggle_story.rs story: Fix #1017 duplicate action name error. (#1020) 2025-06-30 11:18:57 +08:00
tooltip_story.rs story: Fix #1017 duplicate action name error. (#1020) 2025-06-30 11:18:57 +08:00
virtual_list_story.rs scrollbar: Show scrollbar immediately when scroll offset changed. (#1111) 2025-08-04 17:00:20 +08:00
webview_story.rs input: Refactor Input, Picker as stateless mode. (#858) 2025-05-16 23:41:26 +08:00
welcome_story.rs text_view: Add to support selection. (#1169) 2025-08-28 18:09:30 +08:00