diff --git a/src/main/kotlin/org/briarproject/briar/desktop/conversation/PrivateMessageView.kt b/src/main/kotlin/org/briarproject/briar/desktop/conversation/PrivateMessageView.kt
index 4b30eddff7f738067cd626062b149ea8261bce00..d82bc21fcecb0154159fa866b545ab4fde131374 100644
--- a/src/main/kotlin/org/briarproject/briar/desktop/conversation/PrivateMessageView.kt
+++ b/src/main/kotlin/org/briarproject/briar/desktop/conversation/PrivateMessageView.kt
@@ -11,6 +11,7 @@ import androidx.compose.ui.Modifier
 import org.briarproject.briar.desktop.contact.ContactInfoDrawerState.MakeIntro
 import org.briarproject.briar.desktop.contact.ContactList
 import org.briarproject.briar.desktop.contact.ContactsViewModel
+import org.briarproject.briar.desktop.ui.UiPlaceholder
 import org.briarproject.briar.desktop.ui.VerticalDivider
 
 @Composable
@@ -24,7 +25,7 @@ fun PrivateMessageView(
         ContactList(contacts)
         VerticalDivider()
         Column(modifier = Modifier.weight(1f).fillMaxHeight()) {
-            contacts.selectedContact.value?.let { selectedContact ->
+            contacts.selectedContact.value?.also { selectedContact ->
                 Conversation(
                     selectedContact,
                     contacts.contactList,
@@ -34,7 +35,7 @@ fun PrivateMessageView(
                     setInfoDrawer,
                     contactDrawerState
                 )
-            }
+            } ?: UiPlaceholder()
         }
     }
 }
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/MainScreen.kt b/src/main/kotlin/org/briarproject/briar/desktop/ui/MainScreen.kt
index f0ac067ca8ecfd22423f4a39adae4385944c85c1..b5da9523549c366aad454d609d2d3708699dae24 100644
--- a/src/main/kotlin/org/briarproject/briar/desktop/ui/MainScreen.kt
+++ b/src/main/kotlin/org/briarproject/briar/desktop/ui/MainScreen.kt
@@ -1,15 +1,9 @@
 package org.briarproject.briar.desktop.ui
 
-import androidx.compose.foundation.background
 import androidx.compose.foundation.layout.Row
-import androidx.compose.foundation.layout.fillMaxSize
-import androidx.compose.material.MaterialTheme
-import androidx.compose.material.Surface
-import androidx.compose.material.Text
 import androidx.compose.runtime.Composable
 import androidx.compose.runtime.mutableStateOf
 import androidx.compose.runtime.remember
-import androidx.compose.ui.Modifier
 import org.briarproject.briar.desktop.contact.ContactsViewModel
 import org.briarproject.briar.desktop.conversation.PrivateMessageView
 import org.briarproject.briar.desktop.navigation.BriarSidebar
@@ -35,9 +29,7 @@ fun MainScreen(
         when (uiMode) {
             UiMode.CONTACTS -> PrivateMessageView(contactsViewModel)
             UiMode.SETTINGS -> PlaceHolderSettingsView(isDark, setDark)
-            else -> Surface(modifier = Modifier.fillMaxSize().background(MaterialTheme.colors.background)) {
-                Text("TBD")
-            }
+            else -> UiPlaceholder()
         }
     }
 }
diff --git a/src/main/kotlin/org/briarproject/briar/desktop/ui/UiPlaceholder.kt b/src/main/kotlin/org/briarproject/briar/desktop/ui/UiPlaceholder.kt
new file mode 100644
index 0000000000000000000000000000000000000000..5b44eea15691334a7dc6b95ac749e889aaa0f730
--- /dev/null
+++ b/src/main/kotlin/org/briarproject/briar/desktop/ui/UiPlaceholder.kt
@@ -0,0 +1,14 @@
+package org.briarproject.briar.desktop.ui
+
+import androidx.compose.foundation.background
+import androidx.compose.foundation.layout.fillMaxSize
+import androidx.compose.material.MaterialTheme
+import androidx.compose.material.Surface
+import androidx.compose.material.Text
+import androidx.compose.runtime.Composable
+import androidx.compose.ui.Modifier
+
+@Composable
+fun UiPlaceholder() = Surface(Modifier.fillMaxSize().background(MaterialTheme.colors.background)) {
+    Text("TBD")
+}