Nathan Sobo
afb623b6b5
Make Workspace::open_entry2, which returns a dyn ItemViewHandle
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-05-03 16:25:18 -06:00
Max Brunsfeld
8cffa8bdb2
Move file handle from buffer to buffer view
2021-04-29 17:47:06 -07:00
Max Brunsfeld
d2f309d10d
Merge pull request #31 from zed-industries/open-files
...
Allow opening files from the CLI and from the File > Open menu
2021-04-29 15:14:37 -07:00
Max Brunsfeld
9b0cc0a032
Avoid cancelling ::open_entry task in FileFinder
2021-04-29 15:03:46 -07:00
Max Brunsfeld
5826a976ef
Return a future from WorkspaceView::open_paths
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-29 14:55:28 -07:00
Max Brunsfeld
c867cfa917
Tweak durations in fsevent unit test to reduce odds of timeout
2021-04-29 12:52:28 -07:00
Max Brunsfeld
b126938af7
In file finder, handle single-file worktrees & multiple matches w/ same rel path
2021-04-29 12:44:51 -07:00
Max Brunsfeld
88b88a8067
Start work on opening files
2021-04-28 17:46:27 -07:00
Nathan Sobo
3d6336b12a
Merge pull request #29 from zed-industries/traverse-symlinks
...
Traverse symlinks when populating directories
2021-04-28 14:27:19 -06:00
Nathan Sobo
e423a49984
Traverse symlinks when populating directories
2021-04-28 14:16:54 -06:00
Nathan Sobo
6b357a6ae7
Fix tests
...
I didn't realize a previous change had broken stuff. We need to always call `remove_dropped_entities` and `update_windows` in `flush_effects`, even if there aren't any effects. To achieve this, I use a `loop` to ensure we call these methods at least once before breaking.
2021-04-28 14:16:10 -06:00
Max Brunsfeld
95fae8e9e0
Always run all crates' tests in CI
2021-04-28 12:58:14 -07:00
Max Brunsfeld
21cfb75a73
Flush redundant fs events in worktree test
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-28 12:42:39 -07:00
Nathan Sobo
92775290d9
Merge pull request #28 from zed-industries/close-tabs
...
Add tab close buttons
2021-04-28 13:19:42 -06:00
Nathan Sobo
53013b3ab7
Merge remote-tracking branch 'origin/master' into close-tabs
2021-04-28 13:15:00 -06:00
Nathan Sobo
1cb3fdbf7d
Synthesize a mouse moved event in the previous position after painting a scene
...
This ensures that we correctly update the hover state of elements whose position has changed relative to the mouse cursor even though the mouse hasn't actually moved.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-28 13:02:39 -06:00
Nathan Sobo
b5463dcd1e
Close tabs when X is clicked
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-28 10:00:45 -06:00
Nathan Sobo
bc1f758b66
Lighten tab close button when clicked
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-28 09:39:13 -06:00
Nathan Sobo
8c51bb253d
Render sprited icons at 2x resolution since we don't align to pixel grid
...
This provides the sampler with a bit more data when positioning sprites at subpixel positions.
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-28 09:32:38 -06:00
Max Brunsfeld
1eba61c08d
Flush the fs event stream on construction
2021-04-27 21:43:41 -07:00
Nathan Sobo
69cc2b0483
WIP
2021-04-27 18:35:24 -06:00
Max Brunsfeld
c1d35b099b
Ignore 'historical' events from fs event stream
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-27 16:50:05 -07:00
Max Brunsfeld
907b537a0b
Fix race when fs events occur right after constructing worktree
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-27 16:38:47 -07:00
Nathan Sobo
58e336354e
Align close tab icon cleanly with unsaved indicator
2021-04-27 16:51:23 -06:00
Max Brunsfeld
110dcc48f9
Merge pull request #26 from zed-industries/stable-file-finder-results
...
Improve file finder behavior when opening large directories like `~` or `/`
2021-04-27 15:37:24 -07:00
Max Brunsfeld
eec8a3b555
Simplify file finder update_matches logic
2021-04-27 14:58:54 -07:00
Max Brunsfeld
75b8f7425d
Avoid redundant sort_unstable_by
call on merged fuzzy matches
2021-04-27 14:34:29 -07:00
Max Brunsfeld
a59b75c839
Keep results stable when using file-finder while scanning files
2021-04-27 14:02:55 -07:00
Max Brunsfeld
6882fdca38
Avoid crash when running pane:activate_prev_item w/ no tabs open
2021-04-27 11:01:32 -07:00
Nathan Sobo
eca9f495a1
Render a close tab button on tab hover
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-27 11:58:59 -06:00
Nathan Sobo
bb95d58c79
Relay hover events to tabs
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-27 11:37:14 -06:00
Nathan Sobo
3d1e44ca29
Capture hover events on tabs
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-27 09:23:44 -06:00
Antonio Scandurra
2a1496be2e
Merge pull request #24 from zed-industries/fix-autoscroll-on-paste
...
Autoscroll on paste
2021-04-27 11:59:37 +02:00
Antonio Scandurra
b52a3b5a24
Autoscroll on paste
...
This also removes the `changed_selections` and moves the autoscroll
request inside of `update_selections`. This is nicer because it'll force
us to determine whether we want to autoscroll every time we update the
selections, so that we don't forget this in the future.
2021-04-27 11:52:46 +02:00
Nathan Sobo
fc4b7e2a2a
Introduce MouseEventHandler
...
Still need to give elements the ability to re-render their parent view. Once that is in place, I think we can implement hoverable close tab buttons.
2021-04-26 21:52:18 -06:00
Nathan Sobo
a47b0b4ca6
Add a mechanism for storing ephemeral values
...
I'll use this in the mouse event handler to track hover and click state.
2021-04-26 21:24:23 -06:00
Nathan Sobo
d31f2defa5
Merge pull request #15 from zed-industries/rescan
...
Update Worktrees when the file system changes
2021-04-26 20:35:01 -06:00
Nathan Sobo
f29f1b073d
Preserve selected file finder path when Worktree changes
2021-04-26 20:23:56 -06:00
Max Brunsfeld
55fcc586bc
Cancel outstanding fuzzy-matching calls before starting a new one
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-26 16:14:43 -07:00
Max Brunsfeld
09f5c7c23e
Fix scrollwheel events in uniformlist
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-26 15:53:38 -07:00
Max Brunsfeld
733dc15c32
Ignore .git directories
2021-04-26 15:46:06 -07:00
Max Brunsfeld
e7c594262f
Fix handling of uppercase characters in fuzzy finding
2021-04-26 15:04:26 -07:00
Nathan Sobo
870925e2ac
Rerender tabs when buffers' file handles change
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-26 14:16:35 -07:00
Max Brunsfeld
9753e67410
Update filehandle paths when renames occur
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-26 12:56:13 -07:00
Antonio Scandurra
6535304da8
WIP: Start on updating file handles
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-26 20:10:15 +02:00
Antonio Scandurra
111d98d6c1
Keep ignore status up-to-date as events are processed
2021-04-26 17:55:18 +02:00
Nathan Sobo
f770a70929
WIP: Maintain an IgnoreStack while scanning
...
All ignore files associated with ancestors of the directory currently being scanned are included in the stack. This allows us to compute ignore status for each entry as we initially scan it. If we encounter an ignored directory, we replace the stack with an "ignore all" variant that simply ignores every descendant of the ignored directory.
This is incomplete. We still need to construct an ignore stack in an appropriate state when rescanning subtrees in response to events. It also doesn't deal with individual ignore files being added, removed, or changed. I think we could potentially use the ignore stack while reconstructing the tree for this purpose.
2021-04-24 23:59:03 -06:00
Antonio Scandurra
9cd1d5e607
Avoid cloning entry in Snapshot::entry_for_path
2021-04-24 10:14:17 +02:00
Max Brunsfeld
6a7308b87a
Avoid storing redundant copies of file paths
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-23 21:17:26 -07:00
Max Brunsfeld
054203d21c
Fix fuzzy matching after removing root dirname from stored paths
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-23 15:22:47 -07:00