Commit Graph
138 Commits
Author SHA1 Message Date
Max Brunsfeld ce705ce486 Restructure event-handling methods in workspace ItemView 2021-04-07 15:05:16 -07:00
Max Brunsfeld 51e34ebbb6 Add assertions about Dirtied events in test 2021-04-07 14:52:22 -07:00
Nathan Sobo 6134728f32 Fix tests 2021-04-06 20:59:55 -06:00
Nathan Sobo be8455070b persisted_version -> saved_version 2021-04-06 20:59:44 -06:00
Nathan Sobo 0f97a62659 Remove unused method 2021-04-06 20:47:09 -06:00
Nathan SoboandMax Brunsfeld 13d41b36a5 Update modified status by emitting event whenever buffer is dirtied or saved
I used the word "dirty" because it felt more expressive than "modified" to me, but not married to it. Tagging Max because we did a lot of this thinking together.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-06 20:46:35 -06:00
Max Brunsfeld 139283c161 wip 2021-04-06 18:25:50 -07:00
Max Brunsfeld c05b909697 Implement Buffer::is_modified by storing persisted version 2021-04-06 16:19:17 -07:00
Max Brunsfeld 44a4084055 Update tab's modified icon via a saved event emitted from buffer 2021-04-06 15:47:05 -07:00
Max Brunsfeld ecd5698f4a Start work on displaying modified status in tabs 2021-04-06 14:37:21 -07:00
Max Brunsfeld fbc1294133 Silence warning in text example 2021-04-06 14:36:16 -07:00
Max BrunsfeldandNathan Sobo 4e93a56e29 Vertically center linebox child element
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-06 13:03:19 -07:00
Nathan Sobo 2107e726f4 Vertically center glyphs in Line::paint based on ascender/descender for line 2021-04-06 09:15:21 -06:00
Nathan Sobo 36e0d4d37b Render example text in example via Line::paint 2021-04-06 09:15:21 -06:00
Nathan Sobo 16c0ba1f68 Open platform window before first invalidation
This ensures we have an invalidation handler present so we render the first frame in all cases.
2021-04-06 09:15:21 -06:00
Nathan Sobo 221bba6f61 WIP: Add example app to test text rendering 2021-04-06 09:15:21 -06:00
Antonio Scandurra b5b8445a47 Reduce path atlas size by using a single channel for the texture 2021-04-06 13:53:20 +02:00
Antonio Scandurra d2e30bc457 Implement SVG rendering 2021-04-06 13:46:33 +02:00
Nathan Sobo ea0aebccae 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 BrunsfeldandNathan Sobo 4d7726501e Rename Task -> EntityTask (a BackgroundTask is just a Task)
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-05 17:03:42 -07:00
Max BrunsfeldandNathan Sobo c6e7abe037 Add save command
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-05 16:52:33 -07:00
Max BrunsfeldandNathan Sobo 812e3f29ec Make background executor available on AppContext
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-04-05 16:45:55 -07:00
Max Brunsfeld 36708c07ad Resurrect commented-out worktree test 2021-04-05 09:12:19 -07:00
Max Brunsfeld 43e3f310df Make backspace work correctly for empty selections 2021-04-02 16:20:40 -07:00
Max Brunsfeld 2d4a62beaa Add fallback UI fonts that are installed by default on macOS 2021-04-02 15:48:37 -07:00
Max Brunsfeld 8b420c9638 Ensure that the assets dir exists with a .gitkeep file 2021-04-02 15:28:09 -07:00
Max Brunsfeld b95aa282eb Remove stray print statements 2021-04-02 15:00:20 -07:00
Max Brunsfeld 74916c7661 Add a github actions config file 2021-04-02 14:43:56 -07:00
Max Brunsfeld 439e147ecf Silence sum_tree warnings
* Remove unused enum variant
* Add #[allow(unused)] for non-trivial methods
2021-04-02 14:39:56 -07:00
Max Brunsfeld 668336946c Use a real FontSystem in test platform 2021-04-02 14:35:44 -07:00
Max Brunsfeld 0eda8b3c48 Remove small pieces of unused code 2021-04-02 14:26:53 -07:00
Max Brunsfeld 30643b806f Fix buffer folding test 2021-04-02 14:04:35 -07:00
Nathan SoboandMax Brunsfeld 138f75e95f Use a condvar instead of a channel to implement finish_pending_tasks
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-02 13:53:06 -06:00
Nathan SoboandMax Brunsfeld fadecaa043 Complete finish_pending_tasks future when tasks are cancelled
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-02 12:42:23 -06:00
Nathan SoboandMax Brunsfeld dccc4f3121 Initialize logger in gpui tests
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-02 12:42:01 -06:00
Nathan SoboandMax Brunsfeld a56ef33a52 Remove future/stream handlers when task is dropped
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-02 12:03:35 -06:00
Nathan SoboandMax Brunsfeld 1dc03bab2b Remove executor::ForegroundTask wrapper
Now that smol returns the same Task as async_task, we can simply re-export the async_task::Task struct from our executor module.

Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-02 11:02:09 -06:00
Nathan SoboandMax Brunsfeld 4871b71e62 Fix hanging finish_pending_tasks test
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-04-02 10:48:03 -06:00
Antonio Scandurra d1d992be59 Remove unused edge_to_point calculation in quad shader 2021-04-02 13:53:11 +02:00
Antonio Scandurra f503e32f29 Fix crash when selections exceed the container's bounds 2021-04-02 13:49:44 +02:00
Antonio Scandurra 62bfc0bf48 Layout lines and line numbers sequentially
Doing things in parallel has a constant factor associated with it (e.g.,
spawning threads and coordinating them) that dwarves its benefits on a
code path like this where things take < 2-3ms when done sequentially.
2021-04-02 10:20:29 +02:00
Nathan Sobo 00af25da17 Inset container contents to account for container border 2021-04-01 10:31:00 -06:00
Antonio Scandurra 7a052566a5 Don't render glyphs located outside of BufferElement's bounds 2021-04-01 11:19:50 +02:00
Nathan Sobo 2efe48c127 💄 naming 2021-03-31 20:43:15 -06:00
Max Brunsfeld 7fee9ce687 Introduce a GPUI test platform, get most tests running
There are still two tests that don't pass:
* `gpui::app::tests::test_finish_pending_tasks` hangs
* `editor::buffer_view::tests::test_fold` has an assertion failure
2021-03-31 17:03:58 -07:00
Max Brunsfeld 7fb0951d42 Ensure that path windings are rendered to the right atlas texture
Fixes #5
2021-03-31 14:52:41 -07:00
Antonio ScandurraandNathan Sobo 2a616e984a Remove Overdraw
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-31 17:58:43 +02:00
Antonio ScandurraandNathan Sobo ba5640aba5 Fix tabs layout
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-31 17:57:00 +02:00
Antonio ScandurraandNathan Sobo a6a9fb0ede Handle non-precise scroll events in BufferElement
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-31 16:25:21 +02:00
Antonio ScandurraandNathan Sobo 3649a3d939 Don't blend alpha channels
We want to use the source alpha to determine the color of the final
pixel, but we want the final pixels to be fully opaque.

Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-31 16:24:28 +02:00