aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTony Crisci <tony@dubstepdish.com>2017-12-21 18:40:54 -0500
committerGitHub <noreply@github.com>2017-12-21 18:40:54 -0500
commit0a370c529806077a11638e7fa856d5fbb539496b (patch)
treeb00eb27649a61035af82b735673e6fd780862f9b /include
parent1a96ce0c53c84295d33b143e1b6cf02cb7017d50 (diff)
parent4cec7f54e24a58fd9756395ce64a5bd73f412c9e (diff)
Merge pull request #506 from acrisci/multi-backend-fixes
[wip] multibackend fixes
Diffstat (limited to 'include')
-rw-r--r--include/backend/drm/drm.h2
-rw-r--r--include/backend/multi.h6
-rw-r--r--include/wlr/backend.h1
-rw-r--r--include/wlr/backend/multi.h9
4 files changed, 15 insertions, 3 deletions
diff --git a/include/backend/drm/drm.h b/include/backend/drm/drm.h
index 278c387c..72671f45 100644
--- a/include/backend/drm/drm.h
+++ b/include/backend/drm/drm.h
@@ -143,4 +143,6 @@ int wlr_drm_event(int fd, uint32_t mask, void *data);
void wlr_drm_connector_start_renderer(struct wlr_drm_connector *conn);
+struct wlr_session *wlr_drm_backend_get_session(struct wlr_backend *backend);
+
#endif
diff --git a/include/backend/multi.h b/include/backend/multi.h
index 2798048d..3363c608 100644
--- a/include/backend/multi.h
+++ b/include/backend/multi.h
@@ -9,10 +9,14 @@
struct wlr_multi_backend {
struct wlr_backend backend;
- struct wlr_session *session;
struct wl_list backends;
struct wl_listener display_destroy;
+
+ struct {
+ struct wl_signal backend_add;
+ struct wl_signal backend_remove;
+ } events;
};
#endif
diff --git a/include/wlr/backend.h b/include/wlr/backend.h
index 2c8fd982..4632dcbf 100644
--- a/include/wlr/backend.h
+++ b/include/wlr/backend.h
@@ -11,6 +11,7 @@ struct wlr_backend {
const struct wlr_backend_impl *impl;
struct {
+ struct wl_signal destroy;
struct wl_signal input_add;
struct wl_signal input_remove;
struct wl_signal output_add;
diff --git a/include/wlr/backend/multi.h b/include/wlr/backend/multi.h
index e56b07b1..d9914efc 100644
--- a/include/wlr/backend/multi.h
+++ b/include/wlr/backend/multi.h
@@ -4,13 +4,18 @@
#include <wlr/backend.h>
#include <wlr/backend/session.h>
-struct wlr_backend *wlr_multi_backend_create(struct wl_display *display,
- struct wlr_session *session);
+struct wlr_backend *wlr_multi_backend_create(struct wl_display *display);
+
void wlr_multi_backend_add(struct wlr_backend *multi,
struct wlr_backend *backend);
+void wlr_multi_backend_remove(struct wlr_backend *multi,
+ struct wlr_backend *backend);
+
bool wlr_backend_is_multi(struct wlr_backend *backend);
struct wlr_session *wlr_multi_get_session(struct wlr_backend *base);
+bool wlr_multi_is_empty(struct wlr_backend *backend);
+
#endif