Commit Graph
314 Commits
Author SHA1 Message Date
Conrad Irwin 77d92ff65a Tidy up 2023-11-09 20:58:35 -07:00
Conrad Irwin ff15ddf3e0 Render more than one item 2023-11-09 16:36:36 -07:00
Conrad Irwin fa153a0d56 Make command dispatching work 2023-11-09 15:14:23 -07:00
Piotr OsiewiczandConrad a1d9f351db Some more woogaloo around action dispatch
Co-authored-by: Conrad <conrad@zed.dev>
2023-11-09 18:51:41 +01:00
Piotr OsiewiczandConrad 194d615691 Fix up keybindings propagation
Co-authored-by: Conrad <conrad@zed.dev>
2023-11-09 18:33:36 +01:00
Piotr Osiewicz d184e0d426 Start working on command_palette2 2023-11-09 17:54:05 +01:00
Nathan Sobo 8c44f6a814 Simplify input handling (#3282)
This PR takes a different approach to input handling.

Rather than returning the optional input handler, focus handle pair from
the element trait, we instead allow you to register an input handler
imperatively on the window context with `WindowContext::handle_input`.
You pass a focus handle reference and any implementer of
`PlatformInputHandler`. There's an `ElementInputHandler<V>` that
implements `PlatformWindowHandler` so long as `V` implements
`InputHandler`.

Release Notes:

- N/A
2023-11-08 22:27:36 -07:00
Nathan Sobo d52c5646b4 Add docs 2023-11-08 22:03:26 -07:00
Nathan Sobo 7c922ad6ee Remove comments 2023-11-08 21:49:21 -07:00
Nathan Sobo 8278a07354 Actually set the input handler 2023-11-08 21:43:14 -07:00
Mikayla 2c67cc80ba Merge branch 'main' into event-emitter 2023-11-08 20:10:38 -08:00
Nathan Sobo 9a022671a2 Simplify IME support 2023-11-08 21:06:00 -07:00
Mikayla a97c8bf58f Get workspace compiling with new event emitters 2023-11-08 19:29:00 -08:00
Conrad Irwin 97ce9e9586 de-dbg (#3280)
Remove some debugging from GoToLine

Release Notes:

- N/A
2023-11-08 18:45:42 -07:00
Conrad Irwin 47a63d5cb7 de-dbg 2023-11-08 18:36:12 -07:00
Max Brunsfeld 4350801399 Merge branch 'main' into bounds-for-range 2023-11-08 17:31:00 -08:00
Max Brunsfeld 277fbda356 Fix vertical position in first_rect_for_character_range 2023-11-08 17:27:32 -08:00
Mikayla 26fc36ee0e First pass at allowing multiple event types to be emitted by an entity 2023-11-08 16:34:38 -08:00
Max Brunsfeld b77fab0fae 🎨 2023-11-08 16:24:11 -08:00
Conrad Irwin b90e34aeb2 go to line2 (#3261)
- MODAL
- center a div
- MOAR CODE
- Beautiful go to line modal


Release Notes:
- N/A
2023-11-08 17:16:00 -07:00
Max BrunsfeldandMarshall 7a8f219251 Account for element's bounds in Editor::bounds_for_range
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-08 16:15:10 -08:00
Max BrunsfeldandMarshall 1a37d9edc6 Register text input handlers via new element hook
Provide element bounds to the input handler's `bounds_for_rect` method.

Co-authored-by: Marshall <marshall@zed.dev>
2023-11-08 15:48:55 -08:00
Conrad Irwin 1b9f76c01d Refactor GoToLine to use cx.observe_new_views() 2023-11-08 16:23:05 -07:00
Max Brunsfeld c81440424b Fix blinking in editor2 (#3272)
This also introduces new APIs in `ViewContext` for observing window
focus changes.

Release Notes:

- N/A
2023-11-08 13:53:43 -08:00
Conrad Irwin cbdd4aca89 Merge branch 'main' into go-to-line2 2023-11-08 14:46:52 -07:00
Mikayla 097efdebc5 WIP 2023-11-08 12:49:09 -08:00
Conrad Irwin dbe06fe5fc Merge branch 'main' into add-collab-tests 2023-11-08 12:33:15 -07:00
Mikayla 409e17ad30 Merge branch 'main' into go-to-line2 2023-11-08 11:32:36 -08:00
Mikayla 1864d37d2e Fix double borrow in synchronous tests 2023-11-08 11:23:35 -08:00
Max Brunsfeld 2ac28240e4 Merge branch 'main' into picker-actions 2023-11-08 10:49:44 -08:00
4c31a0c989 Preserve stateless interactivity when assigning elements an id
Co-authored-by: Nathan <nathan@zed.dev>
Co-authored-by: Piotr <piotr@zed.dev>
2023-11-08 10:45:10 -08:00
Mikayla e1cb993878 Get tests green 2023-11-08 10:38:43 -08:00
Marshall Bowers ca2cc42800 Remove unused SceneBuilder constructor 2023-11-08 13:30:20 -05:00
866df770cb Extract a Frame struct from Window
Co-Authored-By: Marshall <marshall@zed.dev>
Co-Authored-By: Nathan <nathan@zed.dev>
Co-Authored-By: Piotr <piotr@zed.dev>
2023-11-08 13:24:11 -05:00
Antonio ScandurraandMarshall 14b41d657d Introduce ViewContext::on_blur
Co-Authored-By: Marshall <marshall@zed.dev>
2023-11-08 19:09:01 +01:00
Antonio ScandurraandMarshall 2fd8b1f489 Fix blinking behavior in editor when receiving/losing focus
Co-Authored-By: Marshall <marshall@zed.dev>
2023-11-08 19:03:57 +01:00
Mikayla 9b30f490c7 Merge branch 'main' into add-collab-tests 2023-11-08 09:57:08 -08:00
Mikayla 3050c440f4 Merge branch 'main' into add-collab-tests 2023-11-08 09:41:57 -08:00
738b2ce6c5 Extract a Frame struct from Window
Co-Authored-By: Marshall <marshall@zed.dev>
Co-Authored-By: Nathan <nathan@zed.dev>
Co-Authored-By: Piotr <piotr@zed.dev>
2023-11-08 18:17:38 +01:00
Antonio Scandurra 0143fa2056 Fix clipping bugs in editor2 (#3269)
Release Notes:

- N/A
2023-11-08 17:51:39 +01:00
d71f671476 Fix clipping in Line::draw
Co-Authored-By: Nathan <nathan@zed.dev>
Co-Authored-By: Marshall <marshall@zed.dev>
2023-11-08 17:32:21 +01:00
Antonio ScandurraandNathan 727fb4fbff Use a consistent clipping strategy for drawing all the primitives
Co-Authored-By: Nathan <nathan@zed.dev>
2023-11-08 17:29:05 +01:00
Marshall Bowers e9650c025f Fix overflow in UniformList 2023-11-08 11:26:26 -05:00
Marshall Bowers fe28d8faea Merge branch 'main' into picker 2023-11-08 11:18:54 -05:00
Antonio Scandurra e4bc03217d gpui2: Type-erase futures. (#3266)
Project2's LLVM IR size is ~33-44% bigger than project1 due to the fact
that in gpui2 we call async_task::spawn(_local) with impl Future instead
of dyn Future, which leads to quite a few more instantiations of
RawTask.

LLVM-IR size for project2:
|  build_type  |  main   |  this branch  | project1 |
|  debug       | 2617795 |    2022814    | 1817866  |
|  release     | 4439033 |    3715086    | 3314489  |

Note that this PR is in line with what was done in GPUI1 (we've also
boxed futures there).
Release Notes:

- N/A
2023-11-08 14:21:40 +01:00
Piotr Osiewicz 2364f6b22e gpui2: Type-erase futures.
Project2's LLVM IR size is ~20-25% bigger than project1 due to the fact that in gpui2 we call async_task::spawn(_local) with impl Future instead of dyn Future, which leads to quite a few more instantiations of RawTask.

LLVM-IR size for project2:
|  build_type  |  main   |  this branch  | project1 |
|  debug       | 2617795 |    2022814    | 1817866  |
|  release     | 4439033 |    3715086    | 3314489  |
2023-11-08 13:06:28 +01:00
Antonio ScandurraandPiotr 6a0789c88e Don't alpha blend when rasterizing paths
Co-Authored-By: Piotr <piotr@zed.dev>
2023-11-08 12:04:25 +01:00
Antonio Scandurra 8ac8a6f1d9 Re-enable most of the functionalities in editor2 2023-11-08 11:30:32 +01:00
Nathan Sobo 1949fa5147 Merge remote-tracking branch 'origin/main' into register-actions 2023-11-07 21:56:08 -07:00
Nathan Sobo 2a55b0dbfb Simplify actions macro. 2023-11-07 21:48:47 -07:00