bool _areSettingItemsEqual()

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]));
  }