{
/>
{state.loading = e.detail}}
- on:open_sibling={e => navigator.open_sibling(e.detail)}
+ on:open_sibling={e => fs_navigator.open_sibling(e.detail)}
on:download={download}
/>
@@ -153,7 +153,7 @@ const download = () => {
bind:this={edit_window}
bind:visible={edit_visible}
bucket={state.root.id}
- navigator={navigator}
+ fs_navigator={fs_navigator}
/>
diff --git a/svelte/src/filesystem/Sharebar.svelte b/svelte/src/filesystem/Sharebar.svelte
index d540edc..a80c2cf 100644
--- a/svelte/src/filesystem/Sharebar.svelte
+++ b/svelte/src/filesystem/Sharebar.svelte
@@ -4,7 +4,7 @@ export const generate_share_url = path => {
let bucket_idx = -1
// Find the last node in the path that has a public ID
- for (let i = path.length-1; i > 0; i--) {
+ for (let i = path.length-1; i >= 0; i--) {
if (path[i].id !== undefined && path[i].id !== "me") {
bucket_idx = i
break
@@ -46,11 +46,11 @@ const share = async () => {
return
}
- navigator.navigate(state.base.path, false)
+ fs_navigator.navigate(state.base.path, false)
}
export let state
-export let navigator
+export let fs_navigator
const share_email = () => {
window.open(
diff --git a/svelte/src/filesystem/Toolbar.svelte b/svelte/src/filesystem/Toolbar.svelte
index e68a36d..d15f0a6 100644
--- a/svelte/src/filesystem/Toolbar.svelte
+++ b/svelte/src/filesystem/Toolbar.svelte
@@ -6,7 +6,7 @@ import { copy_text } from "../util/Util.svelte";
let dispatch = createEventDispatcher()
-export let navigator
+export let fs_navigator
export let state = {
base: {
type: "",
@@ -45,19 +45,20 @@ const copy_link = () => {
link_copied = true
setTimeout(() => {link_copied = false}, 60000)
}
-let share = () => {
+let share = async () => {
if (share_url === "") {
edit_window.edit(state.base, "share")
return
}
- if (navigator.share) {
- navigator.share({
+ try {
+ await navigator.share({
title: state.base.name,
text: "I would like to share '" + state.base.name + "' with you",
url: share_url
})
- } else {
+ } catch (err) {
+ console.debug("Navigator does not support sharing:", err)
sharebar_visible = !sharebar_visible
}
}
@@ -79,13 +80,13 @@ let share = () => {