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
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
Nathan Sobo
dced9469f5
WIP
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-23 12:47:23 -06:00
Nathan Sobo
c9d7249305
WIP
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-23 11:37:23 -06:00
Antonio Scandurra
ec2e1c3045
Rename PathSearch::Sibling
to PathSearch::Successor
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-23 17:15:04 +02:00
Antonio Scandurra
8f2fc079fd
Restructure Worktree to index entries by path
2021-04-23 15:25:59 +02:00
Max Brunsfeld
ae5f02d2e9
Use getmntinfo(3) to list mounted volumes
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-22 15:41:03 -07:00
Max Brunsfeld
b37b047400
Start work on excluding separate mount dirs
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-22 14:11:46 -07:00
Max Brunsfeld
3e44a0adae
Avoid redundant clearing of descendants when scanning dirs
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-22 10:30:47 -07:00
Antonio Scandurra
b2e7a2c42a
Log when there's an error while scanning a directory
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-22 19:15:37 +02:00
Antonio Scandurra
99f51c0d85
Simulate .gitignore
s in the randomized test
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-22 18:57:46 +02:00
Antonio Scandurra
928ce0eec8
Clear descendants of existing children when scanning a directory
...
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-22 18:42:11 +02:00
Antonio Scandurra
9723e46af4
Replace linear scan of entries with a custom FileIter
2021-04-22 17:29:36 +02:00
Antonio Scandurra
c429a937be
Remove is_ignored
from PathEntry
and lean more on the tree instead
2021-04-22 16:49:11 +02:00
Antonio Scandurra
f3b663e375
Ignore .git
folder
2021-04-22 16:48:13 +02:00
Antonio Scandurra
19a2856780
Let ignore edits batch naturally without imposing a max batch len
2021-04-22 16:47:41 +02:00
Antonio Scandurra
af3bc236b7
Recompute ignore status when .gitignore changes or for new entries
2021-04-22 15:14:23 +02:00
Max Brunsfeld
499e55e950
Start work on handling changes to gitignore files
...
* Use the published ignore crate
* Store ignore objects on snapshot, and use them to compute
files' ignored status dynamically, instead of storing the
ignored status on the file.
2021-04-21 18:11:52 -07:00
Max Brunsfeld
427930cd8a
wip - gitignore handling on rescan
2021-04-21 12:30:30 -07:00
Max Brunsfeld
8e0ca2056e
Store paths as strings on PathMatch structs
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-21 12:05:34 -07:00
Max Brunsfeld
955268e2a6
Check worktree invariants in randomized test
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-21 11:46:49 -07:00
Max Brunsfeld
ce28dc39ff
Fix missing insert in populate_dir
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-21 11:39:50 -07:00
Nathan Sobo
a898acf6b5
WIP
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-21 12:29:16 -06:00
Nathan Sobo
56b48c8229
WIP: Establish new invariant-maintaining API for mutating worktree snapshots
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-21 12:08:09 -06:00
Antonio Scandurra
031d5ac7d4
WIP
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-21 16:58:17 +02:00
Antonio Scandurra
fd8125b22c
Re-enable file finder test and bind menu:select-{next-prev}
2021-04-21 10:07:32 +02:00
Max Brunsfeld
9518cef0a2
Merge pull request #23 from zed-industries/fix-mac-mini-failures
...
Use our own scoped_pool implementation
2021-04-20 16:01:47 -07:00
Max Brunsfeld
b20f5e9139
Fully halt background scanner threads when dropping Worktree
...
* Rework fsevent API to expose a handle for halting the event stream
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-20 15:55:29 -07:00
Max Brunsfeld
9fd8acdce7
Use our own scoped_pool implementation
2021-04-20 14:07:36 -07:00
Max Brunsfeld
265ad90034
Stop processing events if root path is deleted
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-20 10:40:17 -07:00
Max Brunsfeld
85f8537017
Worktree: silence log message when dir is overwritten by file
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-20 10:12:48 -07:00
Nathan Sobo
5cbbf620ed
WIP
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-20 10:59:12 -06:00
Nathan Sobo
9899614f31
Remove task_done condvar which supported finish_pending_tasks
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-20 10:45:42 -06:00
Nathan Sobo
1a8e909a38
Ensure we remove broadcast channels after all conditions resolve
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-20 10:43:13 -06:00