diff --git a/CHANGELOG.md b/CHANGELOG.md index 799322571..9157bd1cc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Publish Page improvements to prevent accidental overwrites of existing claims _community pr!_ ([#4416](https://github.com/lbryio/lbry-desktop/pull/4416)) - Option to remove abandoned claims from Blocked Channels page _community pr!_ ([#4433](https://github.com/lbryio/lbry-desktop/pull/4433)) - New channel create/edit page ([#4445](https://github.com/lbryio/lbry-desktop/pull/4445)) +- Add dialog to copy various types of links for a claim _community pr!_ ([#4474](https://github.com/lbryio/lbry-desktop/pull/4474)) ### Changed diff --git a/static/app-strings.json b/static/app-strings.json index 66a367130..5d3f2556b 100644 --- a/static/app-strings.json +++ b/static/app-strings.json @@ -1291,5 +1291,9 @@ "Awesome! You just followed your first first channel.": "Awesome! You just followed your first first channel.", "After submitting, it will take a few minutes for your changes to be live for everyone.": "After submitting, it will take a few minutes for your changes to be live for everyone.", "Anything": "Anything", - "Paid": "Paid" + "Paid": "Paid", + "Start at": "Start at", + "Links": "Links", + "LBRY URL": "LBRY URL", + "Download Link": "Download Link" } diff --git a/ui/component/common/icon-custom.jsx b/ui/component/common/icon-custom.jsx index 92a3fa495..7dbb916b4 100644 --- a/ui/component/common/icon-custom.jsx +++ b/ui/component/common/icon-custom.jsx @@ -620,6 +620,21 @@ export const icons = { viewBox: '0 0 60 60', } ), + [ICONS.SHARE_LINK]: buildIcon( + + + + + , + { + viewBox: '0 0 60 60', + } + ), [ICONS.PURCHASED]: buildIcon( diff --git a/ui/component/socialShare/view.jsx b/ui/component/socialShare/view.jsx index 318e77cca..218ea4ccc 100644 --- a/ui/component/socialShare/view.jsx +++ b/ui/component/socialShare/view.jsx @@ -30,7 +30,7 @@ type Props = { function SocialShare(props: Props) { const { claim, title, referralCode, user, webShareable, position } = props; const [showEmbed, setShowEmbed] = React.useState(false); - const [showExtra, setShowExtra] = React.useState(false); + const [showClaimLinks, setShowClaimLinks] = React.useState(false); const [includeStartTime, setincludeStartTime]: [boolean, any] = React.useState(false); const [startTime, setStartTime]: [string, any] = React.useState(secondsToHms(position)); const startTimeSeconds: number = hmsToSeconds(startTime); @@ -140,16 +140,16 @@ function SocialShare(props: Props) { title={__('Embed this content')} onClick={() => { setShowEmbed(!showEmbed); - setShowExtra(false); + setShowClaimLinks(false); }} /> { - setShowExtra(!showExtra); + setShowClaimLinks(!showClaimLinks); setShowEmbed(false); }} /> @@ -170,7 +170,7 @@ function SocialShare(props: Props) { startTime={startTimeSeconds} /> )} - {showExtra && ( + {showClaimLinks && ( diff --git a/ui/constants/icons.js b/ui/constants/icons.js index 5cf30aca7..8c77a8f34 100644 --- a/ui/constants/icons.js +++ b/ui/constants/icons.js @@ -45,6 +45,7 @@ export const REDDIT = 'Reddit'; export const LINKEDIN = 'LinkedIn'; export const EMBED = 'Embed'; export const MORE = 'More'; +export const SHARE_LINK = 'ShareLink'; export const ACCOUNT = 'User'; export const SETTINGS = 'Settings'; export const INVITE = 'Users';