summaryrefslogtreecommitdiff
path: root/qutebrowser/keyinput/modeparsers.py
AgeCommit message (Collapse)Author
2021-08-26Automatically rewrite enumsFlorian Bruhin
See #5904
2021-08-26Blanket PyQt5 -> PyQt6Florian Bruhin
2021-03-03Merge remote-tracking branch 'origin/pr/5967' into devFlorian Bruhin
2021-01-26doc: Switch URLs to httpsFlorian Bruhin
2021-01-20Bump copyright yearsFlorian Bruhin
Closes #6015
2021-01-03Fix PR issues for set-cmd-text completions.Ryan Roden-Corrent
- Prefer None to "" - Prefer implicit bool checking - Try to fix mypy warnings
2020-10-28mypy: use from-import style for typingTim Brown
Update files in `keyinput`, `mainwindow`, and `misc`. See #5396
2020-10-26Use enum.auto() for most enum valuesFlorian Bruhin
Doesn't change values where they are chosen to line up with Qt enums. See #4800
2020-10-16Add/improve docs for enumsFlorian Bruhin
2020-10-09Use class-based API instead of functions for enumsYegor
2020-06-17modeparsers: Refactor how hints are handledFlorian Bruhin
Instead of binding hints to fake :follow-hint commands, we now use a separate CommandKeyParser and ask that for its match result. If the key matches with the command parser, it is bound in hint mode, so we clear the hint keystring and defer to the command handling instead. If it doesn't, we continue hint handling as usual - however, the HintKeyParser is now not a CommandKeyParser anymore, so we don't have to deal with command parsing (and have a custom execute implementation instead). Closes #4504 Fixes #4392 Fixes #4368 Helps with #5084, though it doesn't completely fix that yet. Supersedes #3742 (fix for #3735) Supersedes #4691 (fix for #4264)
2020-06-17modeparsers: Refactor to avoid subclassingFlorian Bruhin
Before the changes in this commit, we've had to have a subclassed parser for every mode, even if there was no special key handling going on in that mode. With a couple of changes, we can avoid many of those subclasses and only have subclasses for bigger changes (like hint or register modes). - The awkward handling of self._modename in _read_config() is now removed. _read_config() doesn't take an argument, always uses the mode in self._mode and gets called from __init__. - BaseKeyParser takes the mode as an argument to __init__. - The class attributes (do_log/passthrough/supports_count) now also get passed via the constructor.
2020-01-04Adjust copyrights for 2020Florian Bruhin
2019-10-13Avoid circular importsFlorian Bruhin
2019-10-13Set command_only=True for macro-recorderFlorian Bruhin
See #640
2019-10-09Use usertypes.KeyMode for PassthroughKeyParser mode argumentFlorian Bruhin
More consistency with RegisterKeyParser and more type safety
2019-10-09Move HintManager from a per-tab to a per-window objectFlorian Bruhin
This means we use objreg less and we have less HintManager objects - what's there not to like?
2019-10-09Add type annotations for keyinput.modeparsersFlorian Bruhin
2019-10-09Pass commandrunner object to mode parsersFlorian Bruhin
Apart from making things easier to test, this also means there is only one shared CommandRunner instead of there being one per parser.
2019-10-09Move supports_count to a class attributeFlorian Bruhin
2019-09-12Merge remote-tracking branch 'origin/pr/4785'Florian Bruhin
2019-05-15allow deleting from filter after selecting a hintPeter Rice
2019-03-31Separate logic for checking special key and whether a key should clear hint ↵user202729
mode keychain
2019-02-22Update copyright for 2019Jay Kamat
2018-10-26Merge remote-tracking branch 'origin/pr/4362'Florian Bruhin
2018-10-26Remove old _stop_timersFlorian Bruhin
2018-10-18Fix _partial_timer connection in modeparsersuser202729
2018-10-18Simplify logic in HintKeyParser.handleuser202729
2018-03-09Fix lintFlorian Bruhin
2018-03-09Make sure keys with modifiers get handled as specialFlorian Bruhin
2018-03-09Clear key chains when a special key is pressed in hint modeFlorian Bruhin
When we press "s<Escape>", we don't want <Escape> to be handled as part of a key chain.
2018-03-08keyinput: Merge keyparser into modeparsersjakanakae-envangel
2018-03-05Filter out ShortcutOverride events properlyFlorian Bruhin
Fixes #3419
2018-03-04Update docsFlorian Bruhin
2018-03-04Add keyutils.is_printable()Florian Bruhin
2018-03-04Expose less from keyutils publiclyFlorian Bruhin
2018-02-27Merge BaseKeyParser._handle_key into .handleFlorian Bruhin
2018-02-27Get rid of _warn_on_keychains and _supports_chainsFlorian Bruhin
2018-02-27Get rid of BaseKeyparser.TypeFlorian Bruhin
2018-02-26Clearly separate yesno/prompt key modesFlorian Bruhin
2018-02-26Fix more hinting issuesFlorian Bruhin
2018-02-26Don't force-follow hints when typing charsFlorian Bruhin
2018-02-26Make hint keybinding inhibition workFlorian Bruhin
2018-02-26Refactor KeySequence initializationFlorian Bruhin
2018-02-26Make hints workFlorian Bruhin
2018-02-26Try getting hints to workFlorian Bruhin
2018-02-25Merge branch 'master' into keysFlorian Bruhin
2018-02-05Update copyright yearsFlorian Bruhin
2017-12-29Add some FIXMEsFlorian Bruhin
2017-12-29Rename sequence.py to keyutils.pyFlorian Bruhin