diff --git a/widgets/listview.cpp b/widgets/listview.cpp index a668e531e..ff7568952 100644 --- a/widgets/listview.cpp +++ b/widgets/listview.cpp @@ -25,6 +25,7 @@ #include #include #include +#include ListView::ListView(QWidget *parent) : QListView(parent) @@ -82,3 +83,10 @@ void ListView::startDrag(Qt::DropActions supportedActions) drag->start(supportedActions); } } + +void ListView::mouseReleaseEvent(QMouseEvent *event) +{ + if (Qt::NoModifier==event->modifiers()) { + QListView::mouseReleaseEvent(event); + } +} diff --git a/widgets/listview.h b/widgets/listview.h index 859dbb243..3dbc5a162 100644 --- a/widgets/listview.h +++ b/widgets/listview.h @@ -39,6 +39,7 @@ public: bool haveSelectedItems() const; bool haveUnSelectedItems() const; void startDrag(Qt::DropActions supportedActions); + void mouseReleaseEvent(QMouseEvent *event); Q_SIGNALS: bool itemsSelected(bool); diff --git a/widgets/treeview.cpp b/widgets/treeview.cpp index 74453eb48..be788c950 100644 --- a/widgets/treeview.cpp +++ b/widgets/treeview.cpp @@ -22,6 +22,7 @@ */ #include "treeview.h" +#include TreeView::TreeView(QWidget *parent) : QTreeView(parent) @@ -64,3 +65,11 @@ bool TreeView::haveUnSelectedItems() const { return selectedIndexes().count()!=model()->rowCount(); } + +void TreeView::mouseReleaseEvent(QMouseEvent *event) +{ + if (Qt::NoModifier==event->modifiers()) { + QTreeView::mouseReleaseEvent(event); + } +} + diff --git a/widgets/treeview.h b/widgets/treeview.h index ae291fd74..201b842dd 100644 --- a/widgets/treeview.h +++ b/widgets/treeview.h @@ -39,6 +39,7 @@ public: void selectionChanged(const QItemSelection &selected, const QItemSelection &deselected); bool haveSelectedItems() const; bool haveUnSelectedItems() const; + void mouseReleaseEvent(QMouseEvent *event); Q_SIGNALS: bool itemsSelected(bool);