about summary refs log tree commit diff
path: root/src/view/shell
diff options
context:
space:
mode:
Diffstat (limited to 'src/view/shell')
-rw-r--r--src/view/shell/desktop/Feeds.tsx5
-rw-r--r--src/view/shell/desktop/LeftNav.tsx23
-rw-r--r--src/view/shell/desktop/RightNav.tsx4
3 files changed, 24 insertions, 8 deletions
diff --git a/src/view/shell/desktop/Feeds.tsx b/src/view/shell/desktop/Feeds.tsx
index 4da1401c3..3f2063887 100644
--- a/src/view/shell/desktop/Feeds.tsx
+++ b/src/view/shell/desktop/Feeds.tsx
@@ -82,11 +82,12 @@ function FeedItem({
 
 const styles = StyleSheet.create({
   container: {
-    position: 'relative',
+    flex: 1,
+    overflowY: 'auto',
     width: 300,
     paddingHorizontal: 12,
+    paddingVertical: 18,
     borderTopWidth: 1,
     borderBottomWidth: 1,
-    paddingVertical: 18,
   },
 })
diff --git a/src/view/shell/desktop/LeftNav.tsx b/src/view/shell/desktop/LeftNav.tsx
index 2f7a9ef82..b1065f03c 100644
--- a/src/view/shell/desktop/LeftNav.tsx
+++ b/src/view/shell/desktop/LeftNav.tsx
@@ -185,20 +185,33 @@ function ComposeBtn() {
   const {getState} = useNavigation()
   const {isTablet} = useWebMediaQueries()
 
-  const getProfileHandle = () => {
+  const getProfileHandle = async () => {
     const {routes} = getState()
     const currentRoute = routes[routes.length - 1]
+
     if (currentRoute.name === 'Profile') {
-      const {name: handle} =
+      let handle: string | undefined = (
         currentRoute.params as CommonNavigatorParams['Profile']
-      if (handle === store.me.handle) return undefined
+      ).name
+
+      if (handle.startsWith('did:')) {
+        const cached = await store.profiles.cache.get(handle)
+        const profile = cached ? cached.data : undefined
+        // if we can't resolve handle, set to undefined
+        handle = profile?.handle || undefined
+      }
+
+      if (!handle || handle === store.me.handle || handle === 'handle.invalid')
+        return undefined
+
       return handle
     }
+
     return undefined
   }
 
-  const onPressCompose = () =>
-    store.shell.openComposer({mention: getProfileHandle()})
+  const onPressCompose = async () =>
+    store.shell.openComposer({mention: await getProfileHandle()})
 
   if (isTablet) {
     return null
diff --git a/src/view/shell/desktop/RightNav.tsx b/src/view/shell/desktop/RightNav.tsx
index 12ca256d2..84d7d7854 100644
--- a/src/view/shell/desktop/RightNav.tsx
+++ b/src/view/shell/desktop/RightNav.tsx
@@ -123,8 +123,10 @@ const styles = StyleSheet.create({
     position: 'absolute',
     top: 20,
     // @ts-ignore web only
-    left: 'calc(50vw + 310px)',
+    left: 'calc(50vw + 320px)',
     width: 304,
+    // @ts-ignore web only
+    maxHeight: '90vh',
   },
 
   message: {