qtquick: Window resizing works on Linux/mac now

This commit is contained in:
Sergio Martins
2020-11-27 13:59:27 +00:00
parent 40fa4e98f8
commit bc2fff2c04
6 changed files with 39 additions and 10 deletions

View File

@@ -559,9 +559,9 @@ void QWidgetAdapter::render(QPainter *)
qWarning() << Q_FUNC_INFO << "Implement me";
}
void QWidgetAdapter::setMouseTracking(bool)
void QWidgetAdapter::setMouseTracking(bool enabled)
{
qWarning() << Q_FUNC_INFO << "Implement me";
m_mouseTrackingEnabled = enabled;
}
bool QWidgetAdapter::event(QEvent *ev)
@@ -572,6 +572,29 @@ bool QWidgetAdapter::event(QEvent *ev)
return QQuickItem::event(ev);
}
bool QWidgetAdapter::eventFilter(QObject *watched, QEvent *ev)
{
if (qobject_cast<QWindow*>(watched)) {
if (m_mouseTrackingEnabled) {
switch (ev->type()) {
case QEvent::MouseMove:
case QEvent::MouseButtonPress:
case QEvent::MouseButtonRelease:
ev->ignore();
qApp->sendEvent(this, ev);
//qDebug() << "Mouse event" << ev;
if (ev->isAccepted())
return true;
break;
default:
break;
}
}
}
return QQuickItem::eventFilter(watched, ev);
}
void QWidgetAdapter::setWindowIsBeingDestroyed(bool is)
{
m_windowIsBeingDestroyed = is;