@@ -156,27 +156,11 @@ export class TextPainter<TextType extends string | string[]> extends Painter<"bo
156156 this . text . value ; // FIXME: this is temporary
157157 const size = this . canvas . size . value ;
158158 const rectangle = this . rectangle . value ;
159- const view = this . view . value ;
160- const viewRectangle = view ?. rectangle . value ;
161159
162- let rowStart = rectangle . row ;
163- let rowRange = Math . min ( rectangle . row + rectangle . height , size . rows ) ;
164-
165- let columnStart = rectangle . column ;
166- let columnRange = Math . min ( rectangle . column + rectangle . width , size . columns ) ;
167-
168- if ( viewRectangle ) {
169- rowStart = Math . max ( rowStart , viewRectangle . row ) ;
170- columnStart = Math . max ( columnStart , viewRectangle . column ) ;
171- rowRange = Math . min ( rowRange , viewRectangle . row + viewRectangle . height ) ;
172- columnRange = Math . min ( columnRange , viewRectangle . column + viewRectangle . width ) ;
173- }
174-
175- this . #rowStart = rowStart ;
176- this . #rowRange = rowRange ;
177-
178- this . #columnStart = columnStart ;
179- this . #columnRange = columnRange ;
160+ this . #rowStart = rectangle . row ;
161+ this . #rowRange = Math . min ( rectangle . row + rectangle . height , size . rows ) ;
162+ this . #columnStart = rectangle . column ;
163+ this . #columnRange = Math . min ( rectangle . column + rectangle . width , size . columns ) ;
180164
181165 this . moved = true ;
182166 this . updated = false ;
@@ -247,10 +231,13 @@ export class TextPainter<TextType extends string | string[]> extends Painter<"bo
247231 }
248232
249233 paint ( ) : void {
250- const { canvas , rerenderCells, omitCells, painted } = this ;
234+ const { rerenderCells, omitCells, painted } = this ;
251235
252- const rectangle = this . rectangle . peek ( ) ;
253236 const style = this . style . peek ( ) ;
237+ const rectangle = this . rectangle . peek ( ) ;
238+
239+ const drawable = this . view ?? this . canvas ;
240+
254241 const text = this . #text;
255242
256243 const rowStart = this . #rowStart;
@@ -279,7 +266,7 @@ export class TextPainter<TextType extends string | string[]> extends Painter<"bo
279266 const char = text [ column - columnStart ] ;
280267 if ( ! char ) continue ;
281268
282- canvas . draw ( row , column , style ( char ) ) ;
269+ drawable . draw ( row , column , style ( char ) ) ;
283270 }
284271
285272 rerenderColumns . clear ( ) ;
@@ -292,7 +279,7 @@ export class TextPainter<TextType extends string | string[]> extends Painter<"bo
292279 const char = text [ column - columnStart ] ;
293280 if ( ! char ) continue ;
294281
295- canvas . draw ( row , column , style ( char ) ) ;
282+ drawable . draw ( row , column , style ( char ) ) ;
296283 }
297284 }
298285 } else {
@@ -319,7 +306,7 @@ export class TextPainter<TextType extends string | string[]> extends Painter<"bo
319306 const char = line [ column - columnStart ] ;
320307 if ( ! char ) continue ;
321308
322- canvas . draw ( row , column , style ( char ) ) ;
309+ drawable . draw ( row , column , style ( char ) ) ;
323310 }
324311
325312 rerenderColumns . clear ( ) ;
@@ -332,7 +319,7 @@ export class TextPainter<TextType extends string | string[]> extends Painter<"bo
332319 const char = line [ column - columnStart ] ;
333320 if ( ! char ) continue ;
334321
335- canvas . draw ( row , column , style ( char ) ) ;
322+ drawable . draw ( row , column , style ( char ) ) ;
336323 }
337324 }
338325 }
0 commit comments