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

Add Options/Settings Page Functionality #721

Draft
wants to merge 20 commits into
base: main
Choose a base branch
from
Draft

Conversation

maxxcrawford
Copy link
Collaborator

@maxxcrawford maxxcrawford commented Jan 27, 2021

Features

This PR adds a preferences panel (accessible from both the add-on panel and the about:addons page). Beyond adding this space for future options/prefs, I added two options to start:

  1. Allow Instagram data. This would allow IG embedded posts to load.
  2. Turn off badging on non-Facebook pages. This would not put purple circles on login buttons, etc.

Resolved/mentioned issues:

TODO

Testing

TBD

Screenshots

Gear Icon to open prefernces page:
image

about:addons preferences pane (WIP)
image

@maxxcrawford maxxcrawford added the WIP Work in progress label Jan 27, 2021
@maxxcrawford maxxcrawford changed the title Settings Page/Options Add Options/Settings Page Functionality Jan 27, 2021
@@ -244,5 +244,9 @@
"inPageUI-tooltip-button-share-passive": {
"message": "If you click this button, Facebook will be able to track your visit to this site.",
"description": ""
},
"fbcSettingsTitle": {
"message": "Preferences",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Firefox is moving to "Settings", is there a reason to use "Preferences"?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

New title is "Optional Settings"

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've never seen the concept of "Pptional settings" outside of technical configuration files. What's the reasoning behind this choice, vs just "Settings"?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

All of the settings are opt-in. I'm overthinking it. I'll switch it to "Settings"

One note: when on about:addons, and digging into the settings panel for a specific add-on, they use "Preferences"

image

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One note: when on about:addons, and digging into the settings panel for a specific add-on, they use "Preferences"

image

That's probably worth a bug. I don't think the use of Settings was enforced, besides Firefox main Settings (previously Preferences/Options), but it would be nice to have consistency.

Copy link
Collaborator Author

@maxxcrawford maxxcrawford left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Self-review notes from sync review with @tcinotto

<input class="settings-checkbox" id="allowInstagram" type="checkbox" name="instagram" value="">
<div class="checkbox-copy">
<label for="allowInstagram">Allow Instagram to load outside of the Facebook container</label>
<p>This setting allows for embedded Instagram posts to load on websites outside of the Facebook Container. Note that enabling this setting may allow Facebook to track you across other websites.</p>
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Move "Note that enabling this setting may allow Facebook to track you across other websites." to its own paragraph, highlighted with warning colors/treatment.

<input class="settings-checkbox" id="hideBadgeContent" type="checkbox" name="hideBadgeContent" value="">
<div class="checkbox-copy">
<label for="hideBadgeContent"><img class="inline-fbc-icon" src="fbc-icon.svg" alt=""> Hide FBC Badge </label>
<p>This setting hides the badge from appearing (including on hover) on Share/Login elements across non-Facebook sites.</p>
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add additional copy explaining that sites can still be added to the FB container via the panel

<input class="settings-checkbox" id="replaceTab" type="checkbox" name="replaceTab" value="">
<div class="checkbox-copy">
<label for="replaceTab">Open all Facebook-owned links in a new tab</label>
<p>This setting changes how opening Facebook-specific links behaves. The default behavior is to replace the current tab with the new link.</p>
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Much larger conversation: With Facebook's parent company name change, should we reference "Meta" in some spots?

Suggested change
<p>This setting changes how opening Facebook-specific links behaves. The default behavior is to replace the current tab with the new link.</p>
<p>This setting changes how opening Meta-specific links behaves. The default behavior is to replace the current tab with the new link.</p>

@maxxcrawford maxxcrawford marked this pull request as ready for review June 8, 2022 18:49
…ng the active tab, discarding the history state
…background.js, rather than unchecking/checking all the boxes.
…Facebook Container. (Treated the same way as about: pages)
@maxxcrawford maxxcrawford removed the WIP Work in progress label Jun 8, 2022
@maxxcrawford maxxcrawford marked this pull request as draft June 8, 2022 18:57
@maxxcrawford maxxcrawford added the WIP Work in progress label Jun 8, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
WIP Work in progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants