mirror of
https://github.com/hyprwm/Hyprland.git
synced 2025-08-06 23:21:57 -07:00
IME: Fixup IME popup candidate windows position when scale is not 1.0 (#8117)
This commit is contained in:
committed by
GitHub
parent
f309681d4a
commit
22b1370ae5
@@ -100,14 +100,14 @@ void CInputPopup::updateBox() {
|
|||||||
cursorBoxParent = {0, 0, (int)parentBox.w, (int)parentBox.h};
|
cursorBoxParent = {0, 0, (int)parentBox.w, (int)parentBox.h};
|
||||||
}
|
}
|
||||||
|
|
||||||
Vector2D currentPopupSize = surface->getViewporterCorrectedSize();
|
Vector2D currentPopupSize = surface->getViewporterCorrectedSize() / surface->resource()->current.scale;
|
||||||
|
|
||||||
CMonitor* pMonitor = g_pCompositor->getMonitorFromVector(parentBox.middle());
|
CMonitor* pMonitor = g_pCompositor->getMonitorFromVector(parentBox.middle());
|
||||||
|
|
||||||
Vector2D popupOffset(0, 0);
|
Vector2D popupOffset(0, 0);
|
||||||
|
|
||||||
if (parentBox.y + cursorBoxParent.y + cursorBoxParent.height + currentPopupSize.y > pMonitor->vecPosition.y + pMonitor->vecSize.y)
|
if (parentBox.y + cursorBoxParent.y + cursorBoxParent.height + currentPopupSize.y > pMonitor->vecPosition.y + pMonitor->vecSize.y)
|
||||||
popupOffset.y = -currentPopupSize.y;
|
popupOffset.y -= currentPopupSize.y;
|
||||||
else
|
else
|
||||||
popupOffset.y = cursorBoxParent.height;
|
popupOffset.y = cursorBoxParent.height;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user