Revamping ChatView/ChatScene's mouse handling
[quassel.git] / src / qtui / chatscene.cpp
index 313d80e..dc38854 100644 (file)
@@ -107,6 +107,10 @@ ChatScene::ChatScene(QAbstractItemModel *model, const QString &idString, qreal w
   _clickTimer.setSingleShot(true);
   connect(&_clickTimer, SIGNAL(timeout()), SLOT(clickTimeout()));
 
+  _clickTimer.setInterval(QApplication::doubleClickInterval());
+  _clickTimer.setSingleShot(true);
+  connect(&_clickTimer, SIGNAL(timeout()), SLOT(clickTimeout()));
+
   setItemIndexMethod(QGraphicsScene::NoIndex);
 }
 
@@ -623,7 +627,8 @@ void ChatScene::mouseReleaseEvent(QGraphicsSceneMouseEvent *event) {
   if(!event->buttons() & Qt::LeftButton) {
     _leftButtonPressed = false;
     if(_clickMode != NoClick) {
-      clearSelection();
+      if(_clickMode == SingleClick)
+        clearSelection();
       event->accept();
       if(!_clickTimer.isActive())
         handleClick(Qt::LeftButton, _clickPos);