diff --git a/abstract_output.cpp b/abstract_output.cpp index e2f1598e2..fe7a0e868 100644 --- a/abstract_output.cpp +++ b/abstract_output.cpp @@ -54,7 +54,7 @@ QString AbstractOutput::name() const QRect AbstractOutput::geometry() const { - return QRect(m_globalPos, pixelSize() / scale()); + return QRect(m_globalPos, orientateSize(pixelSize()) / scale()); } QSize AbstractOutput::physicalSize() const @@ -101,7 +101,7 @@ void AbstractOutput::setScale(qreal scale) m_waylandOutputDevice->setScaleF(scale); } if (m_xdgOutput) { - m_xdgOutput->setLogicalSize(pixelSize() / m_scale); + m_xdgOutput->setLogicalSize(orientateSize(pixelSize()) / m_scale); m_xdgOutput->done(); } emit modeChanged(); @@ -160,7 +160,7 @@ void AbstractOutput::setWaylandMode(const QSize &size, int refreshRate) } m_waylandOutput->setCurrentMode(size, refreshRate); if (m_xdgOutput) { - m_xdgOutput->setLogicalSize(pixelSize() / scale()); + m_xdgOutput->setLogicalSize(orientateSize(pixelSize()) / scale()); m_xdgOutput->done(); } } diff --git a/plugins/platforms/drm/drm_output.cpp b/plugins/platforms/drm/drm_output.cpp index 95368f0ba..d1780207e 100644 --- a/plugins/platforms/drm/drm_output.cpp +++ b/plugins/platforms/drm/drm_output.cpp @@ -783,7 +783,7 @@ void DrmOutput::updateMode(int modeIndex) QSize DrmOutput::pixelSize() const { - return orientateSize(QSize(m_mode.hdisplay, m_mode.vdisplay)); + return QSize(m_mode.hdisplay, m_mode.vdisplay); } void DrmOutput::setWaylandMode() diff --git a/plugins/platforms/wayland/egl_wayland_backend.cpp b/plugins/platforms/wayland/egl_wayland_backend.cpp index 67532178a..a5d55ba96 100644 --- a/plugins/platforms/wayland/egl_wayland_backend.cpp +++ b/plugins/platforms/wayland/egl_wayland_backend.cpp @@ -75,6 +75,7 @@ bool EglWaylandOutput::init(EglWaylandBackend *backend) qCCritical(KWIN_WAYLAND_BACKEND) << "Create Window Surface failed"; return false; } + qDebug() << "HERE"; m_eglSurface = eglSurface; connect(m_waylandOutput, &WaylandOutput::sizeChanged, this, &EglWaylandOutput::updateSize); diff --git a/plugins/scenes/opengl/scene_opengl.cpp b/plugins/scenes/opengl/scene_opengl.cpp index ca9e5f06f..9e2d2a730 100644 --- a/plugins/scenes/opengl/scene_opengl.cpp +++ b/plugins/scenes/opengl/scene_opengl.cpp @@ -976,6 +976,7 @@ QMatrix4x4 SceneOpenGL2::createProjectionMatrix() const QMatrix4x4 projection; projection.frustum(xMin, xMax, yMin, yMax, zNear, zFar); + projection.rotate(90, 0,0,-1); // Create a second matrix that transforms screen coordinates // to world coordinates.