summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSiegfried-Angel Gevatter Pujals <siegfried@gevatter.com>2012-02-03 09:41:48 +0100
committerSiegfried-Angel Gevatter Pujals <siegfried@gevatter.com>2012-02-03 09:41:48 +0100
commitf822d1881429ac1601ede1b262d1e15250a44822 (patch)
tree2ee48515425dfb6c6071dfe2623a3b7e0a7a4b9c
parentf6afe87982018bce88706cea8f4238107268d51d (diff)
Some more fixes.
-rw-r--r--src/kde-recent-document-provider.vala3
-rw-r--r--src/utils.vala60
2 files changed, 35 insertions, 28 deletions
diff --git a/src/kde-recent-document-provider.vala b/src/kde-recent-document-provider.vala
index 3cd08db..e563480 100644
--- a/src/kde-recent-document-provider.vala
+++ b/src/kde-recent-document-provider.vala
@@ -238,8 +238,7 @@ public class RecentDocumentsKDE : DataProvider
GLib.FileInfo fi;
while ((fi = enumerator.next_file ()) != null)
{
- string path = Path.build_filename (recent_document_path, fi.get_name ());
- var file = GLib.File.new_for_path (path);
+ var file = directory.get_child (fi.get_name ());
try
{
Event? event = yield parse_file (file);
diff --git a/src/utils.vala b/src/utils.vala
index abdd4ef..d78414d 100644
--- a/src/utils.vala
+++ b/src/utils.vala
@@ -59,34 +59,39 @@ public class Utils : Object
unowned string session_var;
session_var = Environment.get_variable ("XDG_CURRENT_DESKTOP");
- if (session_var == null)
+ if (session_var != null)
+ {
+ DesktopAppInfo.set_desktop_env (session_var);
+ }
+ else
{
session_var = Environment.get_variable ("DESKTOP_SESSION");
if (session_var == null)
{
- // let's assume it's gnome
+ // let's assume it's GNOME
DesktopAppInfo.set_desktop_env ("GNOME");
- return;
}
- }
-
- string desktop_session = session_var.up ();
- if (desktop_session.has_prefix ("GNOME"))
- {
- DesktopAppInfo.set_desktop_env ("GNOME");
- }
- else if (desktop_session.has_prefix ("KDE"))
- {
- DesktopAppInfo.set_desktop_env ("KDE");
- }
- else if (desktop_session.has_prefix ("XFCE"))
- {
- DesktopAppInfo.set_desktop_env ("XFCE");
- }
- else
- {
- // assume GNOME
- DesktopAppInfo.set_desktop_env ("GNOME");
+ else
+ {
+ string desktop_session = session_var.up ();
+ if (desktop_session.has_prefix ("GNOME"))
+ {
+ DesktopAppInfo.set_desktop_env ("GNOME");
+ }
+ else if (desktop_session.has_prefix ("KDE"))
+ {
+ DesktopAppInfo.set_desktop_env ("KDE");
+ }
+ else if (desktop_session.has_prefix ("XFCE"))
+ {
+ DesktopAppInfo.set_desktop_env ("XFCE");
+ }
+ else
+ {
+ // assume GNOME
+ DesktopAppInfo.set_desktop_env ("GNOME");
+ }
+ }
}
foreach (unowned string data_dir in Environment.get_system_data_dirs ())
@@ -112,12 +117,15 @@ public class Utils : Object
foreach (unowned string prefix in desktop_file_prefixes)
{
- string without_prefix = path.substring (prefix.length);
+ if (normalized_path.has_prefix (prefix))
+ {
+ string without_prefix = normalized_path.substring (prefix.length);
- if (Path.DIR_SEPARATOR_S in without_prefix)
- return without_prefix.replace (Path.DIR_SEPARATOR_S, "-");
+ if (Path.DIR_SEPARATOR_S in without_prefix)
+ return without_prefix.replace (Path.DIR_SEPARATOR_S, "-");
- return without_prefix;
+ return without_prefix;
+ }
}
return Path.get_basename (path);