X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Flibsystemd-terminal%2Fsysview.h;h=71e56e7ebfa4961c91b50b1082adefae325c0cde;hb=a2360a467b50a62902eb612ff747df87bace81c5;hp=b9452fab896e4338136571deb8f475aa201219ae;hpb=965f7a3f9bf7afb85be62198fabc70ffa033d8b1;p=elogind.git diff --git a/src/libsystemd-terminal/sysview.h b/src/libsystemd-terminal/sysview.h index b9452fab8..71e56e7eb 100644 --- a/src/libsystemd-terminal/sysview.h +++ b/src/libsystemd-terminal/sysview.h @@ -36,13 +36,9 @@ #pragma once -#include -#include #include -#include #include #include -#include "util.h" typedef struct sysview_event sysview_event; typedef struct sysview_device sysview_device; @@ -55,6 +51,8 @@ typedef struct sysview_context sysview_context; */ enum { + SYSVIEW_EVENT_SETTLE, + SYSVIEW_EVENT_SEAT_ADD, SYSVIEW_EVENT_SEAT_REMOVE, @@ -63,9 +61,8 @@ enum { SYSVIEW_EVENT_SESSION_REMOVE, SYSVIEW_EVENT_SESSION_ATTACH, SYSVIEW_EVENT_SESSION_DETACH, + SYSVIEW_EVENT_SESSION_REFRESH, SYSVIEW_EVENT_SESSION_CONTROL, - - SYSVIEW_EVENT_DEVICE_CHANGE, }; struct sysview_event { @@ -94,13 +91,14 @@ struct sysview_event { struct { sysview_session *session; - int error; - } session_control; - - struct { sysview_device *device; struct udev_device *ud; - } device_change; + } session_refresh; + + struct { + sysview_session *session; + int error; + } session_control; }; }; @@ -116,6 +114,7 @@ enum { SYSVIEW_DEVICE_CNT }; +const char *sysview_device_get_name(sysview_device *device); unsigned int sysview_device_get_type(sysview_device *device); struct udev_device *sysview_device_get_ud(sysview_device *device); @@ -123,7 +122,11 @@ struct udev_device *sysview_device_get_ud(sysview_device *device); * Sessions */ +void sysview_session_set_userdata(sysview_session *session, void *userdata); +void *sysview_session_get_userdata(sysview_session *session); + const char *sysview_session_get_name(sysview_session *session); +sysview_seat *sysview_session_get_seat(sysview_session *session); int sysview_session_take_control(sysview_session *session); void sysview_session_release_control(sysview_session *session); @@ -133,6 +136,7 @@ void sysview_session_release_control(sysview_session *session); */ const char *sysview_seat_get_name(sysview_seat *seat); +int sysview_seat_switch_to(sysview_seat *seat, uint32_t nr); /* * Contexts