63f9719
:lipstick:
Antonio Scandurra created
63f9719
:lipstick:
Antonio Scandurra created
5439213
Fix `Empty` sometimes returning an infinite size in `layout`
This commit also ensures that elements never report an infinite size by adding a debug assertion in the `Lifecycle` element.
Antonio Scandurra created
1cb987d
Remove stray use of pathfinder_geometry
Antonio Scandurra created
e44ea6b
Fix cursor blinking
Antonio Scandurra created
596fc47
Start on painting the editor
Antonio Scandurra created
466f6e0
Center line around its bounding box
Antonio Scandurra created
4dc1b1e
Fix `test_render_glyph` (but still leave it commented out for now)
Antonio Scandurra created
0f6927e
Re-export font_kit primitives from a new `fonts` module
...also, rename the old `fonts` to `font_cache`.
Antonio Scandurra created
0906b2a
Remove unused dependencies and avoid instantiating FontCache in tests
Antonio Scandurra created
5f3dbb0
Honor vertical subpixel positions
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
bc977fc
Render different variants according to subpixel positioning
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
9178e91
Extract platform-dependant `FontSystem`
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
e0e4cff
Align glyphs correctly using font-kit's raster_bounds
Antonio Scandurra created
7523df0
Space out sprites in atlas
This prevents us from accidentally sampling a neighboring sprite.
Nathan Sobo created
e5d586a
Get glyphs sort of rendering
Nathan Sobo created
28b84c0
Fix noise in atlas texture
Nathan Sobo created
ad79746
WIP
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
247afa1
WIP
Nathan Sobo created
764bfba
WIP: Start on rendering glyphs
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
43abd96
Apply padding correctly when painting `Container`'s children
Antonio Scandurra created
bac5436
Declare float literals consistently in shader
Antonio Scandurra created
3de0ce6
Remove artifact when a border side was not rendered
This introduces an extra conditional in the shader, there's probably a way of writing it without ifs but I like how the logic reads with it and it shouldn't be that big of a deal performance-wise.
Antonio Scandurra created
32c0702
Scale corner_radius by the scale factor when rendering shadows
Antonio Scandurra created
66dcb73
Respect margins when painting Container
Nathan Sobo created
d13510b
:lipstick:
Nathan Sobo created
548b542
Get the file finder rendering with a drop shadow
Nathan Sobo created
859c0f5
WIP: Introduce layers in renderer
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
bfc57cb
Start on rendering shadows
This still doesn't work properly because shadows are rendered beneath quads and we still don't have a layering mechanism. Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
45c1337
Support rendering borders
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
f330fdb
Clarify variable name
Co-Authored-By: Nathan Sobo <nathan@zed.dev>
Antonio Scandurra and Nathan Sobo created
123b7c5
Render quads with anti-aliased rounded corners
Antonio Scandurra created
119aa45
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.
Nathan Sobo created
046fe3f
Dispatch keystrokes and fix rerendering when window invalidated
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
f5df368
Add file_finder module
Still need to wire up key bindings to make it toggle. Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
0c59937
Wire up events and fix synthetic dragging
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
0466580
Scale quads by scale factor before writing to Metal buffer
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
31fb707
Fix translation to device coords in shader
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
1f647ef
Clean up
Co-Authored-By: Antonio Scandurra <me@as-cii.com>
Nathan Sobo and Antonio Scandurra created
e5ffe43
Get basic graphics rendering via Metal
Also, handle window resize.
Nathan Sobo created
292b41a
Start on metal rendering infrastructure
Nathan Sobo created
d14c943
Start on Scene
Nathan Sobo created
cfe3aae
WIP: Get everything compiling again and keep window open
Nathan Sobo created
605bdd6
WIP: Start on rendering scenes via presenter
Nathan Sobo created
e809d61
Return tasks from spawn and spawn_stream
Also, eliminate the background spawning methods. We can spawn futures on the executor and then spawn those on the app if we need to wait for the result of running one.
Nathan Sobo created
f849857
Handle command line arguments and populate worktree
Nathan Sobo created
9bab29c
Get workspace module in and compiling
Nathan Sobo created
171dd0c
WIP
Nathan Sobo created
23308e1
WIP on rebuilding with extracted UI framework
Nathan Sobo created
356bc41
WIP
Nathan Sobo created
a015c61
Add context predicate parser
Nathan Sobo created