Merge pull request #2712 from vector-im/feature/ons/fix_viewbinding_crashes

Fix viewbinding NPE crashes
This commit is contained in:
Benoit Marty 2021-01-22 16:53:56 +01:00 committed by GitHub
commit dc48cd4d16
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 9 additions and 3 deletions

View file

@ -10,6 +10,7 @@ Improvements 🙌:
Bugfix 🐛: Bugfix 🐛:
- Fix clear cache issue: sometimes, after a clear cache, there is still a token, so the init sync service is not started. - Fix clear cache issue: sometimes, after a clear cache, there is still a token, so the init sync service is not started.
- Sidebar too large in horizontal orientation or tablets (#475) - Sidebar too large in horizontal orientation or tablets (#475)
- Crashes reported by PlayStore (new in 1.0.14) (#2707)
Translations 🗣: Translations 🗣:
- -

View file

@ -196,6 +196,8 @@ class UiAllScreensSanityTest {
pressBack() pressBack()
clickMenu(R.id.video_call) clickMenu(R.id.video_call)
pressBack() pressBack()
clickMenu(R.id.search)
pressBack()
pressBack() pressBack()
} }

View file

@ -297,6 +297,8 @@ class RoomDetailFragment @Inject constructor(
private var lockSendButton = false private var lockSendButton = false
private val activeCallViewHolder = ActiveCallViewHolder() private val activeCallViewHolder = ActiveCallViewHolder()
private lateinit var emojiPopup: EmojiPopup
override fun onViewCreated(view: View, savedInstanceState: Bundle?) { override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState) super.onViewCreated(view, savedInstanceState)
sharedActionViewModel = activityViewModelProvider.get(MessageSharedActionViewModel::class.java) sharedActionViewModel = activityViewModelProvider.get(MessageSharedActionViewModel::class.java)
@ -512,7 +514,7 @@ class RoomDetailFragment @Inject constructor(
} }
private fun setupEmojiPopup() { private fun setupEmojiPopup() {
val emojiPopup = EmojiPopup emojiPopup = EmojiPopup
.Builder .Builder
.fromRootView(views.rootConstraintLayout) .fromRootView(views.rootConstraintLayout)
.setKeyboardAnimationStyle(R.style.emoji_fade_animation_style) .setKeyboardAnimationStyle(R.style.emoji_fade_animation_style)
@ -591,6 +593,7 @@ class RoomDetailFragment @Inject constructor(
autoCompleter.clear() autoCompleter.clear()
debouncer.cancelAll() debouncer.cancelAll()
views.timelineRecyclerView.cleanup() views.timelineRecyclerView.cleanup()
emojiPopup.dismiss()
super.onDestroyView() super.onDestroyView()
} }

View file

@ -76,10 +76,10 @@ class SearchFragment @Inject constructor(
controller.listener = this controller.listener = this
} }
override fun onDestroy() { override fun onDestroyView() {
super.onDestroy()
views.searchResultRecycler.cleanup() views.searchResultRecycler.cleanup()
controller.listener = null controller.listener = null
super.onDestroyView()
} }
override fun invalidate() = withState(searchViewModel) { state -> override fun invalidate() = withState(searchViewModel) { state ->