diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2016-10-26 21:31:03 +0200 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-10-27 13:20:20 +0000 |
commit | a7e39a28575dc3421970e007b78731b614da258a (patch) | |
tree | b6fb24d01f6eca329b0e47a91898c93620809335 /src/quicktemplates2/qquickpopup_p_p.h | |
parent | e711ce99c8cafe2e7c1d81a20a280f3029c98ccb (diff) |
QQuickPopup: fix binding loops with size-dependent positioning
Dependencies between popup's size and position easily lead to recursion
into reposition(). Blocking recursive reposition() calls messes up the
positioning, so schedule polish events instead.
Task-number: QTBUG-56755
Change-Id: I72afd14573e5cd57f8162df04e193d4c42fd7236
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src/quicktemplates2/qquickpopup_p_p.h')
-rw-r--r-- | src/quicktemplates2/qquickpopup_p_p.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/quicktemplates2/qquickpopup_p_p.h b/src/quicktemplates2/qquickpopup_p_p.h index c8c83ada..d2f16e11 100644 --- a/src/quicktemplates2/qquickpopup_p_p.h +++ b/src/quicktemplates2/qquickpopup_p_p.h @@ -87,6 +87,8 @@ public: explicit QQuickPopupItem(QQuickPopup *popup); protected: + void updatePolish() override; + bool childMouseEventFilter(QQuickItem *child, QEvent *event) override; void focusInEvent(QFocusEvent *event) override; void focusOutEvent(QFocusEvent *event) override; @@ -185,6 +187,7 @@ public: bool hasDim; bool visible; bool complete; + bool positioning; bool hasWidth; bool hasHeight; bool hasTopMargin; |