diff --git a/src/main/java/org/luwrain/app/commander/Actions.java b/src/main/java/org/luwrain/app/commander/Actions.java index 520a620..71421c8 100644 --- a/src/main/java/org/luwrain/app/commander/Actions.java +++ b/src/main/java/org/luwrain/app/commander/Actions.java @@ -59,9 +59,18 @@ PanelArea.ClickHandler.Result onClick(CommanderArea area, Object obj, boolean di final PanelArea panelArea = (PanelArea)area; if (!panelArea.isLocalDir())//FIXME: return PanelArea.ClickHandler.Result.REJECTED; + try { + //Maybe it's better to make a separate method translating FileObject to java.io.File final FileObject fileObject = (FileObject)obj; - luwrain.openFile(fileObject.getName().getPath()); + final File file = org.luwrain.util.Urls.toFile(fileObject.getURL()); + luwrain.openFile(file.getAbsolutePath()); return CommanderArea.ClickHandler.Result.OK; + } + catch(Exception e) + { + luwrain.crash(e); + return PanelArea.ClickHandler.Result.REJECTED; + } } boolean onLocalCopy(PanelArea copyFromArea, PanelArea copyToArea, FilesOperation.Listener listener)