(self)
| 658 | self.dirty = True |
| 659 | |
| 660 | def process_dirty(self) -> None: |
| 661 | if self.dirty: |
| 662 | self.print_all() |
| 663 | return |
| 664 | (_min_x, min_y, _max_x, max_y) = self.get_chrome_boundaries() |
| 665 | did_clear_line = False |
| 666 | for index in self.dirty_indexes: |
| 667 | y_pos = min_y + index + self.get_scroll_offset() |
| 668 | if min_y <= y_pos < max_y: |
| 669 | did_clear_line = True |
| 670 | self.clear_line(y_pos) |
| 671 | self.line_objs[index].output(self.color_printer) |
| 672 | if did_clear_line and self.helper_chrome.get_is_sidebar_mode(): |
| 673 | # now we need to output the chrome again since on wide |
| 674 | # monitors we will have cleared out a line of the chrome |
| 675 | self.helper_chrome.output(self.mode) |
| 676 | |
| 677 | def clear_line(self, y_pos: int) -> None: |
| 678 | """Clear a line of content, excluding the chrome""" |
no test coverage detected