Commit graph

20 commits

Author SHA1 Message Date
Nathan Sobo
4638391412 Remove MutableAppContext::downgrade 2021-04-10 00:14:26 -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
0664321125 Add ability to debug element trees as JSON 2021-04-07 21:54:14 -06:00
Max Brunsfeld
dd31b870c3 Remove small pieces of unused code 2021-04-02 14:26:53 -07:00
Antonio Scandurra
d10fc6ce3f Fix crash when selections exceed the container's bounds 2021-04-02 13:49:44 +02:00
Antonio Scandurra
e487aa5cbd Don't render glyphs located outside of BufferElement's bounds 2021-04-01 11:19:50 +02:00
Antonio Scandurra
c55d99022e Handle non-precise scroll events in BufferElement
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-31 16:25:21 +02:00
Nathan Sobo
4cdce070c4 Reduce selection corner radius
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-03-30 16:57:21 -06:00
Nathan Sobo
02ace16176 Handle selection corners that are smaller than the corner radius
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
2021-03-30 16:21:24 -06:00
Max Brunsfeld
f8cc3996b2 Paint selections using new path API
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-30 11:52:58 -07:00
Antonio Scandurra
1903f63c45 WIP: Add anti-aliasing to paths and render them after spriting them 2021-03-30 16:37:12 +02:00
Antonio Scandurra
98845663a9 Render stencils to atlas 2021-03-30 11:28:35 +02:00
Max Brunsfeld
0b12779e62 WIP: Render path winding numbers to stencil buffer
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
2021-03-29 16:28:35 -07:00
Antonio Scandurra
a2790481a6 Pass the right bounds when painting gutter
x and y were flipped around, yikes.
2021-03-26 17:21:44 +01:00
Antonio Scandurra
61d4da9934 Introduce layer clipping 2021-03-26 10:28:05 +01:00
Antonio Scandurra
596fc47a68 Start on painting the editor 2021-03-25 17:36:29 +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 Sobo
605bdd62dd WIP: Start on rendering scenes via presenter 2021-03-18 21:33:16 -06:00
Nathan Sobo
23308e17a9 WIP on rebuilding with extracted UI framework 2021-03-18 13:13:31 -06:00
Nathan Sobo
356bc41752 WIP 2021-03-09 21:00:51 -07:00