Do not allow forwarding of unsupported content to stories.

fork-5.53.8
Alex Hart 2022-03-02 13:58:38 -04:00
rodzic 155bdf6164
commit 34bbb98c96
2 zmienionych plików z 18 dodań i 8 usunięć

Wyświetl plik

@ -269,16 +269,18 @@ class MultiselectForwardFragment :
return ContactSearchConfiguration.build {
query = contactSearchState.query
addSection(
ContactSearchConfiguration.Section.Stories(
groupStories = contactSearchState.groupStories,
includeHeader = true,
headerAction = getHeaderAction(),
expandConfig = ContactSearchConfiguration.ExpandConfig(
isExpanded = contactSearchState.expandedSections.contains(ContactSearchConfiguration.SectionKey.STORIES)
if (FeatureFlags.stories() && isSelectedMediaValidForStories()) {
addSection(
ContactSearchConfiguration.Section.Stories(
groupStories = contactSearchState.groupStories,
includeHeader = true,
headerAction = getHeaderAction(),
expandConfig = ContactSearchConfiguration.ExpandConfig(
isExpanded = contactSearchState.expandedSections.contains(ContactSearchConfiguration.SectionKey.STORIES)
)
)
)
)
}
if (query.isNullOrEmpty()) {
addSection(
@ -309,6 +311,10 @@ class MultiselectForwardFragment :
return Util.isDefaultSmsProvider(requireContext()) && requireArguments().getBoolean(ARG_CAN_SEND_TO_NON_PUSH)
}
private fun isSelectedMediaValidForStories(): Boolean {
return getMultiShareArgs().all { it.isValidForStories }
}
override fun onGroupStoryClicked() {
ChooseGroupStoryBottomSheet().show(parentFragmentManager, ChooseGroupStoryBottomSheet.GROUP_STORY)
}

Wyświetl plik

@ -126,6 +126,10 @@ public final class MultiShareArgs implements Parcelable {
return expiresAt;
}
public boolean isValidForStories() {
return !media.isEmpty() && media.stream().allMatch(m -> MediaUtil.isImageOrVideoType(m.getMimeType()) && !MediaUtil.isGif(m.getMimeType()));
}
public @NonNull InterstitialContentType getInterstitialContentType() {
if (!requiresInterstitial()) {
return InterstitialContentType.NONE;