Commit graph

5807 commits

Author SHA1 Message Date
Nathan Sobo
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 Sobo
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
Max Brunsfeld
e082935076 Handle 'full-line' clipboard items when pasting 2021-04-13 17:58:13 -07:00
Max Brunsfeld
c83f02dd04 Implement multi-selection copy/cut/paste 2021-04-13 17:28:51 -07:00
Antonio Scandurra
13514aae6c Allow metadata to be associated with text written to clipboard
Co-Authored-By: Max Brunsfeld <max@zed.dev>
2021-04-13 19:03:56 +02:00
Antonio Scandurra
f4c1ffc329 Start on copy-paste 2021-04-13 14:58:10 +02:00
Nathan Sobo
7469240a2e Rename application binary to improve appearance of app menu 2021-04-12 19:52:30 -06:00
Max Brunsfeld
0d69b632b1
Merge pull request #14 from zed-industries/menu-commands
Make the application menu dispatch commands on the focused view
2021-04-12 16:40:48 -07:00
Max Brunsfeld
902b0f7dfa Dispatch menu commands on the focused view
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-12 15:42:33 -07:00
Max Brunsfeld
d4436f3018 Don't try to handle errors when opening platform windows
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-12 15:14:25 -07:00
Max Brunsfeld
86c0f41c9e Move set_menus method to MutableAppContext
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-12 14:38:18 -07:00
Max Brunsfeld
41358f34e3 Set up menu handler in App::new
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-12 14:25:00 -07:00
Max Brunsfeld
2332b7e06b Move open command handler to workspace global action
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-12 14:18:24 -07:00
Max Brunsfeld
3247f49954 Allow menu items to specify arguments for their commands
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-12 14:09:49 -07:00
Max Brunsfeld
a0a004737d
Merge pull request #13 from zed-industries/undo-stack
Undo/redo support
2021-04-12 11:51:19 -07:00
Max Brunsfeld
b2723fd1dd Remove unused variables 2021-04-12 11:45:41 -07:00
Max Brunsfeld
afa3f6dcd1 Add test coverage for edit event grouping in transactions 2021-04-12 11:45:41 -07:00
Max Brunsfeld
a0da23799d Merge branch 'master' into undo-stack 2021-04-12 10:49:46 -07:00
Antonio Scandurra
8f6b8b2e43 📝 2021-04-12 19:05:56 +02:00
Nathan Sobo
6ea2581e3e
Merge pull request #12 from zed-industries/platform-trait
Hide platform code entirely behind App for framework users
2021-04-12 10:48:51 -06:00
Nathan Sobo
487b60de06
Merge pull request #10 from zed-industries/menus
Populate the menu bar
2021-04-12 10:48:33 -06:00
Antonio Scandurra
3a33fab091 Generate operation when updating selection set after undo/redo 2021-04-12 17:47:19 +02:00
Antonio Scandurra
59a9f0102f Remove unnecessary edit_at method 2021-04-12 17:36:56 +02:00
Antonio Scandurra
be68af43fc Add unit test for history manipulation (undo, redo, grouping) 2021-04-12 16:01:41 +02:00
Antonio Scandurra
606e6bed56 Simplify buffer history management 2021-04-12 16:01:41 +02:00
Antonio Scandurra
ab14b99a73 Introduce transactional edits and allow snapshotting of selections 2021-04-12 16:01:41 +02:00
Antonio Scandurra
40bfdd38ae 💄 2021-04-12 16:01:41 +02:00
Antonio Scandurra
551c86f87a WIP: Start on pushing selection management down into Buffer 2021-04-12 16:01:41 +02:00
Antonio Scandurra
472ff1621f Merge UndoHistory and History, storing also operations in the latter 2021-04-12 16:01:41 +02:00
Antonio Scandurra
d0b06a2a1d Don't clear redo stack when editing
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-12 16:01:41 +02:00
Antonio Scandurra
e534fe9112 Add initial support for undo/redo stack
We're still not capturing selections/anchors, that's right up next.
2021-04-12 16:01:41 +02:00
Nathan Sobo
b9b511148b Make gpui::platform module private 2021-04-10 00:22:45 -06:00
Nathan Sobo
619e2b7e01 Remove platform::mac::runner 2021-04-10 00:19:25 -06:00
Nathan Sobo
4638391412 Remove MutableAppContext::downgrade 2021-04-10 00:14:26 -06:00
Nathan Sobo
620eedb727 Allow effects to be flushed before TestAppContext::update callback completes 2021-04-10 00:11:13 -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
Nathan Sobo
448dace281 Pass the on_finish_launching callback to Platform::run 2021-04-09 21:33:17 -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 Sobo
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
301163bab7 Add lifecycle methods to Platform trait
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-09 13:03:26 -06:00
Max Brunsfeld
00d7dafbba Merge branch 'master' into menus 2021-04-09 10:34:21 -07:00
Antonio Scandurra
07b8a105a6
Merge pull request #11 from zed-industries/undo
Introduce undo/redo support for arbitrary operations in `Buffer`
2021-04-09 18:50:36 +02:00
Max Brunsfeld
6873662c47 Use upstream git revision of core-foundation-rs 2021-04-09 08:45:23 -07:00
Antonio Scandurra
cba8730d5a Don't report edits in Buffer::undo_or_redo
We will report them in public higher-level methods like `Buffer::undo`
and `Buffer::redo`.
2021-04-09 14:15:17 +02:00
Antonio Scandurra
bf3a5d0a0d Move UndoMap down 2021-04-09 11:25:28 +02:00
Antonio Scandurra
4d9ff1109a Exercise arbitrary undos/redos in single-peer buffer randomized test 2021-04-09 11:22:25 +02:00
Antonio Scandurra
2e7ca8ea46 Store only max undo by replica instead of individual undos in Fragment 2021-04-09 11:22:25 +02:00
Antonio Scandurra
7b6fbe1d89 Compute minimal version_in_range on edit and account for undo 2021-04-09 11:22:22 +02:00
Max Brunsfeld
7ebcbdc0cb Implement File > Open menu item 2021-04-08 22:25:54 -07:00
Max Brunsfeld
f656b387b3 Call SetActivationPolicy at the proper time
If this method is called too early, the menu bar won't be
clickable on startup until the window loses focus. Calling
it once the application finishes launching seems to fix
the issue.

See https://github.com/glfw/glfw/issues/1648
2021-04-08 16:11:45 -07:00