1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 17:27:35 +00:00

After moving a window, try to repaint a bit less.

Only repaint windows that intersect either the old or the new rect.
Also only repaint those rects in the root widget.
This commit is contained in:
Andreas Kling 2018-10-12 19:39:48 +02:00
parent 74aa4d5345
commit 6f9e0e3876
9 changed files with 111 additions and 23 deletions

View file

@ -29,7 +29,8 @@ private:
void processMouseEvent(MouseEvent&);
void handleTitleBarMouseEvent(Window&, MouseEvent&);
void handlePaintEvent(PaintEvent&);
void repaintAfterMove(const Rect& oldRect, const Rect& newRect);
virtual void event(Event&) override;
Color m_windowBorderColor;
@ -43,4 +44,6 @@ private:
Point m_dragOrigin;
Point m_dragWindowOrigin;
Rect m_lastDragRect;
Rect m_dragStartRect;
Rect m_dragEndRect;
};