summaryrefslogtreecommitdiff
path: root/src/libsystemd-terminal/sysview.h
AgeCommit message (Collapse)Author
2015-03-11terminal/sysview: introduce SETTLE eventsDavid Herrmann
This introduces a new SYSVIEW_EVENT_SETTLE notification that is sent after initial scanning via sysview is done. This is very handy to let the application raise warnings in case requested resources are not found during startup. The SETTLE event is sent after systemd-logind and udev enumerations are done. This event does in no way guarantee that a given resource is available. All it does is notify the application that scanning is done! You must not react to SETTLE if you don't have external synchronization with the resource you're waiting for. The main use-case for SETTLE is to run applications _inside_ of logind sessions and startup sysview. You really want to make sure that the own session you're running in was found during enumeration. If not, something is seriously wrong.
2015-02-23remove unused includesThomas Hindoe Paaboel Andersen
This patch removes includes that are not used. The removals were found with include-what-you-use which checks if any of the symbols from a header is in use.
2014-09-29terminal: add helper to retrieve the seat of a sessionDavid Herrmann
Allow sysview users to retrieve the seat that a session is assigned to.
2014-09-29terminal: add sysview_seat_switch_to()David Herrmann
Add helper to perform session switches on a specific seat whenever we retrieve a VT-switch keyboard event.
2014-09-22terminal: allow user-context to be retrieved/storedDavid Herrmann
Add "userdata" storage to a bunch of external objects, namely displays and sessions. Furthermore, add some property retrieval helpers. This is required if we want external API users to not duplicate our own object hashtables, but retrieve context from the objects themselves.
2014-09-22terminal: raise sysview DEVICE_CHANGE events per attachmentDavid Herrmann
Instead of raising DEVICE_CHANGE only per device, we now raise it per device-session attachment. This is what we want for all sysview users, anyway, as sessions are meant to be independent of each other. Lets avoid any external session iterators and just do that in sysview itself.
2014-09-20terminal: forward DEVICE_CHANGE events via sysviewDavid Herrmann
Whe need to react to "change" events on devices, but we want to avoid duplicating udev-monitors everywhere. Therefore, make sysview forward change events to the sysview controllers, which can then properly react to it.
2014-08-27terminal: add system view interfaceDavid Herrmann
We're going to need multiple binaries that provide session-services via logind device management. To avoid re-writing the seat/session/device scan/monitor interface for each of them, this commit adds a generic helper to libsystemd-terminal: The sysview interface scans and tracks seats, sessions and devices on a system. It basically mirrors the state of logind on the application side. Now, each session-service can listen for matching sessions and attach to them. On each session, managed device access is provided. This way, it is pretty simple to write session-services that attach to multiple sessions (even split across seats).