Disable stickers and gifs when editing message.

This commit is contained in:
Clark 2023-06-08 14:10:53 -04:00 committed by Cody Henthorne
parent 02c4bbe816
commit 369ca189d3
2 changed files with 16 additions and 1 deletions

View file

@ -304,6 +304,7 @@ import org.whispersystems.signalservice.api.SignalSessionLock;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
import java.util.List;
import java.util.Locale;
import java.util.Objects;
@ -449,6 +450,7 @@ public class ConversationParentFragment extends Fragment
private GroupCallViewModel groupCallViewModel;
private VoiceRecorderWakeLock voiceRecorderWakeLock;
private DraftViewModel draftViewModel;
private KeyboardPagerViewModel keyboardPagerViewModel;
private VoiceNoteMediaController voiceNoteMediaController;
private VoiceNotePlayerView voiceNotePlayerView;
private Material3OnScrollHelper material3OnScrollHelper;
@ -472,6 +474,8 @@ public class ConversationParentFragment extends Fragment
private ConversationOptionsMenu.Provider menuProvider;
private Set<KeyboardPage> previousPages;
public static ConversationParentFragment create(Intent intent) {
ConversationParentFragment fragment = new ConversationParentFragment();
Bundle bundle = new Bundle();
@ -2724,7 +2728,7 @@ public class ConversationParentFragment extends Fragment
}
private void initializeMediaKeyboardProviders() {
KeyboardPagerViewModel keyboardPagerViewModel = new ViewModelProvider(requireActivity()).get(KeyboardPagerViewModel.class);
keyboardPagerViewModel = new ViewModelProvider(requireActivity()).get(KeyboardPagerViewModel.class);
switch (TextSecurePreferences.getMediaKeyboardMode(requireContext())) {
case EMOJI:
@ -4234,12 +4238,19 @@ public class ConversationParentFragment extends Fragment
@Override
public void onEnterEditMode() {
updateToggleButtonState();
previousPages = keyboardPagerViewModel.pages().getValue();
keyboardPagerViewModel.setOnlyPage(KeyboardPage.EMOJI);
onKeyboardChanged(KeyboardPage.EMOJI);
}
@Override
public void onExitEditMode() {
updateToggleButtonState();
draftViewModel.deleteMessageEditDraft();
if (previousPages != null) {
keyboardPagerViewModel.setPages(previousPages);
previousPages = null;
}
}
@Override

View file

@ -37,6 +37,10 @@ class KeyboardPagerViewModel : ViewModel() {
fun page(): LiveData<KeyboardPage> = page
fun pages(): LiveData<Set<KeyboardPage>> = pages
fun setPages(pageOverride: Set<KeyboardPage>) {
pages.value = pageOverride
}
@MainThread
fun setOnlyPage(page: KeyboardPage) {
pages.value = setOf(page)