Peter F. Patel-Schneider
cefc502db9
ui: give ghost devices a path
2025-02-08 15:30:37 -05:00
MattHag
382e0b6797
solaar: Remove outdated logger enabled checks
...
Logger enabled checks clutter the code unnecessarily. The checks are
now handled in a custom logger class. Eventually they can be completely
removed in the future.
Related #2664
2025-01-02 09:26:31 -05:00
MattHag
ab52c4a7c0
Introduce error types
...
Related #2273
2025-01-02 08:29:32 -05:00
some_developer
96364d2df3
Refactor InfoSubRegisters: Use IntEnum in favour of NamedInts
2025-01-01 10:46:04 -05:00
MattHag
72c9dfc50c
Remove NamedInts: Convert NotificationFlag to flag
...
Related #2273
2025-01-01 10:46:04 -05:00
MattHag
0bf7a78553
Add type hints
...
Related #2273
2025-01-01 10:46:04 -05: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
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
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
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
8fb087be14
logitech_receiver: Remove GDK dependency
2024-09-15 09:18:51 -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
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
c29231bc6b
refactor: Creation of devices ( #2493 )
...
* Refine interfaces for testability
* Reenable fixed device tests
2024-05-27 11:58:16 -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
e667d41c7b
solaar: use bluez dbus signals to disconnect and connect bluetooth devices
2024-04-18 20:32:40 -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
4a89a79a4d
device: remove checks for status attributes
2024-03-12 13:11:49 -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
87285faf7f
receiver: move pairing status to new dataclass attached to receiver
2024-03-11 08:23:27 -04:00
Peter F. Patel-Schneider
8154cd759f
device: use status attribute for notification_flags
2024-03-09 10:36:40 -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
Peter F. Patel-Schneider
14f19ceaaf
solaar: cleanup listener code
2024-02-23 11:37:23 -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
6f633efac5
ui: implement setting_changed callback and pass in to new devices and receivers
2024-02-20 06:19:23 -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
12de240949
device: improve imports in logitech_receiver
...
device: move imports of ui modules to beginning of files
logitech_receiver: remove imports from __init__.py
2024-02-18 06:21:35 -05:00
Peter F. Patel-Schneider
d1c899d6da
solaar: improve imports and guard Gtk, etc imports with correct version
...
solaar: move imports to top of files
solaar: move more imports to top of files
solaar: guard Gtk, etc imports with correct version
2024-02-18 06:21:35 -05:00
MattHag
87658fb189
logging: Simplify logger instantiation
...
* logging: Simplify logger instantiation
Relates #2254
* logging: Remove aliases
Relates #2254
* logging: Replace deprecated warn with warning
Related #2254
* logging: Fix mistake
Related #2257
2024-02-10 13:55:27 -05:00
Peter F. Patel-Schneider
28493f7496
ui: downgrade assertion on missing notification flag to warning
2024-01-30 08:02:25 -05:00
Peter F. Patel-Schneider
195e28ad76
gui: defend against lightspeed receivers that contact devices for basic information
2023-12-24 23:59:34 -05:00
Peter F. Patel-Schneider
4669cad2e1
ui: be more cautious when creating log messages to avoid exceptions
2023-11-19 12:04:02 -05:00
Peter F. Patel-Schneider
5657c1ac99
device: put initial ping of direct-connected devices inside listener thread
2023-01-16 08:44:56 -05:00
Peter F. Patel-Schneider
36e136b841
ui: retry adding devices if permissions are wrong
2022-12-17 13:28:11 -05:00
Peter F. Patel-Schneider
fc1b72faa1
ui: better handling of IO errors at device creation
2022-12-17 13:28:11 -05:00
Peter F. Patel-Schneider
e1e843346c
solaar: fix tyop in ping_all
2022-11-30 15:21:59 -05:00
ejsc1
5656f90cdb
misc: update yapf version
...
* misc: update yapf version v2
* Update .pre-commit-config.yaml
Co-authored-by: Peter F. Patel-Schneider <pfpschneider@gmail.com>
2022-11-26 22:37:32 -05:00
ejsc1
0c7a9dd0a7
misc: update isort to current version
...
* Update .pre-commit-config.yaml
* Update solaar
* Update udev.py
* Update __init__.py
* Update gtk.py
* Update i18n.py
* Update listener.py
* Update icons.py
* Update notify.py
* Update hidconsole
* Update gtk.py
* Update icons.py
Co-authored-by: Peter F. Patel-Schneider <pfpschneider@gmail.com>
2022-11-26 13:58:46 -05:00
Peter F. Patel-Schneider
9e5eb5853e
listener: check for presence of status attribute when resuming
2022-10-21 16:48:07 -04:00
Peter F. Patel-Schneider
3e90c3bc8a
hidapi: process hid report descriptors to identify devices
2022-10-13 16:14:30 -04:00
Peter F. Patel-Schneider
4059b377b4
receiver: use last_id as maximum device number not max_devices
2022-08-20 20:12:48 -04:00
Peter F. Patel-Schneider
b5e910916c
solaar: defensive measure for partly set up receiver when notifications start
2022-05-04 10:54:03 -04:00
Peter F. Patel-Schneider
bb20631a27
misc: remove support for Python 2 unicode
2022-04-11 13:20:42 -04:00