Florian Bruhin
e985730cbf
Simplify TempDownloadManager initialization
2016-11-04 18:49:24 +01:00
Florian Bruhin
7ca6996f39
Adjust imports
2016-11-04 18:49:24 +01:00
Florian Bruhin
0ac2b71304
Simplify how filename questions are handled
2016-11-04 18:49:24 +01:00
Florian Bruhin
3b51548d3a
More download splitting
2016-11-04 18:49:24 +01:00
Florian Bruhin
92b1bf2227
Get rid of win_id for DownloadItem
2016-11-04 18:49:24 +01:00
Florian Bruhin
12d798d54d
Continue download splitting
2016-11-04 18:49:24 +01:00
Florian Bruhin
5b04f1052f
Add DownloadItem.set_target
...
This allows us to make _set_fileobj private, and also makes some code
simpler.
2016-11-04 18:49:24 +01:00
Florian Bruhin
2c94efbf8a
First big download refactoring chunk
2016-11-04 18:49:24 +01:00
Florian Bruhin
352f83b95e
Rename DownloadItem.do_retry
2016-11-04 18:49:24 +01:00
Florian Bruhin
34b4dcf0d5
Make DownloadItem._retry_info private
2016-11-04 18:49:24 +01:00
Florian Bruhin
70e390a2e8
downloads: Simplify redirect handling
2016-11-04 18:49:24 +01:00
Florian Bruhin
7256641288
Prevent questions from being aborted twice
...
When we abort a question (e.g. by closing a tab with SSL errors) while
another prompt is queued, the right prompt gets closed by the question
being aborted, but that in turn aborts the question again, affecting the
next prompt.
2016-11-04 13:21:22 +01:00
Florian Bruhin
a16d41333b
Fix prompts while in command mode
2016-11-04 06:48:32 +01:00
Florian Bruhin
dd0ce8fe3b
Add some more prompt logging
2016-11-04 06:47:10 +01:00
Florian Bruhin
3a79faac16
Also hide existing prompts when showing a new one
...
Otherwise when a prompt is interrupted, we'd still see the older one.
2016-11-03 23:03:42 +01:00
Florian Bruhin
59b4ccc620
Rename max_height_padding
2016-11-03 09:29:27 +01:00
Florian Bruhin
a006ecffec
Add MainWindow._update_overlay_geometries()
2016-11-03 09:29:27 +01:00
Florian Bruhin
2b46228e3d
Customize prompt selection colors
...
Seems like if we make the foreground color configurable, the selection
isn't colored at all?!
2016-11-03 09:29:27 +01:00
Florian Bruhin
ebcae3a69c
Fix tabbing over .. in some directories on Windows
2016-11-03 08:40:42 +01:00
Florian Bruhin
0f03960525
Log if getting directory information failed
2016-11-03 08:40:42 +01:00
Florian Bruhin
732e7c260b
Handle empty path for file completion
...
This also allows us to select drives on Windows hopefully...
2016-11-03 08:40:42 +01:00
Florian Bruhin
cbf1a44b75
Fix handling of / as path
2016-11-03 08:40:42 +01:00
Florian Bruhin
16b3b7a262
Fix prompt positioning with top statusbar
2016-11-03 08:40:42 +01:00
Florian Bruhin
25bb720f09
Bound maximum size for prompts
2016-11-03 08:40:42 +01:00
Florian Bruhin
9cf5d645f0
Hide prompts correctly
...
We now make sure to hide prompts everywhere when the prompt mode was
left. We also make sure to hide the prompt widget before deleting, as it
might be deleted later.
2016-11-03 08:40:42 +01:00
Florian Bruhin
293a388ac6
Use HTML list for quit confirmation message
2016-11-03 08:40:42 +01:00
Florian Bruhin
fa1846ab0e
Adjust prompt path when backspacing a path
2016-11-03 08:40:42 +01:00
Florian Bruhin
60c6b7f0ab
Simplify FilenamePrompt._insert_text
2016-11-03 08:40:42 +01:00
Florian Bruhin
5b33978259
Improve comment
2016-11-03 08:40:42 +01:00
Florian Bruhin
4e793180c1
Fix completion in file prompts
2016-11-03 08:40:42 +01:00
Florian Bruhin
63c6381e18
Add blank line
2016-11-03 08:40:42 +01:00
Florian Bruhin
fdc4b2e2f6
Move setting FilenamePrompt lineedit text up
2016-11-03 08:40:42 +01:00
Florian Bruhin
7d1b1d354d
Remove duplicated docstrings
2016-11-03 08:40:42 +01:00
Florian Bruhin
14ecbc0cec
Use jinja for SSL error message
2016-11-03 08:40:42 +01:00
Florian Bruhin
28a32e680d
Add comment about HTML escaping
2016-11-03 08:40:42 +01:00
Florian Bruhin
64eeb95c30
Rename _init_title
2016-11-03 08:40:42 +01:00
Florian Bruhin
27f96943a2
Add missing html.escape
2016-11-03 08:40:42 +01:00
Florian Bruhin
efdcbd860e
Increase font size for prompt titles
2016-11-03 08:40:42 +01:00
Florian Bruhin
3b7f65d956
Show URL in most questions
2016-11-03 08:40:42 +01:00
Florian Bruhin
4ad741d26d
Simplify shutdown in app.py
2016-11-03 08:40:42 +01:00
Florian Bruhin
d85cfcbc07
Fix ask_for_filename call
2016-11-03 08:40:42 +01:00
Florian Bruhin
4552e06797
Only connect interrupted signal for questions once
2016-11-03 08:40:42 +01:00
Florian Bruhin
a87e46101c
Fix lint
2016-11-03 08:40:42 +01:00
Florian Bruhin
5ebaddfaf2
Ignore "Unexpected null parameter" warning
2016-11-03 08:40:42 +01:00
Florian Bruhin
1b3e9613ea
Fix mode handling with multi-window questions
...
When the prompt mode is left in any window, we need to take care of:
- Cancelling the question if needed (exactly once)
- Leaving the prompt mode in all other windows too
2016-11-03 08:40:42 +01:00
Florian Bruhin
4a360ba185
Simplify _set_fileview_root
2016-11-03 08:40:42 +01:00
Florian Bruhin
b0a04bff8e
Use OS-independent path separators
2016-11-03 08:40:42 +01:00
Florian Bruhin
54a694e35e
Hide prompts correctly after :prompt-download-open
2016-11-03 08:40:42 +01:00
Florian Bruhin
5eb66f2693
Restore self._question when restoring prompt
2016-11-03 08:40:42 +01:00
Florian Bruhin
6f83590553
Add some more logging for prompts
2016-11-03 08:40:42 +01:00
Florian Bruhin
dba29e518a
First working prototype of global prompts
2016-11-03 08:40:42 +01:00
Florian Bruhin
fdd1147620
Revert "Global prompt container"
...
This reverts commit c23beee6502776dd19c0955b311e8dfb9f1c77ae.
2016-11-03 08:40:42 +01:00
Florian Bruhin
1d6166b474
Global prompt container
2016-11-03 08:40:42 +01:00
Florian Bruhin
9ce1180b31
First attempt at showing prompts in all windows
2016-11-03 08:40:42 +01:00
Florian Bruhin
d5a1f6d6b5
Only support calling _init_key_label once
2016-11-03 08:40:42 +01:00
Florian Bruhin
fefc8c4eb2
Add more tests for prompts
2016-11-03 08:40:42 +01:00
Florian Bruhin
653ca9799d
Add a default for SSL questions
2016-11-03 08:40:41 +01:00
Florian Bruhin
20716c137c
Support tab completion for auth prompts again
2016-11-03 08:40:41 +01:00
Florian Bruhin
3ffcb011a7
Simplify key label for auth prompts
2016-11-03 08:40:41 +01:00
Florian Bruhin
9bdbb257ba
Add initial filename completion
2016-11-03 08:40:41 +01:00
Florian Bruhin
6ab51e0b7b
Handle clicking on file items in prompt
2016-11-03 08:40:41 +01:00
Florian Bruhin
acbd5107d6
Only show directories in download filename prompts
2016-11-03 08:40:41 +01:00
Florian Bruhin
46b24fc64a
Improve how file list is shown in download prompt
2016-11-03 08:40:41 +01:00
Florian Bruhin
6da6758263
Improve FilenamePrompt widget sizing
2016-11-03 08:40:41 +01:00
Florian Bruhin
741ecac9ef
More improvements for yesno prompt key hints
2016-11-03 08:40:41 +01:00
Florian Bruhin
7d63795613
Improve bindings output for yesno questions
2016-11-03 08:40:41 +01:00
Florian Bruhin
7d57d884d6
Add configuration options for prompts
2016-11-03 08:40:41 +01:00
Florian Bruhin
a33333eb41
Make the radius for prompt edges configurable
2016-11-03 08:40:41 +01:00
Florian Bruhin
dff20ffe35
Fix message.confirm_async calls
2016-11-03 08:40:41 +01:00
Florian Bruhin
bc4e340323
Save key mode to leave
...
Doing self._prompt.question.done() already sets self._prompt to the next
prompt or to None.
2016-11-03 08:40:41 +01:00
Florian Bruhin
80caed4642
Add missing docstring
2016-11-03 08:40:41 +01:00
Florian Bruhin
e110f3b590
Get rid of StatusBar._set_prompt_active
2016-11-03 08:40:41 +01:00
Florian Bruhin
fe59e0618f
Rename download_open function
2016-11-03 08:40:41 +01:00
Florian Bruhin
fe230219a9
Fix lint
2016-11-03 08:40:41 +01:00
Florian Bruhin
f4be35c981
Add a LineEdit subclass for prompts
2016-11-03 08:40:41 +01:00
Florian Bruhin
433afe8658
Handle invalid values with :prompt-accept
2016-11-03 08:40:41 +01:00
Florian Bruhin
051b31d101
Fix reinitializing of key label
2016-11-03 08:40:41 +01:00
Florian Bruhin
7d38430d2d
Fix confirm_async
2016-11-03 08:40:41 +01:00
Florian Bruhin
9c34a64f81
self._build_question fail
2016-11-03 08:40:41 +01:00
Florian Bruhin
04d24e3d94
Fix permission question
2016-11-03 08:40:41 +01:00
Florian Bruhin
75bb2265be
Take text as pos. argument for _build_question
2016-11-03 08:40:41 +01:00
Florian Bruhin
6d7748f05f
Add FilenamePrompt
2016-11-03 08:40:41 +01:00
Florian Bruhin
47208eb022
Fix :prompt-open-download
2016-11-03 08:40:41 +01:00
Florian Bruhin
d74b0109c7
Add key hints
2016-11-03 08:40:41 +01:00
Florian Bruhin
f0ed43ec20
Use message module as API for most questions
2016-11-03 08:40:41 +01:00
Florian Bruhin
756564ebff
Get rid of message_bridge.set_cmd_text
2016-11-03 08:40:41 +01:00
Florian Bruhin
523369882a
Add title/text to questions
2016-11-03 08:40:41 +01:00
Florian Bruhin
e3581a50ca
Remove generated stylesheets again
...
We can just use jinja logic instead...
2016-11-03 08:40:41 +01:00
Florian Bruhin
1f011bdd5f
Fix prompt focus handling
2016-11-03 08:40:41 +01:00
Florian Bruhin
33088588d9
half-working auth prompts
2016-11-03 08:40:41 +01:00
Florian Bruhin
903e31efa4
First prototype of new prompts
2016-11-03 08:40:41 +01:00
Cosmin Popescu
3692c86a7e
auto save session
2016-11-01 19:43:37 +01:00
Florian Bruhin
51a0c2a32c
Remove unused imports
2016-10-31 07:27:30 +01:00
Florian Bruhin
f12d87fabc
Only call sip.isdeleted on QObjects
2016-10-31 06:14:43 +01:00
Florian Bruhin
618e7650fe
Don't include deleted objects in objreg.dump_objects
2016-10-30 23:25:28 +01:00
Florian Bruhin
b4872192c3
Merge branch 'more-tests' of https://github.com/HolySmoke86/qutebrowser into HolySmoke86-more-tests
2016-10-30 23:24:15 +01:00
Florian Bruhin
f6aefabf40
Initialize QtWebKit-specific stuff with QtWebKit only
...
Maybe this fixes issues we had with QtWebEngine segfaults in proxy.py on
Travis?
Note we can't move cookies/cache/network stuff yet as we still need that
for e.g. adblock downloads with QtWebEngine.
2016-10-30 23:07:19 +01:00
Florian Bruhin
428637746a
Merge branch 'insert-text-js' of https://github.com/paretje/qutebrowser into paretje-insert-text-js
2016-10-30 19:51:25 +01:00
Florian Bruhin
713b00a102
Hide empty "Unhandled client message" warning
...
Fixes #2071
2016-10-30 19:00:29 +01:00
Kevin Velghe
0caee94994
Remove has_js
2016-10-30 18:54:34 +01:00
Florian Bruhin
f4022a86fd
Improve line breaking
2016-10-30 18:49:41 +01:00
Florian Bruhin
620b952bb2
Merge branch 'jseval-2' of https://github.com/paretje/qutebrowser into paretje-jseval-2
2016-10-30 18:48:14 +01:00
Kevin Velghe
e83b99b0e1
Run javascript on document element
...
This enables `:jseval` for users who disable javascript on webpages.
2016-10-30 11:39:10 +01:00
Florian Bruhin
2ce15b0499
Use start.duckduckgo.com as startpage
...
Apparently some users got nagged by duckduckgo to set it as start page.
2016-10-27 22:16:53 +02:00
Jan Verbeek
2cc958fbb6
Stop progress bar from growing status bar height
2016-10-26 13:46:52 +02:00
Joel Bradshaw
e5a1bb5091
Update version number to 0.8.2
...
Bump version info to 0.8.2 so that it shows up in `qutebrowser --version`
2016-10-25 06:01:45 -07:00
Daniel Karbach
c801caa19a
log debug console status changes
2016-10-24 17:10:47 +02:00
Daniel Karbach
5d92934d76
less brutal synthetic segfault
2016-10-24 17:10:47 +02:00
Daniel Karbach
bdb96becd6
unit tests for misc.lineparser
2016-10-24 17:10:47 +02:00
Jan Verbeek
21289a80ad
Catch RegisterKeyParser command errors
2016-10-20 17:38:56 +02:00
Kevin Velghe
efadbe64b5
insert_text doesn't need javascript to be enabled
...
It runs in the context of an element, which seems possible, even without
javascript enabled (in qtwebkit?).
2016-10-20 15:54:06 +02:00
Daniel Karbach
da2ba86aa5
use https for links in docs and elsewhere
...
refs #2039
2016-10-20 14:48:35 +02:00
Jan Verbeek
f2b05a0395
Move keyboard macro system to MacroRecorder object
2016-10-20 02:50:00 +02:00
Daniel Karbach
ef3968c165
setting values tabs->new-tab-position[-explicit]
...
left -> prev
right -> next
2016-10-18 17:17:17 +02:00
Daniel Karbach
7eafa30084
:tab-close option names
...
--left -> --prev
--right -> --next
2016-10-18 15:03:08 +02:00
Daniel Karbach
845298ae41
:tab-close option names
...
--left -> --prev
--right -> --next
2016-10-18 15:03:08 +02:00
Daniel Karbach
828b7d744a
setting values tabs->select-on-remove
...
left -> prev
right -> next
previous -> last-used
refs #1619
2016-10-18 15:03:01 +02:00
Florian Bruhin
2ae9f14d22
Add pylint disable
2016-10-18 06:22:45 +02:00
Kevin Velghe
59536828a1
Implement hint target "current" for webengine
2016-10-17 23:33:44 +02:00
Florian Bruhin
ab43ba71d2
Merge branch 'webkitelemparent' of https://github.com/paretje/qutebrowser into paretje-webkitelemparent
2016-10-17 22:26:58 +02:00
Jan Verbeek
2a304d7a6b
Merge branch 'master' of https://github.com/The-Compiler/qutebrowser into macros
...
Conflicts:
qutebrowser/commands/runners.py
2016-10-17 19:14:58 +02:00
Kevin Velghe
ed91e1d4c8
Implement __setitem__ in WebEngineElement
2016-10-17 14:14:45 +02:00
Kevin Velghe
7bb4700352
Return None when parent is a null webelement
2016-10-14 14:54:43 +02:00
Florian Bruhin
229faac9cb
Stabilize :session-delete tests
2016-10-14 07:24:36 +02:00
Florian Bruhin
d301f200e2
Improve docs for netrc-file setting
2016-10-14 06:45:41 +02:00
Florian Bruhin
26b6688b61
Merge branch 'netrc' of https://github.com/paretje/qutebrowser into paretje-netrc
2016-10-14 06:39:03 +02:00
Ryan Roden-Corrent
fbc084e416
Remove :<count>:cmd syntax support.
...
CommandRunner.parse had some logic for handling commands of form
:<count>:cmd. However, this complicated the parsing logic for something
that appears to only be used in tests. One could use it in a
userscript, but this is unlikely as it is undocumented. Removing
support for this simplifies the logic of parse.
The commnd `run-with-count` is added to provide this functionality.
It works like `repeat` but passes the count along to the command
instead of running the command multiple times.
This resolves #1997 : Qutebrowser crashes when pasting commands.
This bug was caused by excess stripping of ':' from the command string
by _parse_count.
2016-10-10 08:02:30 -04:00
Kevin Velghe
087342894e
Add setting for location of netrc file
...
There is no reason I guess to do this with an environment variable. On
top of that, introducing a settings also documents the netrc feature
itself (Closes #1975?).
2016-10-09 00:15:46 +02:00
Jan Verbeek
87899cb6b3
Fix long lines
2016-10-08 22:00:26 +02:00
Jan Verbeek
33ff0ba715
Interactively get macro register
2016-10-08 21:17:47 +02:00
Florian Bruhin
c40539c7e9
Merge branch 'pdfjs-1.6.210' of https://github.com/Kingdread/qutebrowser into Kingdread-pdfjs-1.6.210
2016-10-06 22:52:44 +02:00
Jan Verbeek
7aaaadac1a
Add keyboard macros
2016-10-06 22:24:04 +02:00
Florian Bruhin
378976db29
Make log.stub work when inspect.stack fails
...
I got this during shutdown once:
Traceback (most recent call last):
File ".../qutebrowser/mainwindow/mainwindow.py", line 552, in closeEvent
File ".../qutebrowser/mainwindow/mainwindow.py", line 538, in _do_close
File ".../qutebrowser/mainwindow/tabbedbrowser.py", line 218, in shutdown
self._remove_tab(tab)
File ".../qutebrowser/mainwindow/tabbedbrowser.py", line 280, in _remove_tab
tab.shutdown()
File ".../qutebrowser/browser/webengine/webenginetab.py", line 536, in shutdown
log.stub()
File ".../qutebrowser/utils/log.py", line 151, in stub
function = inspect.stack()[1][3]
File "/usr/lib64/python3.5/inspect.py", line 1464, in stack
return getouterframes(sys._getframe(1), context)
File "/usr/lib64/python3.5/inspect.py", line 1441, in getouterframes
frameinfo = (frame,) + getframeinfo(frame, context)
File "/usr/lib64/python3.5/inspect.py", line 1414, in getframeinfo
lines, lnum = findsource(frame)
File "/usr/lib64/python3.5/inspect.py", line 804, in findsource
if pat.match(lines[lnum]): break
IndexError: list index out of range
2016-10-06 21:04:53 +02:00
Daniel Schadt
ffa276a182
pdfjs: compatibility for v1.6.210
...
They renamed PDFView to PDFViewerApplication, which we need to account
for in our pdfjs scripts.
Also, it seems like the actual viewer is now only created when the DOM
has been loaded. This means that at the time when our script is
executed, the viewer does not yet exist. Thus we need to delay the open
request too by registering a DOMContentLoaded handler.
2016-10-06 14:43:16 +02:00
Florian Bruhin
5e6d8e3944
Merge branch 'master' of https://github.com/sebastian-frysztak/qutebrowser into sebastian-frysztak-master
2016-10-05 21:19:17 +02:00
Florian Bruhin
6184da0224
Add a comment
2016-10-05 21:16:18 +02:00
Florian Bruhin
24eb27e385
Merge branch 'completer_unicode' of https://github.com/rcorre/qutebrowser into rcorre-completer_unicode
2016-10-05 21:15:28 +02:00
Kevin Velghe
e3c92a9bae
Set netrc location with QUTE_NETRC
2016-10-05 12:03:52 +02:00
Florian Bruhin
c36ae5ab8f
Fix quit confirmation text for downloads
2016-10-05 10:13:01 +02:00
Florian Bruhin
2f0db878e6
Break long lines
2016-10-05 09:07:35 +02:00
Sebastian Frysztak
f0cc168609
Style changes
2016-10-04 16:45:31 +02:00
Ryan Roden-Corrent
2696f9b427
Handle unicode characters in Completer.
...
Just limit the cursor position to the length of the text to avoid
crashes in this case.
Resolves #2007 .
2016-10-04 07:36:49 -04:00
Florian Bruhin
f34d896ff4
Log total initialization time
2016-10-04 10:26:44 +02:00
Florian Bruhin
b107522d8c
Make cssutils a lazy import
...
Importing cssutils takes more than a second on the 2009 Thinkpad with a
Core2 I'm on right now, so let's only import it when actually necessary.
2016-10-04 08:51:10 +02:00
Sebastian Frysztak
df83862088
Reserve space for empty favicon in _get_icon_rect.
2016-10-03 13:14:49 +02:00
Florian Bruhin
4407ef032a
Clean up JS
2016-10-03 07:01:22 +02:00
Florian Bruhin
323d5fc9e7
Also fix scroll.to_perc with position:absolute
2016-10-03 06:59:35 +02:00
Florian Bruhin
bd831939bc
Adjust for scrolling off-by-one errors
...
On some pages with particular zoom levels, elem.offsetHeight is exactly
one pixel more than elem.scrollHeight when fully scrolled down.
This is probably due to rounding/floats/off-by-one errors somewhere
inside Chromium?
We now instead always clip the displayed percentage at 100% (so we don't
display 101%), and consider the page fully scrolled even if we're
scrolled more than the page.
2016-10-03 06:52:54 +02:00
Florian Bruhin
fc0b62f122
Revert "scroll.js --> fix scroll measures"
...
This reverts commit 0c5d95c943
.
Using those values is probably okay as long as we adjust for the
off-by-one errors which will follow in the next commit.
2016-10-03 06:51:57 +02:00
Florian Bruhin
fc1943e5e6
Merge branch 'patch-1' of https://github.com/Spreadyy/qutebrowser into Spreadyy-patch-1
2016-10-03 06:51:37 +02:00
Florian Bruhin
5b11eaad85
Merge branch 'issue1987' of https://github.com/HolySmoke86/qutebrowser into HolySmoke86-issue1987
2016-10-03 06:45:01 +02:00
Florian Bruhin
c7b74edfbe
Merge branch 'issue1940' of https://github.com/HolySmoke86/qutebrowser into HolySmoke86-issue1940
2016-10-03 06:41:19 +02:00
Florian Bruhin
55cefd1ab7
Don't shadow outer name
2016-10-01 22:51:40 +02:00
Florian Bruhin
625bb7baa4
Clean up crash msgbox properly
...
Fixes #2004
2016-10-01 22:05:29 +02:00
Sebastian Frysztak
4f443c9f27
Reserve space for favicon with vertical tabs
2016-10-01 12:55:55 +02:00
Florian Bruhin
6b76d5defa
Whitespace changes
2016-09-30 17:54:23 +02:00
Daniel Karbach
a3e9fe1fd7
removed duplicate userscript path lookup
2016-09-30 09:50:49 +02:00
Daniel Karbach
dc344989c6
revised missing userscript error messages
2016-09-30 09:50:49 +02:00
Daniel Karbach
eaa754648d
common base for userscript exceptions
2016-09-30 09:26:43 +02:00
Florian Bruhin
822c100f52
Make 0 a usable count for :tab-focus
...
Fixes #1768
2016-09-30 08:33:16 +02:00
Daniel Karbach
46ca91cfc0
only use ';' as query delim if there's no '&'
2016-09-29 17:45:12 +02:00
Daniel Karbach
cbbfbabfc4
reorganize and document
2016-09-29 14:37:40 +02:00
Daniel Karbach
8eb12c6cb9
improved error messages for inexistent userscripts
...
fixes #1940
2016-09-29 13:29:39 +02:00
Daniel Karbach
b195b5b40d
detect ';' delimiters when yanking URL
...
fixes #1987
2016-09-29 11:02:30 +02:00
Spreadyy
0c5d95c943
scroll.js --> fix scroll measures
...
scroll measures failed a travis test where document.documentElement.offsetHeight and document.documentElement.scrollHeight diffed by one pixel when the browser zoomed. --> Removed offsetHeight.
2016-09-29 08:59:46 +02:00
Florian Bruhin
5ce1f0b912
Don't update scroll position with 0 tabs
2016-09-29 08:48:04 +02:00
Florian Bruhin
42b7d1d10f
Add a colon
2016-09-29 06:35:47 +02:00
Daniel Karbach
50fb4a78c7
early init of qapp and standarddir
...
this fixes the error that appeared when invoked with --version
2016-09-28 10:25:40 +02:00
Spreadyy
f2e471597d
Lint test failed --> edited line length
2016-09-27 23:24:12 +02:00
Daniel Karbach
0c4c84d821
adhere to style guide
2016-09-27 13:22:28 +02:00
Daniel Karbach
7ce442c771
standarddir path names in qute://version
...
fixes #1947
2016-09-27 12:01:04 +02:00
Spreadyy
a22ae2818c
Fix scroll JS for xkcd.
...
Fix wrong scroll.height for xkcd. Solution according to:
http://stackoverflow.com/questions/1145850/how-to-get-height-of-entire-document-with-javascript
2016-09-27 11:41:47 +02:00
Ryan Roden-Corrent
6aaa138619
Use a set instead of a list for Command._modes.
2016-09-26 08:30:28 -04:00
Ryan Roden-Corrent
14f8ec8754
Error on mode/command mismatch with :bind.
...
Resolves #1964 (:bind should error for mode/command mismatch)
2016-09-26 08:30:28 -04:00
Ryan Roden-Corrent
6fdd007dbb
Simplify mode-checking in command.
...
Rather than maintaining separate _modes and _not_modes lists, just
build a single _modes list in the constructor.
2016-09-26 08:30:28 -04:00
Florian Bruhin
68e60ecc3c
configtypes: Add a "# pragma: no cover"
2016-09-26 08:25:54 +02:00
Florian Bruhin
62ac87c34f
Merge branch 'pretty-url' of https://github.com/lahwaacz/qutebrowser into lahwaacz-pretty-url
2016-09-26 07:08:33 +02:00
Florian Bruhin
cfe25b96fc
Merge branch 'option-description' of https://github.com/HolySmoke86/qutebrowser into HolySmoke86-option-description
2016-09-26 07:00:17 +02:00
Florian Bruhin
27b524300b
Improve configtypes tests
...
This also gets configtypes.py back to 100% coverage
2016-09-26 06:33:14 +02:00
Daniel Karbach
b801208d97
show option description in qute:settings
2016-09-23 15:42:02 +02:00
Jakub Klinkovský
a72efe4a3e
also prettify url:pretty variable
2016-09-22 19:25:54 +02:00
Florian Bruhin
d4376c5196
Fix overlays with a top statusbar
2016-09-22 17:34:30 +02:00
Florian Bruhin
e6f62f8118
Remove now-unneeded _get_overlay_position
2016-09-22 17:34:17 +02:00
Florian Bruhin
17ceba5ce4
Round correct edge for keyhint with top statusbar
2016-09-22 17:29:25 +02:00
Florian Bruhin
e04e6c51d1
Add generator argument to set_register_stylesheet
2016-09-22 17:29:03 +02:00
Florian Bruhin
750dfd98af
Generalize statusbar-attached website overlays
...
We already had some duplicated logic for completion/keyhint/messageview,
and plan to add prompt overlays too now - so here we refactor related
code to have a list of overlays instead, which are all
resized/positioned by the mainwindow when needed.
This also changes the size management, which gets moved into the
sizeHint of the respective overlay widgets.
2016-09-22 17:04:39 +02:00
Jakub Klinkovský
268db48f19
prettify yank pretty-url
2016-09-22 14:25:48 +02:00
Florian Bruhin
57d896e989
Fix hints when zoomed with QtWebEngine
...
We mutated rect (coming from self._js_dict), which means we used the
already adjusted values the second time we called rect_on_view.
Fixes #1863 .
2016-09-21 20:09:31 +02:00
Ryan Roden-Corrent
1d2cf3b648
Completer: don't try to partition search.
...
Exit before trying to partition if the command prefix is not ':'.
Resolves #1969 :
'TypeError with refactored completion when searching for command'
2016-09-21 07:08:34 -04:00
Florian Bruhin
43fa5f55c1
Don't set QT_HARFBUZZ with Qt >= 5.4
...
Fixes #1948
2016-09-16 08:35:17 +02:00
Florian Bruhin
e5b3880b71
Check for spaces in URLs with explicit scheme
...
Fixes #1954
2016-09-15 22:29:21 +02:00
Florian Bruhin
04a891cbf0
Merge branch 'kwonly-default-fix' of https://github.com/Kingdread/qutebrowser into Kingdread-kwonly-default-fix
2016-09-15 17:19:26 +02:00
Florian Bruhin
0d64257049
Add missing docstring
2016-09-15 17:16:30 +02:00
Florian Bruhin
bb1b1c8ee8
Remove unused imports
2016-09-15 16:45:48 +02:00
Florian Bruhin
018e9ef4a3
Merge branch 'completion_split' of https://github.com/rcorre/qutebrowser into rcorre-completion_split
2016-09-15 16:44:54 +02:00
Florian Bruhin
879ca0b873
Make qutescheme arg optional for resource_url
2016-09-15 16:42:07 +02:00
Daniel Schadt
794eb84805
add parameter name in error message
2016-09-15 16:38:18 +02:00
Florian Bruhin
37fa7431b0
Serve broken qutebrowser logo via qute:resources
...
This is needed when we want to display an error page after the user
requested a qute:// URL, as qute:// URLs can't access file:// content
with QtWebEngine.
2016-09-15 16:06:25 +02:00
Daniel Schadt
0ef5d338bd
make sure keyword-only arguments have a default
...
Fixes #1872 .
This prevents inspect.Parameter.empty from slipping through to the
command.
2016-09-15 15:44:33 +02:00
Florian Bruhin
44e8296a66
Remove environment variables from version()
...
We already have those in the report anyways.
2016-09-15 14:59:32 +02:00
Florian Bruhin
8403f2451f
Add $PATH to crash info
2016-09-15 14:56:27 +02:00
Florian Bruhin
7e30792bfe
Fix lint
2016-09-15 14:51:22 +02:00
Florian Bruhin
e32bbfa8f7
Init message.global_bridge at import time
2016-09-15 14:51:22 +02:00
Florian Bruhin
2c98b837d5
Add config migrations
2016-09-15 14:51:21 +02:00
Florian Bruhin
e5293d34de
Add missing str() calls
2016-09-15 14:51:21 +02:00
Florian Bruhin
dfac0658ae
Re-add logging for messages
2016-09-15 14:51:21 +02:00
Florian Bruhin
ed4f476ab4
Get rid of queued messages and unused code
2016-09-15 14:51:21 +02:00
Florian Bruhin
f16b96aa28
Initial implementation of new messages
2016-09-15 14:51:21 +02:00
Ryan Roden-Corrent
a9771007b1
Pass string, not index from on_selection_changed.
...
Simplify the CompletionWidget/Completer interface by changing
on_selection_changed to pass the newly selected text rather than the
index of the newly selected item.
This moves the logic from Completer to CompletionWidget but simplifies
the interaction between the two and makes testing easier.
2016-09-14 22:55:07 -04:00
Ryan Roden-Corrent
ac03095512
Small if-statement style tweak in Completer.
2016-09-14 22:35:05 -04:00
Florian Bruhin
c071964091
Fix lint
2016-09-14 15:21:30 +02:00
Florian Bruhin
886103c887
Fix showing errors in the current window
2016-09-14 15:18:12 +02:00
Florian Bruhin
982d00ff84
Let qute:* handlers decide their mimetype
...
This means we have to guess less, and handlers can give us HTML as text
which we then encode for them.
2016-09-14 12:33:20 +02:00
Florian Bruhin
5501d90268
Fix lint
2016-09-14 12:00:29 +02:00
Florian Bruhin
a1527f35d4
Allow to restrict qute:* pages to a backend
2016-09-14 11:04:47 +02:00
Florian Bruhin
71bc5bb943
Move QuteSchemeError to qutescheme
2016-09-14 11:04:37 +02:00
Florian Bruhin
aa71c9ae58
Initial qute:* support for QtWebEngine
2016-09-14 10:18:25 +02:00
Ryan Roden-Corrent
e23d611b37
Strip quotes from completion pattern.
...
Given a commandline like:
`:set general editor "gvim -f"|`, the pattern should be 'gvim -f'
rather than '"gvim -f"'.
2016-09-12 22:19:44 -04:00
Ryan Roden-Corrent
b867b87955
Don't crash Completer on unknown command.
...
The CommandRunner's fallback parsing behavior treated whitespace
differently than the normal flow. When a user entered an unknown
command, trailing whitespace would be stripped and the cmdline length
would be less than the cursor position.
This is fixed by making the fallback use the ShellLexer just as the
'normal' parsing does.
2016-09-12 22:19:44 -04:00
Ryan Roden-Corrent
69a3df174d
Remove needless try/catch in on_selection_changed.
2016-09-12 22:19:44 -04:00
Ryan Roden-Corrent
d651cc75b0
Fix flake8/pylint errors.
2016-09-12 22:19:44 -04:00
Ryan Roden-Corrent
808a645b40
Fix quick-complete highlighting quirk.
...
When the commandline reads ':open |', quick-completing the only offered
completion will set the commandline to ':open some_url |'. Since `open`
has `maxsplit=0`, everything after ':open' is (correctly) treated as
one argument. This means completion is opened again with 'some url '
as the pattern (note trailing whitespace), which makes the comletion
menu 'flicker' and stay open even though it was 'supposed' to quick
compelte.
This is fixed by ignoring the next completion request if we just
completed something after maxsplit (because we don't expect any more
completions after the last split).
Resolves #1519 .
2016-09-12 22:19:44 -04:00
Ryan Roden-Corrent
fcadde6aef
Merge _split into _partition in Completer.
...
After the refactoring, _split is only called by _partition so just make
it part of the same method. This also removes the use of
_empty_item_index, as it can be figured out on the fly.
2016-09-12 22:19:44 -04:00
Ryan Roden-Corrent
127412d91c
Simplify update_completion.
...
Remove the class variables _cursor_part and _empty_item_index. Instead,
split up the commandline around the cursor whenever that information is
needed. Using locals instead of class variables makes the logic easier
to follow and ends up requiring much less code.
2016-09-12 22:19:44 -04:00
Ryan Roden-Corrent
581d7659ba
Clean up Completer.on_selection_changed.
...
Remove the dependency on the class variables _empty_item_index
and _cursor_part to make the code easier to follow. If
_update_completion is refactored in a similar way these variables can
be removed.
2016-09-12 22:19:44 -04:00
Florian Bruhin
0b310d6910
Fix removing of a clicked download
2016-09-12 21:47:01 +02:00
Florian Bruhin
5b0fc41367
Log scroll data we got via JS
2016-09-12 21:46:51 +02:00
Florian Bruhin
4b4582c452
Adjust comment in _rect_on_view_js
2016-09-12 20:00:59 +02:00
Florian Bruhin
14de9f58b8
Fix docstring
2016-09-12 18:33:57 +02:00
Florian Bruhin
8a35ebac7b
Use a separate JS world for :jseval
2016-09-12 18:27:51 +02:00
Florian Bruhin
c9e3cc04cf
Accept a name for --world with :jseval
2016-09-12 18:23:23 +02:00
Florian Bruhin
97edc59f03
Add some logging to argparse.multitype_conv
2016-09-12 18:22:49 +02:00
Florian Bruhin
b2608d7697
Add --world to :jseval
2016-09-12 15:59:17 +02:00
Florian Bruhin
a16c5a6a25
Add a world argument to tab.run_js_async
2016-09-12 15:59:03 +02:00
Florian Bruhin
2388489038
downloads: Be okay with the tmpdir being gone
2016-09-12 11:30:44 +02:00
Florian Bruhin
0fef141db5
Handle QBuffer in on_feature_permission_requested
2016-09-12 09:43:08 +02:00
Florian Bruhin
43b563f600
Add missing docstring
2016-09-11 21:27:16 +02:00
Florian Bruhin
7ec62c4523
Make some more things in download.py private
2016-09-11 20:58:34 +02:00
Florian Bruhin
3550d59e3a
Make DownloadItem.reply private
...
This adds a new uses_nam method to DownloadItem though.
2016-09-11 20:58:34 +02:00
Florian Bruhin
36b7485262
Make some things in downloads.py private
2016-09-11 20:48:19 +02:00
Florian Bruhin
4a2f0eea2f
Fix import order in utilcmds
2016-09-11 20:29:19 +02:00
Florian Bruhin
4537b786f5
Ignore already deleted windows in :window-only
2016-09-11 20:29:05 +02:00
Florian Bruhin
1b5cd98d38
Fix lint
2016-09-11 20:16:03 +02:00
Florian Bruhin
8eeb3b9c75
QtWebEngine: Round scroll percentages
2016-09-11 19:59:00 +02:00
Florian Bruhin
fff777404b
Use QApplication.postEvent again
...
We had some funny segfaults reported during scrolling (i.e. with
QApplication.sendEvent), and some code already had to use postpone=True
so there was no segfault...
So now we're back to postEvent again, and eliminated the main reason for
segfaults with it, which was re-using (and -posting) events which had
already been posted.
At least during tests this seems to run stable, let's hope it helps for
the people having crashes as well.
2016-09-11 19:37:09 +02:00
Florian Bruhin
de03feabfe
Fix DownloadModel.itemFlags with invalid index
2016-09-11 17:10:52 +02:00
Florian Bruhin
4d96586eb6
Merge branch 'visibility-api' of https://github.com/Ban3/qutebrowser into Ban3-visibility-api
2016-09-11 16:23:14 +02:00
Florian Bruhin
1fe2579bb1
Merge branch 'windows-userscripts' of https://github.com/Kingdread/qutebrowser into Kingdread-windows-userscripts
2016-09-11 16:14:25 +02:00
Florian Bruhin
4686e0349b
Fix lint
2016-09-11 16:06:16 +02:00
Florian Bruhin
162e6d6483
Fix closing with no last-visible-main-window
...
Fixes #1918
2016-09-11 16:03:15 +02:00
Florian Bruhin
1c09649dcb
Pass QNAM instead of page to DownloadManager
2016-09-11 14:58:07 +02:00
Florian Bruhin
e8f8f1e72a
Add DownloadItem.remove
...
This also gets rid of the remove_items method and replaces it by a
simple loop. I don't think the optimization is actually needed...
2016-09-11 14:58:07 +02:00
Florian Bruhin
b332d22967
Make DownloadModel a sequence
2016-09-11 14:58:07 +02:00
Florian Bruhin
b949e4d73a
Start splitting DownloadModel from DownloadManager
...
This mostly works, apart from remove_item/remove_items not being
available on the model.
2016-09-11 14:58:07 +02:00
Jussi Timperi
19d9ec374d
Handle the missing attribute
2016-09-11 13:12:27 +03:00
Jussi Timperi
1adc308676
Access enums by their base class
2016-09-11 13:04:58 +03:00
Florian Bruhin
4c55963dc3
Fix lint
2016-09-10 17:32:04 +02:00
Jussi Timperi
6437a28184
QtWebKit: Add version checks to visibility API
2016-09-10 17:55:00 +03:00
Florian Bruhin
bd5f63db46
Make an invalid download target fatal
...
This should never happen, so there's no reason for it to log an error
instead of raising an exception.
2016-09-10 16:42:27 +02:00
Florian Bruhin
cc4cd6913d
Make download model qtmodeltester compliant
2016-09-10 16:24:31 +02:00
Florian Bruhin
3bf841bdb4
Delete file on infinite redirects
2016-09-10 16:24:31 +02:00
Florian Bruhin
dc0ddd023a
Add logging for deleting/removing downloads
2016-09-10 16:24:31 +02:00
Jussi Timperi
13d73359d4
QtWebKit: Handle visibility API
...
closes #1886
2016-09-10 16:07:29 +03:00
Florian Bruhin
7f2cc5dbc3
Make remove_data in DownloadItem.cancel kw-only
2016-09-09 19:29:14 +02:00
Florian Bruhin
b39d33d5e3
Revert "Remove remove_data arg for DownloadItem.cancel"
...
This reverts commit ece85dc903
.
It's actually needed in _ask_confirm_question...
2016-09-09 19:28:17 +02:00
Florian Bruhin
433a8a8ced
Fix filename with a misconfigured XDG_DOWNLOAD_DIR
...
'filename' is the relative path we got from the broken config file.
Instead of using the garbage, let's just drop it and use the suggested
name (self.basename) instead.
2016-09-09 18:46:51 +02:00
Florian Bruhin
a5793695de
Mark almost-impossible check with a nocover pragma
...
This can only happen when running :download-open on a download created
by :adblock-update right now, which is a very small chance, so we can't
easily test for it.
2016-09-09 18:46:51 +02:00
Florian Bruhin
ece85dc903
Remove remove_data arg for DownloadItem.cancel
...
This was added in f0779f8cc0
but never
actually used.
2016-09-09 18:46:51 +02:00
Florian Bruhin
ab30124bd0
Remove (hopefully) dead download code
...
If the percentage is None, remaining/total should always be None
too (as percentage/remaining being None should be triggered by total
being None).
2016-09-09 18:46:51 +02:00
Florian Bruhin
7611281563
Add basename to "download finished" message
2016-09-09 18:46:51 +02:00
Florian Bruhin
864ec94cde
Fix lint
2016-09-09 17:56:58 +02:00
knaggita
9ff3f6810a
Remove --qt-* arguments
2016-09-09 17:55:16 +02:00
Florian Bruhin
f75f45addc
Fix at_bottom scrolling check
...
This is a regression introduced in
b45f940e72
2016-09-09 16:03:51 +02:00
Florian Bruhin
d0cf452ec8
Remove :prompt-yes and :prompt-no
...
Those are replaced by :prompt-accept yes and :prompt-accept no
2016-09-09 15:59:00 +02:00
Florian Bruhin
d579697245
Add a value argument to :prompt-accept
2016-09-09 15:48:42 +02:00
Florian Bruhin
b45f940e72
Move some scroll logic from JS to Python
2016-09-09 14:19:21 +02:00
Florian Bruhin
71a89bd418
*Really* fix completion with multiple words.
...
Turns out re.escape also escapes spaces, so we'd need to replace '(\\ )'
groups after escaping. At this point it's easier to just combine spaces
before escaping the pattern.
Fixes #1934 .
Supersedes #1935 .
2016-09-09 09:03:18 +02:00
Florian Bruhin
0a3853fcb7
Fix handling of spaces in completion
...
This is a regression introduced in
faa052ad6f
.
Fixes #1934 .
2016-09-08 21:59:18 +02:00
Florian Bruhin
f8f74400c6
Fix more lint
2016-09-07 18:57:00 +02:00
Florian Bruhin
955910a0e8
Fix lint
2016-09-07 18:45:46 +02:00
Florian Bruhin
44d1056e54
QtWebEngine: Implement custom HTTP headers
2016-09-07 18:29:38 +02:00
Florian Bruhin
5a54699863
Remove unused code from qutebrowser.browser.shared
2016-09-07 18:17:56 +02:00
Florian Bruhin
df7f74c782
Add qutebrowser.browser.shared
2016-09-07 18:17:05 +02:00
Florian Bruhin
d7f9e4735e
earlyinit: Only display exception if there was one
2016-09-07 17:33:22 +02:00
Florian Bruhin
4d91ccfea5
Enforce Qt >= 5.6.0 for QtWebEngine
2016-09-07 17:31:48 +02:00
Florian Bruhin
02bd42cbed
Implement adblocking for QtWebEngine
2016-09-07 17:27:21 +02:00
Florian Bruhin
6fec236757
Add some blank lines to app._init_modules
2016-09-07 16:45:46 +02:00
Florian Bruhin
3a55dbf712
Don't use 'current' win_id for adblock update
2016-09-07 16:24:51 +02:00
Florian Bruhin
bac7a6eaf2
Remove BrowserPage.chooseFile
...
Seems like QtWebKit comes with a default implementation of that.
2016-09-07 13:39:19 +02:00
Florian Bruhin
8c3906b784
Remove BrowserPage.shouldInterruptJavaScript
...
This is useless due to a Qt bug anyways:
https://bugreports.qt.io/issues/?jql=text%20~%20%22shouldInterruptJavascript%22
2016-09-07 12:49:57 +02:00
Florian Bruhin
fca37abf55
QtWebEngine: Implement webelem.classes
2016-09-07 12:31:48 +02:00
Florian Bruhin
3e1583bb1c
Make WebKitElement._is_visible private
...
It makes a lot of sense for this to be in webkitelem.py, but it should
not be public API as it's only used internally and can't be implemented
here with QtWebEngine.
2016-09-07 11:58:39 +02:00
Florian Bruhin
ae3b7c9f15
Remove unused imports
2016-09-07 11:51:57 +02:00
Florian Bruhin
0ff98f568c
Add a webelem logger
2016-09-07 11:51:23 +02:00
Florian Bruhin
c3b80c6b5b
Use double quotes for JS strings
...
eslint won't enforce it inside that snippet, but hey, why not?
2016-09-07 11:48:34 +02:00
Florian Bruhin
60c86a08c4
Get rid of WebElement.debug_text
2016-09-07 11:47:39 +02:00
Florian Bruhin
e700d11447
Add check_vanished() in webkitelem.insert_text
2016-09-07 11:29:26 +02:00
Florian Bruhin
8f9cfcf232
Get rid of webelem.run_js_async
2016-09-07 11:27:37 +02:00
Florian Bruhin
78d64f4791
Get rid of webkitelem.focus_elem
2016-09-07 11:24:28 +02:00
Florian Bruhin
948fa033c7
Implement :insert-text for QtWebEngine
2016-09-07 11:20:32 +02:00
Florian Bruhin
ee5a972069
Move auto-insert-mode handling to browsertab
...
This means auto-insert-mode now works correctly with QtWebEngine.
2016-09-07 10:24:27 +02:00
Florian Bruhin
2ef6423cf2
Add some QtWebEngine comments to webkit.webview
2016-09-07 10:11:01 +02:00
Florian Bruhin
02df91e369
Mark colors -> webpage.bg as QtWebKit-only
2016-09-07 09:49:37 +02:00
Florian Bruhin
919196714b
QtWebEngine: Implement WebEngineScroller.at_bottom
2016-09-07 09:32:51 +02:00
Daniel Schadt
22ac19b151
style fixes
2016-09-06 20:33:48 +02:00
Florian Bruhin
b65440e7e3
Update docs
2016-09-06 18:21:12 +02:00
Florian Bruhin
7c4548ece1
Split off _yank_url from :yank
2016-09-06 18:19:40 +02:00
nanjekyejoannah
d3e19ec8fc
Add general -> yank-ignored-url-parameters
2016-09-06 18:19:40 +02:00
Daniel Schadt
1c76f121a2
userscripts: fix FIFO on Windows
...
The userscript FIFO on Windows suffered the same problem that open-editor
once did, because files on Windows can't be opened with write access by
two different processes. We kept the oshandle around and only closed it
when the process exited, which means that userscripts could not actually
write any commands to the FIFO.
This patch closes the file earlier, allowing the userscript to actually
write commands to it.
See also
https://lists.schokokeks.org/pipermail/qutebrowser/2016-September/000256.html
2016-09-06 18:03:53 +02:00
Florian Bruhin
80ac0c1b1b
Remove createWindow error message
...
See https://github.com/The-Compiler/qutebrowser/issues/1911#issuecomment-244966547
2016-09-06 17:57:24 +02:00
Florian Bruhin
76176814e0
Move createWindow debug logging to the top
2016-09-06 17:56:25 +02:00
Florian Bruhin
921d5794a7
Add missing file
2016-09-06 17:17:12 +02:00
Florian Bruhin
7f013b7808
Fix lint
2016-09-06 17:00:25 +02:00
Florian Bruhin
c07ff15b9b
bdd: Display milliseconds in log output
2016-09-06 17:00:25 +02:00
Florian Bruhin
abdc604ead
:tab-clone - restore tab zoom after history
...
This makes cloning the zoom work with QtWebEngine.
2016-09-06 15:15:59 +02:00
Florian Bruhin
85b3d08c66
bdd: Fix scrolling tests with QtWebEngine
...
Scrolling happens async with QtWebEngine, so we add a new log output
when the page was scrolled, and wait for that in various places.
2016-09-06 14:58:33 +02:00
Florian Bruhin
1ed637a906
QtWebEngine: Initial session implementation
2016-09-06 13:55:35 +02:00
Florian Bruhin
3b16e171cb
Avoid calling str() on bytes in mainwindow.py
2016-09-06 12:35:52 +02:00
Florian Bruhin
f6ba859896
Move tabhistory.TabHistoryItem to misc.sessions
...
This makes browser.webkit.tabhistory contain only QtWebKit-specific
code.
2016-09-06 09:50:55 +02:00
Florian Bruhin
2658b7c4e7
pastebin: Accept HTTPS URLs
...
This will let us switch the URLs the pastebin returns to HTTPS some
day...
2016-09-05 22:06:26 +02:00
Florian Bruhin
3b8537ff26
Make webkitelem/mhtml imports optional in commands
2016-09-05 18:20:48 +02:00
Florian Bruhin
bf3cccfe56
Make QWebPage import in commands.py optional
2016-09-05 18:15:30 +02:00
Florian Bruhin
1773c1cbd6
Remove wrong @pyqtSlot in downloads.py
2016-09-05 18:14:50 +02:00
Florian Bruhin
5f58ebebbf
Remove needs_js for @cmdutils.register
...
This gets rid of a QtWebKit import in commands.py, and also makes those
checks work later when we have per-domain settings.
2016-09-05 18:11:01 +02:00
Florian Bruhin
af40abd3b2
Add websettings.shutdown()
2016-09-05 17:58:56 +02:00
Florian Bruhin
0ad8578aa8
Make QtWebKit optional in earlyinit.py
2016-09-05 17:58:29 +02:00
Florian Bruhin
308f38ab34
Rename javascript-can-open-windows setting
...
Fixes #1896 .
2016-09-05 17:09:14 +02:00
Florian Bruhin
61270b8f92
Fix lint
2016-09-05 16:21:30 +02:00
Florian Bruhin
f2c4cedf61
QtWebEngine: Don't add invalid URLs to history
2016-09-05 15:08:00 +02:00
Florian Bruhin
cf070d48f2
WebEngine: Disable createWindow for Qt < 5.7.1
...
Fixes #1911 .
The bugfix is backported in my qt5-webengine-debug package, and
QUTE_QTBUG54419_PATCHED can be set to force qutebrowser to use
createWindow.
2016-09-05 15:08:00 +02:00
Florian Bruhin
6a26907ded
Fix lint
2016-09-05 15:08:00 +02:00
Florian Bruhin
8b7d21876f
Add debug logging to createWindow
2016-09-05 15:08:00 +02:00
Florian Bruhin
2687b59373
Code cleanup
2016-09-05 15:08:00 +02:00
Florian Bruhin
a4cd0291a6
Implement QWebEngineView.createWindow
2016-09-05 15:08:00 +02:00
Florian Bruhin
a85ea92a21
Merge branch 'open-editor-all-modes' of https://github.com/kobezda/qutebrowser into kobezda-open-editor-all-modes
2016-09-05 10:59:53 +02:00
Florian Bruhin
366c230e0a
Merge branch 'docstrings' of https://github.com/lahwaacz/qutebrowser into lahwaacz-docstrings
2016-09-05 10:58:39 +02:00
Ján Kobezda
da65f7234a
Allow :open-editor in modes other than insert
...
':open-editor' can now be run in all modes.
Resolves #1902
2016-09-04 22:23:16 +02:00
Florian Bruhin
ea4f4e197f
Handle elements which are out of view correctly
...
Fixes #1910
2016-09-04 21:09:15 +02:00
Florian Bruhin
faa052ad6f
Fix hang with multiple spaces in URL completion
2016-09-04 20:19:16 +02:00
Jakub Klinkovský
cbe74f6991
fix adblock-update documentation
...
The tilde has to be escaped, otherwise the HTML is broken.
2016-09-02 19:52:45 +02:00
Jakub Klinkovský
3518fe19e8
move explanation of ;; to commands documentation
...
The note was out of place in keys.conf as it's not about keyinput. Since
we have a top-level documentation for commands now, let's keep the info
in once place. People will look there anyway for the documentation of
commands they want to bind.
2016-09-02 19:52:45 +02:00
Jakub Klinkovský
f36b8acec1
adjust wording in commands top-level documentation
...
There is no "commandline" for bindings in keys.conf, so describing it as
for "command arguments" should be more accurate.
2016-09-02 19:52:45 +02:00
Jakub Klinkovský
9669aca7d9
remove random description of variables in commands' docstrings
...
Full description is given at the top of qute://help/commands.html,
duplicating this for some commands where it might be useful is
unmaintainable.
2016-09-02 19:52:45 +02:00
Florian Bruhin
1cdf90f1c7
pastebin: Start sending API key
...
This is not enforced on the server yet, but this way we can do so after
a few releases (and break crash reports for older releases).
2016-09-01 22:57:35 +02:00
Florian Bruhin
44d6db4f45
QtWebEngine: Fix crash with userscript + selection
...
Fixes #1878
Unfortunately it seems impossible to implement a test for this, as
selection via javascript somehow doesn't trigger this.
2016-09-01 22:45:57 +02:00
arza
9b6541638e
Update CHANGED_KEY_COMMANDS and test_migrations for sk-keybinding.
2016-09-01 21:05:44 +03:00
arza
a90314985a
Fix sk-keybinding.
2016-09-01 16:23:16 +03:00
Rok Mandeljc
469590d4e8
TabWidget: a possible fix for #1693 - grey area under custom tabbar
...
Attempt to fix the issue #1693 by:
- setting the TabBarStyle to TabWidget in addition to TabBar
- chain up SE_TabWidgetTabBar requests in TabBarStyle.subElementRect
to the super() rather than self._style, in order to avoid getting
adwaita-specific rect sizes instead of default ones that are also
used in rendering.
2016-08-29 14:11:34 +02:00
Florian Bruhin
b9282587d0
Merge branch 'auto-open-fixes' of https://github.com/mlochbaum/qutebrowser into mlochbaum-auto-open-fixes
2016-08-29 07:12:14 +02:00
Florian Bruhin
5917f34eab
Merge branch 'settings' of https://github.com/lahwaacz/qutebrowser into lahwaacz-settings
2016-08-29 06:52:17 +02:00
Florian Bruhin
553eaee467
Fix pylint false-positive
2016-08-26 05:21:10 +02:00
Florian Bruhin
2408d76e4c
Improve get_console_format docstring
2016-08-25 23:17:10 +02:00
Florian Bruhin
29778bb799
Merge branch 'format-debug-log-level' of https://github.com/ryanjmortenson/qutebrowser into ryanjmortenson-format-debug-log-level
2016-08-25 23:16:36 +02:00
Florian Bruhin
76a3bdd94a
Improve message for invalid --logfilter
2016-08-25 23:12:51 +02:00
Florian Bruhin
99daa9e165
Merge branch 'issue1867' of https://github.com/knaggita/qutebrowser into knaggita-issue1867
2016-08-25 23:11:35 +02:00
Florian Bruhin
be7abb53ad
cmdutils: Assert on positional-only params
2016-08-25 22:16:25 +02:00
Florian Bruhin
943dc564b2
Fix choices validation with unannotated args
...
Something like:
@cmdutils.argument('foo', choices=['one', 'two'])
def func(foo):
# ...
didn't actually validate the foo argument, since the inferred type of
the argument is None, and that skipped all conversion (and thus
validation).
Fixes #1871
See #1885
This is a reworked version of 12061b8bb1
which lets special parameters (count/win_id/flags) through correctly.
2016-08-25 22:16:25 +02:00
knaggita
d26566a1f6
Validate loggernames passed to --logfilter
2016-08-24 18:56:18 +03:00
rmortens
384e3d1d88
Add change format for debug-log-level cmd
2016-08-24 08:40:11 -06:00
knaggita
0b60d28742
Validate loggernames passed to --logfilter
2016-08-24 17:09:34 +03:00
knaggita
cf1dc28214
Validate logger names passed to --logfilter
2016-08-24 16:12:32 +03:00
knaggita
848af2e294
Validation of logger names passed to --logfilter
2016-08-24 15:15:20 +03:00
Florian Bruhin
445d287955
Revert "Fix choices validation with unannotated args"
...
This reverts commit 12061b8bb1
.
2016-08-23 23:34:02 +02:00
Florian Bruhin
12061b8bb1
Fix choices validation with unannotated args
...
Something like:
@cmdutils.argument('foo', choices=['one', 'two'])
def func(foo):
# ...
didn't actually validate the foo argument, since the inferred type of
the argument is None, and that skipped all conversion (and thus
validation).
Fixes #1871
See #1885
2016-08-23 22:01:21 +02:00
Florian Bruhin
8643f6f28d
Add explicit else in :completion-item-focus
...
See #1885
2016-08-23 20:49:56 +02:00
Florian Bruhin
a17b8bec90
Don't treat "Hello." as URL with auto-search=naive
2016-08-23 09:02:39 +02:00
Jakub Klinkovský
1411c287c5
qute://settings: set valid type of <input> fields
...
fixes #1883
2016-08-22 21:09:57 +02:00
Marshall Lochbaum
44411e02c6
Replace != with (is not) when testing whether a model is new
2016-08-22 13:02:13 -04:00
Marshall Lochbaum
2aef26c58b
Linting
2016-08-21 23:22:46 -04:00
Marshall Lochbaum
cbecd48871
Refactor Completer/CompletionView interface, removing set_pattern()
2016-08-21 22:56:18 -04:00
Marshall Lochbaum
c5ca102d93
Fix completion flicker on quick-complete with show=auto
2016-08-20 01:01:12 -04:00
Marshall Lochbaum
08b348be50
Merge branch 'master' into auto-open-fixes
2016-08-19 22:50:26 -04:00
Florian Bruhin
fe11e25430
Ignore mouse events going to non-main widgets
...
When we hide the context menu on QtWebEngine, we get a mouse event
relative to the QMenu in the filter, which means tab.elements.at_pos
will get called with a negative position (and thus assert) or at least a
wrong position.
2016-08-19 18:38:07 +02:00
Florian Bruhin
bcb06f0cc6
Fix lint
2016-08-19 15:47:35 +02:00
Florian Bruhin
1cfadbf034
Fix / ? : bindings
...
This was broken in #1859 and I didn't notice...
2016-08-19 15:35:20 +02:00
Florian Bruhin
e074192cc4
Update docs
2016-08-19 15:27:56 +02:00
Florian Bruhin
7e3d1ccd24
Simplify :debug-log-filter implementation
2016-08-19 15:08:15 +02:00
Florian Bruhin
e1cd905163
Move :window-only below :debug-log-* in utilcmds
2016-08-19 15:06:08 +02:00
Florian Bruhin
71b0876188
Improve :debug-log-filter message
...
This changes the message so it resembles the default choices=... one,
and also changes the argument to "filters" because that sounds nicer as
a metavar.
2016-08-19 15:03:19 +02:00
Florian Bruhin
fd0965703e
Remove log.change_loglevel
2016-08-19 14:57:55 +02:00
Florian Bruhin
75c3b1a9f8
Fix test for :debug-log-level with invalid level
...
Since we're getting dictionary keys in choices=..., we need to sort them
so we get a consistent message.
2016-08-19 14:57:21 +02:00
knaggita
1d5a3a6175
Add :debug-loglevel :debug-logfilter commands
2016-08-19 14:12:19 +02:00
Florian Bruhin
d25fde4f29
Whoops...
2016-08-19 13:42:38 +02:00
Florian Bruhin
29cd878902
Fix lint
2016-08-19 13:40:21 +02:00
nanjekyejoannah
056c0c3c14
Make command keys configurable
...
Fixes #672
2016-08-19 13:40:21 +02:00
Florian Bruhin
8eb8039370
Merge branch 'rewrite-pP' of https://github.com/blyxxyz/qutebrowser into blyxxyz-rewrite-pP
2016-08-19 13:36:33 +02:00
Florian Bruhin
388d771a2e
Use send_event with postpone=True in webelem.click
...
For some reason, since 0557fea79e
we're
getting segfaults in misc.feature...
2016-08-19 10:23:10 +02:00
Florian Bruhin
4362d42c50
Add postpone argument to AbstractTab.send_event
2016-08-19 10:13:07 +02:00
Florian Bruhin
a846a5b89f
Move send_event to AbstractTab
...
This means subclasses only need to implement _event_target.
2016-08-19 10:12:57 +02:00
Florian Bruhin
a40dd7edf6
Allow empty string for tabs -> title-format
2016-08-19 08:31:36 +02:00
Florian Bruhin
8da942ddc7
bdd: Skip tests on WebEngine causing memory leaks
2016-08-18 22:46:32 +02:00
Florian Bruhin
0557fea79e
Use QApplication.sendEvent instead of postEvent
...
From the QApplication.postEvent docs:
http://doc.qt.io/qt-5/qcoreapplication.html#postEvent
The event must be allocated on the heap since the post event queue
will take ownership of the event and delete it once it has been
posted. It is not safe to access the event after it has been posted.
We can't reliably guarantee that from Python, so we need to use
sendEvent instead.
2016-08-18 21:36:43 +02:00
Florian Bruhin
ccc676c04f
Handle CommandError in show_source_cb
2016-08-18 19:32:16 +02:00
Jan Verbeek
b6c96855c8
Rewrite paste -s/pP
2016-08-18 19:05:35 +02:00
Florian Bruhin
c0ffcfc585
QtWebEngine: Make :fake-key work
2016-08-18 18:44:33 +02:00
Florian Bruhin
dfed2f9c9c
WebEngine: Don't save title if generated from URL
2016-08-18 18:05:48 +02:00
Florian Bruhin
2a0e503644
QtWebEngine: Don't raise CommandError with no hint
2016-08-18 17:47:05 +02:00
Florian Bruhin
205c12c530
Fix docs for :click-element
2016-08-18 16:58:56 +02:00
Florian Bruhin
927f378c6d
Fix eslint
2016-08-18 16:52:53 +02:00
Florian Bruhin
73210fb87c
QtWebEngine: Fix tab passed to WebEngineElement
2016-08-18 16:25:58 +02:00
Florian Bruhin
4345d60ff1
Revert "javascript.assemble: Support document module"
...
This reverts commit afc7faabda
.
This isn't actually needed as we can't use document.getElementById()
directly without serializing anyways.
2016-08-18 15:58:46 +02:00
Florian Bruhin
1956480164
Revert "Handle {} elements in elements._js_cb_single"
...
This reverts commit f59a9d37252599c8fbda4cc687bd9f094c6d05b9.
Since we're now using a webelem function, this isn't needed anymore.
2016-08-18 15:58:46 +02:00
Florian Bruhin
dbb3929bf3
QtWebEngine: Serialize element correctly (find_id)
2016-08-18 15:58:46 +02:00
Florian Bruhin
f98820971d
Handle {} elements in elements._js_cb_single
...
When using document.getElementById like in find_id, we can get {}
instead of null/None back when nothing was found.
2016-08-18 15:58:46 +02:00
Florian Bruhin
d9d14d4a4c
Fix lint
2016-08-18 15:58:46 +02:00
Florian Bruhin
e0af03db80
Add a default target for :click-element
2016-08-18 15:58:46 +02:00
Florian Bruhin
0cef4ac2db
Add a :click-element command
2016-08-18 15:30:04 +02:00
Florian Bruhin
28a6b3918c
Fix lint
2016-08-18 14:42:42 +02:00
Florian Bruhin
e851839973
Don't make HintActions a QObject
...
It probably still makes sense for HintManager to be one for the moment
though, as it's in the objreg.
2016-08-18 14:39:13 +02:00
Florian Bruhin
0d1ea0b93a
Add FIXME for webkitelem.focus_elem
2016-08-18 14:33:55 +02:00
Florian Bruhin
63c66945a4
Add webelem.click() and webelem.hover()
2016-08-18 14:32:19 +02:00
Florian Bruhin
5ac9fe9c32
Add tab.elem.find_id
2016-08-18 14:08:34 +02:00
Florian Bruhin
afc7faabda
javascript.assemble: Support document module
2016-08-18 14:07:21 +02:00
Florian Bruhin
2c6fe35398
Fix blank lines
2016-08-18 14:03:27 +02:00
Florian Bruhin
a0add7b66c
Get rid of tab.run_js_blocking
...
We had some trouble with it, and it's not actually needed.
2016-08-18 14:02:59 +02:00
Florian Bruhin
d3084dd690
Add a separate tab.elements object
2016-08-18 14:01:27 +02:00
Florian Bruhin
1ec59f3f0e
Add FIXME
2016-08-18 12:46:55 +02:00
Florian Bruhin
9226e3eece
QtWebEngine: Implement only_visible for find_all
2016-08-18 12:40:21 +02:00
Florian Bruhin
30029a8259
utils.javascript: Handle bools in _convert_js_arg
2016-08-18 12:40:21 +02:00
Florian Bruhin
b596c4da27
eslint: Enable long lines with URLs
2016-08-18 12:40:21 +02:00
Florian Bruhin
274fe58d6d
Simplify webelem.js
...
serialize_elem() now takes care of assigning IDs.
2016-08-18 12:40:21 +02:00
Florian Bruhin
0d35502e87
Use HintingError for all hinting errors
2016-08-18 12:40:21 +02:00
Florian Bruhin
eabac17c58
Combine hint signals into a single one
2016-08-18 12:40:21 +02:00
Florian Bruhin
39fd6a6062
QtWebEngine: Adjust hints according to zoom
2016-08-18 12:40:21 +02:00
Florian Bruhin
30f6afc2aa
Pass tab to WebEngineElement
2016-08-18 12:40:21 +02:00
Florian Bruhin
53e747d7ea
Disable download hints for QtWebEngine
2016-08-18 12:40:21 +02:00
Florian Bruhin
58d2d30e9a
Add initial hinting implementation
2016-08-18 12:40:21 +02:00
Florian Bruhin
1b3d693a5e
Add post_event to tab API
2016-08-18 12:40:21 +02:00
Florian Bruhin
6f24221c54
Replace WebElement.frame() by .has_frame()
2016-08-18 12:40:21 +02:00
Florian Bruhin
91b43c5cef
hints: Use tab API to move cursor for input fields
2016-08-18 12:40:21 +02:00
Florian Bruhin
62db0095d1
Revert "Make webelem.rect_on_view work async"
...
This reverts commit 4e11613d2df064b138532c18f88bbf278c64f347.
We can actually make this synchronous just fine by collecting that
information when searching for the elements...
2016-08-18 12:40:21 +02:00
Florian Bruhin
e6d6302958
Make webelem.rect_on_view work async
...
WebKitElement still has an internal sync version used for is_visible,
but hopefully we can get rid of that soon too.
2016-08-18 12:40:21 +02:00
Florian Bruhin
aba1556324
Remove old comment
2016-08-18 12:40:21 +02:00
Florian Bruhin
343b2d8385
Remove old FIXME
2016-08-18 12:40:21 +02:00
Florian Bruhin
15dcd5284c
Enable :hint for QtWebEngine
2016-08-18 12:40:21 +02:00
Florian Bruhin
8eaa387f21
Adjust default hint.bg gradient orientation
2016-08-17 21:00:13 +02:00
Florian Bruhin
52e47e0c3d
Add HintLabel.__repr__
2016-08-17 15:32:24 +02:00
Florian Bruhin
955ed2f52d
Simply connect HintLabel._move_to_elem to signal
2016-08-17 15:32:24 +02:00
Florian Bruhin
1d82ea8740
Remove logging in _on_contents_size_changed
...
Otherwise this will be logged once for every element.
2016-08-17 15:32:24 +02:00
Florian Bruhin
d87a255c0a
Don't fully clean up labels if their frame is gone
...
Otherwise they're invalid but still in the HintContext, so calling
.hide() on it later (e.g. because the user pressed another key) would
give us a RuntimeError from PyQt.
2016-08-17 15:32:24 +02:00
Florian Bruhin
0293307d61
Remove adjust_zoom for webelem.rect_on_view
...
Previously, the drawn hint labels were affected by the zoom, i.e., they
were stretched out by QtWebKit and actually had to be drawn at the
unzoomed position.
The Python/C++ API gives us coordinated adjusted for zoom, so
we always *negatively* adjusted them to get the unzoomed coordinates.
JS gave us the original coordinates, so we stretched them out according
to the zoom if adjust_zoom was given (which means only when clicking a
link).
Now we always operate in term of display coordinates: The point where we
draw the hint label is equal to the point we're clicking.
Thus, the zoom level for javascript is always adjusted, and the Python
zoom level is never (negatively) adjusted.
2016-08-17 14:51:05 +02:00
Florian Bruhin
7c17af3889
Use ${_monospace} for default hints font
2016-08-17 14:51:05 +02:00
Florian Bruhin
373eca1ad2
Fix some corner cases in _transform_hint_color
2016-08-17 14:51:05 +02:00
Florian Bruhin
eac30fc84b
Add styling of new hints
...
This also removes the hints -> opacity setting, as this is now set by
using an rgba(...) color.
2016-08-17 14:51:05 +02:00
Florian Bruhin
c033ed9edb
Allow config value transformers to give up
2016-08-17 14:51:04 +02:00
Florian Bruhin
9c3807c117
Store HintLabels (not ElemTuples) in HintManager
2016-08-17 14:44:49 +02:00
Florian Bruhin
cf7170a33b
Remove no longer needed webelem methods
...
The following methods were only used for hint labels and thus removed
now:
- document_element
- create_inside
- find_first
- set_inner_xml
- remove_from_document
- set_style_property
2016-08-17 14:44:49 +02:00
Florian Bruhin
1753d3507c
Use native QLabels for hints
...
This will make labels work easily with QtWebEngine, and make sure
they're not affected by the page's contents.
Fixes #925 .
Fixes #1126 .
2016-08-17 14:43:35 +02:00
Florian Bruhin
781e7554e4
Set open target for force_tab to tab-silent
...
Fixes #1328
2016-08-17 12:04:46 +02:00
Florian Bruhin
01fd7cd210
Merge branch 'issue1060' of https://github.com/haasn/qutebrowser into haasn-issue1060
2016-08-17 12:01:53 +02:00
Florian Bruhin
cc693f17ca
QtWebEngine: Use loadFinished as history trigger
...
Using urlChanged spams the history with too many entries...
Fixes #1837
2016-08-16 21:46:25 +02:00
Florian Bruhin
1dbedbc474
Fix :restart deleting the given --basedir
2016-08-16 21:27:23 +02:00
Florian Bruhin
87aa11de7f
Remove unused WebView._check_insertmode attribute
2016-08-16 19:57:43 +02:00
Florian Bruhin
1138d068e6
Move insert-mode-on-click to tab API / mouse.py
...
This also implements the feature for QtWebEngine.
2016-08-16 16:22:18 +02:00
Florian Bruhin
eef76dde86
eslint: Disable no-warning-comments
2016-08-16 15:21:37 +02:00
Florian Bruhin
6794187390
Fix too long line
2016-08-16 14:19:39 +02:00
Florian Bruhin
5d6abc6f67
Merge branch 'safe-args' of https://github.com/blyxxyz/qutebrowser into blyxxyz-safe-args
2016-08-16 14:18:44 +02:00
Florian Bruhin
dba579c202
Update user-agent completion list
2016-08-16 14:06:57 +02:00
Jan Verbeek
cfd166a95e
Merge https://github.com/The-Compiler/qutebrowser into safe-args
2016-08-16 14:05:04 +02:00
Jan Verbeek
096387897c
Make pp bindings work with option in clipboard
...
If the clipboard contains "-a" then "open {clipboard}" will fail because
-a gets parsed as an option. "open -- {clipboard}" doesn't do that. See
some comments in #1791 .
2016-08-16 14:00:37 +02:00
Florian Bruhin
f4b72d4b24
Revert "Revert "Handle counts for special keys.""
...
This reverts commit 2d5ffbfd02
.
2016-08-16 13:44:28 +02:00
Florian Bruhin
5ecef0004c
Add some docs for command replacements
2016-08-16 13:32:53 +02:00
Florian Bruhin
8d6b905f95
Merge branch 'insert-text' of https://github.com/blyxxyz/qutebrowser into blyxxyz-insert-text
2016-08-16 13:29:42 +02:00
Florian Bruhin
8e6d784fd7
Merge branch 'fix_hints_autofollow' of https://github.com/lahwaacz/qutebrowser into lahwaacz-fix_hints_autofollow
2016-08-16 12:58:56 +02:00
Niklas Haas
c2cc28a72b
Add new-instance-open-target.window = first-opened
...
Fixes #1060 .
In the process of adding this, I also decided to rewrite
mainwindow.get_window() for clarity (and also because flake8 was warning
about complexity).
Also adds some tests to the new-instance-target mechanism, in particular
a specific test for the issue in question.
2016-08-16 12:24:38 +02:00
Florian Bruhin
cf0b12b5a9
Merge branch 'var_replacements' of https://github.com/lahwaacz/qutebrowser into lahwaacz-var_replacements
2016-08-16 11:49:31 +02:00
Florian Bruhin
ee3ea739fc
Merge branch 'completion-category-focus' of https://github.com/rcorre/qutebrowser into rcorre-completion-category-focus
2016-08-16 11:45:23 +02:00
Florian Bruhin
91db564e1a
Fix lint
2016-08-16 11:36:55 +02:00
Florian Bruhin
d1138fa342
Update docs
2016-08-16 11:22:29 +02:00
Florian Bruhin
380856bcb2
Merge branch 'navigate-count' of https://github.com/pvsr/qutebrowser into pvsr-navigate-count
2016-08-16 11:21:07 +02:00
Florian Bruhin
882d1a5e88
Move :window-only to misc.utilcmds
2016-08-16 11:05:02 +02:00
Florian Bruhin
9d7d307aa5
Merge branch 'winonly' of https://github.com/haasn/qutebrowser into haasn-winonly
2016-08-16 11:02:49 +02:00
Florian Bruhin
ccce55443f
Fix TabWidget.init_config with PyQt 5.2
...
See #1847 , #1775
2016-08-16 10:44:53 +02:00
Peter Rice
67609af21b
resolve linter warnings
2016-08-15 22:53:28 -04:00
Peter Rice
060305279c
update navigate-related help and function docs
2016-08-15 22:28:25 -04:00
Peter Rice
d3e4d62d14
make navigate take counts for inc, dec, and up
2016-08-15 21:13:52 -04:00
Michael Hoang
c0ab474b21
Give error when trying to detach a single tab
2016-08-16 07:36:39 +10:00
Florian Bruhin
0cefcef8f3
Change user-stylesheet default
...
This shows scrollbars like the one in the code block here:
https://devtalk.nvidia.com/default/topic/918822/linux/hevc-main-10-profile-decoding-using-vdpau-unsupported-on-gtx-950-361-28-/
2016-08-15 18:00:18 +02:00
Ryan Roden-Corrent
7b3839b44b
Focus completion by category.
...
Implement `completion-item-focus next-category` and
`completion-item-focus prev-category` to jump through completions by
category rather than by item.
Resolves #1567 .
2016-08-15 07:14:28 -04:00
Jakub Klinkovský
befaf4f6dc
fix nested expansion of {variables} in command args
2016-08-14 15:29:16 +02:00
Florian Bruhin
e7d08db6c3
eslint: Turn off sort-keys
2016-08-12 20:58:20 +02:00
Niklas Haas
d5080bdb1a
Add :window-only command
...
I mainly added this so I can speed up all of the tests that rely on
closing other windows.
2016-08-11 23:37:14 +02:00
Florian Bruhin
9c67e87c37
Merge branch 'keyinput' of https://github.com/lahwaacz/qutebrowser into lahwaacz-keyinput
2016-08-11 19:46:30 +02:00
Jakub Klinkovský
0e35983362
fix lint ('line too long')
2016-08-11 19:15:26 +02:00
Florian Bruhin
af5d166ae1
QtWebEngine: Fix error message with :print --pdf
2016-08-11 19:13:45 +02:00
Florian Bruhin
fb07655e56
Move input -> rocker-gestures to MouseEventFilter
2016-08-11 18:51:51 +02:00
Florian Bruhin
e8980d01e6
MouseEventFilter: Don't pass obj to handlers
2016-08-11 18:51:50 +02:00
Florian Bruhin
9195e6a3a7
Fix :follow-selected --tab
2016-08-11 17:50:19 +02:00
Jakub Klinkovský
567fe0ec10
keyinput: don't emit keystring_updated twice when clearing
2016-08-11 17:48:43 +02:00
Florian Bruhin
59faee8518
Don't return page from WebView._init_page
...
We don't need to refer to it anymore.
2016-08-11 16:48:27 +02:00
Florian Bruhin
d6a3134b3e
Remove unused imports
2016-08-11 16:38:45 +02:00
Florian Bruhin
ad1e1e5f92
Log is_main_frame in acceptNavigationRequest
2016-08-11 16:36:41 +02:00
Florian Bruhin
421b14681f
Move HintManager out of WebView
...
This moves creating the HintManager to AbstractTab, and lets
TabData (which is now a QObject) handle the start_hinting/end_hinting
signal.
For the mouse_event signal of HintManager, we now have a slot in
AbstractTab too, though that might actually be moved to
WebKitTab/WebEngineTab later when needed.
2016-08-11 16:30:55 +02:00
Jakub Klinkovský
9f8b5dad92
simplify <Escape> binding
...
Note that leave-mode implies clear-keychain since bf0fe3c
.
2016-08-11 16:11:13 +02:00
Florian Bruhin
3bffb71b55
QtWebEngine: Implement mouse opentarget handling
...
This moves various stuff around and out of QtWebKit code:
- open_target and hint_target are now in TabData, not on the WebPage
- As much as possible got extracted from WebPage.acceptNavigationRequest
to AbstractTab._on_link_clicked, with a new link_clicked signal added
to WebPage. However, we need to decide whether to handle the request
in this tab or not inside acceptNavigationRequest, so we have some
code duplicated there and in WebEnginePage.acceptNavigationRequest.
- _mousepress_opentarget (i.e., setting the open_target) is now handled
in MouseEventFilter, not in WebView.
2016-08-11 16:09:59 +02:00
Jakub Klinkovský
55a00ab2cf
emit keystring_updated iff necessary
2016-08-11 15:57:46 +02:00
Jakub Klinkovský
bf0fe3c43b
clear keychain properly
...
fixes #1805
2016-08-11 15:45:44 +02:00
Florian Bruhin
8b0028cb87
Add FIXME
2016-08-11 14:55:19 +02:00
Florian Bruhin
1a94cb551c
Move mouse wheel zooming to MouseEventHandler
2016-08-11 13:50:06 +02:00
Florian Bruhin
677bb29251
Document event filter attributes
2016-08-11 13:38:20 +02:00
Florian Bruhin
b50ab37bbc
Merge branch 'fix/undo-tab-detach' of https://github.com/airodactyl/qutebrowser into airodactyl-fix/undo-tab-detach
2016-08-11 13:04:31 +02:00
Florian Bruhin
a23f3a24b3
scroll.js: Use window.inner{Width,Height}
...
It seems with document.documentElement.client{Height,Width} we
sometimes (e.g. without <!DOCTYPE html)...) get the full element height
instead of the viewport height.
Fixes #1821 .
2016-08-11 11:57:20 +02:00
Michael Hoang
ed137c01aa
Make add_undo for tab close a keyword arg
2016-08-11 15:18:07 +10:00
Michael Hoang
af97f9efae
Add add_undo parameter for closing tabs
...
By default, closed tabs should be undoable, but when a tab is detached
:undo should not reopen that tab in the old window.
2016-08-11 07:44:11 +10:00
Jan Verbeek
d2d92c9f2e
Fix docstring
2016-08-10 22:29:19 +02:00
Jan Verbeek
4966debd61
Deprecate :paste-primary to :insert-text {primary}
2016-08-10 21:55:16 +02:00
Florian Bruhin
e7584b9e1e
scroll.js: Add commented debug output
2016-08-10 21:44:16 +02:00
Jan Verbeek
db0f8fffcd
Merge https://github.com/The-Compiler/qutebrowser into insert-text
2016-08-10 20:54:54 +02:00
Florian Bruhin
57896dc00e
Merge branch 'clip' of https://github.com/blyxxyz/qutebrowser into blyxxyz-clip
2016-08-10 20:38:54 +02:00
Florian Bruhin
b801d3316d
Fix lint
2016-08-10 20:23:41 +02:00
Florian Bruhin
08d9243c3e
Merge branch 'haasn-lastvisible'
2016-08-10 19:58:41 +02:00
Florian Bruhin
64afc562b6
Install MouseEventFilter on new WebEngine children
...
For some reason, when e.g. visiting duckduckgo and then heise.de,
QtWebEngine suddenly gets a new QOpenGLWidget as focusProxy.
We install an extra eventFilter observing the ChildAdded event and
re-adding the MouseEventFilter when that happens.
2016-08-10 19:44:06 +02:00
Jakub Klinkovský
cdcc9996a0
hints: remove unused context attribute and duplicate initialization
2016-08-10 19:37:01 +02:00
Jakub Klinkovský
58ded41e5d
hints: move _filterstr into _context
2016-08-10 18:48:10 +02:00
Jakub Klinkovský
efb680dfb1
hints: make HintManager.fire private
...
It's not called by other classes anymore, it shouldn't be part of public
API because wrong value to the keystr parameter causes KeyError.
2016-08-10 18:21:19 +02:00
Florian Bruhin
3b34032b4b
Merge branch 'feature/undo-to-old-pos' of https://github.com/airodactyl/qutebrowser into airodactyl-feature/undo-to-old-pos
2016-08-10 17:47:25 +02:00
Florian Bruhin
7213850238
Merge branch 'lastvisible' of https://github.com/haasn/qutebrowser into haasn-lastvisible
2016-08-10 17:39:33 +02:00
Florian Bruhin
29b778b6d6
Use javascript.assemble for all functions
2016-08-10 17:27:34 +02:00
Niklas Haas
6293fad2eb
Add general->new-instance-open-target.window=last-visible
...
I usually use my browser with a one-window-per-workspace flow. If I
click on a URL anywhere, I personally would prefer it to go to the
browser instance that's on the same workspace.
To this end, the easiest way to accomplish this is to simply track when
windows are made visible and register them as the last visible object.
(To get finer control for when you have multiple windows on the same
workspace, focus changes also update the last visible object - the
implication being here that focusing something also means you're looking
at it)
Not all users may like this behavior, so I consider it strictly optional.
2016-08-10 17:01:12 +02:00
Florian Bruhin
c0c3fb47dd
Merge branch 'buffer_idx_completion' of https://github.com/rcorre/qutebrowser into rcorre-buffer_idx_completion
2016-08-10 16:57:51 +02:00
Florian Bruhin
f908d29a5f
Move mouse handling to an EventFilter
2016-08-10 16:44:40 +02:00
Ryan Roden-Corrent
1de465f42b
Filter buffer completion by all columns.
...
In addition to the url and text column, also filter by the index column
so the user can enter a number to navigate to that tab.
Resolves #1830 .
2016-08-10 10:20:04 -04:00
Jakub Klinkovský
24f8ed8ac1
hints: refactor auto-follow handling in the fire method
2016-08-10 16:09:37 +02:00
Florian Bruhin
85a4dc808e
Add "# pragma: no cover" for ImportError
2016-08-10 15:57:01 +02:00
Florian Bruhin
b380b2f5be
Try another objreg fix
2016-08-10 15:47:50 +02:00
Florian Bruhin
b337578274
QtWebEngine: Allow general->log-javascript-console
2016-08-10 15:44:47 +02:00
Florian Bruhin
f3c32308d3
Merge branch 'complete-hidden-commands' of https://github.com/rcorre/qutebrowser into rcorre-complete-hidden-commands
2016-08-10 15:38:46 +02:00
Florian Bruhin
b488d7f9fd
Make QtWebKit optional in utils.version
2016-08-10 15:05:15 +02:00
Florian Bruhin
5b2ae3cec7
Don't inherit AbstractWebInspector from QtWebKit
2016-08-10 14:55:50 +02:00
Florian Bruhin
33193d7dd4
Split up QtWebKit specific part in browser.history
2016-08-10 14:51:29 +02:00
Florian Bruhin
ad5008152c
Move browser.webkit.history to browser.history
2016-08-10 14:45:52 +02:00
Florian Bruhin
f6d4e0d32c
Try working around AttributeError in objreg
2016-08-10 13:58:41 +02:00
Florian Bruhin
393178262e
Add history support for QtWebEngine
2016-08-10 13:15:34 +02:00
Florian Bruhin
77531d09df
Move history triggering out of WebView
2016-08-10 13:14:38 +02:00
Florian Bruhin
eed3460317
Add tab.url(requested=True) to get original URL
2016-08-10 13:14:07 +02:00
Jakub Klinkovský
0d4322b1f2
fix braces in boolean assignments
2016-08-10 13:01:41 +02:00
Ryan Roden-Corrent
0c43ca9f09
Don't sort command completions in models.
...
The sortfilter already handles sorting, there is no reason to pre-sort
the entries in the model.
2016-08-10 06:58:34 -04:00
Ryan Roden-Corrent
97a971624b
Show bindings for aliases in completion.
...
Command completions for `:bind` and `:` will now show bindings for
aliases. The binding is only included if it is bound to that alias, not
if it is bound to the command the alias points to.
2016-08-10 06:56:44 -04:00
Ryan Roden-Corrent
051a00804b
Use regular dict in get_reverse_bindings_for.
...
Returning a defaultdict made the caller's code look confusing, as it
wasn't clear why there wouldn't be a Keyerror in some cases. Instead,
let the caller explicitly use `get`.
2016-08-10 06:56:44 -04:00
Ryan Roden-Corrent
709470fbe6
Clean up miscmodels and test_models.
...
- Split up a long conditional into multiple variables.
- Fix a small typo in a related test.
- Remove a trailing comma from an argument list.
2016-08-10 06:56:44 -04:00
Ryan Roden-Corrent
8dbc368d08
Refactor duplicate code for command completion.
...
Consolidate the logic used to generate the command completion category
into one place. This is shared by CommandCompletionModel,
HelpCompletionModel, and BindCompletionModel.
2016-08-10 06:56:44 -04:00
Ryan Roden-Corrent
0ea61d5f15
Show hidden commands in completion for :bind.
...
There is a fair amount of duplicate code around command completion that
could probably be refactored.
Resolves #1707 .
2016-08-10 06:56:44 -04:00
Ryan Roden-Corrent
dd9470af94
Show hidden commands in help completion.
...
Hidden commands are not shown in command completion as they typically
would not be run directly. However, a user might still might like to see
help for them if, for example, they are writing a script or creating a
binding.
Addresses #1707 .
2016-08-10 06:55:46 -04:00
Jakub Klinkovský
a31565f46e
hints: make auto-follow a quadruple option instead of binary
2016-08-10 12:40:16 +02:00
Jan Verbeek
63b9b61e75
Add ClipboardError superexception
2016-08-10 12:33:01 +02:00
Michael Hoang
cc5667f268
Add code to save and restore the old tab position
2016-08-10 19:28:34 +10:00
Jakub Klinkovský
7be942fadc
hints: fix leaving filter in number mode
2016-08-10 11:18:11 +02:00
Florian Bruhin
a734a324ed
Merge branch 'hinttags' of https://github.com/haasn/qutebrowser into haasn-hinttags
2016-08-10 09:52:35 +02:00
Florian Bruhin
bf29c2a753
Import keyconf at file scope again in config.py
...
Various code (like src2asciidoc.py) relies on all @cmdutils.register
decorators being called when qutebrowser.app is imported.
Moving the keyconf import to _init_key_config broke that assumption, as
keyconf isn't imported anywhere anymore - which caused :bind and :unbind
to vanish from the generated documentation.
In the long run we should perhaps use venusian:
http://docs.pylonsproject.org/projects/venusian/
But for now, this is the easiest solution.
2016-08-10 09:40:38 +02:00
Florian Bruhin
cc0579bd1a
Merge branch 'bind-alias' of https://github.com/rcorre/qutebrowser into rcorre-bind-alias
2016-08-10 09:35:28 +02:00
Florian Bruhin
a24391d40d
Fix lint
2016-08-10 09:20:30 +02:00
Florian Bruhin
153b9db8c2
Fix new-instance-open-target.window valid_values
2016-08-10 09:11:26 +02:00
Florian Bruhin
61c031ff23
Merge branch 'lastfocus' of https://github.com/haasn/qutebrowser into haasn-lastfocus
2016-08-10 09:09:58 +02:00
Florian Bruhin
26af2b3089
Fix grammar mistake
2016-08-10 08:48:04 +02:00
Florian Bruhin
dfd58d456a
Merge branch 'pythonoptimize-fix' of https://github.com/lejenome/qutebrowser into lejenome-pythonoptimize-fix
2016-08-10 08:47:34 +02:00
Ryan Roden-Corrent
30d2403b7f
Avoid config/keyconf circular import.
2016-08-09 21:37:12 -04:00
Ryan Roden-Corrent
91ec5cc356
Update command completion on setting an alias.
...
Wire up the config change event to update command completion on
changing aliases, so the new aliases will be included.
Fixes #1814 .
Currently we do not have tests at a high enough level to test whether
signals are wired up correctly to update completions.
2016-08-09 21:37:12 -04:00
Ryan Roden-Corrent
245212efa1
Allow binding to an alias.
...
Fix #1813 : Cannot :bind to alias
2016-08-09 21:37:12 -04:00
Niklas Haas
e0f069f7ca
Extract hint tags from <textarea>
...
This is similar to <input> and also often uses a placeholder or name to
identify itself.
2016-08-10 02:07:33 +02:00
Niklas Haas
6d181e5c6f
Add new-instance-open-target.window setting
...
This adds the ability to open new tabs in the last-focused window
instead, which fixes #1801 .
Right now the only other option is probably not that useful for human
users but it's required to make tests behave deterministically and
consistently. (But with #881 on the roadmap, I would implement this as
another choice)
To this end, also make the test framework set this option to preserve
the invariant against which existing tests are written: that spawning a
new window would effectively also focus it.
2016-08-10 00:06:12 +02:00
Niklas Haas
2223a285ef
Remove ui -> hide-mouse-cursor setting
...
This was currently almost completely broken, yet nobody complained. The
new behavior (in the previous commit) makes this always hide the mouse
cursor, even when an input field has focus.
Since the only two easy options to implement are "never hide" and
"always hide", combined with the fact that both are sort of useless to
an end-user, just remove the option until somebody wants it back.
2016-08-09 23:32:17 +02:00
Niklas Haas
16c2268d09
Fix last-focused-main-window's behavior
...
Right now, get('last-focused-main-window') essentially returns the same
as qApp.activeWindow(), since it's None when no window is focused. This
seems somewhat contrary to its original intent, so I've changed it to
only ever update the object.
This actually fixes another bug as well: on_focus_changed's new is not
always a MainWindow - in fact it's a WebView on my end. To fix this,
directly use the QApplication.activeWindow() to find the current focus.
That second bit in particular actually some related bugs that probably
nobody ever noticed or bothered reporting:
* _maybe_hide_mouse_cursor currently pretty much never gets called
* :adblock-update doesn't actually show any downloads
* ... probably more
2016-08-09 22:41:40 +02:00
Jan Verbeek
7d0064ff86
Fix docstrings
2016-08-09 19:23:38 +02:00
Marshall Lochbaum
8da8441623
Merge auto-open option into show
2016-08-09 13:11:32 -04:00
Marshall Lochbaum
d98c81c9d6
Correct widget behavior when there is no completion
2016-08-09 13:03:38 -04:00
Jakub Klinkovský
108d735e07
hints: fix corner-case in _hint_strings
2016-08-09 18:12:07 +02:00
Jakub Klinkovský
ec5387c674
hints: fix docstrings
2016-08-09 18:09:50 +02:00
Jakub Klinkovský
9841b01d0d
hints: generalize auto-follow for any unique match
...
fixes #1809
2016-08-09 18:09:50 +02:00
Jakub Klinkovský
1d2a34812b
hints: refactor handling of auto-follow option
2016-08-09 18:09:50 +02:00
Jakub Klinkovský
cdcde09b80
hints: refactor filter_hints method
2016-08-09 18:09:47 +02:00
Florian Bruhin
fb3da578c5
Fix lint
2016-08-09 17:28:14 +02:00
Florian Bruhin
809f8e90df
Merge branch 'fix_hiding_hints' of https://github.com/lahwaacz/qutebrowser into lahwaacz-fix_hiding_hints
2016-08-09 16:42:11 +02:00
Jan Verbeek
7e634a1e52
Make vars declarative, new function for URL lists
2016-08-09 16:20:02 +02:00
Florian Bruhin
5066606ddc
Remove spaces inside docstrings
2016-08-09 16:15:23 +02:00
Florian Bruhin
13f80e3f63
Merge branch 'hintmodes' of https://github.com/haasn/qutebrowser into haasn-hintmodes
2016-08-09 16:14:07 +02:00
Florian Bruhin
fefea4944a
QtWebEngine: Make :open-editor work
2016-08-09 16:00:59 +02:00
Florian Bruhin
ca67e2be3c
QtWebEngine js: Get rid of webelem.get_element()
...
Let's do separate JS functions instead so we can easily access them via
utils.javascript.assemble.
2016-08-09 16:00:20 +02:00
Florian Bruhin
1e5b6caa4b
QtWebEngine js: Save element in focus_element()
2016-08-09 15:59:57 +02:00
Niklas Haas
62e58c0ab9
Add a --mode flag to :hints
...
This allows a specific keybinding, for whatever reason, to override the
default mode. Examples of when this could be useful:
* :hint --rapid --mode=word (to type them more rapidly)
* :hint --mode=letter input (if the default mode is number)
Also reword the description of 'group' to make the distinction between
'group' and 'mode' clearer.
2016-08-09 15:34:13 +02:00
Florian Bruhin
9f770adc78
Lower-case WebEngineElement.tag_name() correctly
2016-08-09 15:19:57 +02:00
Jan Verbeek
8e4733f483
Merge https://github.com/The-Compiler/qutebrowser into clip
2016-08-09 14:36:01 +02:00
Florian Bruhin
c0a407235c
Remove unused import
2016-08-09 13:51:18 +02:00
Florian Bruhin
b82823d76a
js: Don't leak to global ns in position_caret.js
2016-08-09 13:36:46 +02:00
Florian Bruhin
1307d8e9a2
Simplify utils.javascript.assemble
2016-08-09 13:21:44 +02:00
Florian Bruhin
4046615b37
WebEngineScroller: Set position to (0,0) initially
...
Since we now use QWebEngineScript, we can't easily know when the script
finished running and we can access window._qutebrowser.scroll.
We instead assume the initial position (if we don't get a
scrollPositionChanged) will always be (0, 0), and explicitly set it
to (None, None) (displaying ???) if we can't connect that signal.
2016-08-09 13:18:33 +02:00
Florian Bruhin
6b7a39685e
Modularize javascript code
...
We now load the JS code as a QWebEngineScript, which sets up
window._qutebrowser with various "modules". That means we don't have to
pass the whole module every time we want to execute something.
2016-08-09 13:17:44 +02:00
Florian Bruhin
1d9113124b
Move .eslintrc to qutebrowser/javascript
2016-08-09 11:04:50 +02:00
Jakub Klinkovský
7271955c56
make hiding unmatched rapid hints configurable
2016-08-09 11:01:58 +02:00
Florian Bruhin
4da53480c2
Re-enable and reconfigure eslint
2016-08-09 11:00:26 +02:00
Florian Bruhin
80016006c4
Use and enforce "use strict"; for JS
2016-08-09 09:55:14 +02:00
Florian Bruhin
c3690bce0d
Merge branch 'hinttags' of https://github.com/haasn/qutebrowser into haasn-hinttags
2016-08-09 08:43:32 +02:00
Marshall Lochbaum
b2067ef186
Remove unused _signals_connected
2016-08-08 18:15:13 -04:00
Marshall Lochbaum
80db69904d
Move auto-open handling to CompletionView from Completer
2016-08-08 16:56:11 -04:00
Florian Bruhin
9fc44e54a4
Fix long line
2016-08-08 19:56:11 +02:00
Jakub Klinkovský
1819b46fe0
suppress hiding hints in rapid mode
...
fixes #1799
2016-08-08 18:41:25 +02:00
addictedtoflames
b750d93891
add time units to timeout descriptions
...
Changed the description for the 'hints/auto-follow-timeout', 'input/timeout' and 'input/partial-timeout' settings to specify that the time should be given in milliseconds
2016-08-08 17:32:41 +01:00
Niklas Haas
6e279f1b1e
Extract hint tags from <button> text
...
This is useful for some styled buttons, including some of those found on
GitHub.
2016-08-08 17:49:35 +02:00
Niklas Haas
cf26201e86
Extract hint tags from <input placeholder="text">
...
This is useful for very many input fields, especially prominent on
GitHub itself.
2016-08-08 17:49:18 +02:00
Florian Bruhin
af8302b678
Remove unused import
2016-08-08 16:32:23 +02:00
Florian Bruhin
9a17591fb7
Start getting :open-editor to work with WebEngine
...
It doesn't actually work yet (as it claims the field is not editable),
but at least does not crash when the backend limitation for the command
is removed.
2016-08-08 16:24:34 +02:00
Florian Bruhin
9d43becc25
Merge branch 'completion-item-focus' of https://github.com/rcorre/qutebrowser into rcorre-completion-item-focus
2016-08-08 15:21:35 +02:00
Florian Bruhin
3c573ac187
Fix upper-case tag names for WordHinter
2016-08-08 15:13:30 +02:00
Florian Bruhin
b8e2d5f8f6
Add initial WebEngineElement implementation
...
This allows :navigate prev/next to work correctly via the javascript
bridge.
2016-08-08 15:02:58 +02:00
Florian Bruhin
1c73751fd9
Always lowercase tagName
2016-08-08 14:11:01 +02:00
Florian Bruhin
9bcce37ff3
WebEngine: Allow :navigate up/decrement/increment
2016-08-08 14:09:28 +02:00
Florian Bruhin
0b16a36120
Clean up handling of focus element
...
Also fixes #1359 .
2016-08-08 14:05:30 +02:00
Florian Bruhin
27330bd4d1
Fix :search-prev with QtWebEngine
...
Fixes #1797
2016-08-08 13:51:42 +02:00
Ryan Roden-Corrent
7038db6b17
Combine completion-item-{prev,next}.
...
- Use a single command completion-item-focus with a next/prev argument.
- Add a rule to translate old configs.
- Regenerate the docs.
See #1095 .
2016-08-08 07:37:53 -04:00
Florian Bruhin
dfbadaf7c2
Split WebElementWrapper into abstract/webkit parts
2016-08-08 13:04:53 +02:00
Moez Bouhlel
c04adb94b2
DocstringParser - support python with optimizations on
2016-08-08 10:01:50 +01:00
Florian Bruhin
734216bc40
Merge branch 'title_change' of https://github.com/blyxxyz/qutebrowser into blyxxyz-title_change
2016-08-08 09:41:29 +02:00
Florian Bruhin
64566fff35
Set maximum value for auto-save-interval correctly
2016-08-08 08:47:21 +02:00
Florian Bruhin
627f743c26
Handle float in _convert_js_arg
...
This fixes 'gg' with QtWebEngine.
2016-08-08 08:04:55 +02:00
Jan Verbeek
6bbde59de7
Rebuild buffer completion when tab title changes
2016-08-07 16:15:24 +02:00
Jan Verbeek
864c95007f
Unhide :insert-text and allow outside insert mode
...
:insert-text works if a text element is focused, even outside insert
mode.
2016-08-07 14:29:52 +02:00
Jan Verbeek
ebfe23c376
Merge https://github.com/The-Compiler/qutebrowser into clip
...
Also make it possible to use multiple variables in one argument.
2016-08-07 13:14:46 +02:00
Florian Bruhin
96087bd554
Fix up pretty URL yanking
2016-08-07 11:40:26 +02:00
Florian Bruhin
b6fbd3ce3a
Merge branch 'better-variables' of https://github.com/blyxxyz/qutebrowser into blyxxyz-better-variables
2016-08-07 11:33:01 +02:00
Florian Bruhin
26e0383d45
Merge branch 'refactor_command_completion' of https://github.com/rcorre/qutebrowser into rcorre-refactor_command_completion
2016-08-07 11:29:50 +02:00
Florian Bruhin
eb2f682e20
Merge branch 'fix-windows-editor' of https://github.com/Kingdread/qutebrowser into Kingdread-fix-windows-editor
2016-08-07 11:17:21 +02:00
Florian Bruhin
1b3664d9c8
keyconfig: Validate commands *after* transforming
...
Otherwise we'd still get an error when e.g. transforming :yank-selected
to :yank selection as :yank-selected got removed.
2016-08-07 11:10:59 +02:00
Florian Bruhin
88d3e86259
Use "what != 'url-pretty'"
2016-08-07 11:02:50 +02:00
Florian Bruhin
efada0a44c
Merge branch 'yank-refactor' of https://github.com/mlochbaum/qutebrowser into mlochbaum-yank-refactor
2016-08-07 11:02:24 +02:00
Florian Bruhin
0b93272786
Merge branch 'sortfilter_tests' of https://github.com/rcorre/qutebrowser into rcorre-sortfilter_tests
2016-08-07 10:46:28 +02:00
Ryan Roden-Corrent
adc428e525
Perfect coverage for sortfilter.
...
Mark an area of sortfilter with `#pragma no coverage` and add it to
perfect_files.
2016-08-06 20:48:21 -04:00
Jan Verbeek
dc69a90e69
Add :insert-text command
...
See #1790 .
:paste-primary now calls :insert-text and can be deprecated by
:insert-text {primary} after #1791 is merged.
2016-08-07 02:46:10 +02:00
Marshall Lochbaum
006a934913
Migrate yank keybindings
2016-08-06 20:35:49 -04:00
Marshall Lochbaum
28485b0731
Migrate -p to -s for :yank selection keybinding
2016-08-06 20:35:06 -04:00
Marshall Lochbaum
47969362e1
Fix minor conditional issues in yank
2016-08-06 20:15:51 -04:00
Marshall Lochbaum
a90662ef83
Fix combined yank documentation
2016-08-06 20:13:50 -04:00
Jan Verbeek
38508274e0
Improve clipboard exceptions, migrate bindings
2016-08-07 00:46:23 +02:00
Daniel Schadt
9a4655443f
os.unlink -> os.remove
...
The functions do the same, but remove sounds better.
2016-08-07 00:11:58 +02:00
Jan Verbeek
96146c55af
Remove useless clipboard target information
2016-08-06 22:25:08 +02:00
Jan Verbeek
0177dafbd0
Add {clipboard} and {primary} to replace :paste
...
:paste is deprecated and replaced by equivalents using :open and the
new variables, and :open supports opening newline-separated lists of
URLs.
2016-08-06 22:03:50 +02:00
Daniel Schadt
f23a28079c
editor: fix external editor on windows
...
On windows, only one process can open a file in write mode at once. We
didn't close the handle we got (self._oshandle) before _cleanup, which
means that we had the file open the whole time, which means that the
external editor couldn't write back the changes.
This patch closes the file while the external editor is running and only
opens it once the editor is closed. We re-opened the file anyway, so
this shouldn't be a huge change. Additionally, tempfile.NamedTemporaryFile
is used instead of mkstemp, as we don't have to deal with os-level file
handles that way.
2016-08-06 20:04:25 +02:00
Ryan Roden-Corrent
66358e5b0f
Remove usertypes.Completion.empty.
...
Completion.empty existed to fill a slot in the old Command.completions
interface if the first positional arg had no completions but the second
did, as is the case for the `bind` command. Now that
`Command.completions` is replaced by `Command.get_pos_arg_info`, this
is no longer needed.
2016-08-06 12:01:09 -04:00
Ryan Roden-Corrent
c792ffda67
Remove Command.completion.
...
Command completion types are now identified by ArgInfo, so just use
that directly and cut out the middle-man. This shouldn't change any
completion behavior.
Adds a test for get_pos_arg_info to test_cmdutils.
Modifies test_completer to test the use of get_pos_arg_info. Instead of
using FakeCommand, real Command objects are used, to validate that the
Completer works with the real Command interface. This also cleans out
some test cases that were testing things already covered by other cases.
2016-08-06 11:59:04 -04:00
Marshall Lochbaum
54ba27cf77
Merge :yank-selected into :yank ( fixes #820 )
...
Changes :yank's flag arguments to a positional "what" argument
specifying the object to be yanked. Including "selection" as a
possibility allows for the replacement of :yank-selected with
:yank selection.
2016-08-05 22:01:17 -04:00
Jan Verbeek
1e97247c63
Revert spawn's splitting, blacklist from doc
...
Blacklist spawn from getting the no_replace_variables doc note.
2016-08-05 18:04:14 +02:00
Florian Bruhin
778ccad39f
Move most :navigate code to browser.navigate
2016-08-05 17:28:48 +02:00
Florian Bruhin
68595e1736
Make sure base URL for resolve_url is absolute
2016-08-05 17:12:09 +02:00
Florian Bruhin
7a65559cce
Move hints._resolve_url to a WebElement method
2016-08-05 17:09:52 +02:00
Jan Verbeek
8a527b5faf
Make :spawn parse normally without maxsplit
2016-08-05 16:52:47 +02:00
Florian Bruhin
4541f19195
Fix crash when doing :<space><enter>
...
Introduced in #1577 .
Fixes #1773 .
2016-08-05 15:42:03 +02:00
knaggita
d25e1fde04
Add :debug-log-capacity command
2016-08-05 15:05:27 +02:00
Florian Bruhin
e2ae133757
Split up HintActions from HintManager
2016-08-05 12:37:25 +02:00
Florian Bruhin
d8521f43ee
Change tab.find_all_elements() to be async
2016-08-05 12:37:25 +02:00
Florian Bruhin
0169f3a24f
Add _qutebrowser_ prefix for custom JS functions
...
With QtWebKit or QtWebEngine with Qt < 5.7, the functions end up in the
page's namespace. We can't easily avoid this, but at least we can name
them in a way which reduces conflicts.
2016-08-05 10:31:07 +02:00
Florian Bruhin
ab0d9ca499
Remove another unneeded FIXME
...
Closes #112 .
[ci skip]
2016-08-05 09:35:06 +02:00
Florian Bruhin
da6118bd8d
Hide "QXcbClipboard: SelectionRequest too old"
...
Fixes #1287 .
2016-08-05 08:31:44 +02:00
Florian Bruhin
94cf3fa4ff
QtWebEngine: Restore Qt 5.6 compatibility
2016-08-04 21:33:53 +02:00
Florian Bruhin
029ea2e5a7
Add miscwidgets.WrapperLayout.wrap
...
This makes it easier for an user of WrapperLayout to wrap a widget.
2016-08-04 19:22:44 +02:00
Florian Bruhin
7b211e0b65
QtWebEngine: Run javascript in ApplicationWorld
...
This means the JS context will be isolated from the webpage itself, and
the webpage won't be able to access things we define.
2016-08-04 18:14:29 +02:00
Florian Bruhin
a8ef956726
Add quotes for strings in javascript.assemble
2016-08-04 17:58:40 +02:00
Florian Bruhin
08b70f0f4c
Add qutebrowser.utils.javascript
...
webelem.javascript_escape got renamed to javascript.string_escape, and a
new javascript.assemble got added to make it easier to call a function
inside a .js file.
2016-08-04 17:53:13 +02:00
Jan Verbeek
7999c493ac
Remove unnecessary import, split long line
2016-08-04 15:16:35 +02:00
Jan Verbeek
827de1743d
Document no_replace_variables, misc fixes
...
Add no_replace_variables to the asciidoc, improve its description in
the decorator, remove now unnecessary argument parsing in set-cmd-text
2016-08-04 13:21:19 +02:00
Florian Bruhin
6021dc6394
Merge branch 'open-download-fixes' of https://github.com/Kingdread/qutebrowser into Kingdread-open-download-fixes
2016-08-04 12:46:44 +02:00
Florian Bruhin
764c232033
Split inspector into web{engine,kit}inspector
2016-08-04 12:44:46 +02:00
Florian Bruhin
ee68a58001
Hide QtWebEngine web inspector warning
2016-08-04 12:09:16 +02:00
Daniel Schadt
d21b42662d
Minor Text Fixes
...
default (program) -> default application
surround {} with backticks
mention that the filename will be appended in the docstrings
2016-08-04 12:07:51 +02:00
Daniel Schadt
017bfc9b9c
open-download: append filename if no {} is found
...
This allows shortcuts like ":download-open gvim" instead of
":download-open gvim {}" to work.
2016-08-04 11:50:35 +02:00
Jan Verbeek
c7c5a98506
Allow {url} and {url:pretty} as parts of arguments
...
This makes commands like `:open web.archive.org/web/{url}` possible.
This commit also adds a no_replace_variables command register argument
that stops the replacement from happening, which is important for
commands like `:bind` and `:spawn` that take a command as an argument.
2016-08-04 02:43:02 +02:00
Daniel Schadt
5ca8f77fca
lint fixes
2016-08-03 18:16:28 +02:00
Daniel Schadt
71102cceb0
docstring & documentation fixes
2016-08-03 18:06:28 +02:00
Daniel Schadt
e8bfc25bbc
downloads: replace placeholder in cmdline
...
This allows commands like --file={} to work properly.
2016-08-03 17:59:32 +02:00
Daniel Schadt
a85227fa25
download-open: add cmdline parameter
2016-08-03 17:59:32 +02:00
Daniel Schadt
fa6c552d7b
add an application param for prompt-open-download
2016-08-03 17:59:32 +02:00
Daniel Schadt
716ce701f5
utils: move elide_filename to own function
...
Also increase the elide limit in TempDownloadManager to 50, since that's
probably still enough for all systems.
2016-08-03 17:59:32 +02:00
Florian Bruhin
33677a8449
More pylint pragmas for QtWebEngine
2016-08-03 17:43:22 +02:00
Florian Bruhin
54ae106789
default key config: Bind J to :tab-next again
...
This was originally added in #868 , but since then we changed the default
binding for gt (for :buffers).
It also accidentally shadowed the T binding which should be bound to
:tab-focus. See #1753 .
2016-08-03 17:25:53 +02:00
Florian Bruhin
23ce4561c8
Fix lint
2016-08-03 16:48:48 +02:00
Florian Bruhin
0ddb27709d
Re-add geometry saving code to WebEngine inspector
2016-08-03 16:29:46 +02:00
Florian Bruhin
61e0c8327a
Don't access QWES.globalSettings() on module-level
...
Otherwise we implicitly create a webengine context, which means setting
QTWEBENGINE_REMOTE_DEBUGGING won't work anymore.
2016-08-03 15:32:56 +02:00
Florian Bruhin
614893bdd6
Initial broken inspector support for QtWebEngine
2016-08-03 15:23:32 +02:00
Florian Bruhin
9851a13981
Add utils.random_port()
2016-08-03 13:08:55 +02:00
Florian Bruhin
dbccb12b49
Move WrapperLayout to miscwidgets
2016-08-03 13:08:25 +02:00
Florian Bruhin
5f5b395343
pylint: Ignore failing QtWebEngineWidgets import
2016-08-03 12:16:13 +02:00
Florian Bruhin
43c81cc3a4
Fix KeyError with unknown options
2016-08-03 11:58:42 +02:00
Florian Bruhin
11e7f7c334
Remove unused imports
2016-08-03 11:37:05 +02:00
Florian Bruhin
cae7eead6f
QtWebEngine: Basic settings support
2016-08-03 11:35:08 +02:00
Florian Bruhin
2ee95df9e7
Change the default hint implemenation to Python
...
This only affects drawing hints, JS is still used if possible to
actually click them.
It seems like for many people, the JS implementation was a lot slower
than the Python one...
2016-08-03 09:40:05 +02:00
Florian Bruhin
1fb4aa3532
Merge branch 'tab-open-implicit' of https://github.com/mlochbaum/qutebrowser into mlochbaum-tab-open-implicit
2016-08-03 09:16:49 +02:00
Florian Bruhin
79d2116b18
Remove unneeded 'return'
2016-08-03 09:07:12 +02:00
Florian Bruhin
77dd2a105f
Add cmdutils.check_overflow in _set_current_index
2016-08-03 08:57:05 +02:00
Marshall Lochbaum
af9e956cb6
Remove config update code for --implicit flag
2016-08-02 15:29:18 -04:00
Marshall Lochbaum
299d4865d0
Move --implicit flag argument to the end of _open
2016-08-02 15:26:49 -04:00
Marshall Lochbaum
feed1ccda4
Change gO, xO, and ;O keybindings to open an implicit tab
2016-08-02 14:10:36 -04:00
Marshall Lochbaum
66adbc9323
Add --implicit flag to :open
2016-08-02 13:49:25 -04:00
Marshall Lochbaum
d30da4f905
Update tab_focus docstring
2016-08-02 11:50:21 -04:00
Marshall Lochbaum
8a127f2839
Remove cmdutils.arg_or_count
2016-08-02 11:31:03 -04:00
Florian Bruhin
a3047008dd
Bump up filename length limit to 50
...
The usual limit seems to be 255 bytes, so even when assuming 5-byte
UTF-8 chars for every letter, 50 should be fine.
http://serverfault.com/questions/9546/filename-length-limits-on-linux/9548#9548
2016-08-02 16:12:09 +02:00
Florian Bruhin
b8ef6fa44e
Merge branch 'open-download-fixes' of https://github.com/Kingdread/qutebrowser into Kingdread-open-download-fixes
2016-08-02 16:11:34 +02:00
Florian Bruhin
43ff1b0d97
Tunnel private-browsing to QtWebKit correctly
2016-08-02 14:19:31 +02:00
Florian Bruhin
4a5b5c496f
Fix using a relative path with --basedir
2016-08-02 14:08:28 +02:00
Florian Bruhin
b17296db0d
Return with invalid index
2016-08-02 12:03:29 +02:00
Florian Bruhin
b8aeb9f80e
Fix lint
2016-08-02 12:03:29 +02:00
Ryan Roden-Corrent
a393adc6c7
Don't crash completion with auto-open/show False.
...
If both are false, the selectionModel may be None.
In this case, don't try to move the index.
Resolves #1722 .
2016-08-01 22:36:04 -04:00
Ryan Roden-Corrent
6e2d78b826
Don't crash on tab with no completions.
...
first_item and last_item return an invalid index when there are no
items in the completion, and the completionwidget will throw on an
invalid index. However, setting an invalid index on the selection view
is fine, so just remove the assertion.
Resolves #1731 .
2016-08-01 22:16:55 -04:00
Daniel Schadt
57ceaeeb55
open-download: don't crash on download cancel
...
Fixes #1728 .
2016-08-02 01:10:40 +02:00
Daniel Schadt
b187b680cb
open-download: force encoding for filename
...
Fixes #1726 .
2016-08-02 01:00:57 +02:00
Daniel Schadt
abcdaa9cce
open-download: make sure the name is not too long
...
Fixes #1725 .
Make sure that the temporary filename is not too long by restricting the
suggested part to 20 characters.
2016-08-02 00:57:22 +02:00
Daniel Schadt
9973cd5037
downloads: don't crash on OSError in open-download
...
Fixes the crash in #1725 , but does not provide a solution. The browser
won't crash, but the file won't be downloaded and opened either.
2016-08-02 00:46:59 +02:00
Florian Bruhin
ef439bb916
Fix ;o/;O default bindings
2016-08-01 18:19:34 +02:00
Florian Bruhin
49699be44e
Ignore TypeError on contents_size_changed cleanup
2016-08-01 17:40:41 +02:00
Florian Bruhin
81d0d64731
QtWebEngine: Fix crash when closing/reopening tabs
2016-08-01 17:25:55 +02:00
Florian Bruhin
5ec39b7540
Fix crash when opening http://foo%40bar@baz
2016-08-01 17:18:14 +02:00
Florian Bruhin
68b273de87
Merge branch 'generalize-list-type' of https://github.com/mlochbaum/qutebrowser into mlochbaum-generalize-list-type
2016-08-01 16:22:13 +02:00
Florian Bruhin
4414f5fea9
Merge branch 'tab-move-index' of https://github.com/mlochbaum/qutebrowser into mlochbaum-tab-move-index
2016-08-01 16:17:09 +02:00
Florian Bruhin
62f9161d03
Merge branch 'completer_tests' of https://github.com/rcorre/qutebrowser into rcorre-completer_tests
2016-08-01 16:02:53 +02:00
Florian Bruhin
86669600ff
Consider input elements without type for hinting
2016-08-01 15:49:50 +02:00
Marshall Lochbaum
5accef963d
Move _show_inner_type class variables before __init
2016-08-01 09:31:59 -04:00
Marshall Lochbaum
aa40ff6dd4
Remove none_ok from startpage config type
2016-08-01 09:30:26 -04:00
Florian Bruhin
c421f44f4e
Specify completion category font in HTML
...
It seems like specifying a font for QTreeView::item in a Qt stylesheet
doesn't actually do anything.
2016-08-01 14:56:51 +02:00
Florian Bruhin
1bba1e3ea9
Remove whitespace
2016-08-01 14:35:57 +02:00
Florian Bruhin
3d1f28ac9c
Merge branch 'master' of https://github.com/nanjekyejoannah/qutebrowser into nanjekyejoannah-master
2016-08-01 14:35:06 +02:00
nanjekyejoannah
3d4e76b1a4
commit resolving issue#1395
2016-08-01 15:20:44 +03:00
nanjekyejoannah
4d3cbe659d
refactor for configdatap.py resolving #1395
2016-08-01 14:30:20 +03:00
nanjekyejoannah
633c95bca6
resolving style things in commit resolving issue #1395
2016-08-01 14:14:15 +03:00
nanjekyejoannah
1e94685653
Refactoring to resolve issue #1395
2016-08-01 14:00:30 +03:00
Florian Bruhin
2baadaf565
Remove now useless pylint suppressions
2016-08-01 12:47:19 +02:00
Florian Bruhin
13269ef388
Wrap long lines
2016-08-01 12:46:47 +02:00
Florian Bruhin
a772e8a2c3
Mark :set-mark/:jump-mark as hidden
...
Fixes #1708 .
2016-08-01 12:21:18 +02:00
nanjekyejoannah
212d5fe932
commit resolving issue #1395
2016-08-01 11:28:27 +03:00
Ryan Roden-Corrent
a086095954
Implement unix_filename_rubout.
...
unix_filename_rubout deletes to the previous slash or whitespace,
unlike the previously implemented backwards-kill-word which treats and
non-alphanumeric character as a boundary.
To illustrate, given the text 'foo/bar.baz', unix_filename_rubout will
delete 'bar.baz' while backwards-kill-word will delete only 'baz'.
See #1710 .
2016-07-30 19:34:38 -04:00
Ryan Roden-Corrent
6bcdacf1ce
Implement readline's backward-kill-word.
...
This restores the previous behavior of `unix-word-rubout` as
`backward-kill-word`, which is closer to the naming used in readline.
It is bound to <Alt-Backspace> by default, though <Ctrl-Backspace> will
also work due to a builtin binding.
Resolves #1698 .
2016-07-30 07:27:29 -04:00
Marshall Lochbaum
a7438f4f15
Extend tab-move's direction argument to take an index ( fixes #1701 )
2016-07-29 23:06:51 -04:00
Marshall Lochbaum
b22634e2eb
Correct qutebrowser.conf documentation for list types
2016-07-29 16:08:42 -04:00
Ryan Roden-Corrent
fbadc5e668
Remove second arg from on_selection_changed.
...
The deselected argument was unused, so remove it from the signal and
the slot.
2016-07-29 08:48:24 -04:00
Florian Bruhin
14eabc7160
Merge branch 'completion_trivial' of https://github.com/lahwaacz/qutebrowser into lahwaacz-completion_trivial
2016-07-29 12:08:10 +02:00
Florian Bruhin
066c9bf4dc
Split websettings into web{kit,engine,}settings
2016-07-29 12:01:22 +02:00
Florian Bruhin
08a9786a73
Add a stub for WebEnginePage.createWindow
...
See #1699 .
2016-07-29 10:35:14 +02:00
Florian Bruhin
cffe2281b1
Use qtmodeltester for completion model tests
...
See http://pytest-qt.readthedocs.io/en/latest/modeltester.html
See #1702
2016-07-29 10:26:55 +02:00
Jakub Klinkovský
2a70146db1
Remove unneeded invalidateFilter call.
...
First done in b5781f0ed3
and later
reverted in a6f1bf29ae
because it had
broken "completion->shrink", but that is no longer the case.
2016-07-29 10:15:21 +02:00
Jakub Klinkovský
119f9c0e18
completion: get rid of model-specific sort method (see #545 )
2016-07-29 10:13:32 +02:00
Jakub Klinkovský
49327dfcbb
completion: highlight only the matched terms
...
closes #1650
2016-07-29 10:13:32 +02:00
Jakub Klinkovský
caf5937585
completion: get rid of custom_filter (see #545 )
2016-07-29 10:13:27 +02:00
Florian Bruhin
af704439d9
Remove trailing newline
2016-07-29 09:05:25 +02:00
Claire Cavanaugh
3d258df23a
Heil PEP8 :P
2016-07-28 23:24:34 -07:00
Claire Cavanaugh
bf44636a24
:open opens quickmark when given a quckmark name
2016-07-28 22:50:10 -07:00
Ryan Roden-Corrent
e8f73b0fe6
Break up MainWindow.__init__.
...
Split out initialization of a few areas into private functions so
pylint won't complain about a long method.
2016-07-28 12:20:24 -04:00
Ryan Roden-Corrent
dd827332c0
Clean up unused imports from completion refactor.
2016-07-28 12:20:24 -04:00
Ryan Roden-Corrent
f31e890862
Move completion_item_{next,prev} to CompletionView.
...
These commands are more closely tied to the CompletionView than
Completer. This removes the need for an extra signal tying the
CompletionView to the Completer.
The call to _open_completion_if_needed was moved to
on_selection_changed, as this will already be called when a new item is
selected.
2016-07-28 12:20:24 -04:00
Ryan Roden-Corrent
ffc5a42d04
Don't use objreg to get CompletionView.
...
The CompletionView is the parent of the Completer, so there's no need
to use objreg to get it.
See #640 .
2016-07-28 12:20:24 -04:00
Ryan Roden-Corrent
b9cf9d180b
Decouple Completer and CompletionView.
...
Rather than having a CompletionView instantiate and register a
Completer, instantiate both in MainWindow. The CompletionView is the
parent of the Completer, and communicates by emitting
selection_changed, meaning it no longer needs to contain a reference to
the Completer.
2016-07-28 12:20:24 -04:00
Ryan Roden-Corrent
d836fcb118
Code review for completion tests.
...
- clean up docstring typos
- use _ to name an unused loop variable
- parent the filter model to avoid an issue with disposal
- use mocker.patch instead of monkeypatch to mock Completer creation
- use is instead of == to compare by identity
2016-07-28 12:20:24 -04:00
Ryan Roden-Corrent
e5da179ebf
Limit the public interface of Completer.
...
Only schedule_completion_update and selection_changed are used
externally, so mark the rest of the API as private.
2016-07-28 12:20:24 -04:00
Florian Bruhin
b48b7eddc8
Add no-cover pragma for _rect_on_view_js
2016-07-28 17:33:04 +02:00
Florian Bruhin
56515321dd
Handle failing javascript in webelem.rect_on_view
...
Fixes #1641 .
2016-07-28 17:10:31 +02:00
Florian Bruhin
5463e133ee
Split webelem.rect_for_view into two methods
2016-07-28 17:09:07 +02:00
Florian Bruhin
d6b6afdf11
Fix WebElementWrapper.__eq__
2016-07-28 15:57:25 +02:00
Florian Bruhin
1213b91b66
Fix ALL the contentsSizeChanged connections!
2016-07-28 15:29:56 +02:00
Florian Bruhin
9cbf9eaa76
Disconnect contents_size_changed during cleanup
2016-07-28 14:59:23 +02:00
Florian Bruhin
21c1dec59a
Actually handle contents_size_changed correctly
2016-07-28 14:56:42 +02:00
Florian Bruhin
d357ccf403
Add some more WebElementWrapper tests
2016-07-28 14:25:53 +02:00
Florian Bruhin
b0a0984fe7
Add missing check_vanished in remove_blank_target
2016-07-28 13:13:21 +02:00
Florian Bruhin
41e6a2392a
QtWebEngine: Add stub for find_all_elements
2016-07-28 12:36:09 +02:00
Florian Bruhin
631109e5eb
Fix raising of WebTabError
2016-07-28 12:36:09 +02:00
Florian Bruhin
d87840e254
Fix lint
2016-07-28 12:36:09 +02:00
Florian Bruhin
540c62c232
Add only_visible to find_all_elements
2016-07-28 12:36:09 +02:00
Florian Bruhin
5b943a431e
Fix WebElementWrapper.text
2016-07-28 12:36:09 +02:00
Florian Bruhin
49f57a5d7e
Fix userscripts
2016-07-28 12:36:09 +02:00
Florian Bruhin
5eca6e11a5
Fix editor/paste-primary
2016-07-28 12:36:09 +02:00
Florian Bruhin
e051de4843
Fix word hinting
2016-07-28 12:36:09 +02:00
Florian Bruhin
ffdaf8d470
Move webelem.is_visible/.rect_on_view to methods
2016-07-28 12:36:09 +02:00
Florian Bruhin
4318604c57
Don't use javascript in webelem.set_text for hints
2016-07-28 12:36:09 +02:00
Florian Bruhin
193c755637
Refactor WebElement API, part 2
...
Now we don't get a crash, but not any hints either...
2016-07-28 12:35:59 +02:00
Florian Bruhin
c5a91004f5
Add contents_size_changed to tab API
2016-07-28 12:35:56 +02:00
Florian Bruhin
c764733472
Refactor QWebElement API, part 1
2016-07-28 12:35:49 +02:00
Florian Bruhin
016c13a998
Use repr() for rfc2622 logging
2016-07-28 07:28:21 +02:00
Florian Bruhin
caab826e8a
Use repr() for IPC logging messages
2016-07-28 07:14:54 +02:00
Marshall Lochbaum
2c37de3ac1
Revert startpage config type to String instead of Url
2016-07-27 14:21:25 -04:00
Florian Bruhin
73cd0e01ef
Fix deleting of quickmarks with ctrl-d
2016-07-27 19:44:34 +02:00
Marshall Lochbaum
642abac634
Remove BaseList type
2016-07-27 13:06:15 -04:00
Marshall Lochbaum
b205ad500b
Add tests for configtypes.Url
2016-07-27 12:44:10 -04:00
Marshall Lochbaum
b4fec256dc
Merge LengthList into List
2016-07-27 12:39:03 -04:00
Florian Bruhin
04aa98d7fb
Release v0.8.1
2016-07-27 12:41:40 +02:00
Florian Bruhin
0eb74dcc1b
Hide harfbuzz warning if frozen
2016-07-27 12:15:10 +02:00
Florian Bruhin
7b82d81784
Improve error message on OS X without QtWebEngine
2016-07-27 12:13:22 +02:00
Florian Bruhin
9ff006746f
Handle empty command in CommandRunner.parse_all
...
Sicne we now call self._get_alias there, we also need to make sure it's
not an empty string before that.
Introduced in #1577 . Fixes #1690 .
2016-07-27 11:19:01 +02:00
Florian Bruhin
be609d5779
Improve logging for BaseKeyParser
...
See #1653
2016-07-27 10:27:53 +02:00
Florian Bruhin
ccbd47a0cd
Merge branch 'savefile_open-flush' of https://github.com/flv0/qutebrowser into flv0-savefile_open-flush
2016-07-27 10:11:33 +02:00
Marshall Lochbaum
a3c7ed51d4
Create LengthList to remove WebKitBytesList and refactor Padding
2016-07-26 23:59:55 -04:00
Marshall Lochbaum
083baf1222
Remove unnecessary List subclasses
2016-07-26 23:05:42 -04:00
Marshall Lochbaum
9e86933913
Replace List with BaseList and rename GenList to List
2016-07-26 23:02:10 -04:00
Marshall Lochbaum
d77145a5b8
Add GenList type and refactor *List types to use GenList
2016-07-26 21:34:50 -04:00
Florian Bruhin
cd905841e0
Don't log on_focus_changed warning if new is None
2016-07-26 23:27:20 +02:00
Florian Bruhin
2121865bdd
Show jsret value in update_scroll_pos callback
2016-07-26 23:26:20 +02:00
Marshall Lochbaum
b2c2d5a4f4
Add --delete option to bookmark-load
2016-07-26 13:49:17 -04:00
Marshall Lochbaum
d9247c15a4
Coding style fixes
2016-07-26 09:48:35 -04:00
Marshall Lochbaum
28842c90b6
Add --toggle flag to bookmark-add ( fixes #1667 )
2016-07-26 09:07:21 -04:00
Florian Bruhin
b12c984846
Release v0.8.0
2016-07-26 13:30:41 +02:00
Florian Bruhin
07e0ae5584
Un-hide --backend argument
2016-07-26 13:30:41 +02:00
Florian Bruhin
3ccb691e9f
tab API: Rename scroll to scroller
...
The scroll attribute did overwrite QWidget.scroll which is unfortunate.
2016-07-26 13:19:07 +02:00
Florian Bruhin
878fa26247
Use real slots for QtWebKit signals
...
Otherwise we can get this when immediately quitting:
Traceback (most recent call last):
File ".../qutebrowser/browser/webkit/webkittab.py", line 580, in <lambda>
not self._widget.page().error_occurred))
RuntimeError: wrapped C/C++ object of type WebView has been deleted
2016-07-26 12:55:40 +02:00
Florian Bruhin
49977a32c4
Remove unused imports
2016-07-26 11:09:24 +02:00
Florian Bruhin
70d6f90f08
Display key hint for :prompt-download-open
...
This also splits up _display_question into one method per mode.
2016-07-26 11:08:03 +02:00
Florian Bruhin
d70f3a0417
Merge branch 'Kingdread-open-download'
2016-07-26 10:54:59 +02:00
Florian Bruhin
36b0054238
Add keyconf.get_reverse_bindings_for
2016-07-26 10:50:50 +02:00
Florian Bruhin
f4f6a3dac1
Merge branch 'open-download' of https://github.com/Kingdread/qutebrowser into Kingdread-open-download
2016-07-26 10:32:34 +02:00
Florian Bruhin
da64db853e
Update docs
2016-07-26 08:36:16 +02:00
Florian Bruhin
dab17b801e
Merge branch 'mark-del-no-args' of https://github.com/mlochbaum/qutebrowser into mlochbaum-mark-del-no-args
2016-07-26 08:33:17 +02:00
Florian Bruhin
1564563662
Don't enable warnings if log was never inited
...
Otherwise, anything importing qtutils (which uses ignore_py_warnings
on module level) would enable warnings. This means pylint showed its own
warnings because of qute_pylint.config.
2016-07-25 13:03:58 +02:00
Florian Bruhin
c3f53312af
Fix 'is not' string comparison
2016-07-23 19:51:13 +02:00
Florian Bruhin
e887d9a381
Remove useless super-calls
2016-07-23 18:39:27 +02:00
Marshall Lochbaum
3ffb726b98
Merge branch 'master' into mark-del-no-args
2016-07-23 12:12:19 -04:00
Marshall Lochbaum
1781d0fba3
Use DoesNotExistError rather than CommandError in get_by_qurl
2016-07-23 12:05:21 -04:00
Marshall Lochbaum
9758b52d91
Assume _current_url is valid (remove try/except)
2016-07-23 12:05:21 -04:00
Marshall Lochbaum
02731743c0
Use qtutils.ensure_valid instead of testing isValid in get_by_qurl
2016-07-23 12:05:11 -04:00
Marshall Lochbaum
cba25d2bbb
Remove quickmark_del and bookmark_del from the urlmark classes (use delete instead)
2016-07-23 10:55:57 -04:00
Florian Bruhin
91b754d6ea
Merge branch 'issue_1033_bookmark_display' of https://github.com/winged/qutebrowser into winged-issue_1033_bookmark_display
2016-07-23 15:42:33 +02:00
David Vogt
1f320b8686
Various fixes after code review.
...
* Move documentation changes of bookmark / quickmarks to docstrings, as the
asciidoc is autogenerated from those
* Fix some whitespaces in the BDD test cases
* Improved docstring in qute_bookmarks handler
2016-07-23 14:50:28 +02:00
Florian Bruhin
02a06732ff
Also ignore ImportWarning for pkg_resources import
2016-07-23 14:15:39 +02:00
David Vogt
11bf5c8809
Minor cleanups. Whitespace / indentation CSS.
...
There were some CSS classes that were not used in the bookmarks page.
Also, fixes a small indentation / code alignment issue
2016-07-23 13:06:56 +02:00
Florian Bruhin
40a3e24b05
Ignore warning when importing pkg_resources
...
On Debian Jessie we get a PendingDeprecationWarning which we now see
since the log is init'ed earlier.
2016-07-23 13:04:53 +02:00
Florian Bruhin
64f208486e
Add log.ignore_py_warnings()
2016-07-23 13:04:45 +02:00
Florian Bruhin
36bb5cf285
Merge branch 'issue_1670_tests_fail_due_to_SSL_error' of https://github.com/ganwell/qutebrowser into ganwell-issue_1670_tests_fail_due_to_SSL_error
2016-07-23 12:46:16 +02:00
David Vogt
8bbfcc01be
Sort bookmarks / quickmarks by title or name respectively.
2016-07-23 12:32:05 +02:00
David Vogt
85be6565fc
Implement feature request #1033 : Bookmark display
...
There is a new page now, qute:bookmarks that will display all bookmarks and
quickmarks. It's still missing a search / filter feature, but you can use
the built-in search / navigation just as easily for now.
2016-07-23 12:09:49 +02:00
Jean-Louis Fuchs
f040fd5a6d
Ignore missing SSLv3 messages from Qt
2016-07-23 10:01:56 +00:00
Jean-Louis Fuchs
ef01566621
Initialize qt logging to qutebrowser as early as possible
2016-07-23 09:54:13 +00:00
Florian Bruhin
76eab7617b
Remove @pyqtSlot for functions and non-QObjects
...
Fixes #1669
2016-07-23 11:42:50 +02:00
Marshall Lochbaum
19949101c6
Make quickmark_del with no argument delete the current page's mark ( fixes #1661 )
2016-07-21 22:32:04 -04:00
Marshall Lochbaum
83005bc072
Make bookmark_del with no argument delete the current page's mark
2016-07-21 21:14:54 -04:00
Florian Bruhin
63e466f019
Remove @pyqtSlot for some non-QObject classes
...
Not sure if I got all, but at least I got the ones which fail
immediately on start.
See #1669 .
2016-07-21 14:56:12 +02:00
Jakub Klinkovský
202883fc03
fix #1657
...
The _filterstr attribute was not cleaned up properly and persisted
between hintings. In this case, it was set to something representing the
Escape key.
2016-07-17 17:36:35 +02:00
Florian Bruhin
d867a789c2
Re-enable crash reports for QtWebEngine
2016-07-17 14:27:01 +02:00
Florian Bruhin
d710a98f46
Fix lint
2016-07-15 15:52:48 +02:00
Florian Bruhin
e2c4e6301f
QtWebEngine: Implement scroll.at_top()
2016-07-15 14:00:41 +02:00
Florian Bruhin
695864281b
QtWebEngine: Implement pixel scroll position in JS
2016-07-15 13:04:44 +02:00
Florian Bruhin
7adc8ab2d6
QtWebEngine: Implement scroll position based on JS
2016-07-15 12:52:27 +02:00
Florian Bruhin
d079caafa8
Add possibility to disable spellcheck
2016-07-15 00:07:37 +02:00
Florian Bruhin
a8dc940b73
test/vulture reqs: Update vulture to 0.10
...
* Detect unused function and method arguments.
* Detect unused *args and **kwargs parameters.
* Change license from GPL to MIT.
2016-07-14 23:17:39 +02:00
Florian Bruhin
675e6eca23
Add old tab.seperator spellings to DELETED_OPTIONS
...
This was never caught due to the bug in the last commit, but now makes
reading very old configs fail.
2016-07-14 16:59:33 +02:00
Florian Bruhin
7b9d38e438
Fix config values being lost with DELETED_OPTIONS
...
When an option was deleted, we accidentally stopped reading instead of
ignoring that one option and then resuming.
2016-07-14 16:58:54 +02:00
Daniel Schadt
b995b9d5da
downloads: fix docstrings for new return value
2016-07-13 22:25:23 +02:00
Florian Bruhin
ff89ae7839
Merge branch 'master' of https://github.com/blyxxyz/qutebrowser into blyxxyz-master
2016-07-13 21:21:37 +02:00
Florian Bruhin
c9176b7c58
QtWebEngine: Fix 'unset' with run_js_blocking
2016-07-13 18:17:37 +02:00
Florian Bruhin
a7509d5978
Fix lint
2016-07-13 16:01:12 +02:00
Jan Verbeek
13cbdbb8bd
Record mode for :repeat-command before executing
2016-07-13 15:24:45 +02:00
Florian Bruhin
5b1cca92ab
Add run_js_blocking to tab API
2016-07-13 13:47:30 +02:00
Florian Bruhin
c83a8a64dc
QtWebEngine: Implement scroll.delta_page
2016-07-13 11:26:53 +02:00
Florian Bruhin
602d10c495
QtWebEngine: Implement scroll.to_point/.delta
2016-07-13 11:21:50 +02:00
Florian Bruhin
b78b89f04f
QtWebEngine: Implement :scroll-perc via JS
2016-07-13 10:55:04 +02:00
Florian Bruhin
9c49900f9e
QtWebEngine: Add JS logging
2016-07-13 10:55:04 +02:00
Daniel Schadt
7597221776
fix lint
2016-07-12 22:39:21 +02:00
Daniel Schadt
940b124253
switch set literal to list literal
...
See PR #1642 .
😗 🎶
2016-07-12 22:31:43 +02:00
Jan Verbeek
0cd39ae4ff
Change sets to lists
2016-07-12 22:21:05 +02:00
Jan Verbeek
bbc46d28ff
Use lists instead of tuples for comparing
...
Per one of the diff comments on #1597 :
> I used to use a tuple for constant things, but nowadays I'd actually
> prefer a list as a tuple is something more heterogeneous (i.e. it
> makes sense to have a `(x, y)` point as a tuple, but a list of points
> would be a list).
> At some point I should probably change it to a list everywhere 😉
2016-07-12 22:05:32 +02:00
Florian Bruhin
40455b2692
Always set FindWrapsAroundDocument in WebKitSearch
...
We accidentally set it to never wrap with the wrap-search option
removal, but we want to *always* wrap.
2016-07-12 17:28:59 +02:00
Florian Bruhin
54c00deb5b
Remove checking of 'wrap' in WebEngineSearch
...
wrap functionality was removed, so no point in doing this here.
2016-07-12 17:28:28 +02:00
Daniel Schadt
a088f238e5
usertypes: remove Frankenstein's enum
...
This approach is not as weird in Python and still works.
DownloadTarget.OpenDownload has been renamed to OpenFileDownloadTarget,
since OpenDownloadDownloadTarget didn't look as nice.
2016-07-12 17:10:36 +02:00
Daniel Schadt
ed5fb4de4a
downloads: make get_tmpdir private
2016-07-12 17:06:40 +02:00
Daniel Schadt
17175ec3d4
mhtml: remove duplicated usertypes import
2016-07-12 17:06:40 +02:00
Daniel Schadt
d42d980dda
downloads: introduce target= param for .get/.fetch
...
This parameter replaces the filename and fileobj parameters. This makes
it easier to add more download targets, since only one may be "chosen".
With the OPEN_DOWNLOAD special case added, handling of filename got a
bit ugly, since it may be either None, OPEN_DOWNLOAD or a str with the
file path, and we had to make sure only one target was chosen.
With the new target enum, this handling can be simplified and we
automatically get the guarantee that only one target is chosen.
2016-07-12 17:06:40 +02:00
Daniel Schadt
16e1f8eac9
downloads: fix docstring for .get()
...
An earlier commit removed the prompt_download_directory parameter, it is
now passed via **kwargs and should thus be removed from the docstring.
2016-07-12 16:52:01 +02:00
Daniel Schadt
203dad0004
fix lint
2016-07-12 16:52:01 +02:00
Daniel Schadt
8795f89c88
tests: fix tests for downloads bdd test
...
The test was failing because of two reasons:
First, the old code had filename questions in DownloadManager.get and
DownloadManager.fetch which were almost identical, thus the part in
DownloadManager.get was removed in an earlier commit. All filename
asking is now done by DownloadManager.fetch. The good part is code
deduplication, the bad part is slightly modified behavior: The new code
doesn't wait for a filename to start the download, instead it tries to
fill the buffer immediately. This made the test fail because qute:// has
no registered handler, so in order for the test to pass now, the "no
crash" part is not enough, we also need to expect the "No handler"
error.
Secondly, and a rather rare (race) condition was the handling of errors
in the DownloadItem. If an error occured after the registration of
self.on_reply_error as error handler and before the check
reply.error() != QNetworkReply.NoError
at the end of the function, the error signal would be emitted twice:
Once by _die() (called by on_reply_error), and once by the init_reply
function directly (in the last if block). This lead to duplicated error
messages. This is also explained in a comment in the file (with small
"stack traces").
2016-07-12 16:52:01 +02:00
Daniel Schadt
b130c2a284
keybindings: add default for prompt-open-download
2016-07-12 16:52:01 +02:00
Daniel Schadt
81b2688c70
downloads: use global TempDownloadManager
...
This way, all temporary downloads will end up in the same directory and
everything is cleaned up at program exit, not when the corresponding
window is closed.
2016-07-12 16:52:01 +02:00
Daniel Schadt
c060f9e5c2
allow downloads to be openened directly
...
The file is saved in a temporary directory, which is cleaned up when the
window is closed.
2016-07-12 16:52:01 +02:00
Jan Verbeek
cafe7181c7
Blacklist command-accept, hide repeat-command
...
prompt-accept was blacklisted instead of command-accept.
2016-07-12 16:48:33 +02:00
Florian Bruhin
64b32ec87d
Remove general -> wrap-search
2016-07-12 16:47:57 +02:00
Florian Bruhin
f0da508c21
Move searching out of WebView subclass
...
This also makes it work for QtWebEngine.
It also seems to fix #1050 though I'm not 100% sure why.
2016-07-12 16:29:50 +02:00
Florian Bruhin
cd4eff364a
Add printing to tab API
...
This fixes printing for QtWebKit, and hopefully will make printing to
PDF work with QtWebEngine with Qt >= 5.7
2016-07-12 12:54:11 +02:00
Jan Verbeek
ee4b24a5dc
Blacklist leave-mode, use "not in"
2016-07-12 11:03:36 +02:00
Florian Bruhin
7a39021d41
Merge branch 'issues/1630' of https://github.com/jdkaplan/qutebrowser into jdkaplan-issues/1630
2016-07-12 10:07:59 +02:00
Jeremy Kaplan
6b2b096f3c
Add test for :print --pdf
2016-07-11 20:08:24 -04:00
Jeremy Kaplan
62ae793a24
Generate docs
2016-07-11 20:07:54 -04:00
Jan Verbeek
508c0f21fa
Blacklist prompt-accept, remove mode_allowed
2016-07-12 00:23:34 +02:00
Florian Bruhin
d315a3131d
Require QtWebEngine with --backend webengine
2016-07-11 22:51:05 +02:00
Florian Bruhin
4f9be56d7d
Merge branch 'add-bookmark-by-url' of https://github.com/ismail-s/qutebrowser into ismail-s-add-bookmark-by-url
2016-07-11 20:54:09 +02:00
Florian Bruhin
3d4cf1fc92
QtWebEngine: Fix icon access on Qt < 5.7
2016-07-11 18:24:38 +02:00
Florian Bruhin
ed5af29ac9
Fix lint
2016-07-11 16:43:06 +02:00
Florian Bruhin
f2c52f96a1
Fix _on_url_changed
2016-07-11 16:33:19 +02:00
Florian Bruhin
8b67d68d4a
Move qtutils.ensure_valid in WebView.openurl
2016-07-11 16:32:24 +02:00
Florian Bruhin
e80475ed57
Remove support for showing JS statusbar messages
...
Closes #1579 .
2016-07-11 16:19:44 +02:00
Florian Bruhin
d0aea24568
Remove WebView.linkHovered signal
2016-07-11 16:09:17 +02:00
Florian Bruhin
914f9db8ca
Actually connect _on_url_changed slot
2016-07-11 16:05:09 +02:00
Florian Bruhin
f46d6cbe27
Fix url_text, take 3
2016-07-11 15:06:36 +02:00
Florian Bruhin
9b75e661e2
Fix missed url_text substitutions
2016-07-11 14:59:35 +02:00
Florian Bruhin
5d6eedcd49
Move URL/title handling to AbstractTab
2016-07-11 14:36:57 +02:00
Florian Bruhin
a470bfc3f3
Get rid of url_text_changed signal
...
Instead we simply use url_changed which (similar to Qt's urlChanged)
simply has a QUrl argument.
2016-07-11 14:28:51 +02:00
Florian Bruhin
5cbd540e15
Get rid of WebView.cur_url attribute
...
The only thing which differs from url() is that it got set immediately
after openurl() was called, which might or might not have improved
something.
Let's see if things still work the same without it.
2016-07-11 14:20:46 +02:00
Florian Bruhin
7e36884cbd
Add some debug logging to early QWEW import
...
See #1640
2016-07-11 13:49:24 +02:00
Florian Bruhin
6a07d231f4
pykint: Add some disable=unused-variable
2016-07-11 13:18:31 +02:00
Florian Bruhin
a64937122d
Drop unneeded .keys()
2016-07-11 13:13:16 +02:00
Florian Bruhin
1d237b0569
pylint: ignore wrong-import-position project-wide
...
While it's more accurate with isort now, we get a wrong-import-position
for everything in scripts/ where we have to do the sys.path magic first.
2016-07-11 13:00:37 +02:00
Florian Bruhin
c558a8b4ad
Add missing docstring
2016-07-11 12:42:51 +02:00
Florian Bruhin
e9d606a782
Move load_status / SSL errors to AbstractTab
2016-07-11 12:09:41 +02:00
Florian Bruhin
6ae232d8fc
Move 'progress' to AbstractTab
...
This makes load progress work with QtWebEngine.
2016-07-11 11:31:59 +02:00
Florian Bruhin
8567fffdad
Merge branch 'qtwebengine'
2016-07-11 10:56:20 +02:00
Florian Bruhin
b4f993e2ab
Add an early-import for QtWebEngineWidgets
2016-07-11 09:18:05 +02:00
Jeremy Kaplan
a6a030e92f
Add :print --pdf flag to skip printing dialog
2016-07-10 21:58:54 -04:00
Florian Bruhin
01b7b27bda
Fix lines which are now too long
2016-07-10 17:33:36 +02:00
Florian Bruhin
b791095324
Rename browser.tab module and classes
2016-07-10 17:27:02 +02:00
Florian Bruhin
d2ece6b542
Move Backend enum to usertypes
...
Otherwise we have a cyclic import
2016-07-10 17:04:26 +02:00
Florian Bruhin
34e39bed4e
Add a test for cmd instance with wrong backend
2016-07-10 17:04:25 +02:00
Florian Bruhin
b07cca023b
Fix Command.run with no arguments
2016-07-10 17:04:25 +02:00
Florian Bruhin
0ab601aaf3
Make it possible to limit commands to backends
2016-07-10 16:57:02 +02:00
Florian Bruhin
11cd5f8653
Don't register webview in objreg
...
All places now should use the tab API instead.
2016-07-08 17:21:33 +02:00
Florian Bruhin
67eea1678e
Move tab registry from webview to tab
2016-07-08 17:13:18 +02:00
Florian Bruhin
dcf39538a3
Improve objreg error message if no window is given
2016-07-08 17:09:20 +02:00
Ismail S
fd7342b055
Move """ to separate line
2016-07-08 15:58:47 +01:00
Ismail S
5ad66c29e1
Update docstring
2016-07-08 15:38:58 +01:00
Ismail S
babbd0771c
Refactor code
2016-07-08 15:33:13 +01:00
Florian Bruhin
7360ea69ba
Fix lint
2016-07-08 13:08:31 +02:00
Florian Bruhin
06a6daee34
Add stubs for QtWebEngine
2016-07-08 12:53:48 +02:00
Florian Bruhin
cc11af5e28
Fix lint
2016-07-08 11:21:00 +02:00
Florian Bruhin
b1fda1b0ef
Get rid of tab.run_webaction
...
As mentioned here:
e4b0b7fffd (r70002693)
It makes no sense to add a backend-specific run_webaction method to
AbstractTab - better to just access _widget directly in this one place
instead of adding something backend-speficic to the API.
2016-07-08 10:42:54 +02:00
Florian Bruhin
55784f9783
Add tab.create() helper function
2016-07-08 10:38:52 +02:00
Florian Bruhin
334f6cda4f
tab: Rename modeman to mode_manager
...
To avoid it being mixed up with the modeman module
2016-07-08 10:38:51 +02:00
Florian Bruhin
f9eecaf584
Fix typo
2016-07-08 10:09:49 +02:00
Florian Bruhin
09f4c2199e
Rename widget to tab in some places
...
This also fixes the cur_url access.
2016-07-08 10:08:44 +02:00
Florian Bruhin
b8086d1d13
mhtml: web_view -> tab rename
...
Otherwise this sounds like we still have a QWebView.
This also fixes the cur_url access.
2016-07-08 10:08:11 +02:00
Florian Bruhin
2befebaf3a
Don't use properties for AbstractTab
...
Otherwise exceptions in there could be hidden by Python/PyQt.
Some places are not changed yet, as there are also other renames in the
next commits.
2016-07-08 10:05:46 +02:00
Florian Bruhin
ecd399181d
Fix AbstractSearch attribute docs
2016-07-08 09:15:28 +02:00
Jan Verbeek
a8c55ffe08
Stop downloads bar from pushing away status bar
2016-07-07 23:11:08 +02:00
Ismail S
3b0fb84c47
Allow adding bookmarks by url
2016-07-07 20:16:19 +01:00
Florian Bruhin
e4b0b7fffd
Fix lint
2016-07-07 20:12:17 +02:00
Florian Bruhin
dde8ac6844
Use __slots__ for tab.TabData
2016-07-07 19:36:27 +02:00
Florian Bruhin
b999090a51
Hide --backend argument for now
2016-07-07 19:28:00 +02:00
Florian Bruhin
0207f8758b
Only disable reports with --backend webengine
2016-07-07 18:32:52 +02:00
Florian Bruhin
2fd01e57e6
Add default value for --backend argument
2016-07-07 18:32:52 +02:00
Florian Bruhin
ee7b4256a9
Fix AbstractTab repr() with no URL available
2016-07-07 18:32:52 +02:00
Florian Bruhin
d9516b9c1d
Adjust various comments
2016-07-07 18:32:52 +02:00
Florian Bruhin
3c99436950
Make on_* methods in tab private
2016-07-07 18:32:52 +02:00
Florian Bruhin
868f781f4d
Rename zoom._set_default_zoom to zoom.set_default
2016-07-07 18:32:52 +02:00
Florian Bruhin
1c9d0857cb
Various cleanups
2016-07-07 18:32:52 +02:00
Florian Bruhin
40f0aa0023
Fix pylint without QtWebEngine available
2016-07-07 18:32:52 +02:00
Florian Bruhin
7e3e9618b2
Revert "Adjust QtWebKit _key_press to QtWebEngine one"
...
This reverts commit f52326c5eea83e58d95afb696480600c6a8a5b7b.
For some reason this causes a lot of segfaults...
2016-07-07 18:32:52 +02:00
Florian Bruhin
e1bad17f2a
Split up SessionManager._save_tab_item
2016-07-07 18:32:52 +02:00
Florian Bruhin
b23ddb31c9
Fix lint
2016-07-07 18:32:52 +02:00
Florian Bruhin
be02bfb37d
Unify arguments for on_mode_* slots in Caret
2016-07-07 18:32:52 +02:00
Florian Bruhin
df2c50aa60
Add class docstrings for webkittab/webenginetab
2016-07-07 18:32:52 +02:00
Florian Bruhin
de60ad04dc
Fix mouse wheel zooming
2016-07-07 18:32:52 +02:00
Florian Bruhin
f72f82fb0c
QtWebEngine: Fix userData() call on session saving
2016-07-07 18:32:52 +02:00
Florian Bruhin
b78de501c2
Adjust QtWebKit _key_press to QtWebEngine one
2016-07-07 18:32:52 +02:00
Florian Bruhin
47ce6aff89
Send QtWebEngine fake key events to focus proxy
...
This fixes simple scrolling with QtWebEngine.
2016-07-07 18:32:52 +02:00
Florian Bruhin
ec053f8007
Simplify TabData implementation
...
This uses direct attributes instead of self._data which means we can
only override __setattr__, and pylint will better understand what's
happening.
2016-07-07 18:32:52 +02:00
Florian Bruhin
40d28b80bf
Fix typo
2016-07-07 18:32:52 +02:00
Florian Bruhin
2bd07937e5
Remove unnecessary TabData.__getattr__ code
...
__getattribute__ is used in that case; see
https://github.com/PyCQA/pylint/issues/979
2016-07-07 18:32:52 +02:00
Florian Bruhin
09f025628f
Use tab.AbstractTab for signals/slots
2016-07-07 18:32:52 +02:00
Florian Bruhin
7444f83dbf
Fix importing of QtWebEngine specific code
2016-07-07 18:32:52 +02:00
Florian Bruhin
17466b4f26
Fix some lint
2016-07-07 18:32:52 +02:00
Florian Bruhin
7b37d85150
Pass modeman as argument to AbstractTab
2016-07-07 18:32:52 +02:00
Florian Bruhin
e0cd878606
Fix/tunnel mhtml downloads
2016-07-07 18:32:52 +02:00
Florian Bruhin
0719101b6f
Also tunnel :paste-primary
2016-07-07 18:32:52 +02:00
Florian Bruhin
21b282ce29
Get rid of _DummyUserscriptRunner
...
This simplifies the code a bit and only provides
userscript.run_async (and not the UserscriptRunner class) as entrypoint.
2016-07-07 18:32:52 +02:00
Florian Bruhin
a6307497c0
Rewrite userscripts to work with async dumping
2016-07-07 18:32:52 +02:00
Florian Bruhin
edafa7c99f
Tunnel a few features until we have a proper API
2016-07-07 18:32:52 +02:00
Florian Bruhin
3c71337698
Handle OverflowError when scrolling
2016-07-07 18:32:52 +02:00
Florian Bruhin
0937a64f1c
Fix :inspect
2016-07-07 18:32:52 +02:00
Florian Bruhin
675f95a2e4
Add stubs for on_mode_{entered,left} for WebEngine
...
This means at least we won't get a crash when using the commandline.
2016-07-07 18:32:52 +02:00
Florian Bruhin
12fc0821c0
Try to implement some QtWebEngine scrolling
2016-07-07 18:32:52 +02:00
Florian Bruhin
9c5143786c
Implement scroll.pos_perc for QtWebEngine
2016-07-07 18:32:52 +02:00
Florian Bruhin
a1f4dcd542
Add QWebEngineView subclass
2016-07-07 18:32:52 +02:00
Florian Bruhin
822e193682
Fix :view-source
2016-07-07 18:32:52 +02:00
Florian Bruhin
04ee021bdb
Add AbstractTab.set_html
2016-07-07 18:32:52 +02:00
Florian Bruhin
78f425c98b
Add AbstractTab.data
2016-07-07 18:32:52 +02:00
Florian Bruhin
70b7314b76
Fix :debug-webaction
2016-07-07 18:32:52 +02:00
Florian Bruhin
deb0a10973
Add AbstractTab.backend attribute
2016-07-07 18:32:52 +02:00
Florian Bruhin
4de48620e3
Fix loading of sessions
2016-07-07 18:32:52 +02:00
Florian Bruhin
a62e2a0c27
Fix :undo
2016-07-07 18:32:52 +02:00
Florian Bruhin
09c3528585
Fix loading of marks
...
This probably broke when merging from master.
2016-07-07 18:32:52 +02:00
Florian Bruhin
5dfd8d68bf
Set focus proxy for AbstractTab
...
By default, the AbstractTab object got the focus, which means things
like key events passed to it didn't actually get passed through to the
web view, causing these tests to fail:
tests/end2end/features/test_keyinput_bdd.py::test_forwarding_all_keys
tests/end2end/features/test_keyinput_bdd.py::test_forwarding_special_keys
Now we make sure the real underlying WebView always gets the keyboard
focus.
2016-07-07 18:32:52 +02:00
Florian Bruhin
3c3043eeae
Add tab.clear_ssl_errors()
...
This fixes :debug-clear-ssl-errors
2016-07-07 18:32:52 +02:00
Florian Bruhin
86f63e1ae6
Add tab.new_tab_requested signal
2016-07-07 18:32:52 +02:00
Florian Bruhin
4d650c8dfd
Add tab.caret.follow_selected()
2016-07-07 18:32:52 +02:00
Florian Bruhin
1148184892
Add tab.set_open_target
...
This fixes :follow-selected
2016-07-07 18:32:52 +02:00
Florian Bruhin
5dd4b2d56a
Fix :buffer completion
2016-07-07 18:32:52 +02:00
Florian Bruhin
52efa9f185
Make AbstractHistory.history private
2016-07-07 18:32:52 +02:00
Florian Bruhin
b0ba2125a3
Fix :undo
2016-07-07 18:32:52 +02:00
Florian Bruhin
aebc29337a
Move __iter__ to AbstractHistory
2016-07-07 18:32:52 +02:00
Florian Bruhin
59c9ee88e5
Quick fix for createWindow
2016-07-07 18:32:52 +02:00
Florian Bruhin
94b856c565
Make self._widget private in wrappers
...
While we need to set it from the outside (from AbstractTab) this still
is not considered public API for the rest of the code, so let's make it
private.
2016-07-07 18:32:52 +02:00
Florian Bruhin
0b88c5d413
Re-implement searching for QtWebKit
2016-07-07 18:32:52 +02:00
Florian Bruhin
515d16f137
Move selection()/has_selection() to caret
2016-07-07 18:32:52 +02:00
Florian Bruhin
9f130c6b27
Disable crash reports
2016-07-07 18:32:52 +02:00
Florian Bruhin
5c535213ad
Random cleanups
2016-07-07 18:32:52 +02:00
Florian Bruhin
ac4186a0f0
Tunnel :hint and :navigate
2016-07-07 18:32:52 +02:00
Florian Bruhin
5fe2230e1f
Fix various scrolling issues
2016-07-07 18:32:52 +02:00
Florian Bruhin
16c397a9d2
Fix various zooming issues
2016-07-07 18:32:52 +02:00
Florian Bruhin
edb65ecf50
Add run_js_eval and get :jseval to run
2016-07-07 18:32:52 +02:00
Florian Bruhin
cd95f94ac8
Disallow None-callback for dump_async
2016-07-07 18:32:52 +02:00
Florian Bruhin
21753bc65f
Make AbstractCaret a QObject
2016-07-07 18:32:52 +02:00
Florian Bruhin
e21edd3e18
Implement selection
2016-07-07 18:32:52 +02:00
Florian Bruhin
90614d1fe3
Initial caret browsing support
2016-07-07 18:32:52 +02:00
Florian Bruhin
34d3d2cda6
Full scrolling implementation
2016-07-07 18:32:52 +02:00
Florian Bruhin
56852821e8
Try to fix _back_forward
2016-07-07 18:32:52 +02:00
Florian Bruhin
7319ced0bc
Fix history deserializing
2016-07-07 18:32:52 +02:00
Florian Bruhin
67ffa67968
Fix deserialize call
2016-07-07 18:32:52 +02:00
Florian Bruhin
7cbe174f1e
Fix set_zoom_factor call
2016-07-07 18:32:52 +02:00
Florian Bruhin
7e607a0cf2
Add icon()
2016-07-07 18:32:52 +02:00
Florian Bruhin
4fea285740
Add win_id attribute
2016-07-07 18:32:52 +02:00
Florian Bruhin
363f3d7ea7
Replace scroll_pos by scroll_pos_px()/_perc()
2016-07-07 18:32:52 +02:00
Florian Bruhin
ed716b2b90
Make session saving work
2016-07-07 18:32:52 +02:00
Florian Bruhin
2d590c581d
Make :reload and :stop work
2016-07-07 18:32:52 +02:00
Florian Bruhin
6a42e0c96c
Make shutdown work
2016-07-07 18:32:52 +02:00
Florian Bruhin
55753171f1
Make :back/:forward work
2016-07-07 18:32:52 +02:00
Florian Bruhin
3ee58fdea3
Get :debug-dump-page to work
2016-07-07 18:32:52 +02:00
Florian Bruhin
5b9ae8bc85
Initial history implementation
2016-07-07 18:32:52 +02:00
Florian Bruhin
8e5a86fb13
Don't require QtWebEngine
2016-07-07 18:32:52 +02:00
Florian Bruhin
bf286f8c74
Fix some tests
2016-07-07 18:32:52 +02:00
Florian Bruhin
115021b8ea
Get QtWebEngine to start and work somewhat
2016-07-07 18:32:52 +02:00
Florian Bruhin
b0a391932a
Get qutebrowser to run
2016-07-07 18:32:52 +02:00
Florian Bruhin
048f7dcaf5
Refactor signals
2016-07-07 18:32:52 +02:00
Florian Bruhin
4305966f7b
Add WrapperLayout/AbstractTab
2016-07-07 18:32:52 +02:00
Florian Bruhin
ade9b17b22
Remove now unused version.GPL_BOILERPLATE
2016-07-07 08:58:02 +02:00
Florian Bruhin
ebf9bc4e0a
Improve version output
2016-07-06 23:47:59 +02:00
Florian Bruhin
794a275383
Merge branch 'status-position' of https://github.com/blyxxyz/qutebrowser into blyxxyz-status-position
2016-07-06 13:56:55 +02:00
Florian Bruhin
b429b919b5
Merge branch 'completer_tests' of https://github.com/rcorre/qutebrowser into rcorre-completer_tests
2016-07-06 13:35:13 +02:00
Florian Bruhin
ab123b8c80
Merge branch 'userscript_vars' of https://github.com/blyxxyz/qutebrowser into blyxxyz-userscript_vars
2016-07-06 13:25:16 +02:00
Florian Bruhin
70117265d6
Fix some a/an misspellings
...
Thanks to https://github.com/jwilk/anorack
2016-07-05 08:34:03 +02:00
Jan Verbeek
965459ab36
Add status-position option
...
See #1257 .
I can't think of a good way to do widget-packing because tabs can be on
the left or right.
2016-07-04 18:21:09 +02:00
Jan Verbeek
955478799b
Shorten repeat-command description, remove .i, .o
...
If .i and .o exist there's a delay before . gets accepted.
2016-07-04 13:39:00 +02:00
Ryan Roden-Corrent
1ea28890b5
Move completion_item_del to completion widget.
...
It was implemented as a member of the Completer object, but registered
to the CompletionWidget. This led to the weird scenario where self was
actually a CompletionWidget, even though it was declared in Completer.
2016-07-03 17:35:17 -04:00
Florian Bruhin
e3c6a0b766
Handle OSError when closing download fileobj
2016-07-03 18:26:21 +02:00
Florian Bruhin
3a73351779
Merge branch 'patch-2' of https://github.com/edi9999/qutebrowser into edi9999-patch-2
2016-07-01 22:53:49 +02:00
Jan Verbeek
9678fd1e09
Make argument description more clear + style fix
2016-07-01 19:17:50 +02:00
Jan Verbeek
cc67dba9f1
Add and use $QUTE_DATA_DIR, $QUTE_DOWNLOAD_DIR
...
Also fix a few small issues in the userscripts like unquoted variables
and trailing whitespace.
2016-07-01 15:53:21 +02:00
Florian Bruhin
b178099f44
Merge branch 'completion_tests' of https://github.com/rcorre/qutebrowser into rcorre-completion_tests
2016-07-01 14:36:32 +02:00
Florian Bruhin
f1de4cc0cf
Revert "Strip newline char with :edit-url"
...
This reverts commit ac9fee310d
.
2016-07-01 13:52:08 +02:00
Florian Bruhin
ac9fee310d
Strip newline char with :edit-url
2016-07-01 13:50:28 +02:00
Florian Bruhin
af37272246
Merge branch 'edit-url' of https://github.com/blyxxyz/qutebrowser into blyxxyz-edit-url
2016-07-01 13:40:00 +02:00
Florian Bruhin
4ae3df62c5
Handle invalid URLs in :jump-mark
2016-06-30 20:59:18 +02:00
Jan Verbeek
6fbbc3f123
Only load with :edit-url if the URL was changed, remove count argument
2016-06-30 17:48:06 +02:00
Florian Bruhin
ce8315b720
Document :hint input and add default binding
...
See #1607 , #1499
2016-06-30 17:33:51 +02:00
Ryan Roden-Corrent
f50b8bb8e8
Use iter instead of __iter__.
...
Corrent two places this was used.
2016-06-30 07:26:02 -04:00
Florian Bruhin
f6fbb098cc
Remove redundant sentence in docstring
2016-06-30 12:40:52 +02:00
Florian Bruhin
900ad1ba6d
Merge branch 'alias-multi-commands' of https://github.com/mgoral/qutebrowser into mgoral-alias-multi-commands
2016-06-30 12:34:18 +02:00
Florian Bruhin
99d921f169
Merge branch 'scroll' of https://github.com/blyxxyz/qutebrowser into blyxxyz-scroll
2016-06-30 12:18:15 +02:00
Florian Bruhin
0f34e6b374
Merge branch 'fix-dvorak' of https://github.com/Dietr1ch/qutebrowser into Dietr1ch-fix-dvorak
2016-06-30 10:01:34 +02:00
Jan Verbeek
2ab1d35a7c
Remove useless import and global declaration, add missing whitespace
2016-06-30 03:13:40 +02:00
Jan Verbeek
320b9cac3f
Move repeat-command, make it work with multiple modes, improve tests
2016-06-30 02:22:02 +02:00
Jan Verbeek
64731c2053
Fix confusing indent
2016-06-29 21:23:42 +02:00
Jan Verbeek
f9afa190b1
Handle check for allowed mode better
2016-06-29 20:58:29 +02:00
Jan Verbeek
cc1899ebca
Add tests for repeat-command, make compatible with different count methods
2016-06-29 20:29:56 +02:00
Jan Verbeek
980cf5ada1
Documentation, check if config dir exists
2016-06-29 13:39:18 +02:00
Jan Verbeek
5e9fa2b57e
Make gg accept count
2016-06-29 00:12:44 +02:00
Florian Bruhin
87496617a4
Hide QtWebKit image format warning
...
This was hidden for tests in c390c797b2
but should be hidden for normal usage as well.
2016-06-28 20:46:06 +02:00
Patric Schmitz
217b912f3c
revert custom exception throwing in savefile_open
...
instead adapt test_failing_flush to catch correct exception (ValueError).
2016-06-28 15:03:23 +02:00
Patric Schmitz
a33978ee89
fix error handling in savefile_open and tests
2016-06-28 12:59:00 +02:00
Patric Schmitz
69ce9a942c
move savefile flush into try: block
...
it seems flush might throw which will not be caught inside the (try-)
else branch. (hopefully) fixes config corruption when no space
available.
2016-06-28 00:58:56 +02:00
Jan Verbeek
7c350a29d5
Add $QUTE_CONFIG_DIR for userscripts ( #937 )
2016-06-27 22:16:25 +02:00
Jan Verbeek
7a6d26ef86
Fix protected-access for last_command (not sure what to do for _modes and _not_modes)
2016-06-27 18:40:47 +02:00
Jan Verbeek
81f25251a5
Fix singleton-comparison
2016-06-27 18:21:35 +02:00
Jan Verbeek
f654013372
Add repeat-command (.) command
2016-06-27 17:38:11 +02:00
Dietrich Daroch
bd8c576322
Fix Dvorak hint chars
...
- Use the whole home row
- Produce easier chords
- 2-key chords alternate hands first (f[aoeui][dhtns])
- This is indeed a poor patch for easier chords as it should work on
every home-row, but there are not that much homerows around.
2016-06-25 16:34:43 -04:00
Edgar Hipp
bfeba3cee6
Update readline.py
2016-06-22 17:15:03 +02:00
Edgar Hipp
9e1c7e0117
Update readline.py
2016-06-22 16:30:38 +02:00
Florian Bruhin
4fccc89d7d
Split browser into browser/browser.webkit
2016-06-13 11:18:21 +02:00
Florian Bruhin
f70a75978b
Move browser.network.pastebin to misc
2016-06-13 09:48:53 +02:00
Michał Góral
4b883c089e
Fixed linters.
2016-06-12 23:04:14 +02:00
Michał Góral
7ee99ba043
Moved searching for aliases to CommandRunner.parse_all()
...
This addresses issue with having alias for multiple commands splitted by ';;'.
See: The-Compiler/qutebrowser#956 .
2016-06-12 21:09:10 +02:00
Daryl Finlay
bf32c544a2
Refactor tab and window title update methods
2016-06-10 23:36:43 +01:00
Daryl Finlay
054e9ab439
Add host placeholder to window and tab title formats
2016-06-10 21:59:43 +01:00
Florian Bruhin
acf54c5cbe
Release v0.7.0
2016-06-10 15:18:56 +02:00
Florian Bruhin
ff7d6250c6
Improve original URL handling
...
When setting self._orig_url by hand, sometimes on redirects the wrong
URL was picked up.
2016-06-10 14:41:08 +02:00
Florian Bruhin
66938ed44b
Full redirect support for history
...
When a redirect occurs, the item is saved in history with a -r suffix
now. When opening qutebrowser that's picked up and the item is hidden
from completion.
2016-06-10 14:40:42 +02:00
Florian Bruhin
9298fa697b
Allow to pass atime to WebHistory.add_url
...
This makes a lot of tests easier and/or more exact.
2016-06-10 12:12:29 +02:00
Florian Bruhin
f691439149
Make WebHistory parent optional
2016-06-09 21:14:04 +02:00
Florian Bruhin
1d1c71f919
Strip of trailing spaces for history entries
2016-06-09 21:14:04 +02:00
Florian Bruhin
b8fba0a138
Add some documentation to WebHistory
2016-06-09 21:14:04 +02:00
Florian Bruhin
e9e6da6510
Remove WebHistory.__getitem__
2016-06-09 21:14:04 +02:00
Florian Bruhin
33f01d8375
Fix lint
2016-06-09 21:14:03 +02:00
Florian Bruhin
d5abfa3d0d
Check if original URL is valid
2016-06-09 21:14:03 +02:00
Florian Bruhin
9510af9912
Use QUrl with QWebHistory
...
Now that we have our own history implementation, we get the URLs as QUrl
and not as string - so no point in converting them to string and back.
2016-06-09 21:14:03 +02:00
Florian Bruhin
6304565a9a
Refactor browser.history
...
- Rename HistoryEntry to Entry
- Move history line parsing from WebHistory.async_read to Entry.from_str
- Improve errors for invalid history lines
- Pass history directory/filename from the outside to WebHistory
- Clear temp history after reading it when async_read is done
2016-06-09 21:14:00 +02:00
Florian Bruhin
446abefba5
Make sure there is no temp history without datadir
2016-06-09 17:44:04 +02:00
Florian Bruhin
34ba44b0a3
Separate WebHistoryInterface from WebHistory
2016-06-09 17:44:04 +02:00
Florian Bruhin
089131c79d
Improve error message when clicking invalid link
2016-06-09 17:43:33 +02:00
Florian Bruhin
ab8a2f7147
Fix lint
2016-06-09 17:12:23 +02:00
Florian Bruhin
035526848e
Add a hints -> find-implementation setting
...
This makes it possible to switch to an alternative implementation if
there are weird issues like #1568 . Some users might also prefer the
slightly better performance over more accurate hints.
2016-06-09 17:00:08 +02:00
Samuel Loury
8369140b72
Strip the url before processing it
...
This won't hurt and will help with some poorly formatted sites
including blank spaces around the url (e.g. the Previous link in a
dashboard make with CDash 2.0.2).
2016-06-09 08:23:53 +02:00
Florian Bruhin
4fe6935003
Merge branch 'lowercase-toggle' of https://github.com/EliteTK/qutebrowser into EliteTK-lowercase-toggle
2016-06-08 22:39:19 +02:00
Florian Bruhin
01a622bf02
history tests: Sync with :save better
2016-06-08 22:32:39 +02:00
Tomasz Kramkowski
573c25073d
Fix toggle config using capitalised boolean value.
2016-06-08 19:06:00 +01:00
Florian Bruhin
e08c6cb059
Don't save the original URL for redirected pages
...
See #1345
2016-06-08 17:15:08 +02:00
Florian Bruhin
263b5680c7
Improve :history-clear docstring
2016-06-08 16:49:07 +02:00
Florian Bruhin
483a5f8103
Fix sharing of cookie jars with private browsing
...
Fixes #1219
2016-06-08 16:35:43 +02:00
Florian Bruhin
530721522a
Fix lint
2016-06-08 15:38:52 +02:00
Florian Bruhin
34f7b196b7
Merge branch 'toofar-history-title'
2016-06-08 15:28:10 +02:00
Florian Bruhin
1b2c6d30c5
Fix typo
2016-06-08 15:22:21 +02:00
Florian Bruhin
f17d4388fd
Use fully encoded URL for history
...
Otherwise e.g. spaces are literal spaces instead of %20 and the history
breaks.
2016-06-08 15:15:54 +02:00
Florian Bruhin
e1fd9fc408
Also add title to history for redirected URLs
2016-06-08 13:30:40 +02:00
Florian Bruhin
9beb68bb5c
Ignore symlinks when recompiling for :restart
...
Otherwise broken symlinks (*cough* emacs *cough*) cause this to fail
with FileNotFoundError.
2016-06-08 12:56:37 +02:00
Florian Bruhin
79e0aa2418
Merge branch 'history-title' of https://github.com/toofar/qutebrowser into toofar-history-title
2016-06-08 12:53:07 +02:00
Florian Bruhin
c686008325
LineParser: Don't write anything without data
2016-06-08 10:36:30 +02:00
Florian Bruhin
cca26f0f13
Fix lint
2016-06-08 09:45:05 +02:00
Florian Bruhin
4b78b22b9a
Remove unnecessary method
...
This is already inherited from LineParser
2016-06-08 09:30:18 +02:00
Florian Bruhin
21d53b0265
Merge branch 'history-clear' of https://github.com/EliteTK/qutebrowser into EliteTK-history-clear
2016-06-08 09:28:36 +02:00
Florian Bruhin
1104a731a5
Fix filtering of all hints in number mode
...
Fixes #1559
2016-06-07 18:34:46 +02:00
Florian Bruhin
9880f5bd5f
Handle FileNotFoundError in ipc.listen
...
Fixes #1530
2016-06-07 16:48:43 +02:00
Florian Bruhin
299fea830e
Simplify some bool conditions
2016-06-07 15:42:59 +02:00
Florian Bruhin
5ddc57566d
Refactor HintManager.filter_hints
2016-06-07 15:14:57 +02:00
Florian Bruhin
db0a67766d
Ignore hints -> scatter for number hints
...
See https://github.com/The-Compiler/qutebrowser/issues/308#issuecomment-167091450
2016-06-07 15:13:30 +02:00
Florian Bruhin
20636a2343
Get normal parser via objreg
2016-06-07 14:30:46 +02:00
Jakub Klinkovský
de66b68b75
Fix problems reported by pylint
2016-06-07 14:27:37 +02:00
Jakub Klinkovský
1b32444256
Rename variables for consistency with other code and docstrings
...
As described in [1], the naming of some variables has become
inconsistent with the original code and even docstrings. This commit
corrects some of these problems, with the following terminology:
- hint text: informative message (see HINT_TEXTS)
- hint string: the text displayed on the hint (as instance of str)
- hint label: the element representing the hint, added to the DOM
- hint: too abstract, sensibly used only in docstrings to refer to the
"visual result"
This commit amends b89e0f8803
and
8873aba09f
.
[1] https://github.com/The-Compiler/qutebrowser/pull/1178#issuecomment-178795190
2016-06-07 14:27:06 +02:00
Jakub Klinkovský
e4d5b550a3
Filter hints using a multi-word matching
...
(addresses https://github.com/The-Compiler/qutebrowser/issues/674#issuecomment-165101219 )
2016-06-07 14:24:17 +02:00
Florian Bruhin
7f3991a8ca
Set _filterstr in HintManager
...
This is also fixed in
fd12c7567e
But we need the fix in to make tests run.
2016-06-07 13:23:51 +02:00
Jakub Klinkovský
82da79d05a
Renumber hints when filtering in numeric mode
...
(addresses #308 )
2016-06-07 13:07:56 +02:00
Jakub Klinkovský
9d20280573
Save the filter string in HintManager
...
This allows restoring the filter during rapid hinting in numeric mode (addresses #576 )
2016-06-07 11:57:31 +02:00
Jakub Klinkovský
3690ead5e0
Fix backspace handling in numeric hint mode
...
addresses #1186
2016-06-07 11:37:47 +02:00
Jakub Klinkovský
87faafd910
Fixed type of auto-follow-timeout option
2016-06-07 10:30:10 +02:00
Jakub Klinkovský
6e494605dd
Add timeout after auto-followed hint
2016-06-07 10:30:08 +02:00
Florian Bruhin
e8123bb68a
Fix pdfjs version parsing for never versions
2016-06-07 07:42:34 +02:00
Florian Bruhin
b0df87842e
Show BDD scenario on failed tests
...
See #1552
2016-06-06 23:09:19 +02:00
Florian Bruhin
ef82076819
Ignore pdbpp ResourceWarning
...
E Failed: Logged unexpected errors:
E
E 22:30:18 WARNING py.warnings pdb:<module>:4 /home/florian/proj/qutebrowser/git/.tox/py35/lib/python3.5/site-packages/_pdbpp_path_hack/pdb.py:4: ResourceWarning: unclosed file <_io.TextIOWrapper name='/home/florian/proj/qutebrowser/git/.tox/py35/lib/python3.5/site-packages/pdb.py' mode='r' encoding='UTF-8'>
E os.path.dirname(os.path.dirname(__file__)), 'pdb.py')).read(), os.path.join(
2016-06-06 22:37:29 +02:00
Florian Bruhin
009fbe8213
Clean up CommandRunner.parse
2016-06-06 17:10:29 +02:00
Florian Bruhin
3e22f64a20
Get tab indicator fix from #697
2016-06-06 16:49:29 +02:00
Florian Bruhin
7651b3a9f5
Fix userscript CommandRunner
2016-06-06 16:39:10 +02:00
Florian Bruhin
35c7e2b768
Remove unreachable NeighborList code
2016-06-06 16:21:05 +02:00
Florian Bruhin
4a7a2e61d3
Only do partial matching with main CommandParser
2016-06-06 15:56:56 +02:00
Florian Bruhin
ec869686c2
Get rid of TabbedBrowser.got_cmd
...
Seems like it's not used anywhere anymore
2016-06-06 15:53:33 +02:00
Florian Bruhin
5b396dab26
Merge branch 'modifcation-for-issue-1386' of https://github.com/adamwethington7/qutebrowser into adamwethington7-modifcation-for-issue-1386
2016-06-06 15:44:56 +02:00
Florian Bruhin
88debe4f5e
Fix zoom adjusting in rect_on_view
...
We now make sure we move the rect without adjusting its size, and then
also adjust the size based on the zoom.
2016-06-06 15:18:53 +02:00
Florian Bruhin
b0e9d2aca5
webelem.rect_on_view: Actually use passed geometry
2016-06-06 13:26:46 +02:00
Florian Bruhin
abfd789f9e
Fix zooming with a too big count
...
Fixes #1118
Supersedes #1140
2016-06-06 13:25:01 +02:00
Florian Bruhin
8d5fdf2833
Remove wrap mode for NeighborList
2016-06-06 13:10:14 +02:00
Florian Bruhin
d50af52d1a
Fix webelem.is_visible with zoom
2016-06-06 12:54:24 +02:00
Florian Bruhin
10630e30ab
hints: Integrate _get_first_rectangle into webelem
2016-06-06 11:56:15 +02:00
Florian Bruhin
b262580b22
Fix hint position when zoom is used
2016-06-06 10:41:59 +02:00
Florian Bruhin
0e4dbd646c
Merge branch 'hints_positioning' of https://github.com/lahwaacz/qutebrowser into lahwaacz-hints_positioning
2016-06-06 10:22:06 +02:00
Florian Bruhin
9f3c2dfada
Merge branch 'bind_case_fix' of https://github.com/rcorre/qutebrowser into rcorre-bind_case_fix
2016-06-04 23:30:50 +02:00
Ryan Roden-Corrent
68faf2b873
Allow hint --rapid in normal mode.
...
This was disallowed by an assertion, but has a legitimate use case for
clicking multiple buttons or ticking multiple checkboxes.
Resolves #1541 .
2016-06-04 15:32:58 -04:00
Ryan Roden-Corrent
9f660a98f2
Default mode='normal' for bind/unbind.
...
Both set mode=None, then later checked if mode == 'None' and set it to
'normal'.
This reduces the function complexity just enough that pylint will stop
complaining.
2016-06-04 07:39:09 -04:00
Ryan Roden-Corrent
1dc20f4d02
Handle special keystrings case-insensitively.
...
Load all special keystrings (e.g. <ctrl-a>) into memory as lowercase,
and automatically lowercase any special keystring given to bind/unbind.
This prevents <ctrl-a> and <Ctrl-A> from being treated differently.
Resolves #816 .
Also resolves #1544 (dupe).
2016-06-04 07:39:09 -04:00
Daniel Schadt
44b1344467
typo used -> user
2016-06-03 15:52:29 +02:00
Daniel Schadt
1cabae0583
mhtml: don't crash when user cancels a download
...
Fixes 1535
The browser crashed because both callbacks were called (finished and
error), trying to remove the item twice from the list of downloads.
2016-06-02 21:23:11 +02:00
Florian Bruhin
fcba6beecf
Merge branch 'json-logging' of https://github.com/Kingdread/qutebrowser into Kingdread-json-logging
2016-06-01 13:07:52 +02:00
Florian Bruhin
a39c662633
Merge branch 'hint_spawn_fix' of https://github.com/rcorre/qutebrowser into rcorre-hint_spawn_fix
2016-05-30 16:09:28 +02:00
Daniel Schadt
5f2d5feb58
message: don't indent the traceback
...
This shouldn't be needed anymore with json-logging.
2016-05-30 16:00:10 +02:00
Daniel Schadt
cea32ea333
log: embed traceback in json object
2016-05-30 16:00:10 +02:00
Daniel Schadt
4a59a1f112
log: implement JSON as logging output
...
Fixes #1501
Enabled via the --json-logging parameter.
2016-05-30 16:00:10 +02:00
Florian Bruhin
9efcddf727
Add missing import
2016-05-29 22:47:44 +02:00
Florian Bruhin
86be7ad82c
Move file_url from utils.jinja to utils.urlutils
2016-05-29 22:44:40 +02:00
Florian Bruhin
5b84fc93df
Do a final userscript command read on cleanup
...
On OS X, sometimes the userscript exited before the QSocketNotifier was
triggered. By doing a final read when cleaning up we make sure we don't
miss anything.
Fixes #1533 .
2016-05-29 18:42:56 +02:00
Florian Bruhin
6caa89a622
Merge branch 'empty_uri' of https://github.com/hcraT/qutebrowser into hcraT-empty_uri
2016-05-29 00:37:12 +02:00
Florian Bruhin
1d87eee4d7
Fix starting when sys.stderr is None
2016-05-27 14:48:46 +02:00
Florian Bruhin
afcb018ee2
Fix some spelling mistakes
...
Found via http://jwilk.net/software/mwic
2016-05-27 12:07:00 +02:00
Florian Bruhin
29aedef420
Fix :debug-console with PyQt 5.6
2016-05-27 00:18:23 +02:00
Tarcisio Fedrizzi
7da6faa7af
Changes fuzzy_url to force search even when paths are passed
2016-05-26 18:01:01 +02:00
Tarcisio Fedrizzi
462f9d7e4c
Refators discussed in the review
...
- refactors what discussed in the review
- adds unit tests for schemas without host and path
2016-05-26 18:01:01 +02:00
Florian Bruhin
a589c09f2e
Merge branch 'singleoptioncrash' of https://github.com/nginth/qutebrowser into nginth-singleoptioncrash
2016-05-26 07:41:09 +02:00
Florian Bruhin
9d018b8fbd
pylint: Disable too-many-return-statements
2016-05-26 07:39:47 +02:00
Nick Ginther
2065f292ab
fix crash on empty parts[] ( #1523 )
2016-05-25 16:45:06 -05:00
Florian Bruhin
824e662154
Merge branch 'tabindexfix' of https://github.com/nginth/qutebrowser into nginth-tabindexfix
2016-05-25 22:09:01 +02:00
Florian Bruhin
c96722f169
Merge branch 'better_keyhints' of https://github.com/rcorre/qutebrowser into rcorre-better_keyhints
2016-05-25 22:04:51 +02:00
Nick Ginther
c70accda22
restructure code
2016-05-25 13:46:31 -05:00
Florian Bruhin
5a82bf3357
Add some more logging for SSL errors
2016-05-25 20:45:54 +02:00
Tarcisio Fedrizzi
73c200fb14
Tweaks the multi-line heuristic to handle scheme-like text
...
Adds some options to implement a way to treat multiline text that starts
with a scheme-like line as text instead as an URL.
2016-05-25 08:05:57 +02:00
Ryan Roden-Corrent
f58e2d91dc
Add a keyhint blacklist.
...
Replace the setting ui.show-keyhints with ui.keyhint-blacklist, which
is a list of globs for keychains that shouldn't be hinted. This allows
users to prevent showing keyhints for keychains they already know.
keyhint-blacklist='*' is equivalent to show-keyhints=False.
Resolves #1515 .
2016-05-24 20:46:39 -04:00
Nick Ginther
8c487e9a5f
fix tabindex statusbar not updating ( #1247 )
2016-05-24 15:18:22 -05:00
Florian Bruhin
ea1d8902d5
Add logging for #1484
2016-05-24 21:35:48 +02:00
Florian Bruhin
0fb6e508e6
Merge branch 'master' of https://github.com/Yatekii/qutebrowser into Yatekii-master
2016-05-24 21:32:24 +02:00
Florian Bruhin
c6cb8e5099
Remove unneeded "# pragma: no branch" comments
...
Those are not needed anymore with coverage 4.1.
2016-05-24 15:40:50 +02:00
Florian Bruhin
11363b9533
Fix some invalid "# pragma: no cover" comments
...
We accidentally used "# pragma: no coverage" instead.
2016-05-24 15:40:18 +02:00
Ryan Roden-Corrent
b1aaf0f10f
Only show keyhints after a short delay.
...
If a user knows the keychain and can type it quickly, we shouldn't
annoy them with a popup. Only show the keyhint if the user doesn't
complete their keychain in 500ms.
The isVisible() check in the tests is somewhat invalid now because it
is never immediately visible and I don't want to add a delay to unit
tests. I added a check that text() is not set for one test that was
only checking isVisible().
Addresses part of #1515 .
2016-05-23 21:21:03 -04:00
Noah Huesser
299c66b82c
Possibly fixed issue: #1484
2016-05-23 11:32:27 +02:00
Florian Bruhin
002e5801f1
Improve logging in add_js_bridge
2016-05-22 14:55:53 +02:00
Ryan Roden-Corrent
f025394e04
Set maxsplit=2 for :hint.
...
This supports things like :hint all spawn -v echo as '-v echo' will be
passed as a single unit to spawn rather than -v being interpreted as a
flag for :hint.
Resolves #797 .
Note that, while `:hint --rapid all spawn -v` echo works,
`:hint all --rapid spawn -v echo` does not (this did not work before
either).
2016-05-20 22:11:58 -04:00
Ryan Roden-Corrent
0300f03ebc
Allow passing args to spawn from :hint.
...
Instead of creating a new guiprocess manually, just pass the args along
to the spawn command so it can accept args like -v.
Addresses part of #797 by allowing `hint -- all spawn -v echo`.
`hint all spawn -v echo` is still not supported.
2016-05-20 22:11:58 -04:00
Jakub Klinkovský
c919fcba35
hints: position according to getClientRects()
2016-05-20 21:26:29 +02:00
Jakub Klinkovský
4c06e34074
hints: change click position to the center of the largest square fitting to the top/left corner of the rectangle
2016-05-20 21:26:29 +02:00
Florian Bruhin
ea1f46d542
Merge branch 'hints_clicking' of https://github.com/lahwaacz/qutebrowser into lahwaacz-hints_clicking
2016-05-20 17:09:16 +02:00
Florian Bruhin
2c42219b23
Don't autofollow hint when unfiltering w/ rapid
...
When we are in rapid mode with only one link, after following the hint, fire()
called filter_hints(None) to display all hints again. Then filter_hints tried
to follow that link, fire() tried to show all again, etc., leading to a
RecursionError.
Fixes #1513 .
A test will be added via #1510 .
2016-05-20 16:41:51 +02:00
Ryan Roden-Corrent
b1440a1804
Implement utils.is_special_key.
...
The check `key.startswith('<') and key.endswith('>') is repeated many
times in code to check for a special key. Replace all these with a call
to the same function.
2016-05-19 20:48:48 -04:00
Ryan Roden-Corrent
5992b81850
Don't show keyhint if there are no hints.
...
Currently, the keyhint window is shown even if the keystring matches no
possible bindings. This causes an empty keyhint window to hang around
after entering hinting mode.
Instead, the window is now hidden if no bindings match the current
keystring.
Resolves #1507 .
2016-05-19 07:02:23 -04:00
Florian Bruhin
2b0f780500
Merge branch 'master' of https://github.com/rumpelsepp/qutebrowser into rumpelsepp-master
2016-05-18 23:55:34 +02:00
Florian Bruhin
b5f8e7306f
Merge branch 'command_binding_completion' of https://github.com/rcorre/qutebrowser into rcorre-command_binding_completion
2016-05-18 18:47:13 +02:00
Stefan Tatschner
1c238152f7
Fix crash when hovering over an invalid URL
2016-05-18 16:20:03 +02:00
Ryan Roden-Corrent
4dd1478d2c
Use ', '.join instead of str.join(', ', ...).
2016-05-18 08:55:17 -04:00
Ryan Roden-Corrent
0a0f0feaec
Update command completions when keyconf changes.
...
When a user changes keybindings, update the command completion model so
the new keybindings are shown.
2016-05-18 08:00:21 -04:00
Ryan Roden-Corrent
c050b4973b
Show special keys last in command completion.
...
When showing the currently bound key in the misc column for command
completion, if the command has multiple bindings, show special bindings
(e.g. <ctrl-a>) after non-special bindings.
2016-05-18 07:54:06 -04:00
Ryan Roden-Corrent
06caee41b8
Clean up command_binding_completion.
...
- Add a space after the comman for multiple binding suggestions.
- Use defaultdict(list) instead of defaultdict(lambda: [])
- Move the pylint comment back to the top of the class
2016-05-18 07:46:27 -04:00
Florian Bruhin
5b65ec17fd
Set Qt.RichText textFormat for KeyHintView
2016-05-18 07:35:56 +02:00
Florian Bruhin
d0af80fbd5
Merge branch 'keystring' of https://github.com/rcorre/qutebrowser into rcorre-keystring
2016-05-18 07:33:17 +02:00
Florian Bruhin
324fcfadb0
Merge branch 'hint_inputs' of https://github.com/Liambeguin/qutebrowser into Liambeguin-hint_inputs
2016-05-18 07:30:46 +02:00
Florian Bruhin
02cbc2f986
Merge branch 'pretty-hover-url' of https://github.com/forkbong/qutebrowser into forkbong-pretty-hover-url
2016-05-18 07:27:30 +02:00
Florian Bruhin
43518a4624
Merge branch 'timeout_docs' of https://github.com/rcorre/qutebrowser into rcorre-timeout_docs
2016-05-18 07:26:12 +02:00
Florian Bruhin
e4d84b0bfc
Simplify argparser.type_check
...
If the value isn't param.default, it will always be a string or a flag, as
type_conv never gets called when the function is called from Python.
2016-05-18 07:16:17 +02:00
Florian Bruhin
284d4e4b97
Only pass is_bool to Command._param_to_argparse_*
2016-05-18 06:55:27 +02:00
Florian Bruhin
a83bf9c3ee
Simplify argparser.type_conv
...
Since we're not using those functions as argparse callbacks anymore, we
can write a normal function instead of factories, which simplifies
things a lot.
2016-05-18 06:55:27 +02:00
Florian Bruhin
c0d044447d
Add tests for qutebrowser.utils.typing
2016-05-18 06:55:17 +02:00
Florian Bruhin
6ed9b6b13f
Make sure typing.Union[str, int] gets handled
...
str always needs to be the last element checked as otherwise it'd always
win.
2016-05-18 06:55:17 +02:00
Florian Bruhin
a0d0b6464f
Use typing.py-like annotations for command args
...
This means:
- An annotation like (int, str) is now typing.Union[int, str].
- utils.typing got expanded so it acts like the real typing.py, with
issubclass() working properly with typing.Union and __union_params__
being set.
- A literal string doesn't exist anymore as annotation, instead
@cmdutils.argument now has a 'choices' argument which can be used like
@cmdutils.argument('arg', choices=['val1', 'val2']).
- Argument validating/converting is now entirely handled by
argparser.type_conv instead of relying on python's argparse, i.e.
type/choices is now not passed to argparse anymore.
2016-05-18 06:55:17 +02:00
Florian Bruhin
cdcd276a1a
Also use @cmdutils.argument
for :bind
...
This was added in master and not updated when this branch was rebased on
master.
2016-05-18 06:55:17 +02:00
Florian Bruhin
3a33bc42a6
Add initial support for the typing module
2016-05-18 06:55:17 +02:00
Florian Bruhin
bb8d0a8ee4
Fix long lines
2016-05-18 06:55:17 +02:00
Florian Bruhin
c33f0c3512
Use @cmdutils.argument for completions
2016-05-18 06:55:17 +02:00
Florian Bruhin
3ab40bbc23
Clear globals correctly for all cmdutils tests
...
TestArgument didn't clear the globals as the fixture was inside
TestRegister.
This means test_run_vulture failed in funny ways because run_vulture.py
generated a whitelist containing "<locals>" for commands:
tests/unit/scripts/test_run_vulture.py:55: in run
return run_vulture.run([str(e.basename) for e in files])
scripts/dev/run_vulture.py:146: in run
vult.scavenge(files + [whitelist_file.name])
.tox/py35/lib/python3.5/site-packages/vulture.py:107: in scavenge
self.scan(module_string)
.tox/py35/lib/python3.5/site-packages/vulture.py:75: in scan
node = ast.parse(node_string, filename=self.file)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
source = 'qutebrowser.browser.commands.CommandDispatcher.buffer\nqutebrowser.misc.savemanager.SaveManager.save_command\nqutebro...iidoc.UsageFormatter._get_default_metavar_for_positional\nscripts.dev.src2asciidoc.UsageFormatter._metavar_formatter\n'
filename = '/tmp/tmp_ein2umn', mode = 'exec'
def parse(source, filename='<unknown>', mode='exec'):
"""
Parse the source into an AST node.
Equivalent to compile(source, filename, mode, PyCF_ONLY_AST).
"""
> return compile(source, filename, mode, PyCF_ONLY_AST)
E File "/tmp/tmp_ein2umn", line 16
E test_cmdutils.TestArgument.test_wrong_order.<locals>.fun
E ^
E SyntaxError: invalid syntax
2016-05-18 06:55:17 +02:00
Florian Bruhin
1611562271
Get rid of dict annotations
2016-05-18 06:55:17 +02:00
Florian Bruhin
d990032a2e
Remove leftovers of 'name' annotation key
2016-05-18 06:55:17 +02:00
Florian Bruhin
77151d394a
Use @cmdutils.argument for metavar
2016-05-18 06:55:17 +02:00
Florian Bruhin
c14db202d6
Use @cmdutils.argument to hide arguments
2016-05-18 06:55:17 +02:00
Florian Bruhin
2fc4f408cd
Fix src2asciidoc
2016-05-18 06:55:17 +02:00
Florian Bruhin
2370793f38
Make win_id/count mutually exclusive for ArgInfo
2016-05-18 06:55:17 +02:00
Florian Bruhin
35135c4b0d
Use @cmdutils.argument for win_id/count
2016-05-18 06:55:17 +02:00
Florian Bruhin
04367851c3
Refactor how cmdutils.ArgInfo works
...
It's now a real class, and some other aspects about how it's handled
were cleaned up as well.
2016-05-18 06:55:17 +02:00
Florian Bruhin
9eeaeb95c3
Make sure @cmdutils.argument after @register fails
2016-05-18 06:55:17 +02:00
Florian Bruhin
3c586f34ff
Add a @cmdutils.argument decorator
...
For now the only available keyword argument is 'flag' which customizes
the flag an argument will get.
See #637 .
2016-05-18 06:55:17 +02:00
Liam BEGUIN
c3dfd62172
broke line to fit properly
2016-05-17 23:39:24 -04:00
Ryan Roden-Corrent
52641e25f5
Show currently bound keys in command completion.
...
The command completion menu now uses the misc colum to show a
comma-separated list of normal-mode keybindings for each command.
2016-05-17 20:25:09 -04:00
Ryan Roden-Corrent
acdeb0f57c
Bump default for partial-timeout to 5000ms.
...
Give more time to read the keyhint widget.
2016-05-17 20:13:25 -04:00
Ryan Roden-Corrent
e810317057
Restore bottom padding of keyhint widget.
...
Previously, negative bottom padding was used (probably to compensate
for a trailing <br>). With the table format, this is no longer
necessary and causes the last line to be drawn too low.
2016-05-17 20:10:52 -04:00
Liam BEGUIN
b66d5e1ce9
Fixed indentations
2016-05-17 19:58:27 -04:00
Panagiotis Ktistakis
959f777f92
Assert that hovered link generates a valid QUrl
2016-05-17 10:28:33 +03:00
Jimmy
cd21f6326e
Save redirect links that are clicked on to history.
...
This allows webkit to color links that are clicked on but never rendered as
visited too. It also means if you get redirected from eg http://site.com to
http://site.com/ you have essentially duplicates in your history. This makes
the history completion a bit noisier. I suppose normalising paths before
checking for duplicates might help. Also note that otter has an isTypedIn flag
which might be used for dealing with this.
2016-05-17 17:15:22 +12:00
Jimmy
b48b36a88d
fixup! Switch browsing history away from QWebHistoryInterface.
2016-05-17 17:15:22 +12:00
Jimmy
33fbe97863
Switch browsing history away from QWebHistoryInterface.
...
Now adds a url to browser history once we have connected and got enough data
to start rendering the page. The previous approach saved urls as soon as
navigation was initiated, so upon encountering a redirect the final url wasn't
saved.
Using layout started rather than load finished means that pages whose contents
manage to load minus one troublesome asset will still be saved.
2016-05-17 17:15:22 +12:00
Jimmy
1524f29f71
Add titles to history entry.
...
Adds a title to the HistoryEntry class and includes it in the serialization
stuff. Not currently set from anywhere.
Not sure if anything more needs to be done to support non-ascii characters.
Everything works fine for me with unicode chars in url and title but
everything in my stack is utf-8.
2016-05-17 17:15:22 +12:00
Liam BEGUIN
531a5071f6
updated inputs-group
2016-05-17 00:38:23 -04:00
Ryan Roden-Corrent
86f95c302d
Explain timeout vs partial-timeout better in docs.
2016-05-16 21:40:30 -04:00
Felix Van der Jeugt
acb60a1bf4
align using a table
2016-05-16 07:14:34 -04:00
Liam BEGUIN
3b0354518b
Added basic inputs-group to :hint
2016-05-15 22:46:12 -04:00
Ryan Roden-Corrent
3cd252ef82
Clean up html for keyhint text.
...
The \t was behaving the same as a space and the <b> was doing nothing.
2016-05-15 22:33:53 -04:00
Ryan Roden-Corrent
d506d7793f
Further clean up keyhints.
...
Don't show special keys in the keyhint window as these currently cannot
be part of keychains.
Use a rounded border on the top-right corner and square on the rest.
2016-05-15 12:32:36 -04:00
Panagiotis Ktistakis
224c877fec
Hide passwords in hovering URLs
2016-05-15 19:07:10 +03:00
Florian Bruhin
0c1e82a103
Fix lint
2016-05-15 11:53:58 +02:00
Florian Bruhin
9b28d90543
Improve output if :messages is used without errors
2016-05-15 11:50:29 +02:00
Florian Bruhin
b704c911ae
Fix running qute:log and qute:plainlog
...
This failed because dict.get('level') returned None with no level
parameter, and the subsequent [0] raised:
Traceback (most recent call last):
File ".../qutebrowser/utils/utils.py", line 624, in wrapper
return func(*args, **kwargs)
File ".../qutebrowser/browser/network/networkmanager.py", line 445, in createRequest
op, req, outgoing_data)
File ".../qutebrowser/browser/network/qutescheme.py", line 107, in createRequest
data = handler(self._win_id, request)
File ".../qutebrowser/browser/network/qutescheme.py", line 189, in qute_log
level = urllib.parse.parse_qs(request.url().query()).get('level')[0]
TypeError: 'NoneType' object is not subscriptable
2016-05-15 11:33:30 +02:00
Florian Bruhin
e21039094d
Merge branch 'messages' of https://github.com/rcorre/qutebrowser into rcorre-messages
2016-05-15 11:20:06 +02:00
Florian Bruhin
a9ab6abafd
Document {url} and {url:pretty} for :set-cmd-text
2016-05-15 11:09:16 +02:00
Florian Bruhin
0888f676f3
Change go/gO/xO/wO bindings to use {url:pretty}
...
This is now possible with #1494 .
See #1483 .
2016-05-15 11:06:54 +02:00
Florian Bruhin
b75d1629a8
Merge branch 'set-cmd-text-variables' of https://github.com/forkbong/qutebrowser into forkbong-set-cmd-text-variables
2016-05-15 11:01:58 +02:00
Florian Bruhin
6b4efc1822
Fix log output in crash report
...
With the changes to get rid of colorlog, we broke this, as e.g. {green}
was an undefined key for the vanilla logging.Formatter used for the
in-RAM log. Now we instead use a ColoredFormatter with colors turned
off.
2016-05-15 10:46:46 +02:00
Ryan Roden-Corrent
231950aa88
Increase default value for input.partial-timeout.
...
Increase from 500 to 2500.
This allows the user more time to read hints shown in the new keyhint
popup.
2016-05-14 19:30:39 -04:00
Ryan Roden-Corrent
d592a3e764
Clean up keyhint implementation.
...
From code review:
- escape all strings used in the keyhint html
- read the prefix color each time the hint is shown
- use show/hide instead of setVisible
- clean up pylint/flake8 errors
- use CssColor instead of QssColor for keyhint.fg.suffix
- add some padding to the keyhint popup
2016-05-14 19:30:28 -04:00
Panagiotis Ktistakis
c88883fcb3
Decode URL in statusbar when hovering over it
2016-05-14 19:52:24 +03:00
Ryan Roden-Corrent
e7ff717d52
Show key hints for all modes, not just normal.
2016-05-14 12:50:26 -04:00
Ryan Roden-Corrent
8406746889
Show possible keychains from current input.
...
When the current keystring is a partial match for one or more bindings,
show the possible bindings in a small overlay.
The overlay is partially transparent by default, but the background
color is configurable as ui->keystring.bg.
2016-05-14 12:50:26 -04:00
Ryan Roden-Corrent
fcd233a675
Clean up :messages implementation.
...
- Add log.LOG_LEVELS to map names to levels (instead of using
logging._levelToName)
- Test that log pages do not contain messages below the requested level
- Use pythons urllib.parse.parse_qs instead of Qt's UrlQuery
- Document tab, bg, window args for :messages
- Clean up style
2016-05-14 12:45:22 -04:00
Ryan Roden-Corrent
800c1c3cf8
Add :messages command to show past messages.
...
This adds a 'level' query parameter to qute://log and qute://plainlog.
For example, qute://log?level=warning will show an html page containing
log entries with severity warning or greater.
If the query is omitted, the original behavior of qute://log is
preserved.
:messages [level] is a command that opens qute://log?level=<level>.
By default, level defaults to 'error' as an easy way to see missed
error messages.
2016-05-14 07:10:58 -04:00
Florian Bruhin
c64e5c9bd5
Get rid of the colorlog dependency
...
colorlog was problematic for various reasons:
- Not commonly packaged for Linux distributions
- Calling colorama.init() automatically on import
- Not supporting {foo} log formatting
- Not supporting an easy way to turn colors off
Instead we now do the log coloring by hand, which is simpler and means
everyone will have colored logs.
2016-05-13 21:19:33 +02:00
Panagiotis Ktistakis
bb45392c1b
Use the right split function
2016-05-13 19:32:35 +03:00
Panagiotis Ktistakis
ecfa6cfc63
Split arguments using qutebrowser.utils.split
2016-05-13 18:59:24 +03:00
Panagiotis Ktistakis
7488f2a5cb
Remove unused imports
2016-05-13 18:58:42 +03:00
Panagiotis Ktistakis
38edb1b16d
Properly replace variables in set-cmd-text command
...
This fixes #123 and allows variables like {url:pretty} to be used with
set-cmd-text
2016-05-13 18:12:53 +03:00
Florian Bruhin
a9a853baf0
Improve message stack output
...
The output failed the tests as it was parsed as invalid. Indenting helps
with that.
This also simplifies things a bit by having a _log_stack function and
shows the type of stack we're printing.
2016-05-13 08:27:11 +02:00
Florian Bruhin
4a551a6758
Show exception stack when handling cmdexc errors.
2016-05-13 07:43:44 +02:00
Florian Bruhin
aea30e810a
Fix lint
2016-05-12 21:11:45 +02:00
Florian Bruhin
37a1d0cb6f
Log stacktrace of error messages to debug log
2016-05-12 20:30:07 +02:00
Florian Bruhin
24d16dd0a7
Merge branch 'show_binding2' of https://github.com/rcorre/qutebrowser into rcorre-show_binding2
2016-05-10 23:39:32 +02:00
Florian Bruhin
5eff35ba30
cmdutils.register: annotation -> arg for flags
...
Instead of using a 'flag' key in the annotation dict, we now use a flags
argument to @cmdutils.register which is a {argument: flag} dict.
See #637 .
2016-05-10 07:35:41 +02:00
Florian Bruhin
73fbfb9731
Replace 'nargs' annotation by star_args_optional
...
Before we used a {'nargs': '*'} annotation for the respective argument
to tell qutebrowser it's optional for the commandline. Now we instead
use a star_args_optional argument for @cmdutils.register as a first step
towards freeing up argument annotations for PEP 484.
See #637 .
2016-05-09 22:49:24 +02:00
Florian Bruhin
e4e98c6c23
Delete QTextDocument properly in completion.
...
The CompletionItemDelegate gets reused by Qt for various items in the
completion. Every time _get_textdoc() was called we created a new
QTextDocument, but since it has a long-living parent set (the delegate)
the old one was never actually garbage collected.
We now explicitly delete the old QTextDocument as it's not needed
anymore by either Qt or Python.
See #1476 .
2016-05-09 09:11:14 +02:00
Daniel Schadt
1fa50021c1
downloads: use right index for beginInsertRows
...
len(self.downloads) is already the index of the item in the download
list, this should be used for beginInsertRows(). The +1 is only for the
human readable part.
2016-05-08 23:36:31 +02:00
Daniel Schadt
99182e3e79
downloads: change len() to sum()
2016-05-08 23:36:31 +02:00
Daniel Schadt
643d2cc6dd
fix confirm-quit=downloads with finished downloads
...
Issue #846
.rowCount() returns all downloads, even the finished ones that have not
yet been removed from the list. For confirming the quit event, we should
only consider downloads that are still running.
2016-05-08 23:36:31 +02:00
Florian Bruhin
89c7b0e7f8
Simplify if-statement
2016-05-08 22:18:14 +02:00
Florian Bruhin
59ec5fa947
Show debug instead of warning for #670
...
The user can't do much about this anyways, and I have no idea what
triggers it, so let's not annoy them about it.
2016-05-08 22:08:08 +02:00
Florian Bruhin
b9b6f357da
Add utils.supports_selection()
2016-05-08 22:06:59 +02:00
Florian Bruhin
3e6ac28c66
Fix ;Y on systems not supporting primary selection
...
Instead we paste clipboard like we already do with some other commands
when primary selection is not supported.
Fixes #1336
2016-05-08 21:59:25 +02:00
Florian Bruhin
4d9a98a11d
Paste clipboard with :paste-primary on Windows
2016-05-08 21:18:57 +02:00
Florian Bruhin
4403f02ac5
Fix HostBlocker.on_config_changed with no datadir
2016-05-07 23:35:30 +02:00
Florian Bruhin
6d1764e732
Clear blocked hosts on start correctly
2016-05-07 23:31:35 +02:00
Florian Bruhin
b6add69705
Improve exception handling in HostBlocker
...
In on_config_changed, we now ignore FileNotFoundError as that's a common
occurence and not something worth logging.
In case of other OSError's we now also log the exact error message.
2016-05-07 23:30:32 +02:00
Florian Bruhin
f90776f75c
Add documentation for default_window_icon
2016-05-07 21:37:01 +02:00
Florian Bruhin
2ea76c282e
Merge branch 'feature-#1349' of https://github.com/haitaka/qutebrowser into haitaka-feature-#1349
2016-05-07 21:32:05 +02:00
Daniel Schadt
2918c5cd57
downloads: close fileobject in DownloadItem._die
...
Otherwise we will get a unclosed resource warning.
2016-05-06 18:01:45 +02:00
Daniel Schadt
dcac832f5e
netmanager: fix crash when asking with no tab_id
...
Issue 1413
This happens when the networkmanager is used by something that has no
tab_id, like the generic DownloadManager. In this case, we should just
skip the webview connection (as it makes no sense) instead of crashing
(which is the last thing we want to do).
2016-05-05 00:34:16 +02:00
Florian Bruhin
d2be8a28ca
Also ignore segfaults in paintEvent
2016-05-04 23:06:26 +02:00
Florian Bruhin
2d0604ec08
Remove unused imports
2016-05-04 22:15:47 +02:00
Florian Bruhin
034f8585a6
Disable segfault reports for Qt mainloop crashes
2016-05-04 21:50:44 +02:00
Florian Bruhin
0efd87af12
Clean up formatting of num
2016-05-04 07:07:24 +02:00
Ryan Roden-Corrent
b8a593cac5
Show command completions for :bind.
...
All commands will be offered as completions for the <command> argument
of :bind.
Due to the way completers parse the command line, the following
bind --mode caret j
will throw off completions as 'caret' is treated as a positional arg in
terms of the argument count for completions.
In the above example, completion will be triggered for 'j' and no
completions will be given for the actual command.
bind --mode=caret j will complete correctly, though completions are not
filtered by the given mode.
I attempted an approach to filter the commands based on the mode but it
ended up being messy and flaky.
2016-05-03 23:29:34 -04:00
Ryan Roden-Corrent
2536766cac
Run :bind <key> to print the current binding.
...
The <command> arg is now optional. If omitted, :bind prints the current
binding as a message. If --mode is given, the binding for that mode is
printed.
2016-05-03 23:29:34 -04:00
Ryan Roden-Corrent
98508bdd26
Allow flexible whitespace in color strings.
...
Allow a variable amount of whitespace for rgb, rgba, hsv, and hsva
strings in the config.
Previously only 'rgb(0, 0, 0)' was allowed. Now things like
'rgb(0,0,0)' are permitted.
The repeated 3-digit segments of the regexes were separated out to
reduce repetition and line length.
2016-05-03 23:15:39 -04:00
Florian Bruhin
a6cd91c386
Turn off WebGL by default
...
This was mainly turned on because that's Qt's upstream default, but
there's no reason for it to be turned on.
2016-05-03 06:33:08 +02:00
Florian Bruhin
e5630e9518
Fix lint
2016-05-01 23:03:27 +02:00
Florian Bruhin
3eeacd7e09
Fix userscripts on Windows
...
If the process emitted error() and then finished(), we already set
self._filepath to None and did other cleanup.
Instead we do the file reading inside _cleanup and call that from
on_process_error and on_process_finished.
2016-05-01 22:47:03 +02:00
Florian Bruhin
0b24916fc7
Add missing attribute
2016-05-01 22:34:04 +02:00
Florian Bruhin
c76746ca32
Refine Logjam cipher blacklisting
...
- The OS check was wrong
- EDH ciphers are (hopefully) not affected and break e.g. gnupg.org
2016-05-01 22:19:11 +02:00
Florian Bruhin
4e333d61cd
Clean up failed userscripts correctly
2016-05-01 22:13:52 +02:00
Florian Bruhin
73d5d24cb4
Fix lint
2016-05-01 17:48:35 +02:00
Florian Bruhin
6bd2591681
Disable all Diffie-Hellman ciphers on Windows
2016-05-01 17:42:20 +02:00
Florian Bruhin
0124354b91
Disable more bad SSL ciphers with old Qt/OpenSSL
...
See #594
2016-05-01 17:31:00 +02:00
Florian Bruhin
b7225924e3
Fix lint
2016-04-30 18:39:26 +02:00
Florian Bruhin
48c7eee6f6
Release v0.6.2
2016-04-30 18:16:43 +02:00
Florian Bruhin
528e303d6e
Add a --force-color argument for logging
2016-04-30 17:01:45 +02:00
Florian Bruhin
48d7185c94
log: Don't use colorama on POSIX
2016-04-30 16:59:59 +02:00
Florian Bruhin
b5aad7d1b9
Merge branch 'issue-1393' of https://github.com/NoctuaNivalis/qutebrowser into NoctuaNivalis-issue-1393
2016-04-30 14:06:54 +02:00
Florian Bruhin
4807746e8f
Add @pyqtSlot for qApp.focusChanged slot
2016-04-29 22:25:27 +02:00
Florian Bruhin
2d5ffbfd02
Revert "Handle counts for special keys."
...
This reverts commit c881730fad
.
This is just a temporary solution until we can properly fix this.
See #1464
2016-04-29 14:20:11 +02:00
Florian Bruhin
60f8681b41
Improve name of unused variable
2016-04-28 22:28:12 +02:00
Florian Bruhin
8b227f4ba4
Merge branch 'special_key_count' of https://github.com/rcorre/qutebrowser into rcorre-special_key_count
2016-04-28 22:22:23 +02:00
adam
5eea9d0605
Cleanup for flake8/pylint
2016-04-28 09:20:16 -04:00
Florian Bruhin
2f10ab4e9a
Clean up coding style
2016-04-28 07:07:49 +02:00
Florian Bruhin
15a145cf92
Merge branch 'buffer_completion_delete_item-1443' of https://github.com/toofar/qutebrowser into toofar-buffer_completion_delete_item-1443
...
Merge conflict in qutebrowser/completion/models/miscmodels.py due to a simple
style fix in the old code.
2016-04-28 07:03:27 +02:00
adam
8fd371d836
Proposed addition for issue #1386
2016-04-27 16:47:36 -04:00
Florian Bruhin
076b486368
Merge branch 'issue-1412' of https://github.com/Kingdread/qutebrowser into Kingdread-issue-1412
2016-04-27 21:19:04 +02:00
Florian Bruhin
24cde47881
Merge branch 'marks_invalid_url' of https://github.com/rcorre/qutebrowser into rcorre-marks_invalid_url
2016-04-27 21:00:21 +02:00
Florian Bruhin
2a343cb3a1
Various code style improvements
2016-04-27 20:25:27 +02:00
Ryan Roden-Corrent
88f66874a1
Don't crash when setting mark on invalid url.
2016-04-27 08:10:53 -04:00
Daniel Schadt
dcad81a78f
cache: fix crash when cache_dir is None
...
Issue #1412
When passing --cachedir="" on the command line, standarddir.cache()
returns None, which stands for "deactivate cache" and has to be
properly handled in DiskCache.__init__() (i.e. don't pass it to
os.path.join)
2016-04-26 23:14:55 +02:00
Florian Bruhin
fd20b46b33
Split IPCServer.on_ready_read into two methods
2016-04-26 23:14:03 +02:00
Florian Bruhin
7c3361d8da
Stabilize :download-delete test
2016-04-26 22:56:06 +02:00
Felix Van der Jeugt
b7ba3cd53e
fix flake and pep remarks
2016-04-26 22:52:29 +02:00
Felix Van der Jeugt
2d71c541c6
allow swapping dict at runtime
2016-04-26 22:52:29 +02:00
Felix Van der Jeugt
fdb630555d
make robust against short dicts
2016-04-26 22:52:29 +02:00
Felix Van der Jeugt
fe4800b68f
prevent words from the dictionary prefixing smart hints
2016-04-26 22:52:29 +02:00
Florian Bruhin
3c8598f691
Work around PyQt 5.6 segfault when using IPC
...
PyQt 5.6 seems to segfault when emitting None with a signal which is
declared as emitting a string:
https://www.riverbankcomputing.com/pipermail/pyqt/2016-April/037375.html
We now avoid this by using an empty string explicitly instead of None.
2016-04-26 22:30:27 +02:00
Florian Bruhin
48b069e89c
Remove @pyqtSlot for on_new_window
...
This worked fine with Python 3.5 but causes a circular import which is
hard to break with Python 3.4.
The original solution was to do @pyqtSlot(object), but that doesn't work
with PyQt 5.6 anymore...
2016-04-26 22:16:04 +02:00
Florian Bruhin
59c4cdd1c2
Revert "Break up circular import on Python 3.4"
...
This reverts commit e5be48fcc0
.
There are other circular imports as well.
2016-04-26 22:14:59 +02:00
Florian Bruhin
e5be48fcc0
Break up circular import on Python 3.4
2016-04-26 21:44:30 +02:00
Florian Bruhin
37b5f49c85
Fix types in @pyqtSlot decorations
...
PyQt 5.5 enforces correct type signatures, and there were a lot of
places where we were simply wrong, causing qutebrowser to not start at
all...
2016-04-26 20:34:38 +02:00
Florian Bruhin
da24e43fa5
Remove crowdfunding notes
2016-04-25 22:32:29 +02:00
Florian Bruhin
32d64b1a9a
Merge branch 'undo_crash' of https://github.com/rcorre/qutebrowser into rcorre-undo_crash
2016-04-25 19:19:08 +02:00
Florian Bruhin
341dae0b3f
Simplify deleting fragment
2016-04-25 19:05:20 +02:00
Florian Bruhin
d6c72c5821
Merge branch 'develop' of https://github.com/kanikaa1234/qutebrowser into kanikaa1234-develop
2016-04-25 19:03:20 +02:00
Florian Bruhin
6349c00c72
Fix crash with :tab-{prev,next,focus} with 0 tabs
...
When using :tab-prev/:tab-next (or :tab-focus which uses :tab-next
internally) immediately after the last tab, those functions could be
called with 0 tabs open, which caused a ZeroDivisionError when trying to
do % 0.
Fixes #1448 .
2016-04-25 18:55:15 +02:00
kanikaa1234
22ad416f35
Addressing test
2016-04-24 19:33:31 +05:30
Jimmy
32edd35c7a
buffer completion: handle deleting items see issue #1443
...
Allows to use ctrl+d to close tabs from the buffer completion widget
when they are selected. Respects current tab settings like whether you
can close the last tab in a window.
Had to change the `rebuild()` method to use `setData()` when possible
because the selection was being lost if the whole model was being rebuilt.
Current problems are:
1) When opening a new window while you already the tab completion open on
one window a category is added for the new window but new rows in
that category aren't picked up. Interesting if you open a third
window then close the second window the completion display is now
correct... I can see that the model is being updated correctly but I
am not sure why that isn't propagating to the view. Not sure whether
it is worth looking into (further) either.
2) Bit of duplication of code, it iterates over the window registry
twice. Could put everything in one loop but then that would be
dependant on the current behaviour of the `tab_closed` signal being
called with the relevant `tabbed_browser` still existing but with the
`shutting_down` flag set.
3) I'm still using just the one `rebuild()` method and removing items from
the end then calling `setData` on everything rather than having special
`on_tab/window_closed` methods (or partial functions) that delete the
actual corresponding item. Because if I did that I would also have to
special case tab moves etc.
2016-04-23 02:55:53 +12:00
Florian Bruhin
77a9bbb4b4
Fix accidental double-import
2016-04-21 23:12:54 +02:00
Florian Bruhin
5b34f1b429
Fix ModeManager.leave docstring
2016-04-21 20:12:02 +02:00
Florian Bruhin
e0aa35b05a
Fix type in @pyqtSlot for ModeManager.leave
...
For some reason it worked with str as well, but the signal emits a
KeyMode member.
2016-04-21 20:10:58 +02:00
Florian Bruhin
ef91fa3821
Merge branch 'marks' of https://github.com/rcorre/qutebrowser into rcorre-marks
2016-04-21 20:05:41 +02:00
Ryan Roden-Corrent
ccd04ca548
Don't crash when undoing twice on default page.
...
Avoid a crash when undoing twice on the default page with last-close set to
default-page.
This was caused by logic to reuse the current tab if it is on the default page
and has no history. The fix is using openurl rather than removeTab/tabopen.
2016-04-21 08:04:20 -04:00
Ryan Roden-Corrent
600b5082a9
Touch up tests and add pyqtSlot for marks.
...
Small code review changes.
2016-04-20 21:53:12 -04:00
Florian Bruhin
e18b056877
Merge branch 'pretty_url' of https://github.com/forkbong/qutebrowser into forkbong-pretty_url
2016-04-20 22:15:54 +02:00
Florian Bruhin
6a6285495a
Merge branch 'pretty_url_2' of https://github.com/forkbong/qutebrowser into forkbong-pretty_url_2
2016-04-20 20:56:24 +02:00
Panagiotis Ktistakis
1ef2f042cf
Mention {url:pretty} in the docs
2016-04-20 19:39:18 +03:00
Panagiotis Ktistakis
6c3b0219e7
Style fix
2016-04-20 17:25:26 +03:00
Ryan Roden-Corrent
c881730fad
Handle counts for special keys.
...
Now 3<ctrl-o> will execute whatever <ctrl-o> is mapped to with count=3.
2016-04-19 23:39:02 -04:00
Ryan Roden-Corrent
0755e163bb
Only set the ' mark on normal/current hinting.
...
Don't set ' for downloading, hovering, or opening a link in a tab.
2016-04-19 21:18:20 -04:00
Ryan Roden-Corrent
268d490e25
Return False when MarkKeyParser gets special key.
2016-04-19 17:30:57 -04:00
Jan Verbeek
3788eeb10b
Add a few common generic browser keybindings
2016-04-19 22:24:24 +02:00
kanikaa1234
fae005ab7f
:navigate: command and test feature
2016-04-19 20:30:20 +05:30
Panagiotis Ktistakis
c7534bd4a3
Allow {url:pretty} variable in commands
2016-04-19 16:37:05 +03:00
Ryan Roden-Corrent
6466ff919a
Don't limit marks to alpha characters.
2016-04-19 08:28:11 -04:00
Ryan Roden-Corrent
ae267c466f
Small fixes for marks.
...
Mark two callbacks with pyqtSlot as appropriate.
Return False instead of raising NotImplementedException to avoid pylint
identifying MarkKeyParser as abstract.
2016-04-19 08:28:02 -04:00
Florian Bruhin
5c97ec1659
Fix HeaderDict lint
2016-04-19 09:50:53 +02:00
Florian Bruhin
6aaea2aa31
Fix HeaderDict with an empty value
2016-04-19 09:43:54 +02:00
Florian Bruhin
e860d8cfea
Add a custom-headers setting
...
Supersedes #1132
Closes #1020 .
2016-04-19 06:35:32 +02:00
Florian Bruhin
c5999443a1
Implement a HeaderDict config type
...
Supersedes #1132 .
Fixes #1022 .
2016-04-19 06:35:20 +02:00
Panagiotis Ktistakis
045b54b94b
Add commands to yank pretty decoded URLs
...
yp and yP, yank to the clipboard and primary selection respectively
2016-04-18 23:11:27 +03:00
Panagiotis Ktistakis
bd6783c7e6
Add --pretty flag to :yank
...
With --pretty, the URL is yanked in a "pretty form", with most
percent-encoded characters decoded. Partially fixes #1372 .
2016-04-18 23:10:53 +03:00
Ryan Roden-Corrent
a924144d9a
Set ' mark after searching.
...
Allow jumping back to the previous position after a search jumps you around.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
4b00a17d71
Fix MarkKeyParser crash when changing keyconfig.
...
Ensure MarkKeyParser implements on_keyconfig_changed, so it doesn't fail when
rebinding a key. It doesn't have keybindings, so the implementation is just
`pass`.
This also fixes a few flake8 style errors.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
be6308534f
Store both x and y position for marks.
...
Previously only stored/used y.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
f4b9573744
Remove cyclic dependency from MarkKeyParser.
...
Rather than calling modeman.leave directly, modeman hooks into a request_leave
signal that is fired when MarkKeyParser wants to exit mark mode.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
49b2f6e967
Move jump_mark logic to TabbedBrowser.
...
This simplifies the MarkKeyParser by removing its dependency on the
commandrunner. It also removes the need for a new exception type.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
e684cfa03f
Trivial fixes for marks based on code review.
...
- Fix a docstring copy-paste
- Add own name/copyright date to new file
- Simplify a bdd expression (no need for regex)
- Scroll to a pixel position in a single operation
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
540f4af225
Set the ' mark after following a link.
...
This moves mark storage from CommandDispatcher to TabbedBrowser, so it can also
be accessed by the HintManager.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
c7b830d69d
Fix up mistakes caught by pylint.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
84eb30bc9a
Marks are local to urls, not tabs.
...
Rather than binding each set of local marks to a tab, bind them to a
url. Strip the fragment from the url, as two pages that differ only in
fragment are likely the same page.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
4037719a78
Add default bindings for set-mark and jump-mark.
...
Bind set-mark to ` and jump-mark to '.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
7bfea773db
Add set_mark and jump_mark modes.
...
These modes use a custom handler to pass whatever the next keypress is
to either set_mark or jump_mark.
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
9062f5925e
Set the ' mark on a jump.
...
Automatically set the special "'" mark when jumping.
jump-mark "'" will jump to the last position before the previous jump.
A jump could be navigating via a link, jumping to another mark, or
scrolling by percentage (e.g. gg or G).
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
ddcae14ba4
Implement set-mark and jump-mark.
...
set-mark <key> saves your current scroll position as mark <key>.
jump-mark <key> jumps to the position previously set for mark <key>.
If <key> is lowercase, it is local to the current tab. Each tab has its
own set of lowercase marks.
If <key> is uppercase, it is global across tabs, and stores a url and a
scroll position. Jumping to an uppercase mark navigates to that url,
then scrolls to the saved position.
Resolves #310 .
2016-04-17 21:04:08 -04:00
Ryan Roden-Corrent
f5bb75a186
Fix docstring in scroll_px.
2016-04-17 21:04:08 -04:00
Jakub Klinkovský
3265601eab
Merge remote-tracking branch 'upstream/master' into hints_clicking
...
* upstream/master: (327 commits)
Remove unused import
tox: Update Werkzeug to 0.11.8
Regenerate authors
Use __file__ instead of sys.argv[0]
Regenerate authors
Make update_3rdparty.py install correctly when run from any directory
Open command line urls explicitly.
tox: Update Werkzeug to 0.11.6
Move qutebrowser.rcc to misc/
Regenerate resources
Fix CHANGELOG/link in README
New qutebrowser logo!
www: Add releases link
Release v0.6.1
release checklist: Clarify how to build on Windows
Make sure the cheatsheet PNG is included in sdist
Fix cheatsheet link URL in quickstart
Mark segfault on exit in test_smoke as xfail
Add a xfail test for #797
Add missing file
...
Conflicts:
tests/integration/features/hints.feature
2016-04-15 22:37:47 +02:00
Xitian9
c76d4479ee
Open command line urls explicitly.
2016-04-15 18:50:42 +10:00
Alexey Glushko
2645334425
Indent fixing
2016-04-14 17:20:34 +00:00
Florian Bruhin
8dec54f7d9
Regenerate resources
2016-04-14 17:59:28 +02:00
Florian Bruhin
d3e7be1eb0
New qutebrowser logo!
...
Thanks to http://www.yelostudio.com
2016-04-14 17:44:38 +02:00
haitaka
d61ee2681f
set back to the qutebrowser logo in on_load_started
2016-04-14 20:26:00 +06:00
haitaka
de93e6c7ee
remove trailing whitespace
2016-04-13 19:15:01 +06:00
haitaka
b10c1b063d
Site favicon as window icon when 'tabs-are-windows' is enabled
2016-04-13 19:08:50 +06:00
Florian Bruhin
c690e652dc
Release v0.6.1
2016-04-10 21:25:32 +02:00
Florian Bruhin
6989d4d210
Fix downloading of non-ascii files with LC_ALL=C
...
Fixes #908 .
2016-04-10 20:16:40 +02:00
Florian Bruhin
a33aa524de
Don't crash if data is None while saving session
...
Under some circumstances I can't reproduce (switching/turning off
monitors?) it seems it's possible that SessionManager.save gets called
with last_window=True, without on_last_window_closed being called.
This might be to one of the Qt screen management bugs fixed in Qt 5.6,
which would explain why I can't reproduce it.
Instead of crashing, let's log the error and not save the session.
2016-04-10 17:47:14 +02:00
Florian Bruhin
20f80610be
Add some more logging for standarddir
2016-04-10 17:47:04 +02:00
Florian Bruhin
e6334e196c
Fix #1414 with a weird workaround
2016-04-10 15:26:02 +02:00
Johannes Martinsson
570d8b4abe
Make tab-focus count from end with negative index
...
This makes it possible to jump to the very last tab, as opposed to the
last focused tab, by using -1 as the index. Generally negative indexes
are counted from the end.
Solves issue #1166
2016-04-09 03:40:36 +02:00
kanikaa1234
a2bcf80aae
Fixed the tests
2016-04-08 20:51:07 +05:30
kanikaa1234
5c976d724b
Fixes #1318
2016-04-08 19:40:45 +05:30
Florian Bruhin
642dc46ba9
flake8: Add hacking
2016-04-08 07:35:53 +02:00
Florian Bruhin
f5b9e0ab27
Add Tor/HTTP completions for network -> proxy
2016-04-07 21:25:23 +02:00
Florian Bruhin
f0b66130d6
Merge branch 'rcorre-edit-url'
2016-04-06 06:52:43 +02:00
Florian Bruhin
c4878bb7ed
Don't raise cmdexc.CommandError in :open
...
:open can be called via :edit-url async, so we need to use message.error
by hand there.
2016-04-06 06:46:42 +02:00
Florian Bruhin
776c4c4400
Ensure -t/-b/-w are exclusive in :edit-url
...
Otherwise those would be passed as-is to :open and an unhandled
cmdexc.CommandError would be raised there.
2016-04-06 06:44:50 +02:00
Florian Bruhin
9db697452d
Remove self._editor in CommandDispatcher
...
This was needed before there was editor.ExternalEditor as there were
various commands which needed to access the editor object.
Since this is encapsulated in ExternalEditor now, no need to keep a
reference to the object around.
2016-04-05 18:48:58 +02:00
Florian Bruhin
6b3ee53064
Fix lint
2016-04-05 18:37:50 +02:00
Florian Bruhin
fc92137706
Handle count correctly for :edit-url
2016-04-05 18:37:03 +02:00
Florian Bruhin
332e045f54
Merge branch 'edit-url' of https://github.com/rcorre/qutebrowser into rcorre-edit-url
2016-04-05 18:28:50 +02:00
Ryan Roden-Corrent
e0d1e527d0
Fix up edit-url implementation.
...
Remove spaces around '=' for kwargs, don't set the _editor member.
2016-04-05 07:49:01 -04:00
Florian Bruhin
b5c177526c
tests: Add some "# pragma: no cover" for downloads
2016-04-05 11:43:35 +02:00
Ryan Roden-Corrent
c8848a2641
Implement edit-url to craft a url with an editor.
...
The edit-url command opens a url (by default, the current url) in the
user's external editor and navigates to the result when the editor is
closed. This makes it easy to tweak the current url to navigate within
a site.
`edit-url` accepts the same flags as `open` (e.g. -t will open in a new
tab.
One may provide a url as an argument to create a shortcut to
pre-populate part of a url and allow filling in the rest.
There is no default keybinding.
Resolves #1261 .
2016-04-04 20:47:42 -04:00
Florian Bruhin
806436297a
Release v0.6.0
2016-04-04 18:16:56 +02:00
Florian Bruhin
4b9cd1c544
Add qute:verizon
2016-04-01 10:30:30 +02:00
Florian Bruhin
4daf4a8e64
Fix lint
2016-04-01 08:16:28 +02:00
Florian Bruhin
272eb28d7b
Fix saving of history titles
...
This is a regression introduced in d83d2e4
.
2016-04-01 07:53:44 +02:00
Florian Bruhin
e3a8d00f27
Include cheatsheet images in offline help
...
Fixes #329 .
Note the png's are kind of outdated right now.
2016-04-01 07:42:40 +02:00
Florian Bruhin
6631c6456c
Merge branch 'session-tests'
2016-04-01 06:15:52 +02:00
Florian Bruhin
aad2407de1
Merge branch 'force-current-tab' of https://github.com/paretje/qutebrowser into paretje-force-current-tab
2016-04-01 06:13:08 +02:00
Florian Bruhin
451ea05393
Ignore "Frame load interrupted by policy change"
...
Searching for that error doesn't turn up many helpful results, but it
seems to be harmless and shown when downloading a file - it's also new
in Qt 5.6 it seems, so let's just ignore it.
2016-03-31 22:41:25 +02:00
Florian Bruhin
27b31b7ded
Avoid DownloadView being focused when pressing tab
...
The previous fix didn't work in situations where the web view was
actually focused, but had no focused element (like about:blank).
The new fix always works, and even is a lot simpler!
Fixes #504 .
2016-03-31 19:45:36 +02:00
Florian Bruhin
123fd18af5
Fix crash when removing download in closed window
...
When a download is finished with `removed-finished-download` set to a
delay, it's removed via a singleshot QTimer.
However, when the window was closed in the meantime, the slot still was
executed by Qt, even though the DownloadManager was already deleted.
Fixes #1242
2016-03-31 19:09:43 +02:00
Kevin Velghe
f4f98c54fa
Keep pylint happy
2016-03-31 11:25:35 +02:00
Kevin Velghe
e90ad3d9c0
Complete coverage for webelem
2016-03-31 10:25:44 +02:00
Florian Bruhin
cae496565b
Bind gt
to show buffer list
2016-03-31 07:05:30 +02:00
Florian Bruhin
14b9f3d8f5
Remove gt/gT bindings
...
Those were added in #443 , inspired by luakit.
However, all other bindings follow dwb's defaults, and dwb uses `gt` for
showing buffers. To be consistent, let's rebind gt to show :buffer.
2016-03-31 07:02:59 +02:00
Florian Bruhin
d83d2e442e
Work around getting an empty session title.
...
Fixes #879 .
Supersedes #880 .
2016-03-31 06:38:09 +02:00
Jimmy
1c10a1aecf
Adds new buffer command with completion.
...
`buffer` takes either a tab index or a string and focuses the specified
tab. The index can be of the form [0-9]+ which will switch to the
relevant tab in the current window or [0-9]+/[0-9]+ (that is
win_id/index) which will focus the specified window before switching
tabs. If a string is passed the list of open tabs across all windows is
sorted based on title and url (just like in the completion widget) and
the top result is selected.
2016-03-31 14:00:36 +13:00
Kevin Velghe
0fe0f84546
Fix loop and support area tag
...
It appears the output of qtwebkit has a cycle, so we end in an endless
loop. This limits the loop to 5 steps.
2016-03-31 00:58:19 +02:00
Kevin Velghe
a242ba28d9
Support multiple levels when checking link target
2016-03-30 23:44:05 +02:00
Kevin Velghe
571d6519e9
Handle frames
2016-03-30 19:08:10 +02:00
Kevin Velghe
201739a7e6
Add current hint target
2016-03-30 16:27:34 +02:00
Florian Bruhin
6c7e2492e9
Merge branch 'dirbrowser-issue-1334' of https://github.com/Kingdread/qutebrowser into Kingdread-dirbrowser-issue-1334
2016-03-29 22:38:04 +02:00
Florian Bruhin
86ab33c558
Pass HTTPClient to PastebinClient as argument
2016-03-29 19:21:15 +02:00
Florian Bruhin
32c9f2ac94
Fix starting with -c ""
2016-03-29 07:43:11 +02:00
Florian Bruhin
3eb782b204
pylint: Remove now useless no-member suppression
...
This is now useless since introducing the jinja.render wrapper.
2016-03-29 07:06:32 +02:00
Florian Bruhin
2aaf22df76
Also read blocked hosts from ~/.config
2016-03-29 06:59:23 +02:00
Daniel Schadt
5e73a2ea37
dirbrowser: move parent dir logic to own function
2016-03-28 23:10:20 +02:00
Daniel Schadt
7fe4c7e06d
fix lint
2016-03-28 23:10:20 +02:00
Daniel Schadt
375e60627a
dirbrowser: ditch .lstrip, add file_url function
2016-03-28 23:10:20 +02:00
Daniel Schadt
a77e085952
dirbrowser: fix navigation on windows
...
Issue #1334
The problem was that there were too few slashes. On Linux, absolute
paths start with /, so
file:// + /home
gives file:///home, which is a valid path. On windows however, absolute
paths start with a drive letter, so
file:// + C:/Users
gives file://C:/Users, which is parsed as "host C, path Users", which is
why it could be written as file://c/Users (strip out the empty "port"),
giving us an invalid path.
The solution is to add the third slash in the template, and strip the
redundant slash on unix systems.
Additionally, this fixes a bug where navigating from '/home/' to the
parent directory would give '/home' instead of '/'
2016-03-28 23:08:54 +02:00
Kevin Velghe
76935291c0
Open links in current tab
...
Fix for #676
It removes the target of the link, as to prevent the website to overrule
the user. I guess the following things should be done:
- add setting to enable/disable this behaviour
- and/or add "hint all current"
Only the first one would be easiest. The second one requires us to keep track
of the original target. I should open a pull request for discussion.
2016-03-28 13:29:44 +02:00
Florian Bruhin
bec8bd0285
Mention QtWebEngine in segfault report dialog
2016-03-27 23:11:45 +02:00
Florian Bruhin
952daf0479
Well, this is embarassing. Fix segfault reports.
2016-03-27 22:53:05 +02:00
Florian Bruhin
4cd49d42cc
Fix pdfjs error page after jinja.render changes
2016-03-27 12:53:53 +02:00
Florian Bruhin
387e35d3e5
Fix lint
2016-03-26 00:24:54 +01:00
Florian Bruhin
9edc5a665e
Handle jinja's UndefinedError in jinja.render
...
We can get UndefinedError when a new function got added to the jinja
env (and gets called from a template) and the user did update the
on-disk templates but not restart qutebrowser yet.
In this case, let's show a special error page to the user and tell them
to do :report in the unlikely case it's actually a bug.
Fixes #1362 .
See #1360 .
2016-03-26 00:00:06 +01:00
Florian Bruhin
86b12a302e
Add a jinja.render helper
...
This simplifies some code and will make #1362 possible.
2016-03-25 14:29:30 +01:00
Florian Bruhin
f2f0f429fb
Update docs
2016-03-25 11:10:38 +01:00
Clayton Craft
439d815601
Now runner calls cmd_path instead of cmd
2016-03-24 16:26:19 -07:00
Clayton Craft
ff4e17190f
Allow searching system-wide data path on Linux for userscripts
2016-03-24 13:22:00 -07:00
Florian Bruhin
a932183909
Merge branch 'master' of https://github.com/haxwithaxe/qutebrowser into haxwithaxe-master
2016-03-18 06:17:54 +01:00
haxwithaxe
eed13467f3
allow {0} in search engine specification strings to allow multiple instances of the search term in the url
2016-03-17 20:38:05 -04:00
Florian Bruhin
0830b400fe
Merge branch 'editor_crash_behaviour' of https://github.com/EliteTK/qutebrowser into EliteTK-editor_crash_behaviour
2016-03-17 21:40:17 +01:00
Florian Bruhin
99fadacda6
Merge branch 'multi_url_heuristic' of https://github.com/hcraT/qutebrowser into hcraT-multi_url_heuristic
2016-03-17 21:28:40 +01:00
Florian Bruhin
dad26cc395
Fix line length
2016-03-16 19:43:18 +01:00
Florian Bruhin
a52334333b
Merge branch 'fix/hints-auto-follow' of https://github.com/NoctuaNivalis/qutebrowser into NoctuaNivalis-fix/hints-auto-follow
2016-03-16 18:17:08 +01:00
Florian Bruhin
60c293846f
Un-deprecate :download-remove --all
2016-03-14 19:11:41 +01:00
Florian Bruhin
35731feeb5
Fix docs for :download-* commands
2016-03-14 19:05:36 +01:00
Florian Bruhin
25ee48d28b
Add an --all flag to :download-cancel
2016-03-14 19:05:15 +01:00
Florian Bruhin
2fb186efcd
Fix UnboundLocalError in :unbind
2016-03-10 20:27:03 +01:00
Florian Bruhin
88e4102ae1
Move Liberation Mono after Courier as default font
...
Before, in fonts -> _monospace we preferred Liberation Mono to Courier and
Courier New. Unfortunately, that font looks horrible on Windows if it's
installed, so let's avoid using it if possible.
On Linux, hopefully Courier New/Courier isn't available, and Liberation Mono
will get picked up instead (or one of the other alternatives).
2016-03-09 10:12:39 +01:00
Florian Bruhin
0c3eb7a31c
Specify valid loglevels for --loglevel/-l
2016-03-08 17:38:26 +01:00
Florian Bruhin
18b6d7ea50
Merge branch 'xdg-download-dir-fix' of https://github.com/Kingdread/qutebrowser into Kingdread-xdg-download-dir-fix
2016-03-08 07:13:03 +01:00
Tarcisio Fedrizzi
8f593d948c
Fixing flake8 error
2016-02-28 23:56:23 +01:00
Tarcisio Fedrizzi
25bc2dc1db
Changes formatters to print multiline text on one line
2016-02-28 23:45:02 +01:00
Tarcisio Fedrizzi
d8ad0a14af
Fixes wrong documentation
2016-02-28 23:42:14 +01:00
Tarcisio Fedrizzi
0ab44c4f4a
Reformats code as requested
2016-02-28 23:41:20 +01:00
Tarcisio Fedrizzi
79ad65ee64
Fixes flake8 errors
2016-02-27 12:36:13 +01:00
Tarcisio Fedrizzi
67ebdc6eb6
Fixes the position of the logging line
2016-02-27 11:54:23 +01:00
Tarcisio Fedrizzi
702b235981
Fixes formatting to make pylint happy.
2016-02-27 11:54:23 +01:00
Tarcisio Fedrizzi
006d8760c4
Adds path checking to the multiline url heuristic
2016-02-27 11:54:23 +01:00
Tarcisio Fedrizzi
4500bc24d4
fuzzy_url uses path check function
2016-02-27 11:54:23 +01:00
Tarcisio Fedrizzi
594b0d2910
Refactors path validity check to its own function
2016-02-27 11:54:23 +01:00
Tarcisio Fedrizzi
4aa7649c0a
Implemented heurisitc on multiline paste
2016-02-27 11:54:23 +01:00
Florian Bruhin
c156f53eba
Merge branch 'data-link-fix' of https://github.com/Kingdread/qutebrowser into Kingdread-data-link-fix
2016-02-27 03:01:19 +01:00
Jakub Klinkovský
b1207650b0
hints: translate client rectangles into parent frames
2016-02-24 22:56:06 +01:00
Jakub Klinkovský
d630f966e7
hints: ignore too small rectangles returned by getClientRects()
...
Apparently we can have a '1px x 1px' rectangle at some zoom levels
and '0px x 0px' at others. We can't reliably click these, so let's
ignore them.
2016-02-23 20:23:11 +01:00
Jakub Klinkovský
58d2d92d67
Merge remote-tracking branch 'upstream/master' into hints_clicking
...
* upstream/master: (22 commits)
Regenerate authors.
Only run geolocation tests on CI
Switch to flake8-docstrings with pydocstyle
Fix lint
Move pylint plugins to an installed package.
Include pytest-xvfb properly in frozen tests
tests: Handle trailing / in wait_for_load_finished.
Fix lint.
tox: Upgrade hypothesis to 3.0.2.
tests: Add first end-to-end test for hints.
hints: Log the used hint chars
bdd: use quteproc.wait_for_load_finished.
Remove xvfbwrapper from freeze_tests.py.
Regenerate authors.
Combine launch/crash time into one section.
Split long lines.
Switch to pytest-xvfb. Fixes #1309 .
no ellipsis is inserted in big windows
Regenerate authors.
fixes #1308
...
2016-02-23 17:40:02 +01:00
Daniel Schadt
20daf1f86e
fix lint
2016-02-23 14:33:10 +01:00
Florian Bruhin
0df4da5b91
Also display XDG_* in crash reports
2016-02-23 08:47:53 +01:00
Daniel Schadt
e5dc10a29e
downloads: handle relative XDG_DOWNLOAD_DIR
...
Issues #1269 , #866
qutebrowser would crash when XDG_DOWNLOAD_DIR was set to some
non-absolute value (which should not happen, but it can) and
"storage -> download-dir" was empty, since when the user didn't give an
absolute filename, even the joined path of download_dir() (i.e.
XDG_DOWNLOAD_DIR in this case) and the filename was not absolute either.
Since the path was not absolute, create_full_filename returned None,
which meant that os.path.basename(self._filename) raised an exception.
Now we display an error message and fall back to $HOME.
2016-02-22 23:43:09 +01:00
Jakub Klinkovský
1cff16b3b4
hints: fix bug in the correction of coordinates based on zoom level
2016-02-19 21:15:56 +01:00
Florian Bruhin
9b1db7ec0b
hints: Log the used hint chars
...
Useful for debugging and for end2end tests.
2016-02-18 20:46:15 +01:00
Daniel Schadt
007425cf16
downloads: fix filename for data: links
...
Issue #1214
Now uses a sensible filename for data: links instead of the whole base64
content. For PDF.js, it even uses the correct pdf filename.
TODO: Produces "QPainter:🔚 Painter ended with 2 saved states" while
running the tests here (Arch Linux):
CPython: 3.5.1
Qt: 5.5.1, runtime: 5.5.1
PyQt: 5.5.1
2016-02-18 16:17:35 +01:00
Florian Bruhin
2b2331754d
Combine launch/crash time into one section.
2016-02-17 07:10:01 +01:00
Florian Bruhin
36019c0cab
Split long lines.
2016-02-17 07:04:25 +01:00
Jakub Klinkovský
9799c30c2b
hints: add precision tests for different zoom levels
2016-02-15 23:31:49 +01:00
Jakub Klinkovský
dd594b0eca
hints: split getClientRects() into separate method
...
this will be useful for positioning the hint label
2016-02-15 23:28:52 +01:00
Jakub Klinkovský
a546933516
hints: use getClientRects() JS method to get the correct click position
2016-02-15 18:17:53 +01:00
Felix Van der Jeugt
b45db0f1dd
let help text match reality
2016-02-15 14:38:11 +01:00
avk
d551591b42
Added crash time to crash report
2016-02-12 11:59:45 +01:00
avk
53719366e0
Added time to standard log
2016-02-12 11:02:08 +01:00
Florian Bruhin
b6f1dd963d
Handle Shift-Insert correctly in prompt mode.
...
Fixes #1299 .
2016-02-10 06:40:54 +01:00
Daniel Schadt
ec4ba31b52
pdfjs: fix misplaced comma
2016-02-08 06:12:24 +01:00
Daniel Schadt
9676eab592
qutescheme: call base __init__ in QuteSchemeError
2016-02-05 15:18:27 +01:00
Daniel Schadt
59c782f383
qutescheme: handle pdfjs failures more gracefully
...
Now the browser does not crash anymore if an invalid pdfjs resource is
requested, instead it will reply with a 404 error.
2016-02-05 01:43:56 +01:00
Daniel Schadt
804b4750ab
pdfjs: use list of tuples instead of dictionary
...
Even though the dict seemed to be fine, this gives us a predictable
replacement order and helps with debugging in the future.
2016-02-04 21:18:15 +01:00
Daniel Schadt
da4f69cf72
pdfjs: throw PDFJSNotFound from None
...
Otherwise the stacktrace might be confusing since it will show the
FileNotFoundException as the causing error, which is not true (it just
happens to be the last checked place).
The .path attribute was added so that we still have the requested path
in the error log.
See #1280 .
2016-02-04 21:11:20 +01:00
Florian Bruhin
e5e1a0d95c
Reject hints -> chars containing duplicate chars
...
Fixes #1286 .
2016-02-03 21:05:35 +01:00
Florian Bruhin
0b491f6caf
Use json.dumps for logged fake clipboard.
...
For some reason, when comparing the repr in the two processes, we get different
results on OS X and Windows:
- expected: "fünf"
- "f\xfcnf" coming back from the subprocess on OS X
- "fnf" on Windows
Instead we're comparing the json dump now, which should be more predictable.
2016-02-03 20:54:35 +01:00
Florian Bruhin
79f83a033d
Add a fake clipboard for tests
...
There are a lot of problems and flakiness with using a real clipboard.
Instead we now have a :debug-set-fake-clipboard command to set a text, and use
logging when getting the contents.
Fixes #1285 .
2016-02-03 20:27:11 +01:00
Florian Bruhin
7fe818f9c8
Revert "Delay :yank notification until message was yanked."
...
This reverts commit b79049261e
.
2016-02-03 19:19:13 +01:00
Florian Bruhin
65a4c71488
Merge branch 'master' of https://github.com/NoctuaNivalis/qutebrowser into NoctuaNivalis-master
2016-02-02 18:58:16 +01:00
Jimmy
42160335dc
Improve performance when scrolling with many tabs.
...
Closes #1278 .
2016-02-02 07:33:07 +01:00
Florian Bruhin
ad290e8702
Merge branch 'relax-editor-templating' of https://github.com/Olical/qutebrowser into Olical-relax-editor-templating
2016-02-02 06:49:57 +01:00
Florian Bruhin
7e584bb31d
Merge branch 'master' of https://github.com/XRevan86/qutebrowser into XRevan86-master
2016-02-02 06:41:29 +01:00
Florian Bruhin
312daca2b0
fuzzy_url: Raise InvalidUrlError on empty URLs.
...
Before we raised QtValueError (via qtutils.ensure_valid), but maybe there are
more callers out there which call fuzzy_url with an empty input - and it makes
more sense to raise InvalidUrlError which gets displayed to the user than
raising QtValueError which is more like an assertion.
2016-02-02 06:38:48 +01:00
Florian Bruhin
14042403f6
Fix pasting of empty URLs.
2016-02-02 06:37:49 +01:00
Sorokin Alexei
04afcef239
Use system icon for windows if available
2016-02-02 00:48:07 +03:00
Oliver Caldwell
a14f8a201e
Merge remote-tracking branch 'TheCompiler/master' into relax-editor-templating
2016-02-01 21:19:50 +00:00
Florian Bruhin
7be296333a
Merge branch 'pdfjs' of https://github.com/Kingdread/qutebrowser into Kingdread-pdfjs
2016-02-01 20:07:56 +01:00
Florian Bruhin
7a268a41f6
pylint: Don't require docstring for main() funcs.
2016-02-01 20:06:49 +01:00
Daniel Schadt
449a54c7d0
pdfjs: add file path to version information
...
Shows "bundled" if the bundled version is used.
2016-02-01 17:28:18 +01:00
Daniel Schadt
6342febb44
pdfjs: Update documentation
...
The-Compiler made an AUR package for pdfjs so we should mention it in
the SYSTEM_PDFJS_PATHS, even though it uses the same path as the Debian
package.
2016-02-01 16:43:20 +01:00
Oliver Caldwell
4cd7d193f1
Simplify arg placeholder replacement
2016-01-31 22:56:11 +00:00
Oliver Caldwell
54ff2aa46c
Merge remote-tracking branch 'TheCompiler/master' into relax-editor-templating
2016-01-31 22:43:58 +00:00
Florian Bruhin
44625b254c
Merge branch 'shift_ins' of https://github.com/lahwaacz/qutebrowser into lahwaacz-shift_ins
2016-01-31 19:46:41 +01:00
Jakub Klinkovský
cc8e7007b4
Fixed docstring formatting error
2016-01-30 14:13:41 +01:00
Jakub Klinkovský
db6a0d53ca
Addressed code-quality remarks
2016-01-27 10:04:24 +01:00
Florian Bruhin
85adf7593d
Fix crash when downloading URL without path infos.
...
Fixes #1243 .
2016-01-26 22:39:10 +01:00
Florian Bruhin
ea1627c1e6
Cancel permission prompt when tab is closed.
...
Fixes #1250 .
2016-01-26 19:47:31 +01:00
Oliver Caldwell
e9128ebb2a
Relax editor templating
...
I tried to set my editor to `termite -e "vim -f {}"`, termite being a
pretty cool and light terminal I use within my i3wm Arch linux box.
So when I open my editor I want it to launch a terminal with Vim inside
instead of GVim for various reasons.
The validation rejected this at first because it was looking for '{}'
inside ['foo', 'bar', 'baz {}'], essentially. So I need it to look
inside the sub-strings, not just the list.
Then after validation I need to perform the '{}' replacement inside the
sub-string too, not just replacing the whole string.
2016-01-26 09:18:43 +00:00
Florian Bruhin
785e2052f6
Ignore 'Method "GetAll"' Qt warning with escapes.
...
For some reason, since some time this message appears with those escapes in it.
2016-01-24 19:13:11 +01:00
Florian Bruhin
7dca8d7329
Fix lint.
2016-01-24 17:30:59 +01:00
Florian Bruhin
86f03c7d81
Merge branch 'master' of https://github.com/mikeri/qutebrowser into mikeri-master
2016-01-24 17:01:35 +01:00
Tomasz Kramkowski
399aaa2b70
history: Add clear() method and history-clear command
...
WebHistory now has a clear() method which is also a command
(history-clear) which clears the qutebrowser history using the new
lineparser clear() method and emits a cleared signal.
The completion model urlmodel connects to the WebHistory.cleared signal
and clears its history category completion list.
I am adding this as a temporary fix before #58 or #1051 get implemented.
2016-01-23 22:36:24 +00:00
Tomasz Kramkowski
6894033f8d
lineparser: Add clear() method.
...
The lineparser clear method, implemented for all lineparser subclasses,
clears the underlying file and also empties any lineparser data
structures.
2016-01-23 22:35:19 +00:00
Florian Bruhin
7fa0dc68bf
flake8: Add flake8-pep3101 plugin.
...
Checks for old string formatting.
https://pypi.python.org/pypi/flake8-pep3101/
2016-01-22 19:40:10 +01:00
Florian Bruhin
f74d1f26c7
flake8: Add flake8-string-format plugin.
...
string format checker, plugin for flake8
https://pypi.python.org/pypi/flake8-string-format/
2016-01-22 19:00:29 +01:00
Jakub Klinkovský
35e16a8e6e
paste-primary: fix undo/redo not working
...
It seems that unlike Gecko, WebKit does not support undo/redo operations
when the textarea's `value` attribute is changed directly. Fortunately
there is a WebKit-specific workaround using textInput event.
References:
* http://stackoverflow.com/a/7554295
* http://help.dottoro.com/ljuecqgv.php
2016-01-22 18:18:17 +01:00
Florian Bruhin
8bdb1b6b14
flake8: Add flake8-copyright plugin.
...
Adds copyright checks to flake8
https://pypi.python.org/pypi/flake8-copyright/
2016-01-22 17:46:33 +01:00
Florian Bruhin
58fb2826ee
flake8: Add flake8-putty plugin.
...
Apply a bit of putty to flake8.
https://pypi.python.org/pypi/flake8-putty/
2016-01-22 17:33:58 +01:00
Florian Bruhin
fccde768ed
flake8: Add pep8-naming plugin.
...
Check PEP-8 naming conventions, plugin for flake8
https://pypi.python.org/pypi/pep8-naming/
2016-01-22 17:33:58 +01:00
Florian Bruhin
7e3507aba1
flake8: Add flake8-debugger plugin.
...
flake8 debug statement checker
https://github.com/JBKahn/flake8-debugger
2016-01-22 17:33:58 +01:00
Florian Bruhin
289891a828
flake8: Check W503 (line break before binary op)
2016-01-22 17:33:58 +01:00
Florian Bruhin
526441bcae
Fix new flake8 lint.
...
For some reason these issues weren't shown with pytest-pep8/flakes.
2016-01-22 17:33:58 +01:00
Jakub Klinkovský
4d7e39470e
Added paste-primary command
...
The Shift+Ins key should arguably insert primary selection, not the
clipboard selection as every Qt program does. This commit makes it
possible via the hidden paste-primary command (enabled by default).
Unfortunately QtWebKit does not provide any straightforward way to
insert text at cursor position into editable fields, so we work around
this by executing a JavaScript snippet - inspired by this SO answer:
http://stackoverflow.com/a/11077016
2016-01-21 22:30:43 +01:00
Michael Ilsaas
4ad2d63c8a
Shortened urlincdec tests to one and some styling
2016-01-21 18:37:46 +01:00
Florian Bruhin
3c625790cc
Don't crash if JS tab is closed twice.
...
Fixes #906 .
2016-01-20 21:24:51 +01:00
Florian Bruhin
fc3c928326
Merge branch 'autocompletion_enhancement' of https://github.com/tex/qutebrowser into tex-autocompletion_enhancement
2016-01-20 20:04:53 +01:00
Michael Ilsaas
c33e9555a1
Tester for url increment/decrement with zeroes
2016-01-20 19:38:03 +01:00
Florian Bruhin
c02183652f
Fix starting with -c "" and add test.
...
Fixes #1169 .
2016-01-20 18:20:19 +01:00
Michael Ilsaas
d6cda0ed27
Include leading zeroes in URL increment/decrement
2016-01-19 21:37:49 +01:00
Felix Van der Jeugt
6d33e7843e
should use the same keyword in config and code
...
hey this config check on startup is actually useful
2016-01-19 11:44:28 +01:00
Florian Bruhin
eb276df876
Handle empty term in urlutils._get_search_url.
...
Fixes #1239 .
2016-01-19 07:03:43 +01:00
Florian Bruhin
041aa61508
Make :restart work with --temp-basedir.
...
Fixes #1244 .
2016-01-19 06:51:36 +01:00
Florian Bruhin
8a757c8603
Release v0.5.1.
2016-01-18 22:12:52 +01:00
Felix Van der Jeugt
7ad871fab1
Merge remote-tracking branch 'source/master'
2016-01-18 21:45:47 +01:00
Florian Bruhin
c8538bdbb8
Fix config validation for String types.
...
Fixes #1231 .
2016-01-18 07:29:15 +01:00
Felix Van der Jeugt
cbb6e73b1f
cleaner condition, less force
2016-01-17 21:06:36 +01:00
Felix Van der Jeugt
beba5a3d6c
limit smart hint length
2016-01-17 20:44:14 +01:00
Florian Bruhin
f1c31233c8
Merge branch 'master' of https://github.com/Evidlo/qutebrowser into Evidlo-master
2016-01-15 07:42:47 +01:00
Florian Bruhin
9d520b7312
Avoid trying to load .netrc if $HOME isn't set.
...
This logged an error on Windows:
ERROR misc networkmanager:on_authentication_required:269 Unable to read the netrc file
Traceback (most recent call last):
File "c:\python34\Lib\netrc.py", line 27, in __init__
file = os.path.join(os.environ['HOME'], ".netrc")
File "C:\Users\florian\buildbot\slave\win8\build\.tox\py34\lib\os.py", line 633, in __getitem__
raise KeyError(key) from None
KeyError: 'HOME'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\florian\buildbot\slave\win8\build\qutebrowser\browser\network\networkmanager.py", line 262, in on_authentication_required
net = netrc.netrc()
File "c:\python34\Lib\netrc.py", line 29, in __init__
raise OSError("Could not find .netrc: $HOME is not set")
Since this case is pretty common, we don't want to log it - and checking the
variable beforehand is easier than parsing the exception message.
This should fix the failing tests on Windows.
2016-01-15 06:57:43 +01:00
evan
982ac5150d
issue 1213: Display yanked link in statusbar
...
copied string format from `yank()` in `commands.py`
2016-01-14 19:17:12 -05:00
Florian Bruhin
0203bb3ed5
Add a :debug-clear-ssl-errors command.
2016-01-13 21:05:48 +01:00
Florian Bruhin
f61b9fd42c
Update docs.
2016-01-13 18:20:44 +01:00
Florian Bruhin
6c916d166d
Merge branch 'master' of https://github.com/hcraT/qutebrowser into hcraT-master
2016-01-13 18:12:37 +01:00
Florian Bruhin
6b7f9fad9e
Fix ssl-strict = ask.
...
This was introduced in b13f2aa6f0
.
2016-01-13 15:54:25 +01:00
Florian Bruhin
b13f2aa6f0
Also deduplicate SSL errors with ssl-strict false.
...
Otherwise, on OS X we got the same SSL error logged twice as on_ssl_errors is
called twice. This means the tests only marked one as expected, and it failed
because of the other one.
2016-01-13 07:52:12 +01:00
Florian Bruhin
00f5b3cf74
Log debug information on SSL errors.
2016-01-13 07:52:12 +01:00
Florian Bruhin
df03099468
Fix completion for String config type.
...
Since 2a705e2eb6
non-specialized config types are
String. However, String had an overloaded complete() which defaulted to
returning None.
Now we use the normal complete() which relies on valid_values if completions
isn't given instead.
Fixes #1223 .
2016-01-12 18:53:53 +01:00
Tarcisio Fedrizzi
4bbc1e2d8a
Changes line as suggested in review
2016-01-12 09:58:08 +01:00
Tarcisio Fedrizzi
b2c7ab9211
Fixes: forgot to rename removed variable instances
2016-01-09 12:49:56 +01:00
Tarcisio Fedrizzi
1b31a3fee4
Allows to paste multiple URLs
...
- The paste command will now open one tab/window per url if multiple
URLs (separated by newline) are present in the clipboard
- Adds the tests for the new multitab functionality
- Changes test/integration/conftest.py to be able to insert newlines in
the clipboard for the test
2016-01-09 11:32:12 +01:00
Tarcisio Fedrizzi
6327d0fe36
Strip url before trying to open it as a path
2016-01-09 11:26:17 +01:00
Florian Bruhin
364d069e74
Stop IPC timeout timer while executing command.
...
This hopefully helps with #1183 .
2016-01-08 13:48:19 +01:00
Florian Bruhin
d84b15d35c
ipc: Add missing 0x prefix for logged socket IDs.
2016-01-08 13:09:49 +01:00
Florian Bruhin
ff2024a565
Add socket IDs to ipc debug messages.
2016-01-08 12:02:36 +01:00
Milan Svoboda
20cdb45da5
use greedy highlighting
2016-01-06 21:52:56 +01:00
Florian Bruhin
3f15186a64
Add some coverage pragmas for caret workarounds.
2016-01-06 17:52:44 +01:00
Florian Bruhin
9720d879ad
Remove dead code.
2016-01-06 17:52:11 +01:00
Milan Svoboda
ec8dc35a68
rename patternre, use ignorecase in re instead of casefold
2016-01-06 07:38:55 +01:00
Florian Bruhin
c7edb8e1f2
Make QApplication available to :debug-pyeval.
2016-01-06 07:14:49 +01:00
Florian Bruhin
05281a7d1f
Add a --quiet argument to :debug-pyeval.
...
Closes #1156 .
2016-01-06 06:19:37 +01:00
Felix Van der Jeugt
362db3d986
fix remarks
2016-01-05 22:45:52 +01:00
Felix Van der Jeugt
8873aba09f
rename strng to more sensible names
2016-01-05 21:44:29 +01:00
Felix Van der Jeugt
e28c1bf9b8
allow config files to be optional
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
32de5b76a9
urgh be awake
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
12cc96a94b
fix most of the-compiler's remarks
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
b89e0f8803
refactor all the things
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
9f81a9c3c6
lines also hey, a useful suggestion
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
cb8b16ecc5
yes, this looks less complex
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
aa9e58b520
take this, pep8
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
fc06283d91
fix more pep8/pylint complaints
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
d0979b9fac
fix pep8 and pylint errors
...
Though I quite disagree on some remarks, as usual.
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
4814abe286
refactor tag extraction and fix string shadowing
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
38803375f5
add dictionary config value and fix wrong variable
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
351420310d
fix some of the style warnings and errors
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
766a94a539
fixed when new hints are prefixes of existing
...
good thing I used this some days before any merging
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
1dfcf99d22
more extensive smart hinting
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
2f9051c6e1
shorten unique word hints
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
50b7f260c7
use link text as hints
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
86828930a2
use object state in stead of class state to store hint words
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
aaad8588b6
include dictionary parsing in first hinting
...
I though this would be to slow, but it's actually OK
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
3be81ba62a
word hints should be generated on first call
2016-01-05 20:43:29 +01:00
Felix Van der Jeugt
49e6b656f6
add word hints
2016-01-05 20:43:29 +01:00
Florian Bruhin
8bd4d3d24a
Release v0.5.0
2016-01-05 19:30:50 +01:00
Florian Bruhin
88d28e690e
Add pdf.js version to qute:version.
2016-01-05 18:47:50 +01:00
Florian Bruhin
a97ba9aa09
Merge branch 'pdfjs' of https://github.com/Kingdread/qutebrowser into Kingdread-pdfjs
2016-01-05 07:21:26 +01:00
Florian Bruhin
129990857a
Point out crash reports are currently public.
...
See #481 .
2016-01-05 07:07:45 +01:00
Florian Bruhin
7001f068b3
Restart correctly after reporting crash.
...
Fixes #1128 .
2016-01-05 07:02:20 +01:00
Florian Bruhin
a5f2ac5f03
Adjust copyright years.
2016-01-04 07:12:39 +01:00
Florian Bruhin
c1d3a94936
Don't pass through shifted characters.
...
See #1207 - turns out that was a problem for *any* character.
2016-01-04 07:10:23 +01:00
Milan Svoboda
382f7c6bf1
fix lint
2015-12-30 16:15:17 +01:00
Milan Svoboda
ed032ea107
fix lint
2015-12-30 15:54:50 +01:00
Milan Svoboda
4caffccca6
fix lint, highlight properly
2015-12-30 15:32:40 +01:00
Florian Bruhin
abfe894027
Remove now useless pylint suppression.
2015-12-29 14:57:26 +01:00
Milan Svoboda
1f3a8a60d8
escape search string, explicit boolean test
2015-12-26 23:44:03 +01:00
Milan Svoboda
a652688566
fix lint errors
2015-12-26 18:04:01 +01:00
Milan Svoboda
013df51fd2
fix lint errors
2015-12-26 17:44:30 +01:00
Milan Svoboda
f64a3451fa
fix lint errors
2015-12-26 17:15:46 +01:00
Milan Svoboda
8914404d59
allow to narrow down search by adding more words separated with space
2015-12-26 16:27:53 +01:00
Florian Bruhin
12f44d0a5e
tox: Update astroid to 1.4.2 and pylint to 1.5.2.
2015-12-21 09:17:26 +01:00
Florian Bruhin
8fdbd94d71
userscripts: Remove on_proc_error.
...
When there was an error, the finished signal will be emitted too anyways, so if
we call cleanup here, we'll call it twice which means we'll get an exception.
Supersedes #1175 .
2015-12-21 08:45:46 +01:00
Florian Bruhin
59c8e5c3d1
Add some tests for commands.userscripts.
2015-12-21 08:45:46 +01:00
Florian Bruhin
b8727d338f
Fix DummyUserscriptRunner.
2015-12-20 20:04:00 +01:00
Daniel Schadt
6d02ef68ec
Add BDD tests for pdfjs integration
2015-12-20 20:00:56 +01:00
Daniel Schadt
4fdf318fda
pdfjs: Use "info" verbosity for pdf.js logging
2015-12-20 19:24:41 +01:00
Daniel Schadt
1279e418ee
pdfjs: Replace inline-removal with own function
...
Easier to unit-test and easier to understand for other programmers.
2015-12-20 19:24:41 +01:00
Daniel Schadt
c0b3160676
qutescheme: guess mimetype instead of 'text/html'
...
Since we're now using qute:// to serve files other than html
(see: pdfjs), it's a good idea to change the mimetype accordingly. This
also prevents warnings in the console, as QWebKit will complain e.g.
when stylesheets are served with 'text/html'.
2015-12-20 19:24:41 +01:00
Daniel Schadt
3a13e46c25
disable pdfjs by default
2015-12-20 19:24:41 +01:00
Daniel Schadt
cab1d3c666
fully encode URL before passing it to pdfjs
2015-12-20 19:24:41 +01:00
Daniel Schadt
2f34bdf9b9
Add link to pylint bug
2015-12-20 19:24:41 +01:00
Daniel Schadt
8e4ca1fc23
pdfjs: use PDFView.open instead of PDFView.load
...
Now we get a nice loading bar at the top of the page.
2015-12-20 19:24:41 +01:00
Daniel Schadt
d7d577b1fa
Fix pep8/pylint
2015-12-20 19:24:41 +01:00
Daniel Schadt
1c13a3cd68
pdfjs: search in ~/.local/share/qutebrowser
2015-12-20 19:24:41 +01:00
Daniel Schadt
623b6fba7e
pdfjs: open system file in binary read
2015-12-20 19:24:41 +01:00
Daniel Schadt
b243acf172
Add a nice error page when pdfjs is not found
2015-12-20 19:24:41 +01:00
Daniel Schadt
9eb72bf08a
pdfjs: use system-wide installation if available
2015-12-20 19:24:41 +01:00
Daniel Schadt
ef85d1af4c
Move pdfjs and use original files
...
* No modified pdfjs installation needed
-> Groundwork for using a system-wide installation
* Script update_3rdparty.py to download and upack the latest pdfjs
release
2015-12-20 19:24:41 +01:00
Daniel Schadt
60b9d7e6c3
Fix lints
2015-12-20 19:24:41 +01:00
Daniel Schadt
0811418746
pdfjs: don't embed data in html
...
We don't need more than one copy of the pdf.
2015-12-20 19:24:41 +01:00
Daniel Schadt
e6548dd9e7
reorder pdfjs generation code
2015-12-20 19:24:41 +01:00
Daniel Schadt
3dfaab6194
pdfjs: actually wait until the file is loaded
...
Otherwise we get incomplete replies and thus no pdf to view.
2015-12-20 19:24:41 +01:00
Daniel Schadt
8b141037ef
Add setting value to enable/disable pdf.js
2015-12-20 19:24:41 +01:00
Daniel Schadt
fcfc09f541
Revoke "LocalContentCanAccess*Urls"
...
Since we embed the content of the PDF directly, we no longer need the
permissions for pdf.js.
2015-12-20 19:24:41 +01:00
Daniel Schadt
ea4d9e884e
pdfjs: Remove debug output file
2015-12-20 19:24:41 +01:00
Daniel Schadt
5e0090d5b8
pdfjs: Use abosolute URLs
...
That allows us to use the "original" page URL when displaying with
pdf.js, which means yanking the URL etc works as intended.
2015-12-20 19:24:41 +01:00
Daniel Schadt
0ee13392e1
Basic pdfjs support
...
Working, but not very well.
Todo:
- remove pdf_file.html debug file
- set URL correctly
2015-12-20 19:24:41 +01:00
Florian Bruhin
fcf94fd527
Remove various deprecated commands/arguments.
2015-12-20 18:38:29 +01:00
Florian Bruhin
ffc76b2a5c
Fix spelling.
2015-12-20 17:39:36 +01:00
Florian Bruhin
6b89eb43a2
Allow any non-space char in search engine names.
...
Closes #1189 .
2015-12-20 17:22:54 +01:00
Florian Bruhin
5c769d8000
Report stdout/stderr of failed subprocesses.
2015-12-18 21:23:33 +01:00
Florian Bruhin
f787f004af
Fix _BaseUserscriptRunner when env is None.
2015-12-18 20:23:39 +01:00
Florian Bruhin
430b133c41
userscripts: Add docs for _QtFIFOReader attributes.
2015-12-13 13:11:06 +01:00
Florian Bruhin
494d48aac1
userscripts: Make fifo private in _QtFIFOReader.
2015-12-12 00:33:50 +01:00
Florian Bruhin
3a2d031479
userscripts: Move closing of fifo to _QtFIFOReader.
2015-12-12 00:33:25 +01:00
Florian Bruhin
24607fda8b
Mark tabs -> auto-hide as removed as well.
...
tabs -> hide-auto was removed in d8017a04a8
because it was easier to do so compared to transforming it correctly when tabs
-> show was introduced. However, tabs -> auto-hide (the even older version)
wasn't removed, breaking config migration from earlier versions.
Fixes #1171 .
2015-12-11 08:50:26 +01:00
Florian Bruhin
10dd1b50b9
Split ConfigManager.read from constructor.
2015-12-11 08:50:26 +01:00
dylan araps
1bc8d10ac7
Added config option to change tab title alignment
2015-12-07 19:43:43 +11:00
Florian Bruhin
c319b524bf
Merge branch 'master' of https://github.com/jcorentin/qutebrowser into jcorentin-master
2015-12-04 18:32:46 +01:00
Corentin Jule
d8d873f044
Fix typo for Pep257
2015-12-04 00:28:58 +01:00
Daniel Schadt
5acc982b44
Clean up mhtml doc and use email.message.Message
...
MIMEMultipart is not needed for the attachements, a simple Message is
enough.
Also fix the README markup and the _start_download docstring.
2015-12-03 22:51:46 +01:00
Corentin Jule
1941af8add
Fix TypeError on ConfigManager.remove_option
2015-12-03 20:48:50 +01:00
Florian Bruhin
7df01440a3
pylint: Remove unsubscriptable-object workaround.
...
https://bitbucket.org/logilab/pylint/issues/685/ was fixed in pylint 1.5.1.
2015-12-02 17:55:46 +01:00
Florian Bruhin
d418f7f9fa
Merge branch 'caret_mode_windows_osx' of https://github.com/artur-shaik/qutebrowser into artur-shaik-caret_mode_windows_osx
2015-12-02 06:22:27 +01:00
Florian Bruhin
eeadeb400c
Style fix.
2015-12-02 06:20:41 +01:00
Panagiotis Ktistakis
de3460da3e
Wrap tabs on :tab-move +/- if tabs->wrap is true.
2015-12-02 03:17:54 +02:00
Florian Bruhin
eff0e4c7cc
pylint: Enable useless-suppression globally.
...
We deactivate it locally where needed, i.e. where we are sure it's some
platform-specific thing.
2015-12-01 23:01:09 +01:00
Florian Bruhin
ad72b26b1a
Add comment why abstract-method is ignored.
2015-12-01 22:16:23 +01:00
Florian Bruhin
150a83d8f4
pylint: Remove unneeded supressions.
2015-12-01 22:03:58 +01:00
Florian Bruhin
a156d51844
Don't use for-else when returning.
2015-12-01 21:56:38 +01:00
Florian Bruhin
31265b80b6
pylint: Add WORKAROUND to some comments.
2015-12-01 21:56:38 +01:00
Tomasz Kramkowski
c575435782
misc/editor: Fix tempfile deleted on error / editor crash
...
This patch attempts to fix an issue where an error occuring in
misc/guiprocess or the editor process crashing would delete the
temporary file thus making it impossible to recover changes not commited
to the form field from the editor.
2015-12-01 20:22:05 +00:00
Artur Shaik
c9d47ae92a
More win32
workarounds
2015-12-01 16:53:07 +06:00
Artur Shaik
25545617a0
Try workaround for win32
platform.
2015-12-01 16:19:13 +06:00
Artur Shaik
3a5ce22eac
Remove unnecessary actions in block jumps.
2015-12-01 13:17:28 +06:00
Florian Bruhin
8be04e4f6c
pylint: Disable non-callable in SslError.
...
This wasn't hashable (and thus __hash__ wasn't callable) with Qt < 5.4.
2015-12-01 07:50:08 +01:00
Florian Bruhin
6f9b02741a
Switch from map() to list comprehensions.
2015-12-01 07:16:32 +01:00
Artur Shaik
d00f999dcf
move_to_end_of_prev_block
without unnecessary command.
2015-11-30 22:27:24 +06:00
Florian Bruhin
5f13fd2ece
Merge branch 'log-javascript-console' of https://github.com/flv0/qutebrowser into flv0-log-javascript-console
2015-11-30 08:08:31 +01:00
Florian Bruhin
f93785a0be
Merge branch 'conf-remove-special' of https://github.com/flv0/qutebrowser into flv0-conf-remove-special
2015-11-30 07:42:04 +01:00
Florian Bruhin
6e392f0f09
Add workarounds for pylint/astroid update.
2015-11-30 07:16:12 +01:00
Florian Bruhin
27d0c004e2
Don't reuse variable in compact_text.
2015-11-30 07:10:39 +01:00
Florian Bruhin
288bf1524e
Fix some unidiomatic comparisons.
2015-11-30 07:10:21 +01:00
Florian Bruhin
e227712e21
Don't reuse DocstringParser attribute.
2015-11-30 07:09:40 +01:00
Florian Bruhin
7e6be517e3
Simplify indicator_width code.
2015-11-30 07:09:02 +01:00
Florian Bruhin
307fe6b109
Avoid shadowing 'model'.
2015-11-30 07:03:49 +01:00
Florian Bruhin
a4f47150b4
Simplify unneeded if.
2015-11-30 07:00:51 +01:00
Patric Schmitz
a8b808819a
update log-javascript-console option documentation
2015-11-29 19:24:09 +01:00
Patric Schmitz
b9aa40ea74
remove config types special variable
2015-11-29 18:53:37 +01:00
Patric Schmitz
98a454a428
log-javascript-console -> [none, debug, info]
2015-11-29 18:37:11 +01:00
Florian Bruhin
736fd7d45e
Use os.path.join for bookmarks/urls path.
...
This should fix the tests on Windows which failed because they matched against
a message containing \.
2015-11-29 00:59:18 +01:00
Florian Bruhin
6a46aea934
Fix tests for basedir logging.
...
f5febc4
broke various tests which called standarddir.init() without a valid
basedir.
2015-11-29 00:35:18 +01:00
Florian Bruhin
f5febc4807
Log basedir and save it in QuteProcess for tests.
2015-11-28 23:35:32 +01:00
Florian Bruhin
e26c499bd6
lineparser: Log after saving is done.
...
This will make end to end tests easier as we can easily wait until saving is
done.
2015-11-28 23:35:04 +01:00
Florian Bruhin
c236e70920
Merge branch 'log-javascript-console' of https://github.com/flv0/qutebrowser into flv0-log-javascript-console
2015-11-28 21:12:25 +01:00
Florian Bruhin
8cf6ace0e7
Ignore deleted windows when saving session.
...
This hopefully helps with a crash on Windows which happens from time to time
during some multi-window tabs.feature tests:
Traceback (most recent call last):
File "...\mainwindow\mainwindow.py", line 446, in closeEvent
self._do_close()
File "...\mainwindow\mainwindow.py", line 405, in _do_close
objreg.get('session-manager').save_last_window_session()
File "...\misc\sessions.py", line 247, in save_last_window_session
self._last_window_session = self._save_all()
File "...\misc\sessions.py", line 183, in _save_all
win_data['geometry'] = bytes(main_window.saveGeometry())
RuntimeError: wrapped C/C++ object of type MainWindow has been deleted
2015-11-28 20:30:41 +01:00
Patric Schmitz
03ba38578e
set valid_values after __init__ consistently, move type validation out of class into pytest
2015-11-28 18:29:51 +01:00
Patric Schmitz
fdde05569c
remove redundant __init__ and rely on base class
2015-11-28 18:29:51 +01:00
Patric Schmitz
c322130dc0
style changes
2015-11-28 18:29:51 +01:00
Patric Schmitz
6f65397dfe
always set valid_values in __init__ instead of class scope variable
2015-11-28 18:29:51 +01:00
Patric Schmitz
9b453aaad5
revert config transformation
2015-11-28 18:29:51 +01:00
Patric Schmitz
9aaf5c18c1
set valid_values in __init__ methods, except for BaseType s.t. variable is shared across derived class scopes
2015-11-28 18:29:51 +01:00
Patric Schmitz
55edd9cda7
add valid_values = None to config basetype
2015-11-28 18:29:51 +01:00
Patric Schmitz
2867df4c21
revert log-javascript-console changes
2015-11-28 18:29:51 +01:00
Patric Schmitz
6431542eba
fixes to config types, remove unneeded derived __init__ and call base __init__
2015-11-28 18:29:51 +01:00
Patric Schmitz
2a705e2eb6
Make non-specialized config types String. Closes #1103
2015-11-28 18:29:51 +01:00
Patric Schmitz
75f9f2af8d
get rid of redundant option description
2015-11-28 18:29:51 +01:00
Patric Schmitz
ff6d3e05a6
log-javascript-console now String option: none, debug, info
...
Make BaseType.valid_values per-instance variable
2015-11-28 18:29:51 +01:00
Florian Bruhin
b79049261e
Delay :yank notification until message was yanked.
...
This should make yankpaste tests more reliable.
2015-11-27 18:32:17 +01:00
Florian Bruhin
23068e9679
Don't log yanked test with :yank-selected.
...
It makes our tests fail (invalid log line) and is probably not needed.
2015-11-26 21:23:11 +01:00
Florian Bruhin
8e7a76280b
Use cmdutils.check_exclusive for :tab-clone.
2015-11-26 20:11:53 +01:00
Florian Bruhin
7f5e07d7cc
bdd: Add some tests for :tab-move.
2015-11-26 18:37:47 +01:00
Florian Bruhin
f56e7b1220
Simplify :tab-move code.
2015-11-26 17:44:34 +01:00
Florian Bruhin
987ee59f58
:tab-move: Fix tab index shown in error message.
2015-11-26 16:37:54 +01:00
Florian Bruhin
5a95cfdc7a
Change CommandError to ValueError for :tab-move.
...
This should never happen.
2015-11-26 16:37:29 +01:00
Daniel Schadt
d082c248a8
Disallow empty values in url-incdec-segments
2015-11-25 19:35:37 +01:00
Florian Bruhin
951c2e8eb6
Fix qflags_key comparison.
2015-11-25 18:54:03 +01:00
Florian Bruhin
a6045ab551
Handle invalid select-on-remove case.
2015-11-25 18:47:36 +01:00
Florian Bruhin
73e9fd1118
Handle BOM (\ufeff) for webelem.javascript_escape.
2015-11-25 18:14:52 +01:00
Florian Bruhin
24a71e5c2e
Fix webelem.javascript_escape with U+2028/U+2029.
2015-11-25 10:32:22 +01:00
Florian Bruhin
027a10c04b
bdd: Add some tests for :navigate.
2015-11-24 21:32:45 +01:00
Florian Bruhin
8faf4717e5
Make :debug-console toggle the console.
2015-11-24 18:32:18 +01:00
Florian Bruhin
35de87f973
Expand ~ with :dump-page.
2015-11-24 18:04:10 +01:00
Florian Bruhin
b37dac7bfa
Handle errors in :dump-page.
2015-11-24 18:03:39 +01:00
Florian Bruhin
e405492667
Ignore errors when removing temp basedir.
2015-11-24 17:50:39 +01:00
Florian Bruhin
3905884a84
Disable all QWebSettings storage when quitting.
...
This hopefully helps with issues on the Windows buildbot:
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
File "C:\Users\florian\buildbot\slave\win8\build\.tox\py34\lib\shutil.py", line 371, in _rmtree_unsafe
os.unlink(fullname)
PermissionError: [WinError 32] The process cannot access the file because it is being used by another process: 'C:\\Users\\florian\\AppData\\Local\\Temp\\qutebrowser-basedir-ixuexfeu\\data\\local-storage\\qrc__0.localstorage'
2015-11-24 17:24:14 +01:00
Florian Bruhin
43d7b139e8
Ignore another libpng warning.
...
This happened here:
https://ci.appveyor.com/project/The-Compiler/qutebrowser/build/master-1536/job/k8es4nh719cc27hf
2015-11-24 16:59:35 +01:00
Florian Bruhin
922fdc0526
Fix :fake-key with no focused webview.
2015-11-24 16:28:56 +01:00
Florian Bruhin
75178b0cdc
Log when the focus object changed.
...
This is mainly needed for tests to synchronize things properly.
2015-11-24 15:24:45 +01:00
Florian Bruhin
c73de6ea4d
Change "Added binding ..." logs to vdebug.
2015-11-23 21:41:31 +01:00
Florian Bruhin
b0d4ebe844
Don't log VDEBUG messages with --debug.
...
This reduces the log spam quite a bit, which also makes things easier when
dealing with CI output.
2015-11-23 21:40:11 +01:00
Florian Bruhin
607ca0f478
tests: Wait until page is dumped for header check.
...
If we don't do this, it's possible for the test process to delete the temporary
directory before qutebrowser actually writes the file.
2015-11-23 20:12:52 +01:00
Florian Bruhin
31892b437e
Add :debug-dump-page command.
...
This can probably be merged into :download later, when the mess is cleaned up.
2015-11-23 14:35:46 +01:00
Florian Bruhin
16e1a65448
Merge branch 'download-page' of https://github.com/Kingdread/qutebrowser into Kingdread-download-page
2015-11-23 13:16:16 +01:00
Daniel Schadt
89c9b5959e
Don't ask the user twice for a filename
...
Fixes a bug where the user would be asked twice for a filename when
using :download without a dest-argument.
The problem was that we unconditionally overwrote filename, even if one
was given, thus discarding any "filename-finding-process" that we had
and asking the user again.
2015-11-23 12:32:58 +01:00
Florian Bruhin
efa745b53f
Fix indent.
2015-11-23 11:26:01 +01:00
Florian Bruhin
f4cccdf13f
Merge branch 'patch-1' of https://github.com/larryhynes/qutebrowser into larryhynes-patch-1
2015-11-23 11:23:10 +01:00
Florian Bruhin
ee0627128a
Merge branch 'argparse-usage' of https://github.com/forkbong/qutebrowser into forkbong-argparse-usage
2015-11-23 11:20:49 +01:00
Florian Bruhin
ea06c64ed4
Fix typos.
2015-11-23 11:17:26 +01:00
Panagiotis Ktistakis
f3f0ef9841
Remove unnecessary 'usage:' from argument parser.
2015-11-23 01:10:35 +02:00
larryhynes
706a4e3d39
Change error to warning for text not found on page
2015-11-21 23:47:00 +00:00
Daniel Schadt
c12011c84d
Style fixes
2015-11-21 00:10:49 +01:00
Florian Bruhin
2727f3c2a8
Hide QObject::connect stateChanged warning.
2015-11-20 22:01:21 +01:00
Daniel Schadt
b776aeac84
Use same representation in webview and quteprocess
...
Otherwise the "page loaded" message will not be recognized.
Also use percent-encoding to avoid unicode-related bugs on different
systems.
2015-11-20 19:11:20 +01:00
Florian Bruhin
af875f4b8f
Add a :fake-key command.
...
Closes #556 .
See #551 .
2015-11-20 19:06:06 +01:00
Daniel Schadt
d5bc962046
mhtml: Current index != Current tab_id
2015-11-20 18:15:03 +01:00
Daniel Schadt
b38a3caa4c
Hide dest-old in the documentation of download
2015-11-20 16:34:27 +01:00
Florian Bruhin
1ec03462c8
Add a utils.parse_keystring.
2015-11-20 07:06:16 +01:00
xd1le
b9163c5079
doc: Document <unbound> in keys.conf.
...
Closes #1117 .
2015-11-20 00:55:33 +11:00
Florian Bruhin
271cb47f87
Merge branch 'netrc' of https://github.com/Konubinix/qutebrowser into Konubinix-netrc
2015-11-18 20:38:57 +01:00
Florian Bruhin
c7f386cec0
Avoid logging in signal handlers.
...
If we don't do that, we can get this:
--- Logging error ---
Traceback (most recent call last):
File ".../python3.5/logging/__init__.py", line 984, in emit
self.flush()
File ".../python3.5/logging/__init__.py", line 964, in flush
self.stream.flush()
RuntimeError: reentrant call inside <_io.BufferedWriter name='<stderr>'>
Call stack:
[...]
File ".../qutebrowser/app.py", line 122, in qt_mainloop
return qApp.exec_()
File ".../qutebrowser/utils/objreg.py", line 118, in on_destroyed
log.destroy.debug("schedule removal: {}".format(name))
File ".../python3.5/logging/__init__.py", line 1267, in debug
self._log(DEBUG, msg, args, **kwargs)
File ".../python3.5/logging/__init__.py", line 1415, in _log
self.handle(record)
File ".../python3.5/logging/__init__.py", line 1425, in handle
self.callHandlers(record)
File ".../python3.5/logging/__init__.py", line 1487, in callHandlers
hdlr.handle(record)
File ".../python3.5/logging/__init__.py", line 855, in handle
self.emit(record)
File ".../python3.5/logging/__init__.py", line 984, in emit
self.flush()
File ".../python3.5/logging/__init__.py", line 964, in flush
self.stream.flush()
File ".../qutebrowser/misc/crashsignal.py", line 365, in interrupt
log.destroy.info("Do the same again to forcefully quit.")
Message: 'Do the same again to forcefully quit.'
Arguments: ()
2015-11-18 20:21:23 +01:00
Daniel Schadt
3438a45b19
Merge branch 'master' into download-page
2015-11-18 19:27:26 +01:00
Samuel Loury
0298fcc841
Use credentials from netrc when available
2015-11-18 16:44:45 +01:00
Florian Bruhin
f20ffca540
Merge branch 'issue923' of https://github.com/lamarpavel/qutebrowser into lamarpavel-issue923
2015-11-17 19:43:35 +01:00
Florian Bruhin
726525b26a
bdd: Add some more tests for scrolling with floats.
2015-11-17 06:57:33 +01:00
Florian Bruhin
40e2258ef3
Don't accept floats for :scroll-px.
2015-11-17 06:57:13 +01:00
Florian Bruhin
bbaab24ce8
Fix lint.
2015-11-16 20:24:27 +01:00
Florian Bruhin
b68adf1245
Merge _scroll_percent into scroll_perc.
2015-11-16 19:05:05 +01:00
Florian Bruhin
a4d15b550e
Abort :back/:forward at beginning/end of history.
2015-11-16 19:03:07 +01:00
Florian Bruhin
eeab4d41ba
Make it possible to pass a count via command name.
...
This is only used for tests so far and not intended for general usage (and thus
undocumented).
2015-11-15 19:55:01 +01:00
Florian Bruhin
7de206e350
Fix :scroll-perc 0/100 0.
2015-11-15 16:38:56 +01:00
Lamar Pavel
46d335cdee
Update list of user agents with new script.
2015-11-14 16:06:45 +01:00
Lamar Pavel
d745819715
Improve script to print entries grouped by browser
...
The ua_fetch.py has been re-written entirely to find specific entries for
each browser based on diversity rather than sole popularity. The output
is now formatted to print the entries for each browser grouped together.
2015-11-14 15:57:24 +01:00
Florian Bruhin
1da7996c3b
Style fixes.
2015-11-13 22:27:41 +01:00
Daniel Schadt
aef26e7779
mhtml: Recognize more files as css
2015-11-12 20:11:36 +01:00
Daniel Schadt
30e2afb59d
mhtml: reduce test flakiness
...
Waiting for "All assets downloaded" may lead to race conditions when
the output file is read before qute wrote it, so the test fails.
2015-11-12 13:17:10 +01:00
Daniel Schadt
c759bf7a2f
Move common filename-ask-code to a function
...
This should reduce code/logic-duplication regarding asking for download
filenames.
2015-11-12 00:12:51 +01:00
Daniel Schadt
18da73227b
Don't shadow built-in "dir"
2015-11-11 21:20:04 +01:00
Daniel Schadt
62b0c4d178
Merge branch 'download-page-tests' of https://github.com/The-Compiler/qutebrowser into download-page
2015-11-11 21:03:36 +01:00
Daniel Schadt
4e3cd8b9e8
Don't prompt if not storage->prompt-download-dir
2015-11-11 20:39:35 +01:00
Daniel Schadt
0f8ec73c55
mhtml: also check dir before starting the download
...
Otherwise the downloads will be useless anyway.
2015-11-11 20:05:42 +01:00
Daniel Schadt
43c3a38938
mhtml: Don't crash if output dir doesn't exist
2015-11-11 20:00:20 +01:00
Florian Bruhin
7cddd52b2d
Merge branch 'download-page' of https://github.com/Kingdread/qutebrowser into Kingdread-download-page
2015-11-10 22:39:07 +01:00
Florian Bruhin
d99f9a3a20
Improve :set error messages.
2015-11-10 22:09:36 +01:00
Florian Bruhin
54e2cea460
Fix some corner cases with :set.
2015-11-10 21:27:42 +01:00
Florian Bruhin
7701bf602a
Add --append argument to :set-cmd-text.
2015-11-10 19:21:54 +01:00
Florian Bruhin
250f0e7410
Merge branch 'test-browser-cache-more' of https://github.com/lamarpavel/qutebrowser into lamarpavel-test-browser-cache-more
2015-11-10 18:57:28 +01:00
Florian Bruhin
374b448e51
Get rid of unnecessary file.readline() calls.
2015-11-10 18:44:42 +01:00
Daniel
a5ee39c35e
Fix PEP 8
2015-11-10 09:45:01 +01:00
Daniel
c0535727ef
Only download elements with rel={stylesheet,icon}
...
Websites may set the rel attribute to whatever they want, so we just
care about stylesheets and icons and not the other stuff like wss
links (looking at you, GitHub), RSS-feeds, ...
2015-11-09 22:57:31 +01:00
Florian Bruhin
2fc1612bd4
Fix removing of automatic downloads w/ -1 timeout.
...
With ui -> remove-finished-downloads set to -1, when a download was started
with auto_remove=True (like with :adblock-update), there was a QTimer set up
with timeout -1, which causes this instead of doing something sane:
WARNING: QTimer::singleShot: Timers cannot have negative timeouts
2015-11-09 22:45:51 +01:00
Florian Bruhin
566f94111c
Don't warn if element vanished on mouse release.
...
This happens somewhat reliably on Ubuntu Trusty with the hint test, and more
reliably on Travis.
2015-11-09 22:12:24 +01:00
Florian Bruhin
6579866abe
Quote weird Qt functions for logging.
2015-11-09 19:55:05 +01:00
Florian Bruhin
65648da1ad
Fix #889 during a webpage shutdown.
...
If we're in the middle of closing a WebPage, the webview will still be
registered, but already deleted by Qt - so we get a RuntimeError/TypeError
there.
2015-11-09 18:22:35 +01:00
Florian Bruhin
f3d76b5af6
Fix :follow-hint with an invalid keystring.
2015-11-09 18:20:23 +01:00
Florian Bruhin
35c36725f2
Disallow :follow-hint outside of hint mode.
...
Fixes #1105 .
2015-11-09 18:20:23 +01:00
Daniel
f79722975f
Fix _download_dir reference
2015-11-09 17:14:04 +01:00
Daniel
a1bc020fec
mhtml: Sanitize default filename suggestion
2015-11-09 17:01:08 +01:00
Daniel
4f01382c64
mhtml: Ignore non-http(s) assets
2015-11-09 17:01:08 +01:00
Daniel
71533b3456
mhtml: Add comments describing the hostblock check
2015-11-09 17:01:08 +01:00
Daniel
9694b3b548
downloads: Remove safety check in on_reply_error
...
Probably not needed after the last commit.
2015-11-09 17:01:08 +01:00
Daniel
252dc9a8bd
mhtml: Don't attempt to download hostblocked urls
2015-11-09 17:01:08 +01:00
Daniel
f34161423c
Fix "line too long"
2015-11-09 17:01:08 +01:00
Daniel
a780325a3a
Allow directories to be entered as destination
...
The filename will then default to 'page title.mht'
2015-11-09 17:01:08 +01:00
Daniel
ae8a9b8798
Handle non-ASCII in headers/url better
2015-11-09 17:01:08 +01:00
Daniel
8bb887ddab
Specify window and tab instead of 'current'
2015-11-09 17:01:08 +01:00
Daniel
a1e0ccb787
Fix spelling/style.
2015-11-09 17:01:08 +01:00
Daniel
3a2bb2d348
Add cssutils to README and utils/version.py
2015-11-09 17:01:08 +01:00
Daniel
12a9deb9bc
Fix lints
2015-11-09 17:01:08 +01:00
Daniel
d1f8d29c20
Add --mhtml flag to :download
...
And remove :download-whole command.
2015-11-09 17:01:08 +01:00
Daniel
8cf0af004f
Deprecate :download [url] [dest], add --dest param
...
:download --dest [dest] [url] is the new syntax.
2015-11-09 17:00:46 +01:00
Daniel
b17d74452f
Expand $HOME before checking if file exists
...
Otherwise we might accidentally overwrite a file.
2015-11-09 16:59:16 +01:00
Daniel
919365dfa1
Remove dead code mhtml.py:MHTMLWriter:remove_file
2015-11-09 16:59:16 +01:00
Daniel
1902e4858f
Also catch re.error on cssutils import
...
cssutils 1.0 and earlier are broken on Python 3.5 due to a bad regex
escape.
2015-11-09 16:59:16 +01:00
Daniel
957d68c477
Revert "Remove cssutils from mhtml.py"
...
This reverts commit 22a0f0952704d284846ab2572790d99a85515c57.
2015-11-09 16:59:16 +01:00
Daniel
ce1a99cc7c
Remove cssutils from mhtml.py
2015-11-09 16:59:16 +01:00
Daniel
706b8c6600
Shorten line
2015-11-09 16:59:16 +01:00
Daniel
6601df14a3
mhtml: ask before overwriting dest
2015-11-09 16:59:16 +01:00
Daniel
420c087373
use cssutils
2015-11-09 16:59:16 +01:00
Daniel
749b1c02cc
Style changes for mhtml and test_mhtml
2015-11-09 16:59:16 +01:00
Daniel
b05a0d191d
Fix module path in test_mhtml
...
Also fix docstring for _get_css_imports
2015-11-09 16:59:16 +01:00
Daniel
2eeace1c2c
Move misc.mhtml to browser.mhtml
2015-11-09 16:59:16 +01:00
Daniel
a092ef1fe6
String quote style changes
...
"" for user facing strings
'' for internal strings
except when quotes appear inside a string, to avoid escaping them
2015-11-09 16:59:16 +01:00
Daniel
366916a8bf
Use more specific selectors to filter webelements
2015-11-09 16:59:16 +01:00
Daniel
bf90c8c06b
Add tests for mhtml
...
This also makes the output of MHTMLWriter deterministic, by
1) Setting the boundary at object creation, allowing uuid.uuid4 to be
monkey patched
2) Outputting the files in sorted order (sorted by location), as python
dicts are unordered by default.
2015-11-09 16:59:16 +01:00
Daniel
5fcbc839bb
Allow many spaces and tabs after @import in CSS
2015-11-09 16:59:16 +01:00
Daniel
afa2f339e6
mhtm: use downloads logger instead of misc
2015-11-09 16:59:16 +01:00
Daniel
cb477a2623
Decode headers with ISO-8859-1 instead of ASCII
2015-11-09 16:59:16 +01:00
Daniel
a63aed5965
Use email.encoders instead of own encoder function
2015-11-09 16:59:16 +01:00
Daniel
ba81332d45
_get_css_imports now works on strings only
...
This also means that it returns strings, making the calls to .decode
unneeded.
2015-11-09 16:59:16 +01:00
Daniel
d3a21927f2
Remove default values in MHTMLWriter.__init__
2015-11-09 16:59:16 +01:00
Daniel
e5bfb9884b
Use WebElementWrapper instead of QWebElement
...
* also don't derive from object
* also set the _used flag on _Downloader
2015-11-09 16:59:16 +01:00
Daniel
a3cc71e317
Don't from-import functions/classes
2015-11-09 16:59:16 +01:00
Daniel
83aee4fad5
Rename on_meta_data_change to on_meta_data_changed
2015-11-09 16:59:16 +01:00
Daniel
8593144fa7
Make _path_suggestion public
2015-11-09 16:59:16 +01:00
Daniel
f58f6f24ee
Use email.mime instead of manually writing the msg
2015-11-09 16:59:16 +01:00
Daniel
64c74bde90
Fix pylint for _NoCloseBytesIO
2015-11-09 16:59:16 +01:00
Daniel
05cc4b9650
Change boundary
...
This version contains a sequence that is illegal in quoted-printable
and thus safe from accidentally appearing in a website.
2015-11-09 16:59:16 +01:00
Daniel
8eafa1a105
Also scan CSS in <style> tags and inline CSS
...
As both may contain external links too (@import, url(...))
2015-11-09 16:59:16 +01:00
Daniel
02c1fa1232
Save mhtml if no assets need to be downloaded
2015-11-09 16:59:16 +01:00
Daniel
991b6d4fc9
Remove urljoin import
2015-11-09 16:59:16 +01:00
Daniel
5c6b715720
Use QUrl.resolved instead of urlparse.urljoin
2015-11-09 16:59:16 +01:00
Daniel
11ed60620a
Also load assets referenced in css files
...
Things like "@import stylesheet.css" and "url(...)".
2015-11-09 16:59:16 +01:00
Daniel
6b086d159d
Ask for filename when none is given
2015-11-09 16:59:16 +01:00
Daniel
679ab65b5f
Message on finished download
2015-11-09 16:59:16 +01:00
Daniel
fd7820ea16
occurs -> occurred
2015-11-09 16:59:16 +01:00
Daniel
111feebf89
Refactor start_download to a class
2015-11-09 16:59:16 +01:00
Daniel
49a32f0041
First round of lint fixes
2015-11-09 16:59:16 +01:00
Daniel
024ae52366
Replaced quote-printable with own function
...
The original one had some inconsistencies that lead to bugs.
The content-type of the root document now also contains the charset.
2015-11-09 16:59:16 +01:00
Daniel
930871be01
First working version
...
The files can be opened with qutebrowser
Problems still with Umlauts in the encoded file.
2015-11-09 16:59:16 +01:00
Daniel
fbe5386e56
Initial version of website downloader
...
Saving websites as MHTML via :download-whole
Still needs some cleanup and a "ask for save path".
2015-11-09 16:59:16 +01:00
Florian Bruhin
b59a56921e
Fix crashes with downloads in a closed tab.
...
When a download was redirected or failed after a tab was closed, there was a
KeyError in the object registry.
Fixes #889 . This is a regression introduced in
976f758da1
/ #731 .
2015-11-09 07:46:22 +01:00
Florian Bruhin
9dfe84c197
Accept longer URL in WebView repr before eliding.
...
This broke bdd tests because … was inserted in the log.
2015-11-09 07:36:10 +01:00
Florian Bruhin
9cfd96fcef
Make :follow-hint take a keystring.
2015-11-09 07:35:56 +01:00
Florian Bruhin
c1c5b0f2b4
Fix prompt for download directory when turned off.
2015-11-09 07:35:03 +01:00
Florian Bruhin
95483f73d8
Add some assertions to DownloadItem.retry.
2015-11-09 07:34:49 +01:00
Florian Bruhin
612174ada0
Add a :download-retry command.
...
Closes #1097 .
2015-11-09 07:17:54 +01:00
Florian Bruhin
da88908815
Fix deprecation warning when clearing downloads.
2015-11-06 07:02:17 +01:00
Florian Bruhin
3fcc27636a
Improve documentation for general -> editor.
2015-11-06 07:02:17 +01:00
Florian Bruhin
939e95b344
Add missing decorator for qute:version.
2015-11-04 17:45:12 +01:00
Florian Bruhin
3525659b90
Fix pep8 issues.
2015-11-04 17:41:33 +01:00
Florian Bruhin
4e8cf70c10
Merge branch 'master' of https://github.com/NoctuaNivalis/qutebrowser into NoctuaNivalis-master
2015-11-04 17:19:00 +01:00
Felix Van der Jeugt
8354894838
rename the add_handler function everywhere
2015-11-04 09:49:46 +01:00
Florian Bruhin
6c20190473
Merge branch 'master' of https://github.com/forkbong/qutebrowser into forkbong-master
2015-11-04 07:12:32 +01:00
Florian Bruhin
702842c977
configtypes: Handle max. recursion depth for Regex.
2015-11-04 07:02:23 +01:00
Panagiotis Ktistakis
782f09488a
Deprecate :download-remove --all.
...
:download-clear should be used instead.
2015-11-04 01:06:39 +02:00
Panagiotis Ktistakis
dc06787f83
Make key config migration for clearing downloads.
2015-11-04 01:01:27 +02:00
Felix Van der Jeugt
896ac0a7e9
fix the comments on style/typos
2015-11-03 23:15:07 +01:00
Felix Van der Jeugt
84c498b638
use global variable in place of class variable
2015-11-03 23:12:38 +01:00
Felix Van der Jeugt
0233423d9a
using a class method is cleaner
2015-11-03 22:54:59 +01:00
Felix Van der Jeugt
a923572341
replace global constant with class variable and decorators
2015-11-03 22:54:59 +01:00
Florian Bruhin
85608a8b8d
Make :scroll error message deterministic.
2015-11-03 22:36:08 +01:00
Panagiotis Ktistakis
7dadd97f01
Implement :download-clear command.
...
Fixes #1013 .
2015-11-03 20:27:02 +02:00
Florian Bruhin
d9af27670b
Transform remove-finished-downloads=true to 1s.
...
2s seems rather long.
2015-11-02 17:58:08 +01:00
Florian Bruhin
0fb2778e4b
Merge branch 'master' of https://github.com/skinnay/qutebrowser into skinnay-master
2015-11-02 17:55:40 +01:00
Florian Bruhin
0d67cff5cb
Merge branch 'bdd'
...
Conflicts:
tests/test_conftest.py
tox.ini
2015-11-02 06:36:30 +01:00
Florian Bruhin
4451165a27
Change IPC warnings to debug.
...
This seems to show up on Ubuntu Trusty (with older Qt) as well...
2015-11-01 23:11:42 +01:00
Florian Bruhin
e88e9a66da
Fix deleting of --temp-basedir on Windows.
...
Before it couldn't get deleted because Qt still kept the icon database open in
some way.
By clearing it when shutting down, this works correctly.
Fixes #1017 .
2015-11-01 22:47:58 +01:00
Lamar Pavel
baa3bd18a0
Fix indentation
2015-11-01 20:12:57 +01:00
Lamar Pavel
37d37148b7
Add pragma comment
2015-11-01 19:49:20 +01:00
skinnay
11e5774f46
Changed _get_value_transformer function to take a dictionary mapping old
...
values to new values as input.
Added entry for changing remove-finished-downloads setting to new int
value.
2015-10-30 19:37:43 -04:00
Florian Bruhin
468b2c4ade
Merge branch 'test-browser-cache' of https://github.com/lamarpavel/qutebrowser into lamarpavel-test-browser-cache
2015-10-30 18:54:24 +01:00
skinnay
6125e51de3
removed whitespace
2015-10-29 14:54:54 -04:00
skinnay
5a34fdfd0c
Changed the functionality of "remove-finished-downloads" setting.
...
Instead of being a boolean value indicating whether or not to instantly remove
downloads when they finish, it's now an integer value representing the
number of milliseconds to wait before removing downloads when they
finish. The default value, -1, means that the downloads will not be
removed when they finished. This is the same behavior as the previous
default value of false.
2015-10-29 13:44:28 -04:00
Jonas Schürmann
a4aacde88f
Undo: Fix issues with url comparison
2015-10-29 09:36:42 +01:00
Jonas Schürmann
618d9ceabf
Fix PEP 257 violation
2015-10-29 00:52:44 +01:00
Jonas Schürmann
ebe9835e5a
Remove unused tab on undo
2015-10-29 00:22:54 +01:00
Jonas Schürmann
fe32b349a5
Use duckduckgo.com instead of www.duckduckgo.com
2015-10-27 20:31:10 +01:00
Florian Bruhin
381d857f2c
Revert "Add workarounds for issues with pylint tip."
...
This reverts commit 1d2683993e
.
This causes a bad-option-value issue with the current pylint.
2015-10-26 22:05:21 +01:00
Florian Bruhin
1d2683993e
Add workarounds for issues with pylint tip.
2015-10-26 21:20:11 +01:00
Florian Bruhin
66b337c2b1
Add missing superclass init calls.
2015-10-26 21:07:08 +01:00
Florian Bruhin
68024ba6bd
Merge branch 'flexible-hint-filtering' of https://github.com/jcpetkovich/qutebrowser into jcpetkovich-flexible-hint-filtering
2015-10-26 06:59:56 +01:00
Florian Bruhin
883febe243
Return a QColor for qtutils.interpolate_color.
...
This broke the tests for older PyQt versions because the test had a
test_utils.Color(test_utils.Color(...)) object (double-wrapped), and the
comparisons failed there for some reason.
2015-10-26 06:45:36 +01:00
Florian Bruhin
34cc2870f4
Fix indents in configdata.py.
2015-10-26 06:23:07 +01:00
Jean-Christophe Petkovich
589e8e9d05
Flexible Link Hint Filtering
...
I think it makes more sense to filter for any text within a link rather
than just the text at the beginning. I've been playing around with this
a little and I like it a lot better.
When using numbers as link hints, It would be awesome if the link hint
strings themselves could also be updated based on how many links are
left, but I'm still figuring out how to do this.
What do you think?
2015-10-25 21:17:48 -04:00
Florian Bruhin
9b3987febb
Add some completions for hints -> chars.
2015-10-25 21:22:19 +01:00
Florian Bruhin
bb5e5137cd
configtypes: Allow completions for String.
2015-10-25 21:18:06 +01:00
Florian Bruhin
f614e5b98a
Add none value for colors -> tabs.indicator.system.
2015-10-24 16:01:32 +02:00
Daniel
7a413ad6d5
Remove unneeded functions from TabBar.
...
addTab() and insertTab() are not called and if they were called would
raise an exception (self.set_page_title not defined).
2015-10-23 19:52:56 +02:00
Daniel
8d88dd9d75
Fix crash with small icons
...
Fixes #1015
2015-10-23 19:52:56 +02:00
Lamar Pavel
da800e3fa7
Don't setMaximumCacheSize if there is no cache
2015-10-21 22:31:46 +02:00
Daniel
ef8a681fcc
Add TimestampTemplate config type
...
No more crash when 'completion->timestamp-format' is set to '%'.
Fixes #1039 .
2015-10-21 17:23:39 +02:00
Florian Bruhin
4dd3483aca
Remove unused import.
2015-10-20 22:49:00 +02:00
Florian Bruhin
764914a8b2
Clean up cache.DiskCache.
2015-10-20 22:40:43 +02:00
Lamar Pavel
45f9e61815
Fix pylint error (line too long)
2015-10-20 18:17:12 +02:00
Lamar Pavel
7703fa217b
Add some UAs manually for diversity
...
The automatically fetched list includes popular user-agents but does not
guarantee any kind of diversity, so there are now a few statically
printed UAs from mobile browsers.
2015-10-20 17:28:22 +02:00
Lamar Pavel
6ebb37aa17
Update UA list and add script to fetch UAs
...
The script is based on a gist posted by @averrin and has been modified
to print the output according to the format expected by qutebrowser,
ready to be pasted into configtypes.py.
2015-10-20 02:52:11 +02:00
Florian Bruhin
9f11990efc
Rename scrollbar.padding/scrollbar.width.
2015-10-19 05:15:52 +02:00
Nathan Isom
d326cc050e
correct style string, file modeline.
2015-10-18 14:11:22 -05:00
Nathan Isom
ec3cafc293
resolve merge conflicts and merge branch scrollbar.
2015-10-18 11:42:56 -05:00
Florian Bruhin
82dfec6a18
Merge branch 'templatemagic' of https://github.com/neeasade/qutebrowser into neeasade-templatemagic
2015-10-18 18:20:41 +02:00
Nathan Isom
9b5c0075b9
Move min-height to correctly fix bug, edit colors to match https://github.com/The-Compiler/qutebrowser/pull/1021 .
2015-10-17 19:31:47 -05:00
Florian Bruhin
c8346a11fc
Merge branch 'jinja' of https://github.com/meles5/qutebrowser into meles5-jinja
2015-10-17 19:04:36 +02:00
meles5
2398762e85
Fix tests
2015-10-17 18:29:13 +02:00
meles5
ff4c002096
A few changes
2015-10-17 17:33:05 +02:00
Nathan Isom
6391da4f6f
Forgot font changes.
2015-10-16 12:02:57 -05:00
Nathan Isom
b18549bbed
Remove fontdict wrapper
2015-10-16 11:42:46 -05:00
Florian Bruhin
0400945ac4
Raise exception when a stylesheet is unparsable.
2015-10-16 18:26:34 +02:00
Nathan Isom
869e2d9127
missed one.
2015-10-16 11:18:25 -05:00
Nathan Isom
09b18fbc68
edit colordict to match.
2015-10-16 10:55:17 -05:00
Nathan Isom
2a11adc8ac
initial replace pass.
2015-10-16 10:52:02 -05:00
Nathan Isom
27db1ad891
fix scrollbar not showing up error, change test_get_stylesheet a bit.
2015-10-16 09:56:31 -05:00
Florian Bruhin
743c3b1e26
Fix broken UrlType member.
2015-10-16 06:53:07 +02:00
Nathan Isom
57d8ebfb83
not hardcode width/padding values.
2015-10-15 14:06:16 -05:00
Nathan Isom
19c27a04e5
Add completion scrollbar settings.
2015-10-15 13:18:32 -05:00
Nathan Isom
0e186487f5
Revert "Don't pass config to stylesheets."
...
This reverts commit dc0e8b4626
.
2015-10-15 12:36:24 -05:00
Florian Bruhin
91ce3ed672
Merge branch 'url-color' of https://github.com/neeasade/qutebrowser into neeasade-url-color
2015-10-15 18:32:47 +02:00
meles5
326757917c
Fixed windows support (Windows test couldn't work)
2015-10-15 17:39:31 +02:00
Nathan Isom
6843e9c413
typo in configdata.py.
2015-10-14 13:37:24 -05:00
Nathan Isom
4876bdf7ce
style.
2015-10-14 13:34:41 -05:00
Nathan Isom
e78b00cce2
Fix configdata.py typos, use scheme from url.
2015-10-14 13:22:28 -05:00
Nathan Isom
d7d4c232d0
Initial shot at issue #691
2015-10-14 13:10:24 -05:00
Florian Bruhin
ab099ea6ea
Fix another spelling mistake.
2015-10-14 07:02:50 +02:00
Antoni Boucher
1acd32f697
Fixed issue #1008 .
2015-10-10 11:16:06 -04:00
Florian Bruhin
4f2dbb3a72
Don't show icons when cloning tabs if turned off.
...
Fixes #1007 .
2015-10-10 12:48:45 +02:00
Florian Bruhin
749d7bfc3c
Add backticks to docs.
2015-10-08 10:47:36 +02:00
Peter Michely
bfccb91e42
Changed code and docs according to comments
2015-10-08 10:13:47 +02:00
Peter Michely
10f4798559
Fixed whitespace errors
2015-10-08 01:10:44 +02:00
Peter Michely
6be5c65c36
Fixed issue #943 and changed the docs accordingly
2015-10-07 23:53:21 +02:00
Florian Bruhin
c2ea2aa6d7
Remove unused import.
2015-10-07 22:05:22 +02:00
Florian Bruhin
7db1f65425
ipc: Avoid using QLocalServer.setSocketOptions.
...
This causes problems with AddressInUseError being swallowed.
Fixes #997 .
2015-10-07 21:52:09 +02:00
Jonas Schürmann
1e8170d98b
Fixed lines which were too long
2015-10-06 23:18:04 +02:00
Jonas Schürmann
afc166a13e
Coding style fixes #1002
2015-10-06 22:59:49 +02:00
Jonas Schürmann
45c9768c16
Added --target command line argument #922
...
This argument is used to override the new-instance-open-target config
option.
2015-10-05 21:15:52 +02:00
Florian Bruhin
54557fee20
Fix lint.
2015-10-05 06:53:56 +02:00
Florian Bruhin
17778f1457
Prevent :restart when there's a SyntaxError.
...
Closes #910 .
2015-10-04 23:24:35 +02:00
Florian Bruhin
b6f3b1951e
Remove more dead code.
2015-10-04 22:21:49 +02:00
Florian Bruhin
03754b360a
Release v0.4.1.
2015-10-04 21:14:45 +02:00
Florian Bruhin
005753e83e
Remove some dead code.
...
See #973 .
2015-10-04 20:43:29 +02:00
Florian Bruhin
12a11a5931
Revert "Remove colors -> tabs.bg.bar setting."
...
This reverts commit 801d2ae8e6
.
This is still useful/needed for vertical tab bars.
2015-10-04 17:49:52 +02:00
Florian Bruhin
7ff881c3e3
Merge branch 'incdec-setting' of https://github.com/Kingdread/qutebrowser into Kingdread-incdec-setting
2015-10-04 17:04:40 +02:00
Florian Bruhin
801d2ae8e6
Remove colors -> tabs.bg.bar setting.
...
This isn't needed anymore after the recent tab width fix, as the tabbar color
is invisible now.
2015-10-04 16:32:45 +02:00
Florian Bruhin
fbf6696e2a
Merge branch 'master' of https://github.com/daniel-lawrence-lu/qutebrowser into daniel-lawrence-lu-master
2015-10-04 16:30:17 +02:00
Florian Bruhin
d229e90724
Fix some splelling mistakes.
2015-10-04 15:41:42 +02:00
Daniel Lu
de5308cbbf
removes leftover space in tab bar when the window width is not divisible by the number of tabs
2015-10-02 23:24:44 -04:00
Florian Bruhin
739d2cfffd
Fix displaying of web history if limited to -1.
...
This is a regression introduced in 2aa7e5bb35
.
Fixes #991 .
2015-10-02 22:56:18 +02:00
Daniel
73ba3ddaee
Add all possible combinations to FlagList.complete
2015-10-02 18:53:03 +02:00
Florian Bruhin
7761dd5af4
configtypes: Disallow ValidValues without values.
2015-10-02 11:37:41 +02:00
Florian Bruhin
b42b12b7a5
Fix ipc.py coverage.
2015-10-02 08:17:50 +02:00
Florian Bruhin
454b2348a8
ipc: Actually use CONNECT_TIMEOUT.
2015-10-02 08:11:37 +02:00
Florian Bruhin
ea663f9975
IPC: Handle socket timeout correctly.
...
Hopefully fixes #975 .
2015-10-02 08:11:26 +02:00
Florian Bruhin
afa7a1a9a0
Remove broken margin-left for progress bar.
...
Closes #125 (by obsoleting it).
2015-10-02 08:03:10 +02:00
Florian Bruhin
d6301beb2a
Improve configtypes.Regex tests and docs.
2015-10-01 23:24:27 +02:00
Florian Bruhin
16ac3baf2e
configtypes: Handle invalid escapes in regexes.
2015-10-01 23:11:48 +02:00
Florian Bruhin
e4a216e7cf
configtypes: Refactor regex validation.
2015-10-01 22:29:24 +02:00
Florian Bruhin
8e52e5f2fc
Don't use deprecated logging calls.
2015-10-01 21:39:42 +02:00
Daniel
8228a96180
Stylistic changes, more testing for incdec
2015-10-01 20:57:08 +02:00
Alexey Nabrodov
54d4f4f48b
refactor and test
2015-10-01 15:57:11 +03:00
Alexey Nabrodov
ce9aafdc1b
why????
2015-10-01 14:15:32 +03:00
Alexey Nabrodov
be332fe723
init env vars in crash report
2015-10-01 14:11:35 +03:00
Daniel
4881d81444
Add new configtype: FlagList
...
This class contains validation code shared by ConfirmQuit and
URLSegmentList, that is it checks for duplicate values and compares
each value to valid_values.
2015-10-01 00:40:21 +02:00
Florian Bruhin
ae3497a3a1
Remove unnecessary str().
2015-09-30 21:26:41 +02:00
Florian Bruhin
7fcbbc98f6
Merge branch 'scroll_in_title' of https://github.com/averrin/qutebrowser into averrin-scroll_in_title
2015-09-30 21:16:36 +02:00
Daniel
1bdb012b2c
Add a config option for navigate_incdec
...
Also known as Ctrl-A/Ctrl-X. You can now specify which parts of the URL
should be searched for numbers.
The setting is general->url-incdec-segments and it's a set with valid
values of 'host', 'path', 'query' and 'anchor'.
2015-09-30 19:18:00 +02:00
Florian Bruhin
f972d043c5
Fix StopIteration handling in _init_late_modules.
...
This caused a PendingDeprecationWarning with Python 3.5:
Traceback (most recent call last):
File "/home/florian/proj/qutebrowser/git/qutebrowser/utils/debug.py", line 237, in log_time
yield
File "/home/florian/proj/qutebrowser/git/qutebrowser/app.py", line 433, in _init_late_modules
next(reader)
StopIteration
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/florian/proj/qutebrowser/git/qutebrowser/app.py", line 433, in _init_late_modules
next(reader)
File "/usr/lib64/python3.5/contextlib.py", line 77, in __exit__
self.gen.throw(type, value, traceback)
PendingDeprecationWarning: generator 'log_time' raised StopIteration
2015-09-30 07:32:36 +02:00
neeasade
2e62d24062
Empty osver for linux, adjust test to match this.
2015-09-29 13:59:22 -05:00
neeasade
b5ec476ca6
Fixes #977 with none deprecated call.
2015-09-29 12:56:49 -05:00
Alexey Nabrodov
75d53e2879
and again
2015-09-29 12:19:47 +03:00
Alexey Nabrodov
a98878dd8a
fix unused coords
2015-09-29 12:07:35 +03:00
Florian Bruhin
11961db72c
Add maxlen argument to ErrorNetworkReply.readData.
...
This was missing before, causing a (hidden) exception with Python < 3.5, and
this with 3.5:
TypeError: readData() takes 1 positional argument but 2 were given
During handling of the above exception, another exception occurred:
SystemError: PyEval_EvalFrameEx returned a result with an error set
Fixes #969 .
2015-09-29 08:41:20 +02:00
Florian Bruhin
5db4ed0ed1
Add fallback argument to ConfigManager.get.
...
This is needed for interpolation since this change in Python 3.4:
https://hg.python.org/cpython/rev/267422f7c927
This broke qutebrowser in Debian experimental when updating python from
3.4.3-8 to 3.4.3-9 as they pulled from hg.
Fixes #968 .
2015-09-29 08:22:33 +02:00
Alexey Nabrodov
7cd7b43e7a
fix docs
2015-09-28 19:53:55 +03:00
Alexey Nabrodov
1b6860b748
add scroll_pos to window title && fix signals
2015-09-28 19:43:50 +03:00
meles5
d7dd1b3507
Windows support useless
2015-09-25 18:39:15 +02:00
meles5
fc7488645f
The resource_url() function should now support Windows
2015-09-25 18:21:04 +02:00
Alexey Nabrodov
717298e423
add scroll_pos to title-format
2015-09-25 19:14:52 +03:00
meles5
8bcc0e4b92
filescheme.py & dirbrowser.html updated
2015-09-25 14:49:03 +02:00
meles5
70597d574f
Added resource_url() function and used this function in the error page
2015-09-25 14:31:04 +02:00
Florian Bruhin
5ba7b5cf0f
Fix lint.
2015-09-19 22:03:56 +02:00
Florian Bruhin
f96de5a598
Add config for tab colors for odd/even sel. tabs.
2015-09-19 21:45:57 +02:00
Florian Bruhin
841e8fbbd1
Save search parameters in tabbed_browser.
2015-09-18 07:01:51 +02:00
Florian Bruhin
f62bf099a0
Also re-highlight text when restarting search.
2015-09-18 06:58:05 +02:00
Florian Bruhin
72cddb290b
Cleanups
2015-09-18 06:55:17 +02:00
Martin Tournoij
a80c61e78a
Use a single search term per-window
...
Previously, every tab had its own search term. This sets single search term per
window. using `/hello`, `gt`, and `n` will search for `hello` in the 2nd tab.
This fixes issue #940
2015-09-18 02:18:54 +02:00
Florian Bruhin
d9bad853e7
Merge branch 'wayland-deco' of ssh://tonks/qutebrowser
2015-09-17 21:00:17 +02:00
Florian Bruhin
ee2b9adce4
Move checking if an URL is blocked to adblock.py.
2015-09-17 06:46:27 +02:00
Florian Bruhin
ac27f46170
Add piwik.org to default whitelist.
2015-09-17 06:38:24 +02:00
Florian Bruhin
a589ddab4a
Merge branch 'whitelist-hosts' of https://github.com/Kingdread/qutebrowser into Kingdread-whitelist-hosts
2015-09-17 06:37:44 +02:00
Florian Bruhin
731a86ce33
Merge branch 'acogneau-cookies_tests'
2015-09-16 23:01:26 +02:00
Florian Bruhin
7f573616c8
Remove unused import.
2015-09-16 23:01:14 +02:00
Florian Bruhin
d5baed5e83
Merge branch 'cookies_tests' of https://github.com/acogneau/qutebrowser into acogneau-cookies_tests
2015-09-16 22:58:28 +02:00
Florian Bruhin
0745de647b
Allow debug.log_time to be used as decorator.
2015-09-16 22:50:19 +02:00
Florian Bruhin
545d82a04d
utils.debug: Allow passing logger to log_time.
2015-09-16 22:38:31 +02:00
Florian Bruhin
503e3ce48d
Merge branch 'patch-2' of https://github.com/averrin/qutebrowser into averrin-patch-2
2015-09-16 22:32:21 +02:00
Florian Bruhin
c451fc3883
Merge branch 'bug/web-history-max-items' of https://github.com/antoyo/qutebrowser into antoyo-bug/web-history-max-items
2015-09-16 22:25:45 +02:00
Florian Bruhin
7eca4acb6a
Ignore first QWheelEvent for webview.
...
Hopefully fixes #395 .
2015-09-16 20:07:18 +02:00
Daniel
dd679c6c14
Fix is_whitelisted_domain docstring
2015-09-16 17:16:35 +02:00
Daniel
fc806525a2
Move whitelist host code to networkmanager
...
This means no :adblock-update after modifying the whitelist.
2015-09-16 17:10:03 +02:00
Daniel
523e071a97
Stylistic changes to is_whitelisted_domain
2015-09-16 17:04:19 +02:00
Daniel
ccdb59cce1
Add adblock host whitelisting
...
The config option "content host-blocking-whitelist" may contain comma
separated domains that are exempt from host blocking.
The listed domains may contain the wildcards "*" and "?" to match many
and one character, respectively.
You need to run :adblock-update after modifying the list.
2015-09-16 16:31:17 +02:00
Averrin
3904b7de58
Leave passthrough mode when change tab
2015-09-16 16:44:31 +03:00
Florian Bruhin
9561b7b02c
Reset QT_WAYLAND_DISABLE_WINDOWDECORATION.
2015-09-16 10:23:21 +02:00
Florian Bruhin
f83f4a6a1a
Add setting.
2015-09-16 08:52:51 +02:00
Florian Bruhin
08e1d9a304
hardcoded
2015-09-16 08:42:59 +02:00
Florian Bruhin
9ab14c0384
Fix IPC coverage.
2015-09-16 07:16:07 +02:00
Florian Bruhin
73cb981ebb
Add some more IPC logging.
2015-09-15 23:05:50 +02:00
Florian Bruhin
ff24ba5437
ipc: Fix atime timer interval.
2015-09-15 22:59:53 +02:00
Florian Bruhin
0bbd410016
standarddir: Fix coverage.
2015-09-15 22:31:37 +02:00
Florian Bruhin
cc052a539f
Add standarddir.download() tests.
2015-09-15 22:31:37 +02:00
Florian Bruhin
04ec9c2624
Get rid of standarddir.temp() again.
2015-09-15 22:31:37 +02:00
Florian Bruhin
3bdfa3001c
ipc: Always use standarddir.runtime().
2015-09-15 22:31:37 +02:00
Florian Bruhin
748496e88d
Refactor standarddir.
...
See #941 .
2015-09-15 22:31:37 +02:00
Antoni Boucher
f0a2128499
Fixed style.
2015-09-12 18:01:04 -04:00
Antoni Boucher
2aa7e5bb35
Fixed issue #934 .
2015-09-12 17:48:36 -04:00
Florian Bruhin
09b0877eab
Revert "Refactor standarddir."
...
This reverts commit 330f3f8f13
.
2015-09-11 21:20:31 +02:00
Florian Bruhin
330f3f8f13
Refactor standarddir.
...
See #941 .
2015-09-11 20:05:13 +02:00
Florian Bruhin
e11fcda240
Release v0.4.0.
2015-09-11 18:47:50 +02:00
Florian Bruhin
5fe420efb5
standarddir: Fix TOCTOU issue when creating paths.
...
Fixes #942 .
2015-09-11 18:21:20 +02:00
Florian Bruhin
c4c06467da
Add missing pyqtSlot decorator.
2015-09-11 08:32:37 +02:00
Florian Bruhin
d15cc07ed3
Log executed command for GUIProcess.
...
See #797 .
2015-09-11 06:24:05 +02:00
Florian Bruhin
087e9a4266
Fix ipc on Windows, take 2.
2015-09-10 08:04:02 +02:00
Florian Bruhin
87ccc31cce
ipc: Add some more tests for _atime_timer.
2015-09-10 08:02:19 +02:00
Florian Bruhin
1dba5b0bbd
ipc: Fix _atime_timer shutdown on Windows.
2015-09-10 07:52:26 +02:00
Florian Bruhin
d2bce5dca9
ipc tests: Try to disconnect _atime_timer.
...
For some reason this fails during teardown on OS X!?
File "/Users/buildbot/buildbot/slave/osx/build/qutebrowser/misc/ipc.py", line 357, in update_atime
path = self._server.fullServerName()
File "/usr/local/Cellar/python3/3.4.3/Frameworks/Python.framework/Versions/3.4/lib/python3.4/unittest/mock.py", line 895, in __call__
_mock_self._mock_check_sig(*args, **kwargs)
File "/usr/local/Cellar/python3/3.4.3/Frameworks/Python.framework/Versions/3.4/lib/python3.4/unittest/mock.py", line 107, in checksig
sig.bind(*args, **kwargs)
File "/usr/local/Cellar/python3/3.4.3/Frameworks/Python.framework/Versions/3.4/lib/python3.4/inspect.py", line 2652, in bind
return args[0]._bind(args[1:], kwargs)
File "/usr/local/Cellar/python3/3.4.3/Frameworks/Python.framework/Versions/3.4/lib/python3.4/inspect.py", line 2537, in _bind
param = next(parameters)
File "/Users/buildbot/buildbot/slave/osx/build/.tox/py34/bin/../lib/python3.4/_collections_abc.py", line 512, in __iter__
for key in self._mapping:
File "/Users/buildbot/buildbot/slave/osx/build/.tox/py34/lib/python3.4/collections/__init__.py", line 91, in __iter__
curr = root.next
2015-09-10 07:49:45 +02:00
Florian Bruhin
e6cf76e40c
Fix coverage and lint.
2015-09-10 07:44:45 +02:00
Florian Bruhin
58073fd768
ipc: Update the atime of the socket all 6h.
...
See #888 .
2015-09-10 07:38:11 +02:00
Florian Bruhin
1311e99e7c
Make pep8 shut up.
2015-09-09 23:00:52 +02:00
Florian Bruhin
bcee12853d
Cleanup for ignored log messages.
2015-09-09 22:53:37 +02:00
Florian Bruhin
d217fe09c6
Hide some more lgo messages on OS X.
...
Fixes #931 .
2015-09-09 22:50:43 +02:00
Florian Bruhin
2ca8070e7a
Add workaround for OS X issue.
2015-09-09 20:48:23 +02:00
Florian Bruhin
f7d3070c34
ipc: Fix start when a stale legacy server exists.
2015-09-09 19:39:01 +02:00
Florian Bruhin
b135569d5c
ipc: Add workaround for NameError w/ SocketOptions.
2015-09-09 19:31:52 +02:00
Florian Bruhin
69e735c42e
ipc: Add username to hash instead.
2015-09-09 19:31:52 +02:00
Florian Bruhin
4daa7e6979
Don't add username to FIFO name on Linux.
...
The runtime directory already has a qutebrowser subdir.
2015-09-09 19:31:52 +02:00
Florian Bruhin
3573b57130
Set socket permissions correctly.
2015-09-09 19:31:52 +02:00
Florian Bruhin
78cb0eaf85
More work on #888 (new IPC path).
...
First trying the legacy path and then using the new one works fine now, but the
permissions are still wrong.
2015-09-09 19:31:52 +02:00
Florian Bruhin
74d7997a67
Set application info earlier.
2015-09-09 19:31:52 +02:00
Florian Bruhin
a4bc4ad478
Only log a single message in utils.error.
...
This helps with seeing the full message with logfail.
2015-09-09 19:31:52 +02:00
Florian Bruhin
9d9372c6a8
Add standarddir.temp().
2015-09-09 19:31:52 +02:00
Florian Bruhin
44b1ca5c2f
Fix comment.
2015-09-09 19:31:52 +02:00
Florian Bruhin
d18c33987d
Quick pep8 fix.
...
This is already fixed in the new-ipc-path branch, but let's at least get this
straight in master.
2015-09-09 08:06:56 +02:00
Florian Bruhin
6a0994038e
Start working on #888 (new IPC path).
2015-09-06 19:50:22 +02:00
Florian Bruhin
bfd8faafef
Add a protocol version to IPC.
...
Fixes #909 .
2015-09-06 18:43:24 +02:00
Florian Bruhin
b95fd2c814
Test raw json data for IPC.
2015-09-06 18:06:23 +02:00
Florian Bruhin
e9608a6aea
Add qutebrowser version to IPC data.
...
See #909 .
2015-09-06 18:06:03 +02:00
Florian Bruhin
cc80cfdfd6
Add missing return.
2015-09-06 17:15:13 +02:00
Florian Bruhin
ef9e1bef1b
Improve performance when adding new history item.
...
Fixes #919 .
There were two issues here:
- CompletionWidget didn't delete the old model when setting a new one. This
means filterAcceptsRow was called for models which aren't even used anymore.
- setChild was used instead of appendRow for the BaseCompletionModel, which
caused Qt to call filterAcceptsRow once for every item of the completion
model instead of only once.
2015-09-06 16:59:43 +02:00
Alexander Cogneau
d36c701b07
Fixed comments
2015-09-04 11:44:59 +02:00
Florian Bruhin
9521da3c73
Fix error output with --no-err-windows.
2015-09-04 08:04:18 +02:00
Florian Bruhin
9b1d0af20d
ipc: Simplify exception handling.
2015-09-04 07:16:16 +02:00
Florian Bruhin
ea0cbea1dd
ipc: Use a custom class for exceptions.
2015-09-04 07:12:23 +02:00
Florian Bruhin
2a4cd02704
100% coverage for misc.ipc.
2015-09-04 06:58:46 +02:00
Florian Bruhin
0d0e704b6b
ipc: Reduce logging on Windows.
...
Otherwise the tests fail there...
2015-09-03 23:33:41 +02:00
Florian Bruhin
fab6e2eafc
ipc: Fix exception handling on AddressError.
2015-09-03 23:13:55 +02:00
Florian Bruhin
a6b9d28b96
ipc: Fix sleep time on AddressError.
2015-09-03 23:13:29 +02:00
Florian Bruhin
b40fb4dd43
ipc: Handle None-socket in slots correctly.
2015-09-03 20:48:51 +02:00
Alexander Cogneau
96e3a0b1f1
first cookie tests
2015-09-03 17:24:01 +02:00
Florian Bruhin
ab9c046d54
Adjust default keybinding to clear-keychain on Esc.
...
Fixes #917 .
2015-09-03 11:14:05 +02:00
Florian Bruhin
3a5cd8f3ff
Revert "Remove test_ipc workaround again."
...
This reverts commit f4d2e0746e
.
2015-09-03 06:51:15 +02:00
Florian Bruhin
f4d2e0746e
Remove test_ipc workaround again.
2015-09-03 06:36:33 +02:00
Florian Bruhin
efe40fa7e0
Try different workaround for test_ipc issues.
2015-09-03 06:12:36 +02:00
Florian Bruhin
e0c6a322c6
ipc: Pass socket to send_to_running_instance.
2015-09-02 23:32:06 +02:00
Florian Bruhin
82c647a87d
ipc: Mark on_ready_read cornercase as no-cover.
2015-09-02 23:32:06 +02:00
Florian Bruhin
1953bb8458
ipc: Disconnect on invalid data.
2015-09-02 23:32:06 +02:00
Florian Bruhin
6b4b65e585
ipc: Clarify comment.
2015-09-02 23:32:06 +02:00
Florian Bruhin
cbcd6261b1
ipc: Add got_invalid_data signal.
2015-09-02 23:32:06 +02:00
Florian Bruhin
0c3ee46fe0
Merge branch 'autoupdate_tests' of https://github.com/acogneau/qutebrowser into acogneau-autoupdate_tests
2015-09-01 08:48:52 +02:00
Florian Bruhin
16e3bad7af
Hide scroll buttons in vertical tab bar.
2015-08-31 22:00:26 +02:00
Alexander Cogneau
e499d8932f
100% misc.autoupdate coverage
2015-08-31 01:10:04 +02:00
Florian Bruhin
79c1867e6c
Don't save cookies when starting in private mode.
...
Whoops... :(
Fixes #903 .
2015-08-30 23:17:48 +02:00
Florian Bruhin
8913c1883e
ipc: Fix missing import.
2015-08-30 22:57:45 +02:00
Florian Bruhin
6dbd669efe
ipc: Disconnect properly from server.
2015-08-30 20:35:50 +02:00
Florian Bruhin
a1cb47936a
IPC: Fix shutdown when self._socket is None.
2015-08-30 20:35:34 +02:00
Florian Bruhin
39e40a7887
ipc: Pass args to send_to_running_instance.
2015-08-29 23:09:44 +02:00
Florian Bruhin
fe493f8565
ipc: Pass socket name to IPCServer.
2015-08-29 21:26:22 +02:00
Florian Bruhin
d5668dd687
ipc: Don't listen in IPCServer.__init__ already.
2015-08-27 23:09:25 +02:00
Florian Bruhin
a7bf0744e0
Move some IPC code from app.py to ipc.py.
2015-08-27 23:04:27 +02:00
Florian Bruhin
ff6e96347b
ipc: Refactor _get_socketname to take better args.
2015-08-27 22:32:29 +02:00
Florian Bruhin
8d7249ebc6
Implement statusbar padding.
2015-08-27 22:12:39 +02:00
Florian Bruhin
4891fe9457
Always expand ~ when starting scripts.
2015-08-27 20:30:41 +02:00
meles5
afddf75bae
Fixed license issue
2015-08-27 13:37:31 +02:00
Florian Bruhin
3e8136e353
Revert changes to cmdhistory.py.
2015-08-27 06:25:42 +02:00
Florian Bruhin
4fb3114af8
Merge branch 'cmdhistory_tests' of git://github.com/acogneau/qutebrowser into acogneau-cmdhistory_tests
2015-08-27 06:18:30 +02:00
Florian Bruhin
f78fb0c027
basekeyparser: Remove dead code.
...
We added this in 836a5e04a5
for the old INI-based
config, but this is not needed anymore as the keys.conf syntax does not allow
this.
2015-08-26 20:31:17 +02:00
Florian Bruhin
4f1c27d230
Merge branch 'basekeyparser_tests' of git://github.com/acogneau/qutebrowser into acogneau-basekeyparser_tests
2015-08-26 17:34:10 +02:00
Alexander Cogneau
3a4069667a
Remove test functions out of class
2015-08-26 12:07:47 +02:00
Alexander Cogneau
a1dff7d535
Final cmdhistory tests
2015-08-26 00:16:18 +02:00
Alexander Cogneau
18d42d1f0a
More tests for cmdhistory
2015-08-25 22:17:42 +02:00
Florian Bruhin
124099ac4c
Fix docstrings.
2015-08-25 21:18:45 +02:00
Florian Bruhin
8171a53478
Merge branch 'progressbar' of git://github.com/t-wissmann/qutebrowser into t-wissmann-progressbar
2015-08-25 21:18:02 +02:00
Alexander Cogneau
26058f4e80
A few cmdhistory tests
2015-08-25 18:46:49 +02:00
Alexander Cogneau
09161faca5
Refactor read_config for easier testing
2015-08-25 12:04:22 +02:00
Thorsten Wißmann
183a5910de
Fix progressbar height to statusbar height.
...
Formerly, the statusbar height changed when the progressbar was visible.
This was caused by the default font-size of the progressbar text (though
invisible). Overriding the minimumSizeHint() method ignores the
font-size of the hidden text and the statusbar height does not change
anymore.
This fixes the first issue of #886 .
2015-08-25 11:14:52 +02:00
Thorsten Wißmann
830136540d
Hide the border of the completionwidget
...
Having a light Qt theme but a dark qutebrowser theme, one can see an
ugly white border around the completion widget which is some relict from
the underlying Qt widget QTreeView. As qutebrowser has its own theming
settings for the mainwindow, it should hide the Qt theme as far as
possible.
2015-08-25 11:01:25 +02:00
Florian Bruhin
1a062035eb
Log IPC server name to debug log.
2015-08-24 19:28:09 +02:00
Alexander Cogneau
af9647221a
Add tests for BaseKeyParser
2015-08-24 18:12:12 +02:00
Florian Bruhin
201f2f67d3
sessions: Logging/error message improvements.
2015-08-24 17:12:20 +02:00
Florian Bruhin
4577659342
Fix crash when there's no completion.
2015-08-24 00:08:55 +02:00
Florian Bruhin
b783069f48
SessionManager: Factor out name handling in save.
2015-08-23 21:54:55 +02:00
Florian Bruhin
2556e2e27b
Remove unused import.
2015-08-23 18:29:02 +02:00
Florian Bruhin
17215822bc
sessions: Use try/except to create base-path.
2015-08-23 18:17:10 +02:00
Florian Bruhin
6d8854bc07
Simplify usage of tabhistory.TabHistoryItem.
2015-08-23 18:16:19 +02:00
Alexander Cogneau
193a8d5242
Add unit tests for KeyInput.BaseKeyParser
2015-08-22 23:26:13 +02:00
Florian Bruhin
fc6c49f57c
Cleanup
2015-08-22 22:59:41 +02:00
Florian Bruhin
2a5d352c7b
Merge branch 'separate_completion_filters' of git://github.com/acogneau/qutebrowser into acogneau-separate_completion_filters
2015-08-22 22:53:35 +02:00
Florian Bruhin
3d5599facb
Move session dir handling out of SessionManager.
2015-08-22 22:53:03 +02:00
Alexander Cogneau
7ed4977d64
Change parent of filter models
2015-08-21 16:56:36 +02:00
Alexander Cogneau
729c10e0a9
Fix PEP issue
2015-08-21 16:23:28 +02:00
Alexander Cogneau
387c84beff
Completion model filters are now per-window (via completer.py)
2015-08-21 16:05:33 +02:00
Florian Bruhin
355074f248
Add a . for spatial-navigation docs.
2015-08-20 11:11:31 +02:00
Florian Bruhin
ed70d636d0
argparser: Check for unknown types.
2015-08-20 07:09:09 +02:00
Florian Bruhin
506917882e
argparser: Style fixes.
2015-08-20 07:08:59 +02:00
Florian Bruhin
a79c139aa4
Revert "style: Check for QColor when setting in ColorDict."
...
This reverts commit 9b82fae6fb
.
2015-08-19 20:48:19 +02:00
Florian Bruhin
1d5cae3146
style: Use a collection.UserDict.
2015-08-19 20:46:02 +02:00
Florian Bruhin
b3395a1a9c
style: Fix logging in ColorDict.
2015-08-19 20:39:31 +02:00
Florian Bruhin
9b82fae6fb
style: Check for QColor when setting in ColorDict.
2015-08-19 20:39:16 +02:00
Florian Bruhin
dc0e8b4626
Don't pass config to stylesheets.
2015-08-19 20:38:19 +02:00
Florian Bruhin
685bbaae6d
100% test coverage for misc.editor.
2015-08-19 09:34:44 +02:00
Florian Bruhin
45e7be4940
Increase default hint size a bit.
...
See #871 .
2015-08-19 06:40:43 +02:00
Florian Bruhin
07c6c40548
Set messagebox = None without Tk in checkpyver.
2015-08-19 06:39:22 +02:00
Florian Bruhin
1a61e53daa
100% test coverage for misc.checkpyver.
2015-08-19 05:58:52 +02:00
Florian Bruhin
e4a0f1972f
tests: Improve MessageMock and use it.
2015-08-18 21:38:18 +02:00
Florian Bruhin
d3d999e041
Show a confirmation when adding bookmarks.
2015-08-18 19:03:46 +02:00
Florian Bruhin
127514f719
Document cmdutils.aliases attribute.
2015-08-17 21:13:23 +02:00
Florian Bruhin
7ce78bb560
networkreply: Add is{Running,Finished} methods.
2015-08-17 07:15:55 +02:00
Florian Bruhin
d94c1736db
Use a proper file:// URL for dirbrowser icons.
2015-08-16 19:04:54 +02:00
Florian Bruhin
97a9255400
Don't import function in filescheme.
2015-08-16 18:52:54 +02:00
Florian Bruhin
fb1cffd158
Merge branch 'feature/directory-browser' of git://github.com/antoyo/qutebrowser into dirbrowser
2015-08-16 18:27:05 +02:00
Florian Bruhin
3bfd049a0a
Don't use inspect.getfullargspec().
...
It seems to be deprecated in Python 3.5.
2015-08-16 15:43:28 +02:00
Antoni Boucher
149ca68853
Renamed setReferer to set_referer.
2015-08-14 08:24:13 -04:00
Florian Bruhin
11502b7942
signalfilter: Remove annoying type check.
2015-08-14 06:43:23 +02:00
Antoni Boucher
abeb7e3390
Fixed issues.
2015-08-13 19:54:23 -04:00
Florian Bruhin
7b3de27b44
Add class="parent" in dirbrowser.html.
2015-08-13 21:56:22 +02:00
Antoni Boucher
814841200a
Fixes issues.
2015-08-12 17:24:01 -04:00
Antoni Boucher
77190554cc
Merge branch 'master' into feature/directory-browser
2015-08-12 16:57:45 -04:00
Florian Bruhin
6f4141956b
Merge branch 'dynamic-column-widths' of git://github.com/acogneau/qutebrowser into acogneau-dynamic-column-widths
2015-08-12 18:20:01 +02:00
Florian Bruhin
25b43d528c
Clear textbase text properly.
2015-08-12 07:41:06 +02:00
Florian Bruhin
8609663f40
statusbar.textbase: Fix broken text check.
2015-08-12 07:35:24 +02:00
Florian Bruhin
c55cb5b16b
config.textwrapper: Remove *args.
...
textwrap.TextWrapper only takes kwargs.
2015-08-12 07:01:21 +02:00
Florian Bruhin
44f8cf4b1a
Move :tab-focus documentation.
2015-08-11 22:01:18 +02:00
Florian Bruhin
705544cb05
Merge branch 'gt' of git://github.com/t-wissmann/qutebrowser into t-wissmann-gt
2015-08-11 21:58:53 +02:00
Florian Bruhin
2980bc808e
Remove dead configtypes code.
2015-08-11 20:15:42 +02:00
Florian Bruhin
2d8aaecd65
100% coverage for utils.debug.
2015-08-11 17:11:00 +02:00
Florian Bruhin
64a1cad604
Clean up output for get_all_objects().
2015-08-11 17:10:41 +02:00
Florian Bruhin
a3a7f8936b
Allow to pass a root object to _get_pyqt_objects.
2015-08-11 17:10:02 +02:00
Florian Bruhin
307bbde6e0
Fix utils.debug.get_all_children().
2015-08-11 17:09:20 +02:00
Florian Bruhin
0ca96740c9
Make utils.debug.format_args public.
2015-08-11 17:08:49 +02:00
Florian Bruhin
caedb57e56
Fix staticMetaObject handling in qenum_key.
...
Since we checked on klass instead of base, there never was a staticMetaObject
and the slower path was always taken - this corrects that.
2015-08-11 17:07:47 +02:00
Florian Bruhin
10298e9692
Don't connect destroyed signal in log_signals.
...
This causes weird segfaults and is probably not that important to log.
Fixes #867 .
2015-08-11 14:29:06 +02:00
Thorsten Wißmann
da6d12a657
Make tab-focus (bound to gt) behave as in VIM
...
If no count or index is given, tab-focus switches to the next tab (using
tab-next internally). So the keychain gt behaves as gt in vim:
- gt focuses the next tab
- 1gt focuses the first tab
- <n>gt (e.g. 5gt) focuses the n'th (e.g. fith) tab
2015-08-11 10:50:27 +02:00
Alexander Cogneau
8be433f5f6
Add tests:
...
- sum of column widths equals 100
- column widths tuple has 3 elements
2015-08-11 09:17:46 +02:00
Florian Bruhin
c8679d6544
100% coverage for browser.webelem.
2015-08-10 19:37:16 +02:00
Florian Bruhin
aed915b1ec
Handle invalid URLs when checking for same domain.
...
The old code only checked whether current_url is invalid, but the request URL
can be invalid as well, e.g. on http://www.playstation.com/
/cc @Carpetsmoker
2015-08-09 18:52:11 +02:00
Florian Bruhin
fe3eb30892
Reorganize exceptions in urlutils.
...
- Instead of ValueError, a new InvalidUrlError is raised with invalid URLs.
- FuzzyUrlError got removed as it's basically the same as InvalidUrlError.
2015-08-09 18:48:32 +02:00
Antoni Boucher
052d18147e
Added permission check.
2015-08-09 11:29:18 -04:00
Antoni Boucher
0896d7a8b3
Fixed file scheme handler.
2015-08-08 19:45:00 -04:00
Alexander Cogneau
753f87aa15
Default size of third column is now 0
2015-08-08 23:49:54 +02:00
Antoni Boucher
14ae308279
Added a file:// scheme.
2015-08-08 15:16:48 -04:00
Antoni Boucher
7e20d77bdf
Switch to SVG file and tango theme.
2015-08-08 14:43:55 -04:00
Antoni Boucher
2969599390
Use toLocalFile function instead of slicing.
2015-08-08 14:13:09 -04:00
Antoni Boucher
e6521b047d
Added get_file_list function and tests.
2015-08-08 14:10:27 -04:00
Antoni Boucher
b8809f879d
Added resource_filename function and tests.
2015-08-08 13:47:47 -04:00
Antoni Boucher
ec5049f801
Renamed url to urlstring.
2015-08-08 13:32:04 -04:00
Alexander Cogneau
e29c642bc2
Fix wrong propertyname
2015-08-08 18:12:51 +02:00
Alexander Cogneau
f2c3cc6a3e
Module import of completion.models instead of class.
2015-08-08 17:58:12 +02:00
Alexander Cogneau
0e9f268817
CompletionView:
...
- column_widths -> _column_widths
- removed if-statement to verify if source model has 'column_widths'-property
2015-08-08 17:47:18 +02:00
Alexander Cogneau
36372418ca
Added the default column_widths as a class attribute instead of a config option.
2015-08-08 17:27:21 +02:00
Alexander Cogneau
5c2d3ec96a
Add a column_widths property to the base class for completion models.
2015-08-08 16:46:57 +02:00
Florian Bruhin
f76b741fb6
Merge branch 'master' of git://github.com/Kingdread/qutebrowser into Kingdread-master
2015-08-08 15:14:08 +02:00
Antoni Boucher
2be0743378
Added images.
2015-08-07 23:28:24 -04:00
Antoni Boucher
fedf9d9c72
Replaced tuple by dict.
2015-08-07 22:45:54 -04:00
Antoni Boucher
4c1ed35390
Removed .. when in root folder.
2015-08-07 22:45:42 -04:00
Antoni Boucher
c8d3fc57c2
First version of directory browser.
2015-08-07 21:57:19 -04:00
Daniel
9e98ab181a
Add URL validity check + tests to incdec_number
2015-08-08 00:57:16 +02:00
Daniel
c4c3a83ac0
rename url_incdec_number to incdec_number
2015-08-08 00:57:16 +02:00
Florian Bruhin
3a85afe1f4
Use datetime.ctime().
2015-08-07 22:32:02 +02:00
Alexander Cogneau
43e0ac1844
Fix PEP8: line too long warning
2015-08-07 21:15:40 +02:00
Alexander Cogneau
73c28c12f3
Show launch time in crash logs.
2015-08-07 20:36:38 +02:00
Daniel
276b163e0d
Move logic from _navigate_incdec to urlutils
...
Also add unittests for url_incdec_number
2015-08-07 18:48:07 +02:00
Daniel
0f3aa0bd8c
Ctrl-A only increments number in path segment
...
This prevents a host like "myfoo42.bar" changing to "myfoo43.bar" when
pressing Ctrl-A. It further prevents increasing the port number, e.g.
going from "foo.bar:8080" to "foo.bar:8081".
2015-08-07 17:21:18 +02:00
Florian Bruhin
5f122759db
Fix config migration for tab position values.
2015-08-07 11:59:31 +02:00
Florian Bruhin
2ab7ad59ee
Fix lint.
2015-08-06 21:19:36 +02:00
Florian Bruhin
3f445ba6ca
Draw favicon at correct position/size.
2015-08-06 21:14:05 +02:00
Florian Bruhin
58a9677af8
Use QFontMetrics instead of QFontInfo.
2015-08-06 21:11:06 +02:00
Florian Bruhin
e1c2250690
Merge branch 'favicon-size-2' of git://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-favicon-size-2
2015-08-06 21:10:11 +02:00
Florian Bruhin
61df5fcd7a
Skip confirm-quit checks when crashing.
...
Fixes #853 .
2015-08-06 21:08:20 +02:00
Florian Bruhin
9c6782be1d
downloads: Fix size calculation with unknown size.
...
Fixes #854 .
2015-08-06 21:00:36 +02:00
Florian Bruhin
36adaf0cf3
Simplify argument handling for DownloadManager.
2015-08-06 20:41:57 +02:00
Florian Bruhin
5fca27ad02
Fix :adblock-update.
2015-08-06 20:38:51 +02:00
Florian Bruhin
46f3be2df7
Add rapid hinting for downloads.
2015-08-06 19:09:21 +02:00
Florian Bruhin
a34fa93f62
Wrap long lines.
2015-08-06 18:50:32 +02:00
Alexander Cogneau
8ffe73cc5f
Change 'prompt-download-location' setting to 'prompt-download-directory'
2015-08-06 16:44:58 +02:00
Alexander Cogneau
9a85b66452
Merge remote-tracking branch 'upstream/master'
2015-08-06 16:40:48 +02:00
Florian Bruhin
c6c14e967d
Change Position conftypes to top/bottom/left/right.
2015-08-05 23:37:51 +02:00
Martin Tournoij
58aa1a738d
Favicon sizing is messed up with tabs -> orientation = west #847
...
Here's a patch which seems to work well in my initial testing. We now use the
font size rather than the tabbar size, since the tabbar size is the window
size when it's vertical.
This also works nicer with the new tabs.padding setting (which didn't exist when
I wrote the first patch).
2015-08-05 22:33:24 +02:00
Florian Bruhin
5a25f0b98b
Don't crash on :completion-item-del with no item.
...
If :completion-item-del was invoked with no item selected (e.g. directly after
pressing 'o'), there was a crash because the currentIndex was invalid.
/cc @antoyo (but I believe one of my changes on top of yours caused this)
2015-08-05 06:55:39 +02:00
Florian Bruhin
15e854237e
Fix exception on ":set -p foo bar!".
2015-08-04 23:50:43 +02:00
Alexander Cogneau
3fa99abca8
Merge remote-tracking branch 'upstream/master'
2015-08-04 16:32:31 +02:00
Alexander Cogneau
e43a1e6444
Added config option for prompting the user for a download location.
2015-08-04 16:30:55 +02:00
Florian Bruhin
93d27cbb5f
Escape 0x00 in javascript_escape().
...
This is needed in older PyQt-versions.
2015-08-04 12:42:49 +02:00
Florian Bruhin
7e7fe9b4ce
Simplify utils.qualname, take two.
2015-08-04 10:39:34 +02:00
Florian Bruhin
c67f7b6b21
Simplify utils.qualname.
2015-08-04 10:36:35 +02:00
Florian Bruhin
43266ac08a
webelem: Add more tests.
2015-08-03 23:40:39 +02:00
Florian Bruhin
ed4fc4d1ba
webelem: Escape \r in javascript_escape().
2015-08-03 23:22:23 +02:00
Florian Bruhin
8011cefea6
webelem: Check if elem is writable with roles.
2015-08-03 23:21:45 +02:00
Florian Bruhin
0330adf284
Filter links for :navigate.
2015-08-03 23:21:20 +02:00
Florian Bruhin
21a60f06c0
webelem: Add <link> element to all/prevnext.
2015-08-03 23:17:54 +02:00
Florian Bruhin
c6a5731560
webelem: Check for vanished elem in is_text_input.
2015-08-02 23:49:22 +02:00
Florian Bruhin
3d9e4817f2
webelem: Fix return value for is_editable().
2015-08-02 23:49:12 +02:00
Florian Bruhin
5c58641c81
Fix WebElementWrapper.__delitem__.
2015-08-02 23:47:35 +02:00
Florian Bruhin
b850df090b
Add branch coverage workaround for coverage.py bug.
2015-08-02 23:47:22 +02:00
Florian Bruhin
2c7dd5c60c
rfc6266: Simplify ContentDisposition.
2015-08-02 19:48:31 +02:00
Florian Bruhin
aaf90d0fe3
Simplify RFC6266 error handling.
2015-08-02 18:09:01 +02:00
Florian Bruhin
cd7c3ec3a4
Fix docstring for http module.
2015-08-02 17:20:21 +02:00
Florian Bruhin
b4a695d5b8
Strip trailing slash when getting path from URL.
2015-08-02 17:18:59 +02:00
Florian Bruhin
c13f7e5f78
Remove dead ShellLexer code.
2015-08-02 13:05:19 +02:00
Florian Bruhin
dc4d4e70e4
Make sure state is valid in ShellLexer.
2015-08-02 12:44:54 +02:00
Florian Bruhin
49f017c0dd
Fix mainwindow.statusbar.percentage tests.
2015-08-02 01:53:30 +02:00
Florian Bruhin
d5888fea89
100% coverage for mainwindow.statusbar.progress.
2015-08-02 01:49:33 +02:00
Florian Bruhin
43db9d4526
Fix wrong pyqtSlot type.
2015-08-02 01:42:16 +02:00
Florian Bruhin
7f3070f793
Remove : for configexc.NoOptionError.
2015-08-02 01:29:24 +02:00
Florian Bruhin
d8017a04a8
Mark old tabbar hide settings as removed.
2015-08-01 22:36:59 +02:00
Florian Bruhin
6b98158d64
Fix lint.
2015-08-01 22:21:08 +02:00
Artur Shaik
e58735f1d7
'Tabs show' recommendations applied.
2015-08-01 22:21:08 +02:00
Artur Shaik
b4d5f9e7a6
Tabs->show option.
...
Issue #771
Implemted common option for tab bar show strategy.
Options: always, never, multiple, switching.
2015-08-01 22:21:08 +02:00
Florian Bruhin
2bd36e21f1
Merge branch 'download-cpu-2'
2015-08-01 14:57:47 +02:00
Florian Bruhin
8314f7f93c
Fix referer handling with generic download NAMs.
...
This broke e.g. :adblock-update as tab_id for those is set to None.
2015-08-01 14:54:46 +02:00
Florian Bruhin
d6585202fd
Remember the last used download directory.
...
Thanks to @Carpetsmoker for the original PR.
Closes #745 .
Closes #37 .
2015-08-01 14:19:06 +02:00
Florian Bruhin
52d7a5693f
Fix lint.
2015-08-01 13:47:42 +02:00
Florian Bruhin
81c3c2d15f
Small config rewording.
2015-08-01 13:35:30 +02:00
Florian Bruhin
44d109ca92
Save referer-header setting.
2015-08-01 13:32:11 +02:00
Florian Bruhin
976f758da1
Fix getting of the current URL.
2015-08-01 13:29:25 +02:00
Florian Bruhin
27f65be860
Merge branch 'referer-header' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-referer-header
...
Conflicts:
tests/utils/test_urlutils.py
2015-08-01 12:44:57 +02:00
Florian Bruhin
cc66feac09
Handle invalid history timestamps.
2015-08-01 00:57:34 +02:00
Florian Bruhin
d04848ac19
Remove unused import.
2015-08-01 00:34:09 +02:00
Florian Bruhin
451477593f
Always require 4 values for padding.
2015-08-01 00:34:09 +02:00
Florian Bruhin
22ae0c5bca
Don't call setIconSize if height doesn't change.
2015-08-01 00:26:37 +02:00
Florian Bruhin
2c716dbf6c
Merge branch 'favicon-size' of https://github.com/Carpetsmoker/qutebrowser into tabbar-height
2015-08-01 00:22:17 +02:00
Florian Bruhin
be88ba6f05
Remove indicator-space setting.
2015-07-31 18:55:17 +02:00
Florian Bruhin
fdcb69f5d4
Fix indicator layout and make it configurable.
2015-07-31 18:52:31 +02:00
Florian Bruhin
3083eaa27b
Clean up TabBarStyle._tab_layout.
2015-07-31 18:06:01 +02:00
Florian Bruhin
41eb36148d
Clean up TabBarStyle.drawControl.
2015-07-31 17:59:38 +02:00
Florian Bruhin
f5725ec11e
Use a namedtuple for _tab_layout.
2015-07-31 17:49:18 +02:00
Florian Bruhin
754c31850b
Add configurable tab padding.
2015-07-31 17:24:35 +02:00
Florian Bruhin
041315b65f
Honour right-padding in tabs correctly.
2015-07-31 17:02:42 +02:00
Florian Bruhin
8dcf9fd963
Separate padding/icon padding for tab bar.
2015-07-31 16:55:48 +02:00
Florian Bruhin
776ace2d3f
Clean up comparison.
2015-07-31 16:41:02 +02:00
Florian Bruhin
87d8bfd7a7
Use an enum for custom PixelMetrics.
2015-07-31 16:40:06 +02:00
Florian Bruhin
452c4115d3
Add a Padding config type.
2015-07-31 15:38:41 +02:00
Florian Bruhin
57e79db136
Fix undefined name error.
2015-07-29 15:04:07 +02:00
Florian Bruhin
d9d68db5df
Simplify delete_cur_item for UrlCompletionModel.
2015-07-29 12:44:38 +02:00
Florian Bruhin
08fe1d59e6
Get rid of bookmark_by_title completion.
2015-07-29 12:36:45 +02:00
Florian Bruhin
69ade32cb9
Get rid of quickmark_by_name completion.
2015-07-29 12:35:43 +02:00
Florian Bruhin
c016e8a4cf
Improve error handling for quick-/bookmarks.
2015-07-29 12:34:53 +02:00
Florian Bruhin
093b3cba25
Add a bookmark-del command.
2015-07-26 21:05:32 +02:00
Florian Bruhin
0acd1b8dc8
Use urlutils.fuzzy_url for loading bookmarks.
2015-07-26 18:52:15 +02:00
Florian Bruhin
b962fff7f1
Don't show message when deleting items.
2015-07-26 18:48:00 +02:00
Florian Bruhin
ecf3e166ff
Fix wrong column attribute.
2015-07-26 18:47:02 +02:00
Florian Bruhin
660b5531e5
Share code between on_{quick,book}mark_removed.
2015-07-26 18:43:01 +02:00
Florian Bruhin
b5a9467b5c
Get rid of _add_*mark_entry in urlmodel.
2015-07-26 18:35:49 +02:00
Florian Bruhin
2d2779d6f3
Clean up column handling in urlmodel.
2015-07-26 18:23:12 +02:00
Florian Bruhin
aaa523ce7c
Filter by cols_to_filter in CompletionFilterModel.
2015-07-26 17:41:32 +02:00
Florian Bruhin
3b0125e8cd
Rename cols_to_highlight to _filter and simplify.
2015-07-26 17:22:45 +02:00
Florian Bruhin
c7f88c93b2
Style fix.
2015-07-26 17:11:34 +02:00
Florian Bruhin
16ac877227
Add default keybindings for loading bookmarks.
...
See #13 , #681 .
2015-07-26 16:42:47 +02:00
Florian Bruhin
2f11b41ae6
Merge bookmarks and quickmarks into urlmarks.
2015-07-26 16:37:10 +02:00
Florian Bruhin
b52a41ac6f
Merge branch 'master' of https://github.com/antoyo/qutebrowser into antoyo-master
...
Conflicts:
.gitignore
2015-07-26 15:08:58 +02:00
Florian Bruhin
c750ff3f50
configtypes: Handle invalid format syntax.
2015-07-26 13:56:46 +02:00
Florian Bruhin
4bdf00b148
configtypes: Handle {1} correctly.
2015-07-26 13:56:40 +02:00
Florian Bruhin
94b0f92b75
Fix tabs -> last-close = ignore.
...
See #822 / 71fee12b5b
.
Fixes #834 .
2015-07-26 12:08:19 +02:00
Florian Bruhin
cbed62cafc
Remove dead code.
...
This will already be checked by WebKitBytes._basic_validation.
2015-07-24 18:23:17 +02:00
Florian Bruhin
694fbe053d
Fix lint.
2015-07-24 18:11:52 +02:00
Florian Bruhin
44bf4ae883
configtypes: Fix ' ' value with Command.
2015-07-24 17:56:12 +02:00
Florian Bruhin
b19852b6e7
configtypes: Add _basic_validation() to BaseType.
...
This has a few implications:
- Checking for empty/none_ok is now easier as _basic_validation() does this.
- To make things easier, WebKitBytes and WebKitBytesList now need to have
none_ok passed as well instead of assuming True.
- _basic_validation() checks for unprintable chars and raises ValidationError
if they occur, so this gets checked for all types.
2015-07-24 17:39:02 +02:00
Florian Bruhin
1fd386e57e
configtypes: Get rid of typestr.
...
Closes #819 .
2015-07-24 14:18:41 +02:00
Florian Bruhin
730a8afc6b
configtypes: Handle empty values in ConfirmQuit
2015-07-24 00:24:04 +02:00
Florian Bruhin
e145d73852
configtypes: Add a MappingType base class.
2015-07-24 00:11:52 +02:00
Florian Bruhin
0b1704d829
configtypes: Add a __repr__ to ValidValues.
2015-07-24 00:11:52 +02:00
Florian Bruhin
a558f666bc
configtypes: Be case-insensitive for Position.
2015-07-23 23:13:58 +02:00
Florian Bruhin
85e748df4f
configtypes: Add else-branch to QtFont.
2015-07-23 16:57:28 +02:00
Florian Bruhin
b0c3f5381b
configtypes: Add none_ok param to UserStyleSheet.
2015-07-23 16:57:14 +02:00
Florian Bruhin
c46abd8f89
Fix none_ok for RegexList and PercList.
2015-07-23 14:08:34 +02:00
Florian Bruhin
88416db6a3
configtypes: Make none_ok work for IntList.
2015-07-21 15:20:23 +02:00
Florian Bruhin
073504abb4
configtypes: Make none_ok public.
2015-07-21 15:17:28 +02:00
Florian Bruhin
1b643ff55f
Handle empty values for ConfirmQuit conftype.
2015-07-21 13:00:01 +02:00
Florian Bruhin
b670c45381
Fix typo.
2015-07-20 11:23:43 +02:00
Florian Bruhin
5f10a12be9
Use keyword argument for newtab.
2015-07-17 06:39:53 +02:00
Florian Bruhin
ed1ba03c19
Merge branch 'last-tab' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-last-tab
2015-07-17 06:27:19 +02:00
Florian Bruhin
0972087e34
Add a note about #730 to :inspect docs.
...
Fixes #730 .
2015-07-16 20:54:10 +02:00
Martin Tournoij
71fee12b5b
Always remove the last tab, instead of opening a new page in it.
...
IMHO this makes much more sense; for example, if you close the last tab but then
press u to "undo" it, you'll actually load the second-last tab. To undo you need
H for "back". Other things like gC, session save, etc. also behave in a way that
is, IMHO, unexpected...
I can also make a new option out of this, if you prefer. But I don't think that
many people would expect the current behaviour...
2015-07-16 15:26:15 +02:00
Florian Bruhin
704c5ff919
Make :yank-selected work in all modes.
2015-07-16 13:57:53 +02:00
Florian Bruhin
63ff39ad65
Don't use 0 as window ID for early messages.
...
The issue here was that only message calls with 'current' as window get cached
if the window is unavailable. We used 0 instead.
Fixes #815 .
See #812 .
2015-07-14 18:36:12 +02:00
Antoni Boucher
91561e2c5b
Fixed style.
2015-07-12 20:46:40 -04:00
Antoni Boucher
5bca951c21
Removed casefold() function call when using a custom filter.
2015-07-12 20:29:40 -04:00
Antoni Boucher
1b24cfd618
Removed useless bookmark by title model.
2015-07-12 20:21:49 -04:00
Antoni Boucher
d4c91f7b0c
Fixed completion highlighting.
2015-07-12 20:18:32 -04:00
Antoni Boucher
523cb458a6
Merge remote-tracking branch 'upstream/master'
2015-07-12 10:52:32 -04:00
Florian Bruhin
ca5a78dfc7
Attach numerical code to Qt OSErrors and fix tests.
...
This fixes tests with tox < 2.0.0 on systems with a non-english locale, as it's
no longer the errorString which gets compared.
Fixes #806 .
2015-07-12 11:20:28 +02:00
Antoni Boucher
5dbaea7a83
Fixed empty title.
2015-07-11 20:28:31 -04:00
Antoni Boucher
1e354a797e
Removed useless checks.
2015-07-11 19:56:51 -04:00
Antoni Boucher
5e8129788a
Removed try/except.
2015-07-11 19:48:46 -04:00
Antoni Boucher
96a2178a25
Renamed bookmark_del to delete in bookmark manager.
2015-07-11 19:23:21 -04:00
Antoni Boucher
4bc2f63608
Renamed bookmark_add to add in bookmark manager.
2015-07-11 19:18:45 -04:00
Antoni Boucher
8159c5f567
Fixed last merge.
2015-07-11 18:56:19 -04:00
Antoni Boucher
fe829699be
Merge remote-tracking branch 'upstream/master'
2015-07-11 17:40:43 -04:00
Florian Bruhin
c5b75b0b16
Merge remote-tracking branch 'origin/usertypes-tests'
2015-07-06 17:58:13 +02:00
Florian Bruhin
3f13c2bd3e
Add/improve tests for qutebrowser.utils.urlutils.
2015-07-06 17:10:57 +02:00
Florian Bruhin
e3fcc0e091
Move isabs check to top in fuzzy_url.
2015-07-06 17:10:24 +02:00
Florian Bruhin
47d5262cd9
Abort scrolling wen reaching min/max position.
...
Fixes #801 .
2015-07-06 15:13:18 +02:00
Florian Bruhin
11e88fbd12
Don't bind backspace by default.
...
Fixes #789 .
2015-07-06 13:18:05 +02:00
Florian Bruhin
4cef4012e5
Catch OSError when loading qute:help.
...
Fixes #763 .
2015-07-02 22:08:41 +02:00
Florian Bruhin
4e0d00098c
Improve NeighborList tests.
2015-07-02 21:10:56 +02:00
Martin Tournoij
aa909c0506
Fix warnings from tox
2015-07-02 21:07:38 +02:00
Florian Bruhin
4bddcd4c1a
Remove (y/N) suffix from download questions.
2015-07-02 20:57:23 +02:00
Florian Bruhin
dc29ad430e
Change how lines are split.
2015-07-02 20:51:51 +02:00
Florian Bruhin
d44f14063a
Merge branch 'save-fifo' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-save-fifo
2015-07-02 19:16:04 +02:00
Martin Tournoij
2c5898b9f7
Rename variable to fix pylint warning:
...
https://travis-ci.org/The-Compiler/qutebrowser/jobs/68949925
************* Module qutebrowser.browser.downloads
W:299,36: Redefining name 'message' from outer scope (line 39) (redefined-outer-name)
2015-06-30 13:22:20 +02:00
Martin Tournoij
c7cd51a7d5
"Fix" silly pep8 warnings
2015-06-30 12:01:05 +02:00
Florian Bruhin
7b8490b6c0
Fix 'an user' spelling.
2015-06-29 17:49:19 +02:00
Florian Bruhin
b3cd31a808
Release v0.3.0.
2015-06-28 12:45:58 +02:00
Martin Tournoij
63dae3a885
Set favicon size to tabbar size.
...
Fixes #119 . Also see #754
2015-06-28 00:03:53 +02:00
Martin Tournoij
d114e64b05
Ask question instead of aborting
2015-06-27 22:28:06 +02:00
Martin Tournoij
26664ba644
Merge branch 'master' into save-fifo
2015-06-27 22:23:47 +02:00
Martin Tournoij
a346644c71
Changed:
...
- same_domain: If the tld is unknown, only return True if the hostnames are the same
- Fix when starting without an open page
2015-06-27 21:15:54 +02:00
Martin Tournoij
f806eefba6
Merge branch 'master' into referer-header
2015-06-27 20:43:54 +02:00
Florian Bruhin
bf4e968c67
Add new completion -> auto-open option.
...
Closes #557 .
2015-06-27 19:55:04 +02:00
Florian Bruhin
b3869fe42b
sessions: Store zoom/scroll-pos per history entry.
...
Also fixes #728 .
2015-06-27 18:06:18 +02:00
Florian Bruhin
ddf7f202d8
Set default for new-instance-open-target to tab.
2015-06-26 22:40:16 +02:00
Florian Bruhin
e9b5c355d2
Add a short=True argument to version.version().
...
Fixes #787 .
2015-06-26 22:33:29 +02:00
Florian Bruhin
4652843b38
Move command-related zoom logic out of WebView.
...
After f8d66f3fe1
loading a session showed the
zoom percentage of all tabs.
This logic doesn't really belong into webview.py anyways, so it gets moved to
browser/commands.py here.
2015-06-24 23:06:55 +02:00
Franz Fellner
534a85cf8f
Create a new QStyleOptionTab object for each tab.
...
It seems under some circumstances (on Gentoo?), the existing QStyleOptionTab
object was reused, causing subsequent tabs to have the same title as the first
one.
Fixes #778 .
2015-06-24 21:27:37 +02:00
Florian Bruhin
75b894a186
Include DESKTOP_SESSION in qute:version.
2015-06-24 20:54:37 +02:00
Florian Bruhin
220ac021f0
Print style name in version info.
2015-06-24 20:37:48 +02:00
Martin Tournoij
f8d66f3fe1
Use zoom_perc instead of setZoomFactor to set zoom.
...
When using setZoomFactor, the NeighborList's fuzzyval doesn't get updated,
which means the next -/+ press would do something weird.
2015-06-24 18:16:59 +02:00
Florian Bruhin
b7c3e7b959
Disallow {foo} in search engine URLs.
...
This causes an KeyError otherwise when trying to use str.format to insert the
search term.
2015-06-24 07:46:15 +02:00
Florian Bruhin
e459ac52cc
Use existing selection when entering caret mode.
2015-06-20 13:09:00 +02:00
Florian Bruhin
5cf1dce89e
Simplify condition and add comment.
2015-06-20 13:07:51 +02:00
Artur Shaik
94d394001e
Don't position caret if there is selection on page
2015-06-20 12:47:46 +02:00
Florian Bruhin
9ca06ecfa2
Use pkg_resources instead of distutils for version
...
Fixes #767 . See #770 .
2015-06-18 20:54:05 +02:00
Florian Bruhin
1cc6a6669b
Bind <Alt-Backspace> to rl-unix-word-rubout.
2015-06-18 15:02:30 +02:00
Florian Bruhin
0350d19bd3
Load geometry after completion is initialized.
...
Fixes #766 .
2015-06-18 10:32:07 +02:00
Florian Bruhin
c64d9520ff
Fix lint.
...
Thanks to @Carpetsmoker for spotting this in #705 .
2015-06-18 08:10:14 +02:00
Florian Bruhin
59cdbd780c
Fix {url} substitution with :spawn.
...
See #759 .
This is a regression introduced in 6dbdea0ee3
.
2015-06-18 07:01:30 +02:00
Florian Bruhin
6dbdea0ee3
Set maxsplit=0 for :spawn and split manually.
...
Fixes #759 .
2015-06-17 07:57:38 +02:00
Florian Bruhin
b1334bcc22
Use repr() for unknown objects in utils.qualname.
2015-06-17 06:46:03 +02:00
Florian Bruhin
dfe98d1053
completion: Fix initial _cursor_part value.
...
Fixes #749 .
2015-06-16 13:22:55 +02:00
Florian Bruhin
0119cf510f
Fix loading of _temp_history.
2015-06-16 07:16:02 +02:00
Florian Bruhin
a545b919f7
Do history loading after qutebrowser has started.
2015-06-16 07:06:56 +02:00
Florian Bruhin
70699988ed
Fix context managers behavior on exceptions.
2015-06-15 06:19:14 +02:00
Florian Bruhin
f1ba14b496
Fix exception when using :set.
...
This is a regression introduced in 167faafff2
.
2015-06-13 13:26:29 +02:00
Florian Bruhin
f17131f6c2
Change Qt links to point to qt.io.
2015-06-12 16:59:33 +02:00
Florian Bruhin
84a269f36a
Add missing keys to key_to_string.
2015-06-12 16:37:17 +02:00
Florian Bruhin
425fcdf8e4
Merge branch 'util-tests-1'
2015-06-12 11:50:57 +02:00
Florian Bruhin
167faafff2
Fix command parsing for arguments containing _.
2015-06-12 11:42:16 +02:00
Florian Bruhin
efcea65596
Add --quiet argument to :jseval.
2015-06-12 11:24:04 +02:00
Florian Bruhin
8ecc3a3bb0
Fix lint.
2015-06-12 11:22:37 +02:00
Florian Bruhin
ea1921defd
Merge branch 'jseval' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-jseval
2015-06-12 11:21:10 +02:00
Florian Bruhin
33ad0ab1fc
Fix startDetached return value for GUIProcess.
2015-06-11 23:02:47 +02:00
Florian Bruhin
d3b727d0c7
Fix lint.
2015-06-11 20:32:27 +02:00
Florian Bruhin
5828bbafe9
Add -v (not -q) to :spawn and make it work with -u.
2015-06-11 20:30:37 +02:00
Florian Bruhin
84dacc9bc8
Remove double output for :spawn.
2015-06-11 20:30:37 +02:00
Florian Bruhin
8a87b5d357
Rename GUIProcess.started to _started.
...
It's unneeded for this to be public, and it conflicts with the pyqtSignal.
2015-06-11 20:30:37 +02:00
Florian Bruhin
ad401e035f
Proxy QProcess signals.
2015-06-11 20:30:37 +02:00
Florian Bruhin
62d2018695
Add cmd/args/started to GUIProcess.
2015-06-11 20:30:28 +02:00
Florian Bruhin
163bc2e12e
Add GUIProcess.
...
This aims to unify the code which spawns a process and then shows statusbar
notifications when it exited, etc.
2015-06-11 20:30:03 +02:00
Florian Bruhin
1a9bc64776
Display an error on non-zero :spawn exit.
2015-06-11 20:28:05 +02:00
Florian Bruhin
231f1d90ce
Add a -d/--detach argument to :spawn.
2015-06-11 20:28:05 +02:00
Florian Bruhin
17bb9fc21c
Use QProcess instead of subprocess.
...
Closes #646 .
Fixes #688 .
2015-06-11 20:28:04 +02:00
Austin Anderson
599f582c20
More specific statusbar styling: resolves #750 .
2015-06-11 08:07:59 -04:00
Florian Bruhin
9b7b97d626
Improve docs.
2015-06-10 21:10:59 +02:00
Florian Bruhin
ab27612139
Merge branch 'more-color-settings' of https://github.com/ProtractorNinja/qutebrowser into ProtractorNinja-more-color-settings
2015-06-10 20:05:23 +02:00
Florian Bruhin
67e895b6c7
Hide SetProcessDpiAwareness Qt warning.
...
This shows up on AppVeyor CI for some reason.
See https://bugreports.qt.io/browse/QTBUG-38993
2015-06-10 18:35:33 +02:00
Florian Bruhin
b57027f800
Fix pylint warnings on Windows.
2015-06-10 18:35:33 +02:00
Austin Anderson
3be9a9b051
Catalogued a configuration option change for updates.
2015-06-10 08:16:15 -04:00
Martin Tournoij
9df5a89037
Don't crash when trying to save to a FIFO or other special file
...
When giving the path to a FIFO or other special file qutebrowser would
completely hang, and has to be killed.
Tested:
- Asks for overwrite: file, symlink to file
- Saves in dir: dir, symlink to dir
- Aborts: block dev, char dev, fifo, socket, and a symlink to all of these
2015-06-08 22:42:06 +02:00
Florian Bruhin
108e722c85
Add config migration.
2015-06-08 20:48:35 +02:00
Florian Bruhin
3b4fe97dbc
Merge branch '3rd-party-cookies' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-3rd-party-cookies
2015-06-08 20:38:19 +02:00
Florian Bruhin
b6349437f7
Fix broken check for changing js on qute:settings.
...
See #727 .
2015-06-08 20:29:55 +02:00
Florian Bruhin
b5cd082e43
config: Make it possible to migrate values.
...
Needed for #729 .
2015-06-08 19:34:11 +02:00
Florian Bruhin
5a2d909607
Update user-stylesheet docs.
2015-06-08 18:50:09 +02:00
Florian Bruhin
171a0f201b
Merge branch 'relapaths' of https://github.com/lamarpavel/qutebrowser into lamarpavel-relapaths
2015-06-08 18:48:11 +02:00
Lamar Pavel
7f27c183be
Include expandvars in File.validate
...
I thought I put this in here before, but apparently I did not. So here it is,
together with a new test to verify it. Other tests needed to be updated with a
mock for os.path.expandvars.
2015-06-08 13:18:16 +02:00
Lamar Pavel
0e50760b70
Differentiate exceptions; remove obsolete test
...
In function File.validate the try-except block has been re-written to
differentiate raised errors.
In function File.transform there was a check for validity of the file path that
is alraedy performed by File.validate under the same conditions. This check has
been removed.
2015-06-08 12:53:59 +02:00
Antoni Boucher
c2eabb13b0
Fixed style.
2015-06-07 20:25:04 -04:00
Antoni Boucher
31eed6c9a6
Fixed to avoid having duplicate bookmarks.
2015-06-07 20:16:45 -04:00
Austin Anderson
34d4c08374
Significantly reduced the size of the bar stylesheet.
2015-06-07 20:13:52 -04:00
Austin Anderson
ebc013ac2a
Removed redundant setter.
2015-06-07 20:13:52 -04:00
Antoni Boucher
d93732a6b3
Fixed to use 'bookmarks/urls' file instead of bookmarks.
2015-06-07 20:04:42 -04:00
Antoni Boucher
c4fc5c0c43
Fixed to use the title "(null)" when the page does not have any title.
2015-06-07 19:51:46 -04:00
Antoni Boucher
57a72a7120
Refactored bookmark removal to use a command.
2015-06-07 19:36:19 -04:00
Florian Bruhin
e60f698615
Add/improve tests for qutebrowser.utils.standarddir.
2015-06-07 23:20:34 +02:00
Florian Bruhin
df53ccf426
Write tests for qutebrowser.utils.version.
2015-06-07 23:20:34 +02:00
Florian Bruhin
4204579c06
Add/improve tests for qutebrowser.utils.utils.
2015-06-07 22:53:30 +02:00
Florian Bruhin
1e5e6a63a5
Batch download redrawings/updates.
2015-06-07 22:22:23 +02:00
Florian Bruhin
90b3927906
Merge branch 'downloads-cpu' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-downloads-cpu
2015-06-07 21:51:18 +02:00
Florian Bruhin
2ff6dbd482
Remove unused import.
2015-06-07 21:44:45 +02:00
Florian Bruhin
f85ca19cef
Use <noscript> tag for qute:settings without JS.
...
There was already a noscript tag, this just removes the special check and makes
it a bit more obvious.
See #727 .
2015-06-07 21:38:44 +02:00
Antoni Boucher
cf4b89efe3
Merge remote-tracking branch 'upstream/master'
2015-06-07 14:38:17 -04:00
Florian Bruhin
6b94dc5279
Add continue to default next-regexes.
2015-06-07 17:20:52 +02:00
Martin Tournoij
2fa6c952c2
Use less CPU when downloading files
...
When downloading a bunch (7 or 8) of files I noticed qutebrowser was using a lot
of CPU (>60%).
I did some looking, and in the `downloadProgress` callback qutebrower emits the
updated signal which causes everything to be updated. We don't really need this,
since _update_speed() calls it every 500ms anyway.
I tested by downloading 3 copies of the 1GB file [on this
page]( http://www.thinkbroadband.com/download.html ) qutebrowser consistently
pulls about 25% CPU on my system.
When removing this call, the system pulls about 17% CPU. Not a great amount, but
still significant enough to warrant a pull request ;-)
Some other notes:
- wget uses about 1.5%-2% for each process when downloading.
- When not doing any UI updates & speed calculations qutebrowser uses about 15%.
- Doing some quick profiling and strategic commenting seems to indicate there
isn't any other low hanging fruit to be improved on here.
2015-06-07 17:15:04 +02:00
Florian Bruhin
a82b0d007d
Enforce a Qt with SSL support.
2015-06-07 10:47:28 +02:00
Florian Bruhin
5310c60d58
Remove unused import.
2015-06-07 01:24:24 +02:00
Florian Bruhin
def41e70bf
Fix some spelling mistakes.
2015-06-07 01:24:02 +02:00
Lamar Pavel
5bacbc9d38
Remove obsolete try-except block
2015-06-06 14:07:57 +02:00
Lamar Pavel
de0686c50a
Error messages and explicit test for None
...
Error messages for validate() are more specific.
Return of standarddir.conf() is explicitly tested for None to avoid ambiguity
with other falsey values.
2015-06-06 14:04:45 +02:00
Martin Tournoij
b0880df695
Execute in the current tab, and not the first one
2015-06-05 23:29:38 +02:00
Martin Tournoij
94178c558a
Well, getting the error doesn't work...
2015-06-05 20:09:19 +02:00
Martin Tournoij
463e85ff5d
Add referer-header setting, #712
2015-06-05 18:00:21 +02:00
Florian Bruhin
5fb23f1373
Also migrate older search calls.
2015-06-05 17:45:38 +02:00
Martin Tournoij
dfada850e0
Update code after refactor, and add migration
2015-06-05 16:52:33 +02:00
Martin Tournoij
a7b10a090f
Merge branch 'master' into issue-716
2015-06-05 16:45:52 +02:00
Martin Tournoij
fc4c7bd2e4
Merge the cookies-accept and third-party-cookie-policy settings
2015-06-05 16:20:50 +02:00
Lamar Pavel
402aa66756
Merge branch 'master' of github.com:The-Compiler/qutebrowser
2015-06-05 16:10:55 +02:00
Florian Bruhin
b55e22b5c3
Refactor key mode/parser handling in modeman.
2015-06-05 15:29:09 +02:00
Martin Tournoij
fa65f345ac
Perhaps fix it more properly after all :-)
2015-06-05 15:19:40 +02:00
Martin Tournoij
57ddd8e95e
Always handle the <Esc> key, even if it's bound.
...
This fixes #716 , which sufficiently annoyed me to make this quick fix. It's not
a great fix, but it's not worse than what we had already, and the current
behaviour is very surprising IMHO.
2015-06-05 14:26:17 +02:00
Florian Bruhin
728f06e797
Close context menu if another mode was entered.
...
Fixes #735 .
2015-06-05 11:15:22 +02:00
Florian Bruhin
7102459c81
Rename _get_modeman() to instance().
2015-06-05 11:15:18 +02:00
Florian Bruhin
622938e3d3
Fix completion performance with shrink=True.
...
Before, the completion was shrinked every time any item was removed/added to
the completion (rowsRemoved/rowsInserted signals), which was >3000 times when
completing history.
Also, the signals got connected multiple times if setting the same model, which
made the situation worse.
Fixes #734 .
2015-06-05 07:16:33 +02:00
Florian Bruhin
c907572557
Merge branch 'yank-domain' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-yank-domain
2015-06-05 06:38:22 +02:00
Florian Bruhin
9ec6e6da80
Fix exit status codes to be 0-based.
2015-06-04 15:13:20 +02:00
Martin Tournoij
d60d4d756c
Also yank port number
2015-06-04 13:20:39 +02:00
Martin Tournoij
0132bea42b
Add --domain to yank to yank only the domain
...
... As I want to copy only the domain fairly frequently.
I also changed the message in the statusline to show the actual text being
copied, which I find helpful. But if you disagree, then just undo it (it's not
that important or anything).
2015-06-04 12:20:43 +02:00
Antoni Boucher
8b14145a4d
Fixed style.
2015-06-03 19:31:31 -04:00
Martin Tournoij
78e159cb27
Add referer-header settng, #712
2015-06-04 01:26:00 +02:00
Martin Tournoij
472071c047
Add setting: 'content.third-party-cookie-policy', fixes #607
...
This sets the third-party cookie policy.
- I created a new ThirdPartyCookiePolicy() class, since this setting seems to be
unique in the way it is set...
- I set the default to 'never', which is the most secure/private setting, but
*may* break *some* features of a (very) limited number of sites; these are
usually "non-critical" features.
For example, on Stack Exchange sites you're logged in all 200+ sites if you
sign in on one of them, this features required 3rd party cookies. You can
still sign in with out, but you have to do so 200+ times (this is actually the
only example I've ever noticed).
AFAIK all "major" browsers accept 3rd-party cookies by default, except for
Safari. Firefox also made this change, but reversed it (see:
https://brendaneich.com/2013/05/c-is-for-cookie/ ), but they don't offer any
good arguments to *not* have it IMHO, at least not that I could find.
In any case, in my humble opinion "secure and private by default" is the best
way to ship. But you're of course free to change it if you disagree ;-)
2015-06-04 00:26:39 +02:00
Martin Tournoij
85eea17b18
Try to get the error ... not sure about this ...
...
source is undefined when you type stuff in the console, I *think* this is the
only scenario? But maybe not?
<script>
setInterval(function() {
if (window.__qute_jseval__) {
throw new Error('jseval hack failed. Sorry :-( ' + window.__qute_jseval__);
}
}, 1);
</script>
2015-06-03 22:31:15 +02:00
Florian Bruhin
e780efb3d9
Handle javascript in qute:settings more gracefully.
...
Fixes #727 .
2015-06-03 15:03:04 +02:00
Austin Anderson
4d141f489f
Added pylint workaround directive to quash rebellion.
2015-06-03 08:42:13 -04:00
Florian Bruhin
36803cba06
Switch from flake8 to pytest-{mccabe,flakes,pep8}.
2015-06-02 20:51:06 +02:00
Antoni Boucher
f1874ff44f
Added possibility to remove bookmarks and quickmarks.
2015-06-01 20:00:21 -04:00
Antoni Boucher
c8bbef0ab0
Fixed bookmark command name in config.
2015-06-01 19:49:32 -04:00
Antoni Boucher
5085844550
Added highlighting for completion in name column.
2015-06-01 17:55:09 -04:00
Antoni Boucher
9582162927
Fixed bookmarks command names.
2015-06-01 17:52:23 -04:00
Florian Bruhin
d8e58b5886
Fix some typos.
2015-06-01 22:45:40 +02:00
Florian Bruhin
1bf036d1ba
Add setting for the webpage bg color to use.
...
Fixes #719 .
2015-06-01 22:27:15 +02:00
Martin Tournoij
e22ef776f9
Fix crash when executing "qutebrowser :set".
...
Fixes #720 .
See #721 .
2015-06-01 19:04:21 +02:00
Florian Bruhin
b5a70dbdec
Spelling fix.
2015-06-01 13:43:40 +02:00
Florian Bruhin
6c2fe3417e
Accept numpad-enter as return in default bindings.
...
See https://bbs.archlinux.org/viewtopic.php?pid=1523326#p1523326
2015-06-01 13:39:13 +02:00
Florian Bruhin
f1c0781a4c
Use sip.SIP_VERSION_STR to get sip version.
2015-06-01 09:09:10 +02:00
Antoni Boucher
1698c60124
Merge remote-tracking branch 'upstream/master'
2015-05-31 15:59:46 -04:00
Florian Bruhin
e7619477cd
Rename _frame argument to frame.
...
_foo is used to denote unused arguments, so renaming this as it's now used.
2015-05-31 21:40:19 +02:00
Florian Bruhin
018d7a87be
Merge branch 'modal-js-dialogs' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-modal-js-dialogs
2015-05-31 21:39:47 +02:00
Martin Tournoij
4204a8de9a
Add ui.modal-js-dialog to restore the default JS dialogs
2015-05-31 21:32:16 +02:00
Florian Bruhin
4c8b1be19c
Merge branch 'issue-401' of https://github.com/antoyo/qutebrowser into antoyo-issue-401
2015-05-31 19:46:17 +02:00
Antoni Boucher
3d0721afea
Fixed error messages.
2015-05-31 12:56:08 -04:00
Antoni Boucher
27cbe618f0
Added hasSelection check before trying to click on a selected link.
2015-05-31 12:53:14 -04:00
Antoni Boucher
c0b6aef774
Fixed command name.
2015-05-31 12:50:28 -04:00
Antoni Boucher
d0eda3336c
Added a page variable.
2015-05-31 12:18:27 -04:00
Antoni Boucher
1cd64481de
Fixed for relative url.
2015-05-31 12:13:37 -04:00
Antoni Boucher
87e9888167
Added exception handling for href attribute.
2015-05-31 12:07:08 -04:00
Antoni Boucher
c5c145320c
Fixed exception handling in select_follow command.
2015-05-31 12:02:15 -04:00
Antoni Boucher
4ff9d585ea
Fixed to use qualified import.
2015-05-31 11:56:27 -04:00
Florian Bruhin
54c1cd7c05
Add link to issue.
2015-05-31 15:11:37 +02:00
Florian Bruhin
6b550defae
scroll-page: Add custom metavar for navigate-*.
2015-05-31 15:10:35 +02:00
Florian Bruhin
cdde1d7dfc
command: Add support for custom metavar for docs.
2015-05-31 15:10:12 +02:00
Florian Bruhin
11b258568d
Improve docstring.
2015-05-31 15:02:09 +02:00
Florian Bruhin
5b3ffa2419
Merge branch 'scroll_page_navigate' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-scroll_page_navigate
2015-05-31 14:59:22 +02:00
Lamar Pavel
b0bd8170e0
Merge branch 'master' of github.com:The-Compiler/qutebrowser
2015-05-31 10:34:30 +02:00
Florian Bruhin
81345eb17e
Hide some QXcbWindow warnings.
2015-05-31 00:11:33 +02:00
Antoni Boucher
b1f8a70c02
Added try/except for parse error.
2015-05-30 18:03:39 -04:00
Florian Bruhin
3879b8301f
Remove unneeded int().
...
See #706 .
2015-05-30 22:51:00 +02:00
Florian Bruhin
5b891ecaca
Merge branch 'issue-401' of https://github.com/Carpetsmoker/qutebrowser into Carpetsmoker-issue-401
2015-05-30 22:48:11 +02:00
Martin Tournoij
4dc54f881c
Give a better error when wrapping on search
...
Previously, it just said "Text not found" when you hit the bottom.
2015-05-30 22:07:32 +02:00
Austin Anderson
5c599879f8
Fixed a line-length error.
2015-05-30 16:03:36 -04:00
Austin Anderson
b59dc8e89b
Merge branch 'master' into more-color-settings
2015-05-30 15:56:11 -04:00
Austin Anderson
fed2cdad4e
Cleaned up download configuration options.
2015-05-30 15:22:00 -04:00
Austin Anderson
7b5d2ace24
Added assertion for parameterized download color picker.
2015-05-30 15:21:34 -04:00
Antoni Boucher
989e3b7291
Added a fallback for when JavaScript is disabled.
2015-05-30 13:56:36 -04:00
Florian Bruhin
b1dd649278
Replace _ by - in command flag names.
...
See #698 .
2015-05-30 19:30:08 +02:00
Antoni Boucher
a56a14fb70
Added the possibility to open a selected link in a new tab.
2015-05-30 13:15:53 -04:00
Antoni Boucher
e92c493b07
Fixed bug making the application crash.
2015-05-30 12:37:21 -04:00
Antoni Boucher
6ca541d359
Fixed issue #401 .
2015-05-30 10:37:25 -04:00
Martin Tournoij
70956aaeca
oops
2015-05-29 23:57:57 +02:00
Martin Tournoij
9c99c22f1b
Fix issue #701
2015-05-29 23:49:48 +02:00
Martin Tournoij
8c80f99a32
Improve navigate option to scroll_page()
2015-05-29 21:18:44 +02:00
Martin Tournoij
c1dadeff6f
Fix silly mistake...
2015-05-29 20:48:43 +02:00
Martin Tournoij
27fdf4903a
Implement :jseval (Issue #334 )
...
TODO:
- Tests
- Doesn't show errors
2015-05-29 18:36:39 +02:00
Martin Tournoij
c7dcaff025
Add navigate option to scroll_page()
...
So you can scroll down & navigate when you're at the bottom.
To bind this to space:
scroll-page 0 1 next
<Space>
Not sure if it's a good idea to bind this by default? May surprise some
people...
See #696
2015-05-29 18:35:15 +02:00
Martin Tournoij
f7b517f3aa
Revert some accidental changes >_<
2015-05-29 17:08:01 +02:00
Martin Tournoij
d20872d576
Fix feedback from #690
2015-05-29 14:50:15 +02:00
Martin Tournoij
c76221c14e
Use a specific 'qutebrowser_editor_' prefix for <C-e> instead of 'tmp'.
...
Why does this matter? In my vimrc I have this:
" When using dwb <C-e>; assume markdown, and don't store in viminfo since these are
" temporary files
autocmd BufRead,BufNewFile /home/martin/.cache/dwb/edit* setlocal ft=markdown viminfo=
I would like to do the same with qutebrowser, but this is not possible with a
file name like '/tmp/tmpSJsgSG4'
2015-05-29 02:07:20 +02:00
Antoni Boucher
cbc4ec6531
Added filter bookmarks by name as well as url.
2015-05-28 19:55:29 -04:00
Lamar Pavel
63c9e6a444
Another indentation-related fix
2015-05-28 13:20:00 +02:00
Lamar Pavel
f5d299d8c7
Fix intents
2015-05-28 13:05:12 +02:00
Lamar Pavel
b5eea81e2e
Fix File.validate and corresponding tests
...
There were no tests regarding the return value of standarddir.config() and thus
it wasn't caught that it returned None in some cases. This is now fixed by
checking the return of standdarddir.config before calling it and modifying the
corresponding test_validate_exists_rel as well as adding a new
test_validate_rel_config_none.
2015-05-28 12:14:12 +02:00
Lamar Pavel
4851a3d442
Replace isabs with exists in transform
...
In UserStyleSheet.transform os.path.isabs was replaced with os.path.exists, a
more fitting condition. Accordingly two test cases needed to include mocks for
os.path.exists and QUrl.fromLocalFile.
2015-05-27 15:39:58 +02:00
Lamar Pavel
e12dce9d55
Include expandvars in File.transform, adjust test
2015-05-27 14:40:07 +02:00
Lamar Pavel
f326fa28a6
Merge branch 'master' into relapaths
...
Sync with upstream/master before creating a pull request
2015-05-27 11:57:13 +02:00
Florian Bruhin
6452c8f883
PyQIODevice: Add context manager support.
2015-05-26 20:57:11 +02:00
Florian Bruhin
b8dd71a343
PyQIODevice: Add .open()/.close().
2015-05-26 20:57:11 +02:00
Florian Bruhin
460308f388
PyQIODevice: Don't use errorString for failed seek.
2015-05-26 20:57:11 +02:00
Florian Bruhin
6a26bc23ab
PyQIODevice: Remove unneeded check.
2015-05-26 20:57:11 +02:00
Florian Bruhin
48de8b145b
PyQIODevice: Properly fix read/readLine.
2015-05-26 20:57:01 +02:00
Florian Bruhin
0788054dd3
PyQIODevice: Expose underlying device.
2015-05-26 20:57:01 +02:00
Florian Bruhin
b2d763f993
PyQIODevice: Check if device is readable/writable.
2015-05-26 20:57:01 +02:00
Florian Bruhin
35f0b26f4a
PyQIODevice: Remove readinto().
...
Our implementation was broken, and the BufferedIOBase mixin does a better job
at doing this.
2015-05-26 20:57:01 +02:00
Florian Bruhin
ba9c782824
PyQIODevice: First attempt at fixing read().
...
This was completely broken because one read overload doesn't exist in PyQt and
apparently it was never tested...
2015-05-26 20:56:51 +02:00
Florian Bruhin
fa69786b0f
PyQIODevice: Raise ValueError when closed.
2015-05-26 20:49:58 +02:00
Florian Bruhin
e10da78a1a
urlutils: Remove some more dead code.
2015-05-26 20:49:43 +02:00
Florian Bruhin
27e82ce6c8
Improve exception handling in qsavefile_open.
...
Sometimes exceptions were shadowed with new exceptions because of the file
flushing.
2015-05-26 19:25:05 +02:00
Lamar Pavel
f1129460d8
Class File now validates relative paths
...
The code from function validate in class UserStyleSheet has been migrated to
class File. One test had to be modified due to different expected behaviour.
2015-05-26 13:54:27 +02:00
Lamar Pavel
c54c637ccc
Class File not transforms relative paths
...
The code from function transform in class UserStyleSheet is now migrated to
class File.
2015-05-26 12:38:04 +02:00
Tobias Patzl
b858b6ac75
call e.ignore()
when the event is not handled
2015-05-26 10:24:32 +02:00
Austin Anderson
a8d2dbfdfb
Added downloads bar fg customization, and refactored the download's color-picking.
2015-05-25 20:47:16 -04:00
Austin Anderson
0553094494
Added explanation of *.system values to settings page.
2015-05-25 19:20:33 -04:00
Tobias Patzl
61519e6383
move part of the logic to TabbedBrowser
2015-05-25 20:21:37 +02:00
Tobias Patzl
45dea54e3c
Add setting to disable mousewheel tab switching.
...
See #374 .
2015-05-25 15:23:14 +02:00
Florian Bruhin
a345b02729
Fix exception when downloading links without name.
...
We also set a default name to prevent "is a directory" errors.
This is a regression introduced in 8f33fcfc52cf598d0aa11a347992c87010d3e37a.
Fixes #682 .
2015-05-25 11:28:50 +02:00
Antoni Boucher
ad763685e5
Added bookmark command default key binding.
2015-05-24 19:26:23 -04:00
Florian Bruhin
120d2e12b0
Improve QtValueError wording for ensure_not_null.
2015-05-25 01:21:57 +02:00
Antoni Boucher
ece32e930c
Added bookmarks command.
2015-05-24 19:18:40 -04:00
Florian Bruhin
8d15bbdded
utils.version: Add SIP line on ImportError.
2015-05-24 21:00:46 +02:00
Antoni Boucher
aaf35536a7
Removed unused commands and renamed bookmark-save command.
2015-05-23 16:02:02 -04:00
Antoni Boucher
0ee7e40e69
Fixed broken quickmarks completion.
2015-05-23 15:57:52 -04:00
Lamar Pavel
ad7920dda1
Fix bug; all tox tests succeed
...
My logic in the validate function of class UserStyleSheet was faulty and
caused the check for encoding to be skipped. This is now fixed and all
tests run successfully.
2015-05-23 16:49:40 +02:00
Lamar Pavel
93b92f4aab
Fix tox failure regarding exceptions in transform
...
Function transform is not supposed to raise exceptions, so I wrapped the
call to os.path.join in an if-clause to test if standarddir.config
returns a valid value.
2015-05-23 16:09:44 +02:00
Lamar Pavel
61f32b3e9b
Revert some changes, trying to get rid of the tox failures
2015-05-22 18:40:56 +02:00
Lamar Pavel
14ba20670b
Fix potential bug with missing path-expansion
...
The last commit removed two lines in function validate of class
UserStyleSheet that were expanding the path. As it turns out those two
lines are needed by validate as well as transform, so I outsourced them
to the function they both call at that point.
2015-05-22 17:31:37 +02:00
Lamar Pavel
29b25206f6
Fix UserStyleSheet, roll back File
...
The former version of UserStyleSheet never actually loaded the css file,
this is now fixed. The changes to class File were rolled back as its
functions are overloaded by UserStyleSheet; a general solution in
classes File and Directory can be implemented when the changes in
UserStyleSheet meet the expectation.
2015-05-22 17:21:00 +02:00
Lamar Pavel
58f031630c
user-stylesheet can be read from relative paths
...
This ist just a first draft to approach issue622
(https://github.com/The-Compiler/qutebrowser/issues/622 ) and my very
first babysteps with python.
With this change it is possible to set a user-stylesheet with a relative
path, eg.:
:set ui user-stylesheet mystyle.css
where mystyle.css is in the ~/.config/qutebrowser/.
2015-05-22 14:44:04 +02:00
Antoni Boucher
2c0c2e220e
Fixed style issue.
2015-05-21 19:38:30 -04:00
Antoni Boucher
28caf45707
First version of bookmarks.
2015-05-21 18:17:22 -04:00
Florian Bruhin
aaab05793e
urlutils: Handle localhost correctly in all cases.
2015-05-20 13:36:40 +02:00
Florian Bruhin
ddb6743b26
urlutils: Clean up qurl_from_user_input in is_url.
2015-05-20 13:36:40 +02:00
Florian Bruhin
269676318b
urlutils: Raise exception on errors in host_tuple.
2015-05-20 13:36:40 +02:00
Florian Bruhin
6f904759b5
urlutils: Fix str() of FuzzyUrlError.
2015-05-20 13:36:40 +02:00
Florian Bruhin
f8db4b8147
urlutils: Improve debug logging.
2015-05-20 13:36:40 +02:00
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
Florian Bruhin
3ba202d467
Fix config breakage because of deleted option.
2015-01-09 14:38:20 +01:00
Florian Bruhin
8fb1a887db
Remove old colors->tabs.separator option.
2015-01-09 14:19:04 +01:00
Florian Bruhin
5947994479
Fix error handling for local files in :adblock-update
2015-01-09 06:53:00 +01:00
Florian Bruhin
5fc900a1cb
Merge branch 'master' of https://github.com/balanceofcowards/qutebrowser into balanceofcowards-master
2015-01-08 23:09:58 +01:00
Florian Bruhin
c4b4027104
Merge branch 'show-default-value' of https://github.com/peterlvilim/qutebrowser into peterlvilim-show-default-value
2015-01-08 23:04:35 +01:00
Peter Vilim
14afb3ef14
show-default-value: update heading
2015-01-08 12:52:21 -06:00
binix
8c7a7aaf20
Stop the icon database from being created when private-browsing is set to true
2015-01-08 17:09:55 +00:00
Andreas Fischer
34c9a73e32
Fix bug #399 (crashes on systems with pyqt < 5.3)
...
Crash occurs in usertypes.py / Question class due to Python slots
being called on deleted Qt objects. This causes either a TypeError or
an AttributeError (probably depending on the state of the deleted Qt
object?).
Fixed by declaring slots in the Question object explicitly via
decorator "@pyqtSlot()".
Possible further TODOs:
- Find out whether this is a problem for slots in other objects as
well.
- Create unittest for this bug (might me somewhat tricky, though).
2015-01-08 09:52:53 +01:00
Peter Vilim
eba4b58a7c
Show default config value in completion
2015-01-07 18:16:59 -06:00
Florian Bruhin
b12b83f98c
Hide 2 more Qt warnings.
2015-01-07 06:59:48 +01:00
Florian Bruhin
75ac9cce49
Use Esc in normal mode to clear search highlights.
2015-01-06 18:46:44 +01:00
Florian Bruhin
77df4c7241
Add !important to all hint properties.
2015-01-06 17:10:54 +01:00
Error 800
82ee78b3db
Added !important to hint styles
...
Prevents websites from overriding hint styles
2015-01-06 16:23:45 +01:00
Error 800
c4619874e6
Merge remote-tracking branch 'upstream/master'
2015-01-06 16:20:35 +01:00
Error 800
c008ee8dd7
Added !important to hint styles
...
Prevents websites from overriding hint styles
2015-01-06 16:13:28 +01:00
Florian Bruhin
dda54a2cc9
Merge branch 'download-quit-confirm' of https://github.com/peterlvilim/qutebrowser into peterlvilim-download-quit-confirm
2015-01-06 11:28:16 +01:00
Peter Vilim
5c37d4a19d
fix line lengths
2015-01-06 04:14:41 -06:00
Peter Vilim
f828e554f7
misc fixes
2015-01-06 04:03:21 -06:00
Florian Bruhin
46396cce1e
Fix maxsplit-splitting with empty args (""/'').
...
Fixes #453 .
2015-01-06 10:00:28 +01:00
Peter Vilim
dfa276a20c
backward compatibility, space, combinations
2015-01-05 22:41:42 -06:00
Florian Bruhin
e339b0cef9
Fix missing whitespace.
2015-01-05 18:56:09 +01:00
Florian Bruhin
85c89305a7
Merge branch 'master' of https://github.com/thiagowfx/qutebrowser into thiagowfx-master
2015-01-05 18:47:16 +01:00
Florian Bruhin
60874aad28
Merge branch 'master' of https://github.com/error800/qutebrowser into error800-master
2015-01-05 18:38:54 +01:00
Error 800
ce5629eab3
Fixed uppercase hints option
...
Corrected CSS property from 'texttransform' to 'text-transform'
2015-01-05 16:20:45 +01:00
Peter Vilim
0305dedbfb
Use multiple lines for quit messages
2015-01-05 01:01:22 -06:00
Thiago Barroso Perrotta
94ea35c9e8
add g[tT] for cycling through tabs (LuaKit/vim like)
2015-01-05 01:57:10 -02:00
Florian Bruhin
ff0c845c50
Uncheck sending of debug log with private browsing.
...
Fixes #436 .
2015-01-04 20:41:35 +01:00
Florian Bruhin
efe96462c9
Pass more useful information to userscripts.
...
Closes #379 .
2015-01-04 20:16:15 +01:00
Florian Bruhin
013f906c3b
hints: Small cleanup (add _show_url_error method).
2015-01-04 20:15:45 +01:00
Florian Bruhin
b8a04f5309
Don't raise CommandError in TabbedBrowser.current_url.
...
TabbedBrowser.current_url used to process the qtutils.QtValueError exception
and raise a cmdexc.CommandError based on it. While this was useful for some
callers, it made handling it in others weird, and it doesn't really belong
there - so now the caller handles this.
2015-01-04 20:13:25 +01:00
Florian Bruhin
04c8a17b2e
Merge branch 'userscript-runner'
2015-01-04 15:21:31 +01:00
Florian Bruhin
f64269c57a
Add qutebrowser- to FIFO name.
2015-01-04 14:53:00 +01:00
Florian Bruhin
b1b1cecdb7
Add some more logging
2015-01-04 14:51:50 +01:00
Florian Bruhin
ecc7f09f86
Use QSocketNotifier for userscripts.
2015-01-04 14:36:59 +01:00
Florian Bruhin
6d8bffe405
Merge branch 'master' of https://github.com/ml-/qutebrowser into ml--master
2015-01-04 13:35:50 +01:00
Florian Bruhin
e0483363aa
Add a test making sure the default config is valid.
...
See #438 , #439 , #440 , #441 .
2015-01-04 13:34:05 +01:00
Peter Vilim
8a3aca63b0
Confirm quit if downloads running
2015-01-04 04:35:27 -06:00
Matthias Lisin
2814456586
Commas are awesome
...
Fixes #438
Fixes #439
2015-01-04 02:02:26 +01:00
Florian Bruhin
2203db298d
Abort blocking questions when new page is loaded.
...
Fixes #430 .
Fixes #431 .
Hopefully fixes #354 .
Hopefully fixes #434 .
2015-01-03 22:21:47 +01:00
Florian Bruhin
f811f511fa
Use self._win_id in QNetworkManager._ask.
2015-01-03 22:04:56 +01:00
Florian Bruhin
9521d253a1
Fix validation of ShellCommand config type.
...
Fixes #432 .
2015-01-03 21:19:43 +01:00
Florian Bruhin
e54d3c21ee
Add SSL info to version info.
2015-01-03 18:19:16 +01:00
Florian Bruhin
7dbbfedd3b
Replace unencodable chars in download filenames.
...
Fixes #427 .
2015-01-03 17:50:59 +01:00
Florian Bruhin
450d1ab70d
Update copyright years
2015-01-03 15:51:31 +01:00
Florian Bruhin
e30f79981d
Merge branch 'search' of https://github.com/krobelus/qutebrowser into krobelus-search
2015-01-01 19:15:02 +01:00
Florian Bruhin
a5ce9571ff
Remove hosts-file.net from blocker default lists.
2015-01-01 19:14:45 +01:00
Florian Bruhin
56d844aff8
Fix user-stylesheet setting with an empty value.
2014-12-30 00:56:53 +01:00
Johannes Altmanninger
8b69f9b62c
Registered 'search' as command.
...
Fixes #421 .
2014-12-29 22:45:26 +01:00
Florian Bruhin
4471f81c11
Expand ~ to home dir with :run-userscript.
2014-12-29 22:17:58 +01:00
Florian Bruhin
0cd0f97587
Call triggerAction on page, not view.
2014-12-29 22:12:09 +01:00
Florian Bruhin
0ea25c6ef0
Add missing imports
2014-12-29 22:04:09 +01:00
HalosGhost
0a1fa87ac9
Add -f option to reload
2014-12-29 22:03:54 +01:00
Florian Bruhin
ad6065605a
Merge branch 'master' of https://github.com/oed/qutebrowser into oed-master
2014-12-29 21:58:51 +01:00
Florian Bruhin
f96cf6fe27
Release v0.1.1
2014-12-28 22:47:23 +01:00
Florian Bruhin
bb1a1b80aa
Fix setting of QWebSettings with empty strings.
2014-12-28 22:44:40 +01:00
Florian Bruhin
b703028411
Clean up and temporarily disable alias completion.
...
Fixes #358 .
2014-12-28 22:08:38 +01:00
Florian Bruhin
d1d6fb3dce
Use Qt resources for the window icon.
2014-12-28 15:10:02 +01:00
Florian Bruhin
f1435ce51f
Use a dirty hack to copy icon files into package.
...
See #325 .
2014-12-28 14:50:25 +01:00
Florian Bruhin
2a4e884e1b
Set window icon. Closes #325 .
2014-12-28 14:35:28 +01:00
Florian Bruhin
ed253f23c6
Pass window id to DownloadItem.
2014-12-28 02:00:31 +01:00
Florian Bruhin
60cc70151c
Merge branch 'prevent_downloading_existing_file' of https://github.com/oed/qutebrowser into oed-prevent_downloading_existing_file
2014-12-28 01:57:14 +01:00
Florian Bruhin
73d08cb60c
Fix mode handling with multiple javascript prompts.
...
This fixes a regression introduced in 03ac8874ff
.
2014-12-28 01:28:35 +01:00
Florian Bruhin
177707687c
Display IPC errors to the user.
...
Fixes #337 .
2014-12-28 01:28:35 +01:00
Florian Bruhin
89c7f3ecfe
Re-focus web view when leaving prompt/yesno mode.
2014-12-28 00:41:50 +01:00
Florian Bruhin
03ac8874ff
Rewrite keymode handling to use only one mode.
...
Fixes #417 .
Fixes #418 .
See 4ab5d2df28
.
2014-12-28 00:01:27 +01:00
Florian Bruhin
be2c67aa19
Don't filter completion parts if there's only one.
...
This fixes a regression (completion not showing with :) introduced in
b1501a691d
.
2014-12-27 22:50:28 +01:00
Joel Torstensson
6c6ae4e465
Refactored question logic.
2014-12-27 00:50:52 +01:00
Joel Torstensson
f0779f8cc0
User now asked if it wants to overwrite existing file.
...
Fix #318
2014-12-26 21:58:45 +01:00
Florian Bruhin
b1501a691d
Ignore empty parts when calculating cursor part.
...
Fixes #389 .
2014-12-26 16:57:08 +01:00
Florian Bruhin
d1e0de236d
Handle :restart correctly with Python eggs.
...
Fixes #323 .
2014-12-26 15:37:25 +01:00
Florian Bruhin
d029044787
Log full exception on restart errors.
2014-12-26 15:37:25 +01:00
Florian Bruhin
769bc65343
Fix name collision.
2014-12-26 15:09:27 +01:00
Florian Bruhin
bf4d6a5707
Handle an invalid cwd properly.
...
Fixes #370 .
2014-12-26 15:07:18 +01:00
Florian Bruhin
dec6842370
Remove unnecessary if-branch in fuzzy_url.
...
The first branch already checks for `os.path.exists(path)`, so it doesn't make
sense for the second one to check that again (ANDed with some other condition).
2014-12-26 15:03:30 +01:00
Florian Bruhin
4ab5d2df28
Make it possible to enter a keymode twice.
...
If we don't allow this, we can get stuck e.g. when doing this:
- Press m to get a quickmark prompt.
- Click a javascript prompt button.
- Exit the javascript prompt.
- We have the quickmark prompt open but we're in normal mode.
2014-12-26 14:26:59 +01:00
Florian Bruhin
7c86693dd4
Disable report button in crash dialog on :report.
2014-12-26 13:03:47 +01:00
Florian Bruhin
0c6af7a5f3
Move debug log to bottom in crash dialog.
...
Closes #365 .
2014-12-26 13:01:19 +01:00
Florian Bruhin
4a632f85e0
Add a warning for manual edits to the config.
...
Closes #373 .
2014-12-26 12:49:38 +01:00
Florian Bruhin
0c5aed284b
Fix popping of a dead question in prompter.
...
This happens when a question for a file path for an already cancelled download
gets popped.
Fixes #415 .
2014-12-26 12:46:53 +01:00
Florian Bruhin
5d0dd5b11b
Fix AttributeError on config changes on Ubuntu.
...
Fixes #390 .
2014-12-26 12:25:42 +01:00
Florian Bruhin
bececc69c3
Save version to state config.
2014-12-22 23:47:43 +01:00
Florian Bruhin
017f143a5f
Add a binary mode to utils.read_file.
...
This will be needed for #325 .
2014-12-22 23:44:09 +01:00
Joel Torstensson
8746715bf0
Moved fullscreen method.
2014-12-22 22:56:52 +01:00
Joel Torstensson
19f75984e3
Implemented fullscreen mode. Fix #385
2014-12-22 21:57:46 +01:00
Florian Bruhin
4363db90c0
Don't treat things like "31c3" as IP address.
...
Fixes #388 .
2014-12-22 18:38:45 +01:00
Florian Bruhin
b01041e455
Set zoom to default instead of 100% with :zoom/=.
2014-12-22 18:04:28 +01:00
Florian Bruhin
f50a19a488
Adjust page zoom if default zoom changed.
...
Fixes #393 .
2014-12-22 18:01:32 +01:00
Florian Bruhin
3752733f15
Actually connect QWebView.on_config_changed slot.
2014-12-22 18:01:17 +01:00
Florian Bruhin
89e051ff51
Ignore clicks on failed downloads.
...
Fixes #396 .
2014-12-22 17:36:02 +01:00
Florian Bruhin
57c8dff396
Handle category being None in Qt message handler.
...
Fixes #397 .
2014-12-22 17:33:35 +01:00
Florian Bruhin
58c991145c
Revert "Use scrollRequested signal instead of paintEvent."
...
It seems on some pages like Twitter or blog.fdik.org, the
QWebPage::scrollRequested signal never gets emitted, so we use this for now.
Fixes #400 .
See https://bugreports.qt-project.org/browse/QTBUG-43521 .
This reverts commit 03fb21c476
.
Conflicts:
qutebrowser/browser/webview.py
2014-12-22 17:20:43 +01:00
Florian Bruhin
2d1c12f69b
Turn off flake8 for exception hook.
2014-12-21 18:11:35 +01:00
Florian Bruhin
877d814815
Clean up _get_window_registry.
2014-12-21 14:13:40 +01:00
Florian Bruhin
42890b8a7f
Force tabs to be focused on :undo.
...
Closes #394 .
2014-12-21 13:06:24 +01:00
Florian Bruhin
ef9ddb2d5f
Encode Content-Disposition header name properly.
...
PyQt <= 5.3 accepted a Python string containing only latin1 chars as argument
for a QByteArray. This is deprecated in 5.4 and will be removed in 5.5 so we
should encode it by hand here.
2014-12-18 23:24:50 +01:00
Florian Bruhin
05e835684d
Fix item sorting in NeighborList.
...
See #361 .
2014-12-18 23:20:38 +01:00
Florian Bruhin
07957b105d
Handle data being None in download read timer.
...
Fixes #307 .
2014-12-18 23:09:33 +01:00
Florian Bruhin
5c15f56213
Stop download read timer when reply has finished.
...
See #307 .
2014-12-18 23:08:19 +01:00
Florian Bruhin
29ce0a5157
Fix handling of small/big fuzzyval's in NeighborList.
...
This fixes an exception when having a really big or small zoom (e.g. 0) and
then using +/-.
Fixes #361 .
2014-12-18 23:04:43 +01:00
Florian Bruhin
410d78cfa2
Add missing configexc.py file.
...
I forgot to add this in 512d7c4448b0610bc133d83d8280a94469841968...
2014-12-17 13:49:50 +01:00
Florian Bruhin
3cc1134e82
Fix AttributeError on HTTP/proxy authentications.
...
This is a regression introduced in cafb487ac9
.
Fixes #355 .
See #333 .
2014-12-17 13:40:15 +01:00
Florian Bruhin
a714f0b70c
config: Set self._initialized before validating.
...
With a setting with an interpolation this caused a ValueError because
validate_all called get before self._initialized was True.
2014-12-17 13:40:15 +01:00
Florian Bruhin
512d7c4448
Simplify config exception tree and handling.
...
Also make sure we catch all config-related errors in all related places.
Fixes #324 .
2014-12-17 11:17:18 +01:00
Florian Bruhin
655ab31d48
Add a network -> proxy-dns-requests option.
...
Closes #330 .
2014-12-16 23:27:55 +01:00
Florian Bruhin
cafb487ac9
Abort questions in NetworkManager on destroyed.
...
Hopefully fixes #333 .
2014-12-16 17:22:01 +01:00
Florian Bruhin
676313e7ae
Fix indent.
2014-12-16 15:09:47 +01:00
Florian Bruhin
05e6515aad
Allow min-/maximizing of print preview on Windows.
...
Fixes #327 .
2014-12-16 15:08:28 +01:00
Florian Bruhin
965a1256a3
Add "Remove finished" to the download context menu
...
Closes #344 .
2014-12-16 14:30:47 +01:00
Florian Bruhin
ed013ac3cf
Simplify generating of download context menu.
2014-12-16 14:10:25 +01:00
Florian Bruhin
e0271eff34
Open and remove clicked downloads.
...
Fixes #343 .
2014-12-16 14:02:01 +01:00
Florian Bruhin
888a17b7c3
Fix height calculation of download view.
2014-12-16 13:53:54 +01:00
Florian Bruhin
b899d8b44d
Always auto-remove adblock downloads when done.
...
Fixes #342 .
2014-12-16 13:44:09 +01:00
Florian Bruhin
efd632ea73
Preserve arguments when re-splitting with aliases.
...
Fixes #339 .
2014-12-15 23:06:42 +01:00
Florian Bruhin
512e51eeb4
Fix type annotation for :zoom. Fixes #332 .
2014-12-15 22:59:45 +01:00
Florian Bruhin
0d9c7049b6
Clean up ConfigManager._from_cp.
2014-12-15 22:25:06 +01:00
Florian Bruhin
3c68506665
Fix sect/opt in config validation error message.
...
This is a regression introduced in 0c1420112c
.
See #202 .
2014-12-15 22:08:33 +01:00
Florian Bruhin
1d2016d3a5
Add some tests for config loading.
...
This would have prevented the issue in
e87b3fd568
.
2014-12-15 22:06:11 +01:00
Florian Bruhin
d84c4fab84
Remove old comment.
2014-12-15 21:49:48 +01:00
Florian Bruhin
b7dcf34e67
Release v0.1
2014-12-14 20:46:32 +01:00
Florian Bruhin
e87b3fd568
Fix loading of renamed config sections.
2014-12-14 20:46:32 +01:00
Florian Bruhin
ba9bb0e418
Fix updating of scroll position with gg/G/etc.
2014-12-14 16:44:18 +01:00
Florian Bruhin
b7dc2e1bc6
Allow non-ASCII chars in keychains. Fixes #303 .
2014-12-13 21:03:33 +01:00
Florian Bruhin
06ec1a3885
Big file tree reorganisation.
...
Closes #255 .
Should make a lot more sense now ;)
2014-12-13 17:28:50 +01:00
Florian Bruhin
67001665a2
Cleanups in hint.py.
2014-12-13 00:30:35 +01:00
Johannes Altmanninger
d0bed460eb
Hints: Use the src html attribute in addition to href in _resolve_url.
...
See issue #286
2014-12-12 18:40:12 +01:00
Johannes Altmanninger
582e3e57e9
Add hint target 'run' to execute a command based on a hint URL.
...
Fixes Issue #285 .
The command is not preceded by a colon because there is no need to
distinguish between a search and a command.
2014-12-12 18:17:58 +01:00
Florian Bruhin
eceda53b3a
Fix split tests.
2014-12-12 17:45:59 +01:00
Florian Bruhin
fc0428ef5f
Fix ws stripping with simple_split and no flags.
...
Fixes #279 .
2014-12-12 17:29:01 +01:00
Florian Bruhin
841e31283c
hints: Store id() of destroyed frames.
...
Fixes #305 . #152 should still be okay.
2014-12-12 01:38:13 +01:00
Florian Bruhin
decfd02033
Use a QNAM to pastebin from crash dialog.
...
Fixes #280 .
2014-12-11 23:34:03 +01:00
Florian Bruhin
aefa637bc5
Check if command text is valid when hinting.
2014-12-11 22:16:56 +01:00
Florian Bruhin
cba120ac76
Fix starting without config.
2014-12-11 22:08:43 +01:00
Florian Bruhin
39cd36c8cd
Don't use maxsplit=0 with :spawn.
2014-12-11 21:27:44 +01:00
Florian Bruhin
8bad7c0e4c
Use maxsplit=1 for :repeat and :later.
2014-12-11 21:27:44 +01:00
Florian Bruhin
451df7bbf4
Handle flags with args correctly with split=False.
2014-12-11 21:17:43 +01:00
Florian Bruhin
3579caf1ff
Make mode a kwarg-only argument for :bind.
2014-12-11 21:17:22 +01:00
Florian Bruhin
1d6661f90b
Set maxsplit=0 for :set-cmd-text.
...
See #233 .
2014-12-11 20:35:04 +01:00
Florian Bruhin
db4ca495f2
Use maxsplit=1 for :bind.
...
See #233 .
2014-12-11 20:34:38 +01:00
Florian Bruhin
b7ea8e7979
Support a maxsplit argument for commands.
2014-12-11 20:32:52 +01:00
Florian Bruhin
81bc5dae94
Remove quotes with split=False commands.
...
Fixes #313 .
2014-12-11 20:04:29 +01:00
Florian Bruhin
8c4c465c91
Fix completion update when the length is unchanged.
...
Fixes #312 .
2014-12-11 18:37:22 +01:00
Florian Bruhin
4e6cedb1f7
Don't treat page load as failed with blocked hosts.
...
Fixes #315 .
2014-12-11 18:05:01 +01:00
Florian Bruhin
5eeb89ec86
Add a :quickmark-del command.
2014-12-10 23:30:04 +01:00
Florian Bruhin
d0b5f2087a
Fix un-hiding of hints.
2014-12-10 23:22:25 +01:00
Florian Bruhin
b00e00db37
Add a "retry" entry to the download menu.
...
Closes #38 .
2014-12-10 21:56:57 +01:00
Florian Bruhin
9553bd44c1
Add an open menu entry to downloads.
...
See #39 .
2014-12-10 20:48:19 +01:00
Florian Bruhin
0ecf8661eb
Create inexistent paths in standardpath.get.
...
See #25 .
2014-12-10 18:05:42 +01:00
Florian Bruhin
ec07e4f8be
Handle OSError exceptions where appropriate.
...
Fixes #25 .
2014-12-10 18:00:49 +01:00
Florian Bruhin
ea76bdfb0f
Replace all IOError by OSErrors.
...
Starting with Python 3.3, IOError is just an alias for OSError.
2014-12-10 16:48:23 +01:00
Florian Bruhin
206b5f548e
Fix checking for errors when a page is loaded.
...
Because of the error page, we got loadFinished with ok=True even with errors.
Fixes #84 .
2014-12-10 16:38:24 +01:00
Florian Bruhin
06cc982ab5
Dynamically calculate needed size for command.
...
Closes #26 .
2014-12-10 15:35:13 +01:00
Florian Bruhin
db2d4a6bed
tabwidget: Add text padding in minimumTabSizeHint.
...
See #283 .
2014-12-10 14:45:00 +01:00
Florian Bruhin
ef12bde654
tabwidget: Fix ...-width in minimumTabSizeHint.
...
See #283 .
2014-12-10 14:44:28 +01:00
Florian Bruhin
92b9dc08f4
tabwidget: Clean up and fix minimumTabSizeHint.
...
See #283 .
The width now accounts for the indicator, and the wrong docstring has been
removed.
2014-12-10 14:29:14 +01:00
Florian Bruhin
bac30b9192
Set a minimum height for the statusbar widget.
...
Fixes #194 .
2014-12-10 14:15:34 +01:00
Florian Bruhin
b30ca6bcb6
Don't record command history in private mode.
...
Fixes #43 .
2014-12-10 13:19:42 +01:00
Florian Bruhin
76c5c8bf8e
cookies/cache: Handle por^H^Hrivate browsing mode.
...
See #43 .
2014-12-10 13:12:53 +01:00
Florian Bruhin
0b82fdb4d8
Fix text/newline handling with QSaveFile.
...
Fixes #309 .
We use io.TextIOWrapper which already handles newline converting, so we
shouldn't open the QSaveFile with QIODevice.Text in the mode, as this lead to
double-converting newlines, which in turn produced this error message on
Windows.
2014-12-10 10:58:55 +01:00
Florian Bruhin
7e95401f02
Check if download reply is None when closing tab.
...
Fixes #311 .
2014-12-09 17:37:57 +01:00
Florian Bruhin
bf24578dfd
Use QSaveFile for saving files. Fixes #234 .
2014-12-08 23:42:26 +01:00
Florian Bruhin
d611a37d7d
Fix statusbar with nested passthrough modes.
...
Fixes #87 .
2014-12-08 20:18:55 +01:00
Florian Bruhin
1d7f704804
Fix comment typo.
2014-12-08 20:06:40 +01:00
Florian Bruhin
2b41c13e8b
Fix lint
2014-12-08 18:52:20 +01:00
Florian Bruhin
0c1420112c
Fix config interpolation with non-default values.
...
Fixes #202 .
2014-12-08 18:50:53 +01:00
Florian Bruhin
175d01f516
config: Don't escape <eq> specially anymore.
2014-12-08 18:16:21 +01:00
Florian Bruhin
4ab4ac3db6
downloads: Make sure read timer is stopped.
...
Hopefully fixes #307 .
2014-12-08 16:16:03 +01:00
Florian Bruhin
07fed5a401
Don't nest function calls in on_read_timer_timeout.
...
This would have made it easier to diagnose #307 .
2014-12-08 16:07:50 +01:00
Florian Bruhin
edfc0e24b2
Abort running questions when closing tab.
...
Fixes #306 .
2014-12-08 16:04:56 +01:00
Florian Bruhin
4829aee767
Add a --no-crash-dialog debug option.
2014-12-06 00:39:33 +01:00
Florian Bruhin
24d21bfe98
I suck.
2014-12-05 21:15:11 +01:00
Florian Bruhin
9946b4b0f6
Really disable that damn pylint check
2014-12-05 21:14:18 +01:00
Florian Bruhin
7aa01802d9
Whoops, s/ignore/disable/
2014-12-05 21:08:15 +01:00
Florian Bruhin
c80f83671f
pylint: ignore pypeg2 import error
2014-12-05 21:03:23 +01:00
Florian Bruhin
98a384c167
Properly ignore distutils-bug in qtutils.
2014-12-05 12:56:32 +01:00
Florian Bruhin
653fbe81d0
pylint: Ignore distutils ImportError.
...
See https://bitbucket.org/logilab/pylint/issue/73/
2014-12-05 12:46:57 +01:00
Florian Bruhin
1fb24e45ff
Newline fix in adblock.py
2014-12-04 21:35:32 +01:00
Florian Bruhin
1af7112ea4
Handle ampersands in tab titles correctly.
...
Fixes #301 .
2014-12-03 21:31:59 +01:00
Florian Bruhin
95d919b5f6
Force opening in fg when opening a JS-window.
...
Fixes #174 .
2014-12-03 19:31:00 +01:00
Florian Bruhin
3adb97e4d2
Merge branch 'master' of ssh://tonks/qutebrowser
2014-12-02 21:28:54 +01:00
Florian Bruhin
03fb21c476
Use scrollRequested signal instead of paintEvent.
...
Closes #300 .
2014-12-02 21:27:11 +01:00
Florian Bruhin
d94f848c82
Ignore isNullError while handling label elements.
...
Fixes #295 (hopefully for real this time!)
2014-12-02 21:27:06 +01:00
Florian Bruhin
99fb516aa3
Never disconnect signal from destroyed frames.
...
Fixes #152 - hopefully really this time!
2014-12-02 21:09:03 +01:00
Florian Bruhin
0814811e2b
Change default startpage to HTTPS.
2014-12-02 16:38:57 +01:00
Florian Bruhin
66a42512c6
adblock: Convert some methods to functions.
2014-12-02 12:26:13 +01:00
Florian Bruhin
cd5f77210c
Add keybinding Ss to open qute:settings.
...
See #13 .
2014-12-01 23:11:18 +01:00
Florian Bruhin
c86b1d0508
Open qute:settings if :set is given without arguments.
2014-12-01 23:09:01 +01:00
Florian Bruhin
9fa036ecce
Remove logging for #152 .
...
This reverts a1ba05ff08
.
2014-12-01 22:29:32 +01:00
Florian Bruhin
51fcfa07b0
Fix setting ui->default-zoom to a level not in ui->zoom-levels.
...
Fixes #296 .
See #115 .
2014-12-01 20:24:04 +01:00
Florian Bruhin
e8a6238028
Clean up hint labels and frames before clicking link.
...
Fixes #152 .
Hopefully fixes #295 .
2014-12-01 19:15:17 +01:00
Florian Bruhin
cb67198f7d
Fix download redirections and :adblock-update.
...
We called init_reply again which started read_timer even if the file object was
already set.
Fixes #294 .
2014-12-01 07:40:36 +01:00
Florian Bruhin
316d5ff189
Check if replies are open in downloads.
2014-12-01 07:35:57 +01:00
Florian Bruhin
f22c00c64d
Move MAX_REDIRECTS attribute back to DownloadItem.
...
Fixes #293 .
2014-12-01 06:55:15 +01:00
Florian Bruhin
fea35156bc
Set parent of QNetworkReplies in NetworkManager.
...
Closes #258 .
2014-11-30 22:38:12 +01:00
Florian Bruhin
64e43c6e14
Ignore IPC in exception handler. Closes #262 .
2014-11-30 22:30:26 +01:00
Florian Bruhin
d558155620
Simplify some config types by using valid_values.
2014-11-30 22:16:55 +01:00
Florian Bruhin
1ceb8ac74d
Add an ssl-strict=ask option. Closes #16 .
2014-11-30 21:57:37 +01:00
Florian Bruhin
e3dfaa6a4b
Send cwd over IPC. Fixes #254 .
2014-11-30 19:22:35 +01:00
Florian Bruhin
9327c2a9ae
Remove trailing spaces in simple_split with keep=False.
...
Fixes #279 .
2014-11-30 18:59:51 +01:00
Florian Bruhin
9d28c59a28
Fix downloading of qute:log. Closes #81 .
2014-11-30 18:47:41 +01:00
Florian Bruhin
d54f06ea91
Reparent a page's QNAM if there are running downloads.
...
Fixes #289 .
2014-11-30 18:47:40 +01:00
Florian Bruhin
6d419b8346
Avoid starting downloads before we know the filename.
...
Closes #278 .
2014-11-30 18:47:40 +01:00
Florian Bruhin
302fcec3ed
Merge branch 'master' of ssh://tonks/qutebrowser
2014-11-30 17:30:27 +01:00
Florian Bruhin
25a665e601
Abort download question on errors. Fixes #266 .
2014-11-30 15:34:15 +01:00
Florian Bruhin
a00dd7b679
Slowly download while the user is entering a filename.
...
Closes #79 .
Closes #270 .
2014-11-30 15:30:15 +01:00
Florian Bruhin
60ef39b4d0
fixup
2014-11-30 15:30:15 +01:00
Florian Bruhin
ee0cb00428
First download cleanup.
2014-11-30 15:30:14 +01:00
Florian Bruhin
d32096495d
Apply default zoom correctly.
...
Fixes #287 .
2014-11-28 17:01:29 +01:00
Mathias Fussenegger
aeb6ceb942
correct search engine regex to match multiple search terms
2014-11-27 22:59:43 +01:00
Florian Bruhin
f6dffa74b6
Fix lint
2014-11-27 22:27:13 +01:00
Florian Bruhin
9bd8d3f2e5
Merge branch 'search-engine-syntax' of https://github.com/mfussenegger/qutebrowser into mfussenegger-search-engine-syntax
2014-11-27 22:19:07 +01:00
Mathias Fussenegger
68398035ef
change search engine syntax to match that of dwb
...
as pointed out in
https://github.com/The-Compiler/qutebrowser/issues/14 this
commit changes the syntax so that DuckDuckGo bang syntax
works.
2014-11-27 21:57:51 +01:00
Florian Bruhin
68b9aaace4
Add utils.raises. Closes #274 .
2014-11-27 20:44:48 +01:00
Florian Bruhin
c87fa34544
Use a QTime in widgets.statusbar.bar. Fixes #124 .
2014-11-27 20:09:58 +01:00
Florian Bruhin
cb1df68153
Automatic config migration for renamed sections/options.
2014-11-27 07:07:28 +01:00
Florian Bruhin
bdbe284a56
Fix tabbar updating when changing fg colors.
2014-11-26 21:21:02 +01:00
Florian Bruhin
d34aefcfee
Another round of config breakage (sorry!).
...
- Rename colors->tab.* to colors->tabs.*
- Rename permission section to content.
2014-11-26 21:16:27 +01:00
Florian Bruhin
e8966ec7bb
Remove some shlex vdebug.
2014-11-26 21:02:20 +01:00
Florian Bruhin
cbac8bb330
Fix lint
2014-11-25 23:24:52 +01:00
Florian Bruhin
7e879c9312
Don't add javascript-bridge only once.
...
Otherwise, qute:settings will break when reloading it.
2014-11-25 23:21:49 +01:00
Florian Bruhin
e85e11310d
Merge branch 'master' of https://github.com/iggy/qutebrowser into iggy-master
2014-11-25 23:03:09 +01:00
Brian Jackson
9cfb4b3431
Fix problem with qutesettings scope in pages
...
Fix to make sure the js bridge code is only enabled when qute: pages are shown.
Previously it would only be available to the first page (and before that it
was available to all pages).
2014-11-25 14:29:20 -06:00
Florian Bruhin
010efcee93
Don't treat floats as IPs either.
2014-11-25 21:19:24 +01:00
Florian Bruhin
683a306c51
Fix @log_signals with deleted objects.
2014-11-25 19:51:53 +01:00
Brian Jackson
4fd4376c6a
Pass around win_id so we can use it in the error message handler
...
The message class needs a win_id to know where to send error messages. Just
pass it through the jinja->js->qtwebbridge as it's just a simple int.
2014-11-25 11:19:00 -06:00
Brian Jackson
bf37d16896
View/edit browser config in a special browser page
...
Add the ability to view/edit the browser's config settings via a special
browser page.
It's very simplistic for now, but a good starting point.
Future possibilities:
* Matching config types to html input types
* colors = html colorpicker
* options with valid_values = select/multi-select
* plain text fallbacks where appropriate
* multi-line text edits for long options (i.e. host-block-lists)
* Javascript option verification
* switch from submitting changes onblur to onchange if an option passes basic
verification, etc.
2014-11-25 10:34:06 -06:00
Florian Bruhin
6973050ccc
Don't treat any valid int as IP
2014-11-24 21:49:48 +01:00
Florian Bruhin
7be32dd70c
Don't handle hexadecimal numbers as IP addresses.
...
Fixes #269 .
2014-11-24 21:47:22 +01:00
Florian Bruhin
186f292586
Remove unused import
2014-11-24 21:07:03 +01:00
Florian Bruhin
0134646c67
Basic host blocker implementation.
...
Squashed commit of the following:
commit 8d38e9c2f13778fe21cc2c1d61c5d26907b469ef
Author: Florian Bruhin <git@the-compiler.org>
Date: Mon Nov 24 21:04:30 2014 +0100
Fix default adblock lists.
commit a734b87e753daec28fa0c6643af8de088041179a
Author: Florian Bruhin <git@the-compiler.org>
Date: Mon Nov 24 21:04:14 2014 +0100
Fix error output on adblock errors.
commit 15bc10f605ebb86c12523bb81b55d1440fcacdbf
Author: Florian Bruhin <git@the-compiler.org>
Date: Mon Nov 24 07:38:47 2014 +0100
Update adblock docks
commit 475d530ee50f52295c2171208c6a0278750cf4b4
Author: Florian Bruhin <git@the-compiler.org>
Date: Mon Nov 24 07:38:39 2014 +0100
Remove adblock ram calculation
commit 0e52cc3ec93912fd3fa3ecf6de833aef0c540a60
Author: Florian Bruhin <git@the-compiler.org>
Date: Mon Nov 24 07:03:11 2014 +0100
Adjust docs for hosts-file.
commit 941df242d38300d7e42a26f2e67cfd668c6f8590
Author: Florian Bruhin <git@the-compiler.org>
Date: Mon Nov 24 06:55:40 2014 +0100
Add logging for host blocking.
commit 4ca1561ccf32affb8439113f4f1c222d7dee1e14
Author: Florian Bruhin <git@the-compiler.org>
Date: Mon Nov 24 00:11:59 2014 +0100
Don't do adblock updates automatically after changing config.
commit 26d4e86ca393d4a1a5fd8fac7729ce9c2e7cd240
Author: Florian Bruhin <git@the-compiler.org>
Date: Thu Nov 20 19:58:32 2014 +0100
adblock: Don't delete blocked hosts between files.
commit c7af08c68adf3c135d5a2fc746eb6d3c715b0711
Author: Florian Bruhin <git@the-compiler.org>
Date: Thu Nov 20 19:58:22 2014 +0100
adblock: Add comments for rewinding.
commit 9af87313088cd79ab8c022bcee9308511d6328f0
Author: Florian Bruhin <git@the-compiler.org>
Date: Thu Nov 20 19:56:39 2014 +0100
adblock: Rewind files properly.
commit 7f3dadc04ba68c92d6789ecf5822f7b2dfc367a0
Author: Florian Bruhin <git@the-compiler.org>
Date: Thu Nov 20 19:40:18 2014 +0100
Add untested file support.
commit 334c01867d510b599d94c9397097a1d789c0c64c
Author: Florian Bruhin <git@the-compiler.org>
Date: Wed Nov 19 22:33:25 2014 +0100
adblock: Handle download errors correctly
commit 3a9af4cd4a903386dc323640f1d52e03383b3aa7
Author: Florian Bruhin <git@the-compiler.org>
Date: Wed Nov 19 22:23:04 2014 +0100
adblock: Add error handling for invalid input.
commit 5934c3c027ff9205adb512aab396ca913b31e50d
Author: Florian Bruhin <git@the-compiler.org>
Date: Wed Nov 19 22:22:47 2014 +0100
adblock: Handle done_count correctly.
commit 3ba5e83fda9b7d764bfcf1e4b1aa479daae39791
Author: Florian Bruhin <git@the-compiler.org>
Date: Wed Nov 19 21:18:10 2014 +0100
Read adblock files when they finished downloading.
commit 86a5ecf194445e2ebe0cf22b59e24223387880c5
Author: Florian Bruhin <git@the-compiler.org>
Date: Wed Nov 19 20:51:25 2014 +0100
Add hosts-file.net to host-block-lists.
commit 121f0bff953497449c32e45e671b71d954beed4c
Author: Florian Bruhin <git@the-compiler.org>
Date: Wed Nov 19 20:51:13 2014 +0100
Add zip-file support to adblock.py.
commit f1c0e67cb9d890a44a1d1f545ace997f0a453f91
Author: Florian Bruhin <git@the-compiler.org>
Date: Mon Nov 17 07:41:14 2014 +0100
print line counts for debugging
commit 75dbb8964fd44862abc378ef26fb47f8cda6061e
Author: Florian Bruhin <git@the-compiler.org>
Date: Fri Nov 14 19:22:20 2014 +0100
Use statusbar messages for adblock
commit 74d9142d831496e02c5baae72c2723e320af1778
Author: Florian Bruhin <git@the-compiler.org>
Date: Fri Nov 14 08:34:46 2014 +0100
Add basic adblock functionality.
2014-11-24 21:05:09 +01:00
Florian Bruhin
f7fbf98667
downloads: Rewind file objects correctly on redirects.
2014-11-24 21:04:48 +01:00
Florian Bruhin
9333e92891
Remove download assertions.
2014-11-24 06:55:54 +01:00
Florian Bruhin
6856c49be9
Handle HTTP redirections in downloads.
2014-11-24 00:12:52 +01:00
Florian Bruhin
0a1bdd79da
Split some functions into smaller ones.
2014-11-23 21:26:59 +01:00
Florian Bruhin
655115858c
Handle OSError when using subprocess.
2014-11-23 18:07:05 +01:00
Florian Bruhin
8ec42908f1
Add a new option tabs->tabs-are-windows.
2014-11-21 06:22:52 +01:00
Florian Bruhin
615be2a4bc
Update docs.
2014-11-20 06:36:08 +01:00
Florian Bruhin
9c180fd91b
Add a dest-parameter to :download.
2014-11-20 06:24:15 +01:00
Florian Bruhin
7b1ea3ff40
Typo: s/similiar/similar/g
2014-11-19 22:46:52 +01:00
Florian Bruhin
2fe72d8087
Simplify utils.log.
...
The overcomplicated parsing with re didn't really give us much benefits, and
lead to exceptions and segfaults[1] (?) already, so it's best to just get rid
of it entirely.
[1] http://paste.the-compiler.org/view/26768694
2014-11-19 22:43:49 +01:00
Florian Bruhin
336bbc370e
Ignore 'content-type missing' Qt warning.
2014-11-19 22:38:56 +01:00
Florian Bruhin
283cedff15
Never get downloads from the cache.
...
This is a workaround for corrupted files because Qt somehow reads them from the
cache wrongly. See https://bugreports.qt-project.org/browse/QTBUG-42757
This might fix a part of #78 - but we'll leave this open for now, since it
might also be another issue.
2014-11-19 19:43:07 +01:00
Florian Bruhin
b8b31fd914
downloads: default autoclose=True. Fixes #265 .
2014-11-18 20:10:57 +01:00
Florian Bruhin
2a95533564
Add some assertions for 'successful'.
2014-11-18 19:56:57 +01:00
Florian Bruhin
b1d6e70c8b
Check URL validity in :download.
2014-11-18 19:49:55 +01:00
Florian Bruhin
75d1f072c2
Add a raise_cmdexc_if_invalid to urlutils.
2014-11-18 19:49:31 +01:00
Florian Bruhin
41c3a59e81
Add a :download command.
2014-11-18 19:38:34 +01:00
Florian Bruhin
8c5bc67dd0
Recalculate geometry if data changed.
2014-11-18 07:47:28 +01:00
Florian Bruhin
40918bfc98
Use _die on QNetworkReply errors.
2014-11-18 07:47:28 +01:00
Florian Bruhin
406f7b3b84
Don't try to set fileobject on errors.
2014-11-18 07:47:28 +01:00
Florian Bruhin
c6deae36b1
Fix setting of successful flag.
2014-11-18 07:47:28 +01:00
Florian Bruhin
829b8df535
downloads: Return the created DownloadItem.
2014-11-18 07:47:28 +01:00
Florian Bruhin
6301c740d1
downloads: Add a generic NetworkManager.
2014-11-18 07:47:28 +01:00
Florian Bruhin
c8a1c979e8
downloads: Whitespace change.
2014-11-18 07:47:28 +01:00
Florian Bruhin
d31e8edffc
downloads: Document _win_id.
2014-11-18 07:47:28 +01:00
Florian Bruhin
da49424836
downloads: Make it possible to set fileobj instead of name.
2014-11-18 07:47:28 +01:00
Florian Bruhin
5ad516a438
DownloadItem: Make fileobj public.
2014-11-18 07:47:28 +01:00
Florian Bruhin
f250cd41ad
DownloadItem: Add an autoclose attribute.
2014-11-18 07:47:28 +01:00
Florian Bruhin
ab0dba3344
DownloadItem: add successful attribute.
2014-11-18 07:47:28 +01:00
Florian Bruhin
b0c8ca9e1a
Escape regex correctly.
2014-11-18 07:34:50 +01:00
Florian Bruhin
cf1728de43
configtypes: Add more tests for List/UrlList.
2014-11-18 07:14:06 +01:00