applying api changes

This commit is contained in:
Adam Brown 2022-05-20 15:20:24 +01:00
parent 271bc91303
commit 2d351aa60f
2 changed files with 13 additions and 13 deletions

View File

@ -16,7 +16,7 @@
package im.vector.app.core.utils package im.vector.app.core.utils
import com.vanniktech.emoji.EmojiUtils import com.vanniktech.emoji.isOnlyEmojis
/** /**
* Test if a string contains emojis. * Test if a string contains emojis.
@ -28,7 +28,7 @@ import com.vanniktech.emoji.EmojiUtils
*/ */
fun containsOnlyEmojis(str: String?): Boolean { fun containsOnlyEmojis(str: String?): Boolean {
// Now rely on vanniktech library // Now rely on vanniktech library
return EmojiUtils.isOnlyEmojis(str) return str.isOnlyEmojis()
} }
/** /**

View File

@ -706,31 +706,31 @@ class TimelineFragment @Inject constructor(
} }
private fun createEmojiPopup(): EmojiPopup { private fun createEmojiPopup(): EmojiPopup {
return EmojiPopup return EmojiPopup(
.Builder rootView = views.rootConstraintLayout,
.fromRootView(views.rootConstraintLayout) keyboardAnimationStyle = R.style.emoji_fade_animation_style,
.setKeyboardAnimationStyle(R.style.emoji_fade_animation_style) onEmojiPopupShownListener = {
.setOnEmojiPopupShownListener {
views.composerLayout.views.composerEmojiButton.apply { views.composerLayout.views.composerEmojiButton.apply {
contentDescription = getString(R.string.a11y_close_emoji_picker) contentDescription = getString(R.string.a11y_close_emoji_picker)
setImageResource(R.drawable.ic_keyboard) setImageResource(R.drawable.ic_keyboard)
} }
} },
.setOnEmojiPopupDismissListenerLifecycleAware { onEmojiPopupDismissListener = lifecycleAwareDismissAction {
views.composerLayout.views.composerEmojiButton.apply { views.composerLayout.views.composerEmojiButton.apply {
contentDescription = getString(R.string.a11y_open_emoji_picker) contentDescription = getString(R.string.a11y_open_emoji_picker)
setImageResource(R.drawable.ic_insert_emoji) setImageResource(R.drawable.ic_insert_emoji)
} }
} },
.build(views.composerLayout.views.composerEditText) editText = views.composerLayout.views.composerEditText
)
} }
/** /**
* Ensure dismiss actions only trigger when the fragment is in the started state. * Ensure dismiss actions only trigger when the fragment is in the started state.
* EmojiPopup by default dismisses onViewDetachedFromWindow, this can cause race conditions with onDestroyView. * EmojiPopup by default dismisses onViewDetachedFromWindow, this can cause race conditions with onDestroyView.
*/ */
private fun EmojiPopup.Builder.setOnEmojiPopupDismissListenerLifecycleAware(action: () -> Unit): EmojiPopup.Builder { private fun lifecycleAwareDismissAction(action: () -> Unit): () -> Unit {
return setOnEmojiPopupDismissListener { return {
if (lifecycle.currentState.isAtLeast(Lifecycle.State.STARTED)) { if (lifecycle.currentState.isAtLeast(Lifecycle.State.STARTED)) {
action() action()
} }