2024-06-19 16:20:06 +02:00
|
|
|
#include "Math.hpp"
|
2025-08-14 19:44:56 +05:00
|
|
|
#include "../memory/Memory.hpp"
|
2024-06-19 16:20:06 +02:00
|
|
|
|
2025-12-27 12:43:45 +01:00
|
|
|
Hyprutils::Math::eTransform Math::wlTransformToHyprutils(wl_output_transform t) {
|
2024-06-19 16:20:06 +02:00
|
|
|
switch (t) {
|
|
|
|
|
case WL_OUTPUT_TRANSFORM_NORMAL: return Hyprutils::Math::eTransform::HYPRUTILS_TRANSFORM_NORMAL;
|
|
|
|
|
case WL_OUTPUT_TRANSFORM_180: return Hyprutils::Math::eTransform::HYPRUTILS_TRANSFORM_180;
|
|
|
|
|
case WL_OUTPUT_TRANSFORM_90: return Hyprutils::Math::eTransform::HYPRUTILS_TRANSFORM_90;
|
|
|
|
|
case WL_OUTPUT_TRANSFORM_270: return Hyprutils::Math::eTransform::HYPRUTILS_TRANSFORM_270;
|
|
|
|
|
case WL_OUTPUT_TRANSFORM_FLIPPED: return Hyprutils::Math::eTransform::HYPRUTILS_TRANSFORM_FLIPPED;
|
|
|
|
|
case WL_OUTPUT_TRANSFORM_FLIPPED_180: return Hyprutils::Math::eTransform::HYPRUTILS_TRANSFORM_FLIPPED_180;
|
|
|
|
|
case WL_OUTPUT_TRANSFORM_FLIPPED_270: return Hyprutils::Math::eTransform::HYPRUTILS_TRANSFORM_FLIPPED_270;
|
|
|
|
|
case WL_OUTPUT_TRANSFORM_FLIPPED_90: return Hyprutils::Math::eTransform::HYPRUTILS_TRANSFORM_FLIPPED_90;
|
|
|
|
|
default: break;
|
|
|
|
|
}
|
|
|
|
|
return Hyprutils::Math::eTransform::HYPRUTILS_TRANSFORM_NORMAL;
|
|
|
|
|
}
|
|
|
|
|
|
2025-12-27 12:43:45 +01:00
|
|
|
wl_output_transform Math::invertTransform(wl_output_transform tr) {
|
2024-07-21 13:09:54 +02:00
|
|
|
if ((tr & WL_OUTPUT_TRANSFORM_90) && !(tr & WL_OUTPUT_TRANSFORM_FLIPPED))
|
2025-08-14 19:44:56 +05:00
|
|
|
tr = sc<wl_output_transform>(tr ^ sc<int>(WL_OUTPUT_TRANSFORM_180));
|
2024-07-21 13:09:54 +02:00
|
|
|
|
|
|
|
|
return tr;
|
|
|
|
|
}
|