]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphinmainwindow.cpp
Add needed method for keyboard navigation
[dolphin.git] / src / dolphinmainwindow.cpp
index 7fec6908d220112dd1b2c186807d2119c583462e..3e22ba1d34db0947241866dcb3a7bfa0c301b1f6 100644 (file)
@@ -390,11 +390,17 @@ void DolphinMainWindow::openNewMainWindow()
 
 void DolphinMainWindow::toggleActiveView()
 {
-    if (m_activeViewContainer == m_viewContainer[PrimaryView]) {
-        setActiveViewContainer(m_viewContainer[SecondaryView]);
-    } else {
-        setActiveViewContainer(m_viewContainer[PrimaryView]);
+    if (m_viewContainer[SecondaryView] == 0) {
+        // only one view is available
+        return;
     }
+
+    Q_ASSERT(m_activeViewContainer != 0);
+    Q_ASSERT(m_viewContainer[PrimaryView] != 0);
+
+    DolphinViewContainer* left  = m_viewContainer[PrimaryView];
+    DolphinViewContainer* right = m_viewContainer[SecondaryView];
+    setActiveViewContainer(m_activeViewContainer == right ? left : right);
 }
 
 void DolphinMainWindow::closeEvent(QCloseEvent* event)
@@ -733,12 +739,16 @@ void DolphinMainWindow::sortByType()
 
 void DolphinMainWindow::sortByRating()
 {
+#ifdef HAVE_NEPOMUK
     m_activeViewContainer->view()->setSorting(DolphinView::SortByRating);
+#endif
 }
 
 void DolphinMainWindow::sortByTags()
 {
+#ifdef HAVE_NEPOMUK
     m_activeViewContainer->view()->setSorting(DolphinView::SortByTags);
+#endif
 }
 
 void DolphinMainWindow::toggleSortOrder()
@@ -1036,6 +1046,7 @@ void DolphinMainWindow::init()
 
 void DolphinMainWindow::setActiveViewContainer(DolphinViewContainer* view)
 {
+    Q_ASSERT(view != 0);
     Q_ASSERT((view == m_viewContainer[PrimaryView]) || (view == m_viewContainer[SecondaryView]));
     if (m_activeViewContainer == view) {
         return;