Commit Graph
84 Commits
Author SHA1 Message Date
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
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 3c57b912b9 Update editor to use new event emitter 2023-11-08 19:52:43 -08:00
Mikayla a97c8bf58f Get workspace compiling with new event emitters 2023-11-08 19:29:00 -08: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
Max Brunsfeld 86865431b9 Assign gutter widht on editor view when painting element 2023-11-08 17:01:50 -08:00
Marshall Bowers 9a41c58779 Hard-code the gutter margin temporarily 2023-11-08 19:25:12 -05: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 BrunsfeldandMarshall d273fa6dd0 Fix DisplaySnapshot::x_for_point always returning 0
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-08 13:55:39 -08:00
Mikayla 409e17ad30 Merge branch 'main' into go-to-line2 2023-11-08 11:32:36 -08: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
Marshall Bowers fe28d8faea Merge branch 'main' into picker 2023-11-08 11:18:54 -05:00
Antonio Scandurra 55dca1e3e1 💄 2023-11-08 15:33:11 +01:00
Antonio Scandurra 15d40d6df5 Determine whether the gutter was hovered 2023-11-08 15:30:41 +01:00
Antonio Scandurra dfc536b4f5 Handle MouseUpEvent in editor2 2023-11-08 15:17:30 +01:00
Antonio Scandurra e500c05880 Move building of key listeners outside of EditorElement::initialize 2023-11-08 15:12:54 +01:00
Antonio ScandurraandPiotr bef3b80bd4 Clear hover background highlights
Co-Authored-By: Piotr <piotr@zed.dev>
2023-11-08 15:08:54 +01:00
Piotr OsiewiczandAntonio e5f78ec122 Uncomment mouse_dragged event
Co-authored-by: Antonio <antonio@zed.dev>
2023-11-08 15:02:35 +01:00
Piotr OsiewiczandAntonio 1b085bd618 Extract mouse event handlers into paint_mouse_listeners
Co-authored-by: Antonio <antonio@zed.dev>
2023-11-08 14:40:08 +01:00
Piotr OsiewiczandAntonio dd20032eab Hook up mouse_down function handler
Co-authored-by: Antonio <antonio@zed.dev>
2023-11-08 14:36:05 +01:00
Piotr OsiewiczandAntonio e30449e61a Pass text_bounds instead of full editor bounds into mouse_moved.
Co-authored-by: Antonio <antonio@zed.dev>
2023-11-08 14:28:16 +01:00
Piotr Osiewicz 334829f868 uncomment show_hover 2023-11-08 14:24:28 +01:00
Piotr Osiewicz cd3773531c uncomment mouse moved 2023-11-08 14:24:28 +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 fdc9ea7f9b Docs and cleanup 2023-11-07 21:26:51 -07:00
Nathan Sobo 814e62050c Register actions globally before main 2023-11-07 20:58:37 -07:00
Max Brunsfeld bdec1c8202 Merge branch 'main' into picker 2023-11-07 16:57:47 -08:00
Max BrunsfeldandMarshall 9fe3073af7 Get basic text input working
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-07 16:33:02 -08:00
Max BrunsfeldandMarshall bd12e3edb6 Assign editors as text input handlers
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-07 15:44:00 -08:00
b2ae08b159 Implement an InputHandler trait for gpui2
Co-Authored-By: Marshall <marshall@zed.dev>
Co-Authored-By: Max <max@zed.dev>
Co-Authored-By: Julia <julia@zed.dev>
2023-11-07 16:30:04 -07:00
7cdece4857 Beautiful go to line modal
Co-authored-by: Julia <julia@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-07 15:32:34 -07:00
Max BrunsfeldandMarshall ea603401e2 Get actions + focus working on picker, now that it's a view
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-07 13:48:32 -08:00
Max Brunsfeld 36d9633f6f Merge branch 'main' into picker 2023-11-07 13:37:49 -08:00
Conrad Irwin 5c450843a5 Add text and focus to editor 2023-11-07 14:19:15 -07:00
Conrad Irwin a21c49c015 Make it possible to render a single line editor 2023-11-07 14:05:23 -07:00
Mikayla Maki a3bd04fed2 Merge branch 'main' into picker 2023-11-07 11:44:02 -08:00
Max Brunsfeld d690fb038d Merge branch 'main' into picker 2023-11-07 11:27:14 -08:00
Conrad Irwin 3a72f2122a Implement Editor::single_line 2023-11-07 11:12:36 -07:00
Antonio Scandurra 4bf3a4e3d4 Implement movement in editor2 (#3256)
Release Notes:

- N/A
2023-11-07 19:12:09 +01:00
Conrad Irwin c89d6eb292 modals2 (#3247)
New Modal implementation for gpui2

Release Notes:

N/A
2023-11-07 10:56:46 -07:00
Antonio Scandurra d7e86eb1c1 Merge remote-tracking branch 'origin/main' into editor-movement 2023-11-07 18:48:08 +01:00
Max Brunsfeld 69eb49a2ed Merge branch 'main' into picker 2023-11-07 09:34:57 -08:00
Antonio Scandurra 2697862a02 Merge remote-tracking branch 'origin/main' into editor-movement 2023-11-07 17:54:46 +01:00
Antonio Scandurra 82a018996b WIP 2023-11-07 17:54:14 +01:00