Switch to side-by-side view

--- a/src/qtgui/reslist.cpp
+++ b/src/qtgui/reslist.cpp
@@ -58,6 +58,7 @@
 #ifdef RCL_USE_ASPELL
 #include "rclaspell.h"
 #endif
+#include "appformime.h"
 #include "respopup.h"
 
 static const QKeySequence quitKeySeq("Ctrl+q");
@@ -876,6 +877,20 @@
     }
     break;
 
+    // Open parent folder
+    case 'F':
+    {
+	int i = atoi(ascurl.c_str()+1) - 1;
+	Rcl::Doc doc;
+	if (!getDoc(i, doc)) {
+	    LOGERR(("ResList::linkWasClicked: can't get doc for %d\n", i));
+	    return;
+	}
+        emit editRequested(ResultPopup::getParent(RefCntr<DocSequence>(),
+                                                  doc));
+    }
+    break;
+
     // Show query details
     case 'H': 
     {
@@ -912,6 +927,27 @@
     case 'p':
 	resultPageBack();
 	break;
+
+	// Run script. Link format Rnn|Script Name
+    case 'R':
+    {
+	int i = atoi(ascurl.c_str() + 1) - 1;
+	QString s = url.toString();
+	int bar = s.indexOf("|");
+	if (bar == -1 || bar >= s.size()-1)
+            break;
+        string cmdname = qs2utf8s(s.right(s.size() - (bar + 1)));
+        DesktopDb ddb(path_cat(theconfig->getConfDir(), "scripts"));
+        DesktopDb::AppDef app;
+        if (ddb.appByName(cmdname, app)) {
+            QAction act(QString::fromUtf8(app.name.c_str()), this);
+            QVariant v(QString::fromUtf8(app.command.c_str()));
+            act.setData(v);
+            m_popDoc = i;
+            menuOpenWith(&act);
+        }
+    }
+    break;
 
 	// Spelling: replacement suggestion clicked
     case 'S':