-
Notifications
You must be signed in to change notification settings - Fork 44
Open
Description
Similar to the Blitz tracking issue, this is what egui will eventually need from Parley.
Parley
- Text wrap styling (Implement word-break and overflow-wrap style properties #315)
- Text truncation with ellipsis
- serde support for some types (the selection ones at least)
- Vertical alignment options, especially for
InlineBox
(Vertical alignment and the concept of a "parent" font and style #291) - Ability to set line.offset? (necessary for egui's
LayoutSection::leading_space
)- This can't just be a visual thing because of hit testing;
Layout
needs to agree on where everything is
- This can't just be a visual thing because of hit testing;
- Absolute line height
- Custom family names (Fontique: Support registering a font with custom family name and
FontInfo
#117) - Inline box fix (Fix text editing for layouts which contain inline boxes #299)
- Don't round vertical metrics (Don't round vertical metrics #297)
- RTL jank (Backwards cursor navigation gets stuck in a loop with RTL text + newline #298)
- Support the tab character (Display tab character #302)
- AccessKit API improvements (Parley's AccessKit integration is hard to integrate with some applications #310)
- Technically Swash: tighter glyph bounds (Tighten bounds calculations and update
Mask::offset
documentation dfrg/zeno#15) (merged but not released) - A newer/better "attributed text" API. Currently I'm using
TreeBuilder
since I need to push entire style sets at once, butTreeBuilder
allocates a newString
every time, which is unnecessary.
Fontique
- SystemUi doesn't properly fallback in some cases (e.g. Arabic text, macOS shortcut symbols) on my machine; SansSerif does (On Linux,
GenericFamily::SystemUi
should fall back tosans-serif
#323) - Size adjustment multiplier for custom fonts (Implement
size-adjust
property #324)
API rework?
As discussed in #325, a lot of this would be way easier to implement if Parley exposed lower-level APIs that let us position each line ourselves. In particular, egui needs to support flowing text around previous text, which I'm currently hacking together with InlineBox
and shifting things around vertically.
emilklucasmerlin
Metadata
Metadata
Assignees
Labels
No labels