Commit Graph

121 Commits

Author SHA1 Message Date
Peter F. Patel-Schneider 95cbaeaba3 ui: don't produce warnings when editing rules in rule editor 2022-08-21 06:08:40 -04:00
Peter F. Patel-Schneider e164291e7a rules: save rules file even if there are no rules to save 2022-08-21 06:08:40 -04:00
Peter F. Patel-Schneider a6f08b91aa rules: require gtk 3.0 2022-07-26 19:04:07 -04:00
Davide Cavalca 2229d64a7c
rules: Fix circular import (#1673) 2022-07-26 14:30:27 -04:00
Peter F. Patel-Schneider f291321f8b rules: find devices using method in Device 2022-07-26 09:28:17 -04:00
Peter F. Patel-Schneider cacf94b6f7 settings: allow multiple keys for mouse gestures and dpi sliding 2022-07-23 06:44:57 -04:00
Peter F. Patel-Schneider c8ba397e0e rules: add depress and release options to KeyPress rule action 2022-06-21 20:23:22 -04:00
Peter F. Patel-Schneider f1e2a0c449 receiver: use built-ins for conversions between int and byte string 2022-06-21 18:39:37 -04:00
Peter F. Patel-Schneider db9c065821 rules: don't add HI_RES wheel ecodes to evdev device codes 2022-06-16 09:16:57 -04:00
Peter F. Patel-Schneider 0f68ef5a43 rules: use keys with only group 0 mapping from other keyboard groups 2022-05-23 10:43:57 -04:00
Peter F. Patel-Schneider 1c596a8124 rules: only one warning per inaccessible key for KeyPress action 2022-05-11 12:35:04 -04:00
Peter F. Patel-Schneider 97344c4660 rules: better determination of keycodes and handle keysym level 2022-05-08 07:26:07 -04:00
Peter F. Patel-Schneider 9ed76b24fb rules: fix bug in xtest mouse scrolling 2022-04-18 19:24:57 -04:00
Kian-Meng Ang 15b92a0f40
misc: Fix typos 2022-04-12 17:18:11 -04:00
Peter F. Patel-Schneider 5aa02aa01d rules: fix problems when X11 is not available 2022-04-06 17:54:39 -04:00
Peter F. Patel-Schneider 371027c690 rules: remove process-dependent rules from built-in rules 2022-04-06 17:54:39 -04:00
Peter F. Patel-Schneider fc2b8accbf rules: handle missing libX11 more gracefully and document dependency 2022-03-31 10:06:30 -04:00
Peter F. Patel-Schneider d500642352 rules: graceful degredation when no keymap available 2022-03-30 12:02:52 -04:00
Peter F. Patel-Schneider f935ff1d95 rules: reorder code in diversion.py 2022-03-19 21:09:45 -04:00
Peter F. Patel-Schneider 5e209dcfd9 rules: remove built-in testing rule for thumb wheel 2022-03-19 21:09:45 -04:00
Peter F. Patel-Schneider 3d82075773 rules: use relative scroll events for scrolling in uinput 2022-03-19 21:09:45 -04:00
Peter F. Patel-Schneider b5c6cf8d63 doc: add information on rules under Wayland and uinput permissions 2022-03-19 21:09:45 -04:00
Peter F. Patel-Schneider 6bddebd89b rules: try uinput for simulating input if Xtest not available 2022-03-19 21:09:45 -04:00
Peter F. Patel-Schneider b9c17474a4 rules: use uinput for simulating keyboard input 2022-03-19 21:09:45 -04:00
Vinícius 588d7ae533 ui: add support to TestBytes 2022-03-10 21:04:28 -05:00
Vinícius f327e3ad38 logitech_receiver: split Test condition 2022-03-10 21:04:28 -05:00
Peter F. Patel-Schneider 94ff454ace rules: fix Key conditions in built-in rules 2022-03-01 08:05:13 -05:00
Peter F. Patel-Schneider 00176a1df8 rules: add rule condition for checking device settings 2022-02-27 08:24:05 -05:00
Peter F. Patel-Schneider eedf4bfffb rules: use local file for conversion from key names to keysyms 2022-02-27 08:21:52 -05:00
Peter F. Patel-Schneider 1869f57f7f rules: get keyboard group and use to get correct keycode for keysym 2022-02-27 08:21:52 -05:00
Peter F. Patel-Schneider 4c43910ed7 rules: use GDK to get current keyboard modifiers 2022-02-27 08:21:52 -05:00
Peter F. Patel-Schneider 3e2be09cb5 rules: partial implementation of rules under Wayland 2022-02-27 08:21:52 -05:00
Peter F. Patel-Schneider 856f40e789 rules: fix bug in unpacking M and MR key notification 2022-02-25 16:13:42 -05:00
Peter F. Patel-Schneider cf0a71913e rules: track M keys and MR keys for use in rules 2022-02-21 08:29:48 -05:00
Peter F. Patel-Schneider f6b25a9685 rules: check for xtest and disable modifier checking if not available 2022-01-24 11:21:09 -05:00
Peter F. Patel-Schneider 7442c52c20 rules: defend against problems when determining focus program 2022-01-24 11:17:40 -05:00
Vinícius 6022c37325 ui: add device selector to Set rule editor 2022-01-24 11:12:04 -05:00
Vinícius 8c32c2e63c ui: add new Set rules to rule editor (partial support) 2022-01-24 11:12:04 -05:00
Peter F. Patel-Schneider 8a87b9b013 rules: add Solaar rules command to set settings
testing
2022-01-13 18:23:12 -05:00
Peter F. Patel-Schneider 2ee04d89fd rules: fix crash in process conditions under non-X11 2021-12-24 21:04:43 -05:00
Łukasz Woźniak d33b407ba8 rules: don't select windows with no PID when looking for focus window
\#1322
2021-11-15 08:45:31 -05:00
Hugo Osvaldo Barrera 89d7490bf1 Remove redundant value
Opening read-only is the default.
2021-10-30 16:49:41 -04:00
Hugo Osvaldo Barrera fdd6229179 Avoid unnecessary list allocation 2021-10-30 16:49:41 -04:00
Hugo Osvaldo Barrera 93c4ebe758 Remove obsolete unicode prefix 2021-10-30 16:49:41 -04:00
Hugo Osvaldo Barrera df83fd655c Stop declaring `object` as superclass
This syntax was only required on Python 2 and has no effect on Python 3.
2021-10-30 16:49:41 -04:00
Hugo Osvaldo Barrera b96d16672b Drop obsolete encoding declaration
This was only parsed in Python 2.
Python 3 only supports UTF-8 for source files, and that's what it uses.
2021-10-30 16:49:41 -04:00
kkrentz 3ef5e63cd4 Fix "'int' object is not subscriptable" on G613 2021-08-30 20:23:10 -04:00
Peter F. Patel-Schneider cdc7a27c9e rules: add rule condition for process under mouse 2021-07-22 10:46:31 -04:00
Peter F. Patel-Schneider 50392da360 rules: add checks for empty process name and class 2021-07-15 10:16:16 -04:00
Karthik Nishanth 85a86ec3c5
diversion: implement pressed and released action on Key condition (#1189)
- Track `key_up` key in addition to `key_down`
- Support `pressed` or `released` action in `Key` condition
- Add radio button to KeyUI to represent `pressed` or `released`
2021-07-12 15:51:57 -04:00
Peter F. Patel-Schneider 6290c84efd rules: upgrade rule execution debug message to info message 2021-07-04 22:10:45 -04:00
Peter F. Patel-Schneider e15ce68498 rules: process old mouse movement tests as MouseGesture conditions 2021-07-04 09:38:29 -04:00
ApeironTsuka 011f3f556b
rules: allow sequence of mouse moves as mouse gestures
* Add more robust mouse gesture support
- Remove existing mouse-* Test types
- Add new 'Mouse Gesture' Condition
- Implement Rule Editor UI for it
- Add support for diverted buttons
- Added diagonal mouse gesture directions

Allows you to chain multiple movements/buttons (for instance, moving the mouse up and then left) together into a single mappable gesture.

* Update docs

* Cleanup
Fix inconsistent indenting
Fix possible overwriting of built-in
Fix 'Mouse Gesture' Condition rule not starting with an initial Action field

* Make flake8 happy

* yapf

* Document no-op and make it more apparent

* Make changes to Mouse Gesture UI suggested/submitted by viniciusbm.

Co-authored-by: Apeiron <apeiron@none>
Co-authored-by: Peter F. Patel-Schneider <pfpschneider@gmail.com>
2021-07-04 08:52:38 -04:00
Peter F. Patel-Schneider 98b5804a21 rules: turn several log messages from INFO to DEBUG 2021-04-20 07:58:41 -04:00
Peter F. Patel-Schneider a734a35b7e rules: add a mouse-noop test for mouse gesture with little movement 2021-04-17 10:32:24 -04:00
Peter F. Patel-Schneider f7488f67c1 settings: add mouse gesture handling 2021-04-13 09:26:24 -04:00
SiDevesh d3a18bb85f rules: match WM_CLASS also for process matching in rules 2021-04-08 15:01:50 -04:00
Equidamoid 8fccd84345
Log real exception when can't use Xorg API (#1066)
* fix: log real exception when can't use Xorg API

* chore: make linter happy
2021-02-08 18:55:10 -05:00
Peter F. Patel-Schneider a688bfd9ec settings: add setting to divert G keys and handle in rules 2020-12-13 22:24:08 -05:00
Peter F. Patel-Schneider 69f889e33f rules: only activate rules if X11 is running 2020-12-02 10:10:47 -05:00
Peter F. Patel-Schneider 7d0402a97f rules: only use X11 code when X11 is available 2020-11-28 09:41:59 -05:00
Peter F. Patel-Schneider 419a7722ad rules: make rule processing conditional on X11 being available 2020-11-27 10:48:16 -05:00
Peter F. Patel-Schneider a99a5a544e rules: fix syntax in MouseClick 2020-11-27 10:12:21 -05:00
Peter F. Patel-Schneider 244d48d245 rules: remove use of pynput 2020-11-27 10:12:21 -05:00
Vinícius 0b5c263799 receiver: fix and improve diversion load/save functions 2020-11-21 12:23:41 -05:00
Vinícius 1379da70a8 ui: add GUI for diversion rules (draft) 2020-11-21 12:23:41 -05:00
Vinícius 381371c899 receiver: add MouseClick diversion rule 2020-11-14 10:38:01 -05:00
Peter F. Patel-Schneider be590c154a docs: add documentation for rules processing and change name of rules file 2020-11-13 08:46:04 -05:00
Peter F. Patel-Schneider 30e4324906 receiver: associate source file with top-level rules 2020-11-13 08:46:04 -05:00
Peter F. Patel-Schneider 545db1f641 receiver: add named tests for hires and lowres wheels 2020-11-13 08:46:04 -05:00
Peter F. Patel-Schneider f3a276d7a3 receiver: add rule-based processing of diverted features 2020-11-13 08:46:04 -05:00