Peter F. Patel-Schneider
56762b5494
device: move persister from Setting to _DeviceDescriptor to get around problem with settings discovered after startup
2020-01-21 03:23:25 +00:00
Peter F. Patel-Schneider
77e21a0b63
ui: fix crash when styles add padding by not setting 1-pixel columns; slightly better window layout; add style class to window
2020-01-21 03:11:35 +00:00
Peter F. Patel-Schneider
d6fa5269c5
ui: don't ignore offline devices when determining whether pairing is possible
2020-01-21 03:08:49 +00:00
Peter F. Patel-Schneider
0198d58dc7
hidpp20: fix error when showing battery
...
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2020-01-19 18:18:33 +00:00
Alex Cherkayev
814b7f30ba
docs: features: added some missing feature names and list of implemented features
...
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2020-01-19 18:17:18 +00:00
Alex Cherkayev
8039c035a7
devices: Add new variant of K800 keyboard
...
docs: Add K800 new variant to supported
2020-01-12 16:11:03 +00:00
effective-light
430b70711b
hidpp20: features: add BATTERY_VOLTAGE (0x1001) support
...
Signed-off-by: Filipe Laíns <lains@archlinux.org>
Co-authored-by: Filipe Laíns <lains@archlinux.org>
2020-01-12 16:05:21 +00:00
Peter F. Patel-Schneider
995544396c
receiver: don't log messages with unknown report IDs
2019-12-26 16:10:48 +00:00
Peter F. Patel-Schneider
4678f52293
don't have window always be on top
2019-12-24 18:54:12 +00:00
Peter F. Patel-Schneider
c6ccc0638d
devices: add M310
2019-12-24 12:49:00 +00:00
spaced
4fafd4f6be
hidpp20: features: add very basic implementation of 0x1982 (Backlight 2)
...
Fixes #547
2019-12-12 18:56:08 +00:00
Chad Condon
c389c9c2b7
ur: repair low resolution smooth scrolling
2019-11-30 23:12:07 +00:00
Tom Swartz
ae9e862f19
Fix typos in comments
2019-10-20 23:53:45 +01:00
Tom Swartz
12f4e187d6
Fix typos in logging, output
2019-10-20 23:53:45 +01:00
Filipe Laíns
51dd2a5d28
notifications: add missing protocol names
...
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2019-10-20 23:19:34 +01:00
Alex Cherkayev
6981555804
notifications: fix battery status notification parsing
...
Fix indicator tooltip (duplicate Solaar line, python list instead of battery status).
2019-08-20 09:40:39 +02:00
spaced
3583759d3a
devices: basic support for craft keyboard
...
* basic support for craft keyboard
* fix issue where _(status) throws exception because namedInt with UTF8.decode
2019-08-20 09:39:11 +02:00
Zachary Cook
a06ea6de11
data: fix icon theme for battery level
...
It was previously assigning levels 1-89 to caution and 90+ to full, which was unintended due to the floor division by 100
2019-08-20 09:35:31 +02:00
Andreas Schneider
a868b477e1
Fix reading and storing DPI in config settings
...
Fixes #328
Fixes #356
Fixes #545
2019-08-20 09:24:22 +02:00
spaced
1ff9c3a40b
support for silent mouse M585/M590
2019-08-20 09:23:38 +02:00
Filipe Laíns
2aab7f71fd
release 1.0.1
...
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2019-07-26 16:55:51 +01:00
Filipe Laíns
6376980213
udev: fix c52b + MX Master
...
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2019-07-26 17:50:13 +02:00
Filipe Laíns
1bb08d011d
base-usb: add new Lightspeed receiver
...
used in the G305
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2019-07-26 15:23:55 +01:00
Filipe Laíns
966c55e69d
base-usb: fix non-unifying for linux 5.2
...
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2019-07-26 15:18:24 +01:00
Filipe Laíns
6b14004a6f
udev: fix writting to the device
...
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2019-07-26 15:10:59 +01:00
Daehyeok Mun
7a4f7bbb84
docs: fix broken github.io link to new repo url
...
Signed-off-by: Daehyeok Mun <daehyeok@gmail.com>
2019-07-26 15:38:16 +02:00
Matthias Fulz
155e2f8c40
fix : #531 #537 . Better handling of EPIPE during hid write.
2019-07-26 15:35:21 +02:00
Filipe Laíns
6a1968beff
release 1.0.0
...
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2019-07-26 14:33:16 +01:00
Filipe Laíns
f4557233f1
base-usb: add support for Lightspeed receivers
...
They way we are currently identifying the type of a receiver (unifying,
nano, lightspeed) in the Receiver class is pretty bad. The correct
approach would be to specify the receiver type name string in
base_usb.py.
Signed-off-by: Filipe Laíns <lains@archlinux.org>
2019-07-16 11:10:03 +02:00
Peter Wu
a587ae65d1
Merge pull request #477 from doctor64/pointer_info_show
...
Added status info print and rename some functions
2019-06-29 18:08:52 +02:00
Peter Wu
127a8053d8
Merge pull request #521 from kacpi2442/master
...
Added basic support for Lenovo dongle,
https://download.lenovo.com/consumer/options/lenovo_n50_wireless_optical_mouse.pdf
2019-06-29 18:04:25 +02:00
Patrick Decat
6c0acee645
Fix UnicodeDecodeError with ngettext and python2
2019-06-29 18:01:54 +02:00
nicolas
60c52eb13f
Name for K780
...
“Multi-Device” and not “Solar”
2019-06-29 17:59:44 +02:00
Benoit Hanotte
8bac8d68f4
Add MX Master settings
...
Add the same settings to the logitech MX Master as the one from the MX
Master 2 (scroll wheel DPI, smart scoll sensitivity).
2019-06-29 17:57:02 +02:00
kacpi2442
481511b6c2
Added basic support for Lenovo dongle
2019-04-15 15:40:40 +02:00
Peter Wu
c07c115ee3
Avoid collision for wpid 4055 (M185 vs M235)
...
Hopefully use of a slash does not cause issues. M505 already uses slash
in its codename.
Fixes #499
2019-01-30 16:58:00 +01:00
Markus Heiser
932164458a
icons: add application icons from repo's $git-toplevel/share/solaar/
...
Add application path from the repository to the search paths.
When you Install a project in editable mode (i.e. setuptools "develop mode")
from a local project path, the application path is ``./share``, relative to
git's top level folder. Add this path at the end of search path::
echo "$(git rev-parse --show-toplevel)/share"
2019-01-30 12:38:54 +01:00
Markus Heiser
de79bf1b5c
gtk.main(): make source more readable + comment about cli & gui
2019-01-30 12:38:54 +01:00
Peter Dave Hello
68b1f4e413
Update Data of Wireless Mouse M235 ( #486 )
2019-01-30 12:35:20 +01:00
Beni Cherniavsky-Paskin
1609c3e98a
Display "K400 Plus" rather than just "Plus" ( #483 )
2018-12-30 18:19:38 +01:00
Alex Cherkayev
ed9aa76547
Added status info on features MOUSE_POINTER, VERTICAL_SCROLLING, HI_RES_SCROLLING, POINTER_SPEED and LOWRES_WHEEL to solaar show.
...
Renamed functions for HI_RES_SCROLLING and LOWRES_WHEEL features for consistency.
2018-11-20 16:29:38 +02:00
Mattias Jernberg
f79ad67ea7
Add trackball for all settings that mice have
2018-08-13 18:44:16 +02:00
Mattias Jernberg
dd8018a4d5
Prepare for allowing multiple device kinds in settings
2018-08-13 18:44:16 +02:00
Mattias Jernberg
350784eb70
Print an error message when assertion fails
2018-08-13 18:36:52 +02:00
Peter Wu
f0fc63e5b7
Merge pull request #295 from cschreib/master
...
Added support for MintX icon set (for Linux Mint integration)
2018-08-13 11:33:10 +02:00
Ben Wolsieffer
2c0ea34694
Fix device tree GUI hierarchy.
2018-08-11 16:24:15 -04:00
Peter Wu
867edf8516
Merge pull request #146 from tristianc/master
...
Added border around tree view.
2018-08-11 17:55:37 +02:00
Peter Wu
dcd1a88250
Merge pull request #390 from Toshik1978/master
...
Added Logitech K375s support
2018-08-11 16:36:13 +02:00
Peter Wu
336b778398
Merge pull request #452 from lopsided98/hidpp-4.5-fixes
...
Fix errors related to sleep and power on/off (especially HID++ >=2.0 devices).
Closes #414 by @SonicFrog who originally came up with a similar fix for the connection notice.
2018-08-11 16:26:25 +02:00
Peter Wu
572c7f5e59
Merge pull request #450 from lopsided98/new-m705
...
Add support for new version of M705 (M-R0073).
2018-08-11 16:11:37 +02:00
Peter Wu
ade2fbacec
Merge pull request #399 from Valantin/patch-1
...
Add MX Master 2S descriptor
2018-08-11 16:03:18 +02:00
Ben Wolsieffer
a59368f3e7
Fix issues with HID++ >= 2.0 devices (particularly related to sleep).
...
* Don't assume 0x41 messages only occur when a device is first paired
(prevents errors when waking from sleep or turning a device on)
* Delay reads/writes when a device is powered on, to prevent broken pipe
errors (hacky solution).
* Don't clear status when a device connects, preventing settings from being
cleared when a device sleeps or is turned off.
* Fix typos.
2018-08-10 23:15:37 -04:00
Jason Tibbitts
d021d87656
Python 3.7 compatibility fixes
...
This fixes the python 3.7 incompatibilities arising from 'async'
becoming a reserved word.
The file lib/solaar/async.py is renamed to asks.py. I picked the name
because it defines the TaskRunner class and it's the best I could come
up in fifteen seconds.
The async function in solar/ui/__init__.py is renamed to ui_async, and
the various imports of that function are changed to match.
Without this patch it doesn't build at all. I am running with this
patch applied and everything appears to work as expected.
Signed-off-by: Jason Tibbitts <tibbs@math.uh.edu>
2018-08-07 12:51:32 -04:00
Ben Wolsieffer
5d0d353c74
Add support for new version of M705 (M-R0073).
2018-08-05 00:10:59 -04:00
Peter Wu
1a67b33860
Merge pull request #382 from mchehab/fix_solaar_start_issues
...
Fix solaar start issues
2018-01-12 18:11:45 +01:00
Roberto Valentini
f8079f4f9d
Add MX Master 2S descriptor
...
Add descriptor for MX Master 2S to support High Resolution Wheel, correct charge level and DPI configuration
2017-11-16 14:53:27 +01:00
Anton Krivenko
47e7f997d5
Added Logitech K375s support
2017-10-14 22:08:40 +03:00
Josenivaldo Benito Jr
aeb943fc9e
Descriptor for K270 and M185
...
This K270 is the non unifying version and we know that it has, at
least, one variation (unifying) out there.
M185 mouse is also older, as per PR #337 there is at least two newer
versions of this mouse.
Signed-off-by: Josenivaldo Benito Jr <jrbenito@benito.qsl.br>
2017-09-25 14:57:11 -03:00
Peter Wu
10f3421021
Merge pull request #345 from jrbenito/M510_v4.5
...
Add M510 (new version) to descriptors
2017-09-21 00:30:31 +01:00
Mauro Carvalho Chehab
632d8804be
listener: don't add elements if queue is full
...
When Solaar is loaded, if a large number of events happen,
it will lose the register events, as the queue size is too
small (16). So, check if the queue is full, in order to
avoid losing those important events.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2017-09-11 10:36:12 -03:00
Mauro Carvalho Chehab
a4b7194490
listener: fix device registration logic
...
The "already_known" var actually doesn't track if the device was
already registered or not.
That causes race issues at Solaar, causing it to sometimes not
detect a device.
Change the logic to always call register_new_device if the
corresponding events happen, and updating already_known
to reflect it.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2017-09-11 10:34:23 -03:00
Mauro Carvalho Chehab
ea80c6d639
ui: notify.py: disable python Notify extension
...
For whatever reason, this doesn't work on Fedora 26:
06:47:05,925 DEBUG [ReceiverListener:hidraw1] logitech_receiver.base: (13) => r[20 02 0100 0000000000000000000000]
06:47:05,925 DEBUG [ReceiverListener:hidraw1] logitech_receiver.notifications: <PairedDevice(2,2011,K520)> (1.0) custom notification Notification(2,01,00,000000000$
06:47:05,925 WARNING [ReceiverListener:hidraw1] logitech_receiver.notifications: <PairedDevice(2,2011,K520)>: unrecognized Notification(2,01,00,000000000000000000000$
06:47:08,806 ERROR [MainThread] solaar.ui.notify: showing <Notify.Notification object at 0x7f82c2484640 (NotifyNotification at 0x556fa0fc5a40)>
Traceback (most recent call last):
File "./devel/solaar/lib/solaar/ui/notify.py", line 145, in show
n.show()
Error: g-io-error-quark: Error calling StartServiceByName for org.freedesktop.Notifications: Timeout was reached (24)
So, disable it.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2017-09-11 07:02:48 -03:00
Mauro Carvalho Chehab
a01e4b2efe
hidpp20.py: handle gracefully errors at REPROG_CONTROLS_V4
...
At least with Anywhere Mouse MX 2, one reprogrammed key
fails to read:
ERROR [MainThread] logitech_receiver.base: (3) device 3 error on feature request {0829}: 2 = invalid argument
That causes "solaar show" to crash. Instead, let's handle
errors there gracefully, reporting it as:
7: unknown:00C3 , default: unknown:009C => unknown:00C3
virtual, pos:0, group:4, gmask:0
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2017-09-10 22:53:19 -03:00
Mauro Carvalho Chehab
801bdfa224
Remove the hid++ high-res wheel notification
...
The best is to make the logitech-hidpp driver to switch to
hid++ notification mode when it starts. As we don't want users
to mangle with it, let's remove support from it.
PS.: I opted to keep this as a separate patch. This way, if
anyone needs to add support for it, in order to debug the
driver, it is just a matter of reverting this patch.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2017-09-10 21:49:18 -03:00
Mauro Carvalho Chehab
410d100dc6
Add notification for high-resolution Wheel events
...
The event at address 0 is only produced while in HID++ mode.
The rachet event (address 0x10) happens on both HID and
HID++ modes.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2017-09-10 21:49:18 -03:00
Mauro Carvalho Chehab
7078750a3f
MX Anywhere2: Correct feature Smooth Scrool
...
Set wrongly to HI_RES_SCROLLING. Correct it to HIRES_WHEEL as reported
by MX Anywhere2.
relates to #283
Signed-off-by: Josenivaldo Benito Jr <jrbenito@benito.qsl.br>
2017-09-10 21:49:18 -03:00
Mauro Carvalho Chehab
360c92f6b0
Add support for CLI show to display High Res Wheel settings
...
Add support for the high resolution wheel found on MX Anywhere 2.
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2017-09-10 21:44:30 -03:00
Peter Wu
684afa871e
Merge pull request #337 from doctor64/m185
...
Basic support for M185 mouse
2017-07-17 00:08:19 +02:00
Alex Cherkayev
f9618dd0ab
Add M185 keys reporting using REPROG CONTROLS V4 in cli
...
Add smooth scrolling using LOWRES_WHEEL
Add mouse speed selection using POINTER_SPEED
2017-03-21 18:02:59 +02:00
Alex Cherkayev
db0656967b
Add basic 0xc534 receiver and M185 mouse support
...
Fix connection notification protocol for M185
Fixes from review
2017-03-21 18:00:44 +02:00
Peter Wu
53ec751cf1
Merge pull request #343 from jrbenito/K270-unifying
...
Wireless Keyboard K270 unifying
2017-03-21 00:07:26 +01:00
Josenivaldo Benito Jr
d9d37edc2f
MK220 Combo descriptor for Mouse M150 and new docs
...
Thanks to @FabioBeneditto for providing information.
Depends on #337
fixes #222
Signed-off-by: Josenivaldo Benito Jr <jrbenito@benito.qsl.br>
2017-03-10 10:47:23 -03:00
Josenivaldo Benito Jr
ae405871fb
Add M510 (new version) to descriptors
...
Depends on #337
fixes #279
Signed-off-by: Josenivaldo Benito Jr <jrbenito@benito.qsl.br>
2017-03-08 19:48:23 -03:00
Josenivaldo Benito Jr
d2d19a615d
Wireless Keyboard K270 unifying
...
Descriptor and docs for K270 unifying version.
Signed-off-by: Josenivaldo Benito Jr <jrbenito@benito.qsl.br>
2017-03-08 16:23:30 -03:00
Dimitriy Ryazantcev
197ff7365d
Add Russian translation
2016-12-21 00:18:01 +02:00
Dimitriy Ryazantcev
934ecb821d
Update l10n strings in code
2016-12-21 00:18:01 +02:00
Peter Wu
f0cf949336
Merge pull request #322 from jrbenito/anywhere2
...
Anywhere MX 2 device information and descriptor
2016-12-20 21:29:10 +01:00
Josenivaldo Benito Jr
3b60f205f7
K780 add descriptor support and device information
...
Device information provided by @faassen
Tests provided by @ralphdd
relates to #298
Signed-off-by: Josenivaldo Benito Jr <jrbenito@benito.qsl.br>
2016-11-30 14:38:44 -02:00
Josenivaldo Benito Jr
d6c93cfcfe
Anywhere MX 2 device information and descriptor
...
Information from mouse Anywhere MX 2 as provided by @fropeter
Descriptor for mouse based on dump provided
Signed-off-by: Josenivaldo Benito Jr <jrbenito@benito.qsl.br>
2016-11-30 14:24:50 -02:00
Josenivaldo Benito Jr
d83530bee3
pt-br: Improve translations
...
Some pt-br translation where ambiguous or too missing 'not' statement.
Add original translator, Mr. Drovetto, to the documentation.
Signed-off-by: Josenivaldo Benito Jr <jrbenito@benito.qsl.br>
2016-11-21 17:25:22 -02:00
muzena
fb1442dbcb
Add croatian translation
2016-11-15 16:34:20 +01:00
muzena
0b8141f092
Logitech G700 and G700s Gaming mouse support
2016-11-14 16:39:23 +01:00
Peter Wu
4c1f568fab
Merge pull request #141 from ghost
...
Italian translations
2016-11-10 13:04:42 +01:00
Jhonny Oliveira
9a9a82016f
Add support to G700 Gaming Mouse receiver
2016-11-10 12:25:54 +01:00
Jhonny Oliveira
aa03cef61f
Add support to MK320 mouse and keyboard combo
2016-11-08 09:17:02 +01:00
Peter Wu
c14e30b6f5
Fix crash when AppIndicator3 is unavailable
...
Convert ValueError to an ImportError (hack!) to allow the fallback code
to function.
Fixes https://github.com/pwr/Solaar/pull/276
2016-11-06 19:50:32 +01:00
cschreib
b5d43cdc3c
Added support for MintX icon set (for Linux Mint integration)
2016-10-22 13:49:50 +02:00
vbs
358e0958bb
fixed wrong interpretation of bit 6 of the notification byte which indicates if the link could be established (bit cleared) or not (bit set)
...
https://lekensteyn.nl/files/logitech/logitech_hidpp10_specification_for_Unifying_Receivers.pdf
2016-09-17 18:05:03 +02:00
Javier Torres
ba540338e2
Add smart shift feature for MX master
2016-06-09 19:46:03 +02:00
Javier Torres
2442fee341
Add support for range features in GUI
2016-06-09 19:46:03 +02:00
Javier Torres
bbadd3e755
Add support for range features in CLI
2016-06-09 19:46:03 +02:00
Javier Torres
2fdce2f938
Add range features
2016-06-09 19:46:03 +02:00
Javier Torres
f1fad2d16b
Add range validator
2016-06-09 19:46:03 +02:00
Chris Mayo
e046455a05
Fix: "AppIndicator3 was imported without specifying a version first"
...
PyGIWarning: AppIndicator3 was imported without specifying a version
first. Use gi.require_version('AppIndicator3', '0.1') before import to
ensure that the right version gets loaded.
2016-05-03 20:20:46 +01:00
Peter Wu
ddbc27486c
Merge pull request #136 from erik-smit/gobject_not_allow_None
...
Fixes a TypeError on older GObject libraries (as evident with Ubuntu 12.04 and OpenSUSE 12.3).
2016-04-17 14:11:15 +02:00
Peter Wu
2041007b38
Merge branch 'features'
...
Automatically detect FN swap feature and DPI adjustment on some newer
devices. DPI adjustment partially addresses support for the MX Master
(#208 ), Smart shift is still missing.
2016-04-17 12:43:15 +02:00
Peter Wu
883ed9549d
Fix DPI list assertion
2016-03-25 00:06:00 +01:00
Peter Wu
d1858f747b
Assume 7 words for the DPI list response
...
HID++ 2.0 responses are 20 bytes, once you strip the 4 byte common
header and 1 byte sensorIdx, you have 15 bytes left. Since DPI values
are 16-bit words, only 14 bytes should be used.
2016-03-24 16:59:05 +01:00
Peter Wu
aa7d1b6410
Skip sensorIdx in getSensorDpiList response
2016-03-24 15:13:06 +01:00
Peter Wu
5b01f375e0
Merge pull request #254 from emerham/master
...
Adding Logitech mx 1100 cordless laser mouse to discriptors
2016-03-24 14:56:55 +01:00
Peter Wu
dd2755909d
cli/config: fix error message
...
Attempt to fix:
$ bin/solaar config master dpi higher
solaar: error: coercing to Unicode: need string or buffer, int found
The DPI choices are integers, therefore cast it to a str.
2016-03-18 12:27:16 +01:00
Peter Wu
b052ab9ef0
Fix thinko in Adjustable DPI setting
...
There are three bytes forming the parameter, the sensor ID is the MSB,
not LSB.
2016-03-18 12:14:15 +01:00
Peter Wu
9c768d60a1
Add full support for adjustable DPI
...
Feature 0x2201 as used by the MX Master. Valid DPI values are read
directly from the device. Based on Logitech specifications.
2016-03-15 23:37:39 +01:00
Matthew Brabham
d1d0ab85ff
Updated mouse device settings and deffinition. Added docs for the MX 1100
2016-03-14 13:05:05 -07:00
Peter Wu
e1eee2e078
Fix "Gtk was imported without specifying a version first"
...
Fixes the following warnings:
sys:1: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
sys:1: PyGIWarning: Notify was imported without specifying a version first. Use gi.require_version('Notify', '0.7') before import to ensure that the right version gets loaded.
2016-03-14 11:33:05 +01:00
Peter Wu
5c38f90cd6
Merge branch 'issue/199'
...
Fixes #136 .
2016-03-14 11:10:49 +01:00
Peter Wu
45d49b9de8
settings: fix Python 3 compat for boolean values
...
As observed for the fn-swap setting.
2016-03-14 01:48:56 +01:00
Peter Wu
ab162583e4
cli: do not die on missing description
...
The DPI setting has no description, do not try to display it.
2016-03-13 23:59:21 +01:00
Hugo Osvaldo Barrera
63a98819a6
Don't open a main window when battery is critical
...
The main window suddenly opening when a battery is critical is very
disruptive. It can pop up on all sort of undesirable scenarios.
Rather than catch users of guard, merely show a notification that the
battery is critical.
2016-02-19 03:25:55 -03:00
Stephen Lyons
478381a994
add: wpid for M 175 to distinguish between it and M185 wireless mouse
...
I own the former and wanted to correct this detail which caused the wrong
model to be shown in GUI.
Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
2016-02-10 19:09:25 +00:00
Matthew Brabham
51a15a960f
Adding Logitech mx 1100 cordless laser mouse to discriptors
2016-01-26 11:04:47 -08:00
Peter Wu
92967eed23
Merge pull request #249 from mulkieran/master-pyudev
...
Fix some bugs in udev.get_indexed_string.
2016-01-13 15:24:51 +01:00
mulhern
d75b6d2f2b
Fix some bugs in udev.get_indexed_string.
...
* from_device_number raises an exception if no device found, rather than
returning None. So, instead of checking the result, catch the exception.
* Use Attributes.get() method instead of checking containment and using the
index operator. This is really the only correct way, see rhbz#1267584.
Effect of the changes:
Previously, if no device was found this method would raise an exception.
Now it returns None instead.
Previously this method read the value of the attribute corresponding to key
twice, once via 'key in attributes' and again when accessing the key.
Now, it just reads it the one time.
Reason for noticing all these problems:
In pyudev-0.18 the Attributes class is fixed, and no longer has the []
operator or __contains__ method or other methods which require a total
mapping. This patch fixes several bugs while simultaneously avoiding these
removed operators.
Signed-off-by: mulhern <amulhern@redhat.com>
2015-12-23 09:22:48 -05:00
Marc Belmont
15f97681ef
Add setting for K400 Plus keyboard
...
The new_fn_swap works on the K400 Plus model.
2015-08-24 19:01:21 +02:00
Peter Wu
5ba816dd38
[WIP] Support MX Master with DPI adjustment support ( #208 )
...
It's not known whether the DPI ranges can be queried, so let's set
hard-code some values for now. Step size is 200. Does this need to
be changed?
TODO: need a capture of whether this is really a read function.
2015-05-31 15:53:26 +02:00
Peter Wu
a515cc3860
Auto-detect FN swap feature for newer devices
2015-05-31 10:56:57 +02:00
Peter Wu
73344cbf26
Simplify feature checking
...
Make mapping features to settings more readable. No functional changes.
2015-05-31 10:38:49 +02:00
Peter Wu
cf27328d13
Merge branch 'updates'
...
Documentation updates.
2015-05-27 23:43:10 +02:00
Peter Wu
e2d65a690e
hidpp20: update features list
...
Based on SetPoint6.65.62_32.exe and Options_2.10.73.exe (features.xml,
defaults.xml, LogiOptionsMgr.exe).
The names are based on the named next to the feature ID. For duplicates,
_2 is appended to the name.
This commands helps parsing numbers from debug prints:
strings LogiOptionsMgr.exe |
sed -nr 's/.*(Feature[0-9a-fA-F]{4})/\1 /p' | sort |
awk 'tolower(a)!=tolower($1){print"";a=$1}1;' | less -S
2015-05-27 23:20:43 +02:00
Peter Wu
3141f06472
Fix crash due to non-locatable icon names ( #199 )
2015-05-27 23:16:39 +02:00
CzBiX
76e327d2fa
update docs for M325
2015-05-08 13:27:29 +08:00
CzBiX
0ae0ef195a
support switch smooth scroll feature
2015-05-08 13:20:46 +08:00
Daniel Serpell
3ea51fe1a2
Add support for MK220 mouse-keyboard combo device.
...
The MK220 receiver has usbid 046d:c52e, adding this id as a generic
receiver is enough to show the mouse and keyboard charge status.
2015-03-06 08:07:22 -03:00
Mikkel Munch Mortensen
66296265ba
Descriptor for k830.
2015-03-05 19:15:12 +01:00
Mikkel Munch Mortensen
952495ce04
Support for NEW_FN_INVERSION.
2015-03-05 19:14:28 +01:00
Tristin Celestin
2b08c5e0c9
Added border around tree view.
2014-01-01 21:45:44 -05:00
Michele Olivo
437e17cf37
Added Italian translation
2013-12-13 18:09:46 +01:00
erik-smit
9a6cdd9cee
TypeError: Argument 3 does not allow None as a value
2013-10-31 11:16:38 +01:00
David Plassmann
8485494ea7
It should check for None specificly
2013-09-25 14:12:53 +02:00
David Plassmann
7a75813a84
level is returned as None in hidpp10.py when the performanceMX mouse is
...
charging. Since the battery state is unknown when beeing recharged it
will now return "N/A".
Before it would crash becasue level was None and could not be inserted
using %d.
2013-09-24 16:56:50 +02:00
Peter Wu
1434b2a50d
Update features and keys list
...
Updated to information available from SetPoint 6.61.15.
2013-08-27 17:55:45 +02:00
Daniel Pavel
c3fdbfb643
translate battery alerts ( fixes #119 )
2013-08-25 23:03:25 +03:00
Peter Wu
b193b39701
Fix missing reprogrammable keys
...
The assumption that the Features IDs are in increasing order does not
hold. This causes the feature check for REPROG CONTROLS (1B00) to fail,
therefore remove the micro-optimisation.
While at it, rename variables and document the functions better.
2013-08-23 21:33:45 +02:00
Peter Wu
9c465cd998
Fix wrong register name for illumination (hidpp10)
...
Broken since 9a2a28e
, this causes a lot of exceptions for every move.
2013-08-21 21:47:24 +02:00
Peter Wu
024a71b618
solaar: add --hidraw option again
...
This options allows the devices list to be restricted which got removed
in:
commit 3b75b69970
Author: Daniel Pavel <daniel.pavel@gmail.com>
Date: Fri Aug 9 12:25:47 2013 +0200
merged solaar-cli functionality into main solaar binary
solaar-cli is still busted, but since it is deprecated, it's probably
fine.
2013-08-21 21:47:24 +02:00
Peter Wu
f144816256
solaar-cli: fix argument parsing in Python 3 again
...
Fix from e3a887f36c
, this got removed
in:
commit 3b75b69970
Author: Daniel Pavel <daniel.pavel@gmail.com>
Date: Fri Aug 9 12:25:47 2013 +0200
merged solaar-cli functionality into main solaar binary
2013-08-21 21:47:24 +02:00
Daniel Pavel
69febfcea5
don't rely on upower to check devices after wake-up ( #111 )
...
still use upower resume events to ping devices, just in case
the old behaviour is available with a command-line option
2013-08-12 15:22:34 +02:00
Daniel Pavel
9934755566
more translation fixes ( #108 )
2013-08-12 00:32:19 +02:00
Daniel Pavel
3b75b69970
merged solaar-cli functionality into main solaar binary
2013-08-09 12:25:47 +02:00
Daniel Pavel
a4f0eab855
updated descriptors with a few more devices
2013-08-08 22:44:23 +02:00
Daniel Pavel
f54ea27d97
updated translator credits in about dialog
2013-08-08 22:43:32 +02:00
Daniel Pavel
db48fe1b40
re-formatted translation files
2013-08-08 22:41:57 +02:00
Daniel Pavel
5faecbf4f3
some strings were untranslated; fixes #100
2013-08-08 21:50:04 +02:00
Daniel Pavel
5af1719384
tray: always pick the lowest battery, if the user hasn't already
2013-08-08 21:49:59 +02:00
Daniel Pavel
6a66370ffe
scrolling over the tray icon switches among devices; fixes #101
...
It now works for the standard systray as well, not just the
appindicator.
2013-08-08 21:49:54 +02:00
Daniel Pavel
c0874220d2
don't str() translated device status; fixes #108
2013-08-08 21:49:50 +02:00
Daniel Pavel
22656d5b82
use Gtk.Application properly
2013-08-08 21:49:35 +02:00
Daniel Pavel
d55963caba
clean-up in usb IDs
2013-08-08 21:49:35 +02:00
Daniel Pavel
413cebe40f
delay some UI initialization until necessary
2013-08-08 21:49:35 +02:00
Daniel Pavel
edc563e0e4
release 0.9.2
2013-07-24 11:40:54 +02:00
Daniel Pavel
969ca59948
translation credits: order languages alphabetically
2013-07-24 11:39:45 +02:00
Daniel Pavel
c97f4082dd
translation credits updated
2013-07-23 22:49:47 +02:00
Daniel Pavel
3d4570cd1f
check the Gtk bindings version at start-up
2013-07-20 06:22:15 +02:00
Daniel Pavel
b6bc35ed3e
K800: added support for hand detection
2013-07-19 11:49:30 +02:00
Daniel Pavel
5d4d0c07ad
use () instead of [] where possible
2013-07-19 11:48:40 +02:00
Daniel Pavel
15cb97c56e
udev devices may not have all the attributes; fixes #93
2013-07-19 11:46:50 +02:00
Daniel Pavel
fcfc7cd6fc
a few more asserts in descriptors
...
just testing stuff...
2013-07-18 20:38:05 +02:00
Daniel Pavel
c3718d22d6
minor clean-ups
2013-07-18 20:36:27 +02:00
Daniel Pavel
2829acd6f5
added side-scrolling toggle setting
2013-07-18 20:35:39 +02:00
Daniel Pavel
c35ae8ffc9
added wpid to T650 descriptor
2013-07-18 20:34:29 +02:00
Daniel Pavel
f7159e9338
properly mask flags when writing device settings; fixes #86
2013-07-18 20:33:52 +02:00
Daniel Pavel
4074fb7750
trim the codename to the declared length ( fixes #90 )
2013-07-18 16:23:34 +02:00
Daniel Pavel
444169d84b
added descriptor for V550 Nano
2013-07-18 15:26:53 +02:00
Daniel Pavel
5d5f97a776
Gtk.Application.get_dbus_object_path my be missing
2013-07-18 14:06:51 +02:00
Daniel Pavel
a8c5d3bc24
Nano receivers were unsupported on kernel 3.2; fixes #88
2013-07-18 14:01:36 +02:00
Daniel Pavel
a3f9860181
added descriptor for V450 Nano; fixes #89
2013-07-17 20:02:31 +02:00
Daniel Pavel
1fed000855
added wpid to M515 desccriptor
2013-07-17 19:54:28 +02:00
Daniel Pavel
61dfefde94
internationalized most strings; fixes #79
...
some might have slipped through the cracks
2013-07-17 19:53:21 +02:00
Daniel Pavel
a4c0ad3d73
added M345 descriptor info
2013-07-16 12:51:01 +02:00
Daniel Pavel
38c76393b1
added copyright notices to all source files
2013-07-15 17:54:42 +02:00
Daniel Pavel
ce9b10dc2d
started i18n support
2013-07-15 17:16:44 +02:00
Daniel Pavel
16af3a9acc
version 0.9.1
2013-07-13 11:24:41 +02:00
Daniel Pavel
c690b2c9e9
minor descriptors clean-up
2013-07-13 11:15:23 +02:00
Daniel Pavel
43ab629a26
moved logitech.unifying_receiver package to logitech_receiver
2013-07-12 22:48:09 +02:00
Daniel Pavel
b83a14e16f
minor clean-ups and formatting
2013-07-12 22:39:17 +02:00
Daniel Pavel
a966bbff6f
fixed handling of protocol version when the device is offline
2013-07-12 22:23:03 +02:00
Daniel Pavel
141a5c3dee
don't ping devices known to be offline
2013-07-12 22:07:58 +02:00
Daniel Pavel
994bb07bc4
descriptors updated
2013-07-12 21:55:32 +02:00
Daniel Pavel
24f658d8fe
support multiple Wireless PIDs for same device model
2013-07-12 21:53:23 +02:00
Daniel Pavel
49d77a2f90
handle unknown devices slightly better
2013-07-12 20:30:46 +02:00
Daniel Pavel
d78c7ed9be
make sure items in window tree are sorted by number ( fixed #73 )
2013-07-12 15:24:49 +02:00
Daniel Pavel
51d0ccf654
only popup the window once per device on battery alerts
2013-07-12 14:35:16 +02:00
Daniel Pavel
9c8252b59f
on alert popups, selected the device that triggered the popup
2013-07-12 14:10:26 +02:00
Daniel Pavel
488a78cc52
fixed #75 (pair button disappearing)
2013-07-12 10:35:28 +02:00
Daniel Pavel
0e6d088372
fixed some awkward path joining stuff
2013-07-11 22:46:29 +02:00
Daniel Pavel
948b4c4d51
updated descriptors and devices doc for Anywhere MX
2013-07-11 15:34:36 +02:00
Daniel Pavel
85efe92d30
replaced appinstance with GtkApplication
2013-07-09 17:52:07 +02:00
Daniel Pavel
c0a7838429
version 0.9.0
2013-07-09 14:42:46 +02:00
Daniel Pavel
eda4112501
removed obsolete old window code
2013-07-08 21:21:53 +02:00
Daniel Pavel
dbb9025e26
replaced _ dummies with _ignore
2013-07-08 21:21:14 +02:00
Daniel Pavel
beee0bc8c2
typo in comment
2013-07-08 20:51:30 +02:00
Daniel Pavel
1be56dd072
version 0.8.99.12
2013-07-07 21:58:33 +02:00
Daniel Pavel
d0b8233c9a
minor clean-up
2013-07-07 21:40:55 +02:00
Daniel Pavel
39534d11dd
make sure all debug and info loggings are if-guarded
2013-07-07 17:18:42 +02:00
Daniel Pavel
ca2f5f927c
configuration: save on every change ( fixes #80 )
2013-07-07 16:06:27 +02:00
Daniel Pavel
8b26759731
release 0.8.99.11
2013-07-07 14:04:11 +02:00
Daniel Pavel
7221ceb7b4
forget battery status when the device has been offline for too long
2013-07-07 12:23:58 +02:00
Daniel Pavel
66416ff4cc
fixed parsing of custom battery messages
2013-07-07 12:23:23 +02:00
Daniel Pavel
0d89d1e6c8
formatting fix in unpairing error dialog
2013-07-07 01:31:22 +02:00
Daniel Pavel
94d07eed53
version 0.8.99.10
2013-07-06 14:35:34 +02:00
Daniel Pavel
508444526a
commented-out the poll-ticking feature
...
not useful right now, and less code to worry about
2013-07-06 14:23:56 +02:00
Daniel Pavel
faa6de3b75
more explicit error dialogs, when possible
2013-07-06 14:20:50 +02:00
Daniel Pavel
77d2ae5249
omit the date in logging, is not important and the lines are shorter
2013-07-06 14:20:12 +02:00
Daniel Pavel
e2f94a9e0e
be more lax as to when to allow pairing new devices
2013-07-06 13:55:22 +02:00
Daniel Pavel
ba55e4d9bd
import * cleanups
2013-07-05 16:19:49 +02:00
Daniel Pavel
8e9ff939f3
hidconsole: enable hidpp automatically when talking to a Logitech Recevier
2013-07-05 16:19:24 +02:00
Daniel Pavel
bd3198f6f0
correctly handle out-of-process pairing and unpairing
2013-07-05 16:06:38 +02:00
Daniel Pavel
3319feeb73
replaced type() with isinstance() where possible
2013-07-05 16:02:38 +02:00
Daniel Pavel
47bcd4478c
prettier error message if unpair fails
2013-07-05 14:35:06 +02:00
Daniel Pavel
065b8628d2
don't always show Notifications in details
2013-07-05 14:34:37 +02:00
Daniel Pavel
87e2f1cad7
solaar-cli: clearer handling of invalid device numbers
2013-07-05 14:34:18 +02:00
Daniel Pavel
373b07f271
fixed pairing in solaar-cli
2013-07-05 14:33:58 +02:00
Daniel Pavel
58f598fc88
version 0.8.99.9
2013-07-04 13:49:48 +02:00
Daniel Pavel
8f44c294d7
still getting strange messages from some devices
2013-07-04 13:37:39 +02:00
Daniel Pavel
f65079ad6d
formatting fix for notifications
2013-07-04 13:35:23 +02:00
Daniel Pavel
edce56cd20
use a single separate thread for all possibly long-running stuff in GUI
2013-07-04 13:23:25 +02:00
Daniel Pavel
cd437c3809
only set NOTIFICATION_FLAGS for 1.0 devices
2013-07-04 13:22:35 +02:00
Daniel Pavel
007cbef086
better coverage of incoming events
2013-07-04 13:20:00 +02:00
Daniel Pavel
a03cc9ce64
more chair switching -- moved notifications handling into own .py
2013-07-03 08:21:40 +02:00
Daniel Pavel
3275aa4c12
allow most receivers to unpair (or at least try)
2013-07-03 08:18:47 +02:00
Daniel Pavel
a0f880fbba
fix for NoneType crash
2013-07-02 19:43:18 +02:00
Daniel Pavel
833f087fdf
also show polling rate in Hz
2013-07-02 12:23:47 +02:00
Daniel Pavel
9a2a28e0aa
replaced hard-coded register numbers with constants
...
also re-worked the battery reading code a bit
2013-07-02 12:23:12 +02:00
Daniel Pavel
bf5fc42f07
fixed duplicate entries in keyboard tasks
2013-07-02 00:40:34 +02:00
Daniel Pavel
fb495fd2fc
version 0.8.99.8
2013-07-01 19:35:46 +02:00
Daniel Pavel
90ab7af069
Anywhere MX and M600 descriptor updates
2013-07-01 19:22:46 +02:00
Daniel Pavel
3436055c7f
re-worked (AGAIN) the way the devices are initially set-up
...
There is absolutely no consistency between the registers and
features receivers have, even if they're the same product_id!
2013-07-01 19:00:26 +02:00
Daniel Pavel
20aa797e96
configuration: use wpid in device key
2013-07-01 18:53:10 +02:00
Daniel Pavel
5ebc2634ae
(hopefully) better serial read-out for devices
2013-07-01 18:40:03 +02:00
Daniel Pavel
94464a40b8
show the battery charge in the devices tree, if available ( fixes #71 )
2013-07-01 18:39:17 +02:00
Daniel Pavel
1194abf125
don't know yet how to tell if the receiver supports the unifying protocol
2013-07-01 15:28:05 +02:00
Daniel Pavel
ceba698678
moved settings templates into separate .py
2013-07-01 15:24:30 +02:00
Daniel Pavel
b1e9480f5a
minor logging tweaks
2013-07-01 15:00:21 +02:00
Daniel Pavel
eaa38c858c
properly format battery status string for 0x07 devices
2013-07-01 11:51:20 +02:00
Daniel Pavel
4504045bc6
extended descriptor for M305
2013-07-01 11:49:44 +02:00
Daniel Pavel
a9ea69b9a1
more explicit error message when trying to pair uncompatible devices
2013-07-01 11:41:47 +02:00
Daniel Pavel
9a8d089c73
handle some mystery data packets from older devices
2013-07-01 11:34:54 +02:00
Daniel Pavel
0d56cfbded
clean-up in get/set notification flags computation
2013-06-30 17:12:44 +02:00
Daniel Pavel
9896875180
cleaner import
2013-06-30 15:03:39 +02:00
Daniel Pavel
a1c04ce39f
renamed 'leds' register to '3leds', in case other may be found later
2013-06-30 15:02:58 +02:00
Daniel Pavel
da541e000a
put usb ids into separate py file
2013-06-30 14:34:53 +02:00
Daniel Pavel
e490162e4f
the K400 also has the FN swap feature
2013-06-30 14:04:14 +02:00
Daniel Pavel
a0b7d39f83
use the wpid to identify devices, when possible
2013-06-30 13:49:35 +02:00
Daniel Pavel
c464e049bf
allow settings to be bound to certain device types
...
avoids stuff like smooth-scroll being attached to a keyboard
2013-06-29 21:26:25 +02:00
Daniel Pavel
daad9b5d5f
cleaned-up NamedInts, added int2bytes and bytes2int generic functions
2013-06-29 20:37:04 +02:00
Daniel Pavel
2682722cb1
cleaned-up config_panel code
2013-06-29 20:35:35 +02:00
Daniel Pavel
8d5718178f
load the configuration when the device is detected
...
and apply it every time the device comes online
2013-06-29 20:35:02 +02:00
Daniel Pavel
1d438f098f
handle 0x07 battery notifications with indicating charging, but with no battery level
2013-06-29 20:26:29 +02:00
Daniel Pavel
1d305db29e
minor UI layout tweaks
2013-06-29 19:02:19 +02:00
Daniel Pavel
c2a549c114
the K800 also has 3 leds, use them to indicate battery charge
2013-06-28 17:09:05 +02:00