VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Main/UserInterface.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Main/UserInterface.cpp')
-rw-r--r--src/Main/UserInterface.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/src/Main/UserInterface.cpp b/src/Main/UserInterface.cpp
index 177a4e95..39c4274f 100644
--- a/src/Main/UserInterface.cpp
+++ b/src/Main/UserInterface.cpp
@@ -832,7 +832,7 @@ namespace VeraCrypt
// 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");
@@ -865,6 +865,22 @@ namespace VeraCrypt
catch (exception &e) { ShowError (e); }
}
}
+ else if (wxFileName::IsFileExecutable (wxT("/usr/bin/xdg-open")))
+ {
+ // Fallback on the standard xdg-open command
+ // which is not always available by default
+ args.push_back (string (path));
+ try
+ {
+ Process::Execute ("xdg-open", args, 2000);
+ }
+ catch (TimeOut&) { }
+ catch (exception &e) { ShowError (e); }
+ }
+ else
+ {
+ ShowWarning (wxT("Unable to find a file manager to open the mounted volume"));
+ }
#endif
}