Commit Graph

128 Commits

Author SHA1 Message Date
Florian Bruhin
4704e81b41 Don't log javascript console messages by default. 2015-02-09 07:46:31 +01:00
Florian Bruhin
d6e87a2672 Hide adblocked iframes.
We now hide iframes which have been blocked completely instead of displaying an
error page in there. Displaying the error page also did break back/forward,
e.g. on reddit.

Fixes #493.
2015-01-31 22:38:31 +01:00
Florian Bruhin
2203db298d Abort blocking questions when new page is loaded.
Fixes #430.
Fixes #431.
Hopefully fixes #354.
Hopefully fixes #434.
2015-01-03 22:21:47 +01:00
Florian Bruhin
450d1ab70d Update copyright years 2015-01-03 15:51:31 +01:00
Florian Bruhin
06ec1a3885 Big file tree reorganisation.
Closes #255.
Should make a lot more sense now ;)
2014-12-13 17:28:50 +01:00
Florian Bruhin
4e6cedb1f7 Don't treat page load as failed with blocked hosts.
Fixes #315.
2014-12-11 18:05:01 +01:00
Florian Bruhin
206b5f548e Fix checking for errors when a page is loaded.
Because of the error page, we got loadFinished with ok=True even with errors.

Fixes #84.
2014-12-10 16:38:24 +01:00
Florian Bruhin
6d419b8346 Avoid starting downloads before we know the filename.
Closes #278.
2014-11-30 18:47:40 +01:00
Florian Bruhin
ae2284f4aa Fix multiple file QWebPage extension.
We accidentally broke that in 4c78b611eb.
2014-10-26 22:07:15 +01:00
Florian Bruhin
4c78b611eb Clean up QWebPage::extension handling. 2014-10-25 23:59:09 +02:00
Florian Bruhin
c79c1f950a Open unknown protocols with external viewer.
Closes #210.
2014-10-25 23:51:22 +02:00
Florian Bruhin
f6695cac7d Small whitespace fix. 2014-10-08 06:22:20 +02:00
Florian Bruhin
86f08a8536 Clean up overriding of javaScriptPrompt. 2014-10-08 05:20:56 +02:00
Florian Bruhin
6349a6a213 Remove Emit:/Raise: from docstrings.
They got out-of-sync fast and provided no real benefit.
2014-10-07 23:08:37 +02:00
Florian Bruhin
105c25bc5f Merge branch 'multiwin'
Conflicts:
	qutebrowser/app.py
	qutebrowser/browser/commands.py
	qutebrowser/browser/hints.py
	qutebrowser/keyinput/modeman.py
	qutebrowser/network/networkmanager.py
	qutebrowser/widgets/mainwindow.py
	qutebrowser/widgets/statusbar/command.py
	qutebrowser/widgets/statusbar/prompt.py
	qutebrowser/widgets/statusbar/prompter.py
	qutebrowser/widgets/tabbedbrowser.py
2014-10-06 22:03:58 +02:00
Florian Bruhin
fd9a3fc5e7 Clean up mainwindow import mess. 2014-10-06 21:24:07 +02:00
Florian Bruhin
52e72a8bec Fix window spawning with hints. 2014-10-06 18:47:55 +02:00
Florian Bruhin
6324751af6 More window support. 2014-10-06 17:58:40 +02:00
Florian Bruhin
e4e8d16ee8 Fix crash on error pages with URLs not encodable in latin1.
It seems PyQt does some implicit latin1 encoding when we set the content
attribute to a string rather than a bytes object.

Fixes #127.
2014-10-02 06:28:49 +02:00
Florian Bruhin
36f7ff6154 Fix some objreg.get calls. 2014-09-28 23:23:02 +02:00
Florian Bruhin
fb6cb62f93 First attempt at multi-window support. 2014-09-28 22:13:14 +02:00
Florian Bruhin
f294e28fca Remove change_title signal in QWebPage.
When emitting it inside acceptNaviationRequest we don't know if javascript will
open a new window, so we could end up setting the title for the *wrong*
(current) tab.

It seems there isn't any good solution to this problem - in
QWebView.createWindow we won't know what the URL is - so we currently just
leave it blank.
2014-09-25 17:34:55 +02:00
Florian Bruhin
59058361b8 Add missing objreg import in browser.webpage. 2014-09-24 22:25:10 +02:00
Florian Bruhin
aa5e1922ef Remove _view attribute in BrowserPage. 2014-09-24 22:25:10 +02:00
Florian Bruhin
9868721cc7 Use object registry for webview.tabbedbrowser. 2014-09-24 22:25:10 +02:00
Florian Bruhin
644dfe53e2 Add a decorator to prevent Exceptions (to prevent segfaults). 2014-09-16 22:06:48 +02:00
Florian Bruhin
3391896037 Disable workaround for PyQt 5.3.2 2014-09-14 21:12:03 +02:00
Florian Bruhin
4caec2becb Document and mark workarounds. 2014-09-02 20:44:58 +02:00
Florian Bruhin
c9ea83ca7b Fix lint 2014-08-29 06:14:52 +02:00
Florian Bruhin
bf515a4104 Adjust import 2014-08-28 22:11:30 +02:00
Florian Bruhin
d6b1b7be3a Handle exceptions in QWebPage::extension differently. 2014-08-28 22:11:10 +02:00
Florian Bruhin
a6ae129595 Use jinja for error page. 2014-08-28 20:14:40 +02:00
Florian Bruhin
5176dac391 Raise exceptions in QWebPage::extensions properly. 2014-08-28 20:14:24 +02:00
Florian Bruhin
8bd64382bd Rename utils.qt to utils.qtutils. 2014-08-26 20:25:11 +02:00
Florian Bruhin
d9a8cbe7ad Rename utils.misc to utils.utils 2014-08-26 20:20:17 +02:00
Florian Bruhin
d625cde28c Clean up imports 2014-08-26 19:10:14 +02:00
Florian Bruhin
dd2ed78f40 Handle wrong image/jpg mimetype in unsupportedContent slot. 2014-08-12 21:08:13 +02:00
Florian Bruhin
c1d9f70fd6 Make js alert/confirm messages a bit more clear. 2014-08-02 16:16:13 +02:00
Florian Bruhin
f19a1db120 Clean up tab shutdown. 2014-08-01 23:23:31 +02:00
Florian Bruhin
fad22c63d9 Go back to using one NetworkManager per tab 2014-07-10 06:42:52 +02:00
Florian Bruhin
5feee871ac Fix lint 2014-07-07 12:00:51 +02:00
Florian Bruhin
f173583605 Documentation update for Qt 5.3.1 2014-07-04 14:37:31 +02:00
Florian Bruhin
c18027f3ae Override QWebPage::acceptNavigationRequest.
We now do this instead of using linkDelegationPolicy and the linkClicked signal
of QWebView, as we are unable to get the target frame with linkClicked, causing
frames to open full-page instead of where they should.

See https://bugs.webkit.org/show_bug.cgi?id=37847
2014-07-02 22:17:36 +02:00
Florian Bruhin
92ff957543 Clean up message API 2014-06-26 07:58:00 +02:00
Florian Bruhin
8a8ca0c34f Split utils.misc into utils.{qt,misc} 2014-06-23 07:45:04 +02:00
Florian Bruhin
a64775a0f9 Improve logging messages 2014-06-21 22:40:31 +02:00
Florian Bruhin
113221c731 Log some exceptions 2014-06-20 23:26:19 +02:00
Florian Bruhin
8b6af23b13 Make sure we don't display passwords in URLs to the user 2014-06-20 19:50:44 +02:00
Florian Bruhin
0fd64419da Remove urlutils.{urlstring,qurl}.
The idea of treating an URL-string and a QUrl as essentially the same data type
got us into all kinds of problems. Now we use QUrl everywhere except at the
borders to the user interface.
2014-06-20 16:33:01 +02:00
Florian Bruhin
684154dd7d Remove set_trace 2014-06-19 21:26:01 +02:00
Florian Bruhin
6ce5afccbe Use rfc6266 to handle Content-Disposition in downloads 2014-06-19 21:06:19 +02:00
Florian Bruhin
c56c7c0394 Support cancelling a javascript confirm dialog 2014-06-19 12:21:22 +02:00
Florian Bruhin
d65587128f Add vim modelines to all files. 2014-06-19 09:04:37 +02:00
Florian Bruhin
4a0e34fca7 Delete print dialogs on close 2014-06-17 14:33:15 +02:00
Florian Bruhin
7325cefdae Fix lint 2014-06-16 12:11:10 +02:00
Florian Bruhin
903de515e7 Add a check whether print works. 2014-06-16 10:21:03 +02:00
Florian Bruhin
43490202ca Add a qt_version_check function to utils.misc.
We're usually only interested in the runtime version, not in the compile-time
version, so we use this rather than comparing to QT_VERSION/PYQT_VERSION.
2014-06-16 10:20:05 +02:00
Florian Bruhin
d97823615a Auto-enable javaScriptPrompt at PyQt > 5.3.0 2014-06-16 08:52:47 +02:00
Florian Bruhin
f58e702589 Don't override javaScriptPrompt because of PyQt bugs 2014-06-14 23:31:39 +02:00
Florian Bruhin
dc0b025055 Forward unsupported content properly 2014-06-12 13:17:45 +02:00
Florian Bruhin
7dd5b1b94e First debugging implementation of downloads 2014-06-10 22:11:17 +02:00
Florian Bruhin
71bc640131 Fix lint 2014-06-10 17:01:00 +02:00
Florian Bruhin
7315712359 Use statusbar to ask if long-running script should be interrupted. 2014-06-10 16:49:56 +02:00
Florian Bruhin
67f64b5e6a Support printing via javascript. 2014-06-10 16:49:44 +02:00
Florian Bruhin
57024f3174 Merge branch 'master' of ssh://cmpl.cc:2323/qutebrowser 2014-06-10 16:17:12 +02:00
Florian Bruhin
0e55f4d692 Implement file uploading 2014-06-10 16:16:42 +02:00
Florian Bruhin
2a2c21e0f7 Load webm videos correctly 2014-06-10 15:38:47 +02:00
Florian Bruhin
126a520674 Add some logging for error pages 2014-06-10 15:31:22 +02:00
Florian Bruhin
da2d8e1048 Log js console messages as debug, not info 2014-06-02 22:18:41 +02:00
Florian Bruhin
4538745ffb Implement QWebPage:javaScript* 2014-05-26 20:04:44 +02:00
Florian Bruhin
edc9d0810c Use QCoreApplication.instance() 2014-05-09 17:01:05 +02:00
Florian Bruhin
f6c3e00d59 Use NoneString config type for settings with Qt defaults.
This fixes wikipedia looking ugly because setUserStylesheet gets called
with an empty string.
2014-05-06 12:20:02 +02:00
Florian Bruhin
c8fd0937b0 Revert "Use global object dict for global objects"
This reverts commit bf2c7831c8.

This was a bad idea as we need to access some of the main attributes
from commands via instance=...
2014-05-05 20:12:20 +02:00
Florian Bruhin
bf2c7831c8 Use global object dict for global objects 2014-05-05 19:12:47 +02:00
Florian Bruhin
667b255d01 Use QApplication for global singletons 2014-05-05 17:56:14 +02:00
Florian Bruhin
ae95b5ea3b Basic cookie handling 2014-05-05 16:28:43 +02:00
Florian Bruhin
678abca244 Make user agent configurable 2014-05-02 06:55:55 +02:00
Florian Bruhin
4b1dcbd82a Refactor tab/browser widgets 2014-04-17 09:44:26 +02:00