diff --git a/src/OpenIPC.Viewer.App/Controls/CameraPickerView.axaml b/src/OpenIPC.Viewer.App/Controls/CameraPickerView.axaml
new file mode 100644
index 0000000..1ddc161
--- /dev/null
+++ b/src/OpenIPC.Viewer.App/Controls/CameraPickerView.axaml
@@ -0,0 +1,110 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/OpenIPC.Viewer.App/Controls/CameraPickerView.axaml.cs b/src/OpenIPC.Viewer.App/Controls/CameraPickerView.axaml.cs
new file mode 100644
index 0000000..6efa45e
--- /dev/null
+++ b/src/OpenIPC.Viewer.App/Controls/CameraPickerView.axaml.cs
@@ -0,0 +1,11 @@
+using Avalonia.Controls;
+
+namespace OpenIPC.Viewer.App.Controls;
+
+public sealed partial class CameraPickerView : UserControl
+{
+ public CameraPickerView()
+ {
+ InitializeComponent();
+ }
+}
diff --git a/src/OpenIPC.Viewer.App/Converters/LayoutTabConverters.cs b/src/OpenIPC.Viewer.App/Converters/LayoutTabConverters.cs
index 55694ee..c3d55d4 100644
--- a/src/OpenIPC.Viewer.App/Converters/LayoutTabConverters.cs
+++ b/src/OpenIPC.Viewer.App/Converters/LayoutTabConverters.cs
@@ -16,11 +16,80 @@ public sealed class LayoutTabBrushConverter : IMultiValueConverter
public static readonly LayoutTabBrushConverter Instance = new();
public object? Convert(IList