Opened on 11/02/2017 at 12:54:07 PM

Closed on 12/12/2017 at 11:42:32 AM

Last modified on 12/13/2017 at 09:49:53 AM

#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.

Attachments (0)

Change History (19)

comment:1 Changed on 11/02/2017 at 08:46:47 PM 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 on 11/03/2017 at 07:43:47 PM by saroyanm

  • Priority changed from Unknown to P3
  • Ready set

comment:3 Changed on 11/03/2017 at 07:44:21 PM by saroyanm

  • Keywords options-page added

comment:4 Changed on 11/03/2017 at 08:27:23 PM 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 on 11/21/2017 at 05:21:00 PM 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 on 11/21/2017 at 05:21:41 PM by kzar

  • Description modified (diff)

comment:7 Changed on 11/21/2017 at 05:22:44 PM by kzar

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

comment:8 Changed on 11/29/2017 at 01:05:29 PM 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 on 11/29/2017 at 01:23:53 PM by Ross

The same applies to subscription links.

comment:10 Changed on 11/30/2017 at 12:23:03 PM 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 on 12/01/2017 at 09:27:58 AM 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 on 12/05/2017 at 10:28:06 AM 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 on 12/05/2017 at 03:42:15 PM 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 on 12/07/2017 at 11:39:35 AM by kzar

  • Owner set to kzar

comment:15 Changed on 12/07/2017 at 11:39:48 AM by kzar

  • Ready set

comment:16 Changed on 12/07/2017 at 11:50:49 AM by kzar

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

comment:17 Changed on 12/12/2017 at 11:41:40 AM by abpbot

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

comment:18 Changed on 12/12/2017 at 11:42:32 AM 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 on 12/13/2017 at 09:49:53 AM 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

Add Comment

Modify Ticket

Change Properties
Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from kzar.
 
Note: See TracTickets for help on using tickets.