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

Firefox add-on is not supported at this time #31

Open
kmjennison opened this issue Apr 2, 2021 · 8 comments
Open

Firefox add-on is not supported at this time #31

kmjennison opened this issue Apr 2, 2021 · 8 comments

Comments

@kmjennison
Copy link
Contributor

kmjennison commented Apr 2, 2021

Our team is saddened and disappointed that we cannot currently support a Tab for a Cause add-on for Firefox. This issue provides some history and how this could be resolved in the future.

Firefox drops built-in support for custom new tab page destinations

In 2015, Firefox removed the option to set the new tab page to a custom URL, primarily because it was abused by bad actors. After the removal of that option, Firefox users who wanted a website as a new tab page needed to install an add-on to override the new tab page, such as New Tab Override.

Since then, Firefox's support for custom new tabs has unfortunately been less than ideal. Over the years, our team has advocated for improvements to the new tab user experience but without great results.

The Mozilla team has chosen not to support a cleared or highlighted URL bar for custom new tab pages. Consequently, users need to manually highlight the URL after they open a new tab (e.g., see this New Tab Override issue). As a workaround, some new tab add-ons have resorted to iframing websites on the new tab (e.g. Custom New Tab Page), which comes with practical limitations and potentially security concerns.

The Mozilla team has also not provided an add-on API to set a dynamic custom new tab page.

Where Tab for a Cause fits in

Our app, Tab for a Cause, lets users raise money for nonprofits simply by setting their new tab page to a charity-supporting web app. We raise money by showing ads on the new tab page, then giving money to the nonprofit a user wants to support.

Because our new tab page shows ads, it needs to be a web page. It currently would not be able to raise money if it were bundled as a local file within an add-on.

Mozilla becomes stricter about remote resources in add-ons

In 2019, Firefox amended its add-ons policy to state:

Add-ons must not load or redirect to a remote new tab page. The new tab page must be contained within the add-on.

Naturally, we were concerned what that would mean for Firefox users who want to set their new tab to a web page, such as Tab for a Cause, given that add-ons remain the only way to do so in Firefox.

An add-ons developer asked the question:

But add-ons are still allowed to load a “remote new tab page” with explicit user consent, right? Otherwise add-ons like New Tab Override would no longer be possible

In response, a Firefox Add-Ons Technical Editor wrote:

Add-ons are allowed to allow the user explicitly setting a new tab page of a user’s choice. As such, your add-on in its current does not violate this upcoming policy, as the add-on itself does not load a remote page.

To us, this seemed like the right balance. We are strongly in favor of policies that ensure add-ons are safe for users and rely on explicit user consent to operate.

Mozilla disables the Tab for a Cause add-on

In 2021, the Mozilla team disabled the Tab for a Cause Firefox add-on because it sets the new tab to a remote web page. Despite conversations with the Mozilla team, we have not yet found a resolution.

We disagree with the Mozilla team's decision because:

  • We explicitly ask for user consent. Tab for a Cause clearly asks for user consent to update the tab page (indeed, "tab" is even in our name). Our team has always been grounded in the principle of respecting our users.
  • Our add-on has no surprises. It does one thing: changes the new tab page. It requires no additional permissions. (You can check this claim for yourself in this repository!)
  • The add-on policy appears to be applied selectively. Other add-ons, such as New Tab Override, redirect the user to remote new tab pages. We want these add-ons to remain approved—given they're still the only way to set a website as your new tab—but have not received any clarification on why Tab for a Cause cannot have a web page as the new tab when other add-ons can.

Where we go from here

We respect the Mozilla team, we're Firefox users ourselves, and we always strive to comply with policy. At this moment, though, we have no clear way of serving our users on the Firefox platform. While users might choose to set their new tab page to Tab for a Cause by other means, we aren't comfortable recommending 3rd party software to do so, given that we can't ensure it will keep our users safe.

Thus, we're left with the option of asking our users to transition to Edge, Chrome, or Safari.

We hope the Mozilla team clarifies this grey area of policy or improves Firefox's technical support for custom new tab pages. When that happens, we will work to bring Tab for a Cause back to Firefox.

If you’d like to voice your opinion to the Firefox team, you can contact them here or email [email protected].

@blakegearin
Copy link

Note: I was able to sideload the extension (.XPI file) on Firefox Version 89.0.2 (64-bit)

@mamgusian
Copy link

I made https://tab.gladly.io/newtab/ my home page in FireFox
When I open a new tab it goes to the default FireFox new tab, but I then click on the home page icon and I get the Tab for a Cause page

@Ferrugius
Copy link

Ferrugius commented Sep 23, 2022

I've tried to reach out to Mozilla's Team and they claim that you are lying basically (screenshots from the conversation attached). @kmjennison Could you please provide us with the exact message you got from Mozilla's Team that made it impossible for you to operate, so we could use it when talking to them?
Firefox_Screenshot_2022-09-23T09-01-02 138Z
Firefox_Screenshot_2022-09-23T09-01-28 796Z
Firefox_Screenshot_2022-09-23T09-01-41 635Z

@kmjennison
Copy link
Contributor Author

Hi @Ferrugius, thanks for advocating for Tab for a Cause! We appreciate your support.

Firefox does allow add-ons to set a local new tab page. I think that's why the Mozilla representative said it's "not correct" that the policy prevents changing the default tab page. However, their add-on policies still explicitly ban setting a remote web page as the new tab page: "Add-ons must not load or redirect to a remote new tab page. The new tab page must be contained within the add-on."

Tab for a Cause needs to be a web page to raise money, so this policy prevents us from having a Firefox add-on.

I've attached the conversation I had with the reviewer when our add-on was rejected. We are still unclear why some other add-ons are allowed to load remote web pages (the Mozilla team did not reply again).

We respect the Mozilla team's efforts to communicate here and ensure a good add-on experience. But, we believe they're making the wrong call in this case.

Firefox screenshot edited

@megan-starr9
Copy link

megan-starr9 commented Jan 20, 2023

This may be a silly question, but could it be possible that they use a local page, but then use javascript within that page to update the url or load content within the page?

I'm not well-versed in firefox add-ons admittedly, but it does seem like you could get similar functionality by setting the tab page to a local file and then loading ads within that file from a remote url. i'm not sure if that would be flagged or not, but it could be the way those other extensions are getting around this limitation?

In any event, I hope you are able to get this resolved at some point <3 I love the concept of this extension, y'all are doing good work here

@kmjennison
Copy link
Contributor Author

@megan-starr9 Thanks for your support! Unfortunately, the policy is explicit about this, too:

Add-ons must not load or redirect to a remote new tab page. The new tab page must be contained within the add-on.

@megan-starr9
Copy link

@kmjennison Makes sense! I suppose the question I would ask then would be - what constitutes "loading" a new page?

If it were me, I'd see if loading an api endpoint is acceptable, then provide the ads via that endpoint to a contained page. (Usage stats could be done via api call too if need be).

If API calls aren't acceptable though, that's rough and I'm really now sure how other add-ons got away with it!

@mirh
Copy link

mirh commented Sep 22, 2024

This is all nice and dandy.
But putting aside that even in the extremely unlikely hypothesis they were really discriminating you could just tell people to throw your newpage link into all the other override addons (one of them somehow also having been officially featured/recommended by mozilla?), why don't you just put up some instruction to sideload the XPI?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants