From 6a706e919e3d2d3ad7dcafa87086ade09f5b5aeb Mon Sep 17 00:00:00 2001 From: Lucian Branescu Mihaila Date: Thu, 15 Jul 2010 21:50:22 +0000 Subject: Enable downloading for unknown mime types. --- diff --git a/browser.py b/browser.py index c05b678..8f56934 100644 --- a/browser.py +++ b/browser.py @@ -194,6 +194,8 @@ class Browser(webkit.WebView): self.connect('load-finished', self.__loading_finished_cb) self.connect('download-requested', self.__download_requested_cb) + self.connect('mime-type-policy-decision-requested', + self.__mime_type_policy_cb) def load_uri(self, uri): '''Load a URI. @@ -207,7 +209,14 @@ class Browser(webkit.WebView): super(Browser, self).load_uri(uri) def __download_requested_cb(self, browser, download): - user_download = downloadmanager.UserDownload(download, self._activity_p) + downloadmanager.process_download(download, self._activity_p) + return True + + def __mime_type_policy_cb(self, webview, frame, request, mimetype, + policy_decision): + if not self.can_show_mime_type(mimetype): + policy_decision.download() + return True def __loading_finished_cb(self, frame, user_data): diff --git a/downloadmanager.py b/downloadmanager.py index 2cc11dd..6b57036 100644 --- a/downloadmanager.py +++ b/downloadmanager.py @@ -251,6 +251,8 @@ class UserDownload(object): self.cancel() _active_downloads.remove(self) -def save_link(uri, title, owner_doc): - #TODO - pass +#def save_link(uri, title, mime_type=None): +# pass + +def process_download(download, activity): + user_download = UserDownload(download, activity) \ No newline at end of file -- cgit v0.9.1