kopia lustrzana https://github.com/ryukoposting/Signal-Android
Hide view once for story first sending.
rodzic
f17f45f277
commit
ae28df901f
|
@ -77,7 +77,7 @@ class MediaSelectionActivity :
|
||||||
val message: CharSequence? = intent.getCharSequenceExtra(MESSAGE)
|
val message: CharSequence? = intent.getCharSequenceExtra(MESSAGE)
|
||||||
val isReply: Boolean = intent.getBooleanExtra(IS_REPLY, false)
|
val isReply: Boolean = intent.getBooleanExtra(IS_REPLY, false)
|
||||||
|
|
||||||
val factory = MediaSelectionViewModel.Factory(destination, transportOption, initialMedia, message, isReply, MediaSelectionRepository(this))
|
val factory = MediaSelectionViewModel.Factory(destination, transportOption, initialMedia, message, isReply, isStory, MediaSelectionRepository(this))
|
||||||
viewModel = ViewModelProvider(this, factory)[MediaSelectionViewModel::class.java]
|
viewModel = ViewModelProvider(this, factory)[MediaSelectionViewModel::class.java]
|
||||||
|
|
||||||
val textStoryToggle: ConstraintLayout = findViewById(R.id.switch_widget)
|
val textStoryToggle: ConstraintLayout = findViewById(R.id.switch_widget)
|
||||||
|
|
|
@ -21,7 +21,8 @@ data class MediaSelectionState(
|
||||||
val isPreUploadEnabled: Boolean = false,
|
val isPreUploadEnabled: Boolean = false,
|
||||||
val isMeteredConnection: Boolean = false,
|
val isMeteredConnection: Boolean = false,
|
||||||
val editorStateMap: Map<Uri, Any> = mapOf(),
|
val editorStateMap: Map<Uri, Any> = mapOf(),
|
||||||
val cameraFirstCapture: Media? = null
|
val cameraFirstCapture: Media? = null,
|
||||||
|
val isStory: Boolean
|
||||||
) {
|
) {
|
||||||
|
|
||||||
val maxSelection = if (transportOption.isSms) {
|
val maxSelection = if (transportOption.isSms) {
|
||||||
|
|
|
@ -34,13 +34,15 @@ class MediaSelectionViewModel(
|
||||||
initialMedia: List<Media>,
|
initialMedia: List<Media>,
|
||||||
initialMessage: CharSequence?,
|
initialMessage: CharSequence?,
|
||||||
val isReply: Boolean,
|
val isReply: Boolean,
|
||||||
|
isStory: Boolean,
|
||||||
private val repository: MediaSelectionRepository
|
private val repository: MediaSelectionRepository
|
||||||
) : ViewModel() {
|
) : ViewModel() {
|
||||||
|
|
||||||
private val store: Store<MediaSelectionState> = Store(
|
private val store: Store<MediaSelectionState> = Store(
|
||||||
MediaSelectionState(
|
MediaSelectionState(
|
||||||
transportOption = transportOption,
|
transportOption = transportOption,
|
||||||
message = initialMessage
|
message = initialMessage,
|
||||||
|
isStory = isStory
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -420,10 +422,11 @@ class MediaSelectionViewModel(
|
||||||
private val initialMedia: List<Media>,
|
private val initialMedia: List<Media>,
|
||||||
private val initialMessage: CharSequence?,
|
private val initialMessage: CharSequence?,
|
||||||
private val isReply: Boolean,
|
private val isReply: Boolean,
|
||||||
|
private val isStory: Boolean,
|
||||||
private val repository: MediaSelectionRepository
|
private val repository: MediaSelectionRepository
|
||||||
) : ViewModelProvider.Factory {
|
) : ViewModelProvider.Factory {
|
||||||
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
override fun <T : ViewModel?> create(modelClass: Class<T>): T {
|
||||||
return requireNotNull(modelClass.cast(MediaSelectionViewModel(destination, transportOption, initialMedia, initialMessage, isReply, repository)))
|
return requireNotNull(modelClass.cast(MediaSelectionViewModel(destination, transportOption, initialMedia, initialMessage, isReply, isStory, repository)))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -367,7 +367,7 @@ class MediaReviewFragment : Fragment(R.layout.v2_media_review_fragment) {
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun computeViewOnceButtonAnimators(state: MediaSelectionState): List<Animator> {
|
private fun computeViewOnceButtonAnimators(state: MediaSelectionState): List<Animator> {
|
||||||
return if (state.isTouchEnabled && state.selectedMedia.size == 1) {
|
return if (state.isTouchEnabled && state.selectedMedia.size == 1 && !state.isStory) {
|
||||||
listOf(MediaReviewAnimatorController.getFadeInAnimator(viewOnceButton))
|
listOf(MediaReviewAnimatorController.getFadeInAnimator(viewOnceButton))
|
||||||
} else {
|
} else {
|
||||||
listOf(MediaReviewAnimatorController.getFadeOutAnimator(viewOnceButton))
|
listOf(MediaReviewAnimatorController.getFadeOutAnimator(viewOnceButton))
|
||||||
|
|
Ładowanie…
Reference in New Issue