Commit graph

127 commits

Author SHA1 Message Date
Héctor Ramón Jiménez
ea5f122f78 Remove potentially huge texture_pending from InnerAtlas
Instead, issue a `write_texture` for every glyph that isn't present in
the atlas. I think this should be fine, since cache eviction should be
rare and, therefore, uploads will be too.

The result here is lower memory usage for bigger caches.
2023-03-27 23:00:19 -02:30
Héctor Ramón Jiménez
1f31586c55 Set default_color per TextArea 2023-02-26 23:30:30 -03:30
grovesNL
1dcb1735b4 Update to latest cosmic-text 2023-02-24 12:33:03 -03:30
grovesNL
c25f394c16 Allow depth to be attached to text using metadata 2023-02-15 07:54:31 -03:30
grovesNL
74e9aa37a1 Set renderer multisample and depth-stencil state 2023-02-15 07:54:31 -03:30
Héctor Ramón Jiménez
da4bb4af5c Use lru for glyph caching
I noticed that the `RecentlyUsed` map was actually a `RecentlyInserted`
map. This caused panics when trying to reduce the initial texture atlas size and
dynamically increase it (coming in another PR!).
2023-02-08 00:49:37 -03:30
grovesNL
bbe26f9c54 Move version back to 0.2.0 for now 2023-01-29 22:17:31 -03:30
grovesNL
05939b2731 Release 0.3.0 2023-01-29 22:15:32 -03:30
grovesNL
8aeb9f16bf Remove unnecessary cast 2023-01-29 22:14:55 -03:30
grovesNL
288cd89cf8 Simplify re-exports paths 2023-01-29 22:11:54 -03:30
grovesNL
658fcf4d6f Separate text area lifetimes 2023-01-29 22:11:54 -03:30
grovesNL
07b04f511a Update example to show emojis and clipping 2023-01-29 22:11:54 -03:30
grovesNL
8c8cfba093 Add clipping back 2023-01-29 22:11:54 -03:30
grovesNL
ba52cbdba6 Buffer doesn't need to be mutable anymore 2023-01-29 22:11:54 -03:30
grovesNL
e0998be181 Only multiply alpha 2023-01-29 22:11:54 -03:30
grovesNL
06766de965 Update to latest cosmic-text 2023-01-29 22:11:54 -03:30
Joshua Groves
65ff0a6eec Update to latest cosmic-text 2023-01-29 22:11:54 -03:30
Joshua Groves
3a0e965675 Split color and mask atlases apart 2023-01-29 22:11:54 -03:30
Joshua Groves
6cf10bba8d Fix alpha blending for emojis 2023-01-29 22:11:54 -03:30
Joshua Groves
609814de6b Use Fifo for example 2023-01-29 22:11:54 -03:30
grovesNL
8a1153039e Update to latest cosmic 2023-01-29 22:11:54 -03:30
grovesNL
84fb66e27e Use color packing from cosmic 2023-01-29 22:11:54 -03:30
grovesNL
4c1a83548e Use default font color and remove Color 2023-01-29 22:11:54 -03:30
grovesNL
7eb4d41c25 Update README 2023-01-29 22:11:54 -03:30
grovesNL
14499e4659 Remove HasColor 2023-01-29 22:11:54 -03:30
grovesNL
56bf0d759f Update to latest cosmic-text 2023-01-29 22:11:54 -03:30
grovesNL
981a7d1682 Handle initial window scale factor 2023-01-29 22:11:54 -03:30
grovesNL
cb68955045 Use 4 channel atlas for emojis 2023-01-29 22:11:54 -03:30
grovesNL
47fa03d079 Allow negative offsets 2023-01-29 22:11:54 -03:30
grovesNL
dcdb250e19 Use arabic.txt example and get_image_uncached 2023-01-29 22:11:54 -03:30
grovesNL
7fe35bdce3 Update to latest cosmic-text 2023-01-29 22:11:54 -03:30
grovesNL
75fc8f978f Start cosmic-text implementation 2023-01-29 22:11:54 -03:30
grovesNL
2a01a1b2e0 Handle negative glyph positions correctly 2022-11-29 14:33:12 -03:30
grovesNL
ca27ec508c Add an example to highlight a layout on mouse over 2022-10-24 22:08:02 -02:30
grovesNL
4ff7d0d824 Add Eq and PartialEq derives to Color 2022-10-24 09:25:20 -02:30
grovesNL
66e44293de Add derives for Color 2022-10-24 09:15:07 -02:30
grovesNL
fa03455457 Allow borrowed layouts for prepare
Allows either `&[layout, overflow]` or `&[&layout, overflow]`
2022-10-21 22:02:43 -02:30
grovesNL
296c99f059 Add documentation to all public types
Fixes #11
2022-10-18 13:25:24 -02:30
grovesNL
7e2983374e Reword error messages 2022-10-18 13:04:06 -02:30
grovesNL
36fd030ecf Update to wgpu 0.14 2022-10-18 13:02:31 -02:30
grovesNL
14c634c8aa Use trunc instead of round
We can allow this to be controlled later on, but `trunc` helps to avoid
text jitter during screen resolution changes for now.
2022-10-18 12:54:16 -02:30
Andrew Wheeler(Genusis)
4075536745 Merge #19 2022-10-18 12:52:00 -02:30
grovesNL
afab881559 Handle text overflow
Cull glyphs fully outside the bounds, and clip glyphs intersecting the
bounds. This is all done on the CPU for now.

Fixes #2
2022-10-18 12:52:00 -02:30
grovesNL
4e9e10061f Release 0.2.0 2022-07-13 12:47:16 -02:30
grovesNL
045515c558 Pad Params in shader 2022-07-13 12:46:57 -02:30
grovesNL
3c7789cd3b Update to wgpu 0.13 2022-07-13 09:43:10 -02:30
grovesNL
bbc5f18cdd Pad to improve WebGL support 2022-06-23 22:21:21 -02:30
grovesNL
73b2562179 Accept atlas in prepare and render 2022-06-03 00:52:35 -02:30
grovesNL
857f8c72c0 Use premultiplied alpha blending from coverage 2022-06-03 00:31:46 -02:30
grovesNL
32a6e1d876 Remove debug bound 2022-05-17 22:15:11 -02:30