From 00b86226123fe456b8531e0f41acc0f6fadb4f67 Mon Sep 17 00:00:00 2001
From: Laura Hausmann <laura@hausmann.dev>
Date: Fri, 3 Nov 2023 22:22:42 +0100
Subject: [PATCH] [client] Make switch layout a toggle instead of a dropdown

---
 locales/en-US.yml             |  4 ++--
 packages/client/src/navbar.ts | 28 +++++++---------------------
 2 files changed, 9 insertions(+), 23 deletions(-)

diff --git a/locales/en-US.yml b/locales/en-US.yml
index e56e7b4a2..668be1330 100644
--- a/locales/en-US.yml
+++ b/locales/en-US.yml
@@ -737,7 +737,7 @@ instanceTicker: "Server information of posts"
 waitingFor: "Waiting for {x}"
 random: "Random"
 system: "System"
-switchUi: "Layout"
+switchUi: "Switch layout"
 desktop: "Desktop"
 clip: "Clip"
 createNew: "Create new"
@@ -2135,4 +2135,4 @@ _cwStyle:
   classic: "Classic (Misskey/Foundkey-like)"
   alternative: "Alternative (Firefish-like)"
 alwaysExpandCws: "Always expand posts with content warnings"
-hideFromHome: "Hide from home timeline"
\ No newline at end of file
+hideFromHome: "Hide from home timeline"
diff --git a/packages/client/src/navbar.ts b/packages/client/src/navbar.ts
index 0847d3500..3e8723cd1 100644
--- a/packages/client/src/navbar.ts
+++ b/packages/client/src/navbar.ts
@@ -111,27 +111,13 @@ export const navbarItemDef = reactive({
 		title: "switchUi",
 		icon: "ph-layout ph-bold ph-lg",
 		action: (ev) => {
-			os.popupMenu(
-				[
-					{
-						text: i18n.ts.default,
-						active: ui === "default" || ui === null,
-						action: () => {
-							localStorage.setItem("ui", "default");
-							unisonReload();
-						},
-					},
-					{
-						text: i18n.ts.deck,
-						active: ui === "deck",
-						action: () => {
-							localStorage.setItem("ui", "deck");
-							unisonReload();
-						},
-					},
-				],
-				ev.currentTarget ?? ev.target,
-			);
+			if (ui === "default") {
+				localStorage.setItem("ui", "deck");
+				unisonReload();
+			} else {
+				localStorage.setItem("ui", "default");
+				unisonReload();
+			}
 		},
 	},
 	help: {