Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add "trust this website" button in external link popup when clicking on a link #3088

Open
wants to merge 2 commits into
base: clearnet
Choose a base branch
from

Conversation

VityaSchel
Copy link

@VityaSchel VityaSchel commented Apr 29, 2024

First time contributor checklist:

Contributor checklist:

Description

Feature request: #2662

This PR adds separate SessionOpenExternalLinkDialog component which is used instead of customized confirmation modal when opening links. This component has significant design changes to links popup, instead of forcing user to choose: either copy link or open it in browser, it allows to copy URL fully, partially, close popup and open link in default browser.

Additionally, second commit adds trusted websites controller which is essentially a list of hostnames that user trusts. When clicking on a link that can be parsed and that has matching hostname in that list, user will not be prompted to copy url, but instead, this link will be opened in default browser instantly.

User can add trusted websites by clicking on a "trust this website" button under main actions buttons in SessionOpenExternalLinkDialog, and remove websites from trusted websites list from settings -> privacy section.

Trusted websites controller is based on BlockedNumberController and saves hostnames list by trusted-websites key in db.

I've added 4 localization keys: trustHostname (has hostname variable), trustedWebsites, trustedWebsitesDescription, noTrustedWebsitesEntries.

This commit also fixes 2 bugs:

  • shrinking drop-down sections
    image
  • incorrect arrow rotation based on dropdown state (open/closed)
    image

This commit adds the trusted websites list via TrustedWebsitesController
and "Trust [hostname]" button to OpenExternalLinkDialog.

Need help with resolving issue with persisting it to db.

See oxen-io#2662.
@KeeJef KeeJef added the Jira This ticket is being tracked in Jira label May 8, 2024
@KeeJef
Copy link
Collaborator

KeeJef commented May 8, 2024

Tracking this internally via ticket SES-1808

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Jira This ticket is being tracked in Jira
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants