Assure that the selection is cleared if a click on the viewport is done.

svn path=/trunk/KDE/kdebase/apps/; revision=670761
This commit is contained in:
Peter Penz 2007-06-02 15:04:44 +00:00
parent eda07dc986
commit 10f131fff8
2 changed files with 16 additions and 2 deletions

View file

@ -29,8 +29,9 @@
#include <kfileitem.h>
#include <kfileitemdelegate.h>
#include <QtGui/QAbstractProxyModel>
#include <QtCore/QPoint>
#include <QAbstractProxyModel>
#include <QApplication>
#include <QPoint>
DolphinIconsView::DolphinIconsView(QWidget* parent, DolphinController* controller) :
KListView(parent),
@ -105,6 +106,18 @@ void DolphinIconsView::contextMenuEvent(QContextMenuEvent* event)
m_controller->triggerContextMenuRequest(event->pos());
}
void DolphinIconsView::mousePressEvent(QMouseEvent* event)
{
if (!indexAt(event->pos()).isValid()) {
const Qt::KeyboardModifiers modifier = QApplication::keyboardModifiers();
if (!(modifier & Qt::ShiftModifier) && !(modifier & Qt::ControlModifier)) {
clearSelection();
}
}
KListView::mousePressEvent(event);
}
void DolphinIconsView::mouseReleaseEvent(QMouseEvent* event)
{
KListView::mouseReleaseEvent(event);

View file

@ -46,6 +46,7 @@ public:
protected:
virtual QStyleOptionViewItem viewOptions() const;
virtual void contextMenuEvent(QContextMenuEvent* event);
virtual void mousePressEvent(QMouseEvent* event);
virtual void mouseReleaseEvent(QMouseEvent* event);
virtual void dragEnterEvent(QDragEnterEvent* event);
virtual void dropEvent(QDropEvent* event);