d10fc6c
Fix crash when selections exceed the container's bounds
Antonio Scandurra created
d10fc6c
Fix crash when selections exceed the container's bounds
Antonio Scandurra created
ae447ca
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.
Antonio Scandurra created
995acef
Inset container contents to account for container border
Nathan Sobo created
e487aa5
Don't render glyphs located outside of `BufferElement`'s bounds
Antonio Scandurra created
0b44cb0
Fix links
Nathan Sobo created
3831700
Link to tracking issues
Nathan Sobo created
f3fd670
Add a README with a high-level roadmap
Nathan Sobo created
c525d7c
:lipstick: naming
Nathan Sobo created
3bd6b92
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
Max Brunsfeld created
2efc90a
Ensure that path windings are rendered to the right atlas texture
Fixes #5
Max Brunsfeld created
a9c428a
Remove `Overdraw`
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
d5a9bab
Fix tabs layout
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
c55d990
Handle non-precise scroll events in `BufferElement`
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
97e0db2
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>
Antonio Scandurra and Nathan Sobo created
385d15c
Round clip bounds to whole pixels
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
d853dbb
Render borders correctly when only a subset of the border is visible
Antonio Scandurra created
073ff96
Snap quads to pixel grid to avoid antialiasing them around the edges
Antonio Scandurra created
bbf8762
:lipstick:
Antonio Scandurra created
f5e5d71
Remove conditional from winding number computation
Antonio Scandurra created
5c444b2
Call did_modify_range on only once per render
Nathan Sobo created
dbf9a5a
Restore blink_cursors
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
6ba08b5
Avoid generic parameter
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
77b6a29
Optimize grouping of path sprites by layer/atlas
Avoid filtering sprites redundantly on every layer and allocating intermediate vectors to group by atlas. Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
4cdce07
Reduce selection corner radius
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
3103d28
Clear the path atlases on every frame and fix spelling
@as-cii you were right about the plural of "atlas" after all. Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
8dabb15
Decrease max windings to avoid problems with anti-aliasing
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
02ace16
Handle selection corners that are smaller than the corner radius
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
c4f23e4
Fix double-borrow when synthesizing drag events
Nathan Sobo created
5c4b08f
Use correct texture size when drawing paths into atlas
Nathan Sobo created
4773f50
Bump max path windings to 128
This eliminates artifacts while still seeming to work with anti-aliasing.
Nathan Sobo created
011d4d8
wip
Max Brunsfeld created
f8cc399
Paint selections using new path API
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Max Brunsfeld and Nathan Sobo created
da1960c
Snap path sprites to pixel grid
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Antonio Scandurra and Max Brunsfeld created
1903f63
WIP: Add anti-aliasing to paths and render them after spriting them
Antonio Scandurra created
9884566
Render stencils to atlas
Antonio Scandurra created
b538f5c
WIP
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
64af4c6
WIP: Render paths into stencil buffers
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com>
Nathan Sobo and Max Brunsfeld created
0b12779
WIP: Render path winding numbers to stencil buffer
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Max Brunsfeld and Nathan Sobo created
a8495d0
Whitelist shader bindings using a regex, not individual types
Max Brunsfeld created
6222150
WIP: Start on rendering paths
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Antonio Scandurra and Max Brunsfeld created
d3d251a
Introduce a `Path` struct
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Antonio Scandurra and Max Brunsfeld created
11f469b
Construct Metal command encoder inside of `Renderer`
Co-Authored-By: Max Brunsfeld <max@zed.dev>
Antonio Scandurra and Max Brunsfeld created
a88b63d
Ensure `FoldMap` always contains at least one transform
Previously, when splicing an edit that deleted all transforms, we would leave the `FoldMap` empty, thus violating a bunch of downstream invariants and e.g. causing the `BufferRows` iterator to not return any buffer row. This commit ensures we always have at least one transform (an isomorphic one, specifically) and adds additional test coverage for the `FoldMap::buffer_rows` method by adding it to the randomized tests.
Antonio Scandurra created
a949959
Merge pull request #1 from zed-industries/catalina-mps-compatibility
Avoid nested structs in the types used to pass data from vertex to fragment shader functions
Antonio Scandurra created
8a119a5
Avoid nested structs in vertex function return types
This is required to compile successfully on macos versions <= 10.15 (catalina)
Max Brunsfeld created
a279048
Pass the right bounds when painting gutter
x and y were flipped around, yikes.
Antonio Scandurra created
2c24ec2
Update old usages of `ctx.spawn` to detach the associated task
This lets us open buffers and renders tabs and editors correctly, modulo a small bug when rendering the gutter that I am going to fix next.
Antonio Scandurra created
13c1f5f
Pass workspace path to zed when debugging it in VS Code
Antonio Scandurra created
466016a
Snap sprites to pixel grid in `Renderer`
Previously, we were doing so in the `SpriteCache` but that would cause floating point errors that caused glyphs to sometimes be positioned midway through a pixel.
Antonio Scandurra created
61d4da9
Introduce layer clipping
Antonio Scandurra created