Conrad Irwin
0a51784dd0
Leaky, but better, test abstraction
2023-11-15 14:01:10 -07:00
Conrad Irwin
19c0b390d2
FileFinder tests ( #3336 )
...
Also including:
* Fixes for focus when closing the last item in a pane
* Workspace#active_item_as::<Editor>()
* cx.simulate_input()
Release Notes:
- N/A
2023-11-15 13:24:34 -07:00
Conrad Irwin
cebc8428c8
FileFinder tests
2023-11-15 13:16:28 -07:00
Antonio Scandurra
33a808a49b
WIP
2023-11-15 20:41:09 +01:00
Antonio Scandurra
759ce7440c
Avoid unnecessary call to with_element_id
in RenderViewWith
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-15 20:12:30 +01:00
Antonio Scandurra
1d04dc5dbf
Clear the state of keystroke matchers when focus changes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-15 20:11:07 +01:00
Antonio Scandurra
3978d4e872
Show fold indicators ( #3334 )
...
Release Notes:
- N/A
2023-11-15 20:10:24 +01:00
Antonio Scandurra
c225a3e5af
Don't use Mutex
or Arc
now that app state is not Send
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-15 18:50:34 +01:00
Antonio Scandurra
c7b7f7dfd5
Move render_view
into View::render_with
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-15 18:50:09 +01:00
Antonio Scandurra
17b8e4a684
Handle clicking folded ranges
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-15 18:19:26 +01:00
Antonio Scandurra
3ff8c78b58
Return a Fold
struct when querying the FoldMap
...
This contains a new `id` field that lets us distinguish among folds.
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-15 17:09:59 +01:00
Conrad Irwin
1db4fab3ab
Add command palette tests and simulate_keystrokes ( #3330 )
...
Release Notes:
- N/A
2023-11-15 08:00:41 -07:00
Antonio Scandurra
786cc59d7a
Fix formatting
2023-11-15 11:07:32 +01:00
Antonio Scandurra
feeb44c122
Merge remote-tracking branch 'origin/main' into editor2-rename
...
# Conflicts:
# crates/editor2/src/editor.rs
# crates/editor2/src/element.rs
# crates/gpui2/src/style.rs
2023-11-15 09:51:33 +01:00
Antonio Scandurra
c3094b7c3d
Introduce gpui::render_view
2023-11-15 09:45:23 +01:00
Antonio Scandurra
1def355d44
Don't return Result
from TextStyle::highlight
2023-11-15 09:10:46 +01:00
Conrad Irwin
c81bd288d4
Fix test
2023-11-14 23:47:08 -07:00
Conrad Irwin
91b54b352b
Add command palette tests and simulate_keystrokes
2023-11-14 23:22:51 -07:00
Nathan Sobo
e37d7f5b0e
Fix click events by notifying when we assign pending_mouse_down ( #3329 )
...
We need to notify when we set the pending mouse down so we attach the
mouse up event listener before the mouse button is released.
Release Notes:
- N/A
2023-11-14 19:55:23 -07:00
Nathan Sobo
32ad486a8e
Document contexts
2023-11-14 19:52:51 -07:00
Nathan Sobo
00d8921ae9
Fix click events by notifying when we assign pending_mouse_down
2023-11-14 19:22:41 -07:00
Max Brunsfeld
8de8615176
Fix uncached raster_bounds computation and font selection
...
Co-authored-by: Nathan Sobo <nathan@zed.dev>
Co-authored-by: Mikayla <mikayla@zed.dev>
2023-11-14 17:19:10 -08:00
Mikayla
7f72df6dcf
Merge branch 'main' into element-types
2023-11-14 15:49:10 -08:00
Mikayla Maki
df64a3c701
Not working yet file-finder2 ( #3321 )
...
Porting file_finder
Release Notes:
- N/A
2023-11-14 15:22:59 -08:00
Conrad Irwin
1109cd11c8
Abandon ship
2023-11-14 16:17:24 -07:00
Max Brunsfeld
ca63a99736
Enable tests in project panel 2 ( #3325 )
2023-11-14 15:02:51 -08:00
Max Brunsfeld
860959fe13
Implement simulated prompts in TestPlatform
2023-11-14 14:56:50 -08:00
Mikayla
6b25841e2a
WIP
2023-11-14 14:48:34 -08:00
Conrad Irwin
3b01a032ba
In the middle of stuff
2023-11-14 14:38:23 -07:00
Max Brunsfeld
123faed5b0
Re-enable all project panel tests
...
Some are still failing.
2023-11-14 12:45:46 -08:00
Mikayla
62fc0b2100
Remove unnescessary unimplemented
2023-11-14 12:12:02 -08:00
Mikayla
3419aaf17e
Fix several shutdown related bugs
2023-11-14 11:42:58 -08:00
Conrad Irwin
37d0b8424c
Merge branch 'main' into element-types
2023-11-14 12:10:26 -07:00
Conrad Irwin
5dda105182
Merge branch 'main' into element-types
2023-11-14 11:45:19 -07:00
Mikayla
27574524b8
Restore quit action
2023-11-14 10:31:55 -08:00
Conrad Irwin
b69b5742ed
Fix panicking unwrap()
2023-11-14 11:27:52 -07:00
Mikayla
caa0bae04f
Merge branch 'main' into core-actions
2023-11-14 10:11:39 -08:00
Nathan Sobo
bb584cc7c4
WIP
2023-11-14 11:00:52 -07:00
Max Brunsfeld
c7d80c7aac
Start work on creating gpui2 version of project panel ( #3299 )
...
I'm gonna land what I have, even though some features aren't ported yet,
since we're working on all of this code so actively.
* [x] get the basic structure compiling
* [x] get the panel laying out correctly
* [ ] rename / new file editor
* [ ] enable the tests
* [ ] drag and drop
* [ ] context menu
2023-11-14 09:56:46 -08:00
Max Brunsfeld
b893ac2a02
Merge branch 'main' into project-panel2
2023-11-14 09:33:48 -08:00
Nathan Sobo
e08f1690b3
Remove commented field
2023-11-14 09:33:28 -07:00
Antonio Scandurra
0b8ec5372b
Return the line length when x
is past the last glyph
...
Co-Authored-By: Julia <julia@zed.dev>
2023-11-14 17:06:18 +01:00
Antonio Scandurra
d855e91e43
Honor cmd-w
to close active item
...
Co-Authored-By: Julia <julia@zed.dev>
2023-11-14 16:38:20 +01:00
Nathan Sobo
364e3e7de5
Merge remote-tracking branch 'origin/main' into element-types
2023-11-14 01:55:58 -07:00
Nathan Sobo
c6e8a097a3
Rename back to div
2023-11-14 01:41:55 -07:00
Nathan Sobo
be18c47912
Remove unnecessary with_element_id calls
2023-11-14 01:38:13 -07:00
Nathan Sobo
a5306c2312
Remove div module
2023-11-14 01:25:10 -07:00
Nathan Sobo
80014a28ea
No compile errors or warnings
2023-11-14 01:23:09 -07:00
Nathan Sobo
27fb381cca
Checkpoint
2023-11-14 01:15:48 -07:00
Mikayla
ee4957dd47
Implement most core actions
2023-11-14 00:06:33 -08:00
Nathan Sobo
ce30a689a0
Checkpoint
2023-11-13 23:15:45 -07:00
Nathan Sobo
9382a304c4
Checkpoint
2023-11-13 23:03:14 -07:00
Nathan Sobo
1668330764
Checkpoint
2023-11-13 22:51:44 -07:00
Nathan Sobo
4a3a1ad0c3
Checkpoint
2023-11-13 22:42:19 -07:00
Nathan Sobo
54a817a5ab
Checkpoint
2023-11-13 22:28:33 -07:00
Nathan Sobo
f71afdb0f2
Checkpoint
2023-11-13 22:22:09 -07:00
Nathan Sobo
83a5f74493
Checkpoint
2023-11-13 22:02:05 -07:00
Conrad Irwin
ad017a5df5
Allow clicking on commands in the command palette
2023-11-13 21:42:27 -07:00
Nathan Sobo
044d9679ab
Checkpoint
2023-11-13 21:40:02 -07:00
Conrad Irwin
c5878cbd5f
Add Text::styled() and use it in command palette
...
Prevents jumping while typing
2023-11-13 19:53:55 -07:00
Nathan Sobo
872b5186e2
Checkpoint
2023-11-13 19:23:07 -07:00
Nathan Sobo
922bb3195b
WIP
2023-11-13 18:58:42 -07:00
Conrad Irwin
06f3c60be8
Fix action dispatching...
2023-11-13 18:56:59 -07:00
Nathan Sobo
76754c559c
WIP
2023-11-13 18:18:25 -07:00
Mikayla Maki
ca3341f066
Improve actions macros ( #3292 )
...
- `actions!` now uses `#[action]` on each struct to reduce duplication.
- The `#[action]` macro now works on unit structs.
- Renamed `menu::unused` to `menu::init` and added more explanation in
comments.
Release Notes:
- N/A
2023-11-13 17:14:56 -08:00
Mikayla
8bbced50c2
Add test tag
2023-11-13 16:51:59 -08:00
Mikayla
d197660d3b
Fix broken tests and comment out remaining tests
2023-11-13 16:46:06 -08:00
Mikayla
7d1593b90c
Merge branch 'main' into editor-tests
2023-11-13 15:53:22 -08:00
Mikayla
a4e9fea133
WIP
...
co-authored-by: conrad <conrad.irwin@zed.dev>
2023-11-13 15:53:04 -08:00
Nathan Sobo
aec7955ccf
Checkpoint
2023-11-13 16:40:29 -07:00
Conrad Irwin
25bc898807
Add KeyBindings to CommandPalette
2023-11-13 15:40:49 -07:00
Max Brunsfeld
2eedd2ad03
Merge branch 'main' into project-panel2
2023-11-13 13:39:13 -08:00
Conrad Irwin
f8bc9be284
Fix test
2023-11-13 13:53:08 -07:00
Conrad Irwin
f464d69ff8
Merge branch 'main' into dispatch-tree
2023-11-13 13:21:57 -07:00
Mikayla
0e3fd92bd0
Get editor tests compiling
2023-11-13 12:10:14 -08:00
Conrad Irwin
7e7b065535
Fix on_action on focusable
...
We were accidentally dropping the key context
2023-11-13 12:48:36 -07:00
Max Brunsfeld
1968becf94
Merge branch 'main' into project-panel2
2023-11-13 11:26:51 -08:00
Max Brunsfeld
13dd912817
Get left, right, and bottom docks rendering in the right places in the workspace
...
Co-authored-by: Julia <julia@zed.dev>
Co-authored-by: Marshall <marshall@zed.dev>
2023-11-13 10:47:15 -08:00
Conrad Irwin
2625051f75
Better fix for multiple focuses in one frame
2023-11-13 11:32:05 -07:00
Mikayla
4c5d5105f3
Merge branch 'main' into editor-tests
2023-11-13 09:54:02 -08:00
Antonio Scandurra
348760556a
💄
2023-11-13 18:33:08 +01:00
Antonio Scandurra
a6c95ad331
Fix panic when querying available actions
2023-11-13 18:29:18 +01:00
Kirill Bulatov
dbd26ac651
Make inlay hint cache tests pass
...
Co-Authored-By: Conrad <conrad.irwin@gmail.com>
2023-11-13 18:25:21 +02:00
Antonio Scandurra
45fef27aa1
Clear all the state when clearing KeyDispatcher
2023-11-13 15:31:35 +01:00
Antonio Scandurra
44534b926d
Register actions on the right div
2023-11-13 15:21:47 +01:00
Antonio Scandurra
d0b5c654aa
Clear pending keystrokes when finding action
2023-11-13 14:48:08 +01:00
Antonio Scandurra
827b16bf5c
Capture node in dispatch tree even if it's not focusable
2023-11-13 14:42:16 +01:00
Kirill Bulatov
e257f7d0b1
Ignore tests for now
2023-11-13 15:02:24 +02:00
Antonio Scandurra
9c18253863
Register key and action listeners using Interactive::initialize
...
Co-Authored-By: Thorsten <mrnugget@gmail.com>
2023-11-13 11:37:57 +01:00
Antonio Scandurra
318cb784b2
Fix panic when calling with_key_dispatch
recursively
...
Co-Authored-By: Thorsten <mrnugget@gmail.com>
2023-11-13 10:17:52 +01:00
Nathan Sobo
7eaba8fabc
WIP
2023-11-10 14:47:45 -07:00
Nathan Sobo
74a0d9316a
Add a DispatchTree which will replace the existing key dispatch strategy
...
Instead of freezing a stack, we will record the entire dispatch tree so we can
change focus.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2023-11-10 11:56:14 -07:00
Antonio Scandurra
468a014bfc
Allow measuring arbitrary items in UniformList
2023-11-10 16:41:21 +01:00
Antonio Scandurra
c76fd93015
Use padded bounds to draw uniform list items
2023-11-10 16:41:21 +01:00
Antonio Scandurra
1d37191320
Ensure UniformList style is painted beneath its items
2023-11-10 16:41:21 +01:00
Antonio Scandurra
6929a71827
Ceil measured width for Text element
2023-11-10 16:41:13 +01:00
Antonio Scandurra
23fd1e19dc
Ignore element offset when manually drawing AnyElement
2023-11-10 11:35:57 +01:00
Antonio Scandurra
a0987f1121
Merge remote-tracking branch 'origin/main' into code-actions-2
2023-11-10 11:01:23 +01:00
Conrad Irwin
cc9fb9dea0
Fix panic caused by focusing the same thing twice
2023-11-09 22:25:46 -07:00
Conrad Irwin
e6d6806693
Tidy up some more modal behaviour
2023-11-09 21:11:44 -07:00
Conrad Irwin
a73265ace4
Merge branch 'main' into command_palette2
2023-11-09 20:58:54 -07:00
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
Marshall Bowers
8bd02fdadc
Extend RGBA hex color parsing to support 3-value and 4-value variants ( #3295 )
...
This PR extends our support for parsing hex color codes to `Rgba` to
additionally support 3-value (`#rgb`) and 4-value (`#rgba`) formats.
See [here](https://developer.mozilla.org/en-US/docs/Web/CSS/hex-color )
for more details on these hex color variants.
Release Notes:
- N/A
2023-11-09 18:27:47 -05:00
Marshall Bowers
82861e3123
Improve digit duplication
2023-11-09 18:19:58 -05:00
Marshall Bowers
8f5adeb9c3
Improve error conditions when parsing hex colors
2023-11-09 18:00:17 -05:00
Marshall Bowers
417279e01b
Add support for parsing 3-value and 4-value hex codes
2023-11-09 17:45:05 -05:00
Conrad Irwin
fa153a0d56
Make command dispatching work
2023-11-09 15:14:23 -07:00
Max Brunsfeld
28d3d21108
Generalize Refineable derive macro to derive arbitrary traits on the refinement type
2023-11-09 13:23:31 -08:00
Nathan Sobo
f5f9d881d7
Polish actions macros
2023-11-09 11:57:13 -07:00
Antonio Scandurra
1a0ddc424b
WIP
2023-11-09 19:11:17 +01:00
Antonio Scandurra
b029083441
Start on rendering context menu in editor2
...
Co-Authored-By: Nathan <nathan@zed.dev>
Co-Authored-By: Mikayla <mikayla@zed.dev>
2023-11-09 19:03:10 +01:00
Piotr Osiewicz
a1d9f351db
Some more woogaloo around action dispatch
...
Co-authored-by: Conrad <conrad@zed.dev>
2023-11-09 18:51:41 +01:00
Antonio Scandurra
5d15886675
Render code actions indicator
...
Co-Authored-By: Nathan <nathan@zed.dev>
2023-11-09 18:43:26 +01:00
Piotr Osiewicz
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
Antonio Scandurra
cfee1401ed
Extract AnyElement::{measure,draw}
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2023-11-09 17:30:41 +01:00
Mikayla
656eb9d455
WIP
2023-11-09 00:18:00 -08:00
Mikayla
43eb7f28d1
checkpoint
2023-11-08 23:16:04 -08:00
Mikayla
7a7ef1025d
Add Context::read_window, WindowHandle::root, and change ViewContext.view() to return a reference
2023-11-08 22:11:19 -08: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 Brunsfeld
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 Brunsfeld
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
Max Brunsfeld
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
Antonio Scandurra
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 Scandurra
14b41d657d
Introduce ViewContext::on_blur
...
Co-Authored-By: Marshall <marshall@zed.dev>
2023-11-08 19:09:01 +01:00
Antonio Scandurra
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