Commit Graph

2701 Commits

Author SHA1 Message Date
Florian Bruhin
2ebb0063be Really fix version info on OS X 2014-09-25 22:46:25 +02:00
Florian Bruhin
66d36442d7 Fix version info on OS X 2014-09-25 21:33:03 +02:00
Florian Bruhin
9855ad6906 tabbedbrowser: Connect cur_load_started only once. 2014-09-25 19:08:15 +02:00
Florian Bruhin
c188c6986d Call on_mode_entered only once for hints. 2014-09-25 19:06:38 +02:00
Florian Bruhin
0494bc3763 Improve modeman.maybe_leave logging/exception. 2014-09-25 18:45:16 +02:00
Florian Bruhin
6b459f43f1 Improve :debug-all-objects output. 2014-09-25 18:17:52 +02:00
Florian Bruhin
1239efa615 Set application title to "qutebrowser" on tabs without title. 2014-09-25 17:39:56 +02:00
Florian Bruhin
7649dca2ef tabbedbrowser: Improve titleChanged logging. 2014-09-25 17:36:40 +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
7b8829286c Merge branch 'objreg' 2014-09-25 08:08:08 +02:00
Florian Bruhin
55e2ccabf5 Fix lint 2014-09-25 07:58:08 +02:00
Florian Bruhin
143fdc5b9f Register tab registry in meta registry. 2014-09-25 07:50:07 +02:00
Florian Bruhin
1e7861660e Add 'meta' scope to objreg. 2014-09-25 07:49:46 +02:00
Florian Bruhin
78949a8c1b Use object registry for hintmanager. 2014-09-25 07:49:45 +02:00
Florian Bruhin
e8ce45c440 Add a tab-scope object registry. 2014-09-25 07:49:45 +02:00
Florian Bruhin
4067b584ec Add a registry argument to objreg.register. 2014-09-25 07:43:14 +02:00
Florian Bruhin
e527db1560 Add scope argument to cmdutils.register/commands. 2014-09-25 07:41:51 +02:00
Florian Bruhin
df5ac3ab2f Use object registry for keyparsers. 2014-09-25 07:41:18 +02:00
Florian Bruhin
8421ff7ad0 Fix :restart when installed as Python egg with launcher 2014-09-25 07:07:27 +02:00
Florian Bruhin
e029139764 Fix exception when adding quickmark with empty name. 2014-09-25 06:56:25 +02:00
Florian Bruhin
c77057e88e Add a scope parameter to objreg functions. 2014-09-25 00:30:52 +02:00
Florian Bruhin
4783df8c32 Avoid download_get signal. 2014-09-25 00:29:29 +02:00
Florian Bruhin
c19b8fe982 Fix tests for object registry. 2014-09-24 23:11:17 +02:00
Florian Bruhin
34a5ad48b2 Don't pass prompt object to prompter. 2014-09-24 22:25:11 +02:00
Florian Bruhin
027e7e054e Remove obsolete EnumBase usertype. 2014-09-24 22:25:11 +02:00
Florian Bruhin
05ff908c4f Update attributes in docstrings. 2014-09-24 22:25:11 +02:00
Florian Bruhin
f2b46dc2e9 Remove srcmodel attribute from completionfilter. 2014-09-24 22:25:11 +02:00
Florian Bruhin
cb35452cf0 Remove unused flag for keyparser. 2014-09-24 22:25:11 +02:00
Florian Bruhin
62e55499eb Privatize all attributes which aren't needed from the outside. 2014-09-24 22:25:11 +02:00
Florian Bruhin
75da8a7f1b Add missing parent=None 2014-09-24 22:25:11 +02:00
Florian Bruhin
507354c8d1 Use object registry for Prompt in Prompter. 2014-09-24 22:25:10 +02:00
Florian Bruhin
8cb6ba01e3 Use object registry for TabbedBrowser in SignalFilter. 2014-09-24 22:25:10 +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
6a5c9ba138 Use object registry for CompletionView. 2014-09-24 22:25:10 +02:00
Florian Bruhin
7e8e9ee21f Get rid of _page attribute of WebView 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
b119100321 Get rid of _tabs attribute in CommandDispatcher. 2014-09-24 20:21:43 +02:00
Florian Bruhin
5e8144fafa Move cntwidget to commands. 2014-09-24 19:53:31 +02:00
Florian Bruhin
fd9c4b860a Use object registry for url_stack. 2014-09-24 07:32:05 +02:00
Florian Bruhin
387622623d Detach meta object registry from application. 2014-09-24 07:27:32 +02:00
Florian Bruhin
b0a9ecf094 Detach object registry from application. 2014-09-24 07:13:53 +02:00
Florian Bruhin
aa646463b0 Also use objreg API in app 2014-09-24 07:10:17 +02:00
Florian Bruhin
3c2e584c2a Make pylint shut up with _UNSET object. 2014-09-24 07:07:31 +02:00
Florian Bruhin
3f02451828 Move object registry to its own file. 2014-09-24 07:06:45 +02:00
Florian Bruhin
b121ceef21 Use object registry for last focused tab. 2014-09-24 06:41:51 +02:00
Florian Bruhin
6090bf418d Add utils.delete_object() 2014-09-24 06:41:39 +02:00
Florian Bruhin
d32d6c9b28 Allow a default value for utils.get_object. 2014-09-24 06:41:22 +02:00
Florian Bruhin
a2d3ca6565 Make it possible to update an object in the object registry. 2014-09-24 06:25:08 +02:00
Florian Bruhin
908a69af18 Better __repr__s 2014-09-23 23:31:17 +02:00
Florian Bruhin
9aa65a2341 Fix lint and bugs 2014-09-23 23:17:36 +02:00
Florian Bruhin
2b60cdb64c Object names cleanup 2014-09-23 23:05:55 +02:00
Florian Bruhin
04be586bca Use object registry for keyconfig. 2014-09-23 22:37:41 +02:00
Florian Bruhin
fe5d9939b9 Move debug console from app to utilcmd 2014-09-23 22:31:26 +02:00
Florian Bruhin
90820126b4 Update comment 2014-09-23 22:29:03 +02:00
Florian Bruhin
953e50721c Use object registry for config. 2014-09-23 22:28:28 +02:00
Florian Bruhin
07dde5be80 Fix downloading (getting messagebrige object). 2014-09-23 22:22:44 +02:00
Florian Bruhin
b818bc5896 Use object registry for downloadmanager. 2014-09-23 22:22:03 +02:00
Florian Bruhin
7a7b397c15 Use object registry for cmd-history. 2014-09-23 22:17:25 +02:00
Florian Bruhin
8af8e3530f Use object registry for args. 2014-09-23 22:13:10 +02:00
Florian Bruhin
297e37fdf2 Remove legacy instance= parameter support. 2014-09-23 22:08:05 +02:00
Florian Bruhin
37dbfde6ac Use object registry for app. 2014-09-23 22:06:46 +02:00
Florian Bruhin
a32ed36ba6 Use object registry for mainwindow. 2014-09-23 22:05:00 +02:00
Florian Bruhin
a76c4c8ba5 Use object registry for tabbedbrowser. 2014-09-23 22:01:46 +02:00
Florian Bruhin
487300f926 Use object registry for prompter. 2014-09-23 21:56:29 +02:00
Florian Bruhin
ffaf4f0cb0 Use object registry for completion. 2014-09-23 21:50:34 +02:00
Florian Bruhin
40812f81b6 Use object registry for status-cmd. 2014-09-23 21:50:34 +02:00
Florian Bruhin
9a3ceebf2e Use object registry for completer. 2014-09-23 21:39:42 +02:00
Florian Bruhin
f5b1d3ce4d Use object registry for command-dispatcher. 2014-09-23 21:35:08 +02:00
Florian Bruhin
5f45d3de60 Use object registry for modeman. 2014-09-23 20:02:48 +02:00
Florian Bruhin
d441471a17 Use object registry for app._timers. 2014-09-23 19:53:48 +02:00
Florian Bruhin
184babbd84 Remove destroyed QObjects from ObjectRegistry. 2014-09-23 19:53:48 +02:00
Florian Bruhin
58be65f4f0 Use object registry for messagebridge. 2014-09-23 19:53:48 +02:00
Florian Bruhin
1d535ae300 Use object registry for stateconfig. 2014-09-23 19:53:48 +02:00
Florian Bruhin
21bdf517b7 Use object registry for searchrunner. 2014-09-23 19:53:48 +02:00
Florian Bruhin
68cfe499fc Use object registry for rl_bridge. 2014-09-23 19:53:48 +02:00
Florian Bruhin
ab95234dad Add object registry support to command handler. 2014-09-23 19:53:48 +02:00
Florian Bruhin
10eb849ae7 Fix lint 2014-09-23 19:53:47 +02:00
Florian Bruhin
10f3c47ae2 Add __repr__ for cookies/cache. 2014-09-23 19:53:47 +02:00
Florian Bruhin
aa681f5ad2 Merge get_all_widgets into get_all_objects. 2014-09-23 19:53:47 +02:00
Florian Bruhin
30209f531e Improve get_all_objects output. 2014-09-23 19:53:47 +02:00
Florian Bruhin
9e5d8b2480 Add a meta-registry. 2014-09-23 19:53:47 +02:00
Florian Bruhin
dce5289b69 Rename global registry from obj to registry. 2014-09-23 19:53:47 +02:00
Florian Bruhin
dc7ad3e2de Use a normal UserDict for ObjectRegistry. 2014-09-23 19:53:46 +02:00
Florian Bruhin
ca2be960df Use object registry for cache/cookiejar. 2014-09-23 19:53:20 +02:00
Florian Bruhin
3b3675d1af utils: Add helper functions get_object/register_object. 2014-09-23 19:53:15 +02:00
Florian Bruhin
2694ab2e80 app: Make commandrunner/debugconsole private. 2014-09-23 19:51:52 +02:00
Florian Bruhin
097645ae8e app: Support object registry in get_all_objects. 2014-09-23 19:51:52 +02:00
Florian Bruhin
981604fc8b Add initial object registry. 2014-09-23 19:51:52 +02:00
Florian Bruhin
1ce1c91d69 app: Refactor get_all_objects. 2014-09-23 19:51:52 +02:00
Florian Bruhin
698e4049d3 Fix :bind command. 2014-09-23 17:40:56 +02:00
Florian Bruhin
f4876c7f4f Split docutils from utils 2014-09-23 04:22:51 +02:00
Florian Bruhin
9954a08ea2 Fix commands with ignore_args=True (e.g. :restart) 2014-09-22 22:46:03 +02:00
Florian Bruhin
a4079bb39e Split :navigate into several functions 2014-09-22 22:36:31 +02:00
Florian Bruhin
d5a294ae55 commands: Move tab opening to _open functions. 2014-09-22 22:27:19 +02:00
Florian Bruhin
207bb00c50 Add increment/decrement to :navigate 2014-09-22 21:51:09 +02:00
Florian Bruhin
4213550206 Add :navigate up 2014-09-22 21:16:21 +02:00
Florian Bruhin
4615d22a5a browser.commands: Refactor :navigate. 2014-09-22 21:08:11 +02:00
Florian Bruhin
9145ba9656 Adjust comment 2014-09-22 21:03:01 +02:00
Florian Bruhin
51413094bf Merge prev-page/next-page into a navigate command. 2014-09-22 21:01:52 +02:00
Florian Bruhin
bc01f3a780 Fix spelling of temporarily 2014-09-22 20:44:07 +02:00
Florian Bruhin
e26606b0d6 Add /usr/bin/env to shebangs 2014-09-22 20:21:00 +02:00
Florian Bruhin
688b9a57cb Add missing is_visible check for hints. 2014-09-22 20:06:17 +02:00
Florian Bruhin
812a0fdd41 Merge branch 'newcmd'
Conflicts:
	.flake8
	pkg/PKGBUILD.qutebrowser-git
	qutebrowser/browser/commands.py
	qutebrowser/browser/hints.py
	qutebrowser/config/configdata.py
	qutebrowser/network/qutescheme.py
	qutebrowser/test/config/test_configtypes.py
	qutebrowser/utils/utils.py
2014-09-22 19:09:48 +02:00
Florian Bruhin
53b617590f Maybe fix segfault on download errors. 2014-09-22 17:56:23 +02:00
Florian Bruhin
7cf9989bff Fix text color in command right click menu 2014-09-22 13:24:00 +02:00
Florian Bruhin
def417b8a5 Check if docs are up to date if running from git repo. 2014-09-21 22:15:56 +02:00
Florian Bruhin
81b6a92183 Add error if help was not found 2014-09-21 21:21:41 +02:00
Florian Bruhin
84cdb30bcb webelem: Avoid unnecessary ::geometry calls 2014-09-19 17:39:37 +02:00
Florian Bruhin
658053842e hints: Wrap elements after checking is_visible.
Wrapping thousands of elements is really slow (>3 seconds for hinting on a
reddit page, because we wrap ~2500 elements with 50 methods each), so we try to
filter the elements first before wrapping them, as the visible elements will be
much less.
2014-09-19 12:32:28 +02:00
Florian Bruhin
2686278b48 webelem: Make it possible to use is_visible with unwrapped elements. 2014-09-19 12:30:38 +02:00
Florian Bruhin
bc884ed51e webelem: Refuse to wrap a wrapper in WebElementWrapper. 2014-09-19 12:28:23 +02:00
Florian Bruhin
a0cc55037e webelem: Get rid of functools.wraps/functools.update_wrapper. 2014-09-19 11:35:10 +02:00
Florian Bruhin
1eb9bb079c Hide scrollbars via CSS. 2014-09-19 00:37:55 +02:00
Florian Bruhin
1bc5160453 Make it possible to use CSS strings in ui->user-stylesheet. 2014-09-19 00:35:17 +02:00
Florian Bruhin
c3531de71a Clean up autohide and make it work on start. 2014-09-18 19:06:43 +02:00
Florian Bruhin
076ed43ec0 Add auto-hide option for tabs. 2014-09-18 18:15:37 +02:00
Florian Bruhin
906a049382 Fix lint 2014-09-18 17:25:48 +02:00
Florian Bruhin
7f76c3ba13 safe_shlex_split: cleanup and don't do double-lexing 2014-09-18 16:58:38 +02:00
Florian Bruhin
1c1534b5f6 safe_shlex_split: Use real lexer object and handle ' correctly. 2014-09-18 16:57:07 +02:00
Florian Bruhin
0c4d15ea5a safe_shlex_split: Fix broken \' in test. 2014-09-18 16:56:50 +02:00
Florian Bruhin
7de0b85dda safe_shlex_split: Adjust docstring 2014-09-18 16:15:57 +02:00
Florian Bruhin
6a86924e60 safe_shlex_split: Give up after 3 tries. 2014-09-18 16:15:37 +02:00
Florian Bruhin
2e35685fe1 safe_shlex_split: Don't split None. 2014-09-18 16:15:13 +02:00
Florian Bruhin
38108c68a2 Add tests for single quote with safe_shlex_split. 2014-09-18 16:14:31 +02:00
Florian Bruhin
b2340611f2 Allow - in font names. 2014-09-18 13:25:52 +02:00
Florian Bruhin
cef1dfe368 Remove exception handling code for qutescheme.
The exceptions now get handled by @prevent_exceptions on the createRequest
method of the NetworkManager, causing the exception handler to pop up properly.
2014-09-16 22:08:10 +02:00
Florian Bruhin
3bded60ba6 Prevent exceptions in NetworkManager::createRequest. 2014-09-16 22:08:00 +02:00
Florian Bruhin
644dfe53e2 Add a decorator to prevent Exceptions (to prevent segfaults). 2014-09-16 22:06:48 +02:00
Florian Bruhin
5eef6d422d Better exception formatting and handling. 2014-09-16 08:20:19 +02:00
Florian Bruhin
2e419d413b Catch exceptions in version.version() in CrashDialog. 2014-09-16 07:34:27 +02:00
Florian Bruhin
8f2ad91086 Fix lint 2014-09-16 07:34:07 +02:00
Florian Bruhin
c47fa840a0 network.qutescheme: Workaround for segfault on exceptions. 2014-09-16 07:16:30 +02:00
Florian Bruhin
4bab430c32 utils.version: Use programmatic imports. 2014-09-16 07:16:15 +02:00
Florian Bruhin
d039a29fc9 Move more logic into earlyinit from qutebrowser.py. 2014-09-16 06:39:39 +02:00
Florian Bruhin
3234d9a821 earlyinit refactor: Use programmatic imports. 2014-09-16 06:21:40 +02:00
Florian Bruhin
18e56eca90 earlyinit: Fix text for debian. 2014-09-16 05:24:20 +02:00
Florian Bruhin
55216e207f configdata: Move Consolas further back in font list.
Consolas generally is quite a nice font, but in this font size it shows a lot
of bleeding and Courier New is much more readable, so we only use it as
fallback now.
2014-09-15 22:24:32 +02:00
Florian Bruhin
d1ddc8c6cb Fix lint 2014-09-15 22:01:13 +02:00
Florian Bruhin
f5ecba0d07 Move exit logging to app.py for Python2 compatibility. 2014-09-15 21:55:38 +02:00
Florian Bruhin
19afa69d87 view_source: Add line numbers. 2014-09-15 18:19:56 +02:00
Florian Bruhin
175d25b3c4 Merge branch 'master' of ssh://cmpl.cc:2323/qutebrowser 2014-09-15 18:01:20 +02:00
Florian Bruhin
3bd55b2140 Add keybinding for view_source. 2014-09-15 18:00:06 +02:00
Florian Bruhin
715aec991e Add view_source command. 2014-09-15 17:59:54 +02:00
Florian Bruhin
14cc77ff42 Add pygments as dependency. 2014-09-15 17:59:33 +02:00
Florian Bruhin
34b0cf429c command: Cleanup 2014-09-15 08:16:19 +02:00
Florian Bruhin
8a51aa759e command: Clean up ParamType. 2014-09-15 07:46:50 +02:00
Florian Bruhin
e1d93fa3fa Move inspect stuff from cmdutils to command. 2014-09-15 07:42:21 +02:00
Florian Bruhin
81aa08593b hints: Ignore invalid href's instead of crashing. 2014-09-15 06:54:05 +02:00
Florian Bruhin
ad2435fa0b hints: Small cleanup 2014-09-15 06:53:05 +02:00
Florian Bruhin
00193df99e hints: Fix URL resolving crash with new WebElement API. 2014-09-15 06:52:34 +02:00
Florian Bruhin
f7c0f8f11e Remove :get and use :set with ...? instead. 2014-09-15 06:24:15 +02:00
Florian Bruhin
22e6a26ec3 Fix function calls with changed attribute names. 2014-09-15 06:20:33 +02:00
Florian Bruhin
fa9d9b62b1 config: Use sectname/optname argument names. 2014-09-15 00:03:59 +02:00
Florian Bruhin
f2e68685d2 Fix doc generation with overridden argument names. 2014-09-15 00:03:39 +02:00
Florian Bruhin
4d3b3616a6 Fix lint 2014-09-14 23:56:19 +02:00
Florian Bruhin
063be350e4 cmdutils: Merge _param_to_argparse_args and _param_to_argparse_kw. 2014-09-14 23:34:55 +02:00
Florian Bruhin
66f0aa8d5f cmdutils: Bind keyword-only arguments as flags. 2014-09-14 23:25:40 +02:00
Florian Bruhin
fe08052641 command: Don't handle varargs if they are None 2014-09-14 23:16:54 +02:00
Florian Bruhin
b9216bca15 Fix hint command arguments. 2014-09-14 23:16:35 +02:00
Florian Bruhin
1fd8fb57a6 Use *args for commands where possible. 2014-09-14 23:10:51 +02:00
Florian Bruhin
f1f05516b3 command: Fix handling of count when it's not given. 2014-09-14 23:06:52 +02:00
Florian Bruhin
b2058e2f0e cmdutils: Default to nargs='+' for *args. 2014-09-14 22:56:02 +02:00
Florian Bruhin
d4f584684b command: Iterate over function signature when calling instead over namespace. 2014-09-14 22:48:25 +02:00
Florian Bruhin
4b759c5513 cmdutils: Make sure functions don't have **kwargs. 2014-09-14 22:48:00 +02:00
Florian Bruhin
cd8d137dd6 cmdutils: Bail out if instance is given but function takes no self. 2014-09-14 22:47:18 +02:00
Florian Bruhin
319ea242da cmdutils: raise TypeError instead of ValueError. 2014-09-14 22:46:48 +02:00
Florian Bruhin
ef31157f5e cmdutils: Use inspect.getdoc 2014-09-14 22:09:01 +02:00
Florian Bruhin
3391896037 Disable workaround for PyQt 5.3.2 2014-09-14 21:12:03 +02:00
Florian Bruhin
74b45aea47 conftypes: Better handling of ShellCommand. 2014-09-13 00:42:16 +02:00
Florian Bruhin
fea3524443 Remove 'or None' in docs. 2014-09-13 00:37:07 +02:00
Florian Bruhin
38c341e3ea Add count info in commands. 2014-09-13 00:33:54 +02:00
Florian Bruhin
80ef0782d5 Improve some docstrings. 2014-09-13 00:22:27 +02:00
Florian Bruhin
2336b5de43 Refactor qutehandlers so they are not classmethods. 2014-09-12 20:27:20 +02:00
Florian Bruhin
16caa9ba69 Handle qute://help more intuitively (load index.html) 2014-09-12 20:19:27 +02:00
Florian Bruhin
0c9d7723c8 Fix on_config_changed for tabbar (renamed to tabs) 2014-09-12 20:15:20 +02:00
Florian Bruhin
f2b10160cc Handle IOError with qute://help. 2014-09-12 20:10:13 +02:00
Florian Bruhin
ab0e600977 Error if unknown sections are in the config. 2014-09-12 17:53:27 +02:00
Florian Bruhin
052fa8e277 Don't emit config changed signals during init.
When we're initializing anyways nobody got a config value yet, so emitting the
signals just will mean code gets executed twice.

This reduces the startup time by about 1-2 seconds.
2014-09-12 17:38:40 +02:00
Florian Bruhin
cd14cbbfb8 Handle changed config correctly for interpolated values. 2014-09-12 17:26:47 +02:00
Florian Bruhin
a796482c83 Support !-keysections, don't bind leave-mode in normal mode. 2014-09-12 07:33:52 +02:00
Florian Bruhin
e516589fe3 Fix double default keybindings. 2014-09-12 07:18:04 +02:00
Florian Bruhin
c0e8352c95 Allow unbinding keys. 2014-09-09 23:12:55 +02:00
Florian Bruhin
4fde56a942 Allow binding keys. 2014-09-09 23:05:28 +02:00
Florian Bruhin
277dab4069 keyconfparser: Add empty sections. 2014-09-09 22:38:14 +02:00
Florian Bruhin
95d8091205 Fix double bindings 2014-09-09 22:34:20 +02:00
Florian Bruhin
30e926abf6 Check duplicate keychains 2014-09-09 22:29:17 +02:00
Florian Bruhin
e3d16f3bbe Full read-write support for key config. 2014-09-09 22:18:00 +02:00
Florian Bruhin
414ab88a0e Fix lint 2014-09-09 18:32:18 +02:00
Florian Bruhin
91514ad6c0 Add missing keyconfparser file. 2014-09-09 13:42:25 +02:00
Florian Bruhin
6f03f08111 Make new key config work (readonly) 2014-09-09 07:43:27 +02:00
Florian Bruhin
64183b5a26 Start moving keybindings 2014-09-08 16:53:33 +02:00
Florian Bruhin
070d5ae300 Add more documentation. 2014-09-08 12:21:47 +02:00
Florian Bruhin
1220f0c5fd Move webelem from utils to browser. 2014-09-08 10:30:05 +02:00
Florian Bruhin
6f22319158 webview: Fix insert mode check. 2014-09-08 10:23:18 +02:00
Florian Bruhin
25da8dd169 webelem: Fix debug output 2014-09-08 10:19:52 +02:00
Florian Bruhin
381b06e967 Fix lint 2014-09-08 07:44:32 +02:00
Florian Bruhin
5e6150e665 Add a :help command. 2014-09-08 07:36:18 +02:00
Florian Bruhin
0267dac2be Add --help documentation 2014-09-08 07:36:18 +02:00
Florian Bruhin
fc70d700b2 cmdutils: Force metavar if choices are given. 2014-09-08 07:36:17 +02:00
Florian Bruhin
dcfb52847f Nicer flag output in docs. 2014-09-08 07:36:17 +02:00
Florian Bruhin
4cf7e6e767 Add docstring for :quickmark-load. 2014-09-08 07:36:17 +02:00
Florian Bruhin
6674eedfae cmdutils: Add default value type to multitype_conv tuple. 2014-09-08 07:36:17 +02:00
Florian Bruhin
13a2506c6a argparser: Also catch TypeError for multitype_conv. 2014-09-08 07:36:17 +02:00
Florian Bruhin
47f42f9e5a commands.argparser: Make type tuples a set(). 2014-09-08 07:36:17 +02:00
Florian Bruhin
05f3809d01 Fix lint 2014-09-08 07:36:17 +02:00
Florian Bruhin
0a094c6e58 Refactor HintManager.start 2014-09-08 07:36:17 +02:00
Florian Bruhin
b453ae563e Clean up docstring parsing and move it into qutebrowser for commands. 2014-09-08 07:36:17 +02:00
Florian Bruhin
b5f28b6ff2 commands.argparser: Make ArgumentParser take args, add name. 2014-09-08 07:36:17 +02:00
Florian Bruhin
a656c8cfb0 commands: Add initial --help argument support. 2014-09-08 07:36:17 +02:00
Florian Bruhin
32e24479b9 commands.cmdutils: Clean up decorator. 2014-09-08 07:36:17 +02:00
Florian Bruhin
03a0a1c599 commands: Handle ArgumentParser exit. 2014-09-08 07:36:17 +02:00
Florian Bruhin
57d51ad9bb Lots of fixes for new command system.
Squashed commit:

- Fix getting current URL
- Get rid of *args for hints.
- Make enums work.
- Fix moving commands to utilcmds.
- Fix enums in argparse
- Fix arg splitting for hints.
- Fix default enum args.
- Fix argument splitting for hints if None is given.
- Fix set_cmd_text with flags and fix {url}.
- Fix unittests
- Fix tuple types for arguments.
- Fix scroll-page.
- Fix lint
- Fix open_target.
- Others
2014-09-08 07:36:17 +02:00
Florian Bruhin
d836e26107 Nicer debug printing of functions. 2014-09-08 07:36:17 +02:00
Florian Bruhin
a811f8cb07 Start initial newcmd stuff. 2014-09-08 07:36:17 +02:00
Florian Bruhin
84a034d7e9 More liberal quoting. 2014-09-08 07:35:18 +02:00
Florian Bruhin
522b408fde utils.completer: Quote strings for completion. 2014-09-08 07:12:55 +02:00
Florian Bruhin
6b8c597d18 Remove unused import. 2014-09-04 20:35:26 +02:00
Florian Bruhin
b856bf3a47 Improve webelement API 2014-09-04 20:30:59 +02:00
Florian Bruhin
becc4490bc Add FIXME to qurl 2014-09-03 22:56:54 +02:00
Florian Bruhin
b789d14513 Improve prev-page/next-page matching and logging. 2014-09-03 22:55:48 +02:00
Florian Bruhin
5ba3440369 Add details to colorama workaround. 2014-09-03 22:20:17 +02:00
Florian Bruhin
15b8c553c8 Fix rl-unix-line-discard by reimplementing QLineEdit::home. 2014-09-03 21:30:30 +02:00
Florian Bruhin
e3bb3af7ba Make it possible to use pdb for debugging. 2014-09-03 13:31:01 +02:00
Florian Bruhin
71796e9528 Fix statusbar text when entering insert mode via hints.
Before, hints cleaned the statusbar text delayed, clearing the "==== INSERT
MODE ====" in the statusbar.

Now we only reset the text if it wasn't changed.
2014-09-03 11:51:24 +02:00
Florian Bruhin
3e904f4c52 Fix crash when using commands on startup which need a widget. 2014-09-03 11:32:56 +02:00
Florian Bruhin
ccfc0b3c19 Get rid of most @property's.
They were problematic because they're executing hidden code, and also PyQt
hides exceptions happening inside them.
2014-09-02 23:37:47 +02:00
Florian Bruhin
a2e457ccc3 Remove old Ubuntu workaround. 2014-09-02 20:45:25 +02:00
Florian Bruhin
4caec2becb Document and mark workarounds. 2014-09-02 20:44:58 +02:00
Florian Bruhin
bcaba3f5ca Rename tests to reflect renamed modules. 2014-09-02 08:27:53 +02:00
Florian Bruhin
83e9638d42 Add fancy URL to tests. 2014-09-02 08:21:53 +02:00
Florian Bruhin
e112038a8b Handle IPv6 literals correctly. 2014-09-02 08:20:33 +02:00
Florian Bruhin
330af95778 Strip spaces in url string correctly. 2014-09-02 07:49:06 +02:00
Florian Bruhin
96c1d53222 urlutils: Strip URL before testing. 2014-09-02 07:11:01 +02:00
Florian Bruhin
892c02268a Shut down NetworkManager before deleting WebPage.
Now that the QWebPage actually is a parent of the QNetworkAccessManager, first
setting the page to None and then deleting the QNetworkAccessManager will get
us a RuntimeError because the underlying C++ object is already gone.
2014-09-02 07:02:21 +02:00
Florian Bruhin
7813f8f0c2 Remove unused cookiejar NetworkManager, fix parenting.
Before, the QWebPage got passed to the QNetworkAccessManager as cookiejar,
causing no parent to be set. Now, the QWebPage actually owns the
QNetworkAccessManager.
2014-09-02 07:00:02 +02:00
Florian Bruhin
71a2ade637 Fix URL detection corner cases. 2014-09-02 06:53:52 +02:00
Florian Bruhin
2bf616ff78 Adjust QWebSettings paths. 2014-09-01 21:56:30 +02:00
Florian Bruhin
428d70c746 Add a network disk cache. 2014-09-01 19:42:21 +02:00
Florian Bruhin
6d97da7bcc browser.downloads: Download with default name if path is given. 2014-09-01 17:51:49 +02:00
Florian Bruhin
0a646b110b Store cookies in binary format.
We saved/opened cookies as UTF-8 which lead to an exception on saving with a
cookie with an ä in it.

ISO-8859-1 would be more appropriate, but we trust Qt to make the right choice
and don't re-encode anything now.
2014-09-01 16:22:01 +02:00
Florian Bruhin
e163478782 Handle Shift-Return keypresses correctly. 2014-08-30 14:38:34 +02:00
Florian Bruhin
c0a88bf3d0 qute:log: Scroll to bottom on load 2014-08-29 07:38:07 +02:00
Florian Bruhin
d8fa2e8ef0 Fix lint 2014-08-29 07:34:44 +02:00
Florian Bruhin
d059c468af Merge branch 'ninja' 2014-08-29 07:33:43 +02:00
Florian Bruhin
f44896cc44 Add a VDEBUG logging level. 2014-08-29 07:33:37 +02:00
Florian Bruhin
2cc2e769c3 network.qutescheme: Make pylint shut up. 2014-08-29 07:07:21 +02:00
Florian Bruhin
1dce50309b First steps at using jinja2 for qute:log. 2014-08-29 06:59:44 +02:00
Florian Bruhin
0f0929ac78 Use jinja for most qute:... pages. 2014-08-29 06:41:18 +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
350f1c1405 Use inherited templates for error page. 2014-08-28 20:14:40 +02:00
Florian Bruhin
dd3489b936 Add spaces in templates. 2014-08-28 20:14:40 +02:00
Florian Bruhin
a6ae129595 Use jinja for error page. 2014-08-28 20:14:40 +02:00
Florian Bruhin
0b15790f3d Use jinja for stylesheets. 2014-08-28 20:14:40 +02:00
Florian Bruhin
a4c87b4c54 Remove STYLESHEET class attribute from docstrings. 2014-08-28 20:14:40 +02:00
Florian Bruhin
0d42eaa152 Remove useless getraw() from ColorDict/FontDict. 2014-08-28 20:14:40 +02:00
Florian Bruhin
2fdf241da2 Add dependency on jinja2. 2014-08-28 20:14:40 +02:00
Florian Bruhin
6d2acc244c Use an LRU cache for stylesheets 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
cb2dd62dc5 Fix lint 2014-08-27 22:23:37 +02:00
Florian Bruhin
3a73f9f532 Improve performance with statusbar error property 2014-08-27 21:03:43 +02:00
Florian Bruhin
af10d1c857 Fix cache invalidation for on_setting_changed. 2014-08-27 20:22:38 +02:00
Florian Bruhin
68ef9b97a3 Add an LRU cache to the config. 2014-08-27 20:16:04 +02:00
Florian Bruhin
562388fe52 Rename config.conftypes to config.configtypes. 2014-08-26 21:41:41 +02:00
Florian Bruhin
ce4a5affa4 Rename commands.utils to commands.cmdutils. 2014-08-26 20:48:39 +02:00
Florian Bruhin
270b822908 Simplify imports in keyinput.modeman. 2014-08-26 20:38:50 +02:00
Florian Bruhin
c72bfff306 Rename commands.exceptions to commands.cmdexc. 2014-08-26 20:38:10 +02:00
Florian Bruhin
5adf48ed3d Rename utils.url to utils.urlutils. 2014-08-26 20:33:41 +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
b4298c2922 Remove 'as logger' imports. 2014-08-26 20:15:41 +02:00
Florian Bruhin
e04b31eb90 Remove qt_ prefix from qtutils functions. 2014-08-26 19:23:06 +02:00
Florian Bruhin
d625cde28c Clean up imports 2014-08-26 19:10:14 +02:00
Florian Bruhin
45608ee9f8 Add bugs URL to colorama issue 2014-08-26 06:35:58 +02:00
Florian Bruhin
1a24e953c6 Better way to deinit colorama 2014-08-25 22:26:52 +02:00
Florian Bruhin
f452b02b24 Turn off repainting while moving tabs.
Before we had some flashing because we're removing the tab, inserting the new
one, and then focusing the new one.
2014-08-25 15:41:19 +02:00
Florian Bruhin
2b85093d90 Fix ss/sl/sk keybindings. 2014-08-25 15:41:06 +02:00
Florian Bruhin
743cc47229 Default to delta=1 for gl/gr. 2014-08-25 15:40:48 +02:00
Florian Bruhin
03cb9c353b Fix clipboard selection in :paste on windows. 2014-08-25 15:28:07 +02:00
Florian Bruhin
984f984cf0 Fix lint. 2014-08-25 10:58:12 +02:00
Florian Bruhin
012482ce10 Fix colorama log issues on Windows when frozen.
With the new version of colorlog, colorama.init() gets called when opening
colorlog, which then lead to sys.stderr not being None anymore (but a wrapped
"None"), which lead to an exception when we checked isatty().

We now just unwrap these again.
2014-08-25 10:52:38 +02:00
Florian Bruhin
d2b7530c0a Merge branch 'master' of ssh://lupin/qutebrowser 2014-08-25 07:01:33 +02:00
Florian Bruhin
bbcf593f38 Fix logfilter 2014-08-25 06:58:41 +02:00
Florian Bruhin
66e670a96b Fix ignore_case for searching. 2014-08-25 06:56:14 +02:00
Florian Bruhin
e576ff608f utils.webelem: Don't treat select boxes as editable. 2014-08-22 07:54:48 +02:00
Florian Bruhin
c826db7e03 Make editor config configurable 2014-08-20 20:57:10 +02:00
Florian Bruhin
17dd4732ae Add explicit encoding to open() calls. 2014-08-20 20:33:14 +02:00
Florian Bruhin
05727b2584 Merge branch 'master' of ssh://cmpl.cc:2323/qutebrowser 2014-08-20 15:08:07 +02:00
Florian Bruhin
cd117ccabb Treat ACE editor as editable. 2014-08-20 15:07:33 +02:00
Florian Bruhin
d18a025d68 earlyinit: Beautify messages 2014-08-15 18:58:46 +02:00
Florian Bruhin
f1f5c344bc Whitespace fix 2014-08-14 15:11:48 +02:00
Florian Bruhin
36572bc0cb Add pypeg2 to version info 2014-08-14 15:08:33 +02:00
Florian Bruhin
9585b3c925 Add some logging for content-disposition 2014-08-14 14:59:13 +02:00
Florian Bruhin
c7bfe784e4 Adjust the rest of the code for rfc6266 -> pypeg2 2014-08-14 13:37:27 +02:00
Florian Bruhin
ef1035f2ba utils.rfc6266: Fix lint 2014-08-14 13:29:07 +02:00
Florian Bruhin
9cf80cf498 utils.rfc6266: Cleanup 2014-08-14 13:29:07 +02:00
Florian Bruhin
62b00e5ff6 utils.rfc6266: Test for invalid ISO-8859-1 and duplicate params. 2014-08-14 13:29:06 +02:00
Florian Bruhin
03ea837211 utils.rfc6266: Do parsing of ext-values earlier. 2014-08-14 13:29:06 +02:00
Florian Bruhin
33b1cc6916 utils.rfc6266: Remove percent_decode function. 2014-08-14 13:29:06 +02:00
Florian Bruhin
9ae5a90f5e utils.rfc6266: Remove unneeded IKeyword. 2014-08-14 13:29:06 +02:00
Florian Bruhin
532f739e26 tests: Fix rfc6266 testcase. 2014-08-14 13:29:06 +02:00
Florian Bruhin
acb5159791 utils.rfc6266: Nicer ext-param handling 2014-08-14 13:29:06 +02:00
Florian Bruhin
e159990363 utils.rfc6266: Initial implementation. 2014-08-14 13:29:06 +02:00
Florian Bruhin
f13607ced2 Fix lint 2014-08-14 13:28:48 +02:00
Florian Bruhin
1a91972a5c console: Ignore empty texts 2014-08-13 09:08:31 +02:00
Florian Bruhin
4cab864ea0 console: Add 'self' to locals. 2014-08-13 09:07:18 +02:00
Florian Bruhin
0ec6234030 widgets.misc: Prevent moving cursor to prompt in CommandLineEdit. 2014-08-13 09:02:53 +02:00
Florian Bruhin
3ea0f0d8a6 Make CommandPrompt aware of its prompt. 2014-08-13 07:45:57 +02:00
Florian Bruhin
4318a01774 console: Add qApp to locals. 2014-08-13 07:14:21 +02:00
Florian Bruhin
2586f5ca9a console: Never give focus to output view. 2014-08-13 07:10:36 +02:00
Florian Bruhin
47e405dda5 Stop history browsing at the correct places. 2014-08-13 07:10:24 +02:00
Florian Bruhin
9c69ea3c45 Use a validator function for ConsoleLineEdit.
The prompts provided (e.g. sys.ps1/sys.ps2) could change during the lifetime of
the validator.
2014-08-13 07:10:05 +02:00
Florian Bruhin
73214836da console: Set nicer font 2014-08-13 06:56:46 +02:00
Florian Bruhin
35d0fe2b52 console: Print prompts. 2014-08-13 06:54:08 +02:00
Florian Bruhin
5b61487130 Refactor different LineEdit classes. 2014-08-13 06:53:36 +02:00
Florian Bruhin
b9e4dd282c cmdhistory: Make history public. 2014-08-13 06:53:02 +02:00
Florian Bruhin
2e760a92cf debug-console: Handle I/O and exceptions. 2014-08-13 06:09:18 +02:00
Florian Bruhin
103a81a976 console: Set focus on line edit. 2014-08-13 05:15:58 +02:00
Florian Bruhin
2a40002c2d Add instance for :debug-console command. 2014-08-13 05:15:21 +02:00
Florian Bruhin
07fda5818c Add broken debugging console. 2014-08-13 00:13:32 +02:00
Florian Bruhin
0233d2b561 configdata: Default insert-mode-on-plugins to false 2014-08-12 23:26:21 +02:00
Florian Bruhin
48e81b34d0 http: remove change_content_type.
We're probably not going to need it.
2014-08-12 21:16:33 +02:00
Florian Bruhin
cdd7457aee utils.http: Return [None, None] in parse_content_type. 2014-08-12 21:12:13 +02:00
Florian Bruhin
dd2ed78f40 Handle wrong image/jpg mimetype in unsupportedContent slot. 2014-08-12 21:08:13 +02:00
Florian Bruhin
298f672084 Whitespace fix 2014-08-12 18:30:15 +02:00
Florian Bruhin
3c9aad8e26 Add some messages to searching 2014-08-12 17:32:50 +02:00
Florian Bruhin
5b915186d7 Add a 'smart' option for ignore-case. 2014-08-12 17:00:18 +02:00
Florian Bruhin
5b3abfa5dd tests: Disable logging properly. 2014-08-12 16:28:32 +02:00
Florian Bruhin
07100178f3 networkmanager: Formatting 2014-08-12 10:01:11 +02:00
Florian Bruhin
bad9031914 Change image/jpg Content-Type to image/jpeg.
This makes QtWebKit display images with a (nonstandard) image/jpg content-type,
e.g. http://m.c.lnkd.licdn.com/mpr/mpr/p/2/005/07b/08a/018245a.jpg (instead of
downloading them).
2014-08-12 09:57:40 +02:00
Florian Bruhin
7be3976890 tests: Add tests for tests.utils.http 2014-08-12 09:13:03 +02:00
Florian Bruhin
cf3fa25ef4 tests.utils.http: Add __init__.py 2014-08-12 09:04:26 +02:00
Florian Bruhin
91a701552d utils.http: Fix joining. 2014-08-12 09:03:59 +02:00
Florian Bruhin
157f5b211f tests: Adjust FakeNetworkReply to work with all headers. 2014-08-12 09:03:38 +02:00
Florian Bruhin
be811e5c62 utils.http: Add some Content-Type stuff 2014-08-12 07:30:53 +02:00
Florian Bruhin
c86e252a9b Change tests to use is_url instead of _is_url_naive. 2014-08-12 07:09:40 +02:00
Florian Bruhin
069371501a Hide QNetworkReplyImplPrivate warning message 2014-08-12 07:00:05 +02:00
Florian Bruhin
be2604cacd Add a new qutebrowser.utils.http module 2014-08-12 07:00:04 +02:00
Florian Bruhin
c51a891e89 utils.url: Add support for opening relative files. 2014-08-08 13:14:48 +02:00
Florian Bruhin
45657141a0 utils.url: Always treat URLs with explicit scheme as URL. 2014-08-08 13:05:46 +02:00
Florian Bruhin
8ab022407b confdata: Comment adjustments 2014-08-08 12:56:07 +02:00
Florian Bruhin
5355096fc3 Add Terminus to default ${_monospace} fonts. 2014-08-08 12:51:47 +02:00
Florian Bruhin
4ff9804f2c Fix lint 2014-08-07 14:47:39 +02:00
Florian Bruhin
1c2a44eebc mainwindow: Don't ensure the completion rect is valid.
This did lead to problems if there was an exception shortly after initializing the mainwindow.
2014-08-07 14:42:22 +02:00
Florian Bruhin
837b2b386e utils.debug: Add a broken qflags_key. 2014-08-07 14:41:39 +02:00
Florian Bruhin
318805a088 utils.debug: Format numbers as hex for qenum_key. 2014-08-07 14:41:07 +02:00
Florian Bruhin
5c50640a68 test_debug: Improve tests for qenum_key. 2014-08-07 14:40:34 +02:00
Florian Bruhin
7063f2445c cmdhistory: Make History more modular. 2014-08-07 14:39:42 +02:00
Florian Bruhin
b8ad04bbe7 test_conftypes: Fix lint. 2014-08-07 07:56:59 +02:00
Florian Bruhin
8756d9e644 test_conftypes: Test float point size correctly. 2014-08-07 07:56:47 +02:00
Florian Bruhin
186a831482 conftypes: Set namedweight correcly for QtFont. 2014-08-07 07:41:06 +02:00
Florian Bruhin
934aaf80c6 conftypes: Set pixel size correctly in QtFont. 2014-08-07 07:39:47 +02:00
Florian Bruhin
ef603090c8 test_conftypes: Activate test for QtFont. 2014-08-07 07:39:36 +02:00
Florian Bruhin
956f6ef5e6 test_conftypes: Use qenum_key for Font.__repr__ 2014-08-07 07:35:25 +02:00
Florian Bruhin
2546c871c8 utils.debug: Improve qenum_key. 2014-08-07 07:35:05 +02:00
Florian Bruhin
19b80c1e90 test_conftypes: Adjust docstring. 2014-08-07 07:34:46 +02:00
Florian Bruhin
e3f1cfe121 conftypes: Set default settings for QtFont. 2014-08-07 07:33:24 +02:00
Florian Bruhin
c8fe5bd1d2 conftypes: Remove quotes for QtFont. 2014-08-07 07:33:14 +02:00
Florian Bruhin
fef5a9944f conftypes: Use namedtuple for font descriptions. 2014-08-07 07:31:41 +02:00
Florian Bruhin
c7ee655750 Use pylint to check modelines and fix them. 2014-08-06 23:51:44 +02:00
Florian Bruhin
5a88028738 Rename qutebrowser.commands.managers module to .runners. 2014-08-06 15:58:08 +02:00
Florian Bruhin
aebce80b2b Rename {Command,Search}Manager to ...Runner 2014-08-06 15:38:25 +02:00
Florian Bruhin
eae81fa560 Cleanup 2014-08-06 14:44:00 +02:00
Florian Bruhin
fcd0d88b1f config: Default tabs -> select-on-remove to right. 2014-08-06 08:24:21 +02:00
Florian Bruhin
13b6fe24eb Reorder tab stuff in config. 2014-08-06 08:10:32 +02:00
Florian Bruhin
1217ed26ad Handle tab position of explicitely opened tab differently.
The default behaviour now should be the same as Chromium.
2014-08-06 07:58:07 +02:00
Florian Bruhin
49ebdff65c Make position of new tabs configurable and more natural. 2014-08-06 07:47:59 +02:00
Florian Bruhin
598fec7ce9 configdata: Remove duplicate keys in default config. 2014-08-06 07:11:33 +02:00
Florian Bruhin
98a026b2a2 Make sure there are no duplicate keys in default config. 2014-08-06 07:11:14 +02:00
Florian Bruhin
2868ea2236 default conf: Remove double ;b binding. 2014-08-06 06:58:15 +02:00
Florian Bruhin
681995600e conftypes: Fix wrong docstring. 2014-08-06 06:58:03 +02:00
Florian Bruhin
d0ed459b56 Fix quickmark-load-... keybindings (b/B). 2014-08-06 06:57:26 +02:00
Florian Bruhin
b2a227fb50 log: Clean up log formatting. 2014-08-05 23:35:20 +02:00
Florian Bruhin
7818366f0a Fix lint 2014-08-05 23:23:15 +02:00
Florian Bruhin
60d4dafbbb Replace cgi.escape by html.escape.
cgi.escape is deprecated:
https://docs.python.org/3.4/library/cgi.html#cgi.escape
2014-08-05 23:20:26 +02:00
Florian Bruhin
f1a8f91d51 log: Adjust colors so warnings/errors are more visible. 2014-08-05 23:07:53 +02:00
Florian Bruhin
1dd56e512a log: Fix RAMHandler so the data can change while iterating. 2014-08-05 23:07:25 +02:00
Florian Bruhin
4e200653a0 Enable python warnings with --debug 2014-08-05 22:33:08 +02:00
Florian Bruhin
d7f9ccf7e5 log: Fix lepl filter with debug logging. 2014-08-05 22:31:30 +02:00
Florian Bruhin
36511ecdb9 Add --debug-exit option for late exit debugging. 2014-08-05 22:17:29 +02:00
Florian Bruhin
f5064c6295 test: Use unittest's subTest.
https://docs.python.org/3.4/library/unittest.html#distinguishing-test-iterations-using-subtests
2014-08-05 22:15:12 +02:00
Florian Bruhin
4d051bea73 test_conftypes: Fix lint 2014-08-05 21:16:30 +02:00
Florian Bruhin
3c5c0fcabe pylint: Disable too-many-lines. 2014-08-05 21:09:55 +02:00
Florian Bruhin
263ee37685 test_conftype: More tests. 2014-08-05 21:08:12 +02:00
Florian Bruhin
ac6defaa7f test_conftypes: Cleanups. 2014-08-05 21:08:01 +02:00
Florian Bruhin
2a34366d2c test: Remove unneeded custom __eq__ methods. 2014-08-05 21:07:37 +02:00
Florian Bruhin
7d97d54f6c conftypes: Transform AutoSearch correctly. 2014-08-05 21:06:46 +02:00
Florian Bruhin
bc009ef462 conftypes: Check URL for SearchEngineUrl. 2014-08-05 21:06:32 +02:00
Florian Bruhin
a81bd44850 conftype: Simplify URL checking for Proxy. 2014-08-05 21:06:11 +02:00
Florian Bruhin
6011cc80ae conftypes: Check {} correctly in ShellCommand. 2014-08-05 21:05:47 +02:00
Florian Bruhin
0766116424 conftypes: cleanup 2014-08-05 21:05:38 +02:00
Florian Bruhin
309ecb95c8 conftypes: Use special SYSTEM_PROXY object instead of 0. 2014-08-05 21:04:37 +02:00
Florian Bruhin
c94ff7b946 Fix import for get_standard_dir 2014-08-05 19:58:47 +02:00
Florian Bruhin
857533aca7 conftypes: Expand user in Directory 2014-08-05 18:47:42 +02:00
Florian Bruhin
3b93f6121b Add more unittypes tests. 2014-08-05 18:02:52 +02:00
Florian Bruhin
a6375a8065 conftypes: handle None for RegexList. 2014-08-05 18:02:31 +02:00
Florian Bruhin
11f1c8f369 Don't default all directories to DownloadPath if empty 2014-08-05 18:02:12 +02:00
Florian Bruhin
f397b6301b Accept prompt_accept in KeyMode.yesno 2014-08-05 17:08:40 +02:00
Florian Bruhin
8d07ec2235 test_conftypes: Add (broken) Font tests. 2014-08-05 17:08:16 +02:00
Florian Bruhin
0e645d9361 usertypes: Move QSS_FONT_REGEX to class. 2014-08-05 17:05:13 +02:00
Florian Bruhin
ec1b31a61c test_conftypes: Add more tests. 2014-08-05 15:01:29 +02:00
Florian Bruhin
1c24faeb92 conftypes: Treat rgb(...) etc. as valid for QssColor 2014-08-05 15:00:48 +02:00
Florian Bruhin
a287c8ac68 conftypes: if -> elif 2014-08-05 15:00:24 +02:00
Florian Bruhin
963fb40961 conftypes: Various bugfixes/cleanups/tests. 2014-08-05 14:16:15 +02:00
Florian Bruhin
7c54c20808 conftypes: Fix is_none in all types 2014-08-05 13:49:03 +02:00
Florian Bruhin
a117cf0405 test_conftypes: Add more tests. 2014-08-05 13:06:03 +02:00
Florian Bruhin
4dd4b465e2 conftypes: Fix minint/maxint validation in PercList. 2014-08-05 13:05:36 +02:00
Florian Bruhin
8402aa051a conftypes: Use slicing instead of rstrip.
"100%%".rstrip('%') would give use "100" instead of "100%" which is not what we
want.
2014-08-05 13:04:34 +02:00
Florian Bruhin
f414a0bf4b conftypes: More max >= min checkes. 2014-08-05 12:46:29 +02:00
Florian Bruhin
4ee722d8b1 conftypes: Fix none_ok for many types. 2014-08-05 12:45:53 +02:00
Florian Bruhin
66af4e8c0a conftypes: Fix String length check. 2014-08-05 12:44:37 +02:00
Florian Bruhin
8fdeab32c5 Add first tests for conftypes. 2014-08-05 07:27:29 +02:00
Florian Bruhin
98cc10b9c2 Check if maxlen/minlen make sense in conf.usertypes.String. 2014-08-05 07:26:48 +02:00
Florian Bruhin
036178147b Draw tabbar background correctly again. 2014-08-04 19:30:09 +02:00
Florian Bruhin
95df8a045c Don't use stylesheets anymore for QTabWidget.
When using stylesheets there, all children (i.e. the QWebView) use
QStyleSheetStyle as well, which means the bug at [1] will annoy us.

We had to write our own font parsing as we can't use stylesheets, but at least
the bug is gone...

https://bugreports.qt-project.org/browse/QTBUG-40263
2014-08-04 17:00:01 +02:00
Florian Bruhin
ee1b136807 Clean up pylint/noqa comments. 2014-08-04 03:47:09 +02:00
Florian Bruhin
3dc7a1b735 Lock mode while prompting. 2014-08-04 03:14:14 +02:00
Florian Bruhin
90f1d5851c Fix lint. 2014-08-03 00:58:59 +02:00
Florian Bruhin
acfc95e19d Simplify :hint by adding a 'fill' target. 2014-08-03 00:56:42 +02:00
Florian Bruhin
40aa387fb2 Whitespace fixes 2014-08-03 00:40:28 +02:00
Florian Bruhin
b68f22541c Merge tab-focus-last into tab-focus. 2014-08-03 00:39:39 +02:00
Florian Bruhin
d302886b87 Fix too long lines. 2014-08-03 00:36:35 +02:00
Florian Bruhin
9e73cba333 Improve command documentation. 2014-08-03 00:33:39 +02:00
Florian Bruhin
6c4b21117c Fix typo 2014-08-02 23:58:52 +02:00
Florian Bruhin
3467dd77ac Document the :hint command. 2014-08-02 23:46:27 +02:00
Florian Bruhin
355acfccd2 Remove editable hinting.
The code for it was removed some time ago, and fixing it would mean some
unneeded code duplication. Let's remove it and see if anyone complains.
2014-08-02 23:45:39 +02:00
Florian Bruhin
aa8d66f092 Improve settings value documentation. 2014-08-02 22:54:15 +02:00
Florian Bruhin
f8c995d58d Support multiline setting descriptions. 2014-08-02 22:53:57 +02:00
Florian Bruhin
e5c86a5337 Remove window-open-behaviour setting. 2014-08-02 21:30:20 +02:00
Florian Bruhin
de2f267607 Fix restarting/exceptions with URLs with spaces. 2014-08-02 19:49:15 +02:00
Florian Bruhin
b707987be0 Better logging on exit. 2014-08-02 19:40:24 +02:00
Florian Bruhin
3307c5f518 Shut down correctly while being asked a question. 2014-08-02 19:38:02 +02:00
Florian Bruhin
9a6bff315b Revert "widgets.statusbar.prompter: Use None for self.question instead of _busy."
This reverts commit 5d5f3c7f87.
2014-08-02 18:19:33 +02:00
Florian Bruhin
5d5f3c7f87 widgets.statusbar.prompter: Use None for self.question instead of _busy. 2014-08-02 17:58:33 +02:00
Florian Bruhin
ee1bdacf25 Show errors during prompt/command mode. 2014-08-02 17:45:51 +02:00
Florian Bruhin
2f4cd56033 bar: Make prompt color more important than insert color. 2014-08-02 17:05:28 +02:00
Florian Bruhin
1a449ef7de Log changing of statusbar color attributes. 2014-08-02 17:05:11 +02:00
Florian Bruhin
2b123bdeb9 Make it clearer we schedule an insertmode check if hittest is null. 2014-08-02 16:55:11 +02:00
Florian Bruhin
c1d9f70fd6 Make js alert/confirm messages a bit more clear. 2014-08-02 16:16:13 +02:00
Florian Bruhin
7d9bd17aff Fix error message when executing command in wrong mode. 2014-08-02 16:15:59 +02:00
Florian Bruhin
157975b0d4 widgets.webview: Add a cur_url property so the initial URL is available immediately. 2014-08-02 02:35:38 +02:00
Florian Bruhin
f6b26f0d56 Improve interrupt docs 2014-08-02 01:53:27 +02:00
Florian Bruhin
b0cfb281f4 shutdown correctly before mainwindow exists. 2014-08-02 01:12:05 +02:00
Florian Bruhin
2dfc599e3c Interrupt more forcefully with 3 times Ctrl+C. 2014-08-02 00:57:32 +02:00
Florian Bruhin
cdde060135 Call shutdown via a singleShot QTimer. 2014-08-02 00:53:30 +02:00
Florian Bruhin
df0558fb47 Add a --nowindow argument. 2014-08-02 00:47:04 +02:00
Florian Bruhin
3b16207bfc Delete network requests during shutdown. 2014-08-02 00:41:59 +02:00
Florian Bruhin
2691e6bb6b Remove unneeded colorama.init().
We don't want colorama to replace stdout/stderr, so we shouldn't call .init()
at all.
2014-08-01 23:47:44 +02:00
Florian Bruhin
9dd688095c Move late shutdown logging out of QApplication. 2014-08-01 23:45:12 +02:00
Florian Bruhin
246cff63ed Use singleShot timer to call QApplication.exit. 2014-08-01 23:26:33 +02:00
Florian Bruhin
f19a1db120 Clean up tab shutdown. 2014-08-01 23:23:31 +02:00
Florian Bruhin
6015bed786 widgets.tabbedbrowser: Fix closing tab with mouse. 2014-08-01 14:27:57 +02:00
Florian Bruhin
b6cd0dd600 Use sys.__stderr__ for faulthandler. 2014-08-01 00:55:18 +02:00
Florian Bruhin
ad1ba4c1f7 Remove eventfilter on shutdown 2014-07-31 23:09:59 +02:00
Florian Bruhin
9ccce461c9 Stop tab loading before removing. 2014-07-31 23:05:29 +02:00
Florian Bruhin
c04ad1de45 utils.debug.trace_lines: Improve output 2014-07-31 23:03:49 +02:00
Florian Bruhin
b56df7c955 utils.debug.trace_lines: Stop tracing if sys is None 2014-07-31 22:53:57 +02:00
Florian Bruhin
c27f8b69d6 Trace lines on shutdown with --debug. 2014-07-31 21:21:07 +02:00
Florian Bruhin
70d8163353 Write to stderr in utils.debug.trace_lines. 2014-07-31 21:20:51 +02:00
Florian Bruhin
8fedf1a9be Adjust shebangs to call python3 2014-07-31 21:14:05 +02:00
Florian Bruhin
c39bce79f6 Disable javascript/plugins when shutting down tab. 2014-07-31 20:45:18 +02:00
Florian Bruhin
682a395936 Shut down tabs while quitting 2014-07-31 20:40:21 +02:00
Florian Bruhin
55755262e1 Remove tab widgets properly when a tab is closed.
We forgot to do that which means we had a memory leak, and sound of tabs
continued to play when a tab was closed.
2014-07-31 19:34:30 +02:00
Florian Bruhin
d65fbb0b8c Fix mixed tabs/spaces. 2014-07-31 19:32:00 +02:00
Florian Bruhin
cda0f561aa Move removing of a tab out of close_tab. 2014-07-31 19:31:24 +02:00
Florian Bruhin
2358ed7d4c Remove 'Good bye' log 2014-07-31 01:07:43 +02:00
Florian Bruhin
371c40f815 Explicitely setPage to None in WebView's __del__. 2014-07-31 00:51:11 +02:00
Florian Bruhin
d47f13e69b Explicitely set qApp before/after calling exec_(). 2014-07-31 00:48:32 +02:00
Florian Bruhin
6859ca9301 Fix lint 2014-07-30 18:56:01 +02:00
Florian Bruhin
ed4e3e2a75 Remove redundant .replace() in utils.misc.key_to_string. 2014-07-30 18:55:34 +02:00
Florian Bruhin
ffe2c7f91d Use a string mapping for utils.misc.key_to_string. 2014-07-30 18:55:08 +02:00
Florian Bruhin
377706ec54 Handle not found crashlog gracefully 2014-07-30 18:45:56 +02:00
Florian Bruhin
d178c89a0e Compact logged stylesheets 2014-07-30 18:27:18 +02:00
Florian Bruhin
36c4e8940e Remove print we accidentally added. 2014-07-30 18:22:13 +02:00
Florian Bruhin
77ca7db46a Handle early shutdown better 2014-07-30 18:21:40 +02:00
Florian Bruhin
8c78806e1c Shutdown correctly if config is not initialized yet 2014-07-30 18:13:36 +02:00
Florian Bruhin
276315483d Add some more logging to shutdown. 2014-07-30 18:11:35 +02:00
Florian Bruhin
19d0f832ad Handle SIGTERM/SIGINT gracefully. 2014-07-30 18:11:22 +02:00
Florian Bruhin
17220d8ef5 Fix signal imports 2014-07-30 17:50:12 +02:00
Florian Bruhin
11ea911940 Clean up after removing shutdown code 2014-07-30 17:12:20 +02:00
Florian Bruhin
db51a51e5a Add utilcmds and :later command. 2014-07-30 17:05:52 +02:00
Florian Bruhin
70faceea67 Check for overflows in custom Timer 2014-07-30 17:05:29 +02:00
Florian Bruhin
cb8af1de31 Merge branch 'shutdown'
Conflicts:
	qutebrowser/widgets/webview.py
2014-07-30 16:39:01 +02:00
Florian Bruhin
b574fcfe19 Print '<Default configuration>' in crash report if it's unchanged 2014-07-29 22:51:32 +02:00
Florian Bruhin
0091b4729a Make tabbedbrowser.now_focused private 2014-07-29 22:44:14 +02:00
Florian Bruhin
cf8a8ad3b4 Fix crash when closing tab then doing tab-focus-last. 2014-07-29 22:42:59 +02:00
Florian Bruhin
8ce779261f Parse Content-Disposition headers more relaxed.
Before, we got an unhandled ValueError if there were multiple spaces in a
filename.

Instead of ignoring such a header altogether, we now add relaxed=True which
still tries to get the filename in this situation (and with a semicolon at the
line end).

Because the parser is also more relaxed in that second case, we mark a test as
expected failure.
2014-07-29 22:36:00 +02:00
Florian Bruhin
e1f9403876 Clean up hint command. 2014-07-29 02:24:04 +02:00
Florian Bruhin
425a7fd7c4 Simplify userscript running. 2014-07-29 02:05:15 +02:00
Florian Bruhin
b83dd59469 Add userscript/spawn targets to hints. 2014-07-29 01:45:42 +02:00
Florian Bruhin
016e8f3c8d Don't explicitely fill commandline 2014-07-29 01:04:17 +02:00
Florian Bruhin
265019650b Use enum for completions 2014-07-29 00:37:32 +02:00
Florian Bruhin
54246bacbe Add some type checking for enums 2014-07-29 00:23:20 +02:00
Florian Bruhin
7c8f9bec0f Use enum for keyboard modes. 2014-07-29 00:19:35 +02:00
Florian Bruhin
860ef75abc Fix lint 2014-07-28 21:09:49 +02:00
Florian Bruhin
8d80ce2628 Switch to python 3.4 enums.
Our home-brewn enum wasn't really liked by pylint (many no-member errors), so
instead of adding some workaround, we just use the python 3.4 enum instead.

This however also means we need to depend on Python 3.4 and not 3.3. Maybe we
should use enum34 on Python < 3.3.
2014-07-28 20:41:42 +02:00
Florian Bruhin
54c7f29f04 Remove weird condition when cmd text ends with ' '.
For some reason we checked nargs if split is False. This caused the completion
to not get hidden with ":spawn ". Since this condition makes no sense (and
probably was converted wrong in be467d5e) we remove it here.
2014-07-28 02:27:12 +02:00
Florian Bruhin
d60ff5ed27 Add a set-cmd-text command. 2014-07-28 02:16:37 +02:00
Florian Bruhin
76ff8aa30a Add missing imports from current_url move. 2014-07-28 02:16:22 +02:00
Florian Bruhin
e0bd89b762 Add an {url} variable for commands.
Note this also means we don't support :spawn running in a shell anymore, as
{url} is evaluated earlier. However this should be fine, as there's no really
important use case for that anyways, and shell escaping on Windows is rather
unmaintainable.
2014-07-28 01:40:36 +02:00
Florian Bruhin
c2a7a67f30 Add some more init checks and use Tk for errors 2014-07-27 22:57:50 +02:00
Florian Bruhin
f86458a3b9 Remove shutdown code 2014-07-27 20:56:42 +02:00
Florian Bruhin
056e1bea76 Fix settabtext fuckup 2014-07-25 13:47:48 +02:00
Florian Bruhin
71a27d42d8 Don't escape & in tab titles anymore.
Now that we do the rendering ourselves, & doesn't have any special meaning
anymore, so we don't have to escape it (as &&) anymore.
2014-07-24 22:50:22 +02:00
Florian Bruhin
d4c3a65fe3 Start with manpage generation 2014-07-18 07:48:33 +02:00
Florian Bruhin
8f19da7e54 Fix lint 2014-07-17 21:35:27 +02:00
Florian Bruhin
abf5fbc063 Clean up config color handling 2014-07-17 16:06:14 +02:00
Florian Bruhin
34d1449cd2 Make it easier to disable tab indicator 2014-07-17 14:50:16 +02:00
Florian Bruhin
f7304298ab Separate docstrings into command/documentation parts. 2014-07-16 20:09:41 +02:00
Florian Bruhin
1d0fa621b6 Formatting fixes 2014-07-16 18:05:17 +02:00
Florian Bruhin
a687388819 Change config descriptions to be asciidoc 2014-07-16 18:05:17 +02:00
Florian Bruhin
86b7ea4dfc Merge branch 'tabbar' 2014-07-16 17:57:15 +02:00
Florian Bruhin
dd2027bb53 Focus webview when tabs change 2014-07-16 16:34:58 +02:00
Florian Bruhin
e3d9c252ab Remove unneeded updateGeometry 2014-07-16 14:45:02 +02:00
Florian Bruhin
3b2acf32b5 Remove logging on resize 2014-07-16 14:17:10 +02:00
Florian Bruhin
5e06d420f9 Fix disconnecting tab signals 2014-07-16 14:11:28 +02:00
Florian Bruhin
1a1473a18e Handle dirty tabbar layout correctly 2014-07-16 14:10:46 +02:00
Florian Bruhin
52c52e0675 Add a tab progress indicator 2014-07-16 13:51:16 +02:00
Florian Bruhin
bcbdf9090f Make tab close mouse button configurable 2014-07-16 13:04:08 +02:00
Florian Bruhin
2d3575f6d1 Remove tab close buttons 2014-07-16 13:04:08 +02:00
Florian Bruhin
6289ef7981 Adjust vertical tabbar width 2014-07-16 13:04:08 +02:00
Florian Bruhin
7bcd8192a7 Add FIXME 2014-07-16 13:04:08 +02:00
Florian Bruhin
854d6dffcc Various tab rendering fixes. 2014-07-16 13:04:08 +02:00
Florian Bruhin
81f3abd402 Remove unneeded tabInserted. 2014-07-16 13:04:08 +02:00
Florian Bruhin
81ff622291 Improve highlight_color tests. 2014-07-16 13:04:08 +02:00
Florian Bruhin
93f2e4b24d Cleanup. 2014-07-16 13:04:08 +02:00
Florian Bruhin
7c8471e64c Nicer drawing of close cross. 2014-07-16 13:04:08 +02:00
Florian Bruhin
b47d53953b Add a highlight_color util function. 2014-07-16 13:04:08 +02:00
Florian Bruhin
20e8c464e6 Check for QtValueErrors in interpolate_color tests. 2014-07-16 13:04:08 +02:00
Florian Bruhin
ca74fa28ac Use a nicer Color() class for tests. 2014-07-16 13:04:08 +02:00
Florian Bruhin
b042b5cbc4 Try drawing our own tab button 2014-07-16 13:04:08 +02:00
Florian Bruhin
9a430b22a3 Calculate close button position correctly 2014-07-16 13:04:08 +02:00
Florian Bruhin
367ecb0e44 Override subElementRect properly. 2014-07-16 13:04:08 +02:00
Florian Bruhin
cd19697a77 Construct a copy of text_rect in tab_layout. 2014-07-16 13:04:08 +02:00
Florian Bruhin
7ad0dc6416 Remove magic constant. 2014-07-16 13:04:08 +02:00
Florian Bruhin
27d3c8d20f Rename option to opt. 2014-07-16 13:04:08 +02:00
Florian Bruhin
1d31f1eb48 Don't pass useless widget to tab_layout. 2014-07-16 13:04:07 +02:00
Florian Bruhin
465ff7406c Use self instead of super() 2014-07-16 13:04:07 +02:00
Florian Bruhin
1f9597153e Cleanup 2014-07-16 13:04:07 +02:00
Florian Bruhin
87e80451c7 Remove wrong validity check 2014-07-16 13:04:07 +02:00
Florian Bruhin
e608ccbe36 Draw tabbar ourselves #2 2014-07-16 13:04:07 +02:00
Florian Bruhin
92d28a66d5 Paint odd/even tabs in different colors 2014-07-16 13:04:07 +02:00
Florian Bruhin
256d7e90b9 Apply tabbar style to bar only 2014-07-16 13:04:07 +02:00
Florian Bruhin
c3428db029 Use self._style for overridden drawItemText 2014-07-16 13:04:07 +02:00
Florian Bruhin
9b21f37659 Try changing tabbar color 2014-07-16 13:04:07 +02:00
Florian Bruhin
b4aba0d0ee Don't display tab separator if unneeded 2014-07-16 13:04:07 +02:00
Florian Bruhin
ef237bc081 Remove obsolete tabbar options 2014-07-16 13:03:46 +02:00
Florian Bruhin
90adc100a2 Move style to widgets.tabwidget 2014-07-16 13:03:46 +02:00