seem to have found a text block, to activate with the click later

This commit is contained in:
Blue 2022-04-28 00:08:59 +03:00
parent d86e2c28a0
commit eac87e713f
Signed by untrusted user: blue
GPG key ID: 9B203B252A63EE38
4 changed files with 101 additions and 6 deletions

View file

@ -50,7 +50,8 @@ FeedView::FeedView(QWidget* parent):
modelState(Models::MessageFeed::complete),
progress(),
dividerFont(),
dividerMetrics(dividerFont)
dividerMetrics(dividerFont),
mousePressed(false)
{
horizontalScrollBar()->setRange(0, 0);
verticalScrollBar()->setSingleStep(approximateSingleMessageHeight);
@ -412,10 +413,36 @@ void FeedView::mouseMoveEvent(QMouseEvent* event)
if (!isVisible()) {
return;
}
mousePressed = false;
//qDebug() << event;
QAbstractItemView::mouseMoveEvent(event);
}
void FeedView::mousePressEvent(QMouseEvent* event)
{
QAbstractItemView::mousePressEvent(event);
mousePressed = event->button() == Qt::LeftButton;
}
void FeedView::mouseReleaseEvent(QMouseEvent* event)
{
QAbstractItemView::mouseReleaseEvent(event);
if (mousePressed && specialDelegate) {
QPoint point = event->localPos().toPoint();
QModelIndex index = indexAt(point);
if (index.isValid()) {
QRect rect = visualRect(index);
MessageDelegate* del = static_cast<MessageDelegate*>(itemDelegate());
if (rect.contains(point)) {
del->leftClick(point, index, rect);
}
}
}
}
void FeedView::resizeEvent(QResizeEvent* event)
{
QAbstractItemView::resizeEvent(event);