decorations: Decoration Positioner (#3800)

This commit is contained in:
Vaxry
2023-11-11 14:37:17 +00:00
committed by GitHub
parent 7345b1a1ea
commit 9be6fbf5ea
27 changed files with 610 additions and 266 deletions

View File

@@ -39,26 +39,29 @@ class CBox {
h = size.y;
}
wlr_box wlr();
wlr_box* pWlr();
wlr_box wlr();
wlr_box* pWlr();
CBox& applyFromWlr();
CBox& scale(double scale);
CBox& scaleFromCenter(double scale);
CBox& scale(const Vector2D& scale);
CBox& translate(const Vector2D& vec);
CBox& round();
CBox& transform(const wl_output_transform t, double w, double h);
CBox& addExtents(const SWindowDecorationExtents& e);
CBox& applyFromWlr();
CBox& scale(double scale);
CBox& scaleFromCenter(double scale);
CBox& scale(const Vector2D& scale);
CBox& translate(const Vector2D& vec);
CBox& round();
CBox& transform(const wl_output_transform t, double w, double h);
CBox& addExtents(const SWindowDecorationExtents& e);
CBox& expand(const double& value);
Vector2D middle() const;
Vector2D pos() const;
Vector2D size() const;
SWindowDecorationExtents extentsFrom(const CBox&); // this is the big box
bool containsPoint(const Vector2D& vec) const;
bool empty() const;
Vector2D middle() const;
Vector2D pos() const;
Vector2D size() const;
double x = 0, y = 0;
bool containsPoint(const Vector2D& vec) const;
bool empty() const;
double x = 0, y = 0;
union {
double w;
double width;