Merge branch 'Plasma/5.5'

master
Martin Gräßlin 9 years ago
commit e861c5f185

@ -614,7 +614,7 @@ bool DrmOutput::present(DrmBuffer *buffer)
if (m_currentBuffer) {
return false;
}
if (m_lastStride != buffer->stride()) {
if (m_lastStride != buffer->stride() || m_lastGbm != buffer->isGbm()) {
// need to set a new mode first
if (!setMode(buffer)) {
return false;
@ -811,6 +811,7 @@ bool DrmOutput::setMode(DrmBuffer *buffer)
{
if (drmModeSetCrtc(m_backend->fd(), m_crtcId, buffer->bufferId(), 0, 0, &m_connector, 1, &m_mode) == 0) {
m_lastStride = buffer->stride();
m_lastGbm = buffer->isGbm();
return true;
} else {
qCWarning(KWIN_DRM) << "Mode setting failed";

@ -181,6 +181,7 @@ private:
quint32 m_crtcId = 0;
quint32 m_connector = 0;
quint32 m_lastStride = 0;
bool m_lastGbm = false;
drmModeModeInfo m_mode;
DrmBuffer *m_currentBuffer = nullptr;
DrmBuffer *m_blackBuffer = nullptr;
@ -221,6 +222,9 @@ public:
gbm_bo *gbm() const {
return m_bo;
}
bool isGbm() const {
return m_bo != nullptr;
}
void releaseGbm();
private:

Loading…
Cancel
Save