diff --git a/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt b/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt index cdf3ee1b4..d8d658ffe 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/ChatController.kt @@ -712,11 +712,6 @@ class ChatController(args: Bundle) : BaseController(), MessagesListAdapter } } - override fun onChangeStarted(changeHandler: ControllerChangeHandler, changeType: ControllerChangeType) { - actionBar?.setIcon(null) - super.onChangeStarted(changeHandler, changeType) - } - override fun onDetach(view: View) { eventBus.unregister(this) diff --git a/app/src/main/java/com/nextcloud/talk/controllers/base/BaseController.kt b/app/src/main/java/com/nextcloud/talk/controllers/base/BaseController.kt index 713199fc8..71d7bb7e0 100644 --- a/app/src/main/java/com/nextcloud/talk/controllers/base/BaseController.kt +++ b/app/src/main/java/com/nextcloud/talk/controllers/base/BaseController.kt @@ -64,8 +64,6 @@ abstract class BaseController : ButterKnifeController(), ComponentCallbacks { val context: Context by inject() val eventBus: EventBus by inject() - // Note: This is just a quick demo of how an ActionBar *can* be accessed, not necessarily how it *should* - // be accessed. In a production app, this would use Dagger instead. protected val actionBar: ActionBar? get() { var actionBarProvider: ActionBarProvider? = null @@ -100,6 +98,16 @@ abstract class BaseController : ButterKnifeController(), ComponentCallbacks { } } + override fun onChangeStarted(changeHandler: ControllerChangeHandler, changeType: ControllerChangeType) { + setOptionsMenuHidden(true) + super.onChangeStarted(changeHandler, changeType) + } + + override fun onChangeEnded(changeHandler: ControllerChangeHandler, changeType: ControllerChangeType) { + setOptionsMenuHidden(false) + super.onChangeEnded(changeHandler, changeType) + } + private fun showSearchOrToolbar() { val value = getIsUsingSearchLayout() activity?.let { diff --git a/app/src/main/java/com/nextcloud/talk/newarch/features/conversationsList/ConversationsListView.kt b/app/src/main/java/com/nextcloud/talk/newarch/features/conversationsList/ConversationsListView.kt index 078e73e48..3a72e9ace 100644 --- a/app/src/main/java/com/nextcloud/talk/newarch/features/conversationsList/ConversationsListView.kt +++ b/app/src/main/java/com/nextcloud/talk/newarch/features/conversationsList/ConversationsListView.kt @@ -29,6 +29,8 @@ import butterknife.OnClick import com.afollestad.materialdialogs.LayoutMode import com.afollestad.materialdialogs.MaterialDialog import com.afollestad.materialdialogs.bottomsheets.BottomSheet +import com.bluelinelabs.conductor.ControllerChangeHandler +import com.bluelinelabs.conductor.ControllerChangeType import com.bluelinelabs.conductor.RouterTransaction import com.bluelinelabs.conductor.autodispose.ControllerScopeProvider import com.bluelinelabs.conductor.changehandler.HorizontalChangeHandler @@ -125,19 +127,15 @@ class ConversationsListView : BaseView() { viewModel.filterLiveData.observe(this@ConversationsListView) {query -> activity?.settingsButton?.isVisible = query.isNullOrEmpty() activity?.clearButton?.isVisible = !query.isNullOrEmpty() - if (query.isNullOrEmpty()) { - if (floatingActionButton?.isOrWillBeShown == false) { - floatingActionButton?.show() - } - } else { - if (floatingActionButton?.isOrWillBeHidden == false) { - floatingActionButton?.hide() - } - } } return view } + override fun onChangeStarted(changeHandler: ControllerChangeHandler, changeType: ControllerChangeType) { + actionBar?.setIcon(null) + super.onChangeStarted(changeHandler, changeType) + } + private fun setSearchQuery(query: CharSequence?) { viewModel.filterLiveData.value = query } diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index db2c23f10..157a97ad1 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -24,7 +24,8 @@ android:id="@+id/mainActivityCoordinatorLayout" android:layout_width="match_parent" android:layout_height="match_parent" - tools:context=".activities.MainActivity"> + tools:context=".activities.MainActivity" + android:animateLayoutChanges="true">