in lib/ui/aliplayer_setting_menu_panel.dart [261:281]
bool _areSettingItemsEqual(
List<SettingItem>? oldItems,
List<SettingItem>? newItems,
) {
// Handle null values.
if (oldItems == null || newItems == null) {
return oldItems == newItems; // Both null or one is null.
}
// Return true if the references are identical.
if (identical(oldItems, newItems)) return true;
// Return false if lengths differ.
if (oldItems.length != newItems.length) return false;
// Compare each element using Iterable.every.
return oldItems
.asMap()
.entries
.every((entry) => entry.value.isEqualTo(newItems[entry.key]));
}