Commit graph

565 commits

Author SHA1 Message Date
Nathan Sobo
6e363e464c Start on view-level dispatch approach for keyboard events 2022-10-16 11:46:31 -06:00
Nathan Sobo
6e53deb1b2 Refine mouse event naming 2022-10-16 11:18:58 -06:00
Nathan Sobo
3e23d1f48d
Merge pull request #1762 from zed-industries/less-click-and-hover-invalidation
Reduce unnecessary view invalidations related to mouse events
2022-10-16 10:23:54 -06:00
Nathan Sobo
1750fcf833
Merge pull request #1761 from zed-industries/mouse-region-view-invalidation
Remove unconditional invalidation when calling mouse region handlers
2022-10-14 18:31:23 -06:00
Nathan Sobo
bc03592912 Only invalidate parent view on click/hover if we read that state when rendering
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2022-10-14 18:09:15 -06:00
Nathan Sobo
934474f87e Remove unconditional invalidation when calling mouse region handlers
We want invalidation to opt-in as much as possible.
If you want a view to re-render, you need to call `cx.notify`.
2022-10-14 17:06:46 -06:00
Max Brunsfeld
8df84e0341 Add MovePageUp and MovePageDown editor commands
Co-authored-by: Mikayla Maki <mikayla@zed.dev>
2022-10-14 12:36:46 -07:00
Nathan Sobo
8d82702da2 Pass the current view id value when painting List's mouse region
Previously, a dummy value was being passed. I think this slipped in accidentally.
2022-10-13 15:57:19 -06:00
Antonio Scandurra
9ebd586350 Improve error message when rendering a child view for a dropped view
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-10-13 16:40:52 +02:00
Antonio Scandurra
1bec8087ee Add unit test for ChildView 2022-10-13 15:59:52 +02:00
Antonio Scandurra
a5a60eb854 Log view name alongside error in ChildView 2022-10-13 15:44:01 +02:00
Antonio Scandurra
edb61a9c8f Avoid panicking if child view points to a view that was not rendered 2022-10-13 15:11:57 +02:00
Antonio Scandurra
06dfb74663 Prevent ChildView from retaining an otherwise dropped view 2022-10-13 15:04:57 +02:00
K Simmons
2a1dbd6fb5 Update gpui focus test to match the new removal of intermediate focus filtering 2022-10-12 15:57:29 -07:00
K Simmons
1d8717f4de Remove focus filtering from gpui so all focus events result in focus-in and focus-out calls
Remove pane focused event in favor of focus_in at the workspace level
Added is_child to ViewContext to determine if a given view is a child of the current view
Fix issue where dock would get in a infinite loop when activated after dragging an item out of it
Fix issue where the last focused view in an item was not correctly refocused when a pane is focused after switching active tabs

Co-Authored-By: Mikayla Maki <mikayla@zed.dev>
2022-10-12 15:10:00 -07:00
Kay Simmons
81a3a22379
Merge pull request #1685 from zed-industries/vim-text-objects
Vim Text Objects and Numeric Repitions
2022-10-11 16:36:19 -07:00
Max Brunsfeld
638e9f9477
Merge pull request #1715 from zed-industries/scrollbars
Add scrollbars
2022-10-11 13:34:15 -07:00
Max Brunsfeld
e2700ff8c6 Enable/disable scrollbar auto-hide based on OS setting 2022-10-11 09:13:34 -07:00
Antonio Scandurra
45d118f96f Decide whether to clip to visible bounds on a per-element basis
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-10-11 17:05:13 +02:00
Antonio Scandurra
4504b36c8f Show a different message when participant is active on unshared project
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-10-11 15:24:31 +02:00
Antonio Scandurra
29c3b81a0a Show prompt when closing last window while there's an active call
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-10-11 14:52:47 +02:00
K Simmons
d2494822b0 Add assertion context manager to TestAppContext and convert existing vim tests to use neovim backed test context 2022-10-10 14:46:07 -07:00
Antonio Scandurra
afaacba41f Merge remote-tracking branch 'origin/main' into room 2022-10-10 15:43:38 +02:00
Antonio Scandurra
9d990ae329 Show all room participants in titlebar
...and allow following them into external projects.
2022-10-10 14:20:45 +02:00
Antonio Scandurra
d7bac3cea6 Style incoming call notification 2022-10-10 11:36:39 +02:00
K Simmons
515c1ea123 Fixed some neovim test context issues, added repeated commands in vim mode, and ported some tests to use the neovim testing strategy 2022-10-08 21:52:07 -07:00
Max Brunsfeld
4508d94a3e In deterministic executor, ensure fake timers are ordered by wake time
Previously, advancing the clock would fail to wake a timer that was
set *after* another time whose wake time had not yet arrived.
2022-10-06 17:03:23 -07:00
Antonio Scandurra
9f81699e01 WIP: start on menu bar extra 2022-10-06 16:10:45 +02:00
Antonio Scandurra
55cc142319 Move incoming calls into ActiveCall 2022-10-06 09:50:26 +02:00
Antonio Scandurra
8f8843711f Move logic for joining project into a global action in collab_ui 2022-10-05 15:04:03 +02:00
Antonio Scandurra
25bba396ef Cache CGEventSource and avoid leaking CGEvent when handling events 2022-09-30 09:51:03 +02:00
Antonio Scandurra
46b61feb9a Open popup window when receiving a call
We still need to style and allow people to accept the call but this
is a good starting point.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2022-09-28 19:35:24 +02:00
Nathan Sobo
8ff4f044b7 Start a call when clicking on a contact in the contacts popover
Co-Authored-By: Antonio Scandurra <antonio@zed.dev>
2022-09-28 11:02:26 -06:00
Max Brunsfeld
5d0b6a3da7 Merge branch 'main' into new-signup-flow 2022-09-27 15:35:05 -07:00
Mikayla Maki
4bc0afdafa Finished terminal hyperlinks for now 2022-09-26 16:33:29 -07:00
Max Brunsfeld
da36eb3b41 wip 2022-09-26 15:23:10 -07:00
Mikayla Maki
d2d49633f1 WIP, almost done with tooltips 2022-09-24 08:32:06 -07:00
Max Brunsfeld
04baccbea6 Start work on a client-side telemetry system 2022-09-23 12:23:12 -07:00
Mikayla Maki
4761898d9b removed the last dispatch_event I could find 2022-09-22 10:31:29 -07:00
Mikayla Maki
dd7259c832 Finished fixing flex scrolls 2022-09-22 09:35:52 -07:00
Mikayla Maki
f4d4ea4123 WIP fixing scrollable flex 2022-09-21 23:26:42 -07:00
Mikayla Maki
ab7f7b3754 Added on_scroll to mouse_event_handler and fixed the uniform list scroll implementation 2022-09-21 22:23:07 -07:00
Antonio Scandurra
458a6a7310 💄 2022-09-16 11:09:30 +02:00
Antonio Scandurra
582ca666d0 Don't assume BOOL is a boolean 2022-09-16 11:03:15 +02:00
Antonio Scandurra
b6ff8e7749 Introduce workaround for spurious windowDidBecomeKey event 2022-09-16 10:55:15 +02:00
Antonio Scandurra
7a16e9c048 Allow panels to appear on top of full-screen apps 2022-09-16 10:48:20 +02:00
Antonio Scandurra
3163366a10 Inline empty NSTrackingArea rect 2022-09-16 09:54:48 +02:00
Antonio Scandurra
3ec3f838db Autorelease NSTrackingArea to avoid leaking it 2022-09-15 16:24:02 +02:00
Antonio Scandurra
66d13cf42c Query isKeyWindow on windowDidBecomeKey or windowDidResignKey
Before we were assuming that receiving a callback meant that the window
was in that "key" state accordingly, but with popups that's not always
the case. In particular, there was a bug that caused an unrelated window
to receive `windowDidBecomeKey` when making an `NSPanel` the key window.
2022-09-15 15:57:02 +02:00
Antonio Scandurra
462e5852c2 Use an "always active" tracking area to detect mouseMoved events
This ensures that we can still receive mouse moved events (e.g. for
setting the cursor style) for panels that float above other windows
even if the application isn't active.
2022-09-15 15:45:08 +02:00