qml: Wire up some events for DockWidget
Some events like QEvent::Show, Hide and Close are for QWidget only, so we have to synthetize them, as KDDW expects them
This commit is contained in:
@@ -66,10 +66,20 @@ void QWidgetAdapter::itemChange(QQuickItem::ItemChange change, const QQuickItem:
|
||||
{
|
||||
QQuickItem::itemChange(change, data);
|
||||
|
||||
if (change == QQuickItem::ItemParentHasChanged) {
|
||||
// Emulate the QWidget behaviour as QQuickItem doesn't emit parentChange event.
|
||||
// Emulate the QWidget behaviour as QQuickItem doesn't receive some QEvents.
|
||||
switch (change) {
|
||||
case QQuickItem::ItemVisibleHasChanged: {
|
||||
QEvent ev(QEvent::ParentChange);
|
||||
event(&ev);
|
||||
break;
|
||||
}
|
||||
case QQuickItem::ItemParentHasChanged: {
|
||||
QEvent ev(isVisible() ? QEvent::Show : QEvent::Hide);
|
||||
event(&ev);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user