diff --git a/modules/juce_gui_basics/widgets/juce_ListBox.cpp b/modules/juce_gui_basics/widgets/juce_ListBox.cpp index 9034f44909..ed12f980ae 100644 --- a/modules/juce_gui_basics/widgets/juce_ListBox.cpp +++ b/modules/juce_gui_basics/widgets/juce_ListBox.cpp @@ -457,7 +457,7 @@ void ListBox::updateContent() if (selected.size() > 0 && selected [selected.size() - 1] >= totalItems) { - selected.removeRange (Range (totalItems, std::numeric_limits::max())); + selected.removeRange (Range (totalItems, std::numeric_limits::max())); lastRowSelected = getSelectedRow (0); selectionChanged = true; } @@ -516,7 +516,7 @@ void ListBox::deselectRow (const int row) { if (selected.contains (row)) { - selected.removeRange (Range (row, row + 1)); + selected.removeRange (Range (row, row + 1)); if (row == lastRowSelected) lastRowSelected = getSelectedRow (0); @@ -530,7 +530,7 @@ void ListBox::setSelectedRows (const SparseSet& setOfRowsToBeSelected, const NotificationType sendNotificationEventToModel) { selected = setOfRowsToBeSelected; - selected.removeRange (Range (totalItems, std::numeric_limits::max())); + selected.removeRange (Range (totalItems, std::numeric_limits::max())); if (! isRowSelected (lastRowSelected)) lastRowSelected = getSelectedRow (0); @@ -554,10 +554,10 @@ void ListBox::selectRangeOfRows (int firstRow, int lastRow) firstRow = jlimit (0, jmax (0, numRows), firstRow); lastRow = jlimit (0, jmax (0, numRows), lastRow); - selected.addRange (Range (jmin (firstRow, lastRow), - jmax (firstRow, lastRow) + 1)); + selected.addRange (Range (jmin (firstRow, lastRow), + jmax (firstRow, lastRow) + 1)); - selected.removeRange (Range (lastRow, lastRow + 1)); + selected.removeRange (Range (lastRow, lastRow + 1)); } selectRowInternal (lastRow, false, false, true); @@ -652,7 +652,7 @@ int ListBox::getInsertionIndexForPosition (const int x, const int y) const noexc Component* ListBox::getComponentForRowNumber (const int row) const noexcept { if (RowComponent* const listRowComp = viewport->getComponentForRowIfOnscreen (row)) - return static_cast (listRowComp->customComponent); + return static_cast (listRowComp->customComponent); return nullptr; } @@ -853,6 +853,11 @@ void ListBox::colourChanged() repaint(); } +void ListBox::parentHierarchyChanged() +{ + colourChanged(); +} + void ListBox::setOutlineThickness (const int newThickness) { outlineThickness = newThickness; diff --git a/modules/juce_gui_basics/widgets/juce_ListBox.h b/modules/juce_gui_basics/widgets/juce_ListBox.h index b575d1520a..b9fb24629e 100644 --- a/modules/juce_gui_basics/widgets/juce_ListBox.h +++ b/modules/juce_gui_basics/widgets/juce_ListBox.h @@ -540,6 +540,8 @@ public: /** @internal */ void colourChanged() override; /** @internal */ + void parentHierarchyChanged() override; + /** @internal */ void startDragAndDrop (const MouseEvent&, const var& dragDescription, bool allowDraggingToOtherWindows); private: