Commit graph

119 commits

Author SHA1 Message Date
Héctor Ramón Jiménez
99c1464cc1
Update glyphon fork to a cleaner branch 2024-05-08 19:34:43 +02:00
Héctor Ramón Jiménez
bed53f8143
Reuse glyphon::Viewport explicitly 2024-05-08 13:41:12 +02:00
Héctor Ramón Jiménez
447f3a2d14
Reuse glyphon::Pipeline state in iced_wgpu 2024-05-08 12:29:17 +02:00
Héctor Ramón Jiménez
7e2d0dc931
Keep text atlases alive during temporary empty uploads 2024-04-30 23:51:00 +02:00
Héctor Ramón Jiménez
b276a603a1
Fix cache trimming loop in iced_wgpu::text 2024-04-30 23:15:04 +02:00
Héctor Ramón Jiménez
c51b85e7ab
Invalidate text uploads after atlas trimming 2024-04-30 21:59:46 +02:00
Héctor Ramón Jiménez
b5b78d505e
Introduce canvas::Cache grouping
Caches with the same `Group` will share their text
atlas!
2024-04-30 07:57:54 +02:00
Héctor Ramón Jiménez
24501fd73b
Fix text and triangle uploads being dropped on canvas cache clears 2024-04-30 05:13:24 +02:00
Héctor Ramón Jiménez
2dcd4f916e
Retain caches in iced_wgpu as long as Rc values are alive
This allows reusing a `canvas::Cache` at no cost even if it
is not presented every frame.
2024-04-27 14:16:12 +02:00
Héctor Ramón Jiménez
d0233da8a2
Fix applying local transformation to layer_bounds in iced_wgpu::text 2024-04-12 18:37:38 +02:00
Héctor Ramón Jiménez
441aac2599
Avoid generating empty caches in iced_wgpu 2024-04-06 03:06:40 +02:00
Héctor Ramón Jiménez
6d3e1d835e
Decouple caching from layering and simplify everything 2024-04-05 23:59:21 +02:00
Héctor Ramón Jiménez
4a356cfc16
Enable clipping and disable v-sync for now 2024-04-05 01:24:34 +02:00
Héctor Ramón Jiménez
394e599c3a
Fix layer transformations 2024-04-05 00:40:39 +02:00
Héctor Ramón Jiménez
b05e61f5c8
Redesign iced_wgpu layering architecture 2024-04-03 21:07:54 +02:00
Héctor Ramón Jiménez
2bb53ad6e7
Use a StagingBelt in iced_wgpu for regular buffer uploads 2024-03-29 04:04:14 +01:00
Héctor Ramón Jiménez
b3adf31845
Apply Transformation to RawText primitives 2024-02-02 14:43:04 +01:00
Héctor Ramón Jiménez
d8dffa411b
Transform clip_bounds in wgpu::text 2024-02-02 02:31:47 +01:00
Héctor Ramón Jiménez
f4d6648601
Introduce with_transformation to Renderer trait 2024-02-02 02:24:45 +01:00
Héctor Ramón Jiménez
aa41d7656e
Apply Transform scaling to text primitives 2024-02-02 01:55:32 +01:00
Héctor Ramón Jiménez
603832e66c
Introduce RawText to Primitive in iced_graphics
This should allow users to directly render a
`cosmic_text::Buffer`.
2023-12-05 02:19:17 +01:00
Héctor Ramón Jiménez
b526ce4958
Rename viewport to clip_bounds 2023-12-02 15:56:28 +01:00
Héctor Ramón Jiménez
936d480267
Clip text to viewport bounds instead of layout bounds 2023-12-01 16:04:27 +01:00
Héctor Ramón Jiménez
6582387579
Merge branch 'master' into text-editor 2023-10-27 03:58:45 +02:00
Héctor Ramón Jiménez
42ed90bc6f
Fix clippy::default_trait_access 2023-09-20 04:51:08 +02:00
Héctor Ramón Jiménez
be340a8cd8
Fix gamma correction for colored glyphs in iced_wgpu 2023-09-19 23:00:20 +02:00
Héctor Ramón Jiménez
c7d02e24e6
Remove Editor::min_bounds and use bounds instead 2023-09-14 18:57:09 +02:00
Héctor Ramón Jiménez
6448429103
Draft Editor API and TextEditor widget 2023-09-12 14:51:00 +02:00
Héctor Ramón Jiménez
346af3f8b0
Make FontSystem global and simplify Paragraph API 2023-09-11 02:47:24 +02:00
Héctor Ramón Jiménez
3450987355
Invalidate existing paragraphs when new fonts are loaded 2023-09-09 11:21:32 +02:00
Héctor Ramón Jiménez
8129e2c208
Implement draw_paragraph in iced_tiny_skia 2023-09-03 08:08:27 +02:00
Héctor Ramón Jiménez
89acf0217e
Use min_bounds for cached text 2023-08-30 05:06:08 +02:00
Héctor Ramón Jiménez
ed3454301e
Implement explicit text caching in the widget state tree 2023-08-30 04:31:21 +02:00
lufte
e86363837d Make the style attribute available on Font 2023-08-18 18:46:22 -03:00
Héctor Ramón Jiménez
95ff96f71f
Update cosmic-text and glyphon 2023-07-20 20:47:38 +02:00
Héctor Ramón Jiménez
d666e739cd
Trim text measurements only before layout 2023-06-29 18:23:11 +02:00
Héctor Ramón Jiménez
98febd9a42
Introduce Mode for text::Cache and trim only when switching modes 2023-06-29 17:54:54 +02:00
Héctor Ramón Jiménez
00859c25f5
Retain text measurements as long as original entries 2023-06-28 01:27:09 +02:00
Héctor Ramón Jiménez
975eebfc62
Retain measurements for text entries even if not directly used 2023-06-28 00:51:40 +02:00
Héctor Ramón Jiménez
c8d79a5cd9
Fix needless borrow in iced_wgpu and iced_tiny_skia 2023-06-28 00:45:41 +02:00
Héctor Ramón Jiménez
73dca5e323
Reuse entries in text::Cache in iced_tiny_skia 2023-06-28 00:44:23 +02:00
Héctor Ramón Jiménez
78ad365db2
Reuse entries in text::Cache in iced_wgpu 2023-06-28 00:35:37 +02:00
Héctor Ramón Jiménez
ef87ff1e8a
Clear text caches after a font is loaded 2023-06-21 21:47:29 +02:00
Héctor Ramón Jiménez
5bc7cbf5bc
Use subpixel glyph positioning and layout linearity
... for offsetting and scaling text
2023-06-20 06:50:36 +02:00
Héctor Ramón Jiménez
0c65936664
Update glyphon and cosmic-text 2023-06-16 15:50:03 +02:00
Héctor Ramón Jiménez
b5fc0f4a3a
Use consistent color strategy in glyphon 2023-06-01 03:10:02 +02:00
Héctor Ramón Jiménez
faa7627ea4
Introduce web-colors feature flag to enable sRGB linear blending
This is how browsers perform color management. They treat
gamma-corrected sRGB colors as if they were linear RGB.

Correctness aside, this mode is introduced for legacy reasons. Most
UI/UX tooling uses this color management as well, and many have created
an intuition about how color should behave from interacting with a
browser.

This feature flag should facilitate application development with `iced`
in those cases.

More details: https://webcolorisstillbroken.com/
2023-05-31 21:31:58 +02:00
Héctor Ramón Jiménez
9a8b30d7e9
Clip text that exceeds section bounds in iced_wgpu 2023-05-08 16:41:42 +02:00
Héctor Ramón Jiménez
c6d9221ee4
Round paragraph position until we implement subpixel glyph positioning 2023-05-08 16:20:05 +02:00
Héctor Ramón Jiménez
9499a8f9e6
Support configurable LineHeight in text widgets 2023-05-04 18:39:31 +02:00