mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-02-15 07:28:30 +00:00
Do not hide navigation rail when performing multi-select in conversation list.
This commit is contained in:
@@ -321,7 +321,8 @@ class MainActivity : PassphraseRequiredActivity(), VoiceNoteMediaControllerOwner
|
||||
}
|
||||
}
|
||||
|
||||
val isNavigationVisible = mainToolbarState.mode == MainToolbarMode.FULL
|
||||
val isNavigationRailVisible = mainToolbarState.mode != MainToolbarMode.SEARCH
|
||||
val isNavigationBarVisible = mainToolbarState.mode == MainToolbarMode.FULL
|
||||
val isBackHandlerEnabled = mainToolbarState.destination != MainNavigationListLocation.CHATS
|
||||
|
||||
BackHandler(enabled = isBackHandlerEnabled) {
|
||||
@@ -430,7 +431,7 @@ class MainActivity : PassphraseRequiredActivity(), VoiceNoteMediaControllerOwner
|
||||
paneExpansionState = paneExpansionState,
|
||||
contentWindowInsets = WindowInsets(),
|
||||
bottomNavContent = {
|
||||
if (isNavigationVisible) {
|
||||
if (isNavigationBarVisible) {
|
||||
Column(
|
||||
modifier = Modifier
|
||||
.clip(contentLayoutData.navigationBarShape)
|
||||
@@ -448,7 +449,7 @@ class MainActivity : PassphraseRequiredActivity(), VoiceNoteMediaControllerOwner
|
||||
}
|
||||
},
|
||||
navRailContent = {
|
||||
if (isNavigationVisible) {
|
||||
if (isNavigationRailVisible) {
|
||||
MainNavigationRail(
|
||||
state = mainNavigationState,
|
||||
mainFloatingActionButtonsCallback = mainBottomChromeCallback,
|
||||
|
||||
@@ -877,6 +877,7 @@ public class ConversationListFragment extends MainFragment implements Conversati
|
||||
if (conversations.isEmpty()) {
|
||||
endActionModeIfActive();
|
||||
} else {
|
||||
startActionModeIfNotActive();
|
||||
updateMultiSelectState();
|
||||
}
|
||||
})
|
||||
@@ -1137,6 +1138,12 @@ public class ConversationListFragment extends MainFragment implements Conversati
|
||||
});
|
||||
}
|
||||
|
||||
private void startActionModeIfNotActive() {
|
||||
if (!mainToolbarViewModel.isInActionMode()) {
|
||||
startActionMode();
|
||||
}
|
||||
}
|
||||
|
||||
private void startActionMode() {
|
||||
ViewUtil.animateIn(bottomActionBar, bottomActionBar.getEnterAnimation());
|
||||
requireCallback().onMultiSelectStarted();
|
||||
|
||||
@@ -87,9 +87,8 @@ data class MainContentLayoutData(
|
||||
else -> 13.dp
|
||||
},
|
||||
listPaddingStart = when {
|
||||
!windowSizeClass.isSplitPane() -> 0.dp
|
||||
windowSizeClass.isExtended() -> 16.dp
|
||||
else -> 12.dp
|
||||
else -> 0.dp
|
||||
},
|
||||
detailPaddingEnd = when {
|
||||
!windowSizeClass.isSplitPane() -> 0.dp
|
||||
|
||||
Reference in New Issue
Block a user