diff --git a/lib/logitech_receiver/settings_templates.py b/lib/logitech_receiver/settings_templates.py index 39b76c1d42..e63e7fe2db 100644 --- a/lib/logitech_receiver/settings_templates.py +++ b/lib/logitech_receiver/settings_templates.py @@ -596,11 +596,8 @@ class CrownSmooth(_Setting): class DivertGkeys(_Setting): name = 'divert-gkeys' - label = _('Divert G Keys') - description = ( - _('Make G keys send GKEY HID++ notifications (which trigger Solaar rules but are otherwise ignored).') + '\n' + - _('May also make M keys and MR key send HID++ notifications') - ) + label = _('Divert G and M Keys') + description = (_('Make G and M keys send HID++ notifications (which trigger Solaar rules but are otherwise ignored).')) feature = _F.GKEY validator_options = {'true_value': 0x01, 'false_value': 0x00, 'mask': 0xff} diff --git a/lib/solaar/cli/show.py b/lib/solaar/cli/show.py index 8ba74f8fcc..9b204d0ab1 100644 --- a/lib/solaar/cli/show.py +++ b/lib/solaar/cli/show.py @@ -243,6 +243,8 @@ def _print_device(dev, num=None): v = setting.val_to_string(setting.read(False)) except _hidpp20.FeatureCallError as e: v = 'HID++ error ' + str(e) + except AssertionError as e: + v = 'AssertionError ' + str(e) print(' %s : %s' % (setting.label, v)) if dev.online and dev.keys: diff --git a/lib/solaar/ui/config_panel.py b/lib/solaar/ui/config_panel.py index ac9e399911..e95ac610fa 100644 --- a/lib/solaar/ui/config_panel.py +++ b/lib/solaar/ui/config_panel.py @@ -711,15 +711,15 @@ def _create_sbox(s, device): def _update_setting_item(sbox, value, is_online=True, sensitive=True, nullOK=False): # sbox._spinner.set_visible(False) # don't repack item box sbox._spinner.stop() + sensitive = sbox._change_icon._allowed if sensitive is None else sensitive if value is None and not nullOK: - sbox._control.set_sensitive(False) - _change_icon(False, sbox._change_icon) + sbox._control.set_sensitive(sensitive is True) + _change_icon(sensitive, sbox._change_icon) sbox._failed.set_visible(is_online) return sbox._failed.set_visible(False) sbox._control.set_sensitive(False) sbox._control.set_value(value) - sensitive = sbox._change_icon._allowed if sensitive is None else sensitive sbox._control.set_sensitive(sensitive is True) _change_icon(sensitive, sbox._change_icon)