diff --git a/packages/app/src/context/settings.tsx b/packages/app/src/context/settings.tsx
index 21c845d0d1..2b7520da12 100644
--- a/packages/app/src/context/settings.tsx
+++ b/packages/app/src/context/settings.tsx
@@ -33,6 +33,7 @@ export interface Settings {
editToolPartsExpanded: boolean
showSessionProgressBar: boolean
showCustomAgents: boolean
+ mobileTitlebarPosition: "top" | "bottom"
newLayoutDesigns?: boolean
}
appearance: {
@@ -118,6 +119,7 @@ const defaultSettings: Settings = {
editToolPartsExpanded: false,
showSessionProgressBar: true,
showCustomAgents: false,
+ mobileTitlebarPosition: "top",
},
appearance: {
fontSize: 14,
@@ -248,6 +250,13 @@ export const { use: useSettings, provider: SettingsProvider } = createSimpleCont
setShowCustomAgents(value: boolean) {
setStore("general", "showCustomAgents", value)
},
+ mobileTitlebarPosition: withFallback(
+ () => store.general?.mobileTitlebarPosition,
+ defaultSettings.general.mobileTitlebarPosition,
+ ),
+ setMobileTitlebarPosition(value: "top" | "bottom") {
+ setStore("general", "mobileTitlebarPosition", value)
+ },
newLayoutDesigns,
setNewLayoutDesigns(value: boolean) {
setStore("general", "newLayoutDesigns", value)
diff --git a/packages/app/src/i18n/en.ts b/packages/app/src/i18n/en.ts
index 1ba0c3d230..152bd0d108 100644
--- a/packages/app/src/i18n/en.ts
+++ b/packages/app/src/i18n/en.ts
@@ -839,6 +839,9 @@ export const dict = {
"settings.general.row.showTerminal.description": "Show the terminal button in the desktop title bar",
"settings.general.row.showStatus.title": "Server status",
"settings.general.row.showStatus.description": "Show the server status button in the title bar",
+ "settings.general.row.mobileTitlebarBottom.title": "Bottom navigation",
+ "settings.general.row.mobileTitlebarBottom.description":
+ "Place the title bar and session tabs at the bottom of the screen on mobile",
"settings.general.row.showCustomAgents.title": "Custom agents",
"settings.general.row.showCustomAgents.description": "Show the agent picker in the composer",
"settings.general.row.reasoningSummaries.title": "Show reasoning summaries",
diff --git a/packages/app/src/pages/home.tsx b/packages/app/src/pages/home.tsx
index e9f036993e..cbb9c71ba4 100644
--- a/packages/app/src/pages/home.tsx
+++ b/packages/app/src/pages/home.tsx
@@ -329,7 +329,7 @@ export function NewHome() {
return (
-
+
+ platform.openLink("https://opencode.ai/desktop-feedback")}
+ language={language}
+ />
)
@@ -443,7 +449,7 @@ function HomeProjectColumn(props: {
const dialog = useDialog()
const controller = useServerManagementController({ navigateOnAdd: false })
return (
-