aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/managers/XWaylandManager.cpp
diff options
context:
space:
mode:
authorVaxry <[email protected]>2023-07-18 15:30:28 +0200
committerGitHub <[email protected]>2023-07-18 15:30:28 +0200
commit8370a7fcc4627e6f21395cc8b81298369be5cdaf (patch)
tree6be17dc7ba367ea7322d81f20b89b5cdf7defc4d /src/managers/XWaylandManager.cpp
parent629e61c7a56561ee5d565dda6d0d8b7c41dbe9c7 (diff)
downloadHyprland-8370a7fcc4627e6f21395cc8b81298369be5cdaf.tar.gz
Hyprland-8370a7fcc4627e6f21395cc8b81298369be5cdaf.zip
internal: Protocol C++ Wraps + XDGOutput impl (#2733)
move to our own xdgoutput impl instead of wlr's
Diffstat (limited to 'src/managers/XWaylandManager.cpp')
-rw-r--r--src/managers/XWaylandManager.cpp71
1 files changed, 1 insertions, 70 deletions
diff --git a/src/managers/XWaylandManager.cpp b/src/managers/XWaylandManager.cpp
index 9ef02f71..556b40b7 100644
--- a/src/managers/XWaylandManager.cpp
+++ b/src/managers/XWaylandManager.cpp
@@ -295,73 +295,4 @@ Vector2D CHyprXWaylandManager::getMaxSizeForWindow(CWindow* pWindow) {
MAXSIZE.y = 99999;
return MAXSIZE;
-}
-
-void CHyprXWaylandManager::updateXWaylandScale() {
- static auto* const PXWLFORCESCALEZERO = &g_pConfigManager->getConfigValuePtr("xwayland:force_zero_scaling")->intValue;
-
- setXWaylandScale(*PXWLFORCESCALEZERO ? std::optional<double>{1.0} : std::optional<double>{});
-}
-
-void CHyprXWaylandManager::setXWaylandScale(std::optional<double> scale) {
- Debug::log(LOG, "Overriding XWayland scale with %.2f", (float)scale.value_or(0.0));
-
-#ifndef NO_XWAYLAND
- wl_resource* res = nullptr;
- for (auto& m : g_pCompositor->m_vMonitors) {
-
- if (!m->output || !m->m_bEnabled)
- continue;
-
- const Vector2D LOGICALSIZE = m->vecTransformedSize / scale.value_or(m->scale);
-
- wl_resource* outputResource = nullptr;
- bool needsDone = false;
-
- wl_list_for_each(res, &m->output->resources, link) {
- const auto PCLIENT = wl_resource_get_client(res);
-
- if (PCLIENT == m_sWLRXWayland->server->client) {
- const auto VERSION = wl_resource_get_version(res);
-
- wl_output_send_mode(res, WL_OUTPUT_MODE_CURRENT | WL_OUTPUT_MODE_PREFERRED, (int32_t)LOGICALSIZE.x, (int32_t)LOGICALSIZE.y, m->output->refresh);
-
- if (VERSION >= WL_OUTPUT_SCALE_SINCE_VERSION)
- wl_output_send_scale(res, (uint32_t)ceil(scale.value_or(m->scale)));
-
- wl_output_send_name(res, getFormat("HL-X11-%d", m->ID).c_str());
-
- outputResource = res;
- needsDone = true;
-
- break;
- }
- }
-
- wlr_xdg_output_v1* output;
- wl_list_for_each(output, &g_pCompositor->m_sWLRXDGOutputMgr->outputs, link) {
- if (output->layout_output->output == m->output) {
- wl_list_for_each(res, &output->resources, link) {
- const auto PCLIENT = wl_resource_get_client(res);
-
- if (PCLIENT == m_sWLRXWayland->server->client) {
- zxdg_output_v1_send_logical_size(res, LOGICALSIZE.x, LOGICALSIZE.y);
-
- if (wl_resource_get_version(res) < OUTPUT_DONE_DEPRECATED_SINCE_VERSION)
- zxdg_output_v1_send_done(res);
-
- needsDone = true;
-
- break;
- }
- }
-
- break;
- }
- }
-
- if (needsDone && outputResource)
- wl_output_send_done(outputResource);
- }
-#endif
-}
+} \ No newline at end of file