Commit Graph

1069 Commits

Author SHA1 Message Date
Peter Wu 152abb086a hid10: document notifications better
See [registers.txt][1] for 'keyboard_backlight'. The behavior of
keyboard_sleep_raw and keyboard_multimedia_raw is described at
[keyboard.txt][2].

 [1]: https://git.lekensteyn.nl/ltunify/tree/registers.txt
 [2]: https://git.lekensteyn.nl/ltunify/tree/keyboard.txt
2013-05-19 10:14:31 +02:00
Daniel Pavel d5c36ddc89 about window tweak 2013-05-19 03:54:30 +03:00
Daniel Pavel 226a4ea2f3 version 0.8.8.1 2013-05-19 03:53:49 +03:00
Daniel Pavel ac0eafe6ab don't crash when failing to load the icon mask 2013-05-19 03:52:01 +03:00
Daniel Pavel ef62892f60 pop up a desktop notification if the battery is below 5% 2013-05-18 14:35:33 +03:00
Daniel Pavel 7ae24488d9 only notify on connected devices at start-up 2013-05-18 02:20:22 +03:00
Daniel Pavel 317cf6d00f only enable certain notification flags on devices
Also added some documentation to the notification flags, where possible.
2013-05-18 00:15:42 +03:00
Daniel Pavel a5eeac6e5a enable notifications for peripherals; fixes #27 2013-05-17 23:06:24 +03:00
Daniel Pavel 1764633bc5 status icon menu items open the right device window 2013-05-17 19:55:07 +03:00
Daniel Pavel 5f46c820e6 re-work the status icon updating 2013-05-17 16:03:37 +03:00
Daniel Pavel c20b279362 minor tweaks 2013-05-08 12:06:01 +03:00
Daniel Pavel 24ceb8801e window popup fix for kwin
also, only try to position the window next to the status icon if it has never
been shown before
2013-05-07 05:59:29 +02:00
Daniel Pavel 8d5ca66db7 get rid of bad map() calls 2013-05-06 17:51:03 +02:00
Daniel Pavel 074cafbab1 simpler (and dumber) way to position receiver windows initially 2013-05-06 17:39:27 +02:00
Daniel Pavel 79cd52833c fix hidconsole for python 2/3 2013-05-06 17:38:09 +02:00
Daniel Pavel 6b75286885 Merge remote-tracking branch 'origin/master' 2013-05-06 17:23:38 +02:00
Daniel Pavel b884ae039c Merge pull request #40 from Lekensteyn/fixes
Fix window close, fix positioning of new windows
2013-05-06 08:19:27 -07:00
Daniel Pavel 3ecfdd027e handle all 07/0D register notifications 2013-05-06 17:08:58 +02:00
Daniel Pavel 55ca9927b0 python 2/3: fix handling of first argument (unicode) of pack/unpack 2013-05-06 16:50:17 +02:00
Daniel Pavel 15f24eb26b use 'with' lock syntax instead of acquire/release 2013-05-06 15:35:20 +02:00
Daniel Pavel 0283bb0e91 fix str/unicode detection in Python 3.2 2013-05-06 15:33:42 +02:00
Daniel Pavel d39c0995b6 Merge remote-tracking branch 'origin/master' 2013-05-06 14:55:21 +02:00
Daniel Pavel db4c088ce9 Merge pull request #37 from Lekensteyn/py3-compat
Py3 compat: replace use of "unicode" (pwr/Solaar#32)

The `u''` syntax fails in Python 3.2; will fix is_string after the merge.
2013-05-06 05:54:53 -07:00
Daniel Pavel a4898e24b7 extended documentation of descriptors and registers 2013-05-06 14:51:57 +02:00
Daniel Pavel 74ca91d611 next version will be 0.8.8 2013-05-06 14:33:06 +02:00
Daniel Pavel e94d4b28b0 build a proper ghost device when unpairing; fixes #36 2013-05-06 12:06:28 +02:00
Peter Wu dded8504e6 Fix window positioning of main windows
Previously, the intent was likely to position the receiver window near the
status icon. It did so by calling move followed by present. According to the
Gtk documentation, move() may fail if the window is hidden before.

Therefore present the window *after* determining the position, but *before*
moving it. (presenting the window before getting the position gives a Gtk
warning and has unpredictable behavior wrt. the window position).

As window positioning is now enabled, add additional logic to prevent overlap
of windows: position the first window near the status icon and others on the
left. This is not idea, e.g. when the status icon is on the left side of the
screen, but the idea of positioning windows near to each other is broken anyway.
2013-05-05 11:18:29 +02:00
Peter Wu a2bad425f6 Fix window close, icon toggle logic
"Toggle" should mean "show or hide all windows", not "flip the visibility state
of windows". Case: one receiver window is open. When a new receiver is
connected, I also expect it to be open. Instead it is hidden, so I click the
icon. Now the new receiver window is shown, but the previous one is hidden.
Huh?! Indeed, let's fix that.
2013-05-05 11:18:29 +02:00
Daniel Pavel a4ec8ec05d better error dialog on receiver permission error; fixes #17
The problem is caused by starting Solaar right after installing it; while udev
does have the new rule loaded, the /dev/hidraw* device nodes already exist
with the old permissions.

Rather than doing a "udevadm --reload-rules" (which could have unknown side-
effects on other devices), instruct the user to remove and re-insert the usb
receiver. The new /dev/hidraw* device nods will be created with the right
permissions.
2013-05-05 10:35:03 +02:00
Daniel Pavel 1f48e44cc6 Merge remote-tracking branch 'origin/master' 2013-05-04 20:20:43 +02:00
Daniel Pavel 83613f02a0 disable info label while we're still reading the info from the device 2013-05-04 20:19:33 +02:00
Daniel Pavel 9d8743e765 comment-out descriptor settings for Anywhere MX, not actually tested 2013-05-04 20:18:10 +02:00
Peter Wu 2327a0012e descriptors.py: Clarify use of negative values
The negative behavior is not obvious, document it in the descriptors.py file
such that people who edit it to add new devices know how it works.
2013-05-04 20:02:37 +02:00
Daniel Pavel 4cdd796a3d comment-out some debugging prints 2013-05-04 19:50:50 +02:00
Daniel Pavel e819265e7e fix automatic register blacklisting 2013-05-04 19:50:08 +02:00
Daniel Pavel d7dd9393ff minor clean-ups 2013-05-04 17:19:48 +02:00
Daniel Pavel 64c36a1562 updated descriptors table and the devices doc 2013-05-04 17:18:39 +02:00
Daniel Pavel 13a54565ba cleaned-up the descriptors table 2013-05-04 15:09:50 +02:00
Daniel Pavel 4eeca12d6a create and destroy windows on demand
based on receiver added/removed events generated by udev
2013-05-04 12:20:51 +02:00
Daniel Pavel ad577d22d0 handle sleep in udev monitoring, fixes #35 2013-05-04 12:19:29 +02:00
Daniel Pavel 5e68094e87 split the about window into its own module 2013-05-04 12:01:28 +02:00
Peter Wu 10c26fe642 Py3 compat: replace use of "unicode" (pwr/Solaar#32)
Generating "an unknown notification" type bailed out because of an unknown
feature type None. Since `isinstance(other, str)` is False for None, the script
will raise an exception on `isinstance(other, unicode)`.

There is no differentiation between `str` and `bytes` in Python 2, therefore
add another condition to `NamedInt.__eq__` to catch unknown types (like
`bytes`).
2013-05-03 23:46:46 +02:00
Daniel Pavel 49ecd252ed always log exceptions, even without -v 2013-05-03 18:42:45 +02:00
Daniel Pavel 2ee2a5dc46 Merge remote-tracking branch 'origin/master' 2013-05-03 17:08:32 +02:00
Daniel Pavel 430fdf4fcf initial support for the MOUSE_POINTER hid++2.0 feature 2013-05-03 17:08:26 +02:00
Daniel Pavel abca81ea38 fix device _match-ing in enumerate() 2013-05-03 16:35:54 +02:00
Daniel Pavel a0a76f738b assert that data read/written on the receiver handle is of type bytes 2013-05-03 16:35:28 +02:00
Daniel Pavel 7d440c2430 replace thrown OSError with IOError 2013-05-03 16:25:32 +02:00
Daniel Pavel 94274fd092 Merge pull request #34 from Lekensteyn/battery-notif
Refactor battery setter, register 07 processing
2013-05-02 20:40:20 -07:00
Peter Wu 266edd80f3 Process reg07 battery notification 2013-05-03 00:10:58 +02:00
Peter Wu d1b1be32ca Make read_battery use set_battery_info
This allows battery readouts to generate warnings and debug logs for a given
status and level.
2013-05-02 23:56:08 +02:00
Peter Wu fbdd923d43 Refactor battery info update
- `self[BATTERY_STATUS] = BATTERY_STATUS[battery_status]` should be:
  `self[BATTERY_STATUS] = _hidpp20.BATTERY_STATUS[battery_status]`, otherwise
  the battery status would be a single char from the string `battery-status`.
- Make `_hidpp20.BATTERY_OK` check against strings instead of a number.
- Move setting battery information to a separate function, `set_battery_info`.
  This prepares for notifications when a battery error/warning occurs.
2013-05-02 23:51:40 +02:00
Peter Wu d8e469a33a hidpp10: split reg07 (battery) parsing so it can be reused 2013-05-02 23:06:45 +02:00
Peter Wu a6b89b3ea3 Python3 compatibility for hidconsole
`type(u'')` is 'str' in Python 3, it was `unicode` on Python 2 (with
`unicode_literals` from `__future__`).
2013-05-02 22:58:35 +02:00
Daniel Pavel 0f80901bce quicker detection of matching receivers in udev 2013-05-02 11:11:53 +02:00
Daniel Pavel 8fc45e5590 fix solaar-cli to handle the new Receiver.open() api 2013-05-01 15:51:12 +02:00
Daniel Pavel c829304e31 use only udev events to detect receiver devices 2013-05-01 15:47:23 +02:00
Daniel Pavel d3f94ff2fb detect some HID++1.0 custom battery notifications
they're not handled yet
2013-05-01 11:36:15 +02:00
Daniel Pavel 04db6d3838 python 3 fixes for #29 2013-04-30 22:31:06 +02:00
Daniel Pavel e5a28ac64e simplified window/icon code, reworked how device updates are signalled 2013-04-30 19:44:03 +02:00
Daniel Pavel 2397c6c0ea about dialog updated 2013-04-30 17:25:09 +02:00
Daniel Pavel c3e6c3d1da more flexible icon loading 2013-04-30 15:45:35 +02:00
Daniel Pavel 22da75cb72 replaced some deprecated GObject calls with GLib 2013-04-30 11:47:30 +02:00
Daniel Pavel 9c621d5816 always try to initialize systray icon and notifications 2013-04-28 15:44:20 +02:00
Daniel Pavel feedbcf581 some code clean-ups 2013-04-28 15:16:45 +02:00
Daniel Pavel a57f3be58d renamed event alert levels to be more clear 2013-04-28 15:12:20 +02:00
Daniel Pavel 897dffc426 only dispatch notification events from the specialized listener thread 2013-04-28 15:09:09 +02:00
Daniel Pavel 6f0b61e6d8 better handling of eq/ne/hash in receiver and device objects 2013-04-28 15:02:17 +02:00
Daniel Pavel 674ee9ac9e split read_battery in status into its own function 2013-04-28 15:01:27 +02:00
Daniel Pavel 5eab013cf6 more explicit logging 2013-04-28 14:58:40 +02:00
Daniel Pavel 079ef8d800 incipient support for the Nano receiver 2013-04-28 14:27:16 +02:00
Daniel Pavel 1a9be279c6 move the code for single-instance check into its own file 2013-04-28 14:06:41 +02:00
Daniel Pavel f5d2eba0c4 hidapi: dropped native, slight update to the python implementation
added an optional filter for driver name when enumerating devices
2013-04-28 14:05:33 +02:00
Daniel Pavel e7d19c9084 small fixes to hidconsole 2013-04-28 14:00:46 +02:00
Daniel Pavel 638bf38b25 version increased to 0.8.7.1 2013-04-28 13:59:07 +02:00
Daniel Pavel c4dc49ac5e Merge pull request #24 from Lekensteyn/hid10-fnkey
Add FN key swap support for K800 (and presumably K710)
2013-04-28 02:03:33 -07:00
Peter Wu 5e58f1e273 Fix battery status reading, add "fully charged"
Commit 438c501fae introduced support for HID++ 1.0
battery information. That accidentally selected the third parameter instead of
the second one. This commit fixes that and additionally adds a "fully charged"
status too that was found on the K800.
2013-04-27 17:07:55 +02:00
Peter Wu c79ad65d37 Add K710 with FN key swap support (pwr/Solaar#18)
The K710 keyboard is (according to the issue reporter) part of a MK710 combo
(which also contains a M705 mouse). Observing a succesful 07 register read,
I think that it is a HID++ 1.0 device too that uses the same register for FN
key swapping as K800.
2013-04-27 15:17:05 +02:00
Peter Wu 95a97ad776 Support FN keys swap for K800 2013-04-27 15:13:42 +02:00
Peter Wu 6c28cedf23 Make BooleanValidator accept bytes too besides int
Previously, only the first parameter byte can be read or written. After this
patch, it is possible to select/write more bytes by specifying a mask of type
bytes with the appropriate length.
2013-04-27 15:12:55 +02:00
Peter Wu 438c501fae Parse battery status of HID++ 1.0 devices
This applies to K800 but it seems also to apply to M510. The numbers are based
on the HID++ 2.0 spec that state the following for GetBatteryCapability:

    If number of levels < 10 or if mileage is disabled then report are
    mapped to 4 levels this way.

    0%->10%     critical
    11%->30%    low
    31%->80%    good
    81%->100%   full

    i.e. to report battery low, FW send 25%, to report battery good, FW send 50%.
2013-04-27 11:58:09 +02:00
Daniel Pavel 6ff30f2a0e release 0.8.7 2013-01-18 18:37:06 +02:00
Daniel Pavel 7707c5e558 don't notify on device disconnection 2013-01-18 17:41:45 +02:00
Daniel Pavel 9b7a920e0d fix for systray visibility (gihub #14) 2013-01-18 17:18:35 +02:00
Daniel Pavel 2e51380be5 log value of register 0x07 when register 0x0D not available 2013-01-18 12:41:01 +02:00
Daniel Pavel b82c89c582 release 0.8.6.2 2013-01-09 21:47:59 +02:00
Daniel Pavel 581d6747ad Merge branch 'nano' into 0.9
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2013-01-09 21:10:39 +02:00
Daniel Pavel 00a1aa7628 release 0.8.6.1 2013-01-09 15:36:15 +02:00
Daniel Pavel 79a9048db5 fixed names for NamedInts numerical values 2013-01-09 15:31:19 +02:00
Daniel Pavel 2bfba2e399 fixed application quit icon 2013-01-09 13:47:30 +02:00
Daniel Pavel 484419e526 release 0.8.6 2013-01-08 00:59:30 +02:00
Daniel Pavel 653d370a85 fixed locating application icons when running in a custom prefix 2013-01-08 00:40:54 +02:00
Daniel Pavel 316e91cfcf fixed some icon names 2013-01-08 00:39:13 +02:00
Daniel Pavel bb52c13f9a only allow a single instance of solaar to run at a time 2013-01-07 21:34:47 +02:00
Daniel Pavel 738d43fd83 fix for gihub issue #10
http://github.com/pwr/Solaar/issues/10
2013-01-07 20:14:31 +02:00
Daniel Pavel 60405abf58 dropped unnecessary #! in lib/ python files 2013-01-07 11:54:52 +02:00
Daniel Pavel 36f34da227 proper debian packaging, dropper stdeb 2013-01-05 11:48:35 +02:00
Daniel Pavel 064a7a113c added setup.py for python and debian packaging 2012-12-18 05:03:43 +02:00
Daniel Pavel 430a2d71e3 read all device features as soon as the application is idle 2012-12-14 19:51:18 +02:00
Daniel Pavel e43e92f2b0 commented-out testing register for M705 2012-12-14 16:57:10 +02:00
Daniel Pavel cc6c0ee7df fix for python3 2012-12-14 16:25:46 +02:00
Daniel Pavel f0c5046ccf re-worked the settings classes 2012-12-14 06:44:44 +02:00
Daniel Pavel 9db2a65b31 solaar-cli: return on the first match when searching for device name
results may be occasionally ambiguous, but the command runs faster
2012-12-13 15:12:51 +02:00
Daniel Pavel b39016df7c small clean-ups in device status handling 2012-12-13 14:54:31 +02:00
Daniel Pavel c22fe6320d properly slice NamedInts 2012-12-13 05:26:56 +02:00
Daniel Pavel b99ccdf612 support slices in FeaturesArray and KeysArray 2012-12-13 03:34:39 +02:00
Daniel Pavel 2d338ffbfb better __str__ of Setting instances 2012-12-13 03:33:19 +02:00
Daniel Pavel 954fc29613 fix event storm when toggling a device's property 2012-12-12 22:55:04 +02:00
Daniel Pavel 27f10cd10e small clean-up in FeaturesArray, should be slightly faster 2012-12-12 21:44:37 +02:00
Daniel Pavel f4b92ee690 print () clean-ups 2012-12-12 21:43:55 +02:00
Daniel Pavel 1c4d3d5f13 simpler NamedInt, more logical NamedInts 2012-12-12 21:42:43 +02:00
Daniel Pavel 7bb7a092a4 descriptors update (new device K230)
also assume by default all devices have battery info in register 0x0D,
and blacklist them when that's not the case
2012-12-12 21:41:29 +02:00
Daniel Pavel 0ed623caf9 made notifications handling clearer in status.py 2012-12-12 21:39:04 +02:00
Daniel Pavel 19cd40cfdd renamed 'events' to 'notifications'
in order to match the name in Logitech's documentation
2012-12-12 21:03:07 +02:00
Daniel Pavel 17698bfeae minor clean-ups in texts 2012-12-12 20:44:29 +02:00
Daniel Pavel fa72b89b3a release 0.8.3 2012-12-08 05:29:50 +02:00
Daniel Pavel 80c36a02a9 improved notifications detection 2012-12-08 01:49:59 +02:00
Daniel Pavel d38bec39b6 improved hid++ support 2012-12-08 00:41:43 +02:00
Daniel Pavel 33a9ca060d made hidconsole more user-friendly 2012-12-08 00:41:10 +02:00
Daniel Pavel 30fedf418c re-read device settings when they come back online 2012-12-07 21:00:36 +02:00
Daniel Pavel ee16892481 fixed registers access 2012-12-07 20:38:24 +02:00
Daniel Pavel e2909f6165 fixed event detection 2012-12-07 20:37:13 +02:00
Daniel Pavel b86dcce381 I come from the __future__, come with me if you want to live. 2012-12-07 17:10:22 +02:00
Daniel Pavel c4be58f074 dropped bin/scan as deprecated, bin/solaar-cli completely replaces it 2012-12-07 15:31:19 +02:00
Daniel Pavel b3f0bfa4fb fixed obsolete import 2012-12-07 14:41:00 +02:00
Daniel Pavel 37daf3a192 better handling of terminal in hidconsole 2012-12-07 14:40:48 +02:00
Daniel Pavel 7ada4af31b hidconsole has to be run in unbuffered mode 2012-12-07 14:29:30 +02:00
Daniel Pavel 67db483b0b dropped the unittests, they've been obsolete and nonfunctional for a long time now 2012-12-07 14:00:28 +02:00
Daniel Pavel 3569489ce7 added registers and settings to device descriptors 2012-12-07 13:54:03 +02:00
Daniel Pavel 9066003240 named ints act like proper sequences now 2012-12-07 13:50:44 +02:00
Daniel Pavel f0007d0a13 updates to the command lines 2012-12-07 13:41:07 +02:00
Daniel Pavel ff6db1d00a fix for python 3 2012-12-06 14:15:28 +02:00
Daniel Pavel 27403a08d2 improved hid++ 1.0 support 2012-12-05 21:41:02 +02:00
Daniel Pavel 6d70d2aada improved support for hid++ 1.0 devices 2012-12-05 15:10:41 +02:00
Daniel Pavel 5a99e55309 readme updates 2012-12-03 15:07:35 +02:00
Daniel Pavel 116ba72f37 fixed possible dangling weakrefs on start-up 2012-12-03 12:51:22 +02:00
Daniel Pavel 3fe9caf0e6 added solaar-cli for command-line operations 2012-12-03 11:34:35 +02:00
Daniel Pavel 2a44b0bb5b fixed scan not seeing the devices 2012-12-01 22:34:52 +02:00
Daniel Pavel 1cc532d600 fixed orphaned weakrefs when unpairing a device 2012-12-01 19:12:53 +02:00
Daniel Pavel 8f5fa0cf9a code clean-ups, the app starts faster now 2012-12-01 15:49:52 +02:00
Daniel Pavel 89c6904d69 fixed pairing (again), this time also tested it 2012-11-30 20:28:22 +02:00
Daniel Pavel 14663ca204 re-wrote loading of icons for devices 2012-11-30 15:23:16 +02:00
Daniel Pavel 64d2b35ace some clean-ups 2012-11-30 15:20:41 +02:00
Daniel Pavel ab5e09db93 pairing fixes 2012-11-29 21:26:03 +02:00
Daniel Pavel 932a015e49 better battery icon in the systray 2012-11-29 20:13:53 +02:00
Daniel Pavel d6b18cd426 python 3 fixes 2012-11-29 12:34:20 +02:00
Daniel Pavel 84540fb087 re-wrote most of the app, based on latest HID++ docs from Logitech 2012-11-29 04:10:16 +02:00
Daniel Pavel 5b8c983ab3 some speed tweaks to hidconsole batch mode 2012-11-24 22:49:15 +02:00
Daniel Pavel 13a11e78f0 added more known device names and kinds 2012-11-13 09:48:52 +02:00
Daniel Pavel 4c5cf85091 re-worked the UI a bit to give better info on devices status 2012-11-12 15:28:38 +02:00
Daniel Pavel 6db4deafee python 3 fixes 2012-11-11 22:37:42 +02:00
Daniel Pavel bcc2bf123e fixed initialization sequence for newly detected devices 2012-11-11 20:11:30 +02:00
Daniel Pavel 50fedab19e re-worked how fd handles are used in multi-threading 2012-11-11 17:03:13 +02:00
Daniel Pavel 4b2d8a8d5a addded custom swids to feature calls 2012-11-09 09:20:28 +02:00
Daniel Pavel ec6a2d892a improved hidconsole in tty and batch mode 2012-11-08 12:01:00 +02:00
Daniel Pavel a59ad221a1 improved support for HID 1.0 devices 2012-11-08 11:41:09 +02:00
Daniel Pavel c9843e4408 properly implemented pinging a device 2012-11-08 11:39:56 +02:00
Daniel Pavel 8ae8d4502d fixed some log messages 2012-11-07 22:32:55 +02:00
Daniel Pavel 5f6fd5a333 added codename for Performance MX mouse 2012-11-07 21:51:07 +02:00
Daniel Pavel 89205f0bbc better matching of task replies 2012-11-07 21:29:06 +02:00
Daniel Pavel f172ceebd1 when input is not a tty, wait a second before exiting 2012-11-07 21:28:42 +02:00
Daniel Pavel d5dec5f7ec logging fix 2012-11-07 21:14:50 +02:00
Daniel Pavel f8d0beb471 don't forget the 6th device on scan 2012-11-07 20:41:14 +02:00
Daniel Pavel 6e939e9485 small documentation updates 2012-11-06 18:44:24 +02:00
Daniel Pavel 4cb9b30466 use the first python version found when starting the scripts 2012-11-05 20:52:51 +02:00
Daniel Pavel 5c38c33374 notify in case of permissions problem on the hidraw device 2012-11-04 15:30:39 +02:00
Daniel Pavel d5f8a4bc45 cleanup in the pyudev hidapi implementation, incremented app version 2012-11-03 07:49:10 +02:00
Daniel Pavel 39855408ed added pyudev-based implementation of hidapi 2012-11-02 22:09:31 +02:00
Daniel Pavel 8fc078bdaf hidapi.enumerate() returns an iterable 2012-11-02 22:09:04 +02:00
Daniel Pavel 6e06e39612 fixed loading readline history when the file does not exist 2012-11-02 09:57:08 +02:00
Daniel Pavel 802da6a21a clean-ups 2012-11-02 07:21:55 +02:00
Daniel Pavel 1d8ac27614 clean-up and simpler monitoring of receiver state 2012-11-01 13:47:11 +02:00
Daniel Pavel a8a72f7ae5 dropped the watcher thread
now the receiver is looked for and initialized on the application's main
thread
2012-11-01 06:30:29 +02:00
Daniel Pavel e7bb599689 reworked the way tasks are processed by the listener 2012-10-27 18:40:54 +03:00
Daniel Pavel 62a91b56d2 logging and python3 cleanups 2012-10-24 15:09:39 +03:00
Daniel Pavel 60c13270f9 ui and pairing updates 2012-10-24 01:50:57 +03:00
Daniel Pavel 7354429316 fix for python3 2012-10-23 09:06:19 +03:00
Daniel Pavel 4f183b2826 added info box for the unifying receiver 2012-10-22 20:59:21 +03:00
Daniel Pavel b10ade4430 initial implementation of pairing 2012-10-22 10:03:26 +03:00
Daniel Pavel f2dac70131 reworked the receiver and devices into classes 2012-10-18 14:19:20 +03:00
Daniel Pavel ec7ebb0939 fix a double-free when the receiver is removed 2012-10-13 19:55:44 +03:00
Daniel Pavel 371b874986 Packet __str__ fix 2012-10-13 18:30:00 +03:00
Daniel Pavel e6d1244ed5 use a fully async model for updating the device statuses 2012-10-13 18:21:47 +03:00
Daniel Pavel bca21a7220 use specialized namedtuple for events 2012-10-13 18:13:05 +03:00
Daniel Pavel 0255194b46 dropped firmware from standard device info 2012-10-12 04:36:13 +03:00
Daniel Pavel 5da2d43b1c expanded devices database, commented out some unnecessary logging 2012-10-12 04:24:35 +03:00
Daniel Pavel bc9f39873e api function to query receiver info 2012-10-11 22:02:13 +03:00
Daniel Pavel cbfcd8416a re-organized the directories a bit 2012-10-11 19:19:27 +03:00
Daniel Pavel c9f06aa5da clean-ups in LUR library 2012-10-11 18:38:57 +03:00
Daniel Pavel f295d1d90e tweaked the ui a bit 2012-10-11 16:46:49 +03:00
Daniel Pavel e52bfe53a5 reorganized the app files a bit 2012-10-10 17:24:13 +03:00
Daniel Pavel e34ad5104f reworked the event listener 2012-10-10 06:37:03 +03:00
Daniel Pavel 9111afcd6b small updates to the app 2012-10-09 15:13:31 +03:00
Daniel Pavel 9b2c1bdef6 fixes for python3 2012-10-09 12:31:46 +03:00
Daniel Pavel 377d7c844d made hidconsole work in python2 and 3 2012-10-08 15:03:36 +03:00
Daniel Pavel 257f74b496 cleaned-up the app a bit 2012-10-08 14:12:38 +03:00
Daniel Pavel 882332256b made hidconsole read events properly 2012-10-08 14:10:56 +03:00
Daniel Pavel 058d81a767 improvements to the hid console 2012-10-07 20:20:36 +03:00
Daniel Pavel 8ee2940106 cleanups in api 2012-10-07 20:19:57 +03:00
Daniel Pavel 4f8e983843 some cleanups in base 2012-10-07 16:45:44 +03:00
Daniel Pavel c6427ab4a6 better logging in cli tools 2012-10-06 14:48:42 +03:00
Daniel Pavel ecf3539ba2 cleanups 2012-10-05 13:26:52 +03:00
Daniel Pavel cb3a42c04e greatly simplified loading of icons 2012-10-05 02:39:32 +03:00
Daniel Pavel 9ba6aa1c31 added a devices status window 2012-10-04 01:36:43 +03:00
Daniel Pavel 7ba3a6fe70 made hidapi a package 2012-10-03 08:42:40 +03:00
Daniel Pavel 73460c2541 fixed some typos 2012-09-28 14:10:56 +03:00
Daniel Pavel d65c1dbf59 some clean-ups in the logitech library 2012-09-28 13:58:17 +03:00
Daniel Pavel 0fe3151051 added a cli tool for scanning the UR devices 2012-09-28 10:34:49 +03:00
Daniel Pavel 407c41756d added a hid console tool 2012-09-28 02:18:10 +03:00
Daniel Pavel 42ef44e2e2 forget about devices that have been disconnected for too long 2012-09-28 01:19:23 +03:00
Daniel Pavel 4100e8c625 small clean-ups 2012-09-28 00:59:03 +03:00
Daniel Pavel 4da3c09949 updated lib and application to work both python 2 and 3 2012-09-27 21:17:49 +03:00
Daniel Pavel 216c9eafe7 added proper icons for the receiver and K750 keyboard 2012-09-27 17:44:03 +03:00
Daniel Pavel 51bdea32d5 some library cleanups 2012-09-27 16:05:41 +03:00
Daniel Pavel 692ea58937 raise NoReceiver if the receiver is removed during read 2012-09-27 15:52:42 +03:00
Daniel Pavel 0dc02af78d properly distinguish between read error and no data read 2012-09-27 15:16:43 +03:00
Daniel Pavel 05560d8af4 solaar app functional now 2012-09-27 14:55:38 +03:00
Daniel Pavel 2c5a3b0ed2 small doc changes 2012-09-25 13:47:37 +03:00
Daniel Pavel 6c68f47597 small updates to hidapi, mostly cosmetic 2012-09-25 07:56:32 +03:00