Florian Bruhin
14df72a7a1
urlutils: Add get_errstring().
2015-05-20 13:36:40 +02:00
Florian Bruhin
e590bf26ad
urlutils: Check bogus IPs in _is_url_dns.
2015-05-20 13:36:40 +02:00
Florian Bruhin
40cc354030
urlutils: Pass URL string to _is_url_dns.
2015-05-20 13:36:40 +02:00
Florian Bruhin
c0b41d8c62
urlutils: Use utils.raises in _is_url_naive.
2015-05-20 13:36:40 +02:00
Florian Bruhin
1f048a38f8
urlutils: Remove dead code in _get_search_url.
...
term should always contain something.
2015-05-20 13:36:40 +02:00
Florian Bruhin
e187cda292
Sort attrs for utils.get_repr().
2015-05-19 16:23:50 +02:00
Florian Bruhin
b78d5f57aa
Make new-instance-open-target docs more clear.
2015-05-19 06:13:29 +02:00
Florian Bruhin
9a1cf2b03a
Fix deprecated config.
2015-05-18 22:36:10 +02:00
Florian Bruhin
f2e2748c59
Fix quotes.
2015-05-18 22:32:17 +02:00
Florian Bruhin
03e59051dc
Remove count for move-to-end-of-line.
2015-05-18 22:32:17 +02:00
Florian Bruhin
91ad91cc7b
Spelling fixes.
2015-05-18 22:27:44 +02:00
Florian Bruhin
8941b5dc96
Merge branch 'visual'
2015-05-18 21:43:25 +02:00
Florian Bruhin
8eb483d66b
Set Qt.ItemNeverHasChildren for leaf model items.
...
This allows Qt to do some optimizations.
2015-05-18 21:35:14 +02:00
Florian Bruhin
dd292b0781
Don't depend on objreg for CommandDispatcher.
...
See #640 .
2015-05-18 21:34:00 +02:00
Florian Bruhin
81ba49e79b
Fix tests on OS X, take two.
2015-05-17 18:59:40 +02:00
Florian Bruhin
10985c3505
Fix handling of Meta/Control on OS X.
...
Fixes #110 .
See #420 .
See http://doc.qt.io/qt-5.4/osx-issues.html#special-keys :
To provide the expected behavior for Qt applications on OS X, the Qt::Meta,
Qt::MetaModifier, and Qt::META enum values correspond to the Control keys
on the standard Apple keyboard, and the Qt::Control, Qt::ControlModifier,
and Qt::CTRL enum values correspond to the Command keys.
2015-05-17 18:44:36 +02:00
Florian Bruhin
b60f673468
Fix @pyqtSlot signature for on_config_changed.
2015-05-17 14:14:23 +02:00
Florian Bruhin
8ab2772dd9
Use atexit to remove temp basedir.
...
This hopefully fixes a PermissionError on Windows.
2015-05-17 01:29:47 +02:00
Florian Bruhin
7fc99f3d80
adblock: Don't show message with --basedir given.
2015-05-17 01:09:33 +02:00
Florian Bruhin
f6ad556f34
Get rid of --no-crash-dialog.
2015-05-17 01:03:34 +02:00
Florian Bruhin
b94fcf2c3c
Clean up sys.exit call.
2015-05-17 00:52:37 +02:00
Florian Bruhin
315725a3ac
Print info with --no-err-windows on earlyinit errs.
2015-05-17 00:48:15 +02:00
Florian Bruhin
002346a125
Clean up exception_hook.
2015-05-17 00:44:04 +02:00
Florian Bruhin
b619d835e6
Make usertypes.Exit an IntEnum.
2015-05-17 00:29:28 +02:00
Florian Bruhin
3f98bf372e
Merge branch 'smoke'
...
Conflicts:
doc/qutebrowser.1.asciidoc
qutebrowser/app.py
qutebrowser/config/config.py
qutebrowser/qutebrowser.py
tox.ini
2015-05-17 00:28:56 +02:00
Florian Bruhin
9be5992a9a
Smoke test WIP
2015-05-16 23:43:34 +02:00
Florian Bruhin
a1f7eed5a7
Add --temp-basedir option.
2015-05-16 23:26:15 +02:00
Florian Bruhin
d7999577dd
Fix shutdown from pdb.
2015-05-16 23:13:36 +02:00
Florian Bruhin
54131e9d3e
Add --basedir arg with multiple instance support.
...
Closes #510 .
2015-05-16 23:10:20 +02:00
Florian Bruhin
183049ef2e
Make sure self._opened is reset on exceptions.
2015-05-16 22:48:13 +02:00
Florian Bruhin
c762340a0c
Add --datadir/--cachedir arguments. Closes #136 .
2015-05-16 22:12:27 +02:00
Florian Bruhin
9b372de4a9
Use fake-key scrolling for :scroll-perc 0/100.
2015-05-16 15:51:41 +02:00
Florian Bruhin
ad338e7a17
Add setting to enable/disable hyperlink auditing.
...
See #612 .
2015-05-16 00:46:39 +02:00
Florian Bruhin
0cabedfeef
Add settings to enable/disable CSS regions.
...
See #612 .
2015-05-16 00:46:27 +02:00
Florian Bruhin
cd53318c7f
Add setting to enable/disable WebGL.
...
See #612 .
2015-05-16 00:31:13 +02:00
Florian Bruhin
f855d5f349
Add support for smooth scrolling.
...
See #612 .
2015-05-15 23:53:08 +02:00
Florian Bruhin
e3bfe73442
Fix :scroll-page.
2015-05-15 21:32:42 +02:00
Florian Bruhin
7e2c67a7e4
Fix tests/lint.
2015-05-15 20:25:29 +02:00
Florian Bruhin
12940eb542
Handle QtInfoMsg (Qt 5.5) in qt_message_handler.
2015-05-15 20:15:09 +02:00
Florian Bruhin
aaf09dc573
Add possibility to hide command args from docs.
2015-05-15 19:19:30 +02:00
Florian Bruhin
f49dba6e38
Use fake key events for scrolling.
...
Closes #669 .
Fixes #218 .
See #246 , #534 .
2015-05-15 19:02:33 +02:00
Florian Bruhin
c236046a73
Avoid double-opening LineParser.
...
Hopefully helps with diagnosing #670 .
2015-05-14 15:11:16 +02:00
Florian Bruhin
17fc6622bb
Strip NUL bytes when loading history.
...
This is a workaround so people can start qutebrowser again, but the real bug
should be found and fixed...
See #670 .
2015-05-13 23:46:22 +02:00
Florian Bruhin
d992caf8fc
Clean up statusbar caret handling.
2015-05-13 22:44:37 +02:00
Florian Bruhin
947dcd556b
Clean up CaretKeyParser.
2015-05-13 22:29:21 +02:00
Florian Bruhin
bc54eb8671
Make get_modeman private again.
2015-05-13 22:27:54 +02:00
Florian Bruhin
222627b08d
Clean up caret initialisation.
2015-05-13 22:25:21 +02:00
Florian Bruhin
a728704cce
toggle-selection cleanup
2015-05-13 21:52:42 +02:00
Florian Bruhin
f8f8699ab8
Fix key config migration for rapid hinting.
2015-05-13 10:45:20 +02:00
Florian Bruhin
f6ef657952
Fix default search binding.
2015-05-13 08:26:56 +02:00
Florian Bruhin
a93bf184aa
Fix lint.
2015-05-13 08:05:33 +02:00
Florian Bruhin
f59a147589
Leave mode when yanking by default.
...
See #653 .
2015-05-13 07:58:33 +02:00
Florian Bruhin
866b299fef
Fix adding of new default section to keyconf.
...
When trying to add a new binding with multiple values, the bindings were added
immediately and the next _is_new() check returned False because the command was
already bound.
With this change, the new bindings first get added to a temporary dict so
_is_new() returns the correct result.
See #653 .
2015-05-13 07:55:49 +02:00
Florian Bruhin
a74a9c8a21
Fix adding of new default section to keyconf.
...
When trying to add a new binding with multiple values, the bindings were added
immediately and the next _is_new() check returned False because the command was
already bound.
With this change, the new bindings first get added to a temporary dict so
_is_new() returns the correct result.
See #653 .
2015-05-13 07:54:06 +02:00
Florian Bruhin
88fc186402
Add tmux-like Enter binding.
...
See #653 .
2015-05-13 07:29:59 +02:00
Florian Bruhin
ce1b82616d
Fix spelling.
2015-05-13 07:29:59 +02:00
Florian Bruhin
dd0e230a32
Re-add v keybinding for toggle-selection.
...
See #653 .
2015-05-13 07:29:59 +02:00
Florian Bruhin
e62ba57291
Always save last window session.
...
len(objreg.window_registry) can actually lag behind because single-shot QTimers
are used to remove the windows from the registry - but actually it doesn't even
matter if this is the last window or not. We just always save to
SessionManager._last_window_session, and it gets used in SessionManager.save.
Fixes #650 .
2015-05-12 21:04:18 +02:00
Florian Bruhin
54ae6a63ee
Fix lint.
2015-05-12 17:58:53 +02:00
Florian Bruhin
a960658617
js: Fix more lint.
2015-05-12 07:16:16 +02:00
Florian Bruhin
28ec7b4698
js: Fix radix parameters.
2015-05-12 07:16:13 +02:00
Florian Bruhin
d1e88c5e8d
js: Add 'var'.
2015-05-12 07:16:10 +02:00
Florian Bruhin
3f21ac6b6a
js: Use an IIFE.
2015-05-12 07:16:10 +02:00
Florian Bruhin
7a67af24f0
js: Fix some lint.
2015-05-12 07:16:08 +02:00
Austin Anderson
229733f1b0
Properly distinguish between statusbar modes when styling line input.
2015-05-11 22:46:26 -04:00
Austin Anderson
0d66647918
Set extra foreground colors to match the default by default.
2015-05-11 22:35:44 -04:00
Austin Anderson
14c1332017
Reordered statusbar stylesheet to match configuration ordering.
2015-05-11 22:28:12 -04:00
Austin Anderson
1a2a57d59e
Added command mode color configuration options.
...
Including necessary tracker variable _command_active.
2015-05-11 22:27:21 -04:00
Florian Bruhin
418934644b
Improve docstrings.
2015-05-11 22:29:44 +02:00
Florian Bruhin
1f94e0fee6
js: Remove obsolete argument to createTreeWalker.
...
"createNodeIterator() and createTreeWalker() now have optional arguments and
lack a fourth argument which is no longer relevant given entity references
never made it into the DOM."
2015-05-11 20:33:42 +02:00
Florian Bruhin
a36c0fcd4c
Fix lint.
2015-05-11 20:32:27 +02:00
Florian Bruhin
d3c6ebcf15
Rename caret_selection to caret-selection.
2015-05-11 20:21:01 +02:00
Florian Bruhin
6f620a6a9e
Handle title correctly for pages without title.
...
Fixes #667 .
2015-05-11 19:11:49 +02:00
Austin Anderson
244d2753df
Reordered fg/bg statusbar color options
...
Options are now all fg, bg for each variant.
2015-05-10 15:33:58 -04:00
Florian Bruhin
99a4765e75
Fix confusing websetting log output.
2015-05-10 14:50:56 +02:00
Austin Anderson
69f729dbe5
Added foreground color settings for statusbar messages.
2015-05-09 18:07:40 -04:00
Florian Bruhin
3b5b49daac
Move quitter/signal/crash_handler out of qApp.
2015-05-07 09:23:34 +02:00
Artur Shaik
57cad14714
Move JS snippet in external js file.
2015-05-07 12:41:02 +06:00
Artur Shaik
778ad5df3a
Comment clean.
2015-05-07 12:23:33 +06:00
Artur Shaik
d936be450b
Add jumps through text blocks in caret mode.
2015-05-07 12:19:35 +06:00
Artur Shaik
178d0dfa58
Add count for actions. Zero key treat as command.
2015-05-07 11:51:10 +06:00
Florian Bruhin
564a589bc6
Fix indent.
2015-05-06 23:36:01 +02:00
Florian Bruhin
9ceb43ec44
Make F
(:hint tab) honour background-tabs.
...
Fixes #621 .
2015-05-06 23:25:42 +02:00
Florian Bruhin
98596d439f
Emit ClickTarget from HintManager.start_hinting.
...
This is much clearer than transmitting a string which must match the
ClickTarget enum.
2015-05-06 23:17:23 +02:00
Florian Bruhin
21dfcf1e1b
Add some bindings to switch hint modes.
...
Fixes #613 .
2015-05-06 22:38:41 +02:00
Florian Bruhin
2f0b976bca
Leave and re-enter hint mode when double-hinting.
...
See #613 .
2015-05-06 22:38:08 +02:00
Florian Bruhin
9a5839650c
Allow 'yes' value for geolocation/notifications.
...
Fixes #655 .
2015-05-06 22:21:11 +02:00
Florian Bruhin
deb3c31f2f
Merge branch 'refactor'
2015-05-06 21:51:04 +02:00
Florian Bruhin
2d91ff3f5d
Fix line lengths.
2015-05-06 16:47:52 +02:00
Fritz V155 Reichwald
b98bafaefe
Add C-M and C-J for every command that got Return as key
2015-05-06 16:33:12 +02:00
Fritz V155 Reichwald
8806aac362
Add Ctrl-M as keybind for command-accept
2015-05-06 16:11:30 +02:00
Florian Bruhin
024549e3b0
Use a namedtuple for authentication prompts.
2015-05-06 11:05:17 +02:00
Florian Bruhin
842c69dfdd
Cache proxy authentication credentials.
2015-05-06 10:46:42 +02:00
Florian Bruhin
2777e4113e
Fix shutdown
2015-05-06 07:35:11 +02:00
Florian Bruhin
8aec5244de
Fix crash restart.
2015-05-06 07:11:14 +02:00
Artur Shaik
d594798db8
Implement caret selection and positioning
...
Added option to webview for selection enabled caret mode.
In status bar checking value of this option to identificate about it.
Added bindings: <Space> for toggle selection mode, <Ctrl+Space> drop
selection and keep selection mode enabled.
In webview added javascript snippet to position caret at top of the
viewport after caret enabling. This code mostly was taken from cVim sources.
2015-05-05 10:18:24 +06:00
Artur Shaik
aeaa20c3b7
Disable support count for CaretKeyParser
...
Allow using '0' for move caret to beginnig of the line.
2015-05-04 18:00:40 +06:00
Florian Bruhin
f499fd85d0
Fix IPC.
2015-05-01 14:46:17 +02:00
Florian Bruhin
d3a7b2e4ca
Big refactoring of app.py.
2015-04-30 07:37:25 +02:00
Florian Bruhin
32562c6878
Fix lint.
2015-04-28 16:50:42 +02:00
Florian Bruhin
9e8c781871
Use clearFocus/setFocus as workaround.
2015-04-28 16:12:23 +02:00
Florian Bruhin
640f758605
Merge branch 'master' into visual
...
Conflicts:
qutebrowser/browser/commands.py
2015-04-28 15:54:26 +02:00
Florian Bruhin
844473e47a
Fix /-foo searches.
2015-04-24 17:25:53 +02:00
Florian Bruhin
07552dddfe
Merge pull request #648 from hackebrot/sync-2
...
Sync pytest changes
2015-04-22 06:40:04 -07:00
Florian Bruhin
e1f2259e98
Fix typo.
2015-04-22 07:46:01 +02:00
Florian Bruhin
4925091ede
Merge branch 'master' of github.com:The-Compiler/qutebrowser
2015-04-22 07:43:01 +02:00
Florian Bruhin
c21ae0b651
Add a :debug-webaction command.
2015-04-22 07:13:56 +02:00
Florian Bruhin
6ca39dd851
Handle --relaxed-config for keys.conf as well.
2015-04-21 22:48:45 +02:00
Florian Bruhin
6c8e073dc8
Merge branch 'caret_visual_mode' of https://github.com/artur-shaik/qutebrowser into visual
...
Conflicts:
qutebrowser/browser/commands.py
qutebrowser/browser/webview.py
qutebrowser/config/configdata.py
2015-04-21 21:29:00 +02:00
Florian Bruhin
3164ee06eb
Handle new sections in KeyConfgParser._is_new().
2015-04-21 18:32:32 +02:00
Florian Bruhin
9ee74253e4
Remove name annotation for cmdutils.register.
...
See #637 .
2015-04-20 22:25:27 +02:00
Florian Bruhin
b805f903c9
Fix lint.
2015-04-20 20:50:51 +02:00
Florian Bruhin
f7cf33b596
Remember web inspector geometry in state file.
2015-04-20 20:40:03 +02:00
Florian Bruhin
7439586334
Move special params to cmdutils.register decorator
...
See #637 .
2015-04-20 19:33:05 +02:00
Florian Bruhin
0195cb31bb
Don't set scope in cmdutils.register w/o instance.
2015-04-20 18:55:22 +02:00
Florian Bruhin
8f1b074595
Show commandline being executed with :spawn.
...
Closes #616 .
2015-04-20 18:44:58 +02:00
Florian Bruhin
94d49b4801
Add :message-{info,error,warning} commands.
2015-04-20 18:32:15 +02:00
Florian Bruhin
f93eef848c
Store QUTE_TEXT/QUTE_HTML in files for userscripts.
...
Fixes #644 .
2015-04-20 07:50:47 +02:00
Florian Bruhin
9442fd4b75
Release v0.2.1
2015-04-19 20:04:14 +02:00
Florian Bruhin
5b48b0a7fe
Release v0.2.0
2015-04-19 18:29:27 +02:00
Florian Bruhin
42577b454b
Fix download view popping up as window on start.
...
This is a regression introduced in cc2c7c09ea
as
show() was called before the downloadview was added to the mainwindow vbox.
See #575 .
2015-04-19 17:30:58 +02:00
Florian Bruhin
43df32949d
Refactor IPC exceptions handling.
...
Also fixes an IPC error when qutebrowser was started twice without delay
between the invocations.
2015-04-17 19:24:27 +02:00
Florian Bruhin
38d34e1dea
Fix deprecation message for :cancel-download.
2015-04-17 14:33:45 +02:00
Florian Bruhin
4436941d97
Clean up unused imports.
2015-04-17 08:00:56 +02:00
Florian Bruhin
006b7716c8
Move WebPage init out from QWebView's __init__.
2015-04-17 08:00:15 +02:00
Florian Bruhin
ffd1e673b3
Get rid of SearchRunner.
...
A SearchRunner was per-mainwindow, which caused bugs when searching in a tab
and in another before clearing the search.
Instead we now split it between WebView/CommandDispatcher.
Fixes #638 .
2015-04-17 07:51:21 +02:00
Florian Bruhin
71ffe8f656
Use config.get() for qute:settings.
...
Fixes #628 .
2015-04-16 22:20:38 +02:00
Florian Bruhin
508993ac68
Add a special <unbound> command for the keyconf.
...
When a default keybinding is unbound it'd get readded, so we add a new special
<unbound> "command" to the config, and keys listed there won't get rebound
automatically.
Also, :unbind now maps the key to <unbound> if it exists in the default config.
See #525 .
2015-04-16 07:49:27 +02:00
Florian Bruhin
980b3506a3
Don't unnecessarily mark the key config as dirty.
2015-04-16 07:48:57 +02:00
Florian Bruhin
3cf6d1c185
Add missing new keybindings to config.
...
See #525 .
2015-04-16 06:41:00 +02:00
Florian Bruhin
f313bcaf13
Fix for cache never being saved.
...
This is a regression introduced in 76c5c8bf8e
.
See #43 .
2015-04-15 06:54:55 +02:00
Florian Bruhin
d8d29449ca
Improve error message on duplicate keychains.
2015-04-14 07:13:52 +02:00
Florian Bruhin
987bab9960
Merge pull request #19 from hackebrot/parametrize-sub-tests
...
Parametrize sub tests
2015-04-14 07:01:53 +02:00
Florian Bruhin
a6e3199616
Fix binding of special keys with lower-case mods.
2015-04-13 22:08:57 +02:00
Florian Bruhin
982733e1f4
Allow commands with ;; with :bind.
2015-04-13 21:21:26 +02:00
Florian Bruhin
4e18e54803
Fix handling of flags with args with maxsplit #2 .
...
Fixes #614 .
We only added the long variant of the flag, but not the short one.
2015-04-13 21:12:14 +02:00
Florian Bruhin
501138d5a0
Fix splitting of flags with args with maxsplit.
...
See #614 .
flags_with_args was set on keyword-only arguments, but an argument (like
--force for :bind) can also be keyword-only *and* bool.
2015-04-13 21:07:58 +02:00
Florian Bruhin
b609f993c3
Add a timeout to HTTPClient.
...
Fixes #629 .
2015-04-13 20:59:05 +02:00
Florian Bruhin
9381aac501
Merge {Pastebin,PyPIVersion}Client into HTTPClient.
2015-04-13 20:42:28 +02:00
Artur Shaik
e603d9a2d0
Slight modify of autofocus caret
...
Make mouseclick event point slightly down.
Add commented tries of more reliable methods of caret focusing.
2015-04-13 19:55:45 +06:00
Artur Shaik
a6443231e5
Add statusbar coloring for caret and visual modes
2015-04-13 19:50:27 +06:00
Artur Shaik
941eac848e
Remove "c" key from normal -> caret mode key bindings
2015-04-13 18:37:33 +06:00
Florian Bruhin
3e1d62171f
Ignore -psn_0_* argument on OS X.
...
See #384 .
2015-04-13 14:33:46 +02:00
Florian Bruhin
39f7850942
Fix lint.
2015-04-13 08:52:58 +02:00
Florian Bruhin
c071bcbec8
Clean up loggers.
2015-04-13 08:49:04 +02:00
Florian Bruhin
f85ba8645f
Handle a missing session folder at some places.
2015-04-13 08:38:12 +02:00
Florian Bruhin
d700d18780
Fix handling of no_cmd_split cmds with args.
...
When we have something like ":bind x foo;;bar" it wasn't recognized "bind" is a
no_cmd_split command because we tried to look up "bind x foo" in cmd_dict.
See #615 .
2015-04-13 07:39:18 +02:00
Florian Bruhin
e24b06cdf9
Refactor and fix split commands in CommandRunner.
...
- split() now returns a ParseResult namedtuple with (cmd, args, cmdline)
arguments instead of only returning cmdline and setting self._cmd/self._args.
- Handling of split commands (;;) is now done in a separate parse_all()
function instead of run() to make testing easier.
See #615 .
2015-04-13 07:38:25 +02:00
Florian Bruhin
6b0c16f109
Fix default 'ga' binding.
2015-04-11 13:20:56 +02:00
Florian Bruhin
31bcc70efb
Treat commands using ;; in key config as valid.
2015-04-10 19:45:59 +02:00
Florian Bruhin
f865b87a74
Show a message and update notifier on reports.
...
Fixes #340 .
Fixes #447 .
See #429 .
2015-04-10 08:09:18 +02:00
Florian Bruhin
e294e325f0
Ignore invalid history entries on start.
2015-04-10 06:40:48 +02:00
Bruno Oliveira
29c51c288b
Fix small typo in docstring
2015-04-09 18:47:25 -03:00
Florian Bruhin
8d98868ccd
Fix deprecated default keybindings.
...
Those were auto-corrected with the next run, but still are bad...
2015-04-09 20:36:11 +02:00
Florian Bruhin
83dbe48469
Refactor EventFilter.
2015-04-09 20:22:00 +02:00
Florian Bruhin
f77ba5744b
Add a ui -> hide-mouse-cursor option.
2015-04-09 19:59:16 +02:00
Artur Shaik
695712e50c
Basic caret and visual modes implementation
...
Allow user switch in caret mode for browsing with caret, and visual mode
for select and yank text with keyboard.
Default keybindings is c or v for caret mode, and again v for visual mode. All
basic movements provided by WebAction enum implemened with vim-like
bindings. Yanking with y and Y for selection and clipboard respectively.
There is bug/feature in WebKit that after caret enabled, caret doesn't
show until mouse click (or sometimes Tab helps). So I add some workaround
for that with mouse event. I think should be better aproach.
Signed-off-by: Artur Shaik <ashaihullin@gmail.com>
2015-04-09 22:55:42 +06:00
Florian Bruhin
7160a89cb9
Fix NameError in hints.py.
2015-04-09 17:47:09 +02:00
Florian Bruhin
2d8df76609
Add $QUTE_HTML and $QUTE_TEXT for userscripts.
2015-04-09 17:45:16 +02:00
Joel Torstensson
12c83b721f
Fixed some style errors.
2015-04-09 12:49:32 +02:00
Joel Torstensson
cc2c7c09ea
Changing position without restart now possible.
2015-04-09 11:47:35 +02:00
Joel Torstensson
2fa66ba250
Added option for downloadview placement.
2015-04-09 11:44:59 +02:00
Florian Bruhin
76651822bd
Merge pull request #16 from hackebrot/layout
...
Adopt test layout to pytest.
2015-04-08 14:03:02 +02:00
Florian Bruhin
1345a13a71
Add startpage/default-page to tabs -> last-close.
2015-04-07 17:36:19 +02:00
Florian Bruhin
4e2ef45cd8
Ignore Qt warning about WOFF/zlib.
2015-04-07 13:00:26 +02:00
Florian Bruhin
b1c475c61d
Use **kwargs to simplify cmdutils.register.
2015-04-06 17:25:42 +02:00
Florian Bruhin
20f0ef7ccc
Ignore ;; for splitting with some commands.
...
Fixes #405 .
2015-04-06 17:00:52 +02:00
Florian Bruhin
46d1760798
Keep progress bar height fix on multiline text.
...
See #364 and #63 .
2015-04-06 14:27:41 +02:00
Florian Bruhin
2876ba5cfa
Pass a parent to global QObjects.
2015-04-06 00:10:37 +02:00
Florian Bruhin
d83da987ae
Move SessionManager init to sessions.py.
2015-04-05 23:44:25 +02:00
Florian Bruhin
9b8f5e3ff0
Make the default session name configurable.
...
See #523 .
2015-04-05 23:30:43 +02:00
Florian Bruhin
476ccd8fe1
Add tab-bg{,-silent} to new-instance-open-target.
2015-04-05 21:34:41 +02:00
Bruno Oliveira
3864eff0be
Merge remote-tracking branch 'origin/master' into layout
2015-04-05 12:27:55 -03:00
Florian Bruhin
8bbff689b4
Add a -t/--temp flag to :session-load.
...
See #523 .
2015-04-05 16:06:41 +02:00
Florian Bruhin
17ebbc37c5
Add a -c/--current parameter to :session-save.
...
See #523 .
2015-04-05 16:04:03 +02:00
Bruno Oliveira
3de584f02c
Moving testfile used by test_utils into qutebrowser.utils
2015-04-04 19:15:23 -03:00
Florian Bruhin
84d2556863
Merge branch 'master' of github.com:The-Compiler/qutebrowser
2015-04-04 22:05:31 +02:00
Florian Bruhin
1fdd7051c3
config: Filter docs for change_filter.
2015-04-04 22:03:28 +02:00
Florian Bruhin
57158e7191
Don't make default config a mutable global.
...
Before, configdata.DATA only existed once - that means when something
manipulated it, instantiating a new ConfigManager actually gave us the
*modified* rather than the default data.
There's still a (now readonly) configdata.DATA for performance reasons -
before, the settings completion model called data() many times, which caused
initializing of it taking a few (instead of nearly 0) seconds.
See https://github.com/hackebrot/qutebrowser/pull/16#discussion-diff-27770433
2015-04-04 22:01:02 +02:00
Bruno Oliveira
4fa2294805
Merge remote-tracking branch 'origin/master' into layout
...
Conflicts:
qutebrowser/test/keyinput/test_basekeyparser.py
qutebrowser/test/utils/test_standarddir.py
test/browser/http/test_content_disposition.py
test/config/test_configtypes.py
test/misc/test_editor.py
test/utils/test_debug.py
test/utils/test_utils.py
tox.ini
2015-04-04 14:29:49 -03:00
Florian Bruhin
cef88d6e19
test_log_time: Prettify duration assertion.
...
As suggested by @nicoddemus in #13 .
2015-04-04 16:33:10 +02:00
Florian Bruhin
b2df5a5b47
docs: Make it clear cache settings are global.
...
Closes #602 .
2015-04-04 15:31:12 +02:00
Florian Bruhin
18dea8c7cb
Add note about about:blank to default-page docs.
2015-04-04 15:10:22 +02:00
Florian Bruhin
217e788f4b
Add 'cd' shortcut to clear downloads.
2015-04-04 15:02:08 +02:00
Florian Bruhin
f1ebbda7a0
test_signal: Add docstring for signal().
2015-04-04 12:08:22 +02:00
Florian Bruhin
8e93747040
test_log_time: Fix/simplify duration assert.
...
See #13 .
2015-04-04 12:07:15 +02:00
Raphael Pierzina
dd4096b5a4
Merge remote-tracking branch 'upstream/master'
2015-04-04 11:12:39 +02:00
Florian Bruhin
e23c9401f2
Merge branch 'convert-debug-signal-tests'
2015-04-04 01:18:38 +02:00
Florian Bruhin
cd7319de1e
Merge branch 'convert-logtime-tests'
2015-04-04 01:12:18 +02:00
Florian Bruhin
80b0692971
Remove blank line to make pep257 happy.
2015-04-04 01:11:57 +02:00
Florian Bruhin
1c9f116370
Merge branch 'convert-qflags-key-tests'
2015-04-03 23:52:53 +02:00
Florian Bruhin
2ac0c7b8f0
Remove now unused import from test_debug.
2015-04-03 23:52:13 +02:00
Florian Bruhin
05087b976a
test_qflags_key: Improve xfail message.
2015-04-03 23:43:06 +02:00
Florian Bruhin
544dc650e7
Remove now unused imports from test_debug.
2015-04-03 23:23:31 +02:00
Florian Bruhin
0e76f9b1f1
Whitespace adjustments
2015-04-03 23:19:49 +02:00
Florian Bruhin
e94a8a80f1
test_qenum_key: Use hasattr() for attribute checks.
2015-04-03 23:18:56 +02:00
Florian Bruhin
fba0ae69ce
Remove test_reconverted from qenum_key tests.
...
The test didn't really seem to test anything useful, and also uses a QFlags
instead of a QEnum.
2015-04-03 23:05:08 +02:00
Raphael Pierzina
231feda2c8
Use logger with name of local var logger_name
2015-04-03 22:45:26 +02:00
Raphael Pierzina
efbc8e0cbf
Remove former unittest module test_debug.py
2015-04-03 21:55:19 +02:00
Raphael Pierzina
7540a5bbf4
Convert test_dbg_signal_newline
2015-04-03 21:54:24 +02:00
Raphael Pierzina
22522406e1
Convert test_dbg_signal_eliding
2015-04-03 21:50:32 +02:00
Bruno Oliveira
9c533e1941
Moved tests to outside of qutebrowser package
2015-04-03 16:49:01 -03:00
Raphael Pierzina
9d39fbd4e5
Convert test_dbg_signal
2015-04-03 21:45:10 +02:00
Raphael Pierzina
45e95d497d
Convert test_signal_name using a signal fixture
2015-04-03 21:41:52 +02:00
Florian Bruhin
068947ba7e
Fix search engine syntax documentation.
...
We changed the syntax in 68398035ef
but didn't
adjust the documentation.
See #14 .
2015-04-03 20:54:27 +02:00
Raphael Pierzina
91a8b23aeb
Use actual unittest implementation of assertAlmostEqual
2015-04-03 20:40:37 +02:00
Raphael Pierzina
6fb83aacae
Add a local variable for the logger name
2015-04-03 20:32:29 +02:00
Raphael Pierzina
58a8a7e992
Introduce pytest plugin capturelog and convert test_log_time
2015-04-03 20:10:41 +02:00
Florian Bruhin
25fca03dca
Don't double ampersands in window title.
...
Fixes #599 .
2015-04-03 20:04:44 +02:00
Florian Bruhin
6917c3b32d
set-cmd-text: Add -s/--space argument.
...
We need this because quotes are ignored now, so there'd be no way to set the
text to ":open -t " for example.
2015-04-03 19:07:29 +02:00
Florian Bruhin
3b3b55234b
Add a signal to KeyConfigParser to save config.
...
Before, we used the 'changed' signal for the SaveManager - however, that also
was emitted when only the internal structure changed. Now we add a new signal
for that.
2015-04-03 19:07:29 +02:00
Florian Bruhin
ac63fc073f
save: Add possibility to mark things dirty on add.
...
KeyConfig needs this feature, because it can fix some deprecated commands
during __init__ and emit its dirty-signal, but that happens before the saveable
is added.
2015-04-03 19:07:29 +02:00
Florian Bruhin
630a827afc
Change CHANGED_KEY_COMMANDS to be regexes.
...
Break after first regex
2015-04-03 19:03:30 +02:00
Florian Bruhin
a504bd1436
Don't quote completions for maxsplit-commands.
...
Fixes #564 .
Obsoletes #313 and #453 .
2015-04-03 19:03:30 +02:00
Florian Bruhin
0b26e295bc
Revert fixes for quotes/spaces in maxsplit cmds.
...
Revert "Fix maxsplit-splitting with empty args (""/'')."
This reverts commit 46396cce1e
.
Revert "Remove quotes with split=False commands."
This reverts commit 81bc5dae94
.
See #564 and #453 .
2015-04-03 19:00:16 +02:00
Raphael Pierzina
5b372aeee0
Remove blank lines in test_qflags_key
2015-04-03 18:55:24 +02:00
Raphael Pierzina
0b063ab4b4
Convert test_unknown
2015-04-03 18:51:40 +02:00
Raphael Pierzina
ff75d18e62
Convert test_int
2015-04-03 18:40:41 +02:00
Raphael Pierzina
086f12600c
Convert test_int_noklass
2015-04-03 18:37:12 +02:00
Raphael Pierzina
75e927f79e
Convert test_add_base
2015-04-03 18:33:22 +02:00
Raphael Pierzina
6482025399
Convert test_combined
2015-04-03 18:29:33 +02:00
Raphael Pierzina
f68cfc13e0
Convert test_multiple and use custom xfail marker
2015-04-03 18:25:28 +02:00
Raphael Pierzina
9a47848794
Create a new module and convert test_single
2015-04-03 18:22:13 +02:00
Raphael Pierzina
96a600e9dc
Change containing directory name to debug
2015-04-03 16:37:31 +02:00
Raphael Pierzina
b938318d5f
Remove former unittest class and skip test_reconverted
2015-04-03 16:34:42 +02:00
Raphael Pierzina
6b7ae70e6d
Convert test_unknown
2015-04-03 16:34:42 +02:00
Raphael Pierzina
1b476d9af7
Convert test_int
2015-04-03 16:34:42 +02:00
Raphael Pierzina
9e59108788
Convert test_int_noklass
2015-04-03 16:34:42 +02:00
Raphael Pierzina
df3096fbb5
Convert test_add_base
2015-04-03 16:34:42 +02:00
Raphael Pierzina
11ded52f06
Convert test_metaobj
2015-04-03 16:34:42 +02:00
Raphael Pierzina
d4d14598dd
Convert test_no_metaobj
2015-04-03 16:34:42 +02:00
Raphael Pierzina
64b1b48be6
Extract test_no_metaobj to separate module
2015-04-03 16:34:42 +02:00
Florian Bruhin
7e51addeb0
Fix :set-cmd-text with empty argument.
2015-04-03 14:42:19 +02:00
Florian Bruhin
4e0712622b
Clear search when :search without args is given.
...
Needed for #564 because :search "" won't work anymore.
2015-04-03 14:40:26 +02:00
Florian Bruhin
1dcc5a32d6
Correct keybindings to deprecated commands.
...
Needed for #564 (because of :search "").
Also see #525 .
2015-04-03 14:14:20 +02:00
Bruno Oliveira
298892a4a8
Converted test_standarddir to pytest
...
related to #10
2015-04-02 19:46:52 -03:00
Bruno Oliveira
751b62e344
Moving logging and QApplication to conftest
...
As discussed in #8
2015-04-02 19:09:06 -03:00
Florian Bruhin
18b5512fe9
Remove 'fooled' from state file.
2015-04-02 14:58:34 +02:00
Florian Bruhin
953119ef75
Revert "Minor QWebSettings fix."
...
Happy April's fools!
This reverts commit a98060e020
.
Conflicts:
qutebrowser/app.py
qutebrowser/misc/utilcmds.py
2015-04-02 14:56:42 +02:00
Bruno Oliveira
47b9ea1f88
Fixing docstring typo in test_progress
2015-04-02 08:05:23 -03:00
Florian Bruhin
84b9d34a7f
Fix lint.
2015-04-02 11:57:56 +02:00
Franz Fellner
3d3324ccfa
Add TabIndex label to the statusbar.
...
It shows the current tab index and the number of tabs of the windows it
sits in.
2015-04-02 11:55:42 +02:00
Florian Bruhin
9f9996bc66
Refuse to add empty URLs to history.
2015-04-02 09:09:17 +02:00
Florian Bruhin
214347497a
Fix handling of first :completion-item-prev call.
...
Before, the first item was unconditionally selected when none was selected
before. With :completion-item-prev (e.g. Shift-Tab), it makes more sense to
select the *last* one.
2015-04-02 07:41:56 +02:00
Florian Bruhin
37ab5296a7
Adjust URL completion when quickmarks are changed.
...
Fixes #590 .
2015-04-02 07:40:00 +02:00
Bruno Oliveira
79be5b0f4a
Implemented test for Progress widget
...
Also created a conftest file with a "default_config" fixture.
2015-04-01 22:39:25 -03:00
Bruno Oliveira
1f08d8e319
Implemented test for Percentage widget
2015-04-01 21:24:25 -03:00
Bruno Oliveira
3096f3856a
Implemented test for TextBase widget
2015-04-01 20:50:20 -03:00
Florian Bruhin
068e1c14b6
Don't display internal sessions in completion.
2015-04-01 22:32:41 +02:00
Florian Bruhin
1fb848249e
Handle sessions starting with _ as internal.
...
:session-{load,save,delete} now refuses to handle sessions starting with _,
unless a new -f/--force parameter is given.
2015-04-01 22:31:19 +02:00
Florian Bruhin
840652f396
Use sessions for :restart.
...
This saves a lot more state compared to just passing a list of pages.
2015-04-01 22:18:28 +02:00
Florian Bruhin
2ba28a59fe
Prevent session from being loaded with :restart.
2015-04-01 21:42:02 +02:00
Florian Bruhin
371ec564e1
Split restart() into :restart and _do_restart().
2015-04-01 21:38:18 +02:00
Florian Bruhin
11bd4a13f6
Serialize arguments via json on restart.
...
We want to ignore some positional arguments without ignoring flags/values - and
since there's no easy way to "unparse" an argparse namespace, we instead pass
it as json.
Also note we can't pass it as a file easily, as args have to be available very
early. Passing it as an argument shouldn't be an issue though.
2015-04-01 21:37:06 +02:00
Florian Bruhin
6e435ad215
Add state config sections when initializing.
2015-04-01 18:26:45 +02:00
Florian Bruhin
a98060e020
Minor QWebSettings fix.
...
If you're reading the diff, congrats. Please be quiet and don't spoil the fun
for others though! :)
2015-04-01 00:06:34 +02:00
Florian Bruhin
eeb875d098
Handle unavailable registry in on_focus_changed.
2015-04-01 00:02:29 +02:00
Florian Bruhin
431257d380
Fix handling of key release events.
...
Fixes #593 .
It seems Qt "re-uses" existing keyevents, so we have to save and compare the
data instead.
2015-03-31 23:09:40 +02:00
Florian Bruhin
8ebac8d38c
Various spelling fixes.
2015-03-31 21:11:47 +02:00
Florian Bruhin
eb3b0b960f
Use hunter for line tracing.
2015-03-31 20:38:46 +02:00
Florian Bruhin
2f629befc3
Add an option to disable host blocking.
2015-03-30 18:33:10 +02:00
Florian Bruhin
70ccdd86b2
Add zooming with Ctrl-mousewheel.
...
Closes #51 .
2015-03-30 15:26:07 +02:00
Florian Bruhin
a38c3ae1e1
Add a :tab-detach command.
...
See #62 .
2015-03-30 12:14:15 +02:00
Florian Bruhin
33dff70357
:session-load: Add a -c/--clear argument.
...
See #523 .
2015-03-30 07:13:13 +02:00
Florian Bruhin
dff8f73a11
:session-save: Show which session was saved.
...
This also adds a -q/--quiet argument to not print this.
See #523 .
2015-03-30 07:13:13 +02:00
Florian Bruhin
5233e7fac8
Fix UnboundLocalError on invalid quickmarks.
...
This also improves FuzzyUrlError messages.
2015-03-29 21:20:42 +02:00
Florian Bruhin
b2427701fa
Handle element webFrame being None when hinting.
2015-03-29 19:52:30 +02:00
Florian Bruhin
8af2e712ae
Add a --pdb-postmortem argument.
2015-03-29 19:45:00 +02:00
Florian Bruhin
d062ff5138
Fix starting with -c '' again.
...
Before c5a2039da4
(standarddir refactoring), we
only checked the commandline arguments for the config file, but not when
getting the quickmarks location (as the 'args' argument was None). This means
quickmarks were saved to the default config dir even with -c ''.
With that commit, this was "fixed" accidentally, but quickmarks couldn't handle
the filename being None.
2015-03-27 12:29:12 +01:00
Florian Bruhin
82322beb03
Fix pep257 issues.
2015-03-26 07:08:54 +01:00
Florian Bruhin
ec487dd6b1
Add some logging for javascript messages.
2015-03-24 11:35:58 +01:00
Florian Bruhin
5043f58f3c
Add an --override-restore argument.
...
See #523 .
2015-03-24 07:50:23 +01:00
Florian Bruhin
db98b03f34
Never open URL arguments in background.
2015-03-24 07:44:49 +01:00
Florian Bruhin
1d1ac1ef6f
Save session to load in state file.
...
Before, we always loaded the default session (if it existed) and then deleted
it. This was surprising as the default session was deleted even when another
session was loaded.
Now we don't delete it at all, and save the session to load in the state file.
See #523 .
2015-03-24 07:12:35 +01:00
Florian Bruhin
1425d306bc
Fix lint.
2015-03-23 08:19:31 +01:00
Florian Bruhin
0e8b42a9d8
Add a --relaxed-config options.
2015-03-23 07:58:28 +01:00
Florian Bruhin
e7f5433da3
Enable python warnings earlier and unconditionally.
2015-03-23 07:40:22 +01:00
Florian Bruhin
21d2bb2291
Simplify some unneeded lambdas.
2015-03-23 07:04:50 +01:00
Florian Bruhin
8811947f50
Re-enable some pylint checks.
2015-03-23 07:04:41 +01:00
Florian Bruhin
97b678d8c7
Don't display time deltas < 1s in messages.
2015-03-22 23:50:12 +01:00
Florian Bruhin
c13e09b706
Add option to queue all msgs in unfocused windows.
2015-03-22 23:47:16 +01:00
Florian Bruhin
157c25bb13
Queue messages for 'current' window if unfocused.
...
Fixes #512 .
2015-03-22 22:39:56 +01:00
Florian Bruhin
19d369377e
Update references to HACKING/CONTRIBUTING.
2015-03-20 12:18:15 +01:00
Florian Bruhin
565303ebcd
Fix hinting when page has no URL set yet.
2015-03-20 08:35:33 +01:00
Florian Bruhin
858c38964b
Release v0.1.4
2015-03-20 08:30:02 +01:00
Florian Bruhin
f77c0f9afa
Simplify package output in earlyinit.py.
...
It doesn't really help much to have package names for distributions in there,
and it's way too much effort. Closes #475 .
2015-03-20 07:16:47 +01:00
Florian Bruhin
adb11360db
Disallow tab=None with objreg.get(scope='tab').
...
This would've made it a lot easier to detect #563 .
2015-03-19 22:28:24 +01:00
Florian Bruhin
7a4a4a4a4e
Pass tab_id correctly with scope='tab' commands.
...
Fixes #563 .
2015-03-19 22:19:25 +01:00
Florian Bruhin
218822d6e8
Clear rejected SSL questions when reloading page.
...
Fixes #565 .
2015-03-19 21:21:40 +01:00
Florian Bruhin
d6732c64a3
Revert "Handle NavigationTypeOther acceptNavigationRequest"
...
This reverts commit 4b4bb3af88
.
Fixes #567 . #488 is still okay because of
f3b55d68db05247b5c3f5dc576dadb0aa1848ca3.
2015-03-19 19:06:58 +01:00
Florian Bruhin
fb5fbd09da
Handle unencodable file paths in config types.
...
If an user e.g. has a download-directory of ~/föö, but has LC_ALL=C set, we'll
get an UnicodeEncodeError when trying to validate it. This is now handled
properly by raising a ValidationError.
Fixes #562 .
2015-03-19 12:42:35 +01:00
Florian Bruhin
c83775cf29
Update icon db path when private-browsing changed.
2015-03-18 20:20:04 +01:00
Florian Bruhin
706cc1a87f
Merge branch 'master' of https://github.com/sbinix/qutebrowser into sbinix-master
...
Conflicts:
qutebrowser/config/websettings.py
2015-03-18 20:16:36 +01:00
Florian Bruhin
ca22ed02e6
Fix via_ipc typo.
2015-03-17 19:13:44 +01:00
Florian Bruhin
2b10adfad7
Remove colors -> completion.item.bg config option.
...
This wasn't used anywhere...
2015-03-17 07:45:11 +01:00
Florian Bruhin
2dcf323077
Add missing docstrings.
2015-03-17 06:39:02 +01:00
Florian Bruhin
94bc10405a
Merge branch 'histcomplete'
2015-03-17 06:16:26 +01:00
Florian Bruhin
9a405df560
Whoops.
2015-03-16 23:32:49 +01:00
Florian Bruhin
210ce8ca7c
Don't poll for signals on Unix.
...
A better solution is to use QSocketNotifier and os.wakeup_fd to get notified
about new signals.
Thanks to Yuya Nishihara / TortoiseHG for the hint!
Fixes #555 .
2015-03-16 23:25:36 +01:00
Florian Bruhin
6dc65287a9
Discard uninteresting events early in eventFilter.
...
Before, we ran quite a lot of code (e.g. objreg) on every event, even if it
turns out to not be a keypress/release event at all.
2015-03-16 23:25:29 +01:00
Florian Bruhin
f1b9a3c8b5
Ensure there's no size for font-family settings.
...
See #549 .
2015-03-16 18:32:17 +01:00
Florian Bruhin
4157cfe86f
Merge branch 'issue549-fix'
2015-03-16 18:03:00 +01:00
Florian Bruhin
b1f99392e8
Add some more logging for #549 .
2015-03-16 18:01:02 +01:00
Florian Bruhin
1aaa538b45
Ignore empty lines in history.
2015-03-16 10:45:50 +01:00
Florian Bruhin
59bbca9b40
Fix updating of existing items in hist-completion.
...
Before we limited the history items we could simply call WebHistory's
historyContains before iterating through all items in the history completion.
Now however it's possible an item is in the real WebHistory, but not actually
in the completion - so we always have to check the whole completion.
2015-03-16 09:20:09 +01:00
Florian Bruhin
777e3f58e1
Make network inaccessible in test QWebPages.
...
Maybe fixes #553 .
2015-03-16 08:32:17 +01:00
Florian Bruhin
806742abd3
Move new entries to the end when loading history.
...
Before, if an URL was present early in the history and then again later, we
didn't move it to the end of the OrderedDict. This means it won't be loaded in
the completion.
2015-03-16 07:54:39 +01:00
Florian Bruhin
3df5e13c65
Fix exception in filtermodel if model has no items.
2015-03-16 07:42:21 +01:00
Florian Bruhin
503060881a
Compare history items based on QUrl.
2015-03-16 07:42:10 +01:00
Florian Bruhin
693ea0c312
Cleanup
2015-03-16 07:10:06 +01:00
Florian Bruhin
553d8cf986
Also save the QUrl in a HistoryEntry.
...
We also use QUrl::toDisplayString for the completion so things like spaces or
umlauts are decoded properly.
2015-03-16 07:03:30 +01:00
Florian Bruhin
46c31911a6
Add a test for utils.debug.log_time.
2015-03-16 06:43:56 +01:00
Florian Bruhin
001bf982e5
Alternate row colors in completion.
2015-03-15 23:16:57 +01:00
Florian Bruhin
d266665955
Fix adding of URLs to history completion.
...
Before, the item_added signal was emitted *after* an item was added, which
means the on_history_item_added slot always assumed the item already is in the
history.
2015-03-15 21:16:45 +01:00
Florian Bruhin
9512a52d21
completion: Don't unnecessarily expand all items.
...
Instead of calling expandAll() and iterating through all items, we can just
force the top-level items to be expanded.
2015-03-14 22:51:53 +01:00
Florian Bruhin
cdbb118238
Also measure the time it takes to set the pattern.
2015-03-14 13:35:32 +01:00
Florian Bruhin
70cd8e74eb
Measure time it takes to init URL completion.
2015-03-14 13:32:47 +01:00
Florian Bruhin
833830d5e9
Limit the count of history items in the completion.
2015-03-13 19:50:08 +01:00
Florian Bruhin
55eabafc0d
Rename completion -> history-length.
...
This is now renamed to cmd-history-max-items to avoid confusion with the web
history.
2015-03-13 19:46:21 +01:00
Florian Bruhin
901db0911e
Add __len__ to WebHistory.
2015-03-13 19:45:43 +01:00
Florian Bruhin
994546f04d
Use an OrderedDict for WebHistory.
...
We need the URLs in the correct order to get the newest items anyways.
2015-03-13 19:44:15 +01:00
Florian Bruhin
94f694bd77
Add an utils.newest_slice.
...
This takes an iterable and uses itertools.islice to get the n newest elements
from it.
2015-03-13 19:25:48 +01:00
Florian Bruhin
96da7d9fe6
Fix lint.
2015-03-13 16:26:27 +01:00
Florian Bruhin
74892ac8e4
Initialize completions lazily and only once.
...
Before, we initialized the completions once for every window spawned, which was
a waste of CPU-time and RAM.
Now we only initialize them once, when the user uses the completion for the
first time.
2015-03-13 16:25:13 +01:00
Florian Bruhin
cef49864d9
Refactor websettings and save/restore defaults.
...
This makes qutebrowser.config.websettings much easier to understand, and saves
all defaults so it can restore them properly when a setting is set to an empty
string.
Before, when we set the fonts to empty strings instead of the true default, in
some cases anti-aliasing was broken.
Fixes #549 .
2015-03-13 10:03:17 +01:00
Florian Bruhin
ccce2eddad
Add logging for websettings init.
...
See #549 .
2015-03-12 22:41:12 +01:00
Florian Bruhin
389feab1df
Make sure args are not int in new_item().
...
Otherwise we would construct a QStandardItem with the
QStandardItem(int rows, int columns = 1) constructor, which will most likely
not do what we want.
2015-03-12 15:35:53 +01:00
Florian Bruhin
dbd121a079
Set data of existing item.
2015-03-12 15:34:32 +01:00
Florian Bruhin
97dd86735a
Improve types of history model values.
...
- HistoryItem.atime now always should be an int/float.
- The data for the sort role should also be an int, not a string.
A float would also work, but maybe be slower for no real benefit.
2015-03-12 15:34:32 +01:00
Florian Bruhin
8023b1456d
Make it possible to configure the timestamp format.
2015-03-12 15:25:39 +01:00
Florian Bruhin
7a28b6c821
Fix lint.
2015-03-12 14:55:54 +01:00
Florian Bruhin
299dbfa56a
history: Remove unneeded _old_hit and _old_miss.
...
The need for those were removed in #548 .
2015-03-12 14:46:49 +01:00
Jimmy
61e732f217
history: simplify
2015-03-12 21:35:56 +13:00
Jimmy
1efe18ecc6
Prevent duplicates in history completion.
...
Two things here. One is to use `WebHistory._new_history` only as a to-save
queue, so we now add entries to `_old_urls` when they are first created and
can now no longer iterate of `_new_history` in `__iter__()`.
Second is to stop blindly tacking new history entries on the end of the
history completion model. It does involve iterating over the model to find the
existing entry but we only do that if we know the duplicate is there, which is
fast to check.
This also ads another point of mutation to the history completion model which
may prove problematic if it leads to more segfaults.
2015-03-12 20:15:03 +13:00
Jimmy
734268187c
Clean up incomprehensible comment.
2015-03-12 20:12:59 +13:00
Florian Bruhin
9ee19be70d
Convert the atime to float in HistoryEntry.
2015-03-12 08:07:40 +01:00
Florian Bruhin
0b975db4dd
Refactor how completions are organized.
2015-03-11 23:07:58 +01:00
Florian Bruhin
34b24aafa8
Fix lint
2015-03-11 22:22:49 +01:00
Florian Bruhin
fe4f32606d
Use CompletionFilterModel's sort implementation.
2015-03-11 21:50:16 +01:00
Jimmy
834832e3ba
Web history changed signal now emits the new entry.
...
Each new HistoryEntry is emitted after being added to the global history
store. Current members of the HistoryEntry are `url` and `atime`. `title`
should be coming soon.
2015-03-11 21:50:16 +01:00
Jimmy
59948a038c
Add new UrlCompletion model which includes web history and quickmarks.
...
I went to some effort to avoid duplipcating code which which leads to some
arguably ugly class method calling.
2015-03-11 21:50:16 +01:00
Jimmy
f6a7ef3985
Add url history completion for open.
...
Adds a basic completion model implementation around the global browser
history and registers that for the open command.
Modifies WebHistory to add an __iter__ method and to use a dict instead of a
set to store an entire HistoryEntry for each archived item instead of just the
URL. Brief tests showed that the lookup time for set and dict are very
similar. They are at least on the same order of magnitude. Testing membership
of a list on the other hand, as was the case before a set was used, was four
orders of magnitude slower on my machine.
2015-03-11 21:50:16 +01:00
Florian Bruhin
fb85a279f4
Merge branch 'master' of https://github.com/error800/qutebrowser into error800-master
2015-03-11 21:49:27 +01:00
Florian Bruhin
e8e6d8409b
Adjust pylint exceptions.
2015-03-11 20:14:39 +01:00
Florian Bruhin
12a82eb371
Add an unittest for foo::bar URLs.
...
See #544 , #546 .
2015-03-11 17:48:24 +01:00
Patric Schmitz
4fa64350ca
Handle URLs with double-colon at the beginning as search strings
...
Closes #544 . We might also merge #542 now.
2015-03-11 17:35:32 +01:00
error800
94666fe979
Removed default search engines. Closes #533 .
2015-03-11 11:25:50 +01:00
Florian Bruhin
0f5391c4fa
Scroll completion to top when showing it.
...
See #531 .
2015-03-11 07:50:51 +01:00
Florian Bruhin
1b879faf84
completion: Highlight text case-insensitively.
...
See #531 .
2015-03-11 07:50:45 +01:00
Florian Bruhin
5b4f6d39c2
Add a dumb sorting option to CompletionFilterModel.
...
This makes it possible to use Qt's QSortFilterProxyModel::lessThan option for
completions where it doesn't make sense to priorize matches starting with the
entered string, e.g. for URLs. In return, we get a *much* better performance
(several seconds when opening the completion).
See #531 .
2015-03-11 07:50:33 +01:00
Florian Bruhin
1ead66a4d5
quickmarks: Ignore empty and whitespace-only lines.
2015-03-10 23:25:02 +01:00
Florian Bruhin
acc33b4f91
Add a -f/--force argument to :bind.
2015-03-10 22:32:11 +01:00
Florian Bruhin
aca44da26e
Force saving with :save even w/o auto-save-config.
2015-03-10 22:24:34 +01:00
Florian Bruhin
596bff0772
Don't try to add tab repr in TabDeletedError.
...
This will always fail with another RuntimeError...
2015-03-10 22:16:41 +01:00
Florian Bruhin
d87a1bb2b4
Add a hints -> scatter option.
...
This is enabled by default to keep the same default behaviour which is like
Vimium - mixing e.g. single-char letters and double-char letters, and
scattering/shuffling the labels to have an uniform hint key distribution.
If disabled, the behaviour is more similiar to dwb, which has a fixed hint
string length and simply fills the string starting with the first possible hint
char.
2015-03-10 21:19:47 +01:00
Florian Bruhin
2f0522ebb0
Add a --rapid option to :hint, remove rapid target
...
This makes it possible to use rapid hinting for the run/hover/userscript/spawn
targets as well, and makes more sense anyways.
2015-03-10 19:40:30 +01:00
Florian Bruhin
4b6d49e926
Make QSslError hashable for Qt <= 5.4.
...
PyQt uses qHash() for __hash__, and qHash for QSslError was added with Qt 5.4.
This means 2da45e98ca
raised TypeError there as
QSslError is unhashable.
For those older Qt versions, we implement __hash__ ourselves which does about
the same thing as Qt does, combining the DER (binary) representation of the
certificate and the error() (which is just a QEnum, hashable as int).
2015-03-10 08:29:56 +01:00
Florian Bruhin
2da45e98ca
Auto-handle equal SSL errors for the same host.
...
For every (scheme, host, port) tuple, we save all SSL errors we asked the user
about, and if everything matches (scheme, host, port, error, certificate), we
don't ask the user again.
Fixes #422 .
2015-03-10 07:58:40 +01:00
Florian Bruhin
8307b546b7
Adjust prompt size hint based on content.
...
See #26 .
Fixes #506 .
Related to 06cc982ab5
.
2015-03-09 19:35:50 +01:00
Florian Bruhin
9ffb30a16f
Ignore RuntimeError in mouserelease_insertmode.
...
It seems when clicking certain elements, the webview can get deleted before the
singleShot QTimer will activate.
2015-03-09 11:49:01 +01:00
Florian Bruhin
e78fa431c5
Hide Qt warning when aborting download reply.
2015-03-09 07:49:02 +01:00
Florian Bruhin
6a16875f50
Fix retrying of downloads from closed tabs.
...
Fixes #502 .
2015-03-09 07:39:40 +01:00
Florian Bruhin
bfc114ae35
Fix lint
2015-03-08 23:15:35 +01:00
Florian Bruhin
181bcc4f8d
Add tests for lineparser.
2015-03-08 22:13:29 +01:00
Florian Bruhin
60b6519b04
lineparser: Call _prepare_save() properly.
2015-03-08 21:53:42 +01:00
Florian Bruhin
181426b50a
AppendLineParser: Strip newlines in __iter__.
2015-03-08 21:53:42 +01:00
Florian Bruhin
2010e8115b
lineparser: Rename _open_for_reading to _open.
2015-03-08 21:53:42 +01:00
Florian Bruhin
27f4ada799
Add AppendLineParser and use it in WebHistory.
...
The former approach (always reading the whole history from disk) was rather
inefficient, and we had performance problems e.g. when marking text in Qt
documentation.
2015-03-08 21:53:42 +01:00
Florian Bruhin
5b4b793538
Split LineParser into multiple classes.
...
There is now:
- BaseLineParser
- LineParser
- LimitLineParser
2015-03-08 21:53:42 +01:00
Florian Bruhin
99de995813
Rename/move config.parsers.line.LineConfigParser.
...
It's now misc.lineparser.LineParser since it handles other stuff than just
config.
2015-03-08 21:53:42 +01:00
Florian Bruhin
ee8beb174d
Fix :tab-clone -w (i.e. back -w). Fixes #536 .
2015-03-08 15:02:18 +01:00
Florian Bruhin
cd34562d34
Fix :tab-clone with tabs -> tabs-are-windows=true.
...
See #536 .
2015-03-08 14:54:42 +01:00
Florian Bruhin
f7b036cf15
Merge branch 'oed-download_filename_handling'
2015-03-06 17:06:01 +01:00
Florian Bruhin
edf762e210
Avoid pylint duplicate-code warning.
2015-03-06 17:04:56 +01:00
Florian Bruhin
858131c9bc
Merge branch 'download_filename_handling' of https://github.com/oed/qutebrowser into oed-download_filename_handling
2015-03-06 16:39:44 +01:00
Florian Bruhin
0827ddec86
utils.log: Simplify stack printing on Qt warnings.
2015-03-06 16:33:22 +01:00
Florian Bruhin
3e5b9a4a4a
log.utils: Add Qt warning filter context manager.
2015-03-06 16:32:26 +01:00
Florian Bruhin
2c9b5f24fc
Use _shutting_down instead of disconnecting signal
...
This will most likely cause less pain than disconnecting the signal, which
seems to be broken on OS X.
2015-03-06 16:29:04 +01:00
Florian Bruhin
034f1136d3
Add missing qutebrowser.test.log module.
2015-03-06 16:28:30 +01:00
Joel Torstensson
0fb74da4ff
Can now handle relative paths.
2015-03-05 23:44:12 +01:00
Florian Bruhin
7ed8f3d4ac
unittests: Set up logging properly.
2015-03-05 23:41:46 +01:00
Florian Bruhin
7c125642b9
Hide "Error while shutting down tabs" message.
...
This makes no sense at all, yet seems to happen when closing qutebrowser on OS
X via Cmd+Q.
2015-03-05 21:46:56 +01:00
Joel Torstensson
d449a60078
Fixed bug using download dirs with trailing slash.
2015-03-05 20:33:02 +01:00
Joel Torstensson
9cfa34c009
Readded suggested_filename fallback.
2015-03-05 20:17:48 +01:00
Florian Bruhin
61a52f3b91
command: Check the completion/argument counts.
...
See #531 .
2015-03-05 06:20:55 +01:00
Joel Torstensson
7d48845afa
Made static functions private.
2015-03-04 23:05:23 +01:00
Florian Bruhin
ebae77e8c5
Fix lint.
2015-03-04 20:52:33 +01:00
Florian Bruhin
e5ebea80b3
Add qApp.quit atexit handler in tests.
...
This FINALLY fixes the test segfaults on Windows 8.
2015-03-04 20:48:58 +01:00
Florian Bruhin
be6ea2f0e8
Call QApplication.processEvents on exit.
2015-03-04 20:26:19 +01:00
Florian Bruhin
e431f09fab
test_editor: Fix handling of statusbar messages.
2015-03-04 20:25:57 +01:00
Joel Torstensson
4e7e97232e
Downloads using get_request specifying only path now works.
2015-03-04 12:24:26 +01:00
Joel Torstensson
49c666a4a8
get_request is now correct.
2015-03-04 12:06:08 +01:00
Joel Torstensson
68774a2c75
Style fixes.
2015-03-04 11:31:54 +01:00
Joel Torstensson
8e0c1cff7b
Made download suggestion configurable.
...
Fix #505
2015-03-04 11:31:54 +01:00
Joel Torstensson
82deaeed2e
Downloads now shows path in question.
2015-03-04 11:29:36 +01:00
Florian Bruhin
40af99bacc
Clear open target in acceptNavigationRequest.
...
This is a regression introduced in a76868c0f4
.
Fixes #530 .
2015-03-03 23:28:45 +01:00
Florian Bruhin
801f6b2667
Fix handling of signals with deleted tabs.
2015-03-03 23:22:29 +01:00
Gregor Pohl
c8c095d499
Add Opera-like mouse rocker gestures.
2015-03-03 12:58:32 +01:00
Florian Bruhin
f19eba3b40
Don't log cur_link_hovered signals.
2015-03-03 09:07:30 +01:00
Florian Bruhin
21ab5f8685
Add logging for acceptNavigationRequest.
2015-03-03 09:06:43 +01:00
Florian Bruhin
65f21fc8ee
Use unittest.mock.patch for tests. Closes #76 .
2015-03-01 22:10:16 +01:00
Florian Bruhin
c0eb8daff7
Add tests for keyinput->partial-timeout.
2015-03-01 21:35:14 +01:00
Florian Bruhin
003f7fd957
tests: Improve FakeTimer.
2015-03-01 21:30:22 +01:00
Florian Bruhin
bb2caaa11d
Suppress Qt warning in unittests.
2015-03-01 21:30:22 +01:00
Florian Bruhin
84643b4a39
Various unittest fixes and improvements.
2015-02-27 12:43:54 +01:00
Florian Bruhin
072210c47b
Log rfc6266 UnicodeDecodeError to correct logger.
2015-02-27 12:35:46 +01:00
Florian Bruhin
e696898c4a
Add input -> partial-timeout option to clear partial keystrings.
2015-02-27 10:59:03 +01:00
Florian Bruhin
42e2438efb
Return Match instead bool in _handle_single_key.
2015-02-27 10:59:03 +01:00
Florian Bruhin
d66997610b
Use a single Timer for ambigious keybindings.
2015-02-27 10:59:03 +01:00
Florian Bruhin
bfd0a3fbc2
Fix AttributeError when doing extended hinting.
2015-02-27 08:44:44 +01:00
Florian Bruhin
561ebd07f9
Make it possible to use :open -[twb] without url.
2015-02-27 08:10:00 +01:00
Florian Bruhin
5f46870594
Add a FuzzyUrl config type.
2015-02-27 08:08:46 +01:00
Florian Bruhin
6d51fcfb2e
Add a do_search argument to fuzzy_url.
...
This turns off searching no matter what autosearch is set to, and also makes it
possible to use fuzzy_url before the config is up.
For now, we use this for quickmarks and the startpage.
2015-02-27 08:07:40 +01:00
Florian Bruhin
a76868c0f4
Refactor how click/hint open targets are handled.
2015-02-26 20:41:04 +01:00
Florian Bruhin
fa0bfaa49e
Merge branch 'master' of ssh://tonks/qutebrowser
2015-02-26 20:21:00 +01:00
Florian Bruhin
eb8bad3d18
Reset open_target in acceptNavigationRequest.
...
After ddb39275eb
, when something was opened via
hints in a new tab, the open_target still was set afterwards and the next
regular open did open in a new tab.
2015-02-26 20:17:01 +01:00
Florian Bruhin
a12dee8898
hints: Include button in buttons().
...
From the QMouseEvent::buttons documentation:
For mouse move events, this is all buttons that are pressed down. For mouse
press and double click events this includes the button that caused the
event. For mouse release events this excludes the button that caused the
event.
2015-02-26 20:12:48 +01:00
Florian Bruhin
ddb39275eb
Simulate Ctrl-click when hinting in new tab/win.
...
This works around the fact some pages (e.g. github) load their content via AJAX
on a normal left click, so we'll never get acceptNavigationRequest and thus
can't open them in a new tab.
Fixes #488 .
2015-02-26 20:11:13 +01:00
Florian Bruhin
4b4bb3af88
Handle NavigationTypeOther acceptNavigationRequest
...
This fixes hinting in some cases where javascript is used to load content, e.g.
on duckduckgo. However it still doesn't seem to help with github files etc.
See #488 .
2015-02-26 20:04:00 +01:00
Florian Bruhin
0ebef4069e
Remove debug console completing completely.
...
Turns out pylint doesn't like it if stuff is unused because we commented code
out ;)
2015-02-26 17:56:45 +01:00
Florian Bruhin
813ce9a513
Disable completion for debug console.
...
As long as it's broken it's more annoying rather than useful.
See #117 .
2015-02-26 17:48:47 +01:00
Florian Bruhin
8e0dddf86a
Restore sys.std* in utils.fake_io on exceptions.
2015-02-26 17:47:07 +01:00
Florian Bruhin
fcbd69e209
Clean up standarddir handling #2 .
...
We already attempted this in c5a2039da4
, but
having the directories as module attributes means they'll be created on start
(rather than when they're actually used), and it'd also be impossible to change
them after init for some reason in the future.
To still have a nice short API, we simply change the attributes to functions.
2015-02-26 07:01:22 +01:00
Florian Bruhin
0d9bf5e2c9
Fix lint.
2015-02-26 06:13:27 +01:00
Samir Benmendil
81af41d77f
Add option to set minimum number of chars in hints
2015-02-26 00:49:50 +00:00
Florian Bruhin
1dc9862c0b
Allow font names with integers in them.
2015-02-25 23:20:09 +01:00
Florian Bruhin
1d27dcca81
Ignore RuntimeError because of deleted Question.
2015-02-25 23:12:23 +01:00
Florian Bruhin
31d9018fc4
Disable insecure SSL ciphers (< 128bit) for Qt 5.2.
...
This is only an issue for the users which are stuck on Ubuntu Trusty.
2015-02-25 21:07:44 +01:00
Florian Bruhin
0fcd016427
Move cursor to end of textboxes when hinting.
2015-02-25 19:56:03 +01:00
Florian Bruhin
9d716d74b4
Fix lint.
2015-02-25 18:01:30 +01:00
Florian Bruhin
891c07f7e3
Merge branch 'master' of ssh://tonks/qutebrowser
2015-02-25 17:27:01 +01:00
Florian Bruhin
caad56c978
Print stacktrace on Qt warnings.
2015-02-24 07:12:25 +01:00
Florian Bruhin
0f9a1fe178
Display ImportError messages in earlyinit errors.
2015-02-23 15:16:30 +01:00
Florian Bruhin
94434ea739
Decorate DownloadItem slots with @pyqtSlot.
...
Before, using the right-click menu to cancel the download didn't actually
cancel it, as the QAction.toggled signal was emitted with checked=False which
got interpreted as remove_data=False.
2015-02-23 10:01:37 +01:00
Florian Bruhin
c5a2039da4
Refactor QStandardPaths handling.
2015-02-22 19:13:51 +01:00
Florian Bruhin
cabe5bf2a3
Use the real argparser instance for qtutils tests.
2015-02-22 12:10:42 +01:00
Florian Bruhin
617cd8977b
Add --qt-name argument. See #514 .
2015-02-21 18:53:01 +01:00
Florian Bruhin
359482b511
Fix getting Qt arguments.
2015-02-21 18:52:14 +01:00
Florian Bruhin
0ccb104f48
Merge branch 'master' of ssh://tonks/qutebrowser
2015-02-20 17:35:31 +01:00
Florian Bruhin
05d8a2429b
tests: Fix double tearDown.
2015-02-20 09:27:41 +01:00
Florian Bruhin
42c8acc7aa
Fix lint
2015-02-20 09:23:06 +01:00
Florian Bruhin
f33bc7bf31
tests: Get rid of second QCoreApplication.
2015-02-20 09:21:59 +01:00
Florian Bruhin
684f0d3df5
Fix starting with -c '' again.
2015-02-20 09:12:56 +01:00
Florian Bruhin
5fe85d0dde
Add test for starting with -c ''.
2015-02-20 09:09:35 +01:00
Florian Bruhin
60d4305cc4
tests: Adjust environ_set_temp to take a dict.
2015-02-20 08:34:24 +01:00
Florian Bruhin
634028e277
Fix QIODevice warnings when closing tabs.
...
This is a regression introduced in 43c9d69295
.
Fixes #517 .
2015-02-20 07:43:40 +01:00
Florian Bruhin
14f2420500
Fix wrong parsing of faulthandler logs.
2015-02-19 22:45:37 +01:00
Florian Bruhin
a41331a402
Remove test QApplication "fix" again.
...
This causes more segfaults than it prevents...
2015-02-19 22:41:36 +01:00
Florian Bruhin
87951ee3a8
Fix crash when closing tabs on Qt 5.2.1 (Trusty)
...
This issue was introduced in 8f1d81a644
.
2015-02-19 22:20:39 +01:00
Florian Bruhin
b5d3b264e8
Merge branch 'master' of ssh://tonks/qutebrowser
2015-02-19 21:38:11 +01:00
Florian Bruhin
2d4b03fbc9
Improve parsing of faulthandler logs.
2015-02-19 21:38:02 +01:00
Florian Bruhin
81fb57bbf0
Revert "Try another workaround for broken Windows tests."
...
This reverts commit 852fe2f84c
.
2015-02-19 16:59:33 +01:00
Florian Bruhin
852fe2f84c
Try another workaround for broken Windows tests.
2015-02-19 10:41:04 +01:00
Florian Bruhin
7dd908bd51
Try calling sip.delete on the test QApplication.
...
Maybe this helps with the unit tests on Windows?
2015-02-19 10:03:19 +01:00
Florian Bruhin
543c6cb90b
Quit test QApplication properly.
...
Maybe this fixes the hangs and crashes on the Windows buildbots?
2015-02-19 07:46:08 +01:00
Florian Bruhin
3d5012ccca
Rename 'Allowed' header for value completions.
2015-02-19 07:10:40 +01:00
Florian Bruhin
dc9e2a9772
Add a list of common user agents to completion.
2015-02-19 07:09:34 +01:00
Florian Bruhin
8c32fb86e2
Make it possible to set options with ! in it.
...
This is needed for a quit! alias for example. The option was wrongly treated as
an inversion even though a value was given.
2015-02-18 23:06:35 +01:00
Florian Bruhin
ea2dba6b38
Merge branch 'master' of ssh://tonks/qutebrowser
2015-02-18 22:20:41 +01:00
Florian Bruhin
3d72235023
Set the QSettings path to a config-subdirectory.
...
QWebInspector uses QSettings to save its GUI-settings. However, the default
path for QSettings is ~/.config/qutebrowser/qutebrowser.conf which overwrites
our own config file.
This fixes one part of #515 .
2015-02-18 22:18:55 +01:00
Florian Bruhin
9534deb2e7
Add a context manager to unset organizationName.
2015-02-18 22:18:55 +01:00
Samir Benmendil
0ec05e071f
expand environment vars in settings accepting paths
2015-02-18 15:04:49 +00:00
Florian Bruhin
7a90d7fca8
Fix standarddir tests when XDG_*_HOME is set.
2015-02-18 13:47:15 +01:00
Florian Bruhin
83b636a0a7
Add some more tabhistory test URLs.
2015-02-18 07:10:46 +01:00
Florian Bruhin
62fb4b0d0b
Fix initial creating of config.
2015-02-17 22:43:32 +01:00
Florian Bruhin
b31a432a1a
Add options to ignore javascript prompts/alerts.
...
New options: content -> ignore-javascript-{prompt,alert}.
2015-02-17 19:03:18 +01:00
Florian Bruhin
238761bd5b
Don't write zoom to QWebHistory.
...
If we set the zoom, it seems WebCore sets its own zoom independent of the
QtWebKit zoom, which leads to funny effects.
2015-02-17 07:48:19 +01:00
Florian Bruhin
5b33f6c5fe
Re-add save-session setting.
2015-02-17 07:45:06 +01:00
Florian Bruhin
56b0ae2b6e
Get rid of mainwindow.MainWindow.spawn.
2015-02-16 22:56:12 +01:00
Florian Bruhin
d8fe62bc61
Add workaround for adblock-message without window.
2015-02-16 22:21:36 +01:00
Florian Bruhin
46ca0e447e
Get rid of the save-session setting for now.
...
With the way quitting is handled currently, it's hard to save the session on
quit as the windows will already be closed.
2015-02-16 21:33:24 +01:00
Florian Bruhin
8f1d81a644
Add session support.
...
Closes #12 .
See #499 .
See #11 .
This adds PyYAML as a new dependency.
It adds the following new commands:
:session-delete <name>
Delete a session.
:session-load <name>
Load a session.
:session-save [<name>]
Save a session.
:wq [<name>]
Save open pages and quit.
And the following new settings:
general -> save-session:
Whether to always save the open pages.
2015-02-16 20:26:09 +01:00
Florian Bruhin
53b024f246
docutils: Fix handling of ", or None ...".
2015-02-14 19:41:10 +01:00
Florian Bruhin
8e2e996369
Merge branch 'download_cmd_interface' of https://github.com/oed/qutebrowser into oed-download_cmd_interface
2015-02-14 19:06:47 +01:00
Joel Torstensson
4d2aa6a4d4
Fixed errors in update_indexes, etc.
2015-02-14 14:11:38 +01:00
Florian Bruhin
5817f3c18d
Split config init into three functions.
2015-02-14 00:25:26 +01:00
Florian Bruhin
66d3ec1c08
Make it possible to configure tab titles.
2015-02-13 23:57:31 +01:00
Florian Bruhin
1cf34e7984
Force saving the config if new options were added.
2015-02-13 23:53:56 +01:00
Florian Bruhin
a38a77b16b
Fix searching for terms starting with a slash.
...
Fixes #507 .
2015-02-13 22:27:21 +01:00
Florian Bruhin
94b51128d1
Whitespace fixes.
2015-02-13 22:19:45 +01:00
Florian Bruhin
44b21374cb
Fix :tab-clone.
...
We checked for None when getting the QColor, but now with the Python dict
instead of a QVariant that's a KeyError.
This is a regression introduced in 3cf9768f21
.
2015-02-13 19:33:53 +01:00
Florian Bruhin
3cf9768f21
Use a dict for tab data instead of a single value.
2015-02-13 18:59:59 +01:00
Florian Bruhin
e459e1a472
Fix loading of history with URLs containing spaces
...
Fixes #508 .
2015-02-13 18:58:44 +01:00
Florian Bruhin
1c5f036d4e
Merge branch 'master' of ssh://git/qutebrowser
2015-02-13 13:42:57 +01:00
Joel Torstensson
049a360abc
Fixed error messages.
2015-02-13 12:40:37 +01:00
Joel Torstensson
dfb801a0b7
dataChanged is now emited in update_indexes.
2015-02-12 23:29:05 +01:00
Joel Torstensson
9f0658f191
Minor fixes.
2015-02-12 22:21:30 +01:00
Joel Torstensson
8cd5f9e6d1
Implemented :download-delete.
2015-02-12 22:20:22 +01:00
Joel Torstensson
dd995c434c
:download-cancel now only cancels downloads that are done.
2015-02-12 21:17:23 +01:00
Joel Torstensson
1f39200b28
:download-open and :download-remove now complains if you try to execute on a download that is not done.
2015-02-12 21:05:53 +01:00
Joel Torstensson
91f7056649
Added indexes to download view.
2015-02-12 20:43:13 +01:00
Florian Bruhin
22fab87311
Ignore tab key presses if they'd switch focus.
...
If the mainwindow is focused but not the web view (e.g. in prompt mode), an
unbound tab key should be filtered so it doesn't change keyboard focus.
Fixes #504 .
2015-02-12 18:57:56 +01:00
Florian Bruhin
0b55f4df77
Fix starting with -c "".
...
This is a regression introduced in 9b1729c77e
.
2015-02-12 13:24:17 +01:00
Florian Bruhin
5a73f5d2c1
Release v0.1.3
2015-02-12 07:47:17 +01:00
Florian Bruhin
c2f9cae770
Don't show line edit text in its repr().
...
Previously we showed self.text in the __repr__ of MinimalLineEdit. This however
is a bad idea, because it exposes passwords to the debug log when the currently
focused widget is logged.
2015-02-11 23:33:31 +01:00
Joel Torstensson
658ab70e98
:download-open now also checks whether download was successful.
2015-02-11 22:13:29 +01:00
Florian Bruhin
d4ef66714f
Deny HTML5 permissions when question is cancelled.
...
Before we just ignored the request but deleted the Question object, which lead
to a RuntimeError when the question was cancelled and the page was reloaded,
because on_permission_canceled tried to abort the question.
2015-02-10 21:15:17 +01:00
Florian Bruhin
e44c5aee5b
Add config options for geolocation/notifications.
2015-02-10 21:09:08 +01:00
Joel Torstensson
6e3d5867f9
Fixed docs.
2015-02-09 17:38:50 +01:00
Joel Torstensson
55193803a1
Changed :downloads-clear to :download-remove.
2015-02-09 17:17:34 +01:00
Joel Torstensson
e9da7b5391
:download-open now only opens finished downloads.
2015-02-09 17:03:02 +01:00
Florian Bruhin
43c9d69295
Handle shutdown of page with prompt correctly.
...
Before we didn't cancel javascript prompts when a page was closed, which lead
to exceptions or segfaults.
2015-02-09 15:41:27 +01:00
Florian Bruhin
bc43fb5e4c
Implement requests for geolocation/notifications.
...
Closes #503 .
2015-02-09 15:32:26 +01:00
Joel Torstensson
767ca42e46
Some style fixes.
2015-02-09 12:06:49 +01:00
Florian Bruhin
494825fed0
Don't log statusbar messages in signalfilter.
2015-02-09 07:50:32 +01:00
Florian Bruhin
4704e81b41
Don't log javascript console messages by default.
2015-02-09 07:46:31 +01:00
Florian Bruhin
0f48ea62c1
Keep more debug log in memory.
2015-02-09 07:34:12 +01:00
Joel Torstensson
6bbb655a54
Fixed bug when specifying filename on download.
2015-02-08 22:21:34 +01:00
Joel Torstensson
9428338389
Merged :download and :download-page.
...
Fix #449
2015-02-08 22:08:16 +01:00
Joel Torstensson
6f89ab628b
More command actions on downloads.
2015-02-08 22:03:29 +01:00
Florian Bruhin
31e71ed6d9
Fix copyright years.
...
Files created in 2015 don't need to have 2014 as copyright year.
2015-02-06 00:21:57 +01:00
Florian Bruhin
514ae1e798
Add periods for argparse help texts.
2015-02-05 08:29:13 +01:00
Florian Bruhin
f78b21874f
Add -p/--print argument to :set to print value.
2015-02-05 07:58:51 +01:00
Florian Bruhin
7615e20091
Add -s argument to set temporary options.
2015-02-05 07:54:19 +01:00
Florian Bruhin
5ed592a447
Replace some QTimers by named Timers.
2015-02-05 07:17:58 +01:00
Florian Bruhin
370c182f48
Fix header encoding in FakeNetworkReply test stub.
...
This was broken since ef9ddb2d5f
but we never
noticed it, as an __init__.py was missing in the test folder since
06ec1a3885
.
2015-02-05 07:12:36 +01:00
Florian Bruhin
0957d5df8e
Make tests for browser.http run again.
2015-02-05 06:59:00 +01:00
Florian Bruhin
fba2b2b5ae
fuzzy_url: handle invalid URLs with autosearch off
...
Fixes #497 .
2015-02-02 22:24:01 +01:00
Florian Bruhin
a95dda8e92
Handle explicit searches with auto-search=false.
...
See #497 .
2015-02-02 22:19:43 +01:00
Florian Bruhin
cbde36948a
Abort download override question on error/cancel.
...
If a download error occured or the user cancelled the download during the file
override question, an exception occured as the download was no longer valid
when the question was answered.
See #416 .
2015-02-02 06:53:55 +01:00
Florian Bruhin
18b58b2001
Set a higher z-index for hint labels.
...
This fixes hinting on the youtube top bar.
Fixes #496 .
2015-02-02 06:35:45 +01:00
Florian Bruhin
59a11c178f
Don't open relative files in fuzzy_url with :open
...
With most actions which use fuzzy_url (:open/quickmarks/etc.) it's rather
confusing when relative files are opened - the only place where they should be
opened is when we're processing a commandline argument.
2015-02-01 23:55:37 +01:00
Florian Bruhin
9b1729c77e
Always write config files to disk on first start.
2015-02-01 23:47:40 +01:00
Florian Bruhin
1c919967bb
Send history (optionally) in fatal crash dialog.
2015-02-01 23:12:46 +01:00
Florian Bruhin
2f01c7c3ae
Minor style adjustments in crashdialog.py.
2015-02-01 23:12:32 +01:00
Florian Bruhin
dc6aaecc78
Add __getitem__ to WebHistory.
2015-02-01 23:12:02 +01:00
Florian Bruhin
d9ae2183e8
Initialize web history earlier.
...
This is needed when displaying the history in the segfault report dialog.
2015-02-01 23:11:30 +01:00
Florian Bruhin
503fc9f56b
Re-enable some flake8 checks.
2015-02-01 22:38:40 +01:00
Florian Bruhin
33a2181e31
Record global page history to disk.
...
We currently don't do anything with it yet, but people could use it in scripts
already and we have the history later when completion or other stuff will be
added based on it.
See #33 .
2015-02-01 22:27:58 +01:00
Florian Bruhin
1266f147c8
Auto-save state/config/... periodically.
...
See #15 .
2015-02-01 01:38:16 +01:00
Florian Bruhin
822bf90b26
Fix another speeling mistake.
2015-02-01 01:22:46 +01:00
Florian Bruhin
3b667325ca
Move initializing of version/geometry saveables.
2015-02-01 01:22:24 +01:00
Florian Bruhin
43c5dc3bf6
Refactor saving logic, only save stuff if modified.
...
Fixes #113 .
See #11 .
2015-02-01 00:43:07 +01:00
Florian Bruhin
d6e87a2672
Hide adblocked iframes.
...
We now hide iframes which have been blocked completely instead of displaying an
error page in there. Displaying the error page also did break back/forward,
e.g. on reddit.
Fixes #493 .
2015-01-31 22:38:31 +01:00
Florian Bruhin
9736224fa6
Close contextmenu when closing tab to avoid crash.
...
Fixes #494 .
2015-01-31 21:01:03 +01:00
Florian Bruhin
55649882a0
Revert "Paste primary selection into forms on Shift-Insert."
...
This reverts commit 68a0428a09
.
Even if this works fine for me, various people reported segfault issues when
using Shift-Insert, so I'm reverting this for now until I find a proper
solution.
See #491 .
2015-01-30 11:50:05 +01:00
Florian Bruhin
c40e70ed11
Revert "Also copy QByteArray of clipboard data."
...
This reverts commit 4138debd1e
.
It seems even with this, there are still weird segfault issues.
See #491 .
2015-01-30 11:48:40 +01:00
Florian Bruhin
6bf87dd1d7
Fix statusbar quickly popping up as window.
2015-01-30 11:36:07 +01:00
Florian Bruhin
4138debd1e
Also copy QByteArray of clipboard data.
...
This could possibly fix segfaults some people have seen when pasting after
68a0428a09
.
See #491 .
2015-01-30 06:42:55 +01:00
Florian Bruhin
b721a0e992
Clean up NetworkManager after downloads finished.
...
Fixes #490 .
2015-01-28 22:52:24 +01:00
Florian Bruhin
66ec4f0599
Resize completion when it's shown, and only then.
...
Before this, we always resized the completion when the mainwindow was resized.
If the statusbar is hidden during the resize (ui -> hide-statusbar is true), we
got an invalid calculated QRect for the completion, causing the update to be
not applied at all - so the completion showed up incorrectly.
With this change, another resize is done when the completion is shown - at this
point it's certain the statusbar is visible. Also we only update it while it's
shown - it doesn't make sense to always adjust its size when it's hidden
anyways.
2015-01-28 22:16:22 +01:00
Florian Bruhin
81b91888f4
Add logging to completion resizing.
2015-01-28 22:15:57 +01:00
Florian Bruhin
1526cf1532
Merge branch 'master' of ssh://tonks/qutebrowser
2015-01-28 08:43:48 +01:00
Florian Bruhin
b9f16804f7
Make the window title configurable.
...
Closes #489 .
2015-01-28 08:40:16 +01:00
Florian Bruhin
68a0428a09
Paste primary selection into forms on Shift-Insert.
...
Closes #491 .
2015-01-28 06:56:38 +01:00
Florian Bruhin
d90814aabe
Fix restoring of cmd widget after an error.
...
We accidentally restored the prompt widget instead of the command widget when
an immediate error message interrupted command mode.
Fixes #487 .
2015-01-27 21:18:24 +01:00
Florian Bruhin
4c87287f4e
Don't set up on_ssl_errors slot without SSL.
2015-01-26 13:23:41 +01:00
Florian Bruhin
7169d02609
Support running qutebrowser without SSL.
2015-01-26 13:15:08 +01:00
Florian Bruhin
bc380fca61
Clone zoom factor when cloning tab.
2015-01-26 07:20:03 +01:00
Florian Bruhin
ab2d2d79ca
Clone text/icon as well when cloning tabs.
...
Closes #316 .
2015-01-26 07:18:07 +01:00
Florian Bruhin
6576796718
Fix retrying of downloads after the tab is closed.
2015-01-25 23:53:23 +01:00
Florian Bruhin
cd39be62ee
Show loading percentage in window title.
2015-01-25 23:25:08 +01:00
Florian Bruhin
fe90b153ed
Add new option ui->hide-statusbar to hide the bar.
...
Closes #486 .
2015-01-25 22:41:19 +01:00
Florian Bruhin
8ffc1a3966
Change tabwidget calls from autohide to _tabhide.
2015-01-25 22:29:20 +01:00
Florian Bruhin
41fd89a206
crashdialog: Shorten paste titles.
...
Unfortunately the maximum char count for paste titles is 32...
2015-01-25 22:14:55 +01:00
Florian Bruhin
323db55a9c
Remove restore checkbox from fatal report dialog.
2015-01-25 21:46:48 +01:00
Florian Bruhin
bd0a3a86d9
Display error on qt_mainloop crashes with old Qt.
...
See #447 .
2015-01-25 21:37:28 +01:00
Florian Bruhin
09ea733231
Use qVersion() instead of QT_VERSION_STR.
2015-01-25 21:12:50 +01:00
Florian Bruhin
9702433d4e
Crash dialog redesign.
...
We now have "Report/Don't report" buttons and a restart checkbox (checked by
default), so users don't accidentally send reports when they don't want to.
2015-01-24 20:28:44 +01:00
Florian Bruhin
0d93d1eaff
Minor style fixes.
2015-01-24 18:10:24 +01:00
Florian Bruhin
6ab65eb9d3
Merge branch 'toggletab' of https://github.com/smalltock/qutebrowser into smalltock-toggletab
2015-01-24 18:04:24 +01:00
Florian Bruhin
1d167fa428
Fix duplicate method name in crashdialog tests.
2015-01-24 17:45:39 +01:00
Florian Bruhin
3edffefff4
Fix qutebrowser.misc tests.
...
After the utils -> misc rename, we forgot an __init__.py, which means these
tests did never run.
2015-01-24 14:48:16 +01:00
Florian Bruhin
5b3b324331
Produce better titles for crash logs.
...
See #483 and #447 .
2015-01-24 14:48:16 +01:00
ZDarian
62adc5ffe3
remove extra newline
2015-01-23 20:46:52 -07:00
Florian Bruhin
ca590c5df7
Fix lint
2015-01-23 15:10:44 +01:00
Florian Bruhin
0587cc8b1d
Really fix pylint and unicodedata.category.
2015-01-23 15:06:51 +01:00
Florian Bruhin
d7c7e91f2b
pylint: Ignore no-member for unicodedata.category.
...
This seems to be broken for pylint since #463 on Windows, so we just ignore the
warning there.
2015-01-23 14:40:40 +01:00
ZDarian
a08b814e5f
Accidentally left in print() used for testing
2015-01-23 06:35:06 -07:00
ZDarian
00f67135ae
Fixed tabbar visibility update
2015-01-23 06:34:01 -07:00
Florian Bruhin
b387b4c7a9
Merge branch 'master' of ssh://git/qutebrowser
2015-01-22 10:41:58 +01:00
ZDarian
d7b5f2bf52
Remove always-hide from changed cfg
2015-01-21 23:21:43 -07:00
Florian Bruhin
5c92144f6b
Fix spawn --userscript with multiple args.
...
This is a regression introduced in 4485e4ee1b
.
We didn't unpack the argument list properly before passing it to
run_userscripts.
Fixes #476 .
See #448 .
2015-01-22 07:10:32 +01:00
Thorsten Wißmann
5d5e26eb7b
Fix some check_libraries() for arch
...
By now, the python-jinja and python-pygments packages are available in
community.
2015-01-22 07:01:35 +01:00
Florian Bruhin
5a0a0302df
Merge branch 'new-pylint'
2015-01-22 07:00:01 +01:00
Florian Bruhin
3b6a504d7b
crashdialog: Move contact info to top.
...
See #447 .
2015-01-22 06:58:37 +01:00
Florian Bruhin
aa3017dd58
crashdialog: Reword contact info text.
...
See #447 .
2015-01-22 06:56:45 +01:00
Florian Bruhin
50557a9b3e
crashdialog: Remove Github from contact types.
...
See #447 .
2015-01-22 06:56:23 +01:00
ZDarian
dffa7ccf46
Merge branch 'master' of https://github.com/The-Compiler/qutebrowser into toggletab
2015-01-21 20:51:43 -07:00
ZDarian
ef5412f596
tab *-hide -> tab hide-*
2015-01-21 20:50:30 -07:00
ZDarian
335f72a93f
perm-hide -> always-hide
2015-01-21 07:27:08 -07:00
ZDarian
5100f6fc8f
better type check; -'aborting'
2015-01-21 07:24:05 -07:00
Florian Bruhin
6d3f871119
Add workaround for unknown pylint no-member bug.
2015-01-21 00:01:05 +01:00
Peter Vilim
c30978be2f
Add quotes for empty default value
2015-01-19 13:17:17 -06:00
ZDarian
52afa1a479
Added permanent (count-independent) tab hide according to perm-hide variable.
2015-01-18 07:39:26 -07:00
ZDarian
3c21d5986e
Added toggle ability to :set
...
Append '!' to option name of boolean value to toggle its state.
2015-01-18 07:34:33 -07:00
Florian Bruhin
b3b576f5d2
Handle all IPCErrors properly.
2015-01-16 11:34:15 +01:00
Florian Bruhin
c98bfa9a9d
Move version info more to the top in logs.
2015-01-16 09:22:22 +01:00
Florian Bruhin
aae33a0308
Handle another webelem.IsNullError with hints.
2015-01-16 09:09:12 +01:00
Florian Bruhin
dbd0d1fff9
Save report dialog contact infomation.
2015-01-16 07:36:38 +01:00
Florian Bruhin
4f1e0d32b0
Handle UnicodeDecodeError when reading configs.
...
(WTF are you guys doing?!)
2015-01-16 07:10:12 +01:00
Florian Bruhin
4485e4ee1b
Merge :run-userscripts into :spawn.
...
:run-userscripts is now marked as deprecated, and :spawn has a new
-u/--userscript option instead.
Closes #448 .
2015-01-15 22:29:06 +01:00
Florian Bruhin
a32f1e6180
Make it possible to deprecate commands.
...
See #448 .
2015-01-15 22:29:00 +01:00
Florian Bruhin
223f8f243e
Make it possible to display warnings in the bar.
...
Closes #114 .
2015-01-15 22:29:00 +01:00
Florian Bruhin
48c83505df
Bump master to v0.1.2
2015-01-10 00:08:38 +01:00
Florian Bruhin
8c227324fe
Use qurl_from_user_input() in urlutils.is_url().
...
It seems 354018efcd
broke IPv6 IPs on older Qt
versions:
======================================================================
FAIL: test_urls (qutebrowser.test.utils.test_urlutils.IsUrlTests) (url='2001:41d0:2:6c11::1')
Test things which are URLs.
----------------------------------------------------------------------
Traceback (most recent call last):
File "/var/lib/buildbot/slaves/slave/ubuntu-utopic/build/qutebrowser/test/utils/test_urlutils.py", line 168, in test_urls
self.assertTrue(urlutils.is_url(url), url)
AssertionError: False is not true : 2001:41d0:2:6c11::1
2015-01-09 22:13:23 +01:00
Florian Bruhin
a412814dee
Enter KeyMode.normal directly in ModeManager.
...
We used to enter KeyMode.none and then with a zero-time singleShot QTimer enter
the normal mode. This doesn't really make sense, and caused an exception if a
keypress was processed before the timer fired.
Fixes #433 .
2015-01-09 21:49:39 +01:00
Florian Bruhin
d147ba90d4
Remove old comment.
2015-01-09 21:49:39 +01:00
Florian Bruhin
354018efcd
Make sure QUrl::fromUserInput is valid in is_url.
...
Fixes #460 .
Without this fix, it's possible for URLs to be valid according to is_url, but
not according to QUrl::fromUserInput, e.g. "http:foo:0". This caused an
exception later because fuzzy_url runs qtutils.ensure_valid.
2015-01-09 21:49:26 +01:00
Florian Bruhin
3eac528716
Switch Qt style to Fusion on OS X on Qt 5.4.
...
Fixes #462 .
See #459 .
Upstream bugs:
https://bugreports.qt.io/browse/QTBUG-42948
https://bugreports.qt.io/browse/QTBUG-43070
2015-01-09 15:43:03 +01:00