compositor: find windows in direction on floating
This commit is contained in:
parent
c4e1a9b13b
commit
d8b7ded18c
5 changed files with 115 additions and 53 deletions
|
|
@ -242,6 +242,10 @@ bool isDirection(const std::string& arg) {
|
|||
return arg == "l" || arg == "r" || arg == "u" || arg == "d" || arg == "t" || arg == "b";
|
||||
}
|
||||
|
||||
bool isDirection(const char& arg) {
|
||||
return arg == 'l' || arg == 'r' || arg == 'u' || arg == 'd' || arg == 't' || arg == 'b';
|
||||
}
|
||||
|
||||
int getWorkspaceIDFromString(const std::string& in, std::string& outName) {
|
||||
int result = INT_MAX;
|
||||
if (in.starts_with("special")) {
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ std::string escapeJSONStrings(const std::string& str);
|
|||
std::string removeBeginEndSpacesTabs(std::string);
|
||||
bool isNumber(const std::string&, bool allowfloat = false);
|
||||
bool isDirection(const std::string&);
|
||||
bool isDirection(const char&);
|
||||
int getWorkspaceIDFromString(const std::string&, std::string&);
|
||||
std::optional<std::string> cleanCmdForWorkspace(const std::string&, std::string);
|
||||
float vecToRectDistanceSquared(const Vector2D& vec, const Vector2D& p1, const Vector2D& p2);
|
||||
|
|
|
|||
|
|
@ -45,3 +45,7 @@ bool Vector2D::inTriangle(const Vector2D& p1, const Vector2D& p2, const Vector2D
|
|||
|
||||
return 0 <= a && a <= 1 && 0 <= b && b <= 1 && 0 <= c && c <= 1;
|
||||
}
|
||||
|
||||
double Vector2D::size() const {
|
||||
return std::sqrt(x * x + y * y);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -57,7 +57,7 @@ class Vector2D {
|
|||
}
|
||||
|
||||
double distance(const Vector2D& other) const;
|
||||
|
||||
double size() const;
|
||||
Vector2D clamp(const Vector2D& min, const Vector2D& max = Vector2D()) const;
|
||||
|
||||
Vector2D floor() const;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue