K Simmons
69ecbb644d
DOCK WORKING!
...
Update editor element to use mouse regions instead of dispatch event for mouse events
Fix bug in presenter where mouse region handlers were stored on click and called instead of more up to date handlers from subsequent renders
Changed MouseRegion to require discriminants in all cases
Add scroll wheel event to MouseRegion
Polished a bunch of dock inconsistencies
Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-09-11 15:32:20 -07:00
K Simmons
28965dc5b6
Make MouseRegion Click handlers, also handle Down events by default.
2022-09-11 14:19:35 -07:00
Mikayla Maki
d189972a0d
Merge branch 'terminal-scrolling-sensitivity' into terminal-polishing
2022-09-02 15:48:49 -07:00
Mikayla Maki
1502c19208
Polished scrolling significantly
2022-09-02 15:47:35 -07:00
Mikayla Maki
7730039e31
Sketched out program manager API
2022-09-01 20:07:30 -07:00
K Simmons
227cc66594
Simulate mouse up if mouse was released outside window, don't report dragged payload if it was dragged from a different window
2022-08-31 14:06:38 -07:00
K Simmons
3cc07c1099
Fix some drag and drop issues including the mouse cursor not being locked to pointer, tooltips being incorrect when a dragged tab is used, and some subscription leaks from panes
2022-08-26 15:43:15 -07:00
K Simmons
042ece00b1
Drag and drop tabs working. all known bugs fixed
2022-08-25 11:14:24 -07:00
K Simmons
de3acbd75b
Introduce ReorderBehavior to pane, and address drag and drop offset error
2022-08-23 15:41:59 -07:00
K Simmons
13e9336049
Merge branch 'main' into drag-and-drop
2022-08-22 17:18:29 -07:00
K Simmons
e44536344a
Removed EventHandler from workspace in favor of mouse event handler
2022-08-22 16:49:14 -07:00
K Simmons
0f43ef9331
Dispatch Event refactoring. Appears to be workingCo-Authored-By: nathan@zed.dev
2022-08-22 16:16:40 -07:00
K Simmons
b97940be9b
more wip but currently beach balling
2022-08-22 16:16:39 -07:00
K Simmons
3fb4e6356c
Rework presenter dispatch_event to allow isolated propogation of individual MouseRegionEvent types Co-Authored-By: mikayla@zed.dev
2022-08-22 16:16:39 -07:00
K Simmons
0d6125889f
WIP
2022-08-22 16:16:39 -07:00
K Simmons
ab9f073443
fixed merge errors
2022-08-22 16:16:39 -07:00
K Simmons
133c194f4a
wip tab drag and drop
2022-08-22 16:16:39 -07:00
K Simmons
86fdd55fd4
Combined presenter mouse region event dispatching and added support up_out, and drag_over
2022-08-22 16:16:39 -07:00
K Simmons
a650c146f1
more event wip
2022-08-22 16:16:39 -07:00
K Simmons
53add253b6
wip new mouse region events
2022-08-22 16:16:39 -07:00
Mikayla Maki
1de68a724c
Debugged mouse reporting for now. Remaining bugs are GPUI level bugs
2022-08-19 15:11:49 -07:00
Mikayla Maki
9f9bafd2a7
Merge branch 'terminal-mouse' of github.com:zed-industries/zed into terminal-mouse
2022-08-19 13:04:34 -07:00
Mikayla Maki
efd3247ce4
Added modifiers to scroll wheel eevent
2022-08-19 12:10:12 -07:00
Mikayla Maki
cb0bd340b9
Merge branch 'main' into terminal-mouse
2022-08-18 17:41:19 -07:00
Mikayla Maki
37ca7a6658
Half way done with mouse reporting
2022-08-18 17:37:24 -07:00
Julia
1f7db46d98
Merge pull request #1537 from zed-industries/fix-goto-links-with-selections
...
Fix goto links with selections
2022-08-18 18:49:21 -04:00
ForLoveOfCats
b8b951deab
Clear last-mouse-moved pressed button when that button gets a mouse-up
...
This fixes an annoying issue where if the last mouse moved event was
during a drag it would never trigger mouse cursor changes until next
mouse move reset it. It makes sense to continue to not change the cursor
while the button is pressed so instead this tracks when the mouse button
is released in order to update the mouse move event
2022-08-18 18:34:01 -04:00
Mikayla Maki
0fef72ac5f
Merge pull request #1524 from zed-industries/ime-finalize
...
IME Changes: Tracking PR
2022-08-18 13:27:30 -07:00
Mikayla Maki
6652d41864
Fixed cursor blinking, added other cursor shape rendering
2022-08-18 11:28:18 -07:00
Antonio Scandurra
06f9516d31
Fix crash when closing a window while in full-screen mode
...
This commit delays closing the native window to the next tick to
avoid borrowing either `WindowState` or `MutableAppContext` twice.
2022-08-18 14:59:17 +02:00
Antonio Scandurra
75c9b90c76
Add failing unit test for buffer opening cancellation
2022-08-17 11:55:34 +02:00
Antonio Scandurra
da805b3d13
Merge pull request #1526 from zed-industries/crash-on-file-prompt-with-japanese-keyboard-layout
...
Fix crash when attempting to show file prompt while using Japanese keyboard layout
2022-08-17 09:56:09 +02:00
Mikayla Maki
1f82c0c8bf
Repeat key problems fixed.
2022-08-16 23:00:09 -07:00
Mikayla Maki
2f2e5506ce
Merged main into ime-finalize
2022-08-16 22:57:07 -07:00
Mikayla Maki
aa75fbe56c
Fix panic on main
2022-08-16 22:36:24 -07:00
Mikayla Maki
94ba282e76
Checkpoint, alt-n l is very broken. Bisecting.
2022-08-16 22:12:06 -07:00
Max Brunsfeld
e4eead6477
Fix crash when attempting to show file prompt while using Japanese keyboard layout
2022-08-16 17:44:58 -07:00
Mikayla Maki
18dc12218f
Begin work on IME changes
2022-08-16 13:01:35 -07:00
Antonio Scandurra
b94366ab90
Add zed::ToggleFullScreen
bound to ctrl-cmd-f
2022-08-15 11:53:37 +02:00
Mikayla Maki
e2200109e6
Make clippy happy
2022-08-11 15:47:56 -07:00
Mikayla Maki
804c4c512b
Merge branch 'main' into ime-stuff
2022-08-11 15:35:42 -07:00
K Simmons
42c01c5b10
minor rustfmt fix
2022-08-11 11:35:11 -07:00
ForLoveOfCats
8ba2f77148
One big cleanup pass of clippy lints
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-10 16:51:01 -07:00
K Simmons
d68f227ec4
Fix failing tests
2022-08-10 16:26:53 -07:00
K Simmons
6f180ed822
Pane focus working. Modals seem broken now
2022-08-09 17:15:54 -07:00
K Simmons
690ea57211
WIP compiling but failing with circular reference
2022-08-09 17:15:52 -07:00
K Simmons
6442ec59e7
Switch action dispatch to use MutableAppContext parent utilities and delete parent map from presenter
2022-08-09 17:09:28 -07:00
K Simmons
4271eb3624
Event dispatch moved to MutableAppContext. No longer dispatches from presenter. Not currently handling key presses properly
2022-08-09 17:09:16 -07:00
Mikayla Maki
45c0539de0
changed name of subscription mapping and moved out to file
...
Co-authored-by: Keith <keith@zed.dev>
2022-08-09 16:59:13 -07:00
Mikayla Maki
1044b7d7d2
checkpoint, no idea what's happening
2022-08-09 16:15:53 -07:00
ForLoveOfCats
3d9821b430
Jankily adjust left padding on workspace title in fullscreen
...
This could seriously be done better
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-09 19:03:32 -04:00
ForLoveOfCats
43b9f3beb3
Invalidate view when entering/exiting fullscreen
...
This is required for `render_titlebar` to eventually adapt to
fullscreen status to affect the size of left padding on workspace
name to account for the traffic lights presence/absence
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-09 19:03:32 -04:00
ForLoveOfCats
46fef69b1a
Refactor notification/observation callback pattern in MutableAppContext
...
Pull out duplicate code and clarify some misc behavior. Some of this
existing API feels like it's probably incorrect but that needs more
thorough investigation
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-09 19:03:25 -04:00
ForLoveOfCats
ab760493cf
Route whether or not a window is fullscreen down into GPUI
...
This still needs to be able to invalidate things to be useful
but it's a good first cut at just making the information available
to platform-agnostic code
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-09 19:03:12 -04:00
Max Brunsfeld
6e76bd32da
Merge pull request #1462 from zed-industries/crash-on-goto-diagnostic
...
Fix two crashes related to diagnostics and bugs in mouse-based columnar selection
2022-08-03 12:04:56 -07:00
Max Brunsfeld
096f4693d3
Fix crash and wrong columnar selection when mousing over block lines
2022-08-03 10:19:06 -07:00
Antonio Scandurra
7cbf76ce80
Implement default macOS menu items
...
- `Zed -> Hide`, bound to `cmd-h`
- `Zed -> Hide Others`, bound to `alt-cmd-h`
- `Zed -> Show All`
- `Window -> Minimize`, bound to `cmd-m`
- `Window -> Zoom`
2022-08-03 15:13:30 +02:00
ForLoveOfCats
2c70583ef0
Add cmd+shift+click
action for triggering go to type definition
2022-07-29 17:00:07 -04:00
Antonio Scandurra
6a718dc4da
Don't insert input when the fn
key is held
2022-07-27 12:01:44 +02:00
Antonio Scandurra
d3f14fb1c2
Dispatch application menu events if custom key equivalent wasn't found
2022-07-27 11:46:47 +02:00
Antonio Scandurra
fe7ba09d52
Honor shift when converting keystroke to native key equivalent
2022-07-27 09:28:56 +02:00
Max Brunsfeld
ea82b9353d
Log instead of showing an alert when exiting due to no GPU
...
Showing the alert resulted in a panic because tasks
dispatched to the app's main GCD queue continue
to run even while the alert is displayed.
2022-07-25 16:13:28 -07:00
Max Brunsfeld
ab037fe844
Simulate calling of text-insertion APIs in TestAppContext::dispatch_keystroke
2022-07-25 12:20:12 -07:00
Max Brunsfeld
a54d9f1697
Add comment about noop performKeyEquivalent function
2022-07-25 11:42:54 -07:00
Antonio Scandurra
acdfb933e8
Honor shift if pressing command switches keyboard
2022-07-25 11:01:38 +02:00
Antonio Scandurra
7b009c8bbe
Merge branch 'main' into ime-support-2
2022-07-22 16:03:38 +02:00
Antonio Scandurra
2bfa3b9006
Synthesize CGEvents instead of using charactersByApplyingModifiers
2022-07-22 15:51:34 +02:00
Antonio Scandurra
622596619c
Honor ⌘ when Dvorak-QWERTY is used
2022-07-22 14:52:24 +02:00
Antonio Scandurra
136550de9f
Discard shift
when it causes keyboard to output a different character
2022-07-22 08:15:44 +02:00
Keith Simmons
9286e5ea04
Merge pull request #1396 from zed-industries/better-empty-pane
...
Fix Pane Focus Issues
2022-07-21 15:07:03 -07:00
Max Brunsfeld
6d264502b2
Remove print statements
2022-07-21 13:44:58 -07:00
Max Brunsfeld
7c575990be
Remove the set_selected_text_range method from the InputHandler trait
2022-07-21 12:22:12 -07:00
Antonio Scandurra
509f54bf20
Don't dispatch keydown event if editor is still composing
2022-07-21 17:37:32 +02:00
Antonio Scandurra
97ce3998ec
Position IME input according to where the selection is rendered
2022-07-21 17:35:40 +02:00
Antonio Scandurra
3c5d7e001e
Always mark keydown events as handled to suppress beep
2022-07-21 15:53:21 +02:00
Antonio Scandurra
3d6c257551
🎨
2022-07-21 14:39:22 +02:00
Antonio Scandurra
b2f2c5b055
Handle keydown event even when charactersIgnoringModifiers
is empty
...
This allows the input system to work in the presence of dead keys.
2022-07-21 14:36:47 +02:00
Antonio Scandurra
101a0663d3
Remove input
from KeyDownEvent
2022-07-21 14:29:27 +02:00
Antonio Scandurra
f170582c26
Remove println
statements from NSTextInputClient protocol functions
2022-07-21 13:51:31 +02:00
Antonio Scandurra
a4ceae3cf2
Remove unused {cancel,finish}_composition
methods
2022-07-21 13:48:56 +02:00
Antonio Scandurra
481078ae22
Restructure IME composition to not follow Chromium so closely
2022-07-21 13:41:55 +02:00
Antonio Scandurra
b02681ee8a
Treat NSTextInputClient ranges as UTF-16
2022-07-21 13:41:35 +02:00
Antonio Scandurra
eda60effed
Honor setting the selected range in addition to marking text
2022-07-21 08:57:20 +02:00
K Simmons
225055ed5d
Address some issues where panes don't get focused properly, make the focused pane more obvious, and prevent splitting of the pane with no items
2022-07-20 18:52:32 -07:00
Max Brunsfeld
0b81a4dfae
Call methods on the focused view during input events
2022-07-20 16:44:26 -07:00
Max Brunsfeld
1b0e93b153
Change interpretation of marked_text and edit when handling input
...
Co-authored-by: Antonio Scandurra <antonio@zed.dev
2022-07-20 09:53:49 -07:00
Antonio Scandurra
42ac4bf9fc
WIP
2022-07-20 18:06:29 +02:00
Antonio Scandurra
2ea0b89e7c
WIP
2022-07-20 15:07:09 +02:00
K Simmons
1cfaac1bc5
Fix clipping when dragging the mouse with vim-mode enabled and adjust single line editor selections
2022-07-19 17:18:17 -07:00
Keith Simmons
c2868a39e8
Merge pull request #1388 from zed-industries/mouse-region-refactor
...
Mouse Region Refactor
2022-07-19 16:50:12 -07:00
Antonio Scandurra
7757fbe241
Implement NSTextInputClient
protocol on window using no-ops
2022-07-19 14:52:02 +02:00
Antonio Scandurra
456a390166
Add character palette menu item
2022-07-19 14:51:57 +02:00
Max Brunsfeld
7998771d9f
Avoid panic when unable to access a GPU
...
This will remove noise from our panic logs.
Co-authored-by: Nathan Sobo <nathan@zed.dev>
2022-07-18 14:13:12 -07:00
K Simmons
deeefed7eb
Change mouse_event_handler to use HandlerSet
2022-07-18 10:08:14 -07:00
K Simmons
ec25fa9260
Extract handler set from MouseRegion
2022-07-18 09:54:48 -07:00
K Simmons
8add81350e
Rework presenter and MouseRegion to use Handler hashmap rather than individual fields
2022-07-17 23:19:32 -07:00
Antonio Scandurra
8e2e5b5cf0
Don't borrow window state mutably until we need to invoke resize callback
2022-07-13 10:38:34 +02:00
Antonio Scandurra
c53fa4941a
Ensure no borrows are held when activating window or creating prompts
2022-07-13 10:37:55 +02:00
Antonio Scandurra
d4e0f73ffe
Drop window borrow before calling makeKeyAndOrderFront
...
We're seeing some stack traces where calling `makeKeyAndOrderFront`
could invoke `setFrameSize`, which is causing a double borrow.
2022-07-13 10:19:46 +02:00
Mikayla Maki
41e83b6be2
Fixes terminal launch issues and adds tests for queries
2022-07-12 17:45:11 -07:00
Keith Simmons
8d34fe7e94
Refactor terminal connection into a model which can be copied between terminal views
...
Refactor terminal modal code to use TerminalConnection model handle so we aren't storing TerminalViews in the globals
Adjust INSTANCE_BUFFER_SIZE in renderer to handle pathological terminal renders
Co-authored-by: mikayla.c.maki@gmail.com
2022-07-08 16:10:09 -07:00
Mikayla Maki
e628b49dfd
First pass at selections complete
2022-07-07 17:31:38 -07:00
Mikayla Maki
be94f614a7
fix merge conflicr
2022-07-07 17:24:55 -07:00
Mikayla Maki
ca877245be
Finished merge of drag update
2022-07-07 16:12:24 -07:00
Mikayla Maki
bbd0c0d44d
Merge branch 'main' into gpui-changes
2022-07-07 16:08:32 -07:00
Mikayla Maki
9fd2bf2fa1
Updated drag API to pass old,new, instead of delta,new
2022-07-07 16:07:24 -07:00
Nathan Sobo
805c06ee76
Merge pull request #1298 from zed-industries/mouse-region-refactor
...
Mouse Event Refactor
2022-07-07 16:43:36 -06:00
Mikayla Maki
2a6e23ff28
Hoisted assert clipboard into TestAppContext
2022-07-07 14:55:25 -07:00
Mikayla Maki
9b6167aad8
added inline hint
2022-07-07 14:51:34 -07:00
Mikayla Maki
2c6dcb82ef
GPUI change proposals
2022-07-07 14:51:34 -07:00
Mikayla Maki
1cfe8688ca
Merge pull request #1304 from zed-industries/deploy-panic
...
Fixed working directory issues, added tests.
2022-07-07 12:14:57 -07:00
Mikayla Maki
02525c5bbe
Added a way to change the timeout with state
2022-07-07 12:04:17 -07:00
Mikayla Maki
baa011ccf4
added inline hint
2022-07-06 17:57:32 -07:00
Mikayla Maki
b2fa511acd
GPUI change proposals
2022-07-06 17:52:20 -07:00
Keith Simmons
c139f1e6b6
combine branches of events in from_native
2022-07-06 16:59:58 -07:00
Keith Simmons
bcb553f233
Combine platform mouse events to use common MouseEvent struct and remove MouseDragged event in favor of MouseMoved
2022-07-06 16:37:56 -07:00
Keith Simmons
686e57373b
pull event data out into individual Event structs
2022-07-06 15:36:42 -07:00
Antonio Scandurra
980730a4e1
Report whether a view was focused or blurred when observing focus
2022-07-06 15:53:40 +02:00
Mikayla Maki
342d38a9fb
Working on grid rendering
2022-07-05 15:10:34 -07:00
Antonio Scandurra
a5c39acf4c
Always finish previous autosave before starting a new one
2022-07-05 17:51:01 +02:00
Antonio Scandurra
d43e8b270a
Add unit test for ViewContext::observe_window_activation
2022-07-05 17:51:01 +02:00
Antonio Scandurra
d589017a80
Add ViewContext::observe_window_activation
2022-07-05 17:51:01 +02:00
Antonio Scandurra
7a6010e7dc
Fix unsafe memory access when converting entity handles
2022-07-05 17:50:57 +02:00
Max Brunsfeld
6f49f4a9cf
Recalculate Metal layer's drawable size when window's scale factor changes
2022-07-04 15:14:08 -07:00
Antonio Scandurra
9a6092dd1b
Support hitting enter on numpad
2022-07-04 10:01:56 +02:00
Antonio Scandurra
d3b9eca791
Merge branch 'main' into user-timeline
2022-07-04 09:23:16 +02:00
Mikayla Maki
62939322d3
rendering cursor correctly
2022-07-01 13:03:26 -07:00
Mikayla Maki
2ee57c1512
Merge pull request #1255 from zed-industries/terminal-fr
...
WIP: Terminal
2022-06-30 11:30:28 -07:00
Keith Simmons
c9d23dba6c
Update command palette filter from vim mode more proactively
2022-06-29 11:58:12 -07:00
Antonio Scandurra
7bae759a02
Send extension counts when metadata changes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-06-29 17:58:11 +02:00
Mikayla Maki
e3834409dd
Fixed focus issues with scrolling and input
2022-06-28 18:28:13 -07:00
Keith Simmons
f6292437fa
Add command palette filter global and update it when vim mode is enabled/disabled
2022-06-28 13:35:43 -07:00
Keith Simmons
a477733bcb
Address hover panic and add hint to install go when language server failed to install
2022-06-27 15:48:15 -07:00
Keith Simmons
92ab107fc9
working jump to definition with tests
2022-06-24 15:09:31 -07:00
Keith Simmons
848445455d
Working underline based on symbol origin
2022-06-24 15:05:35 -07:00
Antonio Scandurra
a21dbdd0d6
Update window edited status when pane item is removed
2022-06-23 14:28:10 +02:00
Antonio Scandurra
2dae0ddcdb
Add test to verify closing window via the mouse
2022-06-23 14:18:53 +02:00
Antonio Scandurra
06033d7fa9
Introduce ViewContext::on_window_should_close
...
This is a new callback that can be used to interrupt closing the window
when the user has unsaved changes.
2022-06-23 11:43:19 +02:00
Antonio Scandurra
ca8ddcdeec
Set window's edited = true
when there are unsaved changes
2022-06-23 10:59:50 +02:00
Antonio Scandurra
01349e1d42
Fix panic when Text
contained carriage returns
2022-06-23 10:21:21 +02:00
Max Brunsfeld
36f8c68099
Remove redundant run_until_parked call in Foreground::advance_clock
2022-06-22 14:43:21 -07:00
Antonio Scandurra
9b521d6097
Use Arc<Deterministic>
to understand which await points are parking
2022-06-22 17:39:34 +02:00
Antonio Scandurra
c90e8c08a6
Accept a datetime range when querying project activity
2022-06-21 14:03:10 +02:00
Antonio Scandurra
a35d7c5e15
Use BOOL
instead of Rust booleans in handle_key_equivalent
2022-06-17 17:19:18 +02:00
Antonio Scandurra
8f6d081de8
Override performKeyEquivalent
to handle key events
...
This lets us bypass the application menu and invoke the event handler
in Zed first. If that doesn't handle the event, the application menu
item corresponding to the shortcut will be actioned. Prior to this
commit the opposite would happen, which would dramatically limit the
throughput at which we could handle events.
2022-06-17 17:12:56 +02:00
Antonio Scandurra
607903eed5
Return true in the Window::on_event
callback if event was handled
2022-06-17 17:09:16 +02:00
Max Brunsfeld
2c61bc2b1f
Always use capital letters when rendering a keystroke
2022-06-16 17:48:10 -07:00
Max Brunsfeld
a3b17ffd15
Allow creating application menus with submenus
2022-06-16 17:47:39 -07:00
Antonio Scandurra
516bd13474
Add tooltip to follow collaborators
2022-06-15 17:08:39 +02:00
Antonio Scandurra
8a146e49ca
Use a different fit mode for tooltips
2022-06-15 16:45:04 +02:00