Antonio Scandurra
0f6927eb4b
Re-export font_kit primitives from a new fonts module
...
...also, rename the old `fonts` to `font_cache`.
2021-03-25 10:58:33 +01:00
Antonio Scandurra and Nathan Sobo
5f3dbb05d6
Honor vertical subpixel positions
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-03-24 18:35:48 +01:00
Antonio Scandurra and Nathan Sobo
bc977fc873
Render different variants according to subpixel positioning
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-03-24 18:20:25 +01:00
Antonio Scandurra and Nathan Sobo
9178e91cc0
Extract platform-dependant FontSystem
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-03-24 16:51:28 +01:00
Antonio Scandurra
e0e4cff815
Align glyphs correctly using font-kit's raster_bounds
2021-03-24 11:46:17 +01:00
Nathan Sobo
7523df05cf
Space out sprites in atlas
...
This prevents us from accidentally sampling a neighboring sprite.
2021-03-23 19:02:03 -06:00
Nathan Sobo
e5d586a942
Get glyphs sort of rendering
2021-03-23 18:54:09 -06:00
Nathan Sobo
28b84c081d
Fix noise in atlas texture
2021-03-23 17:27:28 -06:00
Antonio Scandurra and Nathan Sobo
ad7974608b
WIP
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-03-23 19:11:56 +01:00
Nathan Sobo
247afa1666
WIP
2021-03-23 09:13:35 -06:00
Antonio Scandurra and Nathan Sobo
764bfba2e2
WIP: Start on rendering glyphs
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-03-23 15:15:41 +01:00
Antonio Scandurra
bac543657c
Declare float literals consistently in shader
2021-03-23 10:45:09 +01:00
Antonio Scandurra
3de0ce6079
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.
2021-03-23 10:33:31 +01:00
Antonio Scandurra
32c070250c
Scale corner_radius by the scale factor when rendering shadows
2021-03-23 10:14:07 +01:00
Nathan Sobo
548b542766
Get the file finder rendering with a drop shadow
2021-03-22 20:54:52 -06:00
Antonio Scandurra and Nathan Sobo
bfc57cb4f6
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 >
2021-03-22 18:05:16 +01:00
Antonio Scandurra and Nathan Sobo
45c1337c84
Support rendering borders
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-03-22 16:24:26 +01:00
Antonio Scandurra and Nathan Sobo
f330fdb6a7
Clarify variable name
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-03-22 15:27:48 +01:00
Antonio Scandurra
123b7c55f6
Render quads with anti-aliased rounded corners
2021-03-22 13:50:43 +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 and Antonio Scandurra
046fe3fff9
Dispatch keystrokes and fix rerendering when window invalidated
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-03-21 11:38:23 -06:00
Nathan Sobo and Antonio Scandurra
0c59937a65
Wire up events and fix synthetic dragging
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-03-21 09:44:14 -06:00
Nathan Sobo and Antonio Scandurra
04665800c0
Scale quads by scale factor before writing to Metal buffer
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-03-21 09:19:12 -06:00
Nathan Sobo and Antonio Scandurra
31fb707eea
Fix translation to device coords in shader
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-03-21 09:01:50 -06:00
Nathan Sobo and Antonio Scandurra
1f647ef24c
Clean up
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-03-21 09:00:47 -06:00
Nathan Sobo
e5ffe43bb6
Get basic graphics rendering via Metal
...
Also, handle window resize.
2021-03-20 22:19:26 -06:00
Nathan Sobo
292b41ad57
Start on metal rendering infrastructure
2021-03-20 09:38:36 -06:00
Nathan Sobo
605bdd62dd
WIP: Start on rendering scenes via presenter
2021-03-18 21:33:16 -06:00
Nathan Sobo
222f9d373d
WIP
2021-02-20 16:05:36 -07:00
Nathan Sobo
b400449a58
Start rebuilding with a cleanly-separated UI framework
2021-02-20 10:02:34 -07:00