diff options
author | Florian Bruhin <me@the-compiler.org> | 2021-01-11 22:22:30 +0100 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2021-01-13 20:26:41 +0100 |
commit | c970c6335521fee359c1a68c0431c612631e73fb (patch) | |
tree | 1062d9ffd9fbfcafc0753308b8e7a15a5f5f6920 /qutebrowser/keyinput | |
parent | 4b7d52ae7cdf52ebef038b4a90b9fe95ab002105 (diff) | |
download | qutebrowser-c970c6335521fee359c1a68c0431c612631e73fb.tar.gz qutebrowser-c970c6335521fee359c1a68c0431c612631e73fb.zip |
dataclasses: Initial switch
See #6023
Diffstat (limited to 'qutebrowser/keyinput')
-rw-r--r-- | qutebrowser/keyinput/basekeyparser.py | 12 | ||||
-rw-r--r-- | qutebrowser/keyinput/keyutils.py | 8 | ||||
-rw-r--r-- | qutebrowser/keyinput/modeman.py | 8 |
3 files changed, 14 insertions, 14 deletions
diff --git a/qutebrowser/keyinput/basekeyparser.py b/qutebrowser/keyinput/basekeyparser.py index 23b77cba1..890effb17 100644 --- a/qutebrowser/keyinput/basekeyparser.py +++ b/qutebrowser/keyinput/basekeyparser.py @@ -23,7 +23,7 @@ import string import types from typing import Mapping, MutableMapping, Optional, Sequence -import attr +import dataclasses from PyQt5.QtCore import pyqtSignal, QObject, Qt from PyQt5.QtGui import QKeySequence, QKeyEvent @@ -32,16 +32,16 @@ from qutebrowser.utils import usertypes, log, utils from qutebrowser.keyinput import keyutils -@attr.s(frozen=True) +@dataclasses.dataclass(frozen=True) class MatchResult: """The result of matching a keybinding.""" - match_type: QKeySequence.SequenceMatch = attr.ib() - command: Optional[str] = attr.ib() - sequence: keyutils.KeySequence = attr.ib() + match_type: QKeySequence.SequenceMatch + command: Optional[str] + sequence: keyutils.KeySequence - def __attrs_post_init__(self) -> None: + def __post_init__(self) -> None: if self.match_type == QKeySequence.ExactMatch: assert self.command is not None else: diff --git a/qutebrowser/keyinput/keyutils.py b/qutebrowser/keyinput/keyutils.py index bc8c4a5fe..f27703110 100644 --- a/qutebrowser/keyinput/keyutils.py +++ b/qutebrowser/keyinput/keyutils.py @@ -34,7 +34,7 @@ handle what we actually think we do. import itertools from typing import cast, overload, Iterable, Iterator, List, Mapping, Optional, Union -import attr +import dataclasses from PyQt5.QtCore import Qt, QEvent from PyQt5.QtGui import QKeySequence, QKeyEvent @@ -336,7 +336,7 @@ def _parse_single_key(keystr: str) -> str: return 'Shift+' + keystr if keystr.isupper() else keystr -@attr.s(frozen=True) +@dataclasses.dataclass(frozen=True) class KeyInfo: """A key with optional modifiers. @@ -346,8 +346,8 @@ class KeyInfo: modifiers: A Qt::KeyboardModifiers enum value. """ - key: Qt.Key = attr.ib() - modifiers: _ModifierType = attr.ib() + key: Qt.Key + modifiers: _ModifierType @classmethod def from_event(cls, e: QKeyEvent) -> 'KeyInfo': diff --git a/qutebrowser/keyinput/modeman.py b/qutebrowser/keyinput/modeman.py index df5f08e2c..c40aacdd6 100644 --- a/qutebrowser/keyinput/modeman.py +++ b/qutebrowser/keyinput/modeman.py @@ -22,7 +22,7 @@ import functools from typing import Mapping, Callable, MutableMapping, Union, Set, cast -import attr +import dataclasses from PyQt5.QtCore import pyqtSlot, pyqtSignal, Qt, QObject, QEvent from PyQt5.QtGui import QKeyEvent @@ -40,7 +40,7 @@ PROMPT_MODES = [usertypes.KeyMode.prompt, usertypes.KeyMode.yesno] ParserDictType = MutableMapping[usertypes.KeyMode, basekeyparser.BaseKeyParser] -@attr.s(frozen=True) +@dataclasses.dataclass(frozen=True) class KeyEvent: """A small wrapper over a QKeyEvent storing its data. @@ -54,8 +54,8 @@ class KeyEvent: text: A string (QKeyEvent::text). """ - key: Qt.Key = attr.ib() - text: str = attr.ib() + key: Qt.Key + text: str @classmethod def from_event(cls, event: QKeyEvent) -> 'KeyEvent': |