Sun, 18 May 2014 14:13:09 +0200
Corrected a bunch of source docu issues.
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
3160
209a07d7e401
Updated copyright for 2014.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3022
diff
changeset
|
3 | # Copyright (c) 2009 - 2014 Detlev Offenbach <detlev@die-offenbachs.de> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a QNetworkAccessManager subclass. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
3145
a9de05d4a22f
# __IGNORE_WARNING__ added/ removed.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
3058
diff
changeset
|
10 | from __future__ import unicode_literals |
2525
8b507a9a2d40
Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2411
diff
changeset
|
11 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | import os |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | |
2686
b62077dc52c4
Changed the name of the cache directory of the web browser to reflect the Qt and Webkit version number in order to avoid cahe trouble.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2411
diff
changeset
|
14 | from PyQt4.QtCore import pyqtSignal, QByteArray, qVersion |
541
00e1a5d060c5
Continued replacing QMessageBox methods with own methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
539
diff
changeset
|
15 | from PyQt4.QtGui import QDialog |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
16 | from PyQt4.QtNetwork import QNetworkAccessManager, QNetworkRequest, \ |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
17 | QNetworkReply |
2354
c63de4af553d
Centralized the SSL error handling in E5SslErrorHandler.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
18 | |
c63de4af553d
Centralized the SSL error handling in E5SslErrorHandler.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
19 | from E5Network.E5NetworkProxyFactory import E5NetworkProxyFactory, \ |
c63de4af553d
Centralized the SSL error handling in E5SslErrorHandler.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
20 | proxyAuthenticationRequired |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | try: |
2354
c63de4af553d
Centralized the SSL error handling in E5SslErrorHandler.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
22 | from PyQt4.QtNetwork import QSslSocket |
c63de4af553d
Centralized the SSL error handling in E5SslErrorHandler.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
23 | from E5Network.E5SslErrorHandler import E5SslErrorHandler |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | SSL_AVAILABLE = True |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | except ImportError: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | SSL_AVAILABLE = False |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | import Preferences |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | import Utilities |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
31 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | class NetworkAccessManager(QNetworkAccessManager): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | Class implementing a QNetworkAccessManager subclass. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | |
3018
70924c0bdaf1
Corrected some source docu issues and regenerated the source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3002
diff
changeset
|
36 | @signal requestCreated emitted after the request has been created passing |
70924c0bdaf1
Corrected some source docu issues and regenerated the source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3002
diff
changeset
|
37 | the operation, a reference to the network request and a reference to |
70924c0bdaf1
Corrected some source docu issues and regenerated the source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3002
diff
changeset
|
38 | the network reply (QNetworkAccessManager.Operation, QNetworkRequest, |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
39 | QNetworkReply) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | """ |
491
ac476c22d392
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
381
diff
changeset
|
41 | requestCreated = pyqtSignal( |
ac476c22d392
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
381
diff
changeset
|
42 | QNetworkAccessManager.Operation, QNetworkRequest, QNetworkReply) |
ac476c22d392
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
381
diff
changeset
|
43 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
44 | def __init__(self, engine, parent=None): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | @param engine reference to the help engine (QHelpEngine) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | @param parent reference to the parent object (QObject) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | """ |
2525
8b507a9a2d40
Script changes: Future import added, super calls modified and unicode behavior for str.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2411
diff
changeset
|
51 | super(NetworkAccessManager, self).__init__(parent) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | self.__adblockNetwork = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | self.__schemeHandlers = {} # dictionary of scheme handlers |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | |
270
41505c92ac31
Added code to enhance the proxy configuration and removed the usage of QHttp.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
140
diff
changeset
|
57 | self.__proxyFactory = E5NetworkProxyFactory() |
41505c92ac31
Added code to enhance the proxy configuration and removed the usage of QHttp.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
140
diff
changeset
|
58 | self.setProxyFactory(self.__proxyFactory) |
41505c92ac31
Added code to enhance the proxy configuration and removed the usage of QHttp.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
140
diff
changeset
|
59 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60 | self.__setDiskCache() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61 | self.languagesChanged() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | if SSL_AVAILABLE: |
2354
c63de4af553d
Centralized the SSL error handling in E5SslErrorHandler.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
64 | self.__sslErrorHandler = E5SslErrorHandler(self) |
c63de4af553d
Centralized the SSL error handling in E5SslErrorHandler.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
65 | self.sslErrors.connect(self.__sslErrorHandler.sslErrorsReplySlot) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66 | |
491
ac476c22d392
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
381
diff
changeset
|
67 | self.proxyAuthenticationRequired.connect(proxyAuthenticationRequired) |
ac476c22d392
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
381
diff
changeset
|
68 | self.authenticationRequired.connect(self.__authenticationRequired) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69 | |
1314
7e7b88c58fda
Added the "Do Not Track" feature.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1219
diff
changeset
|
70 | self.__doNotTrack = Preferences.getHelp("DoNotTrack") |
1661
bfc2ea19b08f
Added capability to suppress Referer Headers (configurable via eric4 Web Browser configuration page).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
71 | self.__sendReferer = Preferences.getHelp("SendReferer") |
1314
7e7b88c58fda
Added the "Do Not Track" feature.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1219
diff
changeset
|
72 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73 | # register scheme handlers |
2411
aec0a8a6e548
Removed the QtHelp dependancy; support is only available, if the QtHelp module could be imported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2403
diff
changeset
|
74 | if engine: |
aec0a8a6e548
Removed the QtHelp dependancy; support is only available, if the QtHelp module could be imported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2403
diff
changeset
|
75 | from .QtHelpAccessHandler import QtHelpAccessHandler |
aec0a8a6e548
Removed the QtHelp dependancy; support is only available, if the QtHelp module could be imported.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2403
diff
changeset
|
76 | self.setSchemeHandler("qthelp", QtHelpAccessHandler(engine, self)) |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
77 | |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
78 | from .EricAccessHandler import EricAccessHandler |
1674
7eb92d0bc124
Renamed PyrcAccessHandler to EricAccessHandler.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1665
diff
changeset
|
79 | self.setSchemeHandler("eric", EricAccessHandler(self)) |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
80 | |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
81 | from .AboutAccessHandler import AboutAccessHandler |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82 | self.setSchemeHandler("about", AboutAccessHandler(self)) |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
83 | |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
84 | from Helpviewer.AdBlock.AdBlockAccessHandler import \ |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
85 | AdBlockAccessHandler |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | self.setSchemeHandler("abp", AdBlockAccessHandler(self)) |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
87 | |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
88 | from .FtpAccessHandler import FtpAccessHandler |
278
c93823b96faa
Added a handler for ftp: URLs to the web browser.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
270
diff
changeset
|
89 | self.setSchemeHandler("ftp", FtpAccessHandler(self)) |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
90 | |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
91 | from .FileAccessHandler import FileAccessHandler |
2063
2227d4cc905e
Added a handler for file: schemes to allow directory listings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2059
diff
changeset
|
92 | self.setSchemeHandler("file", FileAccessHandler(self)) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
93 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
94 | def setSchemeHandler(self, scheme, handler): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
95 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
96 | Public method to register a scheme handler. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
97 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
98 | @param scheme access scheme (string) |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
99 | @param handler reference to the scheme handler object |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
100 | (SchemeAccessHandler) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
101 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
102 | self.__schemeHandlers[scheme] = handler |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
103 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
104 | def createRequest(self, op, request, outgoingData=None): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
105 | """ |
3591
2f2a4a76dd22
Corrected a bunch of source docu issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
106 | Public method to create a request. |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
108 | @param op the operation to be performed |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
109 | (QNetworkAccessManager.Operation) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | @param request reference to the request object (QNetworkRequest) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | @param outgoingData reference to an IODevice containing data to be sent |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | (QIODevice) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | @return reference to the created reply object (QNetworkReply) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
115 | scheme = request.url().scheme() |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
116 | if scheme == "https" and \ |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
117 | (not SSL_AVAILABLE or not QSslSocket.supportsSsl()): |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
118 | from .NetworkProtocolUnknownErrorReply import \ |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
119 | NetworkProtocolUnknownErrorReply |
666
fdd568d3533d
Fixed a forgotten parenting of network replies in the network access manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
664
diff
changeset
|
120 | return NetworkProtocolUnknownErrorReply(scheme, self) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
121 | |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
122 | import Helpviewer.HelpWindow |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
123 | |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
124 | if op == QNetworkAccessManager.PostOperation and \ |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
125 | outgoingData is not None: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | outgoingDataByteArray = outgoingData.peek(1024 * 1024) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | Helpviewer.HelpWindow.HelpWindow.passwordManager().post( |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
128 | request, outgoingDataByteArray) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
129 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | reply = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | if scheme in self.__schemeHandlers: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
132 | reply = self.__schemeHandlers[scheme]\ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | .createRequest(op, request, outgoingData) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
134 | if reply is not None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
135 | return reply |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
136 | |
1953
26aa6fd94dc2
Added support for GreaseMonkey scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1917
diff
changeset
|
137 | # give GreaseMonkey the chance to create a request |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
138 | reply = Helpviewer.HelpWindow.HelpWindow.greaseMonkeyManager()\ |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
139 | .createRequest(op, request, outgoingData) |
1953
26aa6fd94dc2
Added support for GreaseMonkey scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1917
diff
changeset
|
140 | if reply is not None: |
26aa6fd94dc2
Added support for GreaseMonkey scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1917
diff
changeset
|
141 | return reply |
26aa6fd94dc2
Added support for GreaseMonkey scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1917
diff
changeset
|
142 | |
381
64ae9e09d8bc
Extended the Ad-Blocker of the web browser and added capability to configure the text encoding of the web browser (needs Qt >= 4.6).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
286
diff
changeset
|
143 | req = QNetworkRequest(request) |
1953
26aa6fd94dc2
Added support for GreaseMonkey scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1917
diff
changeset
|
144 | if req.rawHeader("X-Eric5-UserLoadAction") == QByteArray("1"): |
26aa6fd94dc2
Added support for GreaseMonkey scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1917
diff
changeset
|
145 | req.setRawHeader("X-Eric5-UserLoadAction", QByteArray()) |
26aa6fd94dc2
Added support for GreaseMonkey scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1917
diff
changeset
|
146 | req.setAttribute(QNetworkRequest.User + 200, "") |
26aa6fd94dc2
Added support for GreaseMonkey scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1917
diff
changeset
|
147 | else: |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
148 | req.setAttribute( |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
149 | QNetworkRequest.User + 200, req.rawHeader("Referer")) |
1953
26aa6fd94dc2
Added support for GreaseMonkey scripts.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1917
diff
changeset
|
150 | |
381
64ae9e09d8bc
Extended the Ad-Blocker of the web browser and added capability to configure the text encoding of the web browser (needs Qt >= 4.6).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
286
diff
changeset
|
151 | if hasattr(QNetworkRequest, 'HttpPipeliningAllowedAttribute'): |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
152 | req.setAttribute( |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
153 | QNetworkRequest.HttpPipeliningAllowedAttribute, True) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
154 | if not self.__acceptLanguage.isEmpty(): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | req.setRawHeader("Accept-Language", self.__acceptLanguage) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
157 | # AdBlock code |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | if op == QNetworkAccessManager.GetOperation: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
159 | if self.__adblockNetwork is None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | self.__adblockNetwork = \ |
1970
02cf3bac079b
Rewrote huge part of AdBlock to speed up and added support for dependent AdBlock subscriptions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1953
diff
changeset
|
161 | Helpviewer.HelpWindow.HelpWindow.adBlockManager().network() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
162 | reply = self.__adblockNetwork.block(req) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | if reply is not None: |
666
fdd568d3533d
Fixed a forgotten parenting of network replies in the network access manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
664
diff
changeset
|
164 | reply.setParent(self) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
165 | return reply |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
166 | |
2693
85a85d5824ed
Added code to blacklist hosts from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2686
diff
changeset
|
167 | # set cache policy |
2699
dd62671c6d5a
Fix for wrong web caching mechanism.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2694
diff
changeset
|
168 | if op == QNetworkAccessManager.GetOperation: |
dd62671c6d5a
Fix for wrong web caching mechanism.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2694
diff
changeset
|
169 | urlHost = req.url().host() |
dd62671c6d5a
Fix for wrong web caching mechanism.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2694
diff
changeset
|
170 | for host in Preferences.getHelp("NoCacheHosts"): |
dd62671c6d5a
Fix for wrong web caching mechanism.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2694
diff
changeset
|
171 | if host in urlHost: |
3022
57179e4cdadd
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3018
diff
changeset
|
172 | req.setAttribute( |
57179e4cdadd
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3018
diff
changeset
|
173 | QNetworkRequest.CacheLoadControlAttribute, |
2699
dd62671c6d5a
Fix for wrong web caching mechanism.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2694
diff
changeset
|
174 | QNetworkRequest.AlwaysNetwork) |
dd62671c6d5a
Fix for wrong web caching mechanism.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2694
diff
changeset
|
175 | break |
dd62671c6d5a
Fix for wrong web caching mechanism.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2694
diff
changeset
|
176 | else: |
3022
57179e4cdadd
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3018
diff
changeset
|
177 | req.setAttribute( |
57179e4cdadd
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3018
diff
changeset
|
178 | QNetworkRequest.CacheLoadControlAttribute, |
2699
dd62671c6d5a
Fix for wrong web caching mechanism.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2694
diff
changeset
|
179 | Preferences.getHelp("CachePolicy")) |
2693
85a85d5824ed
Added code to blacklist hosts from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2686
diff
changeset
|
180 | else: |
3022
57179e4cdadd
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3018
diff
changeset
|
181 | req.setAttribute( |
57179e4cdadd
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3018
diff
changeset
|
182 | QNetworkRequest.CacheLoadControlAttribute, |
2699
dd62671c6d5a
Fix for wrong web caching mechanism.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
2694
diff
changeset
|
183 | QNetworkRequest.AlwaysNetwork) |
2693
85a85d5824ed
Added code to blacklist hosts from caching.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2686
diff
changeset
|
184 | |
1314
7e7b88c58fda
Added the "Do Not Track" feature.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1219
diff
changeset
|
185 | # Do Not Track feature |
7e7b88c58fda
Added the "Do Not Track" feature.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1219
diff
changeset
|
186 | if self.__doNotTrack: |
7e7b88c58fda
Added the "Do Not Track" feature.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1219
diff
changeset
|
187 | req.setRawHeader("DNT", "1") |
7e7b88c58fda
Added the "Do Not Track" feature.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1219
diff
changeset
|
188 | |
1661
bfc2ea19b08f
Added capability to suppress Referer Headers (configurable via eric4 Web Browser configuration page).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
189 | # Send referer header? |
1917
c73052b6b65e
Fixed an issue with failed logins for certain files by implementing a referer whitelist. All hosts in this list will get a referer header.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1674
diff
changeset
|
190 | if not self.__sendReferer and \ |
c73052b6b65e
Fixed an issue with failed logins for certain files by implementing a referer whitelist. All hosts in this list will get a referer header.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1674
diff
changeset
|
191 | req.url().host() not in Preferences.getHelp("SendRefererWhitelist"): |
1661
bfc2ea19b08f
Added capability to suppress Referer Headers (configurable via eric4 Web Browser configuration page).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
192 | req.setRawHeader("Referer", "") |
bfc2ea19b08f
Added capability to suppress Referer Headers (configurable via eric4 Web Browser configuration page).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
193 | |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
194 | reply = QNetworkAccessManager.createRequest( |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
195 | self, op, req, outgoingData) |
491
ac476c22d392
Continued porting signal/slot usage to the new API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
381
diff
changeset
|
196 | self.requestCreated.emit(op, req, reply) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
198 | return reply |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
199 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
200 | def __authenticationRequired(self, reply, auth): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
201 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
202 | Private slot to handle an authentication request. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
203 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
204 | @param reply reference to the reply object (QNetworkReply) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
205 | @param auth reference to the authenticator object (QAuthenticator) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
206 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
207 | urlRoot = "{0}://{1}"\ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
208 | .format(reply.url().scheme(), reply.url().authority()) |
2050
585f6646bf50
Changed the FtpReply to support proxy access and to not show user and password in the URL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1970
diff
changeset
|
209 | realm = auth.realm() |
585f6646bf50
Changed the FtpReply to support proxy access and to not show user and password in the URL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1970
diff
changeset
|
210 | if not realm and 'realm' in auth.options(): |
585f6646bf50
Changed the FtpReply to support proxy access and to not show user and password in the URL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1970
diff
changeset
|
211 | realm = auth.option("realm") |
585f6646bf50
Changed the FtpReply to support proxy access and to not show user and password in the URL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1970
diff
changeset
|
212 | if realm: |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
213 | info = self.tr("<b>Enter username and password for '{0}', " |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
214 | "realm '{1}'</b>").format(urlRoot, realm) |
2059
52113e2f672a
Fixed a bug in the network access manager introduced during the FTP job.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2050
diff
changeset
|
215 | else: |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
216 | info = self.tr("<b>Enter username and password for '{0}'</b>")\ |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
217 | .format(urlRoot) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
218 | |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
219 | from UI.AuthenticationDialog import AuthenticationDialog |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
220 | import Helpviewer.HelpWindow |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
221 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
826
diff
changeset
|
222 | dlg = AuthenticationDialog(info, auth.user(), |
1127
b1802ebe0066
Added capability to encrypt saved passwords with a master password and rearranged some configuration parameters related to security.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1112
diff
changeset
|
223 | Preferences.getUser("SavePasswords"), |
b1802ebe0066
Added capability to encrypt saved passwords with a master password and rearranged some configuration parameters related to security.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1112
diff
changeset
|
224 | Preferences.getUser("SavePasswords")) |
b1802ebe0066
Added capability to encrypt saved passwords with a master password and rearranged some configuration parameters related to security.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1112
diff
changeset
|
225 | if Preferences.getUser("SavePasswords"): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
226 | username, password = \ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
227 | Helpviewer.HelpWindow.HelpWindow.passwordManager().getLogin( |
2050
585f6646bf50
Changed the FtpReply to support proxy access and to not show user and password in the URL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1970
diff
changeset
|
228 | reply.url(), realm) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
229 | if username: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
230 | dlg.setData(username, password) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
231 | if dlg.exec_() == QDialog.Accepted: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
232 | username, password = dlg.getData() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
233 | auth.setUser(username) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
234 | auth.setPassword(password) |
1127
b1802ebe0066
Added capability to encrypt saved passwords with a master password and rearranged some configuration parameters related to security.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1112
diff
changeset
|
235 | if Preferences.getUser("SavePasswords"): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | Helpviewer.HelpWindow.HelpWindow.passwordManager().setLogin( |
2050
585f6646bf50
Changed the FtpReply to support proxy access and to not show user and password in the URL.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1970
diff
changeset
|
237 | reply.url(), realm, username, password) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | def preferencesChanged(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | Public slot to signal a change of preferences. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
243 | self.__setDiskCache() |
1314
7e7b88c58fda
Added the "Do Not Track" feature.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1219
diff
changeset
|
244 | |
7e7b88c58fda
Added the "Do Not Track" feature.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1219
diff
changeset
|
245 | self.__doNotTrack = Preferences.getHelp("DoNotTrack") |
1661
bfc2ea19b08f
Added capability to suppress Referer Headers (configurable via eric4 Web Browser configuration page).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
246 | self.__sendReferer = Preferences.getHelp("SendReferer") |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
247 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
248 | def languagesChanged(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
249 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
250 | Public slot to (re-)load the list of accepted languages. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
251 | """ |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
252 | from Helpviewer.HelpLanguagesDialog import HelpLanguagesDialog |
8
0ae9bd4d2993
Fixed a few bugs introduced introduced by the change to the QVariant v2 API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7
diff
changeset
|
253 | languages = Preferences.toList( |
3022
57179e4cdadd
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3018
diff
changeset
|
254 | Preferences.Prefs.settings.value( |
57179e4cdadd
Fixed a bunch of visible indentation issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3018
diff
changeset
|
255 | "Help/AcceptLanguages", |
8
0ae9bd4d2993
Fixed a few bugs introduced introduced by the change to the QVariant v2 API.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7
diff
changeset
|
256 | HelpLanguagesDialog.defaultAcceptLanguages())) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
257 | self.__acceptLanguage = HelpLanguagesDialog.httpString(languages) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
258 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
259 | def __setDiskCache(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
260 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
261 | Private method to set the disk cache. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
262 | """ |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
263 | if Preferences.getHelp("DiskCacheEnabled"): |
2686
b62077dc52c4
Changed the name of the cache directory of the web browser to reflect the Qt and Webkit version number in order to avoid cahe trouble.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2411
diff
changeset
|
264 | from PyQt4.QtWebKit import qWebKitVersion |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
265 | from .NetworkDiskCache import NetworkDiskCache |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
266 | diskCache = NetworkDiskCache(self) |
3002
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
267 | location = os.path.join( |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
268 | Utilities.getConfigDir(), "browser", 'cache', |
6ffc581f00f1
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2699
diff
changeset
|
269 | "{0}-Qt{1}".format(qWebKitVersion(), qVersion())) |
2403
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
270 | size = Preferences.getHelp("DiskCacheSize") * 1024 * 1024 |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
271 | diskCache.setCacheDirectory(location) |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
272 | diskCache.setMaximumCacheSize(size) |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
273 | else: |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
274 | diskCache = None |
e3d7a861547c
Continued implementing the delayed import.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2354
diff
changeset
|
275 | self.setCache(diskCache) |