dx-packages team mailing list archive
-
dx-packages team
-
Mailing list archive
-
Message #37537
[Bug 1302852] Re: Does not work in non-Unity DEs/Xsessions
the code doesn't really assume that the Unity prompt is available
" if ((prompt == PROMPT_NONE) && p && p->end_session_dialog)
{
GDBusProxy * proxy = G_DBUS_PROXY (p->end_session_dialog);
char * name = g_dbus_proxy_get_name_owner (proxy);
if (name != NULL)
prompt = PROMPT_WITH_UNITY;
g_free (name);
}
/* can we use zenity? */
if ((prompt == PROMPT_NONE) && p && p->zenity)
prompt = PROMPT_WITH_ZENITY;"
name should be null if unity is not active (is not on the bus) and it
should hit the second case and go with zenity...
--
You received this bug notification because you are a member of DX
Packages, which is subscribed to indicator-session in Ubuntu.
Matching subscriptions: dx-packages
https://bugs.launchpad.net/bugs/1302852
Title:
Does not work in non-Unity DEs/Xsessions
Status in indicator-session package in Ubuntu:
Confirmed
Bug description:
Clicking any of the actions that require a prompt - shutdown, restart, etc. - in a non-Unity X session do not work. This seems to be caused by prompt selection code in https://bazaar.launchpad.net/~indicator-applet-developers/indicator-session/trunk.14.04/view/head:/src/backend-dbus/actions.c#L94 - it always assumes that Unity prompt is available even if it, in fact, is not.
Checking for availability of Zenity prompt first is reported to fix this.
For a proper solution the code responsible for detecting Unity prompt availability should be improved. Right now it seems to be simply checking if it can access D-bus. I assume the prompt is invoked via a D-bus call so I've investigated checking for name presence on the bus, but that can potentially be slow since it has a manually-set timeout.
Checking the XDG_CURRENT_DESKTOP variable and only showing the Unity prompt if it's set to "Unity" sounds like a better idea to me, but I'm not sure if the variable is set on Ubuntu Touch at all.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/indicator-session/+bug/1302852/+subscriptions