[nautilus-actions] na_desktop_environment_detect_running_desktop(): detect XFCE desktop



commit c069f2dd3e3cee9f0004d2480288e481f19add40
Author: Pierre Wieser <pwieser trychlos org>
Date:   Wed Jan 18 22:17:32 2012 +0100

    na_desktop_environment_detect_running_desktop(): detect XFCE desktop

 ChangeLog                         |    5 +++++
 src/core/na-desktop-environment.c |   12 ++++++++++++
 src/core/na-factory-object.c      |    3 ++-
 3 files changed, 19 insertions(+), 1 deletions(-)
---
diff --git a/ChangeLog b/ChangeLog
index 3081778..e1ac453 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-01-18 Pierre Wieser <pwieser trychlos org>
+
+	* src/core/na-desktop-environment.c
+	(na_desktop_environment_detect_running_desktop): Detect XFCE desktop.
+
 2012-01-17 Pierre Wieser <pwieser trychlos org>
 
 	* src/core/na-object-item-factory.c: Reset provider as copyable.
diff --git a/src/core/na-desktop-environment.c b/src/core/na-desktop-environment.c
index 44d04c9..5ef8c44 100644
--- a/src/core/na-desktop-environment.c
+++ b/src/core/na-desktop-environment.c
@@ -90,11 +90,23 @@ na_desktop_environment_detect_running_desktop( void )
 		return( DESKTOP_KDE );
 	}
 
+	/* GNOME_DESKTOP_SESSION_ID=this-is-deprecated
+	 */
 	value = g_getenv( "GNOME_DESKTOP_SESSION_ID" );
 	if( value && strlen( value )){
 		return( DESKTOP_GNOME );
 	}
 
+	value = g_getenv( "DESKTOP_SESSION" );
+	if( value ){
+		if( !strcmp( value, "gnome" )){
+			return( DESKTOP_GNOME );
+		}
+		if( !strcmp( value, "xfce" )){
+			return( DESKTOP_XFCE );
+		}
+	}
+
 	output_str = NULL;
 	error_str = NULL;
 	error = NULL;
diff --git a/src/core/na-factory-object.c b/src/core/na-factory-object.c
index 9aea490..66fdc8d 100644
--- a/src/core/na-factory-object.c
+++ b/src/core/na-factory-object.c
@@ -37,10 +37,11 @@
 #include <string.h>
 
 #include <api/na-core-utils.h>
+#include <api/na-data-boxed.h>
 #include <api/na-data-types.h>
 #include <api/na-iio-provider.h>
 #include <api/na-ifactory-provider.h>
-#include <api/na-data-boxed.h>
+#include <api/na-object-api.h>
 
 #include "na-factory-object.h"
 #include "na-factory-provider.h"



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]