mirror of
https://github.com/OpenMW/openmw.git
synced 2026-05-06 07:56:40 -04:00
Improve Wayland fractional scaling
This commit is contained in:
@@ -63,6 +63,8 @@ protected:
|
||||
virtual void setDefaultDisplaySettings();
|
||||
|
||||
void createRenderer();
|
||||
|
||||
bool event(QEvent* e) override;
|
||||
};
|
||||
|
||||
#endif // OSGQOPENGLWIDGET_H
|
||||
|
||||
Vendored
+10
-4
@@ -48,10 +48,7 @@ void osgQOpenGLWidget::initializeGL()
|
||||
void osgQOpenGLWidget::resizeGL(int w, int h)
|
||||
{
|
||||
Q_ASSERT(m_renderer);
|
||||
QScreen* screen = windowHandle()
|
||||
&& windowHandle()->screen() ? windowHandle()->screen() :
|
||||
qApp->screens().front();
|
||||
m_renderer->resize(w * screen->devicePixelRatio(), h * screen->devicePixelRatio());
|
||||
m_renderer->resize(w * devicePixelRatio(), h * devicePixelRatio());
|
||||
}
|
||||
|
||||
void osgQOpenGLWidget::paintGL()
|
||||
@@ -94,3 +91,12 @@ void osgQOpenGLWidget::createRenderer()
|
||||
|
||||
m_renderer->setupOSG();
|
||||
}
|
||||
|
||||
bool osgQOpenGLWidget::event(QEvent* e)
|
||||
{
|
||||
#if QT_VERSION >= QT_VERSION_CHECK(6, 6, 0)
|
||||
if (m_renderer && e->type() == QEvent::DevicePixelRatioChange)
|
||||
m_renderer->resize(width() * devicePixelRatio(), height() * devicePixelRatio());
|
||||
#endif
|
||||
return QOpenGLWidget::event(e);
|
||||
}
|
||||
Reference in New Issue
Block a user