Commit b4b1e8e
pye on Tulip: fast page flips and old-editor viewport jumps
Two hardware-speed fixes in the display_window override:
- Scrolls, pages and full redraws now freeze TFB pixel rendering
(tfb_stop) and flush once at the end (tfb_start + tfb_update). Every
stdout write used to re-render its row to pixels -- a page flip was
~150 row renders; now it's cell writes plus one full render, which is
how the old C editor gets its speed.
- When the cursor crosses the top/bottom edge, the viewport jumps a
quarter-screen like the old editor (editor.c moves half), so holding
down-arrow at the bottom repaints once per 12 lines instead of every
line.
Verified on Tulip Desktop with a 100-line file: page-down lands the
viewport at the computed quarter-position (row 0 = line013), 13 more
down-arrows produce exactly one jump (line026), and typing after the
jumps lands on the correct row.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>1 parent 7a3bdc0 commit b4b1e8e
1 file changed
Lines changed: 30 additions & 3 deletions
File tree
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
85 | 85 | | |
86 | 86 | | |
87 | 87 | | |
88 | | - | |
89 | | - | |
90 | | - | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
91 | 97 | | |
92 | 98 | | |
93 | 99 | | |
| |||
97 | 103 | | |
98 | 104 | | |
99 | 105 | | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
100 | 110 | | |
101 | 111 | | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
102 | 129 | | |
103 | 130 | | |
104 | 131 | | |
| |||
0 commit comments