diff -uarN truecrypt-7.1-source.orig/Main/UserInterface.cpp truecrypt-7.1-source/Main/UserInterface.cpp --- truecrypt-7.1-source.orig/Main/UserInterface.cpp 2011-09-01 15:15:42.000000000 +0200 +++ truecrypt-7.1-source/Main/UserInterface.cpp 2011-09-22 11:33:15.731105392 +0200 @@ -828,7 +828,7 @@ // MIME handler for directory seems to be unavailable through wxWidgets wxString desktop = GetTraits()->GetDesktopEnvironment(); - if (desktop == L"GNOME" || desktop.empty()) + if (desktop == L"GNOME") { args.push_back ("--no-default-window"); args.push_back ("--no-desktop"); @@ -861,6 +861,34 @@ catch (exception &e) { ShowError (e); } } } + else if (desktop == L"XFCE") + { + args.push_back (string (path)); + try + { + Process::Execute ("thunar", args, 2000); + } + catch (TimeOut&) { } + catch (exception&) + { + try + { + Process::Execute ("xdg-open", args, 2000); + } + catch (TimeOut&) { } + catch (exception &e) { ShowError (e); } + } + } + else + { + args.push_back (string (path)); + try + { + Process::Execute ("xdg-open", args, 2000); + } + catch (TimeOut&) { } + catch (exception &e) { ShowError (e); } + } #endif }