]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/dolphincolumnview.cpp
reset the URL candidate if a resizing is done
[dolphin.git] / src / dolphincolumnview.cpp
index d6bd08a422f027059753d8aa42ccf53fba3149fd..7e74b7e3452e86b8efbe6da71f17eb2360ad5733 100644 (file)
 
 #include "dolphincolumnview.h"
 
-#include "dolphinmodel.h"
 #include "dolphincolumnwidget.h"
 #include "dolphincontroller.h"
-#include "dolphindirlister.h"
-#include "dolphinmodel.h"
-#include "dolphinsortfilterproxymodel.h"
 #include "dolphinsettings.h"
 
 #include "dolphin_columnmodesettings.h"
 
-#include <kcolorutils.h>
-#include <kcolorscheme.h>
-#include <kdirlister.h>
-
-#include <QAbstractProxyModel>
-#include <QApplication>
 #include <QPoint>
 #include <QScrollBar>
-#include <QTimer>
 #include <QTimeLine>
 
 DolphinColumnView::DolphinColumnView(QWidget* parent, DolphinController* controller) :
@@ -341,6 +330,7 @@ void DolphinColumnView::resizeEvent(QResizeEvent* event)
 {
     QAbstractItemView::resizeEvent(event);
     layoutColumns();
+    updateScrollBar();
     assureVisibleActiveColumn();
 }
 
@@ -380,11 +370,13 @@ void DolphinColumnView::updateDecorationSize()
 {
     ColumnModeSettings* settings = DolphinSettings::instance().columnModeSettings();
     const int iconSize = settings->iconSize();
+    const QSize size(iconSize, iconSize);
+    setIconSize(size);
 
     foreach (QObject* object, viewport()->children()) {
         if (object->inherits("QListView")) {
             DolphinColumnWidget* widget = static_cast<DolphinColumnWidget*>(object);
-            widget->setDecorationSize(QSize(iconSize, iconSize));
+            widget->setDecorationSize(size);
         }
     }
 
@@ -403,8 +395,12 @@ void DolphinColumnView::updateColumnsBackground(bool active)
     m_active = active;
 
     // dim the background of the viewport
-    QPalette palette;
-    palette.setColor(viewport()->backgroundRole(), QColor(0, 0, 0, 0));
+    const QPalette::ColorRole role = viewport()->backgroundRole();
+    QColor background = viewport()->palette().color(role);
+    background.setAlpha(0);  // make background transparent
+
+    QPalette palette = viewport()->palette();
+    palette.setColor(role, background);
     viewport()->setPalette(palette);
 
     foreach (DolphinColumnWidget* column, m_columns) {
@@ -513,7 +509,9 @@ void DolphinColumnView::assureVisibleActiveColumn()
         } else {
             m_animation->setFrameRange(-m_contentX, -newContentX);
         }
-        m_animation->start();
+        if (m_animation->state() != QTimeLine::Running) {
+           m_animation->start();
+        }
     } else if (x < 0) {
         const int newContentX = m_contentX - x;
         if (isRightToLeft()) {
@@ -521,7 +519,9 @@ void DolphinColumnView::assureVisibleActiveColumn()
         } else {
             m_animation->setFrameRange(-m_contentX, -newContentX);
         }
-        m_animation->start();
+        if (m_animation->state() != QTimeLine::Running) {
+           m_animation->start();
+        }
     }
 }
 
@@ -554,19 +554,4 @@ void DolphinColumnView::removeAllColumns()
     assureVisibleActiveColumn();
 }
 
-void DolphinColumnView::setModel ( QAbstractItemModel * model )
-{
-    QAbstractItemView::setModel(model);
-    if(m_columns[0]) {
-       m_columns[0]->setModel(model);
-        m_columns[0]->setSelectionModel(selectionModel());
-    }
-}
-void DolphinColumnView::setSelectionModel ( QItemSelectionModel * selectionModel )
-{
-    if(m_columns[0])
-        m_columns[0]->setSelectionModel(selectionModel);
-    QAbstractItemView::setSelectionModel(selectionModel);
-}
-
 #include "dolphincolumnview.moc"