Commit Graph
41 Commits
Author SHA1 Message Date
Nathan SoboandMax Brunsfeld ed28bd3f95 Combine Workspace and WorkspaceView
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-05-03 20:15:55 -06:00
Max Brunsfeld 9b0cc0a032 Avoid cancelling ::open_entry task in FileFinder 2021-04-29 15:03:46 -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
Nathan Sobo 53013b3ab7 Merge remote-tracking branch 'origin/master' into close-tabs 2021-04-28 13:15:00 -06:00
Max Brunsfeld eec8a3b555 Simplify file finder update_matches logic 2021-04-27 14:58:54 -07:00
Max Brunsfeld a59b75c839 Keep results stable when using file-finder while scanning files 2021-04-27 14:02:55 -07:00
Nathan SoboandMax Brunsfeld 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 f29f1b073d Preserve selected file finder path when Worktree changes 2021-04-26 20:23:56 -06:00
Max BrunsfeldandNathan Sobo 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 e7c594262f Fix handling of uppercase characters in fuzzy finding 2021-04-26 15:04:26 -07:00
Max BrunsfeldandNathan Sobo 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 BrunsfeldandNathan Sobo 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 SoboandMax Brunsfeld c9d7249305 WIP
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-23 11:37:23 -06:00
Max BrunsfeldandNathan Sobo 8e0ca2056e Store paths as strings on PathMatch structs
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-21 12:05:34 -07: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 69a43afcbd Add a method for waiting until a worktree's current scan is complete
Start removing usages of finish_pending_tasks in tests
2021-04-19 17:45:01 -07:00
Nathan Sobo 358fad8242 Replace the old worktree with the new one 2021-04-15 21:02:30 -06:00
Nathan Sobo db8cce9aa9 Merge branch 'master' into rescan 2021-04-14 22:26:09 -06:00
Max BrunsfeldandNathan Sobo 3f71867af8 Improve styling of tabs
* Enforce a min width per tab
* Center the title within tab, regardless of icon
* Render icon over the top of the tab title
* Ensure there is always a fixed minimum amount of filler to the right of all tabs

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-14 15:14:46 -07:00
Nathan Sobo 36e6ed3aef WIP 2021-04-14 12:38:16 -06:00
Nathan SoboandAntonio Scandurra cbc1d83067 Get worktree out of the way so we can try again
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-14 11:09:06 -06:00
Nathan SoboandAntonio Scandurra e97ce4ff58 Fix after method rename
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-04-14 09:11:11 -06:00
Nathan SoboandBrooks Swinnerton 4cef25eff8 Replace easy-parallel with scoped-pool for path searches
The easy-parallel crate spawned new threads on each call, which was resulting in way too many threads.

Co-Authored-By: Brooks Swinnerton <934497+bswinnerton@users.noreply.github.com>
2021-04-14 09:08:52 -06:00
Nathan Sobo 24cdfd2471 Identify Worktree entries by their inode
This will allow us to re-parent elements when re-scanning when the file system changes.
2021-04-13 20:09:41 -06:00
Nathan SoboandBrooks Swinnerton 0cc5e8f742 Replace easy-parallel with scoped-pool for path searches
The easy-parallel crate spawned new threads on each call, which was resulting in way too many threads.

Co-Authored-By: Brooks Swinnerton <934497+bswinnerton@users.noreply.github.com>
2021-04-13 20:07:42 -06:00
Nathan SoboandBrooks Swinnerton 0a2d2aa684 Replace app/app_mut on contexts with AsRef/AsMut impls
Co-Authored-By: Brooks Swinnerton <934497+bswinnerton@users.noreply.github.com>
2021-04-13 20:07:25 -06:00
Nathan Sobo 97a8a8ed43 Remove unsafe code from App::test_async
I don't actually think it was correct to allow the future to borrow a mutable app reference. I went back to passing a wrapper around the refcell to async tests. They'll be a bit more annoying to write but also totally safe.
2021-04-10 00:05:09 -06:00
Max Brunsfeld 079050541f Get app running and test passing after gpui App+Platform restructure 2021-04-09 16:56:32 -07:00
Nathan SoboandMax Brunsfeld 4ecc17b1bb WIP: Make App the only entry point from main
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-09 13:38:09 -06:00
Nathan Sobo 9f6f27f305 Order debug JSON and allow elements to be named; copy to clipboard 2021-04-07 21:54:14 -06:00
Max Brunsfeld bd37b11306 Update tab's modified icon via a saved event emitted from buffer 2021-04-06 15:47:05 -07:00
Antonio Scandurra e0c43dac25 Implement SVG rendering 2021-04-06 13:46:33 +02:00
Nathan Sobo 2970e934da Use handles to obtain entities in future callbacks
This guarantees that the spawning entity will be present and simplifies
the logic for obtaining the entity. Now we can forward the results of spawned futures and streams in the same way regardless of whether what spawned them was a model or a view.
2021-04-05 20:04:04 -06:00
Max Brunsfeld 011d4d8437 wip 2021-03-30 12:36:18 -07:00
Antonio ScandurraandNathan Sobo 9178e91cc0 Extract platform-dependant FontSystem
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-24 16:51:28 +01:00
Nathan Sobo d13510bfe3 💄 2021-03-22 21:00:07 -06:00
Antonio ScandurraandNathan Sobo 859c0f53cb WIP: Introduce layers in renderer
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-22 18:55:53 +01:00
Antonio ScandurraandNathan Sobo f330fdb6a7 Clarify variable name
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-22 15:27:48 +01:00
Nathan Sobo 119aa452b6 Overhaul the entire element system
Now the Element trait is designed to be wrapped in a Lifecycle enum that gets placed inside an ElementBox. This allows the framework to store data on behalf of the Element implementation, such as sizes, bounds, and also implementation-specific LayoutState and PaintState types. This makes it easier to reason about which data is available in each Element method.
2021-03-21 20:54:23 -06:00
Nathan SoboandAntonio Scandurra 046fe3fff9 Dispatch keystrokes and fix rerendering when window invalidated
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-03-21 11:38:23 -06:00
Nathan SoboandAntonio Scandurra f5df3681f8 Add file_finder module
Still need to wire up key bindings to make it toggle.

Co-Authored-By: Antonio Scandurra <me@as-cii.com>
2021-03-21 10:50:07 -06:00