Florian Bruhin
2a343cb3a1
Various code style improvements
2016-04-27 20:25:27 +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
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
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
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
Kevin Velghe
f4f98c54fa
Keep pylint happy
2016-03-31 11:25:35 +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
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
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
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
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
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
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
Felix Van der Jeugt
7ad871fab1
Merge remote-tracking branch 'source/master'
2016-01-18 21:45:47 +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
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
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
a5f2ac5f03
Adjust copyright years.
2016-01-04 07:12:39 +01:00
Florian Bruhin
fcf94fd527
Remove various deprecated commands/arguments.
2015-12-20 18:38:29 +01:00
Florian Bruhin
ea06c64ed4
Fix typos.
2015-11-23 11:17:26 +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
Florian Bruhin
9cfd96fcef
Make :follow-hint take a keystring.
2015-11-09 07:35:56 +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
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
Florian Bruhin
36adaf0cf3
Simplify argument handling for DownloadManager.
2015-08-06 20:41:57 +02:00
Florian Bruhin
46f3be2df7
Add rapid hinting for downloads.
2015-08-06 19:09:21 +02:00
Florian Bruhin
0330adf284
Filter links for :navigate.
2015-08-03 23:21:20 +02:00
Florian Bruhin
7b8490b6c0
Fix 'an user' spelling.
2015-06-29 17:49:19 +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
17bb9fc21c
Use QProcess instead of subprocess.
...
Closes #646 .
Fixes #688 .
2015-06-11 20:28:04 +02: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
2f0b976bca
Leave and re-enter hint mode when double-hinting.
...
See #613 .
2015-05-06 22:38:08 +02:00
Florian Bruhin
7439586334
Move special params to cmdutils.register decorator
...
See #637 .
2015-04-20 19:33:05 +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
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
Florian Bruhin
8ebac8d38c
Various spelling fixes.
2015-03-31 21:11:47 +02:00
Florian Bruhin
b2427701fa
Handle element webFrame being None when hinting.
2015-03-29 19:52:30 +02:00
Florian Bruhin
565303ebcd
Fix hinting when page has no URL set yet.
2015-03-20 08:35:33 +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
a76868c0f4
Refactor how click/hint open targets are handled.
2015-02-26 20:41:04 +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
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
0fcd016427
Move cursor to end of textboxes when hinting.
2015-02-25 19:56:03 +01:00
Florian Bruhin
56b0ae2b6e
Get rid of mainwindow.MainWindow.spawn.
2015-02-16 22:56:12 +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
aae33a0308
Handle another webelem.IsNullError with hints.
2015-01-16 09:09:12 +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
c008ee8dd7
Added !important to hint styles
...
Prevents websites from overriding hint styles
2015-01-06 16:13:28 +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
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
450d1ab70d
Update copyright years
2015-01-03 15:51:31 +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
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
841e31283c
hints: Store id() of destroyed frames.
...
Fixes #305 . #152 should still be okay.
2014-12-12 01:38:13 +01:00
Florian Bruhin
aefa637bc5
Check if command text is valid when hinting.
2014-12-11 22:16:56 +01:00
Florian Bruhin
d0b5f2087a
Fix un-hiding of hints.
2014-12-10 23:22:25 +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