diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/templates/qquickpopup.cpp | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/src/templates/qquickpopup.cpp b/src/templates/qquickpopup.cpp index 8f4810c5..be3c720c 100644 --- a/src/templates/qquickpopup.cpp +++ b/src/templates/qquickpopup.cpp @@ -145,14 +145,8 @@ bool QQuickPopupPrivate::tryClose(QQuickItem *item, QMouseEvent *event) const bool onOutside = closePolicy.testFlag(isPress ? QQuickPopup::OnPressOutside : QQuickPopup::OnReleaseOutside); const bool onOutsideParent = closePolicy.testFlag(isPress ? QQuickPopup::OnPressOutsideParent : QQuickPopup::OnReleaseOutsideParent); if (onOutside || onOutsideParent) { - if (onOutsideParent) { - if (!popupItem->contains(item->mapToItem(popupItem, event->pos())) && - (!parentItem || !parentItem->contains(item->mapToItem(parentItem, event->pos())))) { - q->close(); - return true; - } - } else if (onOutside) { - if (!popupItem->contains(item->mapToItem(popupItem, event->pos()))) { + if (!popupItem->contains(item->mapToItem(popupItem, event->pos()))) { + if (!onOutsideParent || !parentItem || !parentItem->contains(item->mapToItem(parentItem, event->pos()))) { q->close(); return true; } |