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
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
ForLoveOfCats
8ba2f77148
One big cleanup pass of clippy lints
...
Co-authored-by: Mikayla <mikayla@zed.dev>
2022-08-10 16:51:01 -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
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
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
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
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
a54d9f1697
Add comment about noop performKeyEquivalent function
2022-07-25 11:42:54 -07:00
Antonio Scandurra
7b009c8bbe
Merge branch 'main' into ime-support-2
2022-07-22 16:03:38 +02: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
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
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
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
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
Max Brunsfeld
6f49f4a9cf
Recalculate Metal layer's drawable size when window's scale factor changes
2022-07-04 15:14:08 -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
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
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