MattHag
b74e789715
Remove NamedInts: Convert Column to enum
...
Related #2273
2025-01-01 10:46:04 -05:00
MattHag
0d7fc46a81
settings: Add docstrings and type hint
...
Related #2273
2025-01-01 10:46:04 -05:00
MattHag
8bc42d20fb
Enforce rules on RuleComponentUI subclasses
...
Enforce create_widgets and collect_values.
Related #2273
2025-01-01 10:46:04 -05:00
MattHag
dd13993ff3
Simplify settings UI class
...
Classes shouldn't don't need to know about other settings classes.
Related #2273
2025-01-01 10:46:04 -05:00
MattHag
cdaffce463
Refactor: Remove diversion alias
...
Related #2273
2025-01-01 10:46:04 -05:00
MattHag
dfb4ccc93f
type hints: Introduce settings protocol
...
Related #2273
2025-01-01 10:46:04 -05:00
MattHag
3636ed78bb
Refactor: Convert Kind to IntEnum
...
Related #2273
2025-01-01 10:46:04 -05:00
MattHag
03de6fb276
Split up huge settings module
...
- Move validators into their own module.
- Convert Kind to IntEnum
Related #2273
2025-01-01 10:46:04 -05:00
Peter F. Patel-Schneider
789d35450c
solaar: don't close temp file until after CLI call
2025-01-01 10:40:07 -05:00
MattHag
8a0fc13f23
Test arg parse
2025-01-01 10:14:10 -05:00
MattHag
41768d9616
Test receiver notification info
2025-01-01 10:14:10 -05:00
Jan Fader
dfafe15575
delete temp-file in case help-actions too
2025-01-01 10:04:44 -05:00
Jan Fader
e6c833f635
delete tmpfile on close for cli
2025-01-01 10:04:44 -05:00
Peter F. Patel-Schneider
7e9babdc79
release 1.1.14
2025-01-01 09:42:39 -05:00
Peter F. Patel-Schneider
3768354230
release 1.1.14rc4
2024-12-24 10:36:55 -05:00
Peter F. Patel-Schneider
87afc3659e
cli: handle fake feature enums in show
2024-12-24 10:29:55 -05:00
Peter F. Patel-Schneider
e945f797a2
release 1.1.14rc3
2024-12-23 10:57:24 -05:00
MattHag
73c88210f7
Fix battery entry in device
...
Enforce use of enum value.
Fixes #2700
Related #2273
2024-12-23 10:50:43 -05:00
Peter F. Patel-Schneider
510753ea67
release 1.1.14rc2
2024-12-23 10:40:49 -05:00
Max Ammann
ff6f7a8e22
settings: Add ratchet setting for smart shift enhanced devices ( #2681 )
...
* Add ratchet setting for smart shift enhanced devices
* Update lib/logitech_receiver/settings_templates.py
---------
Co-authored-by: Peter F. Patel-Schneider <pfpschneider@gmail.com>
2024-11-16 16:06:02 -05:00
Pierre Carru
8b0904ead0
receiver: fix BoltReceiver, Ex100Receiver __init__ ( #2661 )
2024-11-10 17:44:40 -05:00
MattHag
862cef1f77
hidpp20_constants: Refactor Gesture into enum
...
Replace Gesture NamedInts with enum.
Related #2273
2024-11-03 14:41:07 -05:00
Romain Loutrel
a19461b29d
refactor: replace ERROR NamedInts by IntEnum ( #2645 )
...
* refactoring(logitech_receiver/notifications): change to enums PairingError and BoltPairingError
* refactoring(logitech_receiver/notifications): change to enums PairingError and BoltPairingError (Fix pre-commit checks)
* refactor(logitech_receiver/base.py): create unit tests for ping function before replacing ERRORNamedInts by IntEnum
* refactor(logitech_receiver/base.py): create unit tests for request function before replacing ERROR NamedInts by IntEnum
* refactor(logitech_receiver/base.py): create unit tests for ping function before replacing ERRORNamedInts by IntEnum (add exclusion for macOS)
* refactor(logitech_receiver/base.py): create unit tests for ping function before replacing ERRORNamedInts by IntEnum (fix for python < 3.10)
* refactor(solaar/cli./probe.py): create unit tests for run function before replacing ERROR NamedInts by IntEnum (focusing on the call order when receiving errors)
* refactor(solaar/cli./probe.py): refactor register processing to handle short and long registers in a single loop structure for improved readability and reduced code duplication.
* refactor(logitech_receiver/hidpp10_constants.py): replace ERROR NamedInt by IntEnum.
* refactor(logitech_receiver/hidpp10_constants.py): distinguish hidpp10 and hidpp20 errors in the code for readibility.
* refactor(logitech_receiver/hidpp20_constants.py): replace ERROR NamedInt by IntEnum.
* refactor(logitech_receiver/hidpp20_constants.py): replace ERROR NamedInt by IntEnum. (fix problem with | operator when typing with python 3.8)
* feature(hide on startup option): Visual test (not binded yet) DRAFT
* refactor(solaar/cli./probe.py): create unit tests for run function before replacing ERROR NamedInts by IntEnum (focusing on the call order when receiving errors)
* refactor(solaar/cli./probe.py): refactor register processing to handle short and long registers in a single loop structure for improved readability and reduced code duplication.
* refactor(logitech_receiver/hidpp10_constants.py): replace ERROR NamedInt by IntEnum.
* refactor(logitech_receiver/hidpp20_constants.py): replace ERROR NamedInt by IntEnum.
* refactor(logitech_receiver/hidpp20_constants.py): replace ERROR NamedInt by IntEnum. (fix problem with | operator when typing with python 3.8)
* feature(hide on startup option): Visual test (not binded yet) DRAFT
* Merge: Refactor: hidpp20 to use enum
* Merge: Refactor: hidpp20 to use enum (fix test)
---------
Co-authored-by: some_developer <some.developper.44@gmail.com>
2024-11-02 10:17:50 -04:00
MattHag
c90146df31
Refactor: hidpp20 to use enum ( #2647 )
...
* Remove duplicated Param definition
Use constants from hidpp20 constants
Related #2273
* hidpp20/Param: Refactor to use IntEnum
Related #2273
* hidpp20_constants: Refactor to use IntEnum
Related #2273
2024-11-02 08:33:58 -04:00
John Erling Blad
8518604155
i18n: Updated Norwegian Nynorsk (nn) ( #2655 )
...
Co-authored-by: John Erling Blad <jeblad@google.com>
2024-10-31 05:27:09 -04:00
John Erling Blad
de033267fa
i18n: Updated Norwegian Bokmål (nb)
2024-10-31 04:19:57 -04:00
MattHag
1afcfe4b57
refactor: use IntEnum for firmware and cidgroup constances
...
* Refactor: test_named_ints_flag_names
Shorten test and clarify behavior using binary numbers.
* Introduce plain flag_names function
This replicates the NamedInts functionality as plain function.
* Refactor FeatureFlag to use IntFlag
Replace NamedInts implementation with IntFlag enum and plain flag_names
function.
Related #2273
* Refactor FirmwareKind to use IntEnum
- Move general FirmwareKind to common module.
- Replace NamedInts implementation with IntEnum.
- Harden related HIDPP 1.0 get_firmware test.
Related #2273
* Refactor CID_GROUP, CID_GROUP_BIT to use IntEnum
Related #2273
2024-10-23 16:25:35 -04:00
Romain Loutrel
79ffbda903
change pairing error values to intenums
...
* refactoring(logitech_receiver/notifications): change to enums PairingError and BoltPairingError
* refactoring(logitech_receiver/notifications): change to enums PairingError and BoltPairingError (Fix pre-commit checks)
* refactor(logitech_receiver/base.py): create unit tests for ping function before replacing ERRORNamedInts by IntEnum
* refactor(logitech_receiver/base.py): create unit tests for request function before replacing ERROR NamedInts by IntEnum
* refactor(logitech_receiver/base.py): create unit tests for ping function before replacing ERRORNamedInts by IntEnum (add exclusion for macOS)
* refactor(logitech_receiver/base.py): create unit tests for ping function before replacing ERRORNamedInts by IntEnum (fix for python < 3.10)
2024-10-23 16:22:22 -04:00
Peter F. Patel-Schneider
2185a8390c
ui: fix initialization bug for PackedRangeControl
2024-10-22 14:31:13 -04:00
rloutrel
0d12c6f229
notifications: Introduce unit tests
2024-10-20 12:57:00 -04:00
MattHag
0cd9c0c9b5
Refactor: Introduce Feature enum
...
Convert Feature NamedInts to SupportedFeature integer enum.
Related #2273
2024-10-14 07:28:09 -04:00
MattHag
06fd32b501
Test and refactor process_notification
...
Related #2273
2024-10-14 07:28:09 -04:00
MattHag
badb76953d
Test key_is_down
...
Related #2273
2024-10-14 07:28:09 -04:00
Peter F. Patel-Schneider
a36973916c
settings: check all bits for extended report rate
2024-10-13 20:46:21 -04:00
rloutrel
15659a1ee4
Fix copy-paste error while refactoring notifications.py
2024-10-11 13:23:55 -04:00
MattHag
194c385824
RuleComponentUI: Type hints methods
2024-10-11 07:42:38 -04:00
MattHag
d1f9b9ca3d
diversion_rules: Add type hints
2024-10-11 07:42:38 -04:00
MattHag
97d1e90ceb
Fix signature of show
...
Fix diverged signature of RuleComponentUI subclasses.
2024-10-11 07:42:38 -04:00
MattHag
9f57955142
Action menu: Move context menu into own class
...
Reduce complexity of diversion dialog.
2024-10-11 07:42:38 -04:00
MattHag
0dec545bfd
Fix rule saving command
2024-10-11 07:42:38 -04:00
MattHag
3277015ab6
diversion: Add type hints
2024-10-11 07:42:38 -04:00
MattHag
bb559c0d7c
base: Remove hard dependency on gi
...
Import gi solely for type checking.
2024-10-11 07:42:38 -04:00
MattHag
1f85ec01e7
base: Add more unit tests
...
Make internal functions private.
2024-10-11 07:42:38 -04:00
MattHag
58ddb0d6cd
Introduce HIDAPI protocol
...
Improve type hints and names.
2024-10-11 07:42:38 -04:00
MattHag
46366b2430
Fix warnings from automatic code inspections
...
Warnings found by automatic code inspection and partially tackled
- Drop distuitls inf favour of setuptools
- Replace deprecated pyudev.Device.from_device_number
- Remove unnecessary brackets
- Avoid access to private variables etc.
- Shadows built-in name
- Line length >120 characters
- Not a module level variable
- Simplify clause
and more
2024-10-11 07:42:38 -04:00
MattHag
0f4d1aebcd
ui/common: Introduce tests
2024-10-11 07:42:38 -04:00
MattHag
89233957dc
settings: Add tests
2024-10-11 07:42:38 -04:00
MattHag
c9e781e752
settings_template: Introduce State enum
2024-10-11 07:42:38 -04:00
MattHag
54aace050c
Replace action strings with constants
...
Avoids spelling mistakes and helps readability.
2024-10-11 07:42:38 -04:00
MattHag
cba3533869
Remove factory wrapper classes
...
A module level function is sufficient, no wrapper needed.
2024-10-11 07:42:38 -04:00
MattHag
ef6b7dec2c
receiver: Remove hard dependency on base
...
With this test all receiver tests are macOS compatible again. The low
level interface supports passing a fake API for unit tests.
2024-10-11 07:42:38 -04:00
MattHag
4e50e605a6
device: Remove hard dependency on base
2024-10-11 07:42:38 -04:00
MattHag
614a5dc633
Add type hints and clean up
2024-10-11 07:42:38 -04:00
MattHag
1729189981
base: Add find_paired_node functions
...
Avoid direct access to hidapi and use the base module as low-level API
instead. This change replaces the remaining calls to find_paired_node
and find_paired_node_wpid by exposing them via base module.
2024-10-11 07:42:38 -04:00
MattHag
90c41dbe32
base: Add find_paired_node functions
...
Avoid the need for hidapi imports and add them to the base API module.
2024-10-11 07:42:38 -04:00
MattHag
a7ad625023
Fix about dialog
2024-10-11 07:42:38 -04:00
MattHag
8d0672ac3c
base_usb: Add external interface
...
Clean up, type hint and tests base_usb and related modules.
2024-10-11 07:42:38 -04:00
MattHag
a75c4b9679
ui/about: Use Model-View-Presenter pattern for testability
...
Split model and view, and enable view mocks for unit tests without GDK.
2024-10-11 07:42:38 -04:00
MattHag
46fafa0e68
hidapi: Explicitly load hidapi/udev implementation
...
Linux uses udev, other platforms use the cross-platform hidapi
implementation. Remove implicit loading of hidapi in hidapi/__init__.py.
2024-10-11 07:42:38 -04:00
MattHag
99fc9c6fcb
receiver: Remove hard dependency on hidapi
2024-10-11 07:42:38 -04:00
MattHag
615499dce2
device: Remove hard dependency on hidapi
2024-10-11 07:42:38 -04:00
MattHag
b681aafaff
keysymdef: Rename key symbols
...
Name the key symbol mapping different than the module itself.
2024-10-11 07:42:38 -04:00
Peter F. Patel-Schneider
4aada31b21
ui: augment pairing message for devices with multiple channels
2024-10-08 15:15:35 -04:00
MattHag
128ec43d70
solaar: Add type hints
2024-10-08 14:35:16 -04:00
MattHag
0481950324
base: Add type hints
2024-10-08 14:35:16 -04:00
MattHag
aa354dc4c4
Replace global sw_id with function call
...
Add test for it.
2024-10-08 14:35:16 -04:00
MattHag
2442299539
base: Simplify receiver info retrieval
...
- Remove comments with unused receivers
- Simplify receiver hardcoded info
2024-10-08 14:35:16 -04:00
MattHag
2aa462532a
settings_template: Prepare removal of desktop_notifications dependency
...
Related #2273
2024-10-08 14:35:16 -04:00
MattHag
d5af19be8a
Make ui/desktop_notifications testable
...
Introduce unit tests.
Related #2273
2024-10-08 14:35:16 -04:00
MattHag
e8ef262433
Rename ui/notify module to desktop notifications
...
Related #2273
2024-10-08 14:35:16 -04:00
MattHag
912afff173
Make lr/desktop_notifications testable
...
Introduce unit tests.
Related #2273
2024-10-08 14:35:16 -04:00
MattHag
0f8ab61ddf
Rename lr/notify module to desktop_notifications
...
Related #2273
2024-10-08 14:35:16 -04:00
MattHag
3c1aa35067
hidapi: Completely remove dependency on gi
...
Related #2480
2024-10-08 14:35:16 -04:00
MattHag
8fb087be14
logitech_receiver: Remove GDK dependency
2024-09-15 09:18:51 -04:00
MattHag
ea0eb66f39
Refactor: Remove all GDK dependencies from hidapi package
...
The hidapi hardware layer must not know or depend on any UI libraries.
Removes all GDK dependencies from the hidapi packages, which makes
testing of these modules easier and removes unwanted cross-dependencies.
Related #2480
2024-09-15 09:18:51 -04:00
MattHag
70def31942
Refactor: Distinguish module from package
...
Adapt module names to easily distinguish them.
Related #2480
2024-09-15 09:18:51 -04:00
Peter F. Patel-Schneider
fdd2c79950
settings: allow unkonwn keys in Key rule conditions
2024-08-28 10:40:23 -04:00
Peter F. Patel-Schneider
ae39ac46ba
docs: improve documentation for cli actions
2024-08-23 20:03:54 -04:00
Peter F. Patel-Schneider
4578f5f6f1
device: cycle sw_id to better guard against duplication of messages
2024-08-23 19:41:10 -04:00
Peter F. Patel-Schneider
c07c30baef
device: handle error return on root feature
2024-08-23 19:41:10 -04:00
MattHag
67829c5807
Clean up imports ( #2537 )
...
* Remove import as _ in solaar startup
Related #2273
* Remove import as _ in listener
Related #2273
* Remove import as _ in cli init
Related #2273
* Remove import as _ in gtk
Related #2273
* Remove import as _ in show
Related #2273
* Remove import as _ in tray
Related #2273
* Remove import as _ in profiles
Related #2273
* Remove import as _ in config
Related #2273
* Remove import as _ in config panel
Related #2273
* Remove import as _ in window
Related #2273
* Remove import as _ in pair
Related #2273
* Remove import as _ in pair window
Related #2273
* Remove import as _ in cli package
Related #2273
* Remove import as _ in ui package
Related #2273
* Remove commented out code
Related #2273
* Use constant for Logitech ID
2024-07-15 08:37:18 -04:00
Peter F. Patel-Schneider
d9d67ed738
device: handle unknown device kinds
2024-07-02 10:59:16 -04:00
Anderson Silva
8ab8cb0225
docs: Update about.py ( #2535 )
...
Update copyright date in about page to reflect current year (2024)
Follow-up to #2074
2024-06-23 17:56:52 -04:00
Peter F. Patel-Schneider
3aa064b40f
settings: finish change to new constants
2024-06-13 10:01:50 -04:00
Peter F. Patel-Schneider
db93e9ab10
hidapi: remove check on driver
2024-06-13 07:44:47 -04:00
Peter F. Patel-Schneider
a7784b40ab
cli: finish change to show.py for new constants
2024-06-13 05:54:36 -04:00
MattHag
86b55b9c25
Introduce Enum BusID
...
Distinguishes Bluetooth and USB devices.
2024-06-03 08:37:02 -04:00
MattHag
7f5e156fa1
Introduce constant for Logitech vendor ID
...
The Vendor ID for Logitech is 0x46D = 1133.
2024-06-03 08:37:02 -04:00
MattHag
d67466298b
Introduce Enum for notification types
2024-06-03 08:37:02 -04:00
MattHag
9726b93a78
Improve base module
...
Use clearer names and type hints.
2024-06-03 08:37:02 -04:00
MattHag
e316ed1bc2
Remove unnecessary receiver info 'hid_driver'
...
The same constant is used everywhere.
2024-06-03 08:37:02 -04:00
MattHag
a5ded24057
Convert HIDPPNotification to dataclass
...
Replaces the very last namedtuple.
2024-06-03 08:37:02 -04:00
Peter F. Patel-Schneider
2113e63a75
device: be defensive when converting battery status to string
2024-06-03 08:33:11 -04:00
MattHag
be83dac209
hid: Convert definition of HID registers to enum
...
* Refactor HID Register definitions
Use enums for distinct type hints, easy discovery of registers.
Make constants uppercase and benefit from enum auto-completion.
Related #2273
* Improve type hints: Registers
2024-06-02 10:34:00 -04:00
MattHag
c23ebcd267
Use double quotes for module level docstrings
...
Make module level docstrings distinguishable from license text.
Related #2273
2024-06-02 09:54:21 -04:00
MattHag
5a63e44d58
Remove empty comment lines
...
Remove hashtags solely used for structuring.
Related #2273
2024-06-02 09:54:21 -04:00
MattHag
244d0ee88a
solaar: clean up locale code
...
Usage example for German:
LC_ALL=de_DE.UTF-8 solaar
Related #2507
2024-06-01 12:09:55 -04:00
MattHag
c29231bc6b
refactor: Creation of devices ( #2493 )
...
* Refine interfaces for testability
* Reenable fixed device tests
2024-05-27 11:58:16 -04:00
MattHag
815dce07be
Unify imports in logitech package
...
Related #2273
2024-05-23 16:42:18 -04:00
Peter F. Patel-Schneider
90b0db6c3b
device: don't ping device when getting name or codename
2024-05-22 21:22:08 -04:00
Matthias Hagmann
c9dc232951
Refactor: Use dataclasses and enums
...
Replace unnecessary NamedInts in favour of default data types.
Simplify interfaces by reducing possible input from strings to members
of an enum.
2024-05-22 21:14:41 -04:00
Matthias Hagmann
469c04faaf
Introduce Device protocol and type hints
2024-05-22 21:14:41 -04:00
Matthias Hagmann
193dbfda21
hidpp10: Move independent functions to module level
2024-05-22 21:14:41 -04:00
Matthias Hagmann
7d171b1d09
Refactor: Use dataclasses and enums
...
Replace NamedTuples with more flexible dataclass, which also support
type hints. Introduce enums to replace constant strings, which need to
be kept in sync. Also enhances interfaces by limiting it to the enum
values. Remove unused variables.
2024-05-22 21:14:41 -04:00
MattHag
500b9998c5
Fix macOS compatibility and reenable CI tests
...
* Fix CI for macOS
* Fix error message for missing hidapi
* Skip some device and receiver tests on macOS
Tests fail on macOS, enable them when unit tests are
refined to only test the module without dependencies.
* Safe guard dbus import
2024-05-22 18:45:40 -04:00
MattHag
d0a3e474c7
hidapi: Unify imports in hidapi package ( #2487 )
...
Remove all 'import xyz as _xyz' and favor import of module name to
get more context in the code.
Related #2273
2024-05-16 15:58:22 -04:00
MattHag
b321167304
Drop support for end-of-life Python 3.7
...
* Drop support for end-of-life Python 3.7
* Remove handling of code for Python 3.7 and older
2024-05-11 11:48:32 -04:00
Peter F. Patel-Schneider
ea77335ecf
release 1.1.13
2024-05-11 11:35:41 -04:00
Peter F. Patel-Schneider
f30999a96a
release 1.1.13rc1
2024-05-08 14:37:55 -04:00
Peter F. Patel-Schneider
6c11f4e480
solaar: fix bug in suspend and resume callback
2024-05-08 08:05:00 -04:00
Peter F. Patel-Schneider
1dfc4bdb1c
settings: add choices universe for backlight setting
2024-05-08 08:05:00 -04:00
MattHag
1d5b61fbf2
diversion: Simplify and type hint
...
- Make static method an easy testable function.
- Fix variable name clashes
2024-05-05 10:43:39 -04:00
Peter F. Patel-Schneider
3ffa4e30f1
settings: get and use current host number for K375sFnSwap because of bug in firmware of MX Keys S
2024-05-04 04:46:27 -04:00
Peter F. Patel-Schneider
b4811f602d
ui: fix bug with logo in about window
2024-05-04 04:46:27 -04:00
Peter F. Patel-Schneider
37aa0963da
solaar: don't ping device just to get logging information
2024-05-04 04:46:27 -04:00
Peter F. Patel-Schneider
da1cb53c1b
settings: optimize write for per-key lighting
2024-05-03 11:54:24 -04:00
Peter F. Patel-Schneider
e5967edc66
settings: add and initialize per-key lighting to a special no-change value
2024-05-03 11:54:24 -04:00
MattHag
704a87696f
hidapi: Remove Python 2 compatibility ( #2460 )
...
Related #2273
2024-04-30 08:19:50 -04:00
MattHag
959dd2a35b
Refactor rule loading for testability ( #2456 )
...
rules: Introduce tests for YAML rule loading functionality.
2024-04-27 17:56:27 -04:00
Peter F. Patel-Schneider
22a59b6b0b
release 1.1.12
2024-04-27 17:51:04 -04:00
Peter F. Patel-Schneider
3160e3b3d6
release 1.1.12rc2
2024-04-22 12:13:46 -04:00
Peter F. Patel-Schneider
932bc5cb0e
device: check for existences of keys file before opening
2024-04-21 17:37:10 -04:00
MistificaT0r
4225fce8d7
po: update Russion translation and have all strings translated
...
* update Russian translation
* Fixed translation display in GUI
* fix checks / Fixed translation display in GUI
2024-04-21 11:36:39 -04:00
Peter F. Patel-Schneider
cf038fd982
settings: improve label and description for LED zone settings
2024-04-19 16:05:29 -04:00
Peter F. Patel-Schneider
7bef5c046c
settings: add message about Onboard Profiles to LED Zone settings
2024-04-19 16:05:29 -04:00
Peter F. Patel-Schneider
c4e2a5683a
device: initialize device registers to empty list
2024-04-19 16:05:29 -04:00
Peter F. Patel-Schneider
08c748c593
release 1.1.12rc1
2024-04-19 03:54:54 -04:00
Peter F. Patel-Schneider
e667d41c7b
solaar: use bluez dbus signals to disconnect and connect bluetooth devices
2024-04-18 20:32:40 -04:00
Peter F. Patel-Schneider
d7ce636917
device: handle a different signal for onboard profiles directory in ROM
2024-04-15 14:40:50 -04:00
Peter F. Patel-Schneider
86bab897d1
receiver: introduce small delay in getting pairing information to let receiver settle after pairing
2024-04-15 14:40:50 -04:00
Peter F. Patel-Schneider
b616419f72
device: fix bug found in testing
2024-04-13 18:38:44 -04:00
Peter F. Patel-Schneider
269e970aa6
device: fix small bugs uncovered by testing
2024-04-13 18:38:44 -04:00
Peter F. Patel-Schneider
d6499808f9
device: fix bugs in onboard profiles found during testing
2024-04-13 18:38:44 -04:00
Peter F. Patel-Schneider
3855409605
device: fix bugs in hidpp20 found during testing
2024-04-13 18:38:44 -04:00
Peter F. Patel-Schneider
d12575b47d
tests: test GESTURES settings
2024-04-13 18:38:44 -04:00
Peter F. Patel-Schneider
e64eec18e9
tests: extend testing of hidpp20
2024-04-13 18:38:44 -04:00
Peter F. Patel-Schneider
b43cdace79
tests: expand tests for settings_templates
2024-04-09 10:31:06 -04:00
Peter F. Patel-Schneider
8de3a1d2e2
device: better support for extended ajustable dpi
2024-04-09 10:31:06 -04:00
Peter F. Patel-Schneider
ab94f1be07
device: limited support for extended adjustable dpi
2024-04-09 10:31:06 -04:00
Peter F. Patel-Schneider
c70e8b54bf
tests: remove unused code
2024-03-27 18:02:55 -04:00
Peter F. Patel-Schneider
afe04b9804
settings: remove unused code and fix but in EQUALIZER setting
2024-03-27 11:15:15 -04:00
Peter F. Patel-Schneider
f38fbcf949
settings: provide symbolic names for per-key lighting keys
2024-03-27 11:15:15 -04:00
Peter F. Patel-Schneider
4d0f93b35c
tests: improve infrastructure for testing setting_templates
2024-03-27 11:15:15 -04:00
Peter F. Patel-Schneider
1ed5f765e3
settings: implement and test per-key lighting
2024-03-27 11:15:15 -04:00
Peter F. Patel-Schneider
bd437b548b
ui: refactor pair_window
2024-03-25 09:13:22 -04:00
Peter F. Patel-Schneider
8ee291c144
settings: add in bit telling RGB effects changes to change ROM
2024-03-24 15:44:15 -04:00
Peter F. Patel-Schneider
97d214f667
ui: handle situation when read of a setting fails
2024-03-24 15:44:15 -04:00
Peter F. Patel-Schneider
1a874c39d7
settings: permit continuing when a read during pushing fails
2024-03-24 15:44:15 -04:00
Peter F. Patel-Schneider
e202e904b4
settings: add settings for RGB EFFECTS feature
2024-03-24 15:44:15 -04:00
Peter F. Patel-Schneider
c8288a6b69
settings: fix bug in LEDZoneSetting when effect is not implemented
2024-03-24 15:44:15 -04:00
Peter F. Patel-Schneider
c81809bd39
device: add RGB EFFECTS feature version of LED COLOR EFFECTS data
2024-03-24 15:44:15 -04:00
Peter F. Patel-Schneider
490493d7a3
device: handle BRIGHTNESS CONTROL notifications
2024-03-24 15:44:15 -04:00
Peter F. Patel-Schneider
3876f07d57
settings: implement and test BRIGHTNESS_CONTROL
2024-03-24 15:44:15 -04:00
Peter F. Patel-Schneider
4fd75a64ff
settings: fix small bugs found from testing
2024-03-24 07:02:39 -04:00
Matthias Hagmann
6f613b17c7
refactor: Manually improve f-string formatting
2024-03-24 07:01:56 -04:00
Matthias Hagmann
4e6361429e
refactor: Use f-strings for more exceptions and log message
...
Semi manually convert remaining strings with no translation to f-string.
2024-03-24 07:01:56 -04:00
Peter F. Patel-Schneider
d1d3d71091
settings: patch to make python 3.7 happy
2024-03-23 10:11:30 -04:00
Peter F. Patel-Schneider
17bbc9c4ea
settings: simple change to improve testability
2024-03-23 10:11:30 -04:00
Peter F. Patel-Schneider
47ba1402ed
device: use feature_request from the device everywhere in hidpp20
2024-03-23 10:11:30 -04:00
Peter F. Patel-Schneider
7d6428a03b
settings: fix bug in backlight 2 durations
2024-03-23 10:11:30 -04:00
Peter F. Patel-Schneider
ebc76bca24
tests: add tests for logitech_receiver device
2024-03-23 08:26:12 -04:00
Peter F. Patel-Schneider
50c8013cb1
ui: reduce deprecation warnings in ui
2024-03-19 09:07:21 -04:00
Peter F. Patel-Schneider
c617988788
hidapi: remove deprecation warnings
2024-03-19 09:07:21 -04:00
Peter F. Patel-Schneider
480badbe8c
device: align init methods for all receiver classes
2024-03-16 16:24:33 -04:00
Peter F. Patel-Schneider
6164317a64
tests: improve hidpp20 coverage
2024-03-16 16:20:39 -04:00
Peter F. Patel-Schneider
dcd72b0178
device: fix bug in hidpp10 get_device_features
2024-03-16 16:20:39 -04:00
Matthias Hagmann
c6adf94e5d
refactor: Use dataclass for TestByte
...
Related #2378
2024-03-14 17:15:10 -04:00
Matthias Hagmann
2f6e3e21ec
refactor: Split diversion rules into smaller modules
...
Put rule conditions and actions into their into module
Related #2378
2024-03-14 17:15:10 -04:00
Matthias Hagmann
4e7356385d
refactor: Make _populate_model a function
...
Related #2378
2024-03-14 17:15:10 -04:00
Peter F. Patel-Schneider
154dd7017f
rules: allow sub-second delays in Later
2024-03-14 17:08:47 -04:00
Peter F. Patel-Schneider
4e4275c281
device: remove unreachable code
2024-03-14 17:08:47 -04:00
Peter F. Patel-Schneider
d76eed85f6
device: fix bug in setting configuration cookie due to bad documentation
2024-03-14 17:06:17 -04:00
Ferdina Kusumah
a02b1065ac
Add indonesian translations
2024-03-14 12:44:36 -04:00
Matthias Hagmann
5b09ace1f5
ruff: Apply single line import format
...
# Usage
pre-commit run --all-files
Related #2295
2024-03-13 15:41:21 -04:00
Matthias Hagmann
e92f1a8a0b
Automatically upgrade strings to f-string
...
Used flynt to convert strings to f-strings, where safely possible.
Usage:
flynt .
Related #2372
2024-03-13 11:02:50 -04:00
Peter F. Patel-Schneider
b957217ea8
receiver: delay device sending first messages
2024-03-13 08:34:28 -04:00
Peter F. Patel-Schneider
4a89a79a4d
device: remove checks for status attributes
2024-03-12 13:11:49 -04:00
Peter F. Patel-Schneider
dfd3d10c2e
device: optimize some functions in FeaturesArray
2024-03-12 12:21:17 -04:00
Peter F. Patel-Schneider
0b599194d1
device: fix bug in creating features array
2024-03-11 15:20:39 -04:00
Peter F. Patel-Schneider
f3ff61cfc1
cli: fix bug in building battery line in show
2024-03-11 15:20:39 -04:00
MattHag
704d591448
ui: refactor diversion_rules
...
* refactor: Create close dialog in its own function
Related #2378
* refactor: Create selected rule edit panel in module level function
Related #2378
* refactor: Remove commented code
Related #2378
* refactor: Use Gdk constant for right click button comparison
Related #2378
* refactor: Make _menu_do_copy a function
Related #2378
2024-03-11 10:19:20 -04:00
Peter F. Patel-Schneider
569f829a63
ui: fix bug in determining tray icon
2024-03-11 08:23:27 -04:00
Peter F. Patel-Schneider
24223e77c7
device: fix bug in getting friendly name
2024-03-11 08:23:27 -04:00
Peter F. Patel-Schneider
9c5ba6445e
device: remove status from Device and Receiver
2024-03-11 08:23:27 -04:00
Peter F. Patel-Schneider
a1418cd834
device: move changed method from status to Device and Receiver
2024-03-11 08:23:27 -04:00
Peter F. Patel-Schneider
1fe2eab1a4
device: move link_encrypted from status to Device
2024-03-11 08:23:27 -04:00
Peter F. Patel-Schneider
15d425c365
device: move battery information from status to Device
2024-03-11 08:23:27 -04:00
Peter F. Patel-Schneider
0805ecb511
device: move status string function to Device and Receiver
2024-03-11 08:23:27 -04:00
Peter F. Patel-Schneider
87285faf7f
receiver: move pairing status to new dataclass attached to receiver
2024-03-11 08:23:27 -04:00
MattHag
0d225f6cb1
test: Test base product information
...
* test: Test base product information
Related #1097
* Fix dependencies for gi
2024-03-10 10:11:02 -04:00
Matthias Hagmann
7ec3eddccc
test: Extract get_kind_from_index function and test it
...
Pull get_kind_from_index from class to module level and add tests.
Related #1097
2024-03-10 09:20:39 -04:00
Peter F. Patel-Schneider
523628926b
device: use Python 3.7 type hints
2024-03-09 10:36:40 -05:00
Peter F. Patel-Schneider
135c8b8cb9
device: use status attribute for error
2024-03-09 10:36:40 -05:00
Peter F. Patel-Schneider
8154cd759f
device: use status attribute for notification_flags
2024-03-09 10:36:40 -05:00
Peter F. Patel-Schneider
6b3f09aa5d
device: use status attribute for link_encrypted
2024-03-09 10:36:40 -05:00
Peter F. Patel-Schneider
9121169f91
ui: use Battery object in GUI
2024-03-09 10:36:40 -05:00
Peter F. Patel-Schneider
64d8cad81a
device: change status battery fields to Battery objects
2024-03-09 10:36:40 -05:00
Peter F. Patel-Schneider
3916c189be
receiver: move more method code to subclasses
2024-03-08 15:39:12 -05:00
Matthias Hagmann
4eb5a83326
receiver: create subclasses of receiver for different variants
...
Related #2350
2024-03-08 15:39:12 -05:00
Swapnil Devesh
5ee1c6df30
ui: fix app name casing in UI
...
* Fix app name casing in UI
* Linter fixes
* Only use NAME variable
* FIx linter errors
2024-03-05 12:08:56 -05:00
Peter F. Patel-Schneider
51ef2a7fe2
device: add missing receiver type for Lightspeed receivers
2024-03-03 15:14:20 -05:00
Peter F. Patel-Schneider
de8fe3685d
device: add new device types
2024-03-03 15:14:20 -05:00
Matthias Hagmann
c3b6802373
refactor: Get receiver product info before instantiation
...
Related #2350
2024-03-03 10:38:46 -05:00
Matthias Hagmann
8f6e8eef4c
Refactor: Move Device instantiation to factory class
...
Related #2273
2024-03-03 09:32:42 -05:00
Matthias Hagmann
51e44052b0
Refactor: Move Receiver instantiation to factory class
...
Related #2350
2024-03-03 09:32:42 -05:00
Matthias Hagmann
7d127ff068
fix: Use exception from exception module
2024-03-02 12:25:13 -05:00
Matthias Hagmann
fb9dbb9c39
update: Replace legacy logger.warn with logger.warning
...
Related #1097
2024-03-02 10:56:41 -05:00
Matthias Hagmann
d4702f0bf0
cleanup: Remove duplicated code to read register
...
Related #1097
2024-03-02 10:56:41 -05:00
Matthias Hagmann
a29f2b8614
tests: Add hidpp10 tests
...
Related #1097
2024-03-02 10:56:41 -05:00
Matthias Hagmann
9c76a6c5ba
refactor: Introduce Hidpp20 class
...
Related #1097
2024-03-02 10:56:41 -05:00
Matthias Hagmann
85149a809e
refactor: Introduce Hidpp10 class
...
Related #1097
2024-03-02 10:56:41 -05:00
MattHag
574a95da50
cleanup: Remove unnecessary calls of del
...
Related #2273
2024-03-02 10:48:06 -05:00
Peter F. Patel-Schneider
ad0f9ec712
settings: fix bug when reading BACKLIGHT setting from device
2024-03-02 09:22:57 -05:00
Matthias Hagmann
7ef3059b69
clean up: Remove editor specific marks
...
Related #2273
2024-02-29 10:10:46 -05:00
Matthias Hagmann
e53b5380a3
fix: Replace invalid hidpp20 usage
...
Related #1097
2024-02-28 17:41:46 -05:00
Matthias Hagmann
c3b01bffae
fix: Replace invalid hidpp10 usage
...
Related #1097
2024-02-28 17:41:46 -05:00
Peter F. Patel-Schneider
6939fb7196
solaar: use only timer thread to save config.yaml
2024-02-27 14:47:03 -05:00
Peter F. Patel-Schneider
6805a57b94
hid: copy newer version of hid_parser into Solaar codebase
2024-02-26 14:19:16 -05:00
Peter F. Patel-Schneider
8ae86acd65
ui: fix bug when displaying receiver notification flags
2024-02-26 10:55:14 -05:00
Peter F. Patel-Schneider
67be689866
device: reorder code in settings
2024-02-25 07:23:03 -05:00
Peter F. Patel-Schneider
069f96fe48
hidapi: make hid_parser optional, but add it to setup
2024-02-23 13:30:52 -05:00
Peter F. Patel-Schneider
20c4d64d17
device: add missing license blocks
2024-02-23 11:37:23 -05:00
Peter F. Patel-Schneider
b7afc410ba
device: clean up listener and notifications code
2024-02-23 11:37:23 -05:00
Peter F. Patel-Schneider
14f19ceaaf
solaar: cleanup listener code
2024-02-23 11:37:23 -05:00
Peter F. Patel-Schneider
8744506259
solaar: add locks to prevent multiple persisters for device
2024-02-23 08:40:16 -05:00
Peter F. Patel-Schneider
3954bbd111
solaar: clean up configuration code
2024-02-23 08:40:16 -05:00
Peter F. Patel-Schneider
ce2de71b1b
device: clean up device and receiver code
2024-02-22 09:57:02 -05:00
Peter F. Patel-Schneider
646ef2f596
device: move battery constants common to HID++ 1.0 and 2.0 to common
2024-02-22 09:57:02 -05:00
Peter F. Patel-Schneider
24ae9bacaa
device: move mapping of device kind into hidpp20
2024-02-22 09:57:02 -05:00
Peter F. Patel-Schneider
4b33c119f6
device: move pairing information gathering to receiver
2024-02-22 09:57:02 -05:00
Peter F. Patel-Schneider
fc8628c9c5
solaar: fix debugging levels
2024-02-21 16:06:22 -05:00
Peter F. Patel-Schneider
353c2dfb2f
device: expand allowable profile numbers
2024-02-21 16:06:22 -05:00
Peter F. Patel-Schneider
8e44c08139
device: clean up __init__ in logitech_receiver
2024-02-21 16:06:22 -05:00
Peter F. Patel-Schneider
68b62a9ee4
device: fix bug in hidpp20 get host names
2024-02-21 16:04:32 -05:00
Peter F. Patel-Schneider
af7806ed00
device: fix typo
2024-02-21 16:04:32 -05:00
Matthias Hagmann
04e709b00a
Remove yapf exclusions
...
Related #2295
2024-02-20 15:41:10 -05:00
Matthias Hagmann
eb937fcc3a
Manually fix linter issues
...
Related #2295
2024-02-20 15:41:10 -05:00
Matthias Hagmann
7774569971
Apply ruff format
...
Run ruff auto formatting using:
ruff format .
Related #2295
2024-02-20 15:41:10 -05:00
Peter F. Patel-Schneider
ce00a78e7f
rules: fix bug in Set action
2024-02-20 11:16:40 -05:00
Peter F. Patel-Schneider
3f692c0fe2
device: add notify module to logitech_receiver
2024-02-20 08:35:19 -05:00
Peter F. Patel-Schneider
6f633efac5
ui: implement setting_changed callback and pass in to new devices and receivers
2024-02-20 06:19:23 -05:00
Peter F. Patel-Schneider
ed248c62b9
device: add callback to call when changing a setting
2024-02-20 06:19:23 -05:00
Peter F. Patel-Schneider
476f41f8ae
logitech_receiver: style fixes
2024-02-20 05:58:33 -05:00
Matthias Hagmann
5f487dd3b2
logitech_receiver: Move hidpp20 constants into new module
...
Related #1097
2024-02-20 05:58:33 -05:00
Matthias Hagmann
2fcab65486
logitech_receiver: Move hidpp10 constants into new module
...
Related #1097
2024-02-20 05:58:33 -05:00
Matthias Hagmann
e8fdbeee8e
logitech_receiver: Move exceptions into own module
...
Related #1097
2024-02-20 05:58:33 -05:00
Peter F. Patel-Schneider
fa9494435b
device: streamline status code
2024-02-19 09:18:08 -05:00
Peter F. Patel-Schneider
50ddb54466
hidapi: upgrade debugging in udev
2024-02-19 09:16:56 -05:00
Peter F. Patel-Schneider
20a76fb4d3
device: improve features array
2024-02-18 08:21:09 -05:00
Peter F. Patel-Schneider
ab9e06829a
ui: move ui_async to common.py
2024-02-18 08:09:34 -05:00