WebBrowser/Tools/WebHitTestResult.py

changeset 5009
8b1ca3c1da22
parent 4925
6534062014dc
child 5389
9b1c800daff3
equal deleted inserted replaced
5008:31a1eb0f70e4 5009:8b1ca3c1da22
34 self.__isContentEditable = False 34 self.__isContentEditable = False
35 self.__isContentSelected = False 35 self.__isContentSelected = False
36 self.__isMediaPaused = False 36 self.__isMediaPaused = False
37 self.__isMediaMuted = False 37 self.__isMediaMuted = False
38 self.__pos = QPoint(pos) 38 self.__pos = QPoint(pos)
39 self.__baseUrl = QUrl()
39 self.__alternateText = "" 40 self.__alternateText = ""
40 self.__boundingRect = QRect() 41 self.__boundingRect = QRect()
41 self.__imageUrl = QUrl() 42 self.__imageUrl = QUrl()
42 self.__linkTitle = "" 43 self.__linkTitle = ""
43 self.__linkUrl = QUrl() 44 self.__linkUrl = QUrl()
65 if (selection.type != 'Range') 66 if (selection.type != 'Range')
66 return false; 67 return false;
67 return window.getSelection().containsNode(e, true); 68 return window.getSelection().containsNode(e, true);
68 }} 69 }}
69 var res = {{ 70 var res = {{
71 baseUrl: document.baseURI,
70 alternateText: e.getAttribute('alt'), 72 alternateText: e.getAttribute('alt'),
71 boundingRect: '', 73 boundingRect: '',
72 imageUrl: '', 74 imageUrl: '',
73 contentEditable: isEditableElement(e), 75 contentEditable: isEditableElement(e),
74 contentSelected: isSelected(e), 76 contentSelected: isSelected(e),
102 return res; 104 return res;
103 }})() 105 }})()
104 """.format(self.__viewportPos.x(), self.__viewportPos.y()) 106 """.format(self.__viewportPos.x(), self.__viewportPos.y())
105 self.__populate(page.url(), page.execJavaScript(script)) 107 self.__populate(page.url(), page.execJavaScript(script))
106 108
109 def baseUrl(self):
110 """
111 Public method to get the base URL of the page.
112
113 @return base URL
114 @rtype QUrl
115 """
116 return self.__baseUrl
117
107 def alternateText(self): 118 def alternateText(self):
108 """ 119 """
109 Public method to get the alternate text. 120 Public method to get the alternate text.
110 121
111 @return alternate text 122 @return alternate text
240 @type dict 251 @type dict
241 """ 252 """
242 if not res: 253 if not res:
243 return 254 return
244 255
256 self.__baseUrl = QUrl(res["baseUrl"])
245 self.__alternateText = res["alternateText"] 257 self.__alternateText = res["alternateText"]
246 self.__imageUrl = QUrl(res["imageUrl"]) 258 self.__imageUrl = QUrl(res["imageUrl"])
247 self.__isContentEditable = res["contentEditable"] 259 self.__isContentEditable = res["contentEditable"]
248 self.__isContentSelected = res["contentSelected"] 260 self.__isContentSelected = res["contentSelected"]
249 self.__linkTitle = res["linkTitle"] 261 self.__linkTitle = res["linkTitle"]
259 int(rect[2]), int(rect[3])) 271 int(rect[2]), int(rect[3]))
260 272
261 if not self.__imageUrl.isEmpty(): 273 if not self.__imageUrl.isEmpty():
262 self.__imageUrl = url.resolved(self.__imageUrl) 274 self.__imageUrl = url.resolved(self.__imageUrl)
263 if not self.__linkUrl.isEmpty(): 275 if not self.__linkUrl.isEmpty():
264 self.__linkUrl = url.resolved(self.__linkUrl) 276 self.__linkUrl = self.__baseUrl.resolved(self.__linkUrl)
265 if not self.__mediaUrl.isEmpty(): 277 if not self.__mediaUrl.isEmpty():
266 self.__mediaUrl = url.resolved(self.__mediaUrl) 278 self.__mediaUrl = url.resolved(self.__mediaUrl)

eric ide

mercurial