renderer/metal: reset screen dirty flags

I introduced screen dirty flags fairly late, and never reset them. As a
result, dirty tracking basically gets disabled as soon as selection
changes in any form. This happens frequently because _unsetting_
selection also resets selection which happens for various events.
This commit is contained in:
Mitchell Hashimoto
2024-05-06 18:31:26 -07:00
parent 2e2d924353
commit 26300447e4

View File

@ -932,6 +932,7 @@ pub fn updateFrame(
// success and reset while we hold the lock. This is much easier
// than coordinating row by row or as changes are persisted.
state.terminal.flags.dirty = .{};
state.terminal.screen.dirty = .{};
{
var it = state.terminal.screen.pages.pageIterator(
.right_down,