mirror of
https://github.com/RGBCube/serenity
synced 2025-10-13 22:52:20 +00:00

It was fun for everyone to share a single framebuffer but it was also kinda really awful. Let's move towards having a "GraphicsBitmap" as the backing store for each Window. This is going to need a lot of refactoring so let's get started.
21 lines
457 B
C++
21 lines
457 B
C++
#include "Rect.h"
|
|
#include <AK/StdLibExtras.h>
|
|
|
|
void Rect::intersect(const Rect& other)
|
|
{
|
|
int l = max(left(), other.left());
|
|
int r = min(right(), other.right());
|
|
int t = max(top(), other.top());
|
|
int b = min(bottom(), other.bottom());
|
|
|
|
if (l >= r || t >= b) {
|
|
m_location = { };
|
|
m_size = { };
|
|
return;
|
|
}
|
|
|
|
m_location.setX(l);
|
|
m_location.setY(t);
|
|
m_size.setWidth(r - l);
|
|
m_size.setHeight(b - t);
|
|
}
|