diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ChatActivity.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ChatActivity.kt
index e23a561d1651894aec95678d39beb1a2b54bf446..476a772b9b97d3144d9b123ead4e313d19781027 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ChatActivity.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ChatActivity.kt
@@ -28,6 +28,7 @@ import de.kuschku.quasseldroid_ng.persistence.AccountDatabase
 import de.kuschku.quasseldroid_ng.persistence.QuasselDatabase
 import de.kuschku.quasseldroid_ng.ui.settings.SettingsActivity
 import de.kuschku.quasseldroid_ng.ui.settings.data.BacklogSettings
+import de.kuschku.quasseldroid_ng.ui.settings.data.Settings
 import de.kuschku.quasseldroid_ng.ui.viewmodel.QuasselViewModel
 import de.kuschku.quasseldroid_ng.util.AndroidHandlerThread
 import de.kuschku.quasseldroid_ng.util.helper.*
@@ -54,7 +55,7 @@ class ChatActivity : ServiceBoundActivity() {
 
   private lateinit var database: QuasselDatabase
 
-  private var backlogSettings = BacklogSettings()
+  private lateinit var backlogSettings: BacklogSettings
 
   override fun onCreate(savedInstanceState: Bundle?) {
     handler.onCreate()
@@ -64,6 +65,7 @@ class ChatActivity : ServiceBoundActivity() {
 
     viewModel = ViewModelProviders.of(this)[QuasselViewModel::class.java]
     viewModel.setBackend(this.backend)
+    backlogSettings = Settings.backlog(this)
 
     database = QuasselDatabase.Creator.init(application)
 
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/EditorFragment.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/EditorFragment.kt
index 75cade9ace28ccb0d61bf652cd0d5a5f56ccdab7..bbabc6a964a42615a7dd159755343bc610411776 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/EditorFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/EditorFragment.kt
@@ -11,8 +11,8 @@ import android.widget.ImageButton
 import butterknife.BindView
 import butterknife.ButterKnife
 import de.kuschku.quasseldroid_ng.R
-import de.kuschku.quasseldroid_ng.ui.settings.Settings
 import de.kuschku.quasseldroid_ng.ui.settings.data.AppearanceSettings
+import de.kuschku.quasseldroid_ng.ui.settings.data.Settings
 import de.kuschku.quasseldroid_ng.ui.viewmodel.QuasselViewModel
 import de.kuschku.quasseldroid_ng.util.helper.invoke
 import de.kuschku.quasseldroid_ng.util.helper.let
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListFragment.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListFragment.kt
index 9f169131840c4d45388c15e1f27ee9b83ad8d9aa..0d1c342368a91afe3c64fc5b0f9a2856c21be8b8 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/NickListFragment.kt
@@ -11,8 +11,8 @@ import android.view.ViewGroup
 import butterknife.BindView
 import butterknife.ButterKnife
 import de.kuschku.quasseldroid_ng.R
-import de.kuschku.quasseldroid_ng.ui.settings.Settings
 import de.kuschku.quasseldroid_ng.ui.settings.data.AppearanceSettings
+import de.kuschku.quasseldroid_ng.ui.settings.data.Settings
 import de.kuschku.quasseldroid_ng.ui.viewmodel.QuasselViewModel
 import de.kuschku.quasseldroid_ng.util.AndroidHandlerThread
 import de.kuschku.quasseldroid_ng.util.helper.map
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ToolbarFragment.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ToolbarFragment.kt
index 28725d2a3bf19d207fc0e3799683d0c959f741a6..57d9802b2ffd09d06ced95fcee358343172ebce2 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ToolbarFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/ToolbarFragment.kt
@@ -14,8 +14,8 @@ import de.kuschku.libquassel.quassel.BufferInfo
 import de.kuschku.libquassel.quassel.syncables.interfaces.INetwork
 import de.kuschku.libquassel.util.hasFlag
 import de.kuschku.quasseldroid_ng.R
-import de.kuschku.quasseldroid_ng.ui.settings.Settings
 import de.kuschku.quasseldroid_ng.ui.settings.data.AppearanceSettings
+import de.kuschku.quasseldroid_ng.ui.settings.data.Settings
 import de.kuschku.quasseldroid_ng.ui.viewmodel.QuasselViewModel
 import de.kuschku.quasseldroid_ng.util.helper.visibleIf
 import de.kuschku.quasseldroid_ng.util.helper.zip
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/buffers/BufferViewConfigFragment.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/buffers/BufferViewConfigFragment.kt
index 1c60b03d9dd6cc5904218cecb6fc7147986d8501..a1f72252016598ccc5c99ed320a7c0248500146d 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/buffers/BufferViewConfigFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/buffers/BufferViewConfigFragment.kt
@@ -17,8 +17,8 @@ import de.kuschku.libquassel.util.hasFlag
 import de.kuschku.libquassel.util.minus
 import de.kuschku.quasseldroid_ng.R
 import de.kuschku.quasseldroid_ng.persistence.QuasselDatabase
-import de.kuschku.quasseldroid_ng.ui.settings.Settings
 import de.kuschku.quasseldroid_ng.ui.settings.data.AppearanceSettings
+import de.kuschku.quasseldroid_ng.ui.settings.data.Settings
 import de.kuschku.quasseldroid_ng.ui.viewmodel.QuasselViewModel
 import de.kuschku.quasseldroid_ng.util.AndroidHandlerThread
 import de.kuschku.quasseldroid_ng.util.helper.map
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/messages/MessageListFragment.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/messages/MessageListFragment.kt
index 7784cb0a975610c339b7862b072d980a6d6ca466..309c5d24fb858b3016816584053579b75e0cfc30 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/messages/MessageListFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/messages/MessageListFragment.kt
@@ -18,9 +18,9 @@ import de.kuschku.libquassel.protocol.MsgId
 import de.kuschku.libquassel.quassel.syncables.BufferSyncer
 import de.kuschku.quasseldroid_ng.R
 import de.kuschku.quasseldroid_ng.persistence.QuasselDatabase
-import de.kuschku.quasseldroid_ng.ui.settings.Settings
 import de.kuschku.quasseldroid_ng.ui.settings.data.AppearanceSettings
 import de.kuschku.quasseldroid_ng.ui.settings.data.BacklogSettings
+import de.kuschku.quasseldroid_ng.ui.settings.data.Settings
 import de.kuschku.quasseldroid_ng.ui.viewmodel.QuasselViewModel
 import de.kuschku.quasseldroid_ng.util.AndroidHandlerThread
 import de.kuschku.quasseldroid_ng.util.helper.*
@@ -45,13 +45,14 @@ class MessageListFragment : ServiceBoundFragment() {
 
   private var lastBuffer: BufferId? = null
 
-  private var backlogSettings = BacklogSettings()
+  private lateinit var backlogSettings: BacklogSettings
 
   override fun onCreate(savedInstanceState: Bundle?) {
     handler.onCreate()
     super.onCreate(savedInstanceState)
     viewModel = ViewModelProviders.of(activity!!)[QuasselViewModel::class.java]
     appearanceSettings = Settings.appearance(activity!!)
+    backlogSettings = Settings.backlog(activity!!)
   }
 
   private val boundaryCallback = object :
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/messages/QuasselMessageRenderer.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/messages/QuasselMessageRenderer.kt
index e734ca5018db5406593128b586a849dbba16d212..8ee5dda43bc008ceec8b27a49d1bd7d715c412dc 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/messages/QuasselMessageRenderer.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/chat/messages/QuasselMessageRenderer.kt
@@ -86,6 +86,9 @@ class QuasselMessageRenderer(
         viewHolder.itemView.setBackgroundColor(getColor(1, 0))
       }
     }
+    if (appearanceSettings.useMonospace) {
+      viewHolder.content.typeface = Typeface.MONOSPACE
+    }
   }
 
   override fun bind(holder: QuasselMessageViewHolder, message: FormattedMessage) {
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/SettingsFragment.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/SettingsFragment.kt
index 7c6442061668417a3f0156120429b224983f8167..6762bd534b0e0276524d4109ba9a35ab041e2f81 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/SettingsFragment.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/SettingsFragment.kt
@@ -8,6 +8,7 @@ import android.support.v7.preference.PreferenceFragmentCompat
 import android.support.v7.preference.PreferenceGroup
 import de.kuschku.quasseldroid_ng.R
 import de.kuschku.quasseldroid_ng.ui.settings.data.AppearanceSettings
+import de.kuschku.quasseldroid_ng.ui.settings.data.Settings
 
 class SettingsFragment : PreferenceFragmentCompat(),
                          SharedPreferences.OnSharedPreferenceChangeListener {
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/data/AppearanceSettings.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/data/AppearanceSettings.kt
index fa9d8f49a594d5ebb027fe5a3bb8d57f21a045a6..3a9d42f20e2823d1be9b13570b1a222592500447 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/data/AppearanceSettings.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/data/AppearanceSettings.kt
@@ -7,6 +7,7 @@ data class AppearanceSettings(
   val showPrefix: ShowPrefixMode = ShowPrefixMode.HIGHEST,
   val colorizeNicknames: ColorizeNicknamesMode = ColorizeNicknamesMode.ALL_BUT_MINE,
   val colorizeMirc: Boolean = true,
+  val useMonospace: Boolean = false,
   val showSeconds: Boolean = false,
   val use24hClock: Boolean = true,
   val showLag: Boolean = true,
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/Settings.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/data/Settings.kt
similarity index 75%
rename from app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/Settings.kt
rename to app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/data/Settings.kt
index 402daaf10441bb60695037988afd03ee7595cc4d..ea9f3ce1c3e6f465eb623d144e7da5c346c262d3 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/Settings.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/ui/settings/data/Settings.kt
@@ -1,12 +1,10 @@
-package de.kuschku.quasseldroid_ng.ui.settings
+package de.kuschku.quasseldroid_ng.ui.settings.data
 
 import android.content.Context
 import android.content.SharedPreferences
 import android.preference.PreferenceManager
 import de.kuschku.quasseldroid_ng.R
-import de.kuschku.quasseldroid_ng.ui.settings.data.AppearanceSettings
 import de.kuschku.quasseldroid_ng.ui.settings.data.AppearanceSettings.*
-import de.kuschku.quasseldroid_ng.ui.settings.data.BacklogSettings
 
 object Settings {
   private fun <T> settings(context: Context,
@@ -14,7 +12,9 @@ object Settings {
     context
   ).f()
 
-  fun appearance(context: Context) = settings(context) {
+  fun appearance(context: Context) = settings(
+    context
+  ) {
     AppearanceSettings(
       theme = Theme.valueOf(
         getString(
@@ -38,6 +38,10 @@ object Settings {
         context.getString(R.string.preference_colorize_mirc_key),
         AppearanceSettings.DEFAULT.colorizeMirc
       ),
+      useMonospace = getBoolean(
+        context.getString(R.string.preference_monospace_key),
+        AppearanceSettings.DEFAULT.useMonospace
+      ),
       showSeconds = getBoolean(
         context.getString(R.string.preference_show_seconds_key),
         AppearanceSettings.DEFAULT.showSeconds
@@ -53,9 +57,14 @@ object Settings {
     )
   }
 
-  fun backlog(context: Context) = settings(context) {
+  fun backlog(context: Context) = settings(
+    context
+  ) {
     BacklogSettings(
-
+      dynamicAmount = getString(
+        context.getString(R.string.preference_dynamic_fetch_key),
+        BacklogSettings.DEFAULT.dynamicAmount.toString()
+      ).toIntOrNull() ?: BacklogSettings.DEFAULT.dynamicAmount
     )
   }
 }
\ No newline at end of file
diff --git a/app/src/main/java/de/kuschku/quasseldroid_ng/util/service/ServiceBoundActivity.kt b/app/src/main/java/de/kuschku/quasseldroid_ng/util/service/ServiceBoundActivity.kt
index ad471ecfc04ccc8554b83199eedde5d6bb97ecec..7058ffaaf1612dd2b739f96c4a93f3922e902bf6 100644
--- a/app/src/main/java/de/kuschku/quasseldroid_ng/util/service/ServiceBoundActivity.kt
+++ b/app/src/main/java/de/kuschku/quasseldroid_ng/util/service/ServiceBoundActivity.kt
@@ -9,8 +9,8 @@ import android.support.v7.app.AppCompatActivity
 import de.kuschku.libquassel.session.Backend
 import de.kuschku.quasseldroid_ng.Keys
 import de.kuschku.quasseldroid_ng.R
-import de.kuschku.quasseldroid_ng.ui.settings.Settings
 import de.kuschku.quasseldroid_ng.ui.settings.data.AppearanceSettings
+import de.kuschku.quasseldroid_ng.ui.settings.data.Settings
 import de.kuschku.quasseldroid_ng.util.helper.updateRecentsHeaderIfExisting
 
 abstract class ServiceBoundActivity : AppCompatActivity() {
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 0944bbbef73ebc095c6183eadbaa628c3f11eab2..edf148a84aef77c3f8e4046b59e5ea634edfe284 100644
--- a/app/src/main/res/layout-sw720dp-land/activity_main.xml
+++ b/app/src/main/res/layout-sw720dp-land/activity_main.xml
@@ -17,6 +17,11 @@
       android:layout_height="match_parent"
       tools:layout="@layout/fragment_chat_list" />
 
+    <View
+      android:layout_width="1dp"
+      android:layout_height="match_parent"
+      android:background="?colorDivider" />
+
     <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
       xmlns:app="http://schemas.android.com/apk/res-auto"
       android:layout_width="match_parent"
diff --git a/app/src/main/res/values/strings_preferences.xml b/app/src/main/res/values/strings_preferences.xml
index 2ec76c925c6200e4531dda88bce15931fc19f789..45d29077190b8458878e0d920b888049c0a430b3 100644
--- a/app/src/main/res/values/strings_preferences.xml
+++ b/app/src/main/res/values/strings_preferences.xml
@@ -61,6 +61,9 @@
     <item>NONE</item>
   </string-array>
 
+  <string name="preference_monospace_key" translatable="false">monospace</string>
+  <string name="preference_monospace_title">Use Monospace Font</string>
+
   <string name="preference_show_seconds_key" translatable="false">show_seconds</string>
   <string name="preference_show_seconds_title">Show Seconds</string>
 
diff --git a/app/src/main/res/xml/preferences.xml b/app/src/main/res/xml/preferences.xml
index d6438d601958ca62e03ac9ff15379eee5a04a059..03a1afc7772638d92f2a24d377cbe0b388974872 100644
--- a/app/src/main/res/xml/preferences.xml
+++ b/app/src/main/res/xml/preferences.xml
@@ -29,6 +29,11 @@
       android:key="@string/preference_show_prefix_key"
       android:title="@string/preference_show_prefix_title" />
 
+    <SwitchPreference
+      android:defaultValue="false"
+      android:key="@string/preference_monospace_key"
+      android:title="@string/preference_monospace_title" />
+
     <SwitchPreference
       android:defaultValue="false"
       android:key="@string/preference_show_seconds_key"