eric7/WebBrowser/AdBlock/AdBlockPage.py

branch
eric7
changeset 8312
800c432b34c8
parent 7923
91e843545d9a
child 8318
962bce857696
equal deleted inserted replaced
8311:4e8b98454baa 8312:800c432b34c8
1 # -*- coding: utf-8 -*-
2
3 # Copyright (c) 2009 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
4 #
5
6 """
7 Module implementing a class to apply AdBlock rules to a web page.
8 """
9
10 from PyQt5.QtCore import QObject
11
12 from ..Tools import Scripts
13 from ..WebBrowserPage import WebBrowserPage
14
15
16 class AdBlockPage(QObject):
17 """
18 Class to apply AdBlock rules to a web page.
19 """
20 def hideBlockedPageEntries(self, page):
21 """
22 Public method to apply AdBlock rules to a web page.
23
24 @param page reference to the web page (HelpWebPage)
25 """
26 if page is None:
27 return
28
29 from WebBrowser.WebBrowserWindow import WebBrowserWindow
30 manager = WebBrowserWindow.adBlockManager()
31 if not manager.isEnabled():
32 return
33
34 # apply global element hiding rules
35 elementHiding = manager.elementHidingRules(page.url())
36 if elementHiding:
37 script = Scripts.setCss(elementHiding)
38 page.runJavaScript(script, WebBrowserPage.SafeJsWorld)
39
40 # apply domain specific element hiding rules
41 elementHiding = manager.elementHidingRulesForDomain(page.url())
42 if elementHiding:
43 script = Scripts.setCss(elementHiding)
44 page.runJavaScript(script, WebBrowserPage.SafeJsWorld)

eric ide

mercurial