diff options
Diffstat (limited to 'gui/fpgaviewwidget.cc')
-rw-r--r-- | gui/fpgaviewwidget.cc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gui/fpgaviewwidget.cc b/gui/fpgaviewwidget.cc index 9c90e2c5..5d37a138 100644 --- a/gui/fpgaviewwidget.cc +++ b/gui/fpgaviewwidget.cc @@ -27,6 +27,7 @@ #include <QImageWriter> #include <QMouseEvent> #include <QWidget> +#include <QDesktopWidget> #include "QtImGui.h" #include "imgui.h" @@ -287,7 +288,11 @@ QMatrix4x4 FPGAViewWidget::getProjection(void) void FPGAViewWidget::paintGL() { auto gl = QOpenGLContext::currentContext()->functions(); +#if defined(__APPLE__) const qreal retinaScale = devicePixelRatio(); +#else + const qreal retinaScale = devicePixelRatioF(); +#endif gl->glViewport(0, 0, width() * retinaScale, height() * retinaScale); gl->glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); @@ -807,12 +812,10 @@ void FPGAViewWidget::mouseMoveEvent(QMouseEvent *event) // coordinates. QVector4D FPGAViewWidget::mouseToWorldCoordinates(int x, int y) { - const qreal retinaScale = devicePixelRatio(); - auto projection = getProjection(); QMatrix4x4 vp; - vp.viewport(0, 0, width() * retinaScale, height() * retinaScale); + vp.viewport(0, 0, width(), height()); QVector4D vec(x, y, 1, 1); vec = vp.inverted() * vec; |