From 7cf3c7461c54ea6bdcfdbd47f1e2644ca5d0f35a Mon Sep 17 00:00:00 2001 From: Andreas Kling Date: Sat, 26 Jan 2019 05:20:32 +0100 Subject: Refactor GUI rendering model to be two-phased. Instead of clients painting whenever they feel like it, we now ask that they paint in response to a paint message. After finishing painting, clients notify the WindowServer about the rect(s) they painted into and then flush eventually happens, etc. This stuff leaves us with a lot of badly named things. Need to fix that. --- Terminal/Terminal.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'Terminal/Terminal.h') diff --git a/Terminal/Terminal.h b/Terminal/Terminal.h index 3c8f6a2a1f..ed43ac5e8b 100644 --- a/Terminal/Terminal.h +++ b/Terminal/Terminal.h @@ -18,6 +18,7 @@ public: void on_char(byte); void set_in_active_window(bool); + void update(); private: Font& font() { return *m_font; } @@ -25,6 +26,7 @@ private: void set_cursor(unsigned row, unsigned column); void put_character_at(unsigned row, unsigned column, byte ch); void invalidate_cursor(); + void did_paint(const Rect& = Rect()); void invalidate_window(const Rect& = Rect()); void set_window_title(const String&); @@ -67,7 +69,7 @@ private: bool has_only_one_background_color() const; byte* characters { nullptr }; Attribute* attributes { nullptr }; - bool needs_invalidation { false }; + bool did_paint { false }; bool dirty { false }; word length { 0 }; }; -- cgit v1.2.3