Opened 3 years ago

Closed 3 years ago

Last modified 3 years ago

#4696 closed defect (invalid)

Filter "|data:text$popup" blocks windows opened by FF Dict Extension

Reported by: david_costanzo Assignee:
Priority: Unknown Milestone:
Module: Adblock-Plus-for-Firefox Keywords:
Cc: trev, mapx, greiner, fanboy Blocked By:
Blocking: Platform: Firefox
Ready: no Confidential: no
Tester: Unknown Verified working: no
Review URL(s):

Description

Background

I am the maintainer of the "Dict" extensions, which uses a protocol called DICT to look up the definitions of selected words on a Web page. The definitions are shown in a popup window.

To work with Firefox's security model, the only way I know of to open a new window is to use a "data://" URI, encoding the HTML of the word's definition in the URI.

This strategy unfortunately causes the "|data:text$popup" filter to close the window.

I am opening this ticket to establish a dialog with the goal of arriving at a zero-know-how solution for end-users who wish to use both the Dict extension and the AdBlock Plus extension.

Environment

Firefox 50. FedoraCore 23 (GNU/Linux)
AdBlock Plus 2.8.2
Using "EasyList" filter

How to reproduce

  1. Install AdBlock Plus
  2. Install the "Dict" extension
  3. Go to any Web Page with English text
  4. Select a common word on the page
  5. Right-click
  6. Choose "Look Up Word" from the context menu

Observed behaviour

A window opens with the definition of the word, then quickly closes.

Expected behaviour

A window opens with the definition of the word and remains open.

Change History (9)

comment:1 Changed 3 years ago by mapx

  • Cc trev mapx added
  • Component changed from Unknown to Adblock-Plus-for-Firefox

comment:2 follow-up: Changed 3 years ago by greiner

  • Cc greiner added
  • Resolution set to invalid
  • Status changed from new to closed

Thanks for the detailed description. Seems like this filter was introduced in an effort to apply to more cases (see change on GitHub).

But since Adblock Plus doesn't create the filters itself, I'd suggest reporting this issue to the guys at EasyList so that they can make an appropriate change in the filter list.

So I'm closing this ticket due to the fact that it's a filter issue and not an issue with the extension.

comment:3 follow-up: Changed 3 years ago by mapx

How could easylist guys change the filter to not catch the dict addon ? Probably this is the real question.

comment:4 in reply to: ↑ 3 Changed 3 years ago by greiner

Replying to mapx:

How could easylist guys change the filter to not catch the dict addon ? Probably this is the real question.

My question would be why that change was made in the first place and whether there might be other ways of fixing the the problem it was meant to solve.

Because the underlying issue is that the filter not only breaks Dict but presumably also any other legitimate uses of data-URI popups.

comment:5 follow-up: Changed 3 years ago by mapx

I guess any generic filter in easylist could break a specific addon. Is there any possibility for ABP (now or using some new future approach) to figure it out ?

comment:6 in reply to: ↑ 5 Changed 3 years ago by greiner

Replying to mapx:

I guess any generic filter in easylist could break a specific addon. Is there any possibility for ABP (now or using some new future approach) to figure it out ?

Maybe, but it's difficult to investigate that without having a few examples of ads that this filter is supposed to block.

comment:7 in reply to: ↑ 2 ; follow-up: Changed 3 years ago by david_costanzo

Replying to greiner:

But since Adblock Plus doesn't create the filters itself, I'd suggest reporting this issue to the guys at EasyList so that they can make an appropriate change in the filter list.

Thanks for the suggestion. I've opened this ticket on EasyList.

comment:8 Changed 3 years ago by mapx

  • Cc fanboy added

comment:9 in reply to: ↑ 7 Changed 3 years ago by greiner

Replying to david_costanzo:

Thanks for the suggestion. I've opened this ticket on EasyList.

Thanks.

You may also want to look into sandboxed iFrames which are meant for isolating third-party code from the page it's embedded in by restricting what the iFrame can do. This should allow you to safely embed the content without having to open data-URI popups.

XUL also offers similar features that are used by Firefox to safely embed website frames into the browser (see chrome://browser/content/browser.xul) so you should be able to find something that works for you.

Note: See TracTickets for help on using tickets.