Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/windowing/StarCanvasWidget.cpp
diff options
context:
space:
mode:
authorKae <80987908+Novaenia@users.noreply.github.com>2023-07-17 22:20:39 +1000
committerKae <80987908+Novaenia@users.noreply.github.com>2023-07-17 22:20:39 +1000
commit34bb0b54222c1c0f3450c56e76f89f192d77374b (patch)
tree09e119625d066d16e3a81a8f6c0c424c4159f058 /source/windowing/StarCanvasWidget.cpp
parent848b11399f2e34d7f1e0523e214287bfdcc5816c (diff)
Initial voice HUD indicator setup
Diffstat (limited to 'source/windowing/StarCanvasWidget.cpp')
-rw-r--r--source/windowing/StarCanvasWidget.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/source/windowing/StarCanvasWidget.cpp b/source/windowing/StarCanvasWidget.cpp
index ed2e30f..a0eeb7d 100644
--- a/source/windowing/StarCanvasWidget.cpp
+++ b/source/windowing/StarCanvasWidget.cpp
@@ -88,20 +88,21 @@ bool CanvasWidget::sendEvent(InputEvent const& event) {
return false;
auto& context = GuiContext::singleton();
+ int interfaceScale = m_ignoreInterfaceScale ? 1 : context.interfaceScale();
if (auto mouseButtonDown = event.ptr<MouseButtonDownEvent>()) {
- if (inMember(*context.mousePosition(event)) && m_captureMouse) {
- m_clickEvents.append({*context.mousePosition(event) - screenPosition(), mouseButtonDown->mouseButton, true});
+ if (inMember(*context.mousePosition(event, interfaceScale)) && m_captureMouse) {
+ m_clickEvents.append({*context.mousePosition(event, interfaceScale) - screenPosition(), mouseButtonDown->mouseButton, true});
m_clickEvents.limitSizeBack(MaximumEventBuffer);
return true;
}
} else if (auto mouseButtonUp = event.ptr<MouseButtonUpEvent>()) {
if (m_captureMouse) {
- m_clickEvents.append({*context.mousePosition(event) - screenPosition(), mouseButtonUp->mouseButton, false});
+ m_clickEvents.append({*context.mousePosition(event, interfaceScale) - screenPosition(), mouseButtonUp->mouseButton, false});
m_clickEvents.limitSizeBack(MaximumEventBuffer);
return true;
}
} else if (event.is<MouseMoveEvent>()) {
- m_mousePosition = *context.mousePosition(event) - screenPosition();
+ m_mousePosition = *context.mousePosition(event, interfaceScale) - screenPosition();
return false;
} else if (auto keyDown = event.ptr<KeyDownEvent>()) {
if (m_captureKeyboard) {
@@ -258,7 +259,7 @@ void CanvasWidget::renderTriangles(Vec2F const& renderingOffset, List<tuple<Vec2
void CanvasWidget::renderText(Vec2F const& renderingOffset, String const& s, TextPositioning const& position, unsigned fontSize, Vec4B const& color, FontMode mode, float lineSpacing, String const& font, String const& directives) {
auto& context = GuiContext::singleton();
context.setFontProcessingDirectives(directives);
- context.setFontSize(fontSize);
+ context.setFontSize(fontSize, m_ignoreInterfaceScale ? 1 : context.interfaceScale());
context.setFontColor(color);
context.setFontMode(mode);
context.setFont(font);