Unsupport $object-subrequest filter option
Background
Firefox is the only browser that let's extensions distinguish between requests loading an <object>
element (e.g. a Flash video), and subsequent requests sent by that plugin. Hence on other platforms, we alias OBJECT_SUBREQUEST
to OBJECT
, effectively making the filter options $object
and $object-subrequest
synonymous on Chromium-based browsers and Microsoft Edge.
Considering that most users are on Chrome, and that plugins like Flash and Java are essentially dead, it doesn't seem to be worth it anymore to keep supporting the $object-subrequest
filter option just for Firefox. Also by removing it, we make the filter behavior more consistent across browsers.
What to change
Remove support for the $object-subrequest
filter option.
Integration notes
Remove the workaround
and add a mapping from object_subrequest
to OBJECT
, in lib/requestBlockers.js
in adblockpluschrome
.
Hints for testers
- Test that the
$object-subrequest
options flag makes a filter invalid (e.g.||example.com/foo^$object-subrequest
should not block requests tohttp://example.com/foo/bar
originating from a Flash object) - Test that a filter with the
$object-subrequest
option enabled does not have side effects on the rest of the list, e.g. given two filters||example.com/foo/bar^$object-subrequest
and||example.com/foo^
, the second filter should still block requests tohttp://example.com/foo/bar
, even when such requests originate from a Flash object
/cc @skipintro