summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichal Hruby <michal.mhr@gmail.com>2011-12-12 10:50:16 +0100
committerMichal Hruby <michal.mhr@gmail.com>2011-12-12 10:50:16 +0100
commit1b400728fb630bdcfb9aaafc6ae3fb18b28b672c (patch)
treee7d0506886ba14ce196de93ce6ead98992907f37
parente5170c10fcd3af9fa0dd0d2b93a8075c87733c65 (diff)
Make sure we set proper desktop environment for DesktopAppInfo
-rw-r--r--src/desktop-launch-listener.vala14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/desktop-launch-listener.vala b/src/desktop-launch-listener.vala
index f36ce0b..a0c0417 100644
--- a/src/desktop-launch-listener.vala
+++ b/src/desktop-launch-listener.vala
@@ -56,6 +56,13 @@ public class DesktopLaunchListener : DataProvider
warning ("%s", err.message);
}
+ unowned string desktop_env = Environment.get_variable ("XDG_CURRENT_DESKTOP");
+ if (desktop_env != null)
+ {
+ DesktopAppInfo.set_desktop_env (desktop_env);
+ return;
+ }
+
unowned string session_var = Environment.get_variable ("DESKTOP_SESSION");
if (session_var == null)
{
@@ -63,7 +70,7 @@ public class DesktopLaunchListener : DataProvider
DesktopAppInfo.set_desktop_env ("GNOME");
return;
}
-
+
string desktop_session = session_var.up ();
if (desktop_session.has_prefix ("GNOME"))
{
@@ -77,6 +84,11 @@ public class DesktopLaunchListener : DataProvider
{
DesktopAppInfo.set_desktop_env ("XFCE");
}
+ else
+ {
+ // assume GNOME
+ DesktopAppInfo.set_desktop_env ("GNOME");
+ }
}
public override void start ()