Opened 12 months ago

Closed 10 months ago

Last modified 10 months ago

#5971 closed defect (fixed)

[webextension] New options page is broken for Firefox 50

Reported by: Ross Assignee: kzar
Priority: P2 Milestone: Adblock-Plus-3.0.3-for-Chrome-Opera-Firefox
Module: Platform Keywords: options-page, externaldependencies
Cc: trev, sebastian, mjethani, greiner, saroyanm Blocked By:
Blocking: Platform: Firefox
Ready: yes Confidential: no
Tester: Ross Verified working: yes
Review URL(s):

https://codereview.adblockplus.org/29632555/

Description (last modified by trev)

Environment

ABP 3.0.1
Firefox 50 / Windows 10

Works in Firefox 51-57.

How to reproduce

  1. Select [ABP Icon] > [Options].

Try any of the following:

  • Refreshing the page.
  • Ticking one of the checkboxes.
  • Whitelisting a domain.
  • Adding a custom filter.
  • etc.

Observed behaviour

  • After pressing refresh the options page completely breaks.
  • When adjusting most settings nothing appears to happen, but when the options page is next loaded the settings will show as updated.
  • When adjusting the "Privacy & Security" settings they are not even updated the next time the options page is loaded.

Expected behaviour

Refreshing the options page doesn't break it. Settings are shown as updated straight after the user changes them. The "Privacy & Security" options can be updated.

Notes

The cause here is https://bugzilla.mozilla.org/show_bug.cgi?id=1209869 - messages can only be sent to content scripts, not pages loaded in the tab. When the options page is refreshed the following message is logged:

TypeError: this.cloneScope is null[Learn More] ExtensionUtils.jsm:387:1

When a setting is changed it appears that sending the response message back to the options page fails:

Error: Could not establish connection. Receiving end does not exist.

When loading the options page it complains:

value.indexOf is not a function desktop-options.js:1338

What to change

Mark the builds as requiring at least Firefox 51.

Change History (19)

comment:1 Changed 12 months ago by trev

Actually, filters are being saved successfully - you can see them if you reload the page. Browser Console shows the error "Could not establish connection. Receiving end does not exist." This error might or might not be related.

comment:2 Changed 12 months ago by saroyanm

  • Priority changed from Unknown to P3
  • Ready set

comment:3 Changed 12 months ago by saroyanm

  • Keywords options-page added

comment:4 Changed 12 months ago by saroyanm

The Added whitelisted domains are not being updated in the UI as well, this might be related to each other.

comment:5 Changed 11 months ago by kzar

  • Cc mjethani greiner saroyanm added
  • Component changed from Unknown to User-Interface
  • Description modified (diff)
  • Summary changed from [webextension] Cannot save custom filters in Firefox 50 to [webextension] New options page is broken for Firefox 50

(The fact you triaged this implies it belongs to User-Interface, so I've set that and copied you guys in.)

comment:6 Changed 11 months ago by kzar

  • Description modified (diff)

comment:7 Changed 11 months ago by kzar

Perhaps P3 is too low considering the options page is almost completely broken for these users?

comment:8 Changed 11 months ago by Ross

  • Description modified (diff)

The options page mostly functions okay in Firefox 51+ so this is just a Firefox 50 issue.

comment:9 Changed 11 months ago by Ross

The same applies to subscription links.

comment:10 Changed 11 months ago by kzar

  • Component changed from User-Interface to Platform
  • Description modified (diff)
  • Owner set to kzar
  • Priority changed from P3 to P2

We're going to display the old options page for these users for the time being. Perhaps in the future we'll stop supporting Firefox 50.

comment:11 Changed 11 months ago by trev

  • Description modified (diff)

Added a reference to https://bugzilla.mozilla.org/show_bug.cgi?id=1209869 to the description which is now established as the cause of this issue.

comment:12 Changed 11 months ago by kzar

  • Description modified (diff)
  • Keywords externaldependencies added
  • Owner kzar deleted
  • Ready unset

As discussed in IRC displaying the old options page is unlikely to help here, so I'm not sure what we can do other than drop Firefox 50 support. I'm open to suggestions though.

comment:13 Changed 11 months ago by trev

  • Description modified (diff)

We'll mark Adblock Plus 3.0.2 as not compatible with Firefox 50. Leaving this issue open to properly update support range in the repository after the release.

comment:14 Changed 11 months ago by kzar

  • Owner set to kzar

comment:15 Changed 11 months ago by kzar

  • Ready set

comment:16 Changed 11 months ago by kzar

  • Review URL(s) modified (diff)
  • Status changed from new to reviewing

comment:17 Changed 10 months ago by abpbot

A commit referencing this issue has landed:
Issue 5971 - Drop support for Firefox 50

comment:18 Changed 10 months ago by kzar

  • Milestone set to Adblock-Plus-for-Chrome-Opera-Firefox-next
  • Resolution set to fixed
  • Status changed from reviewing to closed

comment:19 Changed 10 months ago by Ross

  • Tester changed from Unknown to Ross
  • Verified working set

Fixed. Builds are now marked Firefox 51+.

ABP 3.0.2.1948
Firefox 50 / 51 / 57 / Windows 7

Note: See TracTickets for help on using tickets.