15 |
15 |
16 class AdBlockPage(QObject): |
16 class AdBlockPage(QObject): |
17 """ |
17 """ |
18 Class to apply AdBlock rules to a web page. |
18 Class to apply AdBlock rules to a web page. |
19 """ |
19 """ |
|
20 |
20 def hideBlockedPageEntries(self, page): |
21 def hideBlockedPageEntries(self, page): |
21 """ |
22 """ |
22 Public method to apply AdBlock rules to a web page. |
23 Public method to apply AdBlock rules to a web page. |
23 |
24 |
24 @param page reference to the web page (HelpWebPage) |
25 @param page reference to the web page (HelpWebPage) |
25 """ |
26 """ |
26 if page is None: |
27 if page is None: |
27 return |
28 return |
28 |
29 |
29 from WebBrowser.WebBrowserWindow import WebBrowserWindow |
30 from WebBrowser.WebBrowserWindow import WebBrowserWindow |
|
31 |
30 manager = WebBrowserWindow.adBlockManager() |
32 manager = WebBrowserWindow.adBlockManager() |
31 if not manager.isEnabled(): |
33 if not manager.isEnabled(): |
32 return |
34 return |
33 |
35 |
34 # apply global element hiding rules |
36 # apply global element hiding rules |
35 elementHiding = manager.elementHidingRules(page.url()) |
37 elementHiding = manager.elementHidingRules(page.url()) |
36 if elementHiding: |
38 if elementHiding: |
37 script = Scripts.setCss(elementHiding) |
39 script = Scripts.setCss(elementHiding) |
38 page.runJavaScript(script, WebBrowserPage.SafeJsWorld) |
40 page.runJavaScript(script, WebBrowserPage.SafeJsWorld) |
39 |
41 |
40 # apply domain specific element hiding rules |
42 # apply domain specific element hiding rules |
41 elementHiding = manager.elementHidingRulesForDomain(page.url()) |
43 elementHiding = manager.elementHidingRulesForDomain(page.url()) |
42 if elementHiding: |
44 if elementHiding: |
43 script = Scripts.setCss(elementHiding) |
45 script = Scripts.setCss(elementHiding) |
44 page.runJavaScript(script, WebBrowserPage.SafeJsWorld) |
46 page.runJavaScript(script, WebBrowserPage.SafeJsWorld) |