removeItem method
Removes an item at the given index.
Implementation
void removeItem(int index) {
if (index >= 0 && index < _items.length) {
_items.removeAt(index);
if (_filterState != FilterState.unfiltered) {
_filteredItems.removeWhere((f) => f.index == index);
// Update indices of remaining filtered items
for (var i = 0; i < _filteredItems.length; i++) {
if (_filteredItems[i].index > index) {
_filteredItems[i] = FilteredItem(
index: _filteredItems[i].index - 1,
item: _filteredItems[i].item,
matches: _filteredItems[i].matches,
);
}
}
if (_filteredItems.isEmpty) {
_resetFiltering();
}
}
_updatePagination();
updateKeybindings();
}
}