kwin/src/plugins/platforms/drm/drm_abstract_output.cpp
Xaver Hugl 1041ef8275 platforms/drm: introduce virtual outputs
When the last output gets disconnected, create a virtual output as a
placeholder until we have access to a physical output again. While
this placecholder never gets rendered to, with virtual outputs in
general that is possible (with gbm and qpainter atm) and can be done
for future use cases like wireless displays.

CCBUG: 420160
CCBUG: 438839
2021-08-07 17:18:40 +02:00

59 lines
942 B
C++

/*
KWin - the KDE window manager
This file is part of the KDE project.
SPDX-FileCopyrightText: 2021 Xaver Hugl <xaver.hugl@gmail.com>
SPDX-License-Identifier: GPL-2.0-or-later
*/
#include "drm_abstract_output.h"
#include "drm_gpu.h"
#include "drm_backend.h"
namespace KWin
{
DrmAbstractOutput::DrmAbstractOutput(DrmGpu *gpu)
: AbstractWaylandOutput(gpu->platform())
, m_renderLoop(new RenderLoop(this))
, m_gpu(gpu)
{
}
bool DrmAbstractOutput::initCursor(const QSize &cursorSize)
{
Q_UNUSED(cursorSize)
return true;
}
bool DrmAbstractOutput::showCursor()
{
return true;
}
bool DrmAbstractOutput::hideCursor()
{
return true;
}
bool DrmAbstractOutput::updateCursor()
{
return true;
}
bool DrmAbstractOutput::moveCursor()
{
return true;
}
DrmGpu *DrmAbstractOutput::gpu() const
{
return m_gpu;
}
RenderLoop *DrmAbstractOutput::renderLoop() const
{
return m_renderLoop;
}
}