diff --git a/packages/web/src/modals/FavoriteModal.js b/packages/web/src/modals/FavoriteModal.js index 27e5da54f..20e526ece 100644 --- a/packages/web/src/modals/FavoriteModal.js +++ b/packages/web/src/modals/FavoriteModal.js @@ -33,15 +33,11 @@ export default function FavoriteModal({ modalState, editingData = undefined, sav const savedProperties = ['title', 'icon', 'showInToolbar', 'openOnStartup', 'urlPath']; const initialValues = React.useMemo(() => { if (savingTab) { - const res = { + return { title: savingTab.title, icon: savingTab.icon, urlPath: _.kebabCase(_.deburr(savingTab.title)), }; - if (!hasPermission('files/favorites/write')) { - res.shareAsLink = true; - } - return res; } if (editingData) { return _.pick(editingData, savedProperties); @@ -50,6 +46,8 @@ export default function FavoriteModal({ modalState, editingData = undefined, sav const savedFile = savingTab && savingTab.props && savingTab.props.savedFile; + const canWriteFavorite = hasPermission('files/favorites/write'); + const getTabSaveData = async (values) => { const tabdata = {}; const skipEditor = !!savedFile && values.whatToSave != 'content'; @@ -126,7 +124,7 @@ export default function FavoriteModal({ modalState, editingData = undefined, sav return ( - {editingData ? 'Edit favorite' : 'Add to favorites'} + {editingData ? 'Edit favorite' : 'Share / add to favorites'} @@ -135,10 +133,10 @@ export default function FavoriteModal({ modalState, editingData = undefined, sav - {!!savingTab && !electron && hasPermission('files/favorites/write') && ( + {!!savingTab && !electron && canWriteFavorite && ( )} - !values.shareAsLink}> + !values.shareAsLink && canWriteFavorite}> @@ -150,10 +148,10 @@ export default function FavoriteModal({ modalState, editingData = undefined, sav )} - !values.shareAsLink && hasPermission('files/favorites/write')}> + !values.shareAsLink && canWriteFavorite}> - values.shareAsLink}> + values.shareAsLink || !canWriteFavorite}> modalState.close()} />