diff --git a/modules/juce_gui_basics/native/juce_linux_Windowing.cpp b/modules/juce_gui_basics/native/juce_linux_Windowing.cpp index da1fd0cdbd..e45a593e6b 100644 --- a/modules/juce_gui_basics/native/juce_linux_Windowing.cpp +++ b/modules/juce_gui_basics/native/juce_linux_Windowing.cpp @@ -1184,10 +1184,7 @@ public: void toBehind (ComponentPeer* other) override { - LinuxComponentPeer* const otherPeer = dynamic_cast (other); - jassert (otherPeer != nullptr); // wrong type of window? - - if (otherPeer != nullptr) + if (LinuxComponentPeer* const otherPeer = dynamic_cast (other)) { setMinimised (false); @@ -1196,6 +1193,8 @@ public: ScopedXLock xlock; XRestackWindows (display, newStack, 2); } + else + jassertfalse; // wrong type of window? } bool isFocused() const override @@ -1227,7 +1226,7 @@ public: void repaint (const Rectangle& area) override { - repainter->repaint (area.getIntersection (component.getLocalBounds())); + repainter->repaint (area.getIntersection (bounds.withZeroOrigin())); } void performAnyPendingRepaintsNow() override @@ -3378,7 +3377,7 @@ void* MouseCursor::createStandardMouseCursor (MouseCursor::StandardCursorType ty void MouseCursor::showInWindow (ComponentPeer* peer) const { - if (LinuxComponentPeer* const lp = dynamic_cast (peer)) + if (LinuxComponentPeer* const lp = dynamic_cast (peer)) lp->showMouseCursor ((Cursor) getHandle()); } @@ -3402,7 +3401,7 @@ bool DragAndDropContainer::performExternalDragDropOfFiles (const StringArray& fi if (MouseInputSource* draggingSource = Desktop::getInstance().getDraggingMouseSource(0)) if (Component* sourceComp = draggingSource->getComponentUnderMouse()) - if (LinuxComponentPeer* const lp = dynamic_cast (sourceComp->getPeer())) + if (LinuxComponentPeer* const lp = dynamic_cast (sourceComp->getPeer())) return lp->externalDragFileInit (files, canMoveFiles); // This method must be called in response to a component's mouseDown or mouseDrag event! @@ -3417,7 +3416,7 @@ bool DragAndDropContainer::performExternalDragDropOfText (const String& text) if (MouseInputSource* draggingSource = Desktop::getInstance().getDraggingMouseSource(0)) if (Component* sourceComp = draggingSource->getComponentUnderMouse()) - if (LinuxComponentPeer* const lp = dynamic_cast (sourceComp->getPeer())) + if (LinuxComponentPeer* const lp = dynamic_cast (sourceComp->getPeer())) return lp->externalDragTextInit (text); // This method must be called in response to a component's mouseDown or mouseDrag event!