Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Un*x session management integration via desktopEvents
So we have this guest agent, vmusr, which runs in the context of graphical desktop sessions. It's intended to run for the duration of the session, which is normally fine, but it has a nasty habit of overstaying its welcome. Our gracious host, the session manager, politely asks its guests to leave, but vmusr just doesn't wanna listen. Rather than stick around until the X server terminates, this change introduces integration with XSM-compliant[1] session managers such that, in response to a heads-up from the manager, we can exit cleanly. libSM and libICE are used to get the job done. libICE clients use their own connections, and they're managed via a custom GSource. For now, this desktopEvents feature is the only libICE client, so rather than go overboard and deal with ICE in a separate provider plugin, all ICE-GLib connection management is handled here. Additionally, I changed up the Desktop Events features' mini API to keep a GHashTable as the plugin's private data. Each mini feature may add its own private data to that hash using the feature's name as a key. 1. http://cgit.freedesktop.org/xorg/lib/libSM/tree/doc/SMlib.xml Signed-off-by: Marcelo Vanzin <mvanzin@vmware.com>
- Loading branch information
VMware, Inc
authored and
Marcelo Vanzin
committed
Mar 29, 2011
1 parent
2e7bbe3
commit cfa1982
Showing
8 changed files
with
535 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.