Commit Graph

1115 Commits

Author SHA1 Message Date
Florian Bruhin
dfd3b3d9c4 Store window registries in objreg. 2014-10-05 22:17:29 +02:00
Florian Bruhin
b6393a1841 Get rid of meta registry 2014-10-05 21:50:14 +02:00
Florian Bruhin
4dcaa1fdec Be more forgiving when validating URLs. Fixes #141. 2014-10-03 16:58:30 +02:00
Florian Bruhin
a8304d03ea Clean up get_standard_dir 2014-10-02 22:24:08 +02:00
Florian Bruhin
e74fa71a0a Seprate data/config dirs on Windows.
See #21.
2014-10-02 22:12:45 +02:00
Florian Bruhin
3a66937205 Clean up argument handling in get_standard_dir 2014-10-02 22:12:24 +02:00
Florian Bruhin
b20536d472 Move handling of --confdir into get_standard_dir 2014-10-02 21:54:42 +02:00
Florian Bruhin
d674b90240 Clean up FIXMEs and add github URLs 2014-10-01 22:23:27 +02:00
Florian Bruhin
6aeecb3803 Fix lints/bugs 2014-09-29 20:36:53 +02:00
Florian Bruhin
42a1d7028d Move :later back from commands to utilcmds. 2014-09-29 19:56:25 +02:00
Florian Bruhin
e6fe358d73 Clean up correctly when a window is closed. 2014-09-29 10:43:06 +02:00
Florian Bruhin
26604a683b Fix lint 2014-09-29 07:47:32 +02:00
Florian Bruhin
75ba75a0d7 Check arguments against None in objreg. 2014-09-29 07:17:11 +02:00
Florian Bruhin
9533312e0d Fix event filter when a non-Mainwindow dialog has an event. 2014-09-28 22:53:24 +02:00
Florian Bruhin
dc7b32e460 Fix lint 2014-09-28 22:23:37 +02:00
Florian Bruhin
fb6cb62f93 First attempt at multi-window support. 2014-09-28 22:13:14 +02:00
Florian Bruhin
64a119afb2 Don't use signals for on_config_changed. 2014-09-28 11:27:52 +02:00
Florian Bruhin
65d1d21d2e Always use a list for namedtuple. 2014-09-28 00:43:08 +02:00
Florian Bruhin
0fadf6b091 Use a list as items-argument for usertypes.enum 2014-09-28 00:42:53 +02:00
Florian Bruhin
c9d5928dce Fix lint 2014-09-27 23:21:13 +02:00
Florian Bruhin
4410536f69 Refactor :undo and save/restore history. 2014-09-27 22:56:50 +02:00
Florian Bruhin
4e42ff1304 Move tab_id_gen and add tab_id to webview repr. 2014-09-26 16:44:41 +02:00
Florian Bruhin
36fd2e5c7f Improve __repr__ methods. 2014-09-26 15:48:24 +02:00
Florian Bruhin
1960cfe114 Really fix keyevent_to_string. 2014-09-26 07:31:59 +02:00
Florian Bruhin
99da7b697b Fix lint on OS X 2014-09-26 07:12:08 +02:00
Florian Bruhin
cdb33a04cc Fix Ctrl-key on OS X 2014-09-25 22:46:25 +02:00
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
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
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
c77057e88e Add a scope parameter to objreg functions. 2014-09-25 00:30:52 +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
62e55499eb Privatize all attributes which aren't needed from the outside. 2014-09-24 22:25:11 +02:00
Florian Bruhin
6a5c9ba138 Use object registry for CompletionView. 2014-09-24 22:25:10 +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
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
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
fe5d9939b9 Move debug console from app to utilcmd 2014-09-23 22:31:26 +02:00
Florian Bruhin
953e50721c Use object registry for config. 2014-09-23 22:28:28 +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
10eb849ae7 Fix lint 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
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
981604fc8b Add initial object registry. 2014-09-23 19:51:52 +02:00
Florian Bruhin
f4876c7f4f Split docutils from utils 2014-09-23 04:22:51 +02:00
Florian Bruhin
bc01f3a780 Fix spelling of temporarily 2014-09-22 20:44:07 +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
def417b8a5 Check if docs are up to date if running from git repo. 2014-09-21 22:15:56 +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
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
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
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
d1ddc8c6cb Fix lint 2014-09-15 22:01:13 +02:00
Florian Bruhin
14cc77ff42 Add pygments as dependency. 2014-09-15 17:59:33 +02:00
Florian Bruhin
1fd8fb57a6 Use *args for commands where possible. 2014-09-14 23:10:51 +02:00
Florian Bruhin
fea3524443 Remove 'or None' in docs. 2014-09-13 00:37:07 +02:00
Florian Bruhin
80ef0782d5 Improve some docstrings. 2014-09-13 00:22:27 +02:00
Florian Bruhin
1220f0c5fd Move webelem from utils to browser. 2014-09-08 10:30:05 +02:00
Florian Bruhin
25da8dd169 webelem: Fix debug output 2014-09-08 10:19:52 +02:00
Florian Bruhin
5e6150e665 Add a :help command. 2014-09-08 07:36:18 +02:00
Florian Bruhin
05f3809d01 Fix lint 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
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
5ba3440369 Add details to colorama workaround. 2014-09-03 22:20:17 +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
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
4caec2becb Document and mark workarounds. 2014-09-02 20:44:58 +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
71a2ade637 Fix URL detection corner cases. 2014-09-02 06:53:52 +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
1dce50309b First steps at using jinja2 for qute:log. 2014-08-29 06:59:44 +02:00
Florian Bruhin
c9ea83ca7b Fix lint 2014-08-29 06:14:52 +02:00
Florian Bruhin
a6ae129595 Use jinja for error page. 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
cb2dd62dc5 Fix lint 2014-08-27 22:23:37 +02:00
Florian Bruhin
68ef9b97a3 Add an LRU cache to the config. 2014-08-27 20:16:04 +02:00
Florian Bruhin
ce4a5affa4 Rename commands.utils to commands.cmdutils. 2014-08-26 20:48:39 +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
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
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
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
2e760a92cf debug-console: Handle I/O and exceptions. 2014-08-13 06:09:18 +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
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
91a701552d utils.http: Fix joining. 2014-08-12 09:03:59 +02:00
Florian Bruhin
be811e5c62 utils.http: Add some Content-Type stuff 2014-08-12 07:30:53 +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
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
2546c871c8 utils.debug: Improve qenum_key. 2014-08-07 07:35:05 +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
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
d7f9ccf7e5 log: Fix lepl filter with debug logging. 2014-08-05 22:31:30 +02:00
Florian Bruhin
ee1b136807 Clean up pylint/noqa comments. 2014-08-04 03:47:09 +02:00
Florian Bruhin
9e73cba333 Improve command documentation. 2014-08-03 00:33:39 +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
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
b6cd0dd600 Use sys.__stderr__ for faulthandler. 2014-08-01 00:55:18 +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
70d8163353 Write to stderr in utils.debug.trace_lines. 2014-07-31 21:20:51 +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
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
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
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
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
f7304298ab Separate docstrings into command/documentation parts. 2014-07-16 20:09:41 +02:00
Florian Bruhin
2d3575f6d1 Remove tab close buttons 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
90adc100a2 Move style to widgets.tabwidget 2014-07-16 13:03:46 +02:00
Florian Bruhin
4acf046ed2 Force tab text to be left-aligned 2014-07-16 13:03:46 +02:00
Florian Bruhin
e250d42f0b Better debugging for editing 2014-07-16 09:28:28 +02:00
Florian Bruhin
1f3b39eb75 Get rid of prevnext_rel selector group 2014-07-16 09:17:59 +02:00
Florian Bruhin
be460afc1c Make debug text more compact 2014-07-16 09:15:52 +02:00
Florian Bruhin
958b114d29 Add stricter focus checking for editor 2014-07-16 08:46:52 +02:00
Florian Bruhin
fdc51cb628 Cleanup 2014-07-16 08:40:40 +02:00
Florian Bruhin
810e507da9 Add a focus_elem function to utils.webelem. 2014-07-16 07:55:30 +02:00
Florian Bruhin
bbd9d24334 Handle elements with contenteditable correctly for editor 2014-07-16 07:42:02 +02:00
Florian Bruhin
92e67b8018 Improve editable field selection.
Now it also gets the gmail compose window, but we can't actually edit its
value... It works in dwb though!
2014-07-16 07:15:31 +02:00
Florian Bruhin
d5c8e73b14 Use same focus code for insertmode/editor 2014-07-16 06:58:01 +02:00
Florian Bruhin
72b854049b Improvments for hints/page-prev/page-next 2014-07-09 21:14:15 +02:00
Florian Bruhin
f173583605 Documentation update for Qt 5.3.1 2014-07-04 14:37:31 +02:00
Florian Bruhin
734ee74e8a Use OrderedDict for modmask2str 2014-07-04 07:33:58 +02:00
Florian Bruhin
261bb85791 Handle escape key correctly 2014-07-03 07:52:58 +02:00
Florian Bruhin
ea84ce7acf Force keybindings to lower case 2014-07-03 07:46:14 +02:00
Florian Bruhin
9b24ca39ea Move normalize_keystr to utils.misc 2014-07-03 07:34:09 +02:00
Florian Bruhin
1816e8419e Handle some special corner-case keys correctly 2014-07-03 07:14:30 +02:00
Florian Bruhin
03e83ff8e1 Move key to string converting to utils.misc 2014-07-03 06:51:24 +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
400f619903 Handle user variables in path correctly 2014-06-28 01:15:31 +02:00
Florian Bruhin
c6ad5622b4 Clean up earlyinit 2014-06-27 12:25:27 +02:00
Florian Bruhin
b79cdbc416 Clean up Question objects correctly 2014-06-27 07:56:16 +02:00
Florian Bruhin
46d621629f Fix download/question crashes 2014-06-26 13:36:00 +02:00
Florian Bruhin
92ff957543 Clean up message API 2014-06-26 07:58:00 +02:00
Florian Bruhin
09641d96f3 Fix HTML log output 2014-06-25 21:11:03 +02:00
Florian Bruhin
fcc0d8e911 Better workaround for hang-with-warnings bug 2014-06-25 20:18:00 +02:00
Florian Bruhin
9238135867 Fix crashes after completion refactoring 2014-06-25 16:48:28 +02:00
Florian Bruhin
b72306ffe6 Reduce logging for completions 2014-06-25 15:52:40 +02:00
Florian Bruhin
46a3e2af92 Queue messages to the end of the eventloop.
When not doing this, error messages sent before the signals get connected (i.e.
during init) get lost.
2014-06-25 11:02:34 +02:00
Florian Bruhin
c8cc92e8c2 Add basic HTML log 2014-06-25 10:00:27 +02:00
Florian Bruhin
f849710df4 Strip URL for URL recognition 2014-06-24 08:40:53 +02:00
Florian Bruhin
af14e8bf94 Keep GPL closer to the original 2014-06-24 07:58:48 +02:00
Florian Bruhin
a114b46b81 Get colorama version correctly 2014-06-24 07:56:17 +02:00
Florian Bruhin
be75f45312 Add info if executable is frozen to version output 2014-06-24 07:46:01 +02:00
Florian Bruhin
4b95f369a4 Get rid of ipdb/IPython.
This caused more problems than it's worth really, and it does some black magic
I'm not comfortable with.
2014-06-24 07:42:49 +02:00
Florian Bruhin
ba9b846a20 Lower-case HTML attributes. 2014-06-23 20:32:40 +02:00
Florian Bruhin
9afab112aa Move select tag to non-configurable is_editable types. 2014-06-23 20:32:07 +02:00
Florian Bruhin
b6ddda8f17 Show git timestamp in version 2014-06-23 16:19:43 +02:00
Florian Bruhin
e5e49ed858 Split _is_object_editable from is_editable. 2014-06-23 14:48:18 +02:00
Florian Bruhin
c71e9e4c83 Add missing config import. 2014-06-23 14:48:07 +02:00
Florian Bruhin
cf17af147e Fix and clean up insertmode checks 2014-06-23 14:26:34 +02:00
Florian Bruhin
e4b10af41a Move filename checking to utils.misc 2014-06-23 12:15:10 +02:00
Florian Bruhin
8a8ca0c34f Split utils.misc into utils.{qt,misc} 2014-06-23 07:45:04 +02:00
Florian Bruhin
5996651a2f Merge utils.signals into utils.debug 2014-06-23 07:11:15 +02:00
Florian Bruhin
6aff5fd374 Document js/qt loggers 2014-06-23 07:00:21 +02:00
Florian Bruhin
bf9e829d4d Don't use .warn on loggers, use .warning instead. 2014-06-22 23:30:44 +02:00
Florian Bruhin
a64775a0f9 Improve logging messages 2014-06-21 22:40:31 +02:00
Florian Bruhin
7a6e2b3242 Ensure validity of Qt objects 2014-06-21 17:02:30 +02:00
Florian Bruhin
0dc2ecef46 Check QUrl objects for validity 2014-06-20 23:57:52 +02:00
Florian Bruhin
113221c731 Log some exceptions 2014-06-20 23:26:19 +02:00
Florian Bruhin
9a33efdb3f Fix is_special_url (use QUrl). 2014-06-20 20:27:24 +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
4909f3f0fe Add LeplFilter to RAM, not twice to console.
Fixes exception when sys.stderr is None.
2014-06-20 08:50:37 +02:00
Florian Bruhin
5f86357ae8 Fix rfc6266 check 2014-06-20 06:45:52 +02:00
Florian Bruhin
6ce5afccbe Use rfc6266 to handle Content-Disposition in downloads 2014-06-19 21:06:19 +02:00
Florian Bruhin
52d1645479 Revert "Clean up styles"
This reverts commit f821d9e211.

This causes all methods to be applied from QCommonStyle, thus resulting in
right-click menus being blank...
2014-06-19 21:05:41 +02:00
Florian Bruhin
9c26eba761 Catch weird TypeError when aborting question 2014-06-19 17:56:41 +02:00
Florian Bruhin
f821d9e211 Clean up styles 2014-06-19 15:43:34 +02:00
Florian Bruhin
3435aef78c Add commandline argument for debug log buffer size 2014-06-19 12:11:46 +02:00
Florian Bruhin
1ed70bfef7 Fix utils.log so it works with sys.stderr == None 2014-06-19 10:19:00 +02:00
Florian Bruhin
d65587128f Add vim modelines to all files. 2014-06-19 09:04:37 +02:00
Florian Bruhin
6e59b0ab3a Parse Content-Disposition header properly 2014-06-18 22:52:49 +02:00
Florian Bruhin
36d31efe13 Fix lint 2014-06-17 23:16:06 +02:00
Florian Bruhin
2b5a1cc322 Add wiget/object list to crash dialog 2014-06-17 23:04:58 +02:00
Florian Bruhin
e6866f7d85 Don't go to insert mode on disabled/readonly fields 2014-06-17 15:32:18 +02:00
Florian Bruhin
8971d2ac18 Don't rename set_trace 2014-06-17 15:28:06 +02:00
Florian Bruhin
2388874e82 Delete question if download as cancelled 2014-06-17 11:26:45 +02:00
Florian Bruhin
61e8940ccb Clean up debug methods 2014-06-17 11:12:55 +02:00
Florian Bruhin
1fef2d02b9 Add an :all-objects command and __repr__s 2014-06-17 11:03:42 +02:00
Florian Bruhin
af9e4ae072 Fix parent/child relationships 2014-06-17 07:17:21 +02:00
Florian Bruhin
6554b995d1 Fix comment 2014-06-16 13:54:47 +02:00
Florian Bruhin
7325cefdae Fix lint 2014-06-16 12:11:10 +02:00
Florian Bruhin
b33ff5df1b Depend on Qt 5.2 or newer 2014-06-16 11:26:09 +02:00
Florian Bruhin
3090a6330d Clean up Python 3.2 compatibility cruft. 2014-06-16 11:20:43 +02:00
Florian Bruhin
011bc75a79 Make sure pkg_resources is available. 2014-06-16 11:20:26 +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
d76226626f Add debug argument for commands 2014-06-16 09:44:11 +02:00
Florian Bruhin
2b9f337758 Fix lint 2014-06-15 11:36:28 +02:00
Florian Bruhin
b905b44b07 Add a qenum_key debug method 2014-06-15 11:21:39 +02:00
Florian Bruhin
d3476662b9 Fix argument to message answered signal 2014-06-14 23:44:37 +02:00
Florian Bruhin
392784213b Use EventLoop which raises an Exception on double exec_() 2014-06-14 21:00:08 +02:00
Florian Bruhin
6d4f961a50 Merge branch 'downloads'
Conflicts:
	BUGS
2014-06-13 23:11:44 +02:00
Florian Bruhin
fce591839b Abort filename prompt when download is cancelled. 2014-06-13 18:19:18 +02:00
Florian Bruhin
7b1e502dbf Actually make message.question async. 2014-06-13 18:16:47 +02:00
Florian Bruhin
5a2e6ba99a Add answer as argument to question's answered signal. 2014-06-13 18:16:24 +02:00
Florian Bruhin
9b7ff910c3 Log stylesheets 2014-06-13 07:38:10 +02:00
Florian Bruhin
efd83f40ca Print human readable sizes in downloads 2014-06-13 07:13:47 +02:00
Florian Bruhin
8c673ee66c Add basic download info to view 2014-06-12 23:29:34 +02:00
Florian Bruhin
2ffc9bb00a Add colors to DownloadView 2014-06-12 21:43:30 +02:00
Florian Bruhin
c91dced99f Make it possible to cancel a message.question 2014-06-12 17:49:36 +02:00
Florian Bruhin
c13ac6d5b0 Fix get_qt_args with non-Qt args. 2014-06-12 15:22:16 +02:00
Florian Bruhin
3d6d81e1cb Fix lint 2014-06-12 15:17:27 +02:00
Florian Bruhin
1b8a44ac26 Simplify get_qt_args 2014-06-12 15:13:26 +02:00
Florian Bruhin
583546f067 Print nicer message when Qt xkb plugin is missing 2014-06-10 23:11:17 +02:00
Florian Bruhin
5dcb6c4f38 Improve version output 2014-06-10 22:59:14 +02:00
Florian Bruhin
7dd5b1b94e First debugging implementation of downloads 2014-06-10 22:11:17 +02:00
Florian Bruhin
2bcbfce8f9 Merge branch 'master' of ssh://lupin/qutebrowser 2014-06-10 12:02:17 +02:00
Florian Bruhin
dffec73db7 Fix get_qt_args with arguments with a value 2014-06-10 11:57:33 +02:00
Florian Bruhin
d495ea4644 Move get_qt_args to utils.misc 2014-06-10 11:54:14 +02:00
Florian Bruhin
05b4070df9 Remove unnecessary "= None"s 2014-06-07 18:26:05 +02:00
Florian Bruhin
742bc83ea3 Clean up version info gathering 2014-06-06 18:58:29 +02:00
Florian Bruhin
6780132e4f More version info 2014-06-06 18:11:04 +02:00
Florian Bruhin
2f1cd43f9c Change lists to tuples for immutable values 2014-06-06 17:21:35 +02:00
Florian Bruhin
03d754dd86 Fix logfilter bugs 2014-06-06 16:51:24 +02:00
Florian Bruhin
9c9492a706 logfilter: Only filter debug messages 2014-06-06 15:48:42 +02:00
Florian Bruhin
3ceeccb133 Clean up logging init 2014-06-06 12:29:33 +02:00
Florian Bruhin
e6893af3d4 Support colorama to get colored logs on windows 2014-06-06 12:13:32 +02:00
Florian Bruhin
fd220b1b36 Raise CommandError instead of message.error where possible 2014-06-06 11:55:55 +02:00
Florian Bruhin
742a3c1b5d Merge branch 'master' of ssh://cmpl.cc:2323/qutebrowser 2014-06-05 13:20:41 +02:00
Florian Bruhin
500ad24cc3 Add keybindings for Ctrl-?/H/J/[ for Delete/Backspace/Return/Escape 2014-06-05 13:20:10 +02:00
Florian Bruhin
cd8f9e6232 Fix lint 2014-06-05 00:08:08 +02:00
Florian Bruhin
361dc94a21 More intelligent harfbuzz choosing. Fixes rendering segfaults. 2014-06-05 00:07:32 +02:00
Florian Bruhin
9be3b0499d We can use QtCore in fix_harfbuzz so use logging 2014-06-04 23:55:34 +02:00
Florian Bruhin
b9abb04e4e Check harfbuzz fix is executed before PyQt is imported 2014-06-04 14:29:47 +02:00
Florian Bruhin
cc27d42250 Use argparse for fix_harfbuzz 2014-06-04 14:15:33 +02:00
Florian Bruhin
a196bc5da9 Add arguments to choose harfbuzz engine 2014-06-04 12:13:51 +02:00
Florian Bruhin
af8c68360a Fix lint 2014-06-04 07:16:48 +02:00
Florian Bruhin
9add8b105c Get rid of NoCompletionsError 2014-06-04 07:16:34 +02:00
Florian Bruhin
311b9f2034 Get rid of FakeDict 2014-06-04 07:16:02 +02:00
Florian Bruhin
83d8bc47c0 Make it possible to pass a start= argument to enum() 2014-06-04 07:02:04 +02:00
Florian Bruhin
93c6d8ea2f Add current value to completions for settings 2014-06-04 06:44:07 +02:00
Florian Bruhin
062b7b177b Simplify setting value completion models. 2014-06-04 06:42:57 +02:00
Florian Bruhin
5a6eb2bec3 Improve function match regex 2014-06-03 17:24:12 +02:00
Florian Bruhin
282874cc80 Hide all OpenType warnings. 2014-06-03 17:23:51 +02:00
Florian Bruhin
5e6cddecaf Just change level to DEBUG with suppressed Qt messages 2014-06-03 17:18:20 +02:00
Florian Bruhin
eb426cb870 Suppress OpenType warning message 2014-06-03 17:04:22 +02:00
Florian Bruhin
298e757991 Fix qt warning regex 2014-06-03 17:01:42 +02:00
Florian Bruhin
a4c3ce6bdc Fix lint 2014-06-03 14:34:38 +02:00
Florian Bruhin
813783d976 Get rid of _lastmodel in completer 2014-06-03 13:50:13 +02:00
Florian Bruhin
0f41366269 Fix lint 2014-06-03 13:48:12 +02:00
Florian Bruhin
02e92fd0ed Move set_model logging to completer 2014-06-03 13:42:29 +02:00
Florian Bruhin
968bb3d430 Move selection_changed to Completer 2014-06-03 13:37:11 +02:00
Florian Bruhin
7d440426eb Move on_update_completion 2014-06-03 12:59:50 +02:00
Florian Bruhin
ff06e753df Start moving stuff to Completer 2014-06-03 12:51:23 +02:00
Florian Bruhin
4d0649a825 Let qt function parsing be more forgiving 2014-06-03 06:54:55 +02:00
Florian Bruhin
2286d1d65a Handle Qt warning category in log handler 2014-06-02 23:16:09 +02:00
Florian Bruhin
6fedc53a4d Suppress libpng warning about color profiles 2014-06-02 23:10:21 +02:00
Florian Bruhin
8aff446a30 Refine dead actute meta-warning 2014-06-02 23:07:46 +02:00
Florian Bruhin
b415773cc7 Use custom Qt message handler 2014-06-02 22:43:32 +02:00
Florian Bruhin
c5230dc347 Use logging system for python warnings 2014-06-02 22:19:35 +02:00
Florian Bruhin
0253dd6977 Catch empty standard paths 2014-05-27 16:28:01 +02:00
Florian Bruhin
7fa65a0f1e Add GPL to version output 2014-05-27 15:33:44 +02:00
Florian Bruhin
2fe5ae413b Fix readline rl_kill_line 2014-05-27 14:58:23 +02:00
Florian Bruhin
c65ebc81da editor: force UTF-8 2014-05-27 11:30:39 +02:00
Florian Bruhin
156d63b4b6 Only handle {} as editor arg when alone in argument 2014-05-27 11:16:53 +02:00
Florian Bruhin
06b0761755 Always clean up editor tempfiles, even on exit != 0 2014-05-27 07:43:07 +02:00
Florian Bruhin
4538745ffb Implement QWebPage:javaScript* 2014-05-26 20:04:44 +02:00
Florian Bruhin
d00a946497 Set orgname to make inspector settings persistent 2014-05-26 11:47:02 +02:00
Florian Bruhin
bb9f301410 Use getattr to get numeric logging level.
It turns out it was a bad idea to use logging._nameToLevel since that
doesn't exist in python 3.3.
2014-05-26 09:00:45 +02:00
Florian Bruhin
7c3c572519 Increase RAMHandler capacity to 500 2014-05-25 20:28:24 +02:00
Florian Bruhin
8fb54d4c55 More beautiful logging format 2014-05-25 20:13:58 +02:00
Florian Bruhin
7200bf5690 Whitespace 2014-05-25 20:08:37 +02:00
Florian Bruhin
b37ca744b2 Disable coloring when requested/on Windows/no tty 2014-05-25 20:08:07 +02:00
Florian Bruhin
e89fc3d940 Add colored logging 2014-05-25 20:00:48 +02:00
Florian Bruhin
f87e7b76f4 Log to RAM and display log in crash dialog 2014-05-25 18:46:15 +02:00
Florian Bruhin
353a447dd6 Initialize logging by hand, nicer output 2014-05-23 18:22:22 +02:00
Florian Bruhin
6825c669b5 Add the ability to filter logging messages 2014-05-23 16:57:08 +02:00
Florian Bruhin
1e256699f8 Add topic-specific loggers 2014-05-23 16:11:55 +02:00
Florian Bruhin
0c0cb48471 Fix lint 2014-05-22 15:44:16 +02:00
Florian Bruhin
e7da95a3b1 Add question() and confirm_action() to message.py 2014-05-22 16:44:10 +02:00
Florian Bruhin
9a3554a784 Add answered_(yes|no) signals to Question. 2014-05-22 16:43:38 +02:00
Florian Bruhin
89350cbff4 Emit answered signal from statusbar prompt.
This is so we can leave the mode (and hide the command widget) before
emitting the answered signal (and possibly ask something again).
2014-05-22 16:41:58 +02:00
Florian Bruhin
2bcf46194b Add readline-like shortcuts 2014-05-22 10:49:19 +02:00
Florian Bruhin
ecc838d02c Fix ALL the lint 2014-05-21 17:29:09 +02:00
Florian Bruhin
1f4ca39e53 Fix wrong conditional 2014-05-21 15:50:08 +02:00
Florian Bruhin
2df8500792 Move ExternalEditor to own file 2014-05-21 15:47:21 +02:00
Florian Bruhin
60f25373e3 Merge branch 'editor'
Conflicts:
	qutebrowser/browser/commands.py
	qutebrowser/utils/misc.py
2014-05-21 15:37:18 +02:00
Florian Bruhin
f72a72e98c Add FIXME for runtime location 2014-05-21 12:53:26 +02:00
Florian Bruhin
f43549d452 Clean up prompt code 2014-05-20 11:03:55 +02:00
Florian Bruhin
f0d1d4ed45 Selectively queue messages rather than unqueueing. 2014-05-19 03:40:10 +02:00
Florian Bruhin
844e536fff Command cleanup 2014-05-17 23:22:10 +02:00
Florian Bruhin
d901fe69e6 Rename some commands 2014-05-16 23:01:40 +02:00
Florian Bruhin
19da80e58e Improve logging in signal filter 2014-05-16 21:49:35 +02:00
Florian Bruhin
2c2c79af2e Display some messages immediately 2014-05-16 17:21:43 +02:00
Florian Bruhin
8f58d22ad7 Fix lint 2014-05-16 07:49:04 +02:00
Florian Bruhin
70214bfedf Add elide() 2014-05-16 07:46:56 +02:00
Florian Bruhin
a70aa212e0 Fix lint 2014-05-15 22:02:43 +02:00
Florian Bruhin
d3eaeaac91 First steps at getting rid of signal cache 2014-05-15 17:57:08 +02:00
Florian Bruhin
452e9bfb5e Simplify NeighborList:getitem 2014-05-15 16:38:27 +02:00
Florian Bruhin
326280f910 Fix consistency and spelling in docstrings/comments 2014-05-15 16:27:34 +02:00
Florian Bruhin
8b13658eaf NeighborList: Don't snap in values if they match exactly 2014-05-15 15:38:53 +02:00
Florian Bruhin
659fe5126b Display error dialog when started after segfault 2014-05-15 12:20:03 +02:00
Florian Bruhin
e8a42e6cd3 Remove _signal_needs_caching from SignalCache 2014-05-15 10:49:51 +02:00
Florian Bruhin
765e20f881 Try to preserve git commit id with setup.py/freeze.py 2014-05-15 07:13:49 +02:00
Florian Bruhin
603fbdf239 Range-check all values passed to C code. 2014-05-15 00:02:20 +02:00
Florian Bruhin
a045511962 Use exceptions for command errors 2014-05-14 18:00:40 +02:00
Florian Bruhin
a86a3427fc Fix broken faulthandler condition 2014-05-14 14:38:00 +02:00
Florian Bruhin
0508f509ec Fix lint on Windows 2014-05-14 08:59:24 +02:00
Florian Bruhin
4a2fee8b1c Fix earlyinit to run properly on Windows.
signal.SIGUSR1 is not available on Windows so we import signal and check
dynamically if SIGUSR1 is available instead.
2014-05-14 08:52:40 +02:00
Florian Bruhin
bdd0846397 Move python check to separate file 2014-05-13 19:46:57 +02:00
Florian Bruhin
02e8e2236e Clean up earlyinit 2014-05-13 19:24:43 +02:00
Florian Bruhin
8fddd328f6 Move early init code to own file 2014-05-13 18:01:10 +02:00
Florian Bruhin
abe183f024 Remove logging from webelem.py 2014-05-13 11:17:22 +02:00
Florian Bruhin
1c4bb0214d Handle cx_freeze in read_file. 2014-05-13 10:39:37 +02:00
Florian Bruhin
bf639602f5 Check if sys.stdout is not None before using it.
When using pythonw (e.g. with cx_Freeze), sys.__stdout__ and sys.stdout
will be None, so we don't need to flush it.

This also means faulthandler won't work correctly, so we don't enabled
it if we don't have an stdout.
2014-05-13 10:38:27 +02:00
Florian Bruhin
8ff4b6dd99 Fix lint 2014-05-12 14:52:04 +02:00
Florian Bruhin
db7077d94f Clean up javascript_escape 2014-05-12 14:33:12 +02:00
Florian Bruhin
6cd8fd407f Make copies of geometries before modifying them 2014-05-12 12:06:08 +02:00
Florian Bruhin
0c9074f71b Handle QWebElements with an invalid geometry correctly 2014-05-12 10:59:30 +02:00
Florian Bruhin
3974c4dd88 Check hidden CSS elements 2014-05-12 10:58:23 +02:00
Florian Bruhin
419caf7116 Rename rect_on_screen to rect_on_view 2014-05-12 10:05:00 +02:00
Florian Bruhin
50f31ca7cb Handle visibility of elements on screen correctly 2014-05-12 10:04:27 +02:00
Florian Bruhin
c61af3c805 Don't place hints in invisible frames 2014-05-12 09:17:05 +02:00
Florian Bruhin
4eebe2dc57 First try at hinting with frames 2014-05-12 07:49:44 +02:00
Florian Bruhin
fd9f801cab Define some magic methods for usertypes 2014-05-09 22:11:33 +02:00
Florian Bruhin
edc9d0810c Use QCoreApplication.instance() 2014-05-09 17:01:05 +02:00
Florian Bruhin
2c314d61cf Flush stdout before printing 2014-05-09 16:25:50 +02:00
Florian Bruhin
662ae603c7 Flush stdout before printing warning 2014-05-09 16:24:44 +02:00
Florian Bruhin
e88ce5e837 Fix CRLF in depenencies.py 2014-05-09 15:32:01 +02:00
Florian Bruhin
7868e57520 Add snap_in/fuzzyval to NeighborList 2014-05-09 14:20:10 +02:00
Florian Bruhin
1570fc8a95 Nice error messages on import errors 2014-05-09 11:06:05 +02:00
Florian Bruhin
590ab887cd Remove deprecated FIXME 2014-05-09 09:19:54 +02:00
Florian Bruhin
419d47afd3 Split paths correctly in get_standard_dir 2014-05-09 09:16:09 +02:00
Florian Bruhin
f411741389 Correct path separator on Windows 2014-05-09 09:13:08 +02:00
Florian Bruhin
7d8883fd11 Use QCoreApplication::applicationName in get_standard_dir 2014-05-09 09:12:32 +02:00
Florian Bruhin
3b2ae6bcf1 Add warning for dead_actute warning.
Yo dawg, I herd you like warnings!
2014-05-09 06:57:44 +02:00
Florian Bruhin
70c8df095e Switch from appdirs to QStandardPaths 2014-05-08 22:33:24 +02:00
Florian Bruhin
077d3be2e0 Detect local files correctly 2014-05-06 20:24:53 +02:00
Florian Bruhin
4999a59470 Add pastebin button to crash dialog 2014-05-06 15:36:15 +02:00
Florian Bruhin
7fb0a7745b Don't treat single words as URL 2014-05-06 14:25:11 +02:00
Florian Bruhin
3753e87465 Depend on appdirs instead of bundling 2014-05-06 06:22:28 +02:00
Florian Bruhin
317cdada8c Log messages 2014-05-05 22:36:08 +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
938fbd5608 Add ImmutableDict 2014-05-05 19:12:41 +02:00
Florian Bruhin
667b255d01 Use QApplication for global singletons 2014-05-05 17:56:14 +02:00
Florian Bruhin
2e744cf96d Use sys.platform.startswith 2014-05-05 14:19:06 +02:00
Florian Bruhin
c8882cd75e Fix protocol detection in _is_url_naive 2014-05-05 13:36:36 +02:00
Florian Bruhin
8b8a17f535 Small urlutils fixes 2014-05-05 13:08:20 +02:00
Florian Bruhin
8220a99219 Replace quotes properly 2014-05-05 12:15:31 +02:00
Florian Bruhin
ee1961cb42 Fix safe_shlex_split when both conditions are true 2014-05-05 12:06:44 +02:00
Florian Bruhin
3b75bbf495 Adjust shell_escape to maybe work on windows 2014-05-05 11:09:10 +02:00
Florian Bruhin
85c4bb823f Fix lint 2014-05-05 10:09:19 +02:00
Florian Bruhin
9cf713cbe4 Use a metaclass for Enums for easier reverse mapping 2014-05-05 10:08:06 +02:00
Florian Bruhin
4ebe643ea6 Use simple enums for constants 2014-05-05 07:45:36 +02:00
Florian Bruhin
4ff5431436 Fix checks 2014-05-04 01:33:01 +02:00
Florian Bruhin
9e609bae8d Add :spawn command 2014-05-03 14:25:22 +02:00
Florian Bruhin
f7fa315890 Better URL detection 2014-05-03 00:20:01 +02:00
Florian Bruhin
b74a97580f Handle completions for ValueList sections correctly 2014-05-02 14:18:40 +02:00
Florian Bruhin
be467d5e50 Refactor command argument splitting.
This uses split=True/False as cmdutils.register argument again (because
we would never want to set maxsplit ourselves, only not splitting the
*last* argument makes any sense.

Also this uses shlex for splitting again, like earlier.
2014-05-02 10:28:41 +02:00
Florian Bruhin
fd678ff864 Make hints work 2014-05-01 15:27:32 +02:00
Florian Bruhin
12b36de5b5 Start implementing prev/next 2014-05-01 00:26:18 +02:00
Florian Bruhin
545e63aa0e Bundle editor functions 2014-04-30 11:27:59 +02:00
Florian Bruhin
1488e54567 Fix docstrings 2014-04-30 10:46:20 +02:00
Florian Bruhin
bc02df0bde Add open_editor command 2014-04-29 22:16:44 +02:00
Florian Bruhin
9ef956ae5e Fix some checks 2014-04-29 08:38:01 +02:00
Florian Bruhin
2a7062c5c8 Modify read_file to use pkg_utils 2014-04-29 06:44:47 +02:00
Florian Bruhin
8474bbdf6a Rename and reorder config options 2014-04-27 21:21:14 +02:00
Florian Bruhin
4692414255 Support file:// as special URLs 2014-04-26 14:47:00 +02:00
Florian Bruhin
9252ef94ca Consistent string chars 2014-04-25 16:53:23 +02:00
Florian Bruhin
0def82fe8c Fix lint 2014-04-24 22:49:06 +02:00
Florian Bruhin
9320c813f7 Add set_cmd_text to MessageBridge 2014-04-24 21:28:24 +02:00
Florian Bruhin
c674d96cfe Reorganize input modules into keyinput subpackage 2014-04-24 21:03:45 +02:00
Florian Bruhin
ecdd887664 Split KeyParser into KeyParser (non-chain) and KeyChainParser 2014-04-24 19:21:38 +02:00
Florian Bruhin
6311deb6b0 Read unbound-keys setting only once 2014-04-24 19:06:51 +02:00
Florian Bruhin
718295eb9f Use <> instead of @@ for special keys 2014-04-24 17:48:38 +02:00
Florian Bruhin
8648d88b51 Handle special keys instead of only modifiers 2014-04-24 17:43:19 +02:00
Florian Bruhin
0e3e588038 Add forward_unbound_keys setting 2014-04-24 16:53:16 +02:00
Florian Bruhin
b372c23b80 Move hint webelem code to utils.webelem 2014-04-24 16:30:59 +02:00
Florian Bruhin
1c5ae25b68 Start implementing auto_insert_mode 2014-04-24 16:03:16 +02:00
Florian Bruhin
10d7d887ec Pass keypresses to statusbar correctly 2014-04-24 15:47:38 +02:00
Florian Bruhin
ff887c647d Don't append mode to mode stack if it's already 2014-04-24 07:44:54 +02:00
Florian Bruhin
b9d845180e Better logging for ModeManager 2014-04-24 07:44:47 +02:00
Florian Bruhin
5b84848ad9 s/leaved/left/g 2014-04-24 07:01:27 +02:00
Florian Bruhin
95691e1e11 Show passthrough modes in statusbar 2014-04-24 06:59:39 +02:00
Florian Bruhin
afa9c47867 Lint cleanups 2014-04-24 06:45:38 +02:00
Florian Bruhin
3d292fbc27 Use a stack for current modes 2014-04-24 06:44:58 +02:00
Florian Bruhin
cd5f2562aa Adjust eventFilter to use new features 2014-04-23 23:24:46 +02:00
Florian Bruhin
e56d33badc Check if handler is available for new mode 2014-04-23 23:23:30 +02:00
Florian Bruhin
5385307582 Register modes explicitely with modemanager. 2014-04-23 23:23:04 +02:00
Florian Bruhin
fc11021c08 Add a passthrough argument to modemanager register() 2014-04-23 23:22:34 +02:00
Florian Bruhin
522a703863 Remove module-level modemanager register() 2014-04-23 23:21:29 +02:00
Florian Bruhin
8f44b56923 Start implementing eventFilter in ModeManager 2014-04-23 23:20:39 +02:00
Florian Bruhin
ce48ed9b8e Add entered/leaved signals to modemanager 2014-04-23 21:15:47 +02:00
Florian Bruhin
8b5daad367 Add ModeManager 2014-04-23 21:15:47 +02:00
Florian Bruhin
46f1a2a0d0 Add log_events decorator 2014-04-22 23:50:56 +02:00
Florian Bruhin
0f29526f91 Refactor keyparser 2014-04-22 17:21:29 +02:00
Florian Bruhin
aedf1889dd Support ambiguous keybindings 2014-04-22 16:50:37 +02:00
Florian Bruhin
f38871c9c9 Remove FIXME 2014-04-22 16:12:53 +02:00
Florian Bruhin
97578df7a5 Use QHostInfo instead of socket to resolve 2014-04-22 16:09:41 +02:00
Florian Bruhin
963066b4bd Remove some old FIXMEs 2014-04-22 14:45:24 +02:00
Florian Bruhin
9b5cf6ee7d Update appdirs.py 2014-04-22 12:07:57 +02:00
Florian Bruhin
e1b7305e40 Get rid of unneeded text slots in statusbar 2014-04-22 10:00:43 +02:00
Florian Bruhin
d700d962af Add the ability to display persistent messages. 2014-04-22 09:06:17 +02:00
Florian Bruhin
341481cd99 Allow bindings to be modified 2014-04-21 11:00:58 +02:00
Florian Bruhin
52c7376402 Split command-related stuff off from KeyParser 2014-04-21 10:45:57 +02:00
Florian Bruhin
39f580d9f1 Cleanup 2014-04-17 17:44:27 +02:00
Florian Bruhin
457e173592 More config cleanup.
This renames the config instance from "config" to "instance" and adds a
convenience get() function in the config module.
2014-04-17 15:26:27 +02:00
Florian Bruhin
91e6f4c37d Better linting with config files 2014-04-16 11:05:58 +02:00
Florian Bruhin
e878fc538d Fix some checks 2014-04-16 10:02:34 +02:00
Florian Bruhin
175eabdc80 Remove fallback values from config 2014-04-10 14:40:02 +02:00
Florian Bruhin
c5ca0e56be Remove blank lines before """ in docstrings.
pep257 has changed in this regard so we reflect this change.
2014-04-10 14:21:27 +02:00
Florian Bruhin
4ff86b660c Lint fixes 2014-04-10 12:24:41 +02:00
Florian Bruhin
235d588827 Remove MessageBridge debug 2014-04-09 21:17:56 +02:00
Florian Bruhin
72ab405040 Handle statusbar messages centrally 2014-04-09 20:47:24 +02:00
Florian Bruhin
638fdca573 appdirs.py update 2014-03-25 06:23:55 +01:00
Florian Bruhin
f079d6bf3b More config update/adoption 2014-03-10 00:39:14 +01:00
Florian Bruhin
eb2097772d Add utils/debug.py 2014-03-03 21:22:20 +01:00
Florian Bruhin
b75fc347dc Fix checks 2014-03-03 21:19:29 +01:00
Florian Bruhin
af0b6901be First kinda working version 2014-03-03 21:06:10 +01:00
Florian Bruhin
b22b19d881 Start using (broken) decorators 2014-03-03 06:09:23 +01:00
Florian Bruhin
3b648a4c0d Move config to config subfolder 2014-02-23 18:14:40 +01:00
Florian Bruhin
7da05b3fb9 Raise better error in NeighborList.curitem if no index is set 2014-02-23 17:39:29 +01:00
Florian Bruhin
b59f0e9a34 Rename types.py to usertypes.py 2014-02-23 16:30:07 +01:00
Florian Bruhin
a96261e7b8 Cleanup 2014-02-21 19:44:46 +01:00
Florian Bruhin
90e56e6477 Rename about:... to qute:... 2014-02-21 07:18:04 +01:00
Florian Bruhin
ec1951c56c Move abouthandler to network subpackage 2014-02-20 22:26:25 +01:00
Florian Bruhin
88b8b6ea4e Improve config save warning 2014-02-20 20:49:31 +01:00
Florian Bruhin
7fc45728a9 NeighborList: add firstitem() and lastitem() 2014-02-20 20:47:06 +01:00
Florian Bruhin
92b0024f25 NeighborList: Remove off-by-one error 2014-02-20 20:46:53 +01:00
Florian Bruhin
7d74e62696 NeighborList; Remove old FIXME 2014-02-20 20:46:43 +01:00
Florian Bruhin
858ff4a4f0 NeighborList: Ensure self.idx is always set 2014-02-20 20:46:29 +01:00
Florian Bruhin
e1fe6111ec NeighborList: Always cast items to list 2014-02-20 20:46:15 +01:00
Florian Bruhin
4f6e149289 Add logging to NeighborList 2014-02-20 20:46:05 +01:00
Florian Bruhin
7d11790d35 Make it possible to use NeighborList without items 2014-02-20 20:45:30 +01:00
Florian Bruhin
7d878fec7b version string cosmetic fixes 2014-02-20 19:59:22 +01:00
Florian Bruhin
7435a37f36 Style fixes in util.version 2014-02-20 19:56:34 +01:00
Florian Bruhin
ab8fef3cdb Add new NeighborList datatype 2014-02-20 19:55:35 +01:00
Florian Bruhin
b3fa7bba98 Improve version info 2014-02-20 15:32:46 +01:00
Florian Bruhin
f70ad71f9c Add error strings to exceptions 2014-02-19 11:11:21 +01:00
Florian Bruhin
93065188a7 All-caps constants 2014-02-19 11:11:19 +01:00
Florian Bruhin
9a990d56d9 Nicer docstrings 2014-02-19 10:58:32 +01:00
Florian Bruhin
581f88fcce Avoid pylint maybe-no-member warnings for ConfigParser. 2014-02-18 19:32:00 +01:00
Florian Bruhin
5f83228c75 Reorder some methods, widgets not done yet 2014-02-18 17:54:17 +01:00
Florian Bruhin
911d5d3b4a Refactor ALL the things 2014-02-18 16:51:01 +01:00
Florian Bruhin
6cd02ca368 utils.config docstring update 2014-02-18 14:37:49 +01:00
Florian Bruhin
2fcda0e67b Refactor Config.get() 2014-02-18 14:34:46 +01:00
Florian Bruhin
3d37b22fb0 Cleanup 2014-02-18 14:21:39 +01:00
Florian Bruhin
109906043e Add a trace_lines util function 2014-02-18 12:10:36 +01:00
Florian Bruhin
bbab0e7430 autosearch bugfix and debug output 2014-02-18 12:02:07 +01:00
Florian Bruhin
27d354633c Save/restore window geometry. 2014-02-18 11:57:35 +01:00
Florian Bruhin
96d01f8755 Improve fallback handling for Config. 2014-02-18 11:57:19 +01:00
Florian Bruhin
df0e534a0b bugfix: Always handle about-URLs as URL. 2014-02-18 10:47:02 +01:00
Florian Bruhin
88ea6e62b1 Unify auto_search/addressbar_dns_lookup 2014-02-18 10:46:59 +01:00
Florian Bruhin
99aba6d9c0 Move default config to file 2014-02-18 10:33:57 +01:00
Florian Bruhin
9c0f0e8ac5 Add last_close setting. 2014-02-17 16:50:41 +01:00
Florian Bruhin
966ceba1e6 Import cleanup 2014-02-17 12:23:52 +01:00
Florian Bruhin
933296f47f Move models to qutebrowser.models 2014-02-14 17:41:12 +01:00
Florian Bruhin
302736925b Clean up read_file(). 2014-02-14 16:43:41 +01:00
Florian Bruhin
e56ed54102 Add broken error pages 2014-02-14 07:17:36 +01:00
Florian Bruhin
203fa3eb34 Docstring grammar fixes 2014-02-13 18:57:19 +01:00
Florian Bruhin
a7d52feb99 Add ga binding 2014-02-13 10:30:52 +01:00
Florian Bruhin
029813c8eb Implement page-wise scrolling. 2014-02-13 10:28:09 +01:00
Florian Bruhin
7deab20820 Cleanup, more checks 2014-02-13 09:10:53 +01:00
Florian Bruhin
5b0e24b799 Make tabbar configurable. 2014-02-13 08:56:01 +01:00
Florian Bruhin
0326a66758 Don't color progress bar anymore. 2014-02-13 07:06:34 +01:00
Florian Bruhin
6538dbbdf1 Colorize URLs in statusbar, fix hovering.
Before, when hovering from an URL to another URL, the old hover-URL was
saved as old-url. This is now fixed.
2014-02-13 06:58:17 +01:00
Florian Bruhin
7bfc1eb791 Add FIXME for color validation 2014-02-12 23:28:03 +01:00
Florian Bruhin
c77589a821 Make SignalCache an own class. 2014-02-11 14:04:36 +01:00
Florian Bruhin
0676508687 Add signal_name in utils.misc 2014-02-11 13:26:41 +01:00
Florian Bruhin
26787b0d30 Add custom set_trace for debugging. 2014-02-11 10:30:17 +01:00
Florian Bruhin
796cb0c7b6 Clean up style proxy to be much more concise. 2014-02-11 07:45:28 +01:00
Florian Bruhin
78c89981ab Implement custom style for Ubuntu madness. 2014-02-11 07:01:59 +01:00
Florian Bruhin
903d9e7557 Don't use git -c 2014-02-10 19:21:52 +01:00
Florian Bruhin
6cf85ff52e Replace QUrl::url by QUrl::toString. 2014-02-10 19:12:12 +01:00
Florian Bruhin
094640b39b Fix signal_cache init, more debugging. 2014-02-10 17:54:24 +01:00
Florian Bruhin
fecfc86bc0 Make _git_str() more reliable 2014-02-10 16:36:58 +01:00
Florian Bruhin
39ed73c3cf python package cleanup 2014-02-10 15:06:46 +01:00
Florian Bruhin
e49a0aa0ed Use generator expressions where possible. 2014-02-10 08:21:09 +01:00