about summary refs log tree commit diff
path: root/src/view/com/util/forms/DropdownButton.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/view/com/util/forms/DropdownButton.tsx')
-rw-r--r--src/view/com/util/forms/DropdownButton.tsx14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/view/com/util/forms/DropdownButton.tsx b/src/view/com/util/forms/DropdownButton.tsx
index 938c346cd..f21323efb 100644
--- a/src/view/com/util/forms/DropdownButton.tsx
+++ b/src/view/com/util/forms/DropdownButton.tsx
@@ -19,6 +19,9 @@ import {toShareUrl} from 'lib/strings/url-helpers'
 import {useStores} from 'state/index'
 import {usePalette} from 'lib/hooks/usePalette'
 import {useTheme} from 'lib/ThemeContext'
+import {isAndroid, isIOS} from 'platform/detection'
+import Clipboard from '@react-native-clipboard/clipboard'
+import * as Toast from '../../util/Toast'
 
 const HITSLOP = {left: 10, top: 10, right: 10, bottom: 10}
 const ESTIMATED_MENU_ITEM_HEIGHT = 52
@@ -159,7 +162,16 @@ export function PostDropdownBtn({
       icon: 'share',
       label: 'Share...',
       onPress() {
-        Share.share({url: toShareUrl(itemHref)})
+        const url = toShareUrl(itemHref)
+
+        if (isIOS || isAndroid) {
+          Share.share({url})
+        } else {
+          // React Native Share is not supported by web. Web Share API
+          // has increasing but not full support, so default to clipboard
+          Clipboard.setString(url)
+          Toast.show('Copied to clipboard')
+        }
       },
     },
     {