diff --git a/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp b/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp index 7aa03ee4ae..341acaa6ec 100644 --- a/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp +++ b/modules/juce_gui_basics/windows/juce_ResizableWindow.cpp @@ -335,9 +335,7 @@ void ResizableWindow::setConstrainer (ComponentBoundsConstrainer* newConstrainer resizableBorder = nullptr; setResizable (shouldBeResizable, useBottomRightCornerResizer); - - if (ComponentPeer* const peer = getPeer()) - peer->setConstrainer (newConstrainer); + updatePeerConstrainer(); } } @@ -384,9 +382,7 @@ void ResizableWindow::lookAndFeelChanged() if (isOnDesktop()) { Component::addToDesktop (getDesktopWindowStyleFlags()); - - if (ComponentPeer* const peer = getPeer()) - peer->setConstrainer (constrainer); + updatePeerConstrainer(); } } @@ -492,7 +488,10 @@ bool ResizableWindow::isKioskMode() const void ResizableWindow::updateLastPosIfShowing() { if (isShowing()) + { updateLastPosIfNotFullScreen(); + updatePeerConstrainer(); + } } void ResizableWindow::updateLastPosIfNotFullScreen() @@ -501,6 +500,13 @@ void ResizableWindow::updateLastPosIfNotFullScreen() lastNonFullScreenPos = getBounds(); } +void ResizableWindow::updatePeerConstrainer() +{ + if (isOnDesktop()) + if (ComponentPeer* const peer = getPeer()) + peer->setConstrainer (constrainer); +} + void ResizableWindow::parentSizeChanged() { if (isFullScreen() && getParentComponent() != nullptr) diff --git a/modules/juce_gui_basics/windows/juce_ResizableWindow.h b/modules/juce_gui_basics/windows/juce_ResizableWindow.h index aff66092ea..a8f0bf429c 100644 --- a/modules/juce_gui_basics/windows/juce_ResizableWindow.h +++ b/modules/juce_gui_basics/windows/juce_ResizableWindow.h @@ -395,6 +395,7 @@ private: void updateLastPosIfNotFullScreen(); void updateLastPosIfShowing(); void setContent (Component*, bool takeOwnership, bool resizeToFit); + void updatePeerConstrainer(); #if JUCE_CATCH_DEPRECATED_CODE_MISUSE // The parameters for these methods have changed - please update your code!