mirror of
https://github.com/signalapp/Signal-Android.git
synced 2026-04-29 05:04:54 +01:00
Fix issue where user could not select a group story.
This commit is contained in:
committed by
Cody Henthorne
parent
78de70881f
commit
87ad4be117
@@ -20,7 +20,6 @@ import androidx.recyclerview.widget.RecyclerView
|
||||
import com.google.android.material.dialog.MaterialAlertDialogBuilder
|
||||
import org.thoughtcrime.securesms.R
|
||||
import org.thoughtcrime.securesms.components.ContactFilterView
|
||||
import org.thoughtcrime.securesms.contacts.HeaderAction
|
||||
import org.thoughtcrime.securesms.contacts.paged.ContactSearchConfiguration
|
||||
import org.thoughtcrime.securesms.contacts.paged.ContactSearchKey
|
||||
import org.thoughtcrime.securesms.contacts.paged.ContactSearchMediator
|
||||
@@ -35,6 +34,7 @@ import org.thoughtcrime.securesms.sharing.MultiShareArgs
|
||||
import org.thoughtcrime.securesms.sharing.ShareSelectionAdapter
|
||||
import org.thoughtcrime.securesms.sharing.ShareSelectionMappingModel
|
||||
import org.thoughtcrime.securesms.stories.Stories
|
||||
import org.thoughtcrime.securesms.stories.Stories.getHeaderAction
|
||||
import org.thoughtcrime.securesms.stories.settings.create.CreateStoryFlowDialogFragment
|
||||
import org.thoughtcrime.securesms.stories.settings.create.CreateStoryWithViewersFragment
|
||||
import org.thoughtcrime.securesms.util.BottomSheetUtil
|
||||
@@ -257,17 +257,8 @@ class MultiselectForwardFragment :
|
||||
viewModel.cancelSend()
|
||||
}
|
||||
|
||||
private fun getHeaderAction(): HeaderAction {
|
||||
return HeaderAction(
|
||||
R.string.ContactsCursorLoader_new_story,
|
||||
R.drawable.ic_plus_20
|
||||
) {
|
||||
ChooseStoryTypeBottomSheet().show(childFragmentManager, BottomSheetUtil.STANDARD_BOTTOM_SHEET_FRAGMENT_TAG)
|
||||
}
|
||||
}
|
||||
|
||||
private fun getConfiguration(contactSearchState: ContactSearchState): ContactSearchConfiguration {
|
||||
return findListener<SearchConfigurationProvider>()?.getSearchConfiguration(contactSearchState) ?: ContactSearchConfiguration.build {
|
||||
return findListener<SearchConfigurationProvider>()?.getSearchConfiguration(childFragmentManager, contactSearchState) ?: ContactSearchConfiguration.build {
|
||||
query = contactSearchState.query
|
||||
|
||||
if (Stories.isFeatureEnabled() && isSelectedMediaValidForStories()) {
|
||||
@@ -275,7 +266,7 @@ class MultiselectForwardFragment :
|
||||
ContactSearchConfiguration.Section.Stories(
|
||||
groupStories = contactSearchState.groupStories,
|
||||
includeHeader = true,
|
||||
headerAction = getHeaderAction(),
|
||||
headerAction = getHeaderAction(childFragmentManager),
|
||||
expandConfig = ContactSearchConfiguration.ExpandConfig(
|
||||
isExpanded = contactSearchState.expandedSections.contains(ContactSearchConfiguration.SectionKey.STORIES)
|
||||
)
|
||||
|
||||
@@ -1,8 +1,18 @@
|
||||
package org.thoughtcrime.securesms.conversation.mutiselect.forward
|
||||
|
||||
import androidx.fragment.app.FragmentManager
|
||||
import org.thoughtcrime.securesms.contacts.paged.ContactSearchConfiguration
|
||||
import org.thoughtcrime.securesms.contacts.paged.ContactSearchState
|
||||
|
||||
/**
|
||||
* Allows a parent of MultiselectForwardFragment to provide a custom search page configuration.
|
||||
*/
|
||||
interface SearchConfigurationProvider {
|
||||
fun getSearchConfiguration(contactSearchState: ContactSearchState): ContactSearchConfiguration? = null
|
||||
/**
|
||||
* @param fragmentManager The child fragment manager of the MultiselectForwardFragment, to launch actions in to.
|
||||
* @param contactSearchState The search state, to build the configuration from.
|
||||
*
|
||||
* @return A configuration or null. Returning null will result in MultiselectForwardFragment using it's default configuration.
|
||||
*/
|
||||
fun getSearchConfiguration(fragmentManager: FragmentManager, contactSearchState: ContactSearchState): ContactSearchConfiguration? = null
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user