diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/ChatActivity.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/ChatActivity.kt
index 9d9dec1f2eeb8fde690d3acc3d98ad75d7642e80..3a4eeb322e49a346be03b9ecffb4dcf0e0eb7f47 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/chat/ChatActivity.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/chat/ChatActivity.kt
@@ -19,6 +19,7 @@
 
 package de.kuschku.quasseldroid.ui.chat
 
+import android.annotation.SuppressLint
 import android.app.Activity
 import android.content.Context
 import android.content.Intent
@@ -34,15 +35,11 @@ import android.view.View
 import android.widget.EditText
 import android.widget.Toast
 import androidx.appcompat.app.ActionBarDrawerToggle
-import androidx.appcompat.widget.Toolbar
 import androidx.core.view.GravityCompat
 import androidx.drawerlayout.widget.DrawerLayout
 import androidx.lifecycle.Observer
 import androidx.recyclerview.widget.DefaultItemAnimator
 import androidx.recyclerview.widget.LinearLayoutManager
-import androidx.recyclerview.widget.RecyclerView
-import butterknife.BindView
-import butterknife.ButterKnife
 import com.afollestad.materialdialogs.MaterialDialog
 import com.google.android.material.bottomsheet.BottomSheetBehavior
 import de.kuschku.libquassel.connection.ConnectionState
@@ -64,6 +61,7 @@ import de.kuschku.libquassel.util.flag.or
 import de.kuschku.libquassel.util.helper.*
 import de.kuschku.quasseldroid.Keys
 import de.kuschku.quasseldroid.R
+import de.kuschku.quasseldroid.databinding.ActivityMainBinding
 import de.kuschku.quasseldroid.defaults.DefaultNetworkServer
 import de.kuschku.quasseldroid.persistence.dao.*
 import de.kuschku.quasseldroid.persistence.db.AccountDatabase
@@ -111,21 +109,9 @@ import java.security.cert.CertificateExpiredException
 import java.security.cert.CertificateNotYetValidException
 import javax.inject.Inject
 
+@SuppressLint("ResourceType")
 class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenceChangeListener {
-  @BindView(R.id.drawer_layout)
-  lateinit var drawerLayout: DrawerLayout
-
-  @BindView(R.id.toolbar)
-  lateinit var toolbar: Toolbar
-
-  @BindView(R.id.progress_bar)
-  lateinit var progressBar: MaterialContentLoadingProgressBar
-
-  @BindView(R.id.connection_status)
-  lateinit var connectionStatusDisplay: WarningBarView
-
-  @BindView(R.id.autocomplete_list)
-  lateinit var autoCompleteList: RecyclerView
+  lateinit var binding: ActivityMainBinding
 
   @Inject
   lateinit var modelHelper: ChatViewModelHelper
@@ -174,7 +160,7 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
           val text = intent.getCharSequenceExtra(Intent.EXTRA_TEXT)
           if (text != null) {
             chatlineFragment?.replaceText(text)
-            drawerLayout.closeDrawers()
+            binding.drawerLayout.closeDrawers()
           }
         }
         intent.hasExtra(KEY_BUFFER_ID) -> {
@@ -197,7 +183,7 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
             intent.getStringExtra(KEY_AUTOCOMPLETE_TEXT),
             intent.getStringExtra(KEY_AUTOCOMPLETE_SUFFIX)
           )
-          drawerLayout.closeDrawers()
+          binding.drawerLayout.closeDrawers()
         }
         intent.hasExtra(KEY_NETWORK_ID) && intent.hasExtra(KEY_CHANNEL)   -> {
           val networkId = NetworkId(intent.getIntExtra(KEY_NETWORK_ID, -1))
@@ -303,17 +289,17 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
 
   override fun onCreate(savedInstanceState: Bundle?) {
     super.onCreate(savedInstanceState)
-    setContentView(R.layout.activity_main)
-    ButterKnife.bind(this)
+    binding = ActivityMainBinding.inflate(layoutInflater)
+    setContentView(binding.root)
 
-    chatlineFragment = supportFragmentManager.findFragmentById(R.id.fragment_chatline) as? ChatlineFragment
+    chatlineFragment = supportFragmentManager.findFragmentByTag("fragment_chatline") as? ChatlineFragment
 
-    setSupportActionBar(toolbar)
+    setSupportActionBar(binding.layoutMain.layoutToolbar.toolbar)
 
     chatViewModel.bufferOpened.toLiveData().observe(this, Observer {
       actionMode?.finish()
-      if (drawerLayout.isDrawerOpen(GravityCompat.START)) {
-        drawerLayout.closeDrawer(GravityCompat.START, true)
+      if (binding.drawerLayout.isDrawerOpen(GravityCompat.START)) {
+        binding.drawerLayout.closeDrawer(GravityCompat.START, true)
       }
     })
 
@@ -322,14 +308,14 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
       supportActionBar?.setDisplayHomeAsUpEnabled(true)
       drawerToggle = ActionBarDrawerToggle(
         this,
-        drawerLayout,
+        binding.drawerLayout,
         R.string.label_open,
         R.string.label_close
       )
       drawerToggle.syncState()
     }
 
-    drawerLayout.addDrawerListener(object : DrawerLayout.DrawerListener {
+    binding.drawerLayout.addDrawerListener(object : DrawerLayout.DrawerListener {
       override fun onDrawerStateChanged(newState: Int) = Unit
       override fun onDrawerSlide(drawerView: View, slideOffset: Float) {
         actionMode?.finish()
@@ -408,12 +394,12 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
     }
 
     if (autoCompleteSettings.prefix || autoCompleteSettings.auto) {
-      val autoCompleteBottomSheet = BottomSheetBehavior.from(autoCompleteList)
+      val autoCompleteBottomSheet = BottomSheetBehavior.from(binding.layoutMain.autocompleteList)
       chatlineFragment?.let {
         autoCompleteAdapter.setOnClickListener(it.chatline::autoComplete)
-        autoCompleteList.layoutManager = LinearLayoutManager(it.activity)
-        autoCompleteList.itemAnimator = DefaultItemAnimator()
-        autoCompleteList.adapter = autoCompleteAdapter
+        binding.layoutMain.autocompleteList.layoutManager = LinearLayoutManager(it.activity)
+        binding.layoutMain.autocompleteList.itemAnimator = DefaultItemAnimator()
+        binding.layoutMain.autocompleteList.adapter = autoCompleteAdapter
         it.autoCompleteHelper.addDataListener {
           autoCompleteBottomSheet.state =
             if (it.isEmpty()) BottomSheetBehavior.STATE_HIDDEN
@@ -750,7 +736,7 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
           if (resources.getBoolean(R.bool.buffer_drawer_exists) &&
               chatViewModel.bufferId.safeValue == BufferId.MAX_VALUE &&
               !restoredDrawerState) {
-            drawerLayout.openDrawer(GravityCompat.START)
+            binding.drawerLayout.openDrawer(GravityCompat.START)
           }
           connectedAccount = accountId
           modelHelper.connectedSession.value?.orNull()?.let { session ->
@@ -782,7 +768,7 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
         }
       })
 
-    connectionStatusDisplay.setOnClickListener {
+    binding.layoutMain.connectionStatus.setOnClickListener {
       modelHelper.sessionManager.value?.orNull()?.apply {
         log(INFO, "ChatActivity", "Reconnect triggered: User action")
         backend.safeValue.orNull()?.autoConnect(ignoreErrors = true, ignoreSetting = true)
@@ -795,39 +781,39 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
       when (state) {
         ConnectionState.DISCONNECTED,
         ConnectionState.CLOSED     -> {
-          progressBar.visibility = View.INVISIBLE
+          binding.layoutMain.layoutToolbar.progressBar.visibility = View.INVISIBLE
 
-          connectionStatusDisplay.setMode(WarningBarView.MODE_ICON)
-          connectionStatusDisplay.setText(getString(R.string.label_status_disconnected))
+          binding.layoutMain.connectionStatus.setMode(WarningBarView.MODE_ICON)
+          binding.layoutMain.connectionStatus.setText(getString(R.string.label_status_disconnected))
         }
         ConnectionState.CONNECTING -> {
-          progressBar.visibility = View.VISIBLE
-          progressBar.isIndeterminate = true
+          binding.layoutMain.layoutToolbar.progressBar.visibility = View.VISIBLE
+          binding.layoutMain.layoutToolbar.progressBar.isIndeterminate = true
 
-          connectionStatusDisplay.setMode(WarningBarView.MODE_PROGRESS)
-          connectionStatusDisplay.setText(getString(R.string.label_status_connecting))
+          binding.layoutMain.connectionStatus.setMode(WarningBarView.MODE_PROGRESS)
+          binding.layoutMain.connectionStatus.setText(getString(R.string.label_status_connecting))
         }
         ConnectionState.HANDSHAKE  -> {
-          progressBar.visibility = View.VISIBLE
-          progressBar.isIndeterminate = true
+          binding.layoutMain.layoutToolbar.progressBar.visibility = View.VISIBLE
+          binding.layoutMain.layoutToolbar.progressBar.isIndeterminate = true
 
-          connectionStatusDisplay.setMode(WarningBarView.MODE_PROGRESS)
-          connectionStatusDisplay.setText(getString(R.string.label_status_handshake))
+          binding.layoutMain.connectionStatus.setMode(WarningBarView.MODE_PROGRESS)
+          binding.layoutMain.connectionStatus.setText(getString(R.string.label_status_handshake))
         }
         ConnectionState.INIT       -> {
-          progressBar.visibility = View.VISIBLE
+          binding.layoutMain.layoutToolbar.progressBar.visibility = View.VISIBLE
           // Show indeterminate when no progress has been made yet
-          progressBar.isIndeterminate = progress == 0 || max == 0
-          progressBar.progress = progress
-          progressBar.max = max
+          binding.layoutMain.layoutToolbar.progressBar.isIndeterminate = progress == 0 || max == 0
+          binding.layoutMain.layoutToolbar.progressBar.progress = progress
+          binding.layoutMain.layoutToolbar.progressBar.max = max
 
-          connectionStatusDisplay.setMode(WarningBarView.MODE_PROGRESS)
-          connectionStatusDisplay.setText(getString(R.string.label_status_init))
+          binding.layoutMain.connectionStatus.setMode(WarningBarView.MODE_PROGRESS)
+          binding.layoutMain.connectionStatus.setText(getString(R.string.label_status_init))
         }
         ConnectionState.CONNECTED  -> {
-          progressBar.visibility = View.INVISIBLE
+          binding.layoutMain.layoutToolbar.progressBar.visibility = View.INVISIBLE
 
-          connectionStatusDisplay.setMode(WarningBarView.MODE_NONE)
+          binding.layoutMain.connectionStatus.setMode(WarningBarView.MODE_NONE)
         }
       }
     })
@@ -836,15 +822,15 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
     modelHelper.bufferDataThrottled.toLiveData().observe(this, Observer {
       bufferData = it
       if (bufferData?.info?.type?.hasFlag(Buffer_Type.ChannelBuffer) == true) {
-        drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.END)
+        binding.drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_UNLOCKED, GravityCompat.END)
       } else {
-        drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END)
+        binding.drawerLayout.setDrawerLockMode(DrawerLayout.LOCK_MODE_LOCKED_CLOSED, GravityCompat.END)
       }
 
       invalidateOptionsMenu()
     })
 
-    editorBottomSheet = DragInterceptBottomSheetBehavior.from(chatlineFragment?.view)
+    editorBottomSheet = DragInterceptBottomSheetBehavior.from(binding.root.findViewById(R.id.fragment_chatline))
     editorBottomSheet.state = BottomSheetBehavior.STATE_COLLAPSED
     chatlineFragment?.panelSlideListener?.let(editorBottomSheet::setBottomSheetCallback)
 
@@ -892,7 +878,7 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
   override fun onActionModeStarted(mode: ActionMode?) {
     when (mode?.tag) {
       "BUFFER",
-      "MESSAGES" -> mode.menu?.retint(toolbar.context)
+      "MESSAGES" -> mode.menu?.retint(binding.layoutMain.layoutToolbar.toolbar.context)
     }
     actionMode = mode
     if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
@@ -933,8 +919,8 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
     chatViewModel.onSaveInstanceState(outState)
 
     outState.putLong(KEY_CONNECTED_ACCOUNT, connectedAccount.id)
-    outState.putBoolean(KEY_OPEN_DRAWER_START, drawerLayout.isDrawerOpen(GravityCompat.START))
-    outState.putBoolean(KEY_OPEN_DRAWER_END, drawerLayout.isDrawerOpen(GravityCompat.END))
+    outState.putBoolean(KEY_OPEN_DRAWER_START, binding.drawerLayout.isDrawerOpen(GravityCompat.START))
+    outState.putBoolean(KEY_OPEN_DRAWER_END, binding.drawerLayout.isDrawerOpen(GravityCompat.END))
   }
 
   override fun onRestoreInstanceState(savedInstanceState: Bundle?) {
@@ -947,10 +933,10 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
 
     if (savedInstanceState?.getBoolean(KEY_OPEN_DRAWER_START) == true &&
         resources.getBoolean(R.bool.buffer_drawer_exists)) {
-      drawerLayout.openDrawer(GravityCompat.START)
+      binding.drawerLayout.openDrawer(GravityCompat.START)
     }
     if (savedInstanceState?.getBoolean(KEY_OPEN_DRAWER_END) == true) {
-      drawerLayout.openDrawer(GravityCompat.END)
+      binding.drawerLayout.openDrawer(GravityCompat.END)
     }
     if (savedInstanceState?.getBoolean(KEY_OPEN_DRAWER_START) != null ||
         savedInstanceState?.getBoolean(KEY_OPEN_DRAWER_END) != null) {
@@ -960,7 +946,7 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
 
   override fun onCreateOptionsMenu(menu: Menu?): Boolean {
     val nickCountDrawableSize = resources.getDimensionPixelSize(R.dimen.size_nick_count)
-    val nickCountDrawableColor = toolbar.context.theme.styledAttributes(R.attr.colorControlNormal) {
+    val nickCountDrawableColor = binding.layoutMain.layoutToolbar.toolbar.context.theme.styledAttributes(R.attr.colorControlNormal) {
       getColor(0, 0)
     }
 
@@ -970,7 +956,7 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
     menu?.findItem(R.id.action_filter_messages)?.isVisible =
       (bufferData?.info?.type?.hasFlag(Buffer_Type.ChannelBuffer) ?: false ||
        bufferData?.info?.type?.hasFlag(Buffer_Type.QueryBuffer) ?: false)
-    menu?.retint(toolbar.context)
+    menu?.retint(binding.layoutMain.layoutToolbar.toolbar.context)
     menu?.findItem(R.id.action_nicklist)?.icon = NickCountDrawable(
       bufferData?.userCount ?: 0,
       nickCountDrawableSize,
@@ -983,10 +969,10 @@ class ChatActivity : ServiceBoundActivity(), SharedPreferences.OnSharedPreferenc
       drawerToggle.onOptionsItemSelected(item)
     }
     R.id.action_nicklist        -> {
-      if (drawerLayout.isDrawerVisible(GravityCompat.END)) {
-        drawerLayout.closeDrawer(GravityCompat.END)
+      if (binding.drawerLayout.isDrawerVisible(GravityCompat.END)) {
+        binding.drawerLayout.closeDrawer(GravityCompat.END)
       } else {
-        drawerLayout.openDrawer(GravityCompat.END)
+        binding.drawerLayout.openDrawer(GravityCompat.END)
       }
       true
     }
diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/setup/accounts/selection/AccountSelectionSlide.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/setup/accounts/selection/AccountSelectionSlide.kt
index a7b9ead5a4f777b5291f51be771eefc87f8a45b6..943349079c3ba906bd84243d6a3778f14695821f 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/setup/accounts/selection/AccountSelectionSlide.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/setup/accounts/selection/AccountSelectionSlide.kt
@@ -32,7 +32,10 @@ import androidx.recyclerview.widget.RecyclerView
 import butterknife.BindView
 import butterknife.ButterKnife
 import de.kuschku.libquassel.protocol.BufferId
+import de.kuschku.libquassel.util.compatibility.LoggingHandler
+import de.kuschku.libquassel.util.compatibility.LoggingHandler.Companion.log
 import de.kuschku.quasseldroid.R
+import de.kuschku.quasseldroid.persistence.db.AccountDatabase
 import de.kuschku.quasseldroid.persistence.models.Account
 import de.kuschku.quasseldroid.persistence.util.AccountId
 import de.kuschku.quasseldroid.ui.setup.SlideFragment
@@ -41,6 +44,7 @@ import de.kuschku.quasseldroid.ui.setup.accounts.selection.AccountSelectionActiv
 import de.kuschku.quasseldroid.ui.setup.accounts.selection.AccountSelectionActivity.Companion.REQUEST_CREATE_NEW
 import de.kuschku.quasseldroid.ui.setup.accounts.setup.AccountSetupActivity
 import de.kuschku.quasseldroid.util.helper.map
+import de.kuschku.quasseldroid.util.helper.observeSticky
 import de.kuschku.quasseldroid.util.helper.zip
 import javax.inject.Inject
 
@@ -95,8 +99,11 @@ class AccountSelectionSlide : SlideFragment() {
       startActivityForResult(AccountEditActivity.intent(requireContext(), id), REQUEST_CREATE_NEW)
     }
     adapter.addClickListener {
-      updateValidity()
+      accountViewModel.selectedItem.postValue(it)
     }
+    accountViewModel.selectedItem.observeSticky(viewLifecycleOwner, Observer {
+      updateValidity()
+    })
 
     accountViewModel.accounts.zip(accountViewModel.selectedItem).map { (accounts, selected) ->
       accounts.map { Pair(it, it.id == selected) }
diff --git a/app/src/main/java/de/kuschku/quasseldroid/ui/setup/accounts/setup/AccountSetupActivity.kt b/app/src/main/java/de/kuschku/quasseldroid/ui/setup/accounts/setup/AccountSetupActivity.kt
index 883b9c3e9cad75119d1602d23fe37a709c98d62e..15311ecb8e365446b9348beb8110acc84f0213b6 100644
--- a/app/src/main/java/de/kuschku/quasseldroid/ui/setup/accounts/setup/AccountSetupActivity.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid/ui/setup/accounts/setup/AccountSetupActivity.kt
@@ -40,7 +40,7 @@ class AccountSetupActivity : SetupActivity() {
 
   override fun onDone(data: Bundle) {
     val account = Account.of(
-      id = AccountId(-1L),
+      id = AccountId(0),
       host = data.getString("host", ""),
       port = data.getInt("port"),
       requireSsl = data.getBoolean("require_ssl"),
diff --git a/app/src/main/res/layout-land/layout_main.xml b/app/src/main/res/layout-land/layout_main.xml
index d06b68b3155d1f8c873ab9204173406bbd4445e8..28e63271cb3af86351ca0836bf62c82288999d64 100644
--- a/app/src/main/res/layout-land/layout_main.xml
+++ b/app/src/main/res/layout-land/layout_main.xml
@@ -77,10 +77,10 @@
       app:layout_behavior="@string/bottom_sheet_behavior"
       tools:listitem="@layout/widget_nick" />
 
-    <include layout="@layout/layout_toolbar" />
+    <include android:id="@+id/layout_toolbar" layout="@layout/layout_toolbar" />
   </androidx.coordinatorlayout.widget.CoordinatorLayout>
 
-  <androidx.fragment.app.FragmentContainerView
+  <fragment
     android:id="@+id/fragment_chatline"
     android:name="de.kuschku.quasseldroid.ui.chat.input.ChatlineFragment"
     android:layout_width="match_parent"
@@ -88,6 +88,7 @@
     app:behavior_hideable="false"
     app:behavior_peekHeight="?actionBarSize"
     app:layout_behavior="@string/drag_intercept_bottom_sheet_behavior"
-    tools:layout="@layout/chat_chatline" />
+    tools:layout="@layout/chat_chatline"
+    tools:ignore="FragmentTagUsage" />
 
 </androidx.coordinatorlayout.widget.CoordinatorLayout>
diff --git a/app/src/main/res/layout-sw600dp-land/layout_main.xml b/app/src/main/res/layout-sw600dp-land/layout_main.xml
index 636281d14957222038b9eb847ea046b5df3901cb..ead43358a7bad3e59ce21b91f38ab7c960d071dd 100644
--- a/app/src/main/res/layout-sw600dp-land/layout_main.xml
+++ b/app/src/main/res/layout-sw600dp-land/layout_main.xml
@@ -84,7 +84,7 @@
         tools:listitem="@layout/widget_nick" />
     </androidx.coordinatorlayout.widget.CoordinatorLayout>
 
-    <androidx.fragment.app.FragmentContainerView
+    <fragment
       android:id="@+id/fragment_chatline"
       android:name="de.kuschku.quasseldroid.ui.chat.input.ChatlineFragment"
       android:layout_width="match_parent"
@@ -92,10 +92,11 @@
       app:behavior_hideable="false"
       app:behavior_peekHeight="?actionBarSize"
       app:layout_behavior="@string/drag_intercept_bottom_sheet_behavior"
-      tools:layout="@layout/chat_chatline" />
+      tools:layout="@layout/chat_chatline"
+      tools:ignore="FragmentTagUsage" />
 
   </androidx.coordinatorlayout.widget.CoordinatorLayout>
 
-  <include layout="@layout/layout_toolbar" />
+  <include android:id="@+id/layout_toolbar" layout="@layout/layout_toolbar" />
 
 </LinearLayout>
diff --git a/app/src/main/res/layout-sw720dp-land/activity_main.xml b/app/src/main/res/layout-sw720dp-land/activity_main.xml
index 023c8a0d059a0833315451217f296a9aa80be181..d7917a858ffe04a10a9e3990c06597eab19b5e82 100644
--- a/app/src/main/res/layout-sw720dp-land/activity_main.xml
+++ b/app/src/main/res/layout-sw720dp-land/activity_main.xml
@@ -62,7 +62,7 @@
       android:layout_height="match_parent"
       tools:layout="@layout/chat_chatlist" />
 
-    <include layout="@layout/layout_main" />
+    <include android:id="@+id/layout_main" layout="@layout/layout_main" />
   </LinearLayout>
 
   <androidx.fragment.app.FragmentContainerView
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index e0fd20629cb6894903f431dfdf1919f702f119d2..61a9d6e55eeec9b083bafe4da3cfb35dcab33679 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -49,5 +49,5 @@
       tools:layout="@layout/chat_chatlist" />
   </de.kuschku.quasseldroid.util.ui.view.NavigationDrawerLayout>
 
-  <include layout="@layout/layout_main" />
+  <include android:id="@+id/layout_main" layout="@layout/layout_main" />
 </androidx.drawerlayout.widget.DrawerLayout>
diff --git a/app/src/main/res/layout/layout_main.xml b/app/src/main/res/layout/layout_main.xml
index 109bb17b38c59f909fa20a60fb889656a850d96f..73cee791cf1d31b2b478e260f870715ccf2e4764 100644
--- a/app/src/main/res/layout/layout_main.xml
+++ b/app/src/main/res/layout/layout_main.xml
@@ -85,7 +85,7 @@
         tools:listitem="@layout/widget_nick" />
     </androidx.coordinatorlayout.widget.CoordinatorLayout>
 
-    <androidx.fragment.app.FragmentContainerView
+    <fragment
       android:id="@+id/fragment_chatline"
       android:name="de.kuschku.quasseldroid.ui.chat.input.ChatlineFragment"
       android:layout_width="match_parent"
@@ -93,10 +93,13 @@
       app:behavior_hideable="false"
       app:behavior_peekHeight="?actionBarSize"
       app:layout_behavior="@string/drag_intercept_bottom_sheet_behavior"
-      tools:layout="@layout/chat_chatline" />
+      tools:layout="@layout/chat_chatline"
+      tools:ignore="FragmentTagUsage" />
 
   </androidx.coordinatorlayout.widget.CoordinatorLayout>
 
-  <include layout="@layout/layout_toolbar" />
+  <include
+    android:id="@+id/layout_toolbar"
+    layout="@layout/layout_toolbar" />
 
 </LinearLayout>