Support Qt::WindowMaximizeButtonHint in QWasmWindow
Change-Id: I1089ab4706c4342fa5976b1aff18d67d47769687 Reviewed-by: Aleksandr Reviakin <aleksandr.reviakin@qt.io> Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>bb10
parent
9ea00c70fb
commit
ae51eeb0bb
|
|
@ -362,6 +362,8 @@ void QWasmWindow::setWindowFlags(Qt::WindowFlags flags)
|
|||
dom::syncCSSClassWith(m_qtWindow, "has-shadow", !flags.testFlag(Qt::NoDropShadowWindowHint));
|
||||
dom::syncCSSClassWith(m_qtWindow, "transparent-for-input",
|
||||
flags.testFlag(Qt::WindowTransparentForInput));
|
||||
|
||||
m_nonClientArea->titleBar()->setMaximizeVisible(hasMaximizeButton());
|
||||
}
|
||||
|
||||
void QWasmWindow::setWindowState(Qt::WindowStates newState)
|
||||
|
|
@ -422,7 +424,7 @@ void QWasmWindow::applyWindowState()
|
|||
dom::syncCSSClassWith(m_qtWindow, "maximized", isMaximized);
|
||||
|
||||
m_nonClientArea->titleBar()->setRestoreVisible(isMaximized);
|
||||
m_nonClientArea->titleBar()->setMaximizeVisible(!isMaximized);
|
||||
m_nonClientArea->titleBar()->setMaximizeVisible(hasMaximizeButton());
|
||||
|
||||
if (isVisible())
|
||||
QWindowSystemInterface::handleWindowStateChanged(window(), m_state, m_previousWindowState);
|
||||
|
|
@ -521,6 +523,11 @@ bool QWasmWindow::hasTitleBar() const
|
|||
&& !windowIsPopupType(m_flags);
|
||||
}
|
||||
|
||||
bool QWasmWindow::hasMaximizeButton() const
|
||||
{
|
||||
return !m_state.testFlag(Qt::WindowMaximized) && m_flags.testFlag(Qt::WindowMaximizeButtonHint);
|
||||
}
|
||||
|
||||
bool QWasmWindow::windowIsPopupType(Qt::WindowFlags flags) const
|
||||
{
|
||||
if (flags.testFlag(Qt::Tool))
|
||||
|
|
|
|||
|
|
@ -92,6 +92,7 @@ private:
|
|||
|
||||
void invalidate();
|
||||
bool hasTitleBar() const;
|
||||
bool hasMaximizeButton() const;
|
||||
void applyWindowState();
|
||||
|
||||
bool processPointer(const PointerEvent &event);
|
||||
|
|
|
|||
Loading…
Reference in New Issue