addItem method

void addItem(
  1. T item
)

Adds an item to the selection.

Implementation

void addItem(T item) {
  if (isMaxSelectionsReached) return;

  if (_keyExtractor != null) {
    final key = _keyExtractor!(item);
    if (_selectedKeys.contains(key)) return;

    _selectedItems.add(item);
    _selectedKeys.add(key);
    _pendingKeys.remove(key);
  } else {
    if (_selectedItems.contains(item)) return;
    _selectedItems.add(item);
  }

  _notifySelectionChanged();

  // Clear search after selection for next search
  clearSearch();
  notifyListeners();
}