Switch to side-by-side view

--- a/dirbrowser/cdbrowser.h
+++ b/dirbrowser/cdbrowser.h
@@ -95,6 +95,18 @@
     void setStyleSheet(bool dark, bool redisplay=true);
     void refresh();
     void onSysUpdIdChanged(int id);
+    virtual void appendHtml(const QString&, const QString& html);
+    virtual void onLinkClicked(const QUrl &);
+    virtual void createPopupMenu(const QPoint&);
+    virtual void simpleAdd(QAction *);
+    virtual void recursiveAdd(QAction *);
+    virtual void back(QAction *);
+    virtual void rreaperDone(int);
+    virtual void onContentsSizeChanged(const QSize&);
+    virtual void mouseReleaseEvent(QMouseEvent *event);
+
+    virtual void onPopupJsDone(const QVariant&);
+    virtual void onLoadFinished(bool);
     
  signals:
     void sig_tracks_to_playlist(const MetaDataList&);
@@ -107,21 +119,10 @@
     void sig_rand_stop();
     void sig_sort_order();
 
- public slots:
-    virtual void appendHtml(const QString&, const QString& html);
-    virtual void onLinkClicked(const QUrl &);
-    virtual void createPopupMenu(const QPoint&);
-    virtual void simpleAdd(QAction *);
-    virtual void recursiveAdd(QAction *);
-    virtual void back(QAction *);
-    virtual void rreaperDone(int);
-    virtual void onContentsSizeChanged(const QSize&);
-    virtual void mouseReleaseEvent(QMouseEvent *event);
-
-    virtual void onPopupJsDone(const QVariant&);
-    virtual void onLoadFinished(bool);
-    
- private:
+ protected:
+    void keyPressEvent(QKeyEvent *e);
+
+private:
     bool popupOther(QAction *act);
     void initContainerHtml(const std::string& ss=string());
     void browseContainer(std::string, std::string, QPoint scrollpos = QPoint());