Opened on 02/03/2015 at 04:54:41 PM
Closed on 09/23/2017 at 03:37:45 AM
#1933 closed change (rejected)
Synchronize deriving of the parent URL among platforms for the content of the anonymous frames
Reported by: | sergz | Assignee: | |
---|---|---|---|
Priority: | Unknown | Milestone: | |
Module: | Unknown | Keywords: | |
Cc: | greiner, fhd, jobp, sebastian | Blocked By: | |
Blocking: | Platform: | Unknown | |
Ready: | no | Confidential: | no |
Tester: | Unknown | Verified working: | no |
Review URL(s): |
Description
Let's say we have the following page with anonymous frame
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <script type='text/javascript'> function onLoad() { document.getElementById("xxx").contentWindow.document.write('<img src="https://adblockplus.org/_override-static/global/global/img/sprite-main.png" />') }; </script> </head> <body onload="onLoad();"> <iframe id="xxx" /> </body> </html>
There are two points:
- the URL to obtain the list of CSS selectors for the nested frame. (JIC, the CSS from the parent frame are not applied to this nested frame, so we need to inject them).
- the parent URL for the resources which are loaded by the anonymous frame. We need these URL to call core matcher.
Observed
In the extension for Google Chrome (current version is 1.8.10)
- we don't inject CSS
- we use the domain of the resource for the children of the frame. Thus, adblockplus.org for the image from the example above.
In the extension for Firefox (2.6.7):
- we don't inject CSS
- we use the domain of the parent frame of the anonymous frame for the children of the anonymous frame. Thus, the domain of the page. It also can be that we use the domain of the root frame (I have not check the case with the nested frames from different domains).
What to do
- We should inject CSS into such frames.
- It seems reasonable to use the source of the parent frame of the anonymous frame for the resources of the anonymous frame, so we need to change it in the extension for Google Chrome as well.
- Check how it works in libadblockplus.
- Since it's already not the first case when we have questions related to the frame hierarchy, we should think whether we can move it into the core to avoid different behaviour on different clients.
Attachments (0)
Change History (3)
comment:1 Changed on 02/03/2015 at 06:50:44 PM by jobp
- Cc jobp added
comment:2 Changed on 06/03/2015 at 11:26:15 AM by sebastian
- Cc sebastian added
- Verified working unset
comment:3 Changed on 09/23/2017 at 03:37:45 AM by sebastian
- Resolution set to rejected
- Status changed from new to closed
- Tester set to Unknown
Besides the lack of feedback, the request to unify different implementations became less relevant with the legacy Firefox extension being deprecated, and all browser extensions, now, using the same code.
Note: See
TracTickets for help on using
tickets.
Note that we never "inject" CSS into the document on Firefox but use a user stylesheet. As far as I know this is true for anonymous frames as well. On Chrome, we do inject CSS into anonymous frames, though we only started recently to do so.
However, I don't see how the frame handling can/should be moved into the core code as the implementation is platform specific.