mirror of
https://github.com/signalapp/Signal-Android.git
synced 2025-12-23 12:38:33 +00:00
Sticker Management v2 - Exit multi select mode after all items are deselected.
To match the behavior of the conversations and messages screens.
This commit is contained in:
@@ -161,9 +161,11 @@ class StickerManagementViewModel : ViewModel() {
|
|||||||
fun toggleSelection(pack: InstalledStickerPack) {
|
fun toggleSelection(pack: InstalledStickerPack) {
|
||||||
_uiState.update { previousState ->
|
_uiState.update { previousState ->
|
||||||
val wasItemSelected = previousState.selectedPackIds.contains(pack.id)
|
val wasItemSelected = previousState.selectedPackIds.contains(pack.id)
|
||||||
|
val selectedPackIds = if (wasItemSelected) previousState.selectedPackIds.minus(pack.id) else previousState.selectedPackIds.plus(pack.id)
|
||||||
|
|
||||||
previousState.copy(
|
previousState.copy(
|
||||||
multiSelectEnabled = true,
|
multiSelectEnabled = selectedPackIds.isNotEmpty(),
|
||||||
selectedPackIds = if (wasItemSelected) previousState.selectedPackIds.minus(pack.id) else previousState.selectedPackIds.plus(pack.id)
|
selectedPackIds = selectedPackIds
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user