Comment 15 for bug 138194

Revision history for this message
Dylan McCall (dylanmccall) wrote :

The fix will lie in indicator-session/src/gtk-logout-helper, which is part of a separate program that indicator-session calls to trigger the log out, shutdown or restart dialog.

It will need to use Gnome Session Manager to inhibit sleeping, only uninhibiting when it wants to (when the dialog response is triggered). Other clients which inhibit the session will be respected, so it should be happy.

In theory, we could also watch the devicekit-power Changed signal, faking a dialog OK action when LidIsClosed becomes True. (Although this may be a Really Bad Idea for laptops with external displays, so perhaps best left for another patch).

The process of building this thing is making my head hurt; getting a head full of errors, basically for every line in indicator-session.c, with a fairly clean Karmic, the Karmic version of the sources and all of the build dependencies for the indicator-session package. Those errors have nothing to do with my changes, though. There's hope that it may actually work :)
If somebody can take a look at this and maybe build it, I'll be grateful. I'll try pushing this into a VM later.

As mentioned, a similar fix should also be applied in gnome-session. I'll start up a discussion upstream on this topic; I may be taking completely the wrong approach, after all.