|
13 | 13 | - [ ] Support the tab character (https://github.com/linebender/parley/issues/302)
|
14 | 14 | - [ ] AccessKit improvements (https://github.com/linebender/parley/issues/310)
|
15 | 15 | - [ ] Not Parley, but Swash: tighter glyph bounds (https://github.com/dfrg/zeno/pull/15)
|
| 16 | +- [ ] SystemUi doesn't properly fallback in some cases (e.g. Arabic text, macOS shortcut symbols) on my machine; SansSerif does (https://github.com/linebender/parley/issues/323) |
16 | 17 |
|
17 | 18 | ## Here:
|
18 | 19 | - [ ] Text layout
|
|
30 | 31 | - [ ] `LayoutJob::break_on_newline`
|
31 | 32 | - [ ] RTL considerations
|
32 | 33 | - [ ] Label wrapping only occurs in LTR layouts, but make sure it doesn't do anything weird with RTL labels
|
33 |
| - - [ ] Text is right-justified if a label is split in the middle of RTL text |
| 34 | + - [ ] Do label wrapping in RTL too? |
| 35 | + - [x] Text is right-justified if a label is split in the middle of RTL text, or if a line contains only an RTL label |
34 | 36 | - This may be desirable behavior, but is weird
|
| 37 | + - Whoops; we asked Parley for RTL-aware behavior and got it |
35 | 38 | - [ ] overflow_character should appear at the "start" of the line for RTL text
|
| 39 | + - [ ] RTL support for `egui::Align` |
| 40 | + - [ ] Once Parley has vertical alignment, remove the hack for leading_space/first_row_min_height |
| 41 | + - [ ] Align multiple consecutive labels to the same baseline, even with different fonts |
| 42 | + - [ ] Line height discrepancy between old and new layout (Parley line height is just the font size) |
36 | 43 | - [ ] Text rendering
|
37 | 44 | - [x] Investigate whether swash is being too conservative with its shape bounds and cutting off rendered glyphs
|
38 | 45 | - The reverse is true https://github.com/dfrg/zeno/pull/15
|
|
52 | 59 | - Forgot to clear the glyph atlas
|
53 | 60 | - [ ] Text selection and editing
|
54 | 61 | - [x] Unify the three different cursor types and move to a Parley-like API before moving to the actual Parley API (done)
|
55 |
| - - [ ] Rewrite selection code to use parley's API |
| 62 | + - [x] Rewrite selection code to use parley's API |
56 | 63 | - [x] Basic API mapping (done)
|
57 | 64 | - [x] Selection painting (done but kinda janky)
|
58 |
| - - [ ] Probably rework label_text_selection (does it take bidirectional text into account?) |
| 65 | + - [x] Probably rework label_text_selection (does it take bidirectional text into account?) |
59 | 66 | - [x] Still some jank when the cursor is kinda below the first label and it selects the "rest of the line" (fixed)
|
60 |
| - - [ ] Make it support bidirectional text (fun!) |
| 67 | + - [x] Make it support bidirectional text (fun!) |
| 68 | + - I think this... just works already? |
61 | 69 | - [x] finish the gnarly parts that i've been putting off
|
62 | 70 | - [x] indentation (done, but untested because parley's tab character support is broken)
|
63 | 71 | - [x] selecting a range without having a Galley rendered already (done)
|
|
68 | 76 | - [ ] Do another pass over TextBuffer's API
|
69 | 77 | - [ ] Test IME support
|
70 | 78 | - [ ] Smoothe out AccessKit API integration (and reduce temp allocations)
|
| 79 | + - [ ] Test AccessKit text bounding boxes (horiz_offset for alignment and vertical_offset for wrapped labels working) |
71 | 80 | - [ ] Text styling
|
72 | 81 | - [x] Fix FontDefinitions and adding fonts
|
73 | 82 | - [x] Get fallback/ordering working properly
|
|
99 | 108 | - [ ] Smoothe out the janky parts of the new API
|
100 | 109 | - [ ] For mixed-DPI purposes, and because we don't need to store the FontStore as a mutex, ctx.fonts() now returns a "fonts view" that's technically read/write. But there are no operations that *semantically* modify the fonts from it
|
101 | 110 | - [ ] FontStore and Fonts are different and we should just expose them separately instead of passing through all the FontStore methods onto Fonts
|
102 |
| - - [ ] SystemUi doesn't properly fallback in some cases (e.g. Arabic text, macOS shortcut symbols) on my machine; SansSerif does |
103 | 111 | - [ ] Work around https://github.com/jslegers/emoji-icon-font/issues/18 / https://github.com/emilk/egui/issues/1284
|
104 |
| -- [ ] Cross-cutting concerns |
105 |
| - - [ ] Global/scoped RTL? Do we get bidirectional support for free if we use Parley's APIs? |
106 |
| - - [ ] RTL support for `egui::Align` |
107 |
| - - [ ] RTL/bidi support for cross-label text selection |
108 |
| - - [ ] RTL support for cross-label text wrapping |
| 112 | +- [x] Cross-cutting concerns |
109 | 113 | - [x] Actually remove all the ab_glyph stuff
|
110 | 114 | - Sayonara, ab_glyph 🫡
|
111 | 115 | - [ ] Perf optimizations!
|
112 | 116 | - [ ] Stop using TreeBuilder so we don't have to allocate a bunch of strings
|
113 | 117 | - [ ] https://github.com/emilk/egui/issues/1098
|
114 | 118 | - [ ] Line-level layout memoization (https://github.com/emilk/egui/pull/5411)
|
115 | 119 | - [ ] The other 90%
|
| 120 | + - [ ] Comment the new code better |
116 | 121 | - [ ] update All Of The Doctests...
|
117 | 122 | - [ ] Go over APIs and clean them up
|
118 | 123 | - [ ] New documentation for the new APIs
|
|
0 commit comments