45 @param job URL request job |
45 @param job URL request job |
46 @type QWebEngineUrlRequestJob |
46 @type QWebEngineUrlRequestJob |
47 """ |
47 """ |
48 if job.requestUrl().path() in self.SupportedPages: |
48 if job.requestUrl().path() in self.SupportedPages: |
49 reply = EricSchemeReply(job) |
49 reply = EricSchemeReply(job) |
50 reply.closed.connect(self.__replyClosed) |
50 reply.closed.connect(lambda: self.__replyClosed(reply)) |
51 self.__replies.append(reply) |
51 self.__replies.append(reply) |
52 job.reply(b"text/html", reply) |
52 job.reply(b"text/html", reply) |
53 else: |
53 else: |
54 job.reply(QByteArray(), QBuffer()) |
54 job.reply(QByteArray(), QBuffer()) |
55 # job.fail(QWebEngineUrlRequestJob.UrlNotFound) |
55 # job.fail(QWebEngineUrlRequestJob.UrlNotFound) |
56 |
56 |
57 def __replyClosed(self): |
57 def __replyClosed(self, reply): |
58 """ |
58 """ |
59 Private slot handling the closed signal of a reply. |
59 Private slot handling the closed signal of a reply. |
60 """ |
60 |
61 reply = self.sender() |
61 @param reply reference to the network reply |
62 if reply and reply in self.__replies: |
62 @type EricSchemeReply |
|
63 """ |
|
64 if reply in self.__replies: |
63 self.__replies.remove(reply) |
65 self.__replies.remove(reply) |
64 |
66 |
65 |
67 |
66 class EricSchemeReply(QIODevice): |
68 class EricSchemeReply(QIODevice): |
67 """ |
69 """ |