diff --git a/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt b/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt
index adcda22ab..6592db7a2 100644
--- a/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt
+++ b/app/src/main/java/com/nextcloud/talk/activities/MainActivity.kt
@@ -39,6 +39,7 @@ import com.google.android.material.appbar.MaterialToolbar
 import com.nextcloud.talk.R
 import com.nextcloud.talk.controllers.CallNotificationController
 import com.nextcloud.talk.controllers.LockedController
+import com.nextcloud.talk.controllers.base.BaseController
 import com.nextcloud.talk.controllers.base.providers.ActionBarProvider
 import com.nextcloud.talk.newarch.domain.repository.offline.UsersRepository
 import com.nextcloud.talk.newarch.features.account.serverentry.ServerEntryView
@@ -100,7 +101,13 @@ class MainActivity : BaseActivity(), ActionBarProvider {
 
     @OnClick(R.id.floatingActionButton)
     fun onFloatingActionButtonClick() {
-        openNewConversationScreen()
+        val backstack = router?.backstack
+        backstack?.let {
+            if (it.size > 0) {
+                val currentController = it[it.size - 1].controller() as BaseController
+                currentController.onFloatingActionButtonClick()
+            }
+        }
     }
 
     override fun onStart() {
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 c4355e29a..af202aa5f 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
@@ -51,6 +51,10 @@ import org.koin.android.ext.android.inject
 import java.util.*
 
 abstract class BaseController : ButterKnifeController(), ComponentCallbacks {
+    public enum class AppBarLayoutType {
+        TOOLBAR,
+        SEARCH_BAR
+    }
 
     open val scopeProvider: LifecycleScopeProvider<*> = ControllerScopeProvider.from(this)
 
@@ -105,12 +109,12 @@ abstract class BaseController : ButterKnifeController(), ComponentCallbacks {
     }
 
     private fun showSearchOrToolbar() {
-        val value = getIsUsingSearchLayout()
+        val value = getAppBarLayoutType() == AppBarLayoutType.SEARCH_BAR
         activity?.let {
             if (it is MainActivity) {
                 it.searchCardView?.isVisible = value
                 it.floatingActionButton?.isVisible = value
-                it.toolbar.isVisible = !value
+                it.toolbar?.isVisible = !value
 
                 val layoutParams = it.searchCardView?.layoutParams as AppBarLayout.LayoutParams
 
@@ -146,7 +150,7 @@ abstract class BaseController : ButterKnifeController(), ComponentCallbacks {
             disableKeyboardPersonalisedLearning(view as ViewGroup)
 
             activity?.let {
-                if (it is MainActivity && getIsUsingSearchLayout()) {
+                if (it is MainActivity) {
                     disableKeyboardPersonalisedLearning(it.appBar)
                 }
             }
@@ -178,7 +182,7 @@ abstract class BaseController : ButterKnifeController(), ComponentCallbacks {
 
         val title = getTitle()
         val actionBar = actionBar
-        if (title != null && actionBar != null && !getIsUsingSearchLayout()) {
+        if (title != null && actionBar != null && getAppBarLayoutType() == AppBarLayoutType.TOOLBAR) {
             actionBar.title = title
         } else if (title != null && activity is MainActivity) {
             activity?.inputEditText?.hint = title
@@ -216,5 +220,8 @@ abstract class BaseController : ButterKnifeController(), ComponentCallbacks {
         return null
     }
 
-    open fun getIsUsingSearchLayout(): Boolean = false
+    open fun onFloatingActionButtonClick() {
+    }
+
+    open fun getAppBarLayoutType(): AppBarLayoutType = AppBarLayoutType.TOOLBAR
 }
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 fb72c55b3..7bfb21fe2 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
@@ -48,6 +48,7 @@ import com.nextcloud.talk.controllers.bottomsheet.items.BasicListItemWithImage
 import com.nextcloud.talk.controllers.bottomsheet.items.listItemsWithImage
 import com.nextcloud.talk.models.json.conversations.Conversation
 import com.nextcloud.talk.newarch.data.presenters.AdvancedEmptyPresenter
+import com.nextcloud.talk.newarch.features.contactsflow.ContactsView
 import com.nextcloud.talk.newarch.features.search.DebouncingTextWatcher
 import com.nextcloud.talk.newarch.mvvm.BaseView
 import com.nextcloud.talk.newarch.mvvm.ext.initRecyclerView
@@ -287,8 +288,15 @@ class ConversationsListView : BaseView() {
         return items
     }
 
-    override fun getIsUsingSearchLayout(): Boolean {
-        return true
+    override fun onFloatingActionButtonClick() {
+        router?.pushController(
+                RouterTransaction.with(ContactsView<Any>())
+                        .pushChangeHandler(HorizontalChangeHandler())
+                        .popChangeHandler(HorizontalChangeHandler()))
+    }
+
+    override fun getAppBarLayoutType(): AppBarLayoutType {
+        return AppBarLayoutType.SEARCH_BAR
     }
 
     override fun getTitle(): String? {
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 02e3fa0ec..19b0d3c72 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -47,7 +47,7 @@
 
     <string name="nc_never">Never joined</string>
     <string name="nc_search">Search</string>
-    <string name="nc_search_conversations">Search conversations</string>
+    <string name="nc_search_conversations">Find conversation</string>
 
     <string name="nc_certificate_dialog_title">Check out the certificate</string>
     <string name="nc_certificate_dialog_text">Do you trust the until now unknown SSL certificate, issued by %1$s for %2$s, valid from %3$s to %4$s?</string>