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
Peter F. Patel-Schneider
7d230a1f31
solaar: treat all DJ pairing notifications as only needing an informational message
2022-04-05 16:34:43 -04:00
Peter F. Patel-Schneider
3c4efb4ad5
ui: ensure that settings are pushed to all devices when resuming
2022-03-09 09:12:10 -05:00
Peter F. Patel-Schneider
b7a1b81181
device: push settings when device requests software reconfiguration
2021-12-20 08:06:03 -05:00
Peter F. Patel-Schneider
886df1daaf
receiver: add support for Bolt receiver (no pairing yet)
2021-11-11 10:48:12 -05:00
Hugo Osvaldo Barrera
6c4e0333d4
Drop legacy Python 2 `super()` syntax
...
This is a no-op on Python 3.
2021-10-30 16:49:41 -04:00
Hugo Osvaldo Barrera
22bf4fafff
Drop unnecessary __future__ imports
...
These are all active by default on all recent Python versions.
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
Peter F. Patel-Schneider
c1ce3c2c5f
listener: ignore many notifications that come to a device listener
2021-10-28 12:49:20 -04:00