From 7b523884249f904f45b1e9a7eae8152c2ac1248d Mon Sep 17 00:00:00 2001
From: nyorain <nyorain@gmail.com>
Date: Mon, 24 Sep 2018 23:17:08 +0200
Subject: Rework session handling

Sessions can now be retrieved from a backend in a more general manner.
Multi-backend gets back its `session` field that contains the session
if one was created, removing the interfacing from multi backend with the
drm backend directly. This adds the possibility to use sessions even
without the drm backend.

It additionally fixes the bug that 2 session objects got created when
WLR_BACKENDS were set to "libinput,drm".

To allow vt switching without drm backend (and drm fd) on logind, start
listening to PropertiesChanged signals from dbus and parse the session
"Active" property when no master fd was created (this does not change
current drm backend behaviour in any way).
---
 include/backend/multi.h | 1 +
 1 file changed, 1 insertion(+)

(limited to 'include/backend')

diff --git a/include/backend/multi.h b/include/backend/multi.h
index c57c48f3..2f5f1bd4 100644
--- a/include/backend/multi.h
+++ b/include/backend/multi.h
@@ -8,6 +8,7 @@
 
 struct wlr_multi_backend {
 	struct wlr_backend backend;
+	struct wlr_session *session;
 
 	struct wl_list backends;
 
-- 
cgit v1.2.3