Commit Graph

340 Commits

Author SHA1 Message Date
sezanzeb
813ecf2b02 showing button names instead of numbers 2020-12-02 22:40:35 +01:00
sezanzeb
c092145a62 removed unused empty function 2020-12-02 21:41:50 +01:00
sezanzeb
63a2209251 got rid of the confusing xkb keycode offset 2020-12-02 21:41:39 +01:00
sezanzeb
8ac2092e74 got rid of the confusing xkb keycode offset 2020-12-02 21:38:02 +01:00
sezanzeb
f879a58363 can map shoulder buttons 2020-12-02 21:20:18 +01:00
sezanzeb
ebe0115ad0 mapped a D-Pad button 2020-12-02 21:03:59 +01:00
sezanzeb
0757b4a4e8 wip 2020-12-02 20:48:23 +01:00
sezanzeb
861ae868b2 more work for event type to mapping key 2020-12-02 20:08:55 +01:00
sezanzeb
4b5c9e3143 add event type to mapping key 2020-12-02 19:33:31 +01:00
sezanzeb
e18fbeaf60 indicates if a mapping is going on 2020-12-02 18:07:46 +01:00
sezanzeb
386879752b fixed injection 2020-12-02 17:40:21 +01:00
sezanzeb
cdbb3c8b39 simplified keycode injection 2020-12-02 16:17:52 +01:00
sezanzeb
caf1a67801 better approximation of 60hz 2020-12-02 15:27:57 +01:00
sezanzeb
c93da68956 dividing injector.py into multiple files 2020-12-02 15:18:23 +01:00
sezanzeb
ac73d5cc86 proper test util imports, switched to the recommended pydbus package 2020-12-02 14:36:17 +01:00
sezanzeb
b67e27e3d4 tested mapping metadata saving and loading 2020-12-02 12:36:03 +01:00
sezanzeb
c95559e554 obsolete reverse mapping 2020-12-02 12:29:55 +01:00
sezanzeb
6771e8d8dc test for correct linux header keycode usage 2020-12-02 00:58:48 +01:00
sezanzeb
3d2095f988 linting 2020-12-02 00:02:41 +01:00
sezanzeb
17445558fb no .terminate anymore, proper multiprocessing coverage, some minor cleanup in injector 2020-12-01 23:53:32 +01:00
sezanzeb
f4ca07490d ubuntu fixes 2020-12-01 11:01:11 +01:00
sezanzeb
d1aceaf777 more tests 2020-11-30 22:42:53 +01:00
sezanzeb
1af1ee7bf7 wip more gamepad stuff 2020-11-30 21:17:14 +01:00
sezanzeb
a7647928f0 fixed all tests 2020-11-30 20:57:09 +01:00
sezanzeb
573d9c473d more precise mouse gamepad movement 2020-11-30 19:54:33 +01:00
sezanzeb
ba0a97dbdf moving the cursor with the gamepad 2020-11-30 19:40:17 +01:00
sezanzeb
a97c44ebd4 improved tests, some fixes 2020-11-30 18:59:34 +01:00
sezanzeb
ef6710877c support for linux kernel keycode constants 2020-11-30 16:22:17 +01:00
sezanzeb
4f87ef0b0c gamepad buttons as keyboard keys 2020-11-30 14:34:27 +01:00
sezanzeb
b0e801318a daemon reloads the config on apply 2020-11-29 21:31:28 +01:00
sezanzeb
a9b9cb56a3 made it work on an old ubuntu laptop 2020-11-29 20:19:38 +01:00
sezanzeb
5cc1bd9941 ensuring ownership of all created files and folders 2020-11-29 18:47:40 +01:00
sezanzeb
27b47e475d ensuring ownership of all created files and folders 2020-11-29 18:24:50 +01:00
sezanzeb
03dbfca59e not checking for test in can_read_devices 2020-11-29 16:23:21 +01:00
sezanzeb
b1f041c5b7 add_filehandler for any path 2020-11-29 16:22:53 +01:00
sezanzeb
c9d148bba2 consistent member naming 2020-11-29 16:22:22 +01:00
sezanzeb
6b6d0e5492 fixed a log 2020-11-29 16:22:06 +01:00
sezanzeb
611264ffc6 setup.py dependencies 2020-11-29 14:19:32 +01:00
sezanzeb
e5beec0994 wip debian package 2020-11-29 10:42:20 +01:00
sezanzeb
ba7f282dff lint 2020-11-29 01:53:20 +01:00
sezanzeb
c87606cfb6 testing connecting to the dbus 2020-11-29 01:44:14 +01:00
sezanzeb
ea5b2fc049 more macro tests 2020-11-29 00:28:46 +01:00
sezanzeb
68f2de3978 testing a short macro in injector tests 2020-11-29 00:13:13 +01:00
sezanzeb
c63796bcb7 macro improvements 2020-11-28 23:50:28 +01:00
sezanzeb
845b7c2397 macro improvements 2020-11-28 23:44:40 +01:00
sezanzeb
53677b4a21 improved macro tests 2020-11-28 22:54:22 +01:00
sezanzeb
f920c2d031 asyncio macros 2020-11-28 20:59:24 +01:00
sezanzeb
d93cce86fa linting 2020-11-28 19:31:57 +01:00
sezanzeb
98811a3358 random w, improved parsing debug output 2020-11-28 18:52:19 +01:00
sezanzeb
b1ba01cf03 simpler examples 2020-11-28 18:42:08 +01:00
sezanzeb
c412fee673 inserted the unfinished macro parsing and running into the injector 2020-11-28 18:39:55 +01:00
sezanzeb
ace421e84a tests for macro running and parsing 2020-11-28 18:27:28 +01:00
sezanzeb
8d23593c89 macro parser 2020-11-28 17:49:32 +01:00
sezanzeb
7134083e5b cloning mappings 2020-11-28 15:48:57 +01:00
sezanzeb
b6b66430ee asyncio KeycodeInjector 2020-11-28 15:43:24 +01:00
sezanzeb
e5efa6555a update README.md 2020-11-27 21:32:35 +01:00
sezanzeb
92ba027323 started work on macros 2020-11-27 21:27:15 +01:00
sezanzeb
398493149b some pylint and tests 2020-11-27 00:34:45 +01:00
sezanzeb
fb94742d8a test for the autoload switch 2020-11-27 00:23:03 +01:00
sezanzeb
166e5b49bb more config tests 2020-11-27 00:11:23 +01:00
sezanzeb
a9cd8a9107 code coverage 2020-11-26 22:19:30 +01:00
sezanzeb
64f7c3de3a populating the autoload switch state 2020-11-26 21:33:31 +01:00
sezanzeb
881b906b44 rearranged the ui a bit 2020-11-26 00:07:28 +01:00
sezanzeb
fa563d45b9 switch to autoloat presets 2020-11-25 23:55:31 +01:00
sezanzeb
ce32423c7c access via groups instead of root services with interfaces that are open to everyone 2020-11-25 23:36:03 +01:00
sezanzeb
ba929fce23 wip 2020-11-25 21:55:04 +01:00
sezanzeb
ed5726f761 daemon wont create a config file anymore 2020-11-25 19:21:04 +01:00
sezanzeb
1a41166770 daemon wont create a config file anymore 2020-11-25 19:20:44 +01:00
sezanzeb
4e08221058 full path to the daemon for loading presets, some TODOs, .json file extension, nested mapping in .json config 2020-11-25 00:24:05 +01:00
sezanzeb
fc07f96ec7 running without the service on dbus failure 2020-11-23 23:42:23 +01:00
sezanzeb
b1fff0c286 tested reverse mapping 2020-11-23 23:41:13 +01:00
sezanzeb
36c2ae1be0 test for reverse mapping split 2020-11-23 21:43:31 +01:00
sezanzeb
7b89e8a46f optimized get_keycode 2020-11-23 18:47:57 +01:00
sezanzeb
f5e734316d optimized get_keycode 2020-11-23 18:42:36 +01:00
sezanzeb
352de4d74a update instructions 2020-11-22 22:07:54 +01:00
sezanzeb
b0360980ed beautiful newline 2020-11-22 21:56:25 +01:00
sezanzeb
9f8266f140 warning 2020-11-22 21:54:31 +01:00
sezanzeb
b2fed7887f ignoring Power Button 2020-11-22 21:54:19 +01:00
sezanzeb
196aec15ea pylint 9.70 2020-11-22 21:41:29 +01:00
sezanzeb
48ca89cc39 talks to the daemon 2020-11-22 21:04:09 +01:00
sezanzeb
f84557cc80 improved error handling 2020-11-22 21:02:44 +01:00
sezanzeb
9587adda91 magic numbers 2020-11-22 18:02:55 +01:00
sezanzeb
032347f48c properly reads keycode device for devices that are being injected into 2020-11-22 17:46:32 +01:00
sezanzeb
06a10c64b4 properly reads keycode device for devices that are being injected into 2020-11-22 17:30:06 +01:00
sezanzeb
2afde0039f wip reading keycodes even though the device is grabbed 2020-11-22 16:54:40 +01:00
sezanzeb
76cc37b867 reader tests 2020-11-22 15:14:43 +01:00
sezanzeb
d785e5bb00 got rid of the interval polling architecture, also displaying mouse keycodes in the status bar 2020-11-22 14:47:34 +01:00
sezanzeb
8f3b9cb475 supports keycodes from mouse-buttons (such as middle-mouse) as well 2020-11-22 13:59:28 +01:00
sezanzeb
4a423455e9 some comment stuff 2020-11-22 13:58:56 +01:00
sezanzeb
1f83b7a09f pretty preset config files 2020-11-21 15:12:03 +01:00
sezanzeb
aa8a1b4f3f improved get_devices log 2020-11-21 15:07:08 +01:00
sezanzeb
373792f9a6 fixed config file doesnt exist 2020-11-21 15:00:52 +01:00
sezanzeb
7209dbf1e0 fixed some installation issues 2020-11-21 14:57:08 +01:00
sezanzeb
7f1d26aee7 started working on the daemon 2020-11-20 21:38:59 +01:00
sezanzeb
437cb533aa config for autoloading presets 2020-11-20 21:38:19 +01:00
sezanzeb
75f11cbe05 threw some TODOs into it, started on the daemon executable 2020-11-20 01:50:40 +01:00
sezanzeb
64ddeff5a1 some TODOs 2020-11-19 11:58:20 +01:00
sezanzeb
3fcc5af310 testing the injector constructor 2020-11-19 11:40:15 +01:00
sezanzeb
6def1dcc54 testing grab retries and capability modification 2020-11-19 11:30:10 +01:00
sezanzeb
46eafc48da ensuring numlock stays the same on grab 2020-11-19 11:12:28 +01:00
sezanzeb
b33bad338f removed redundant injection stop 2020-11-19 01:45:31 +01:00
sezanzeb
db1f2a0d9d showing in UI when grab was not possible 2020-11-19 01:40:47 +01:00
sezanzeb
141a147aa2 multiple attempts at grabbing the device 2020-11-19 01:02:27 +01:00
sezanzeb
0abd5b60c4 test for getdevices ignoring evdev.UInput stuff from key-mapper 2020-11-19 00:22:22 +01:00
sezanzeb
beee72431f some more tests 2020-11-19 00:10:42 +01:00
sezanzeb
eceacb6b59 tests for KeycodeInjector 2020-11-19 00:04:06 +01:00
sezanzeb
3d3136ed8b removed stuff from tests that was removed 2020-11-18 22:33:01 +01:00
sezanzeb
f18b013513 works 2020-11-18 22:06:54 +01:00
sezanzeb
022950e3b5 final commit on sixth 2020-11-18 21:39:15 +01:00
sezanzeb
37bc7b5d69 still wont work. again. 2020-11-18 20:03:37 +01:00
sezanzeb
dc74b5ddb6 wip 2020-11-18 13:17:49 +01:00
sezanzeb
0792880ae6 saving presets works again 2020-11-18 10:33:59 +01:00
sezanzeb
fe7d68c739 started to outline the new save and load methods 2020-11-17 23:49:11 +01:00
sezanzeb
c76d4d4102 organized the archived xkb code 2020-11-17 23:48:30 +01:00
sezanzeb
151a1f3173 overthrowing the functionality completely 2020-11-17 23:40:39 +01:00
sezanzeb
7b47d8f18a wip 2020-11-17 21:06:21 +01:00
sezanzeb
0e407b7f44 wip 2020-11-17 20:51:32 +01:00
sezanzeb
5c6c3a7c31 wip 2020-11-17 17:56:59 +01:00
sezanzeb
d91694c1df started work on injecting keycodes instead of configs-only 2020-11-17 14:35:36 +01:00
sezanzeb
0796cea1bd unused time import 2020-11-17 00:53:29 +01:00
sezanzeb
08f25f9130 permission stuff 2020-11-17 00:51:57 +01:00
sezanzeb
57147c0b44 avoid jumping window contents on load 2020-11-16 17:04:04 +01:00
sezanzeb
70500165ca loads mappings with modified variations correctly 2020-11-16 16:52:43 +01:00
sezanzeb
121f6900d8 improved get_devices test 2020-11-16 16:30:27 +01:00
sezanzeb
09cec4cfac obsolete comment 2020-11-16 16:27:46 +01:00
sezanzeb
5918ecf9a0 chmod proper permissions 2020-11-16 16:27:18 +01:00
sezanzeb
30f2352243 supports modifier-key combinations 2020-11-16 16:18:37 +01:00
sezanzeb
f75bbb7d33 cleanup, tests for linux.py 2020-11-16 15:39:15 +01:00
sezanzeb
db880bbc03 test delete_preset 2020-11-16 14:08:42 +01:00
sezanzeb
c7abc1a19c avoid waiting for the InputDevice destructor 2020-11-16 14:08:29 +01:00
sezanzeb
bf89b36d6b clearing the rename field on preset switch 2020-11-15 21:09:36 +01:00
sezanzeb
6076e225a1 showing the current keycode, better loading indicator 2020-11-15 21:03:56 +01:00
sezanzeb
8dc45e51a5 loading screen 2020-11-15 20:45:41 +01:00
sezanzeb
4988e85b1f got rid of this confusing symlink stuff 2020-11-15 20:27:06 +01:00
sezanzeb
71b487463c polkit 2020-11-15 18:55:27 +01:00
sezanzeb
b2afa069c6 more tests 2020-11-15 12:11:35 +01:00
sezanzeb
c2abf2c24f using get_keycode instead of evdev 2020-11-15 03:01:11 +01:00
sezanzeb
1cda8bd943 integration test for rows 2020-11-15 01:36:10 +01:00
sezanzeb
14267283f3 unhighlight rows on change 2020-11-15 00:40:19 +01:00
sezanzeb
80bd7deacd unsaved changes dialog 2020-11-15 00:27:45 +01:00
sezanzeb
20dbb4c8a8 button to load the default preset 2 2020-11-14 22:07:43 +01:00
sezanzeb
07b12cf17c button to load the default preset 2020-11-14 20:35:57 +01:00
sezanzeb
a4492e6bab fixed deleting rows 2020-11-13 00:01:43 +01:00
sezanzeb
bc6cbbc926 only slightly highlight and work for all themes 2020-11-12 23:59:49 +01:00
sezanzeb
f175f52c0b highlights changes 2020-11-12 23:09:22 +01:00
sezanzeb
e158245ff7 automatically switches to the keycode input 2020-11-12 21:36:40 +01:00
sezanzeb
81d238c23f renamed variable, updated docstring/comment 2020-11-10 23:33:57 +01:00
sezanzeb
52231d507e renaming, keeping unmapped keys at their defaults 2020-11-10 23:14:28 +01:00
sezanzeb
96fe81a3cd fixed some stuff that was probably leftover from debugging 2020-11-09 23:56:08 +01:00
sezanzeb
d4ad001560 Still moving stuff around 2020-11-09 23:47:54 +01:00
sezanzeb
f7db8b4a26 Still moving stuff around 2020-11-09 23:43:34 +01:00
sezanzeb
91fd2340b5 continued rearrangement 2020-11-09 23:34:30 +01:00
sezanzeb
88ba61205d refactoring, restructuring 2020-11-09 23:16:30 +01:00
sezanzeb
d43e7fc4f0 forgot to change some alsacontrol stuff to key-mapper in comments 2020-11-08 21:34:27 +01:00
sezanzeb
ff48e8b64c input validation for mapping change 2020-11-08 21:02:57 +01:00
sezanzeb
1d6d627e9c default keys for unused keys 2020-11-08 19:50:30 +01:00
sezanzeb
0f2bd96586 tests, status bar, tooltips 2020-11-08 18:51:35 +01:00
sezanzeb
bf482cc2bb more tests 2020-11-08 16:27:26 +01:00
sezanzeb
070150e49c tested the Mapping object 2020-11-08 12:48:50 +01:00
sezanzeb
4ec91c52fb debug print cleanup 2020-11-08 01:03:13 +01:00
sezanzeb
1601670f31 seems to be working again 2020-11-08 01:02:04 +01:00
sezanzeb
3df4d92504 wip, tests failing, stuff broken 2020-11-08 00:54:19 +01:00
sezanzeb
8c42043922 mapping is a class now, some simplifications 2020-11-06 00:26:49 +01:00
sezanzeb
889fdf9307 Reading keycodes from the mouse 2020-11-05 01:24:56 +01:00
sezanzeb
9fc098ca5f displaying and saving mappings into the table 2020-11-04 01:49:22 +01:00
sezanzeb
fd0679a36b more beautiful mapping table 2020-11-03 23:41:05 +01:00
sezanzeb
29ededc8f9 fixed tests 2020-11-03 00:48:57 +01:00
sezanzeb
7a86dfa179 I just mapped my mouse key 2020-11-03 00:44:00 +01:00
sezanzeb
5a499f6467 renaming and deleting presets 2020-11-02 23:52:58 +01:00
sezanzeb
4751aa6ff9 linking the whole dir 2020-11-02 23:14:11 +01:00
sezanzeb
3068ad57e9 some os.path.join refactoring 2020-11-02 22:06:05 +01:00
sezanzeb
8fa747d6a4 can apply presets 2020-11-02 21:57:28 +01:00
sezanzeb
b8c602822c some rearrangement 2020-11-02 20:55:17 +01:00
sezanzeb
5e80afc7ce using python-evdev 2020-11-02 19:47:31 +01:00
sezanzeb
dcf9462321 fixed stuff, dummy configs actually work now 2020-11-02 19:17:28 +01:00
sezanzeb
5d72771083 creates dummy but working configs 2020-11-02 02:44:48 +01:00
sezanzeb
d4c131526d tests for create preset, config lib not needed 2020-11-02 02:17:58 +01:00
sezanzeb
ab18863c5f creating the symbols file, symlinking, more tests 2020-11-02 01:25:43 +01:00
sezanzeb
d91380d0ce parsing libinput_list 2020-11-01 21:32:15 +01:00
sezanzeb
afa952104e evtest 2020-11-01 20:19:50 +01:00
sezanzeb
b0cd7caee8 I think I figured that setxkbmap nightmare out 2020-11-01 00:51:34 +01:00
sezanzeb
6a238b4953 idk 2020-10-31 20:19:46 +01:00
sezanzeb
94335d1d68 creating and selecting presets - super buggy 2020-10-31 19:10:40 +01:00
sezanzeb
5932d0f36c bunch of stuff 2020-10-31 18:48:03 +01:00
sezanzeb
3aa57eacbb show devices, adding rows 2020-10-31 17:00:02 +01:00
sezanzeb
cb6adb0a5c test for config contents 2020-10-31 15:29:25 +01:00
sezanzeb
1780fbee96 creating config structure 2020-10-31 15:22:58 +01:00
sezanzeb
bc64884f22 starts and closes 2020-10-31 15:03:31 +01:00
sezanzeb
5c41d2ae2e config, more renaming, some glade prototype 2020-10-31 14:43:09 +01:00
sezanzeb
ab1aca7939 rename 2020-10-31 14:02:59 +01:00