[plugins/drm] Drop dependency on VirtualTerminal

Only integrates with Logind to find out when the session is active.
remotes/origin/graesslin/virtual-keyboard
Martin Gräßlin 10 years ago
parent a25bf237e0
commit 2ecd097e87
  1. 6
      plugins/platforms/drm/drm_backend.cpp
  2. 4
      plugins/platforms/drm/drm_output.cpp
  3. 4
      plugins/platforms/drm/scene_qpainter_drm_backend.cpp

@ -27,7 +27,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "scene_qpainter_drm_backend.h"
#include "screens_drm.h"
#include "udev.h"
#include "virtual_terminal.h"
#include "wayland_server.h"
#if HAVE_GBM
#include "egl_gbm_backend.h"
@ -101,8 +100,6 @@ void DrmBackend::init()
} else {
connect(logind, &LogindIntegration::connectedChanged, this, takeControl);
}
auto v = VirtualTerminal::create(this);
connect(v, &VirtualTerminal::activeChanged, this, &DrmBackend::activate);
}
void DrmBackend::outputWentOff()
@ -210,7 +207,6 @@ void DrmBackend::pageFlipHandler(int fd, unsigned int frame, unsigned int sec, u
void DrmBackend::openDrm()
{
connect(LogindIntegration::self(), &LogindIntegration::sessionActiveChanged, this, &DrmBackend::activate);
VirtualTerminal::self()->init();
UdevDevice::Ptr device = m_udev->primaryGpu();
if (!device) {
qCWarning(KWIN_DRM) << "Did not find a GPU";
@ -226,7 +222,7 @@ void DrmBackend::openDrm()
QSocketNotifier *notifier = new QSocketNotifier(m_fd, QSocketNotifier::Read, this);
connect(notifier, &QSocketNotifier::activated, this,
[this] {
if (!VirtualTerminal::self()->isActive()) {
if (!LogindIntegration::self()->isActiveSession()) {
return;
}
drmEventContext e;

@ -21,10 +21,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "drm_backend.h"
#include "composite.h"
#include "logind.h"
#include "logging.h"
#include "main.h"
#include "screens_drm.h"
#include "virtual_terminal.h"
#include "wayland_server.h"
// KWayland
#include <KWayland/Server/display.h>
@ -102,7 +102,7 @@ bool DrmOutput::present(DrmBuffer *buffer)
if (!buffer || buffer->bufferId() == 0) {
return false;
}
if (!VirtualTerminal::self()->isActive()) {
if (!LogindIntegration::self()->isActiveSession()) {
m_currentBuffer = buffer;
return false;
}

@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include "scene_qpainter_drm_backend.h"
#include "drm_backend.h"
#include "drm_output.h"
#include "virtual_terminal.h"
#include "logind.h"
namespace KWin
{
@ -101,7 +101,7 @@ void DrmQPainterBackend::present(int mask, const QRegion &damage)
{
Q_UNUSED(mask)
Q_UNUSED(damage)
if (!VirtualTerminal::self()->isActive()) {
if (!LogindIntegration::self()->isActiveSession()) {
return;
}
for (auto it = m_outputs.begin(); it != m_outputs.end(); ++it) {

Loading…
Cancel
Save