diff options
author | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2024-01-17 19:18:08 +0100 |
---|---|---|
committer | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2024-01-31 15:19:49 +0100 |
commit | 4634fbf34e1674846e1666bcdb3055f82e3096b0 (patch) | |
tree | c25474cdd61f7f6dffac4e56fd3bf82b95df279d /src/widgets/widgets | |
parent | 6efc95b699a0b9066c34611f6441a13eabec1b84 (diff) |
Add QWidgetPrivate::isExplicitlyHidden() helper function
To aid readability.
Task-number: QTBUG-121398
Pick-to: 6.7
Change-Id: I3cb231584c2b7aee72e9f01c669fed1e01fbe475
Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
Diffstat (limited to 'src/widgets/widgets')
-rw-r--r-- | src/widgets/widgets/qsizegrip.cpp | 4 | ||||
-rw-r--r-- | src/widgets/widgets/qsplitter.cpp | 2 | ||||
-rw-r--r-- | src/widgets/widgets/qstatusbar.cpp | 4 |
3 files changed, 5 insertions, 5 deletions
diff --git a/src/widgets/widgets/qsizegrip.cpp b/src/widgets/widgets/qsizegrip.cpp index 8d23784f39..2500983450 100644 --- a/src/widgets/widgets/qsizegrip.cpp +++ b/src/widgets/widgets/qsizegrip.cpp @@ -75,7 +75,7 @@ public: void _q_showIfNotHidden() { Q_Q(QSizeGrip); - bool showSizeGrip = !(q->isHidden() && q->testAttribute(Qt::WA_WState_ExplicitShowHide)); + bool showSizeGrip = !isExplicitlyHidden(); updateTopLevelWidget(); if (tlw && showSizeGrip) { Qt::WindowStates sizeGripNotVisibleState = Qt::WindowFullScreen; @@ -451,7 +451,7 @@ void QSizeGrip::setVisible(bool visible) bool QSizeGrip::eventFilter(QObject *o, QEvent *e) { Q_D(QSizeGrip); - if ((isHidden() && testAttribute(Qt::WA_WState_ExplicitShowHide)) + if (d->isExplicitlyHidden() || e->type() != QEvent::WindowStateChange || o != d->tlw) { return QWidget::eventFilter(o, e); diff --git a/src/widgets/widgets/qsplitter.cpp b/src/widgets/widgets/qsplitter.cpp index 84c3799494..d0519a56a2 100644 --- a/src/widgets/widgets/qsplitter.cpp +++ b/src/widgets/widgets/qsplitter.cpp @@ -709,7 +709,7 @@ void QSplitterPrivate::setSizes_helper(const QList<int> &sizes, bool clampNegati bool QSplitterPrivate::shouldShowWidget(const QWidget *w) const { Q_Q(const QSplitter); - return q->isVisible() && !(w->isHidden() && w->testAttribute(Qt::WA_WState_ExplicitShowHide)); + return q->isVisible() && !QWidgetPrivate::get(w)->isExplicitlyHidden(); } void QSplitterPrivate::setGeo(QSplitterLayoutStruct *sls, int p, int s, bool allowCollapse) diff --git a/src/widgets/widgets/qstatusbar.cpp b/src/widgets/widgets/qstatusbar.cpp index 871eace58f..e398f52ac4 100644 --- a/src/widgets/widgets/qstatusbar.cpp +++ b/src/widgets/widgets/qstatusbar.cpp @@ -271,7 +271,7 @@ int QStatusBar::insertWidget(int index, QWidget *widget, int stretch) widget->hide(); reformat(); - if (!widget->isHidden() || !widget->testAttribute(Qt::WA_WState_ExplicitShowHide)) + if (!QWidgetPrivate::get(widget)->isExplicitlyHidden()) widget->show(); return index; @@ -332,7 +332,7 @@ int QStatusBar::insertPermanentWidget(int index, QWidget *widget, int stretch) d->items.insert(index, item); reformat(); - if (!widget->isHidden() || !widget->testAttribute(Qt::WA_WState_ExplicitShowHide)) + if (!QWidgetPrivate::get(widget)->isExplicitlyHidden()) widget->show(); return index; |