Commit Graph

353 Commits

Author SHA1 Message Date
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
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 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 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 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
Peter Wu 3141f06472 Fix crash due to non-locatable icon names (#199) 2015-05-27 23:16:39 +02: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 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 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 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 5d4d0c07ad use () instead of [] where possible 2013-07-19 11:48:40 +02:00
Daniel Pavel 5d5f97a776 Gtk.Application.get_dbus_object_path my be missing 2013-07-18 14:06:51 +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 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 43ab629a26 moved logitech.unifying_receiver package to logitech_receiver 2013-07-12 22:48:09 +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 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 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 1be56dd072 version 0.8.99.12 2013-07-07 21:58:33 +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 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 bd3198f6f0 correctly handle out-of-process pairing and unpairing 2013-07-05 16:06: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 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 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 fb495fd2fc version 0.8.99.8 2013-07-01 19:35: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 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 b1e9480f5a minor logging tweaks 2013-07-01 15:00:21 +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 9896875180 cleaner import 2013-06-30 15:03:39 +02:00
Daniel Pavel da541e000a put usb ids into separate py file 2013-06-30 14:34:53 +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 1d305db29e minor UI layout tweaks 2013-06-29 19:02:19 +02:00
Daniel Pavel f43e298ac7 clean-up configuration on load and save 2013-06-26 16:05:14 +02:00
Daniel Pavel c25b769578 repr() formatting cleanups 2013-06-26 13:40:46 +02:00
Daniel Pavel ff6da43007 version 0.8.99.7 2013-06-25 16:08:47 +02:00
Daniel Pavel bd5c03812f replaced solaar png icons with svgs 2013-06-25 15:59:49 +02:00
Daniel Pavel 6b0b7ea823 minor clean-ups and formatting 2013-06-24 17:04:19 +02:00
Daniel Pavel dd24ed5fe0 brought solaar-cli in sync with the latest gui code 2013-06-24 17:02:45 +02:00
Daniel Pavel f64942b51d if the battery level is approximative, show a string instead of percentage 2013-06-24 17:02:00 +02:00
Daniel Pavel 375db9996f fixed reading correct device kind on link notification 2013-06-24 16:58:41 +02:00
Daniel Pavel dc59c79bd3 properly handle tree re-selection when removing a receiver 2013-06-23 18:35:23 +02:00
Daniel Pavel cec892ce88 disable poll ticking
It was necessary to periodically check if the peripherals are still
online -- suspend/resume may cause Solaar to (wrongfully) remember the
status of devices after a resume.

Now that is handled by the optional upower module -- the hard way -- by
restarting all listeners on resume.
2013-06-23 18:15:19 +02:00
Daniel Pavel d5374b9f51 optionally listen for upower suspend/resume events to stop/start all receiver listeners 2013-06-23 18:11:42 +02:00
Daniel Pavel 51e2d965cf version 0.8.99.6 2013-06-23 15:46:16 +02:00
Daniel Pavel b3aac40246 dropped activate_on_single_click, requires gtk 3.8 2013-06-23 13:44:34 +02:00
Daniel Pavel fb138b77ff version 0.8.99.5 2013-06-23 13:09:44 +02:00
Daniel Pavel 273284da39 use number instead of serial to pick devices in ui (faster start-up) 2013-06-23 12:09:46 +02:00
Daniel Pavel 7102229937 properly handle ^C in console 2013-06-22 21:32:19 +02:00
Daniel Pavel be80ba3b3b version 0.8.99.4 2013-06-21 22:27:18 +02:00
Daniel Pavel 4410cb6dc6 comment-out old main window 2013-06-21 22:25:04 +02:00
Daniel Pavel 613b115eb4 fixed clean-up of config panel when unpairing devices 2013-06-21 16:51:39 +02:00
Daniel Pavel e19b690bd5 fixed reading of polling rate 2013-06-21 16:47:19 +02:00
Daniel Pavel 888be8e8a8 be a bit more patient when pairing, the device notification may come after the pairing lock is closed 2013-06-21 16:40:00 +02:00
Daniel Pavel 8cd3b8fdef save configuration a little early, better timing on shutdown 2013-06-21 15:21:49 +02:00
Daniel Pavel c1aa341a7a tweaked timing of enabling receiver notifications 2013-06-21 15:20:52 +02:00
Daniel Pavel f9c192c47a only look for a different tray battery icon if the changed device is a peripheral 2013-06-21 15:19:07 +02:00
Daniel Pavel cdc6da844e made the config_panel self-contained 2013-06-21 15:18:21 +02:00
Daniel Pavel fd35f23af7 one a separate flag to check if the device is active 2013-06-21 15:17:14 +02:00
Daniel Pavel 3a63c3ad43 fixed reading encrypted link status in pairing window 2013-06-21 15:04:06 +02:00
Daniel Pavel 431f1c97cf added read/write_register to receiver and devices 2013-06-21 15:03:36 +02:00
Daniel Pavel c797808a40 fixed status keys in pairing 2013-06-20 19:35:54 +02:00
Daniel Pavel d810ccba84 tray icon: pick the battery of the lowest _active_ device 2013-06-20 17:25:53 +02:00
Daniel Pavel 2fea5d9af2 disable the unpair button for peripherals of a Nano receiver 2013-06-20 17:21:58 +02:00
Daniel Pavel eb317f0d46 version 0.8.99.2 2013-06-20 14:49:02 +02:00
Daniel Pavel 27de1aea11 tray/window: append new devices rather than inserting them at the top 2013-06-20 14:43:49 +02:00
Daniel Pavel 92f7e761ee don't save the configuration if it hasn't been loaded first 2013-06-20 14:27:18 +02:00
Daniel Pavel b2f1786eff use consistent naming of offline state for devices 2013-06-20 14:18:36 +02:00
Daniel Pavel f8369e7c63 properly style the details panel 2013-06-20 14:18:03 +02:00
Daniel Pavel f095a74f2a make the main window a regular window (visible in tasks list) 2013-06-20 13:51:42 +02:00
Daniel Pavel 4e3fccb009 fixed sizing of details panel 2013-06-20 13:41:05 +02:00
Daniel Pavel 47e22b788f version 0.8.99, will become 0.9 on release 2013-06-20 13:12:12 +02:00
Daniel Pavel 798628fdf8 add the USB id for the receiver in the details panel 2013-06-20 13:10:55 +02:00
Daniel Pavel 4bc525f250 minor clean-ups 2013-06-20 11:02:45 +02:00
Daniel Pavel 11cfc7ea09 enable notification on recevier as soon as possible 2013-06-19 19:46:54 +02:00
Daniel Pavel a806f2672d group all status keys into one object 2013-06-19 19:45:39 +02:00
Daniel Pavel 2fee88e54b fixed battery charge display in device info 2013-06-19 19:23:18 +02:00
Daniel Pavel 7e1a2a6e4f more fixes for device unpairing 2013-06-19 17:21:28 +02:00
Daniel Pavel d5b311760e clean obsolete settings controls when devices are unpaired 2013-06-19 17:04:01 +02:00
Daniel Pavel dffe6f8b91 fix display of firmware in details panel 2013-06-19 17:03:16 +02:00
Daniel Pavel b4bca4670b cache notification flags when possible
avoids unnecessary reads from devices when the status hasn't changed
2013-06-19 17:03:01 +02:00
Daniel Pavel 9fc11df229 fixed window update when unpairing 2013-06-19 16:22:44 +02:00
Daniel Pavel 56a7a960c3 polling: it may happen that the receiver is removed mid-poll 2013-06-19 16:14:04 +02:00
Daniel Pavel cd44cc6396 new single-window UI 2013-06-19 15:28:13 +02:00
Daniel Pavel f32e958984 version 0.8.9.4 2013-06-17 16:12:32 +02:00
Daniel Pavel 57c759773a attach configuration to device settings objects 2013-06-17 11:00:53 +02:00
Daniel Pavel a29609df21 only save the configuration once when Solaar ends 2013-06-17 08:00:00 +02:00
Daniel Pavel 04ea8293a8 persist and restore device settings 2013-06-16 17:41:03 +02:00
Daniel Pavel bde54aba3b proper shutdown of receiver listeners 2013-06-16 17:10:46 +02:00
Daniel Pavel a44d9b7ca8 fix battery display in main window 2013-06-16 17:10:46 +02:00
Daniel Pavel 03e20842fb cleaned-up gtk ui initialization 2013-06-12 14:29:34 +02:00
Daniel Pavel 29fe913fd8 version 0.8.9.3 2013-06-08 21:11:39 +02:00
Daniel Pavel 5b68f9623e fix indicator description when there are receivers but no devices 2013-06-08 21:10:17 +02:00
Daniel Pavel 5cf6777340 more tweaks to idle polling 2013-06-08 21:06:52 +02:00
Daniel Pavel b98e27e464 fix permissions error popup 2013-06-08 21:04:32 +02:00
Daniel Pavel d01d9edb78 tweaked idle polling timings 2013-06-08 16:27:03 +02:00
Daniel Pavel 0a86683392 clean-up in solaar.listener 2013-06-08 16:18:25 +02:00
Daniel Pavel b2b4febd31 receiver notifications: don't set all flags, might fail 2013-06-08 16:18:10 +02:00