Comment 6 for bug 2031981

Revision history for this message
James Sinton (jksinton) wrote :

After a little more debugging on my setup, I figured out that my Xubuntu install has these environment variables set:
XDG_SESSION_DESKTOP = xubuntu;
XDG_CURRENT_DESKTOP = XFCE;
DESKTOP_SESSION = xubuntu;

session_desktop is set via get_xdg_session_desktop() in lib/Services/Environment.vala with the relevant part reproduced below:

result = Environment.get_variable ("XDG_SESSION_DESKTOP");
if (result == null)
 result = Environment.get_variable ("XDG_CURRENT_DESKTOP");
if (result == null)
 result = Environment.get_variable ("DESKTOP_SESSION");

Because result get sets to xubuntu via the Environment.get_variable for XDG_SESSION_DESKTOP, the if block for XDG_CURRENT_DESKTOP gets skipped. Thus, session_desktop is set to the default UKNOWN type as xubuntu is not in the enumeration for XdgSessionDesktop regardless of XDG_CURRENT_DESKTOP being set to XFCE.

I might try adding a new XdgSessionDesktop type for xubuntu in Environment.vala as that might be an easier solution that can allow me to update the initialize if block in PositionManager.

Best,
James