about summary refs log tree commit diff
path: root/src/view
diff options
context:
space:
mode:
Diffstat (limited to 'src/view')
-rw-r--r--src/view/screens/Menu.tsx7
-rw-r--r--src/view/shell/mobile/index.tsx24
2 files changed, 26 insertions, 5 deletions
diff --git a/src/view/screens/Menu.tsx b/src/view/screens/Menu.tsx
index 27ed91adc..fab0f6dec 100644
--- a/src/view/screens/Menu.tsx
+++ b/src/view/screens/Menu.tsx
@@ -37,7 +37,12 @@ export const Menu = ({navIdx, visible}: ScreenParams) => {
   // =
 
   const onNavigate = (url: string) => {
-    store.nav.navigate(url)
+    if (url === '/notifications') {
+      store.nav.switchTo(1, true)
+    } else {
+      store.nav.switchTo(0, true)
+      store.nav.navigate(url)
+    }
   }
   const onPressCreateScene = () => {
     store.shell.openModal(new CreateSceneModel())
diff --git a/src/view/shell/mobile/index.tsx b/src/view/shell/mobile/index.tsx
index 2c1023632..9acbdeca9 100644
--- a/src/view/shell/mobile/index.tsx
+++ b/src/view/shell/mobile/index.tsx
@@ -121,13 +121,29 @@ export const MobileShell: React.FC = observer(() => {
   const screenRenderDesc = constructScreenRenderDesc(store.nav)
 
   const onPressHome = () => {
-    if (store.nav.tab.current.url === '/') {
-      scrollElRef.current?.scrollToOffset({offset: 0})
+    if (store.nav.tab.fixedTabPurpose === 0) {
+      if (store.nav.tab.current.url === '/') {
+        scrollElRef.current?.scrollToOffset({offset: 0})
+      } else {
+        store.nav.tab.fixedTabReset()
+      }
+    } else {
+      store.nav.switchTo(0, false)
+      if (store.nav.tab.index === 0) {
+        store.nav.tab.fixedTabReset()
+      }
+    }
+  }
+  const onPressNotifications = () => {
+    if (store.nav.tab.fixedTabPurpose === 1) {
+      store.nav.tab.fixedTabReset()
     } else {
-      store.nav.tab.resetTo('/')
+      store.nav.switchTo(1, false)
+      if (store.nav.tab.index === 0) {
+        store.nav.tab.fixedTabReset()
+      }
     }
   }
-  const onPressNotifications = () => store.nav.tab.resetTo('/notifications')
   const onPressTabs = () => toggleTabsMenu(!isTabsSelectorActive)
   const doNewTab = (url: string) => () => store.nav.newTab(url)