Florian Bruhin
cdbff411d0
Fix travis_install for newer Homebrew
2018-03-05 15:51:26 +01:00
Florian Bruhin
d1854eddaf
Handle invalid keys coming from Qt
...
When pressing a key which doesn't exist as Qt.Key, we don't get Qt.Key_unknown
like we'd expect, but we get 0x0 instead...
Let's add that as a new "nil" key (to not conflict with None/unknown/zero/...)
and handle it appropriately.
This can be reproduced by doing:
setxkbmap -layout us,gr -option grp:alt_shift_toggle
and pressing Alt-Shift/Shift-Alt.
2018-03-05 15:42:52 +01:00
Florian Bruhin
52c280ec12
Add unit tests for BaseKeyParser.handle with dry_run=True
2018-03-05 15:33:56 +01:00
Florian Bruhin
3275681afd
Show key when the key string is empty
2018-03-05 12:45:13 +01:00
Florian Bruhin
67b4502fdb
Fix test_version without cssutils
2018-03-05 11:36:50 +01:00
Florian Bruhin
2f8686ec70
Fix test_mhtml_e2e with Qt 5.11
...
See #3661
2018-03-05 11:36:29 +01:00
Florian Bruhin
cc5da4d1fe
Fix test_modeman.py
2018-03-05 11:08:21 +01:00
Florian Bruhin
b4a2352833
Cache HTML/JS resource files when starting
...
This mostly reverts 9edc5a665e
(see #1362 ).
Fixes #1943
2018-03-05 09:08:06 +01:00
Florian Bruhin
78623f4ec8
Update changelog
...
[ci skip]
2018-03-05 08:15:47 +01:00
Florian Bruhin
2a9d970641
Uninstall application proxy factory before exit
...
This should help with segfaults on exit.
Fixes #3657
2018-03-05 07:39:36 +01:00
Florian Bruhin
274f2a9d19
Rename eventFilter methods in modeman
2018-03-05 06:36:01 +01:00
Florian Bruhin
e01db79ce9
Filter out ShortcutOverride events properly
...
Fixes #3419
2018-03-05 06:32:54 +01:00
Florian Bruhin
4ef5db1bc4
Disallow numbers in keybindings
...
Fixes #1966
2018-03-04 23:17:51 +01:00
Florian Bruhin
47525f6a09
Update changelog
2018-03-04 22:58:33 +01:00
Florian Bruhin
155a1901c0
Merge branch 'keys'
2018-03-04 22:50:41 +01:00
Florian Bruhin
88a5c8d29d
Make sure bindings with umlauts work
...
See #303
2018-03-04 22:38:33 +01:00
Florian Bruhin
e2f17c4be1
Always prefer exact over partial matches
2018-03-04 21:45:46 +01:00
Florian Bruhin
40c3295cd1
Improve logging message for clear_keystring
2018-03-04 21:32:42 +01:00
Florian Bruhin
f2fadd7add
Fix handling of key_mappings
2018-03-04 21:32:28 +01:00
Florian Bruhin
0967b6abd2
Fix handling of </> keys
2018-03-04 20:40:16 +01:00
Florian Bruhin
910bbc8521
Refactor keyutils._parse_keystring
2018-03-04 20:40:05 +01:00
Florian Bruhin
c9c0bc0bbd
Update docs
2018-03-04 20:28:46 +01:00
Florian Bruhin
d8bfe23c0d
Fix lint
2018-03-04 20:21:58 +01:00
Florian Bruhin
58b7599152
Remove old fixme
2018-03-04 20:21:58 +01:00
Florian Bruhin
f85e69ec77
Refactor other keyinput tests
2018-03-04 20:21:58 +01:00
Florian Bruhin
2be7db29ed
100% coverage for keyinput.keyutils
2018-03-04 20:21:58 +01:00
Florian Bruhin
8da878c77c
Make KeySequence.matchs() work correctly
2018-03-04 20:21:58 +01:00
Florian Bruhin
866c758660
Add more KeySequence tests
2018-03-04 20:21:58 +01:00
Florian Bruhin
68db8d04ad
KeySequence: Make sure we got valid key codes
2018-03-04 20:21:58 +01:00
Florian Bruhin
3649a36869
KeySequence: Add __le__/__ge__
2018-03-04 20:21:58 +01:00
Florian Bruhin
fb7c75a090
Improve keyutils tests
2018-03-04 20:21:58 +01:00
Florian Bruhin
3c9e8ff9ab
Test and fix keyutils._parse_keystring
2018-03-04 20:21:58 +01:00
Florian Bruhin
7f8508a367
Change the way Space keybindings are handled
...
Using it as " " in a keystring won't work anymore, but instead <Space> and
<Shift-Space> does.
2018-03-04 20:21:58 +01:00
Florian Bruhin
da60d11b24
Refactor keyutils tests
2018-03-04 20:21:58 +01:00
Florian Bruhin
b3834835ed
Bring back keyutils.is_modifier() and modifier handling
...
Turns out when we press yY, we get three events:
Qt.Key_Y, Qt.NoModifier
Qt.Key_Shift, Qt.ShiftModifier
Qt.Key_Y, Qt.ShiftModifier
If we don't ignore the second one, our keychain will be interrupted by the Shift
keypress.
2018-03-04 20:21:58 +01:00
Florian Bruhin
e306e2dadb
Improve and fix test_is_printable
2018-03-04 20:21:58 +01:00
Fritz Reichwald
d9a88e139c
Test for modifiers and corner case 0xFF
2018-03-04 20:21:58 +01:00
Florian Bruhin
3a11a24be0
Fix modifier handling
...
We don't want to show <Shift-Shift>, but <Ctrl-Shift> should still work
correctly.
2018-03-04 20:21:58 +01:00
Florian Bruhin
7cb781cc92
Simplify handling of modifier-only keys
...
Now that we don't rely on str(KeyInfo) being empty anywhere, there's no reason
to return an empty string for only-modifier keypresses anymore.
While those keys can't be bound (QKeySequence('Shift') == Qt.Key_unknown)
there's also no reason to explicitly ignore them.
2018-03-04 20:21:57 +01:00
Florian Bruhin
693178c8ee
Refactor KeyInfo.__str__
...
This removes the special handling for macOS, but this is hopefully not needed
anymore as we don't compare strings.
2018-03-04 20:21:57 +01:00
Florian Bruhin
af6e5b1838
Fix lint
2018-03-04 20:21:57 +01:00
Florian Bruhin
fac8d72d8c
Capitalize Escape in TestFullscreenNotification
2018-03-04 20:21:57 +01:00
Florian Bruhin
a57fc5c746
Refactor keyutils tests involving all keys
2018-03-04 20:21:57 +01:00
Florian Bruhin
50d2ef3b90
Fix handling of printable control keys in KeyInfo.text()
2018-03-04 20:21:57 +01:00
Florian Bruhin
4223e2f85d
Check all keys against QTest::keyToAscii
2018-03-04 20:21:57 +01:00
Fritz Reichwald
d28c323074
Add printable and ismodifier test
2018-03-04 20:21:57 +01:00
Florian Bruhin
934d586286
Fix handling of Shift-Tab aka. Backtab
2018-03-04 20:21:57 +01:00
Florian Bruhin
65a05f334e
Fix KeyInfo.__str__ for <Shift-Tab>
2018-03-04 20:21:57 +01:00
Florian Bruhin
4e505d52df
Regenerate docs
2018-03-04 20:21:57 +01:00
Florian Bruhin
0aa17bfa33
Simplify unicodedata.category calls
2018-03-04 20:21:57 +01:00