From 27888d3de9d9ece81a66dd123216afe8596fd1a3 Mon Sep 17 00:00:00 2001 From: ed Date: Sat, 13 Oct 2018 12:47:09 +0100 Subject: [PATCH] Made Desktop::Displays::getMainDisplay() a little less restrictive --- .../juce_gui_basics/desktop/juce_Displays.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/modules/juce_gui_basics/desktop/juce_Displays.cpp b/modules/juce_gui_basics/desktop/juce_Displays.cpp index bcd1fb4f5d..dc45a2e1b6 100644 --- a/modules/juce_gui_basics/desktop/juce_Displays.cpp +++ b/modules/juce_gui_basics/desktop/juce_Displays.cpp @@ -131,8 +131,14 @@ Point Displays::logicalToPhysical (Point point, const Disp const Displays::Display& Displays::getMainDisplay() const noexcept { ASSERT_MESSAGE_MANAGER_IS_LOCKED - jassert (displays.getReference(0).isMain); - return displays.getReference(0); + + for (auto& d : displays) + if (d.isMain) + return d; + + // no main display! + jassertfalse; + return displays.getReference (0); } RectangleList Displays::getRectangleList (bool userAreasOnly) const @@ -160,7 +166,7 @@ void Displays::refresh() if (oldDisplays != displays) { - for (int i = ComponentPeer::getNumPeers(); --i >= 0;) + for (auto i = ComponentPeer::getNumPeers(); --i >= 0;) if (auto* peer = ComponentPeer::getPeer (i)) peer->handleScreenSizeChange(); } @@ -184,8 +190,8 @@ bool operator!= (const Displays::Display& d1, const Displays::Display& d2) noexc const Displays::Display& Displays::getDisplayContaining (Point position) const noexcept { ASSERT_MESSAGE_MANAGER_IS_LOCKED - auto* best = &displays.getReference(0); - double bestDistance = 1.0e10; + auto* best = &displays.getReference (0); + auto bestDistance = std::numeric_limits::max(); for (auto& d : displays) {