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
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
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
8fb087be14
logitech_receiver: Remove GDK dependency
2024-09-15 09:18:51 -04:00
Peter F. Patel-Schneider
ae39ac46ba
docs: improve documentation for cli actions
2024-08-23 20:03:54 -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
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
a7784b40ab
cli: finish change to show.py for new constants
2024-06-13 05:54:36 -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
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
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
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
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
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
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
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
bd437b548b
ui: refactor pair_window
2024-03-25 09:13:22 -04:00
Peter F. Patel-Schneider
97d214f667
ui: handle situation when read of a setting fails
2024-03-24 15:44:15 -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
50c8013cb1
ui: reduce deprecation warnings in ui
2024-03-19 09:07:21 -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
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
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
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
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
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
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
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
Matthias Hagmann
7ef3059b69
clean up: Remove editor specific marks
...
Related #2273
2024-02-29 10:10: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
8ae86acd65
ui: fix bug when displaying receiver notification flags
2024-02-26 10:55:14 -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
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
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
ab9e06829a
ui: move ui_async to common.py
2024-02-18 08:09:34 -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
Peter F. Patel-Schneider
17e6463950
ui: improve imports in ui
...
ui: move imports in about.py to top of file
ui: move imports to top of notify.py
ui: move imports to top of window.py
ui: reorder imports at beginning of __init__.py
ui: move imports to top of tray.py
ui: move common code out of __init__.py to common.py
ui: move imports to top of __init___.py
2024-02-18 06:21:35 -05:00
Peter F. Patel-Schneider
ad6e3dc80e
cli: move imports in __init__.py to top of file
2024-02-18 06:21:35 -05:00
Peter F. Patel-Schneider
47f94a6a79
release 1.1.11
2024-02-18 05:59:47 -05:00
Peter F. Patel-Schneider
8dcb85ddb7
release 1.1.11rc4
2024-02-15 08:59:32 -05:00
Peter F. Patel-Schneider
8facd0cf68
dist: rename light icons and install them in correct place
2024-02-15 08:51:36 -05:00
Peter F. Patel-Schneider
1f954cd42e
release 1.1.11rc3
2024-02-14 12:21:49 -05:00
Peter F. Patel-Schneider
fb5b7e0582
ui: better checking for setting in record_setting
2024-02-13 04:01:19 -05:00
Matthias Hagmann
ca24a93005
Fix invalid func name set logo name
...
Related #2254 , #2276
2024-02-13 03:28:51 -05:00
Peter F. Patel-Schneider
438ea74dba
release 1.1.11rc2
2024-02-12 18:22:03 -05:00
Peter F. Patel-Schneider
e6aacc42dd
ui: tidy up scrolling appearance in configuration panel
2024-02-11 16:50:31 -05:00
Peter F. Patel-Schneider
663490ea4b
ui: don't unlock setting when changed by external means
2024-02-10 14:45:00 -05:00
Peter F. Patel-Schneider
468fad1358
ui: refactor code to record change to setting
2024-02-10 14:45:00 -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
8811374ed9
ui: don't lock setting when an error occurs
2024-02-10 09:15:27 -05:00
Peter F. Patel-Schneider
df9a5b7b19
cli: catch assertion errors when reading setting values from devices
2024-02-10 09:15:27 -05:00
Peter F. Patel-Schneider
e8ef9a176d
release 1.1.11rc1
2024-02-09 14:02:32 -05:00