Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • S Solaar
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 10
    • Issues 10
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 2
    • Merge requests 2
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • pwr-Solaar
  • Solaar
  • Issues
  • #1130
Closed
Open
Issue created Apr 07, 2021 by Administrator@rootContributor

Icons defer to deprecated GTK CSS property -gtk-icon-theme

Created by: elsiehupp

Information

  • Solaar version: 1.04
  • Distribution: Debian Bullseye (GNOME 3.38.5)
  • Kernel version: Linux 5.10.0-5-amd64 x86_64 GNU/Linux
  • Output of solaar show:
/usr/share/solaar/lib/solaar/ui/__init__.py:27: 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.
  from gi.repository import GLib, Gtk
Unifying Receiver
  Device path  : /dev/hidraw0
  USB id       : 046d:C52B
  Serial       : DD729326
    Firmware   : 12.10.B0032
    Bootloader : 02.15
    Other      : AA.AA
  Has 1 paired device(s) out of a maximum of 6.
  Notifications: wireless, software present (0x000900)
  Device activity counters: 1=138

  1: Illuminated Living-Room Keyboard K830
     Device path  : /dev/hidraw1
     WPID         : 404C
     Codename     : K830
     Kind         : keyboard
     Protocol     : HID++ 4.1
     Polling rate : 8 ms (125Hz)
     Serial number: A7EBE278
     Model ID:      B335404C0000
     Unit ID:       18EB5384
        Bootloader: BOT 21.00.B0005
          Firmware: RQK 62.01.B0015
          Firmware: RBK 40.01.B0015
             Other: 
     The power switch is located on the edge of top right corner.
     Supports 28 HID++ 2.0 features:
         0: ROOT                   {0000}   
         1: FEATURE SET            {0001}   
         2: DEVICE FW VERSION      {0003}   
            Firmware: Bootloader BOT 21.00.B0005 404C19BCD210
            Firmware: Firmware RQK 62.01.B0015 404CF5AAB3B8
            Firmware: Firmware RBK 40.01.B0015 B335F5AAB3B8
            Firmware: Other   
            Unit ID: 18EB5384  Model ID: B335404C0000  Transport IDs: {'btleid': 'B335', 'wpid': '404C'}
         3: DEVICE NAME            {0005}   
            Name: Illuminated Living-Room Keyboard K830
            Kind: keyboard
         4: WIRELESS DEVICE STATUS {1D4B}   
         5: RESET                  {0020}   
         6: BATTERY STATUS         {1000}   
            Battery: 90%, discharging, next level 50%.
         7: BACKLIGHT              {1981}   
         8: unknown:1A20           {1A20}   internal, hidden
         9: REPROG CONTROLS V4     {1B04}   
        10: SWAP BUTTON CANCEL     {2005}   
        11: NEW FN INVERSION       {40A2}   
            Fn-swap: enabled
            Fn-swap default: enabled
            Swap Fx function: True
        12: ENCRYPTION             {4100}   
        13: KEYBOARD DISABLE KEYS  {4521}   
            Disable keys: {'1': False, '4': False, '8': False, '16': False}
        14: TOUCHPAD RAW XY        {6100}   hidden
        15: GESTURE 2              {6501}   
            Gestures: {'1': True, '2': True, '30': True, '10': True, '45': False, '42': True, '43': True, '64': False, '65': False, '67': False, '84': True, '34': True}
            Gesture params: {'4': {'scale': 256}}
        16: DFUCONTROL UNSIGNED    {00C1}   
        17: unknown:1811           {1811}   internal, hidden
        18: unknown:1830           {1830}   internal, hidden
        19: unknown:1890           {1890}   internal, hidden
        20: unknown:1891           {1891}   internal, hidden
        21: unknown:18A0           {18A0}   internal, hidden
        22: unknown:1DF3           {1DF3}   internal, hidden
        23: unknown:1E00           {1E00}   hidden
        24: unknown:1EB0           {1EB0}   internal, hidden
        25: unknown:1861           {1861}   internal, hidden
        26: unknown:18B0           {18B0}   internal, hidden
        27: unknown:1F07           {1F07}   internal, hidden
     Has 19 reprogrammable keys:
         0: Second Left Click         , default: Left Click                  => Left Click                
             mse, divertable, pos:0, group:0, group mask:empty
             reporting: default
         1: Back                      , default: Mouse Back Button           => Mouse Back Button         
             is FN, FN sensitive, reprogrammable, divertable, pos:2, group:0, group mask:empty
             reporting: default
         2: MY HOME                   , default: HomePage                    => HomePage                  
             is FN, FN sensitive, reprogrammable, divertable, pos:3, group:0, group mask:empty
             reporting: default
         3: Application Switcher      , default: Application Switcher        => Application Switcher      
             is FN, FN sensitive, reprogrammable, divertable, pos:4, group:0, group mask:empty
             reporting: default
         4: CONTEXTUAL MENU           , default: Right Click                 => Right Click               
             is FN, FN sensitive, reprogrammable, divertable, pos:5, group:0, group mask:empty
             reporting: default
         5: Search                    , default: Search Files                => Search Files              
             is FN, FN sensitive, reprogrammable, divertable, pos:6, group:0, group mask:empty
             reporting: default
         6: Show Desktop              , default: Show Desktop                => Show Desktop              
             is FN, FN sensitive, reprogrammable, divertable, pos:7, group:0, group mask:empty
             reporting: default
         7: Maximize Window           , default: Maximize Window             => Maximize Window           
             is FN, FN sensitive, reprogrammable, divertable, pos:8, group:0, group mask:empty
             reporting: default
         8: MEDIA PLAYER              , default: Music                       => Music                     
             is FN, FN sensitive, reprogrammable, divertable, pos:9, group:0, group mask:empty
             reporting: default
         9: Previous                  , default: Previous                    => Previous                  
             is FN, FN sensitive, divertable, pos:10, group:0, group mask:empty
             reporting: default
        10: Play/Pause                , default: Play/Pause                  => Play/Pause                
             is FN, FN sensitive, divertable, pos:11, group:0, group mask:empty
             reporting: default
        11: Next                      , default: Next                        => Next                      
             is FN, FN sensitive, divertable, pos:12, group:0, group mask:empty
             reporting: default
        12: SLEEP                     , default: Sleep                       => Sleep                     
             reprogrammable, divertable, pos:0, group:0, group mask:empty
             reporting: default
        13: Mute                      , default: Mute                        => Mute                      
             nonstandard, divertable, pos:0, group:0, group mask:empty
             reporting: default
        14: Volume Down               , default: Volume Down                 => Volume Down               
             nonstandard, divertable, pos:0, group:0, group mask:empty
             reporting: default
        15: Volume Up                 , default: Volume Up                   => Volume Up                 
             nonstandard, divertable, pos:0, group:0, group mask:empty
             reporting: default
        16: Fn Left Click             , default: ShowUI                      => ShowUI                    
             divertable, pos:0, group:0, group mask:empty
             reporting: default
        17: Left Button               , default: Left Click                  => Left Click                
             mse, pos:0, group:0, group mask:empty
             reporting: default
        18: Right Button              , default: Right Click                 => Right Click               
             mse, pos:0, group:0, group mask:empty
             reporting: default
     Has 17 gesture(s), 1 param(s) and 5 spec(s):
        Track1Finger               Enabled (None): None
        TapGestures                Enabled (None): None
        Tap1Finger                 Enabled (   0): True
        Tap2Finger                 Enabled (   1): True
        TapDrag1Finger             Enabled (   2): True
        DoubleTap1Finger           Enabled (   3): True
        Scroll2FingerStateless     Enabled (None): None
        NaturalScrolling           Enabled (   4): False
        Scroll2FingerHoriz         Enabled (   5): True
        Scroll2FingerVert          Enabled (   6): True
        LeftEdgeSwipe1Finger2      Enabled (   7): False
        RightEdgeSwipe1Finger2     Enabled (   8): False
        TopEdgeSwipe1Finger2       Enabled (   9): False
        Zoom2FingerStateless       Enabled (  10): True
        FnClickGestureSuppression  Enabled (  11): True
        TwoFingersPresent          Enabled (None): None
        DeviceSpecificRawData      Enabled (None): None
        ScaleFactor                Value   (   0): 256 [Default: 256]
        period unit                Spec    (   3): 768
        DVI field width            Spec    (   1): 8
        field widths               Spec    (   2): 8
        multiplier                 Spec    (   5): None
        resolution                 Spec    (   4): 4
     Battery: 90%, discharging, next level 50%.

Describe the bug

The tray icon defaults to Hicolor, rather than symbolic, presumably due to this line of code:

https://github.com/pwr-Solaar/Solaar/blob/1c6f289d9154217640c665e95f45c4905bd8709a/lib/solaar/gtk.py#L52

To Reproduce

Launch Solaar without the -b [icon-theme] option.

Additional context

Presumably the sensible defaults vary depending on what desktop shell someone is using, but on GNOME, at least, it would make sense to default to the Symbolic icon theme for the tray icon. If there is a way to detect what desktop shell the application is running in, it could be preferable to automatically choose the default icon theme based on that.

Additionally, while the battery indicator is rendered as symbolic, it would be nice to be able to have the Solaar indicator icon render as symbolic, too. Rendering as symbolic in this instance just means that the icon's fill color is determined by the operating system, rather than using a preset fill.

Finally, it would be nice if the icon-theme option were presented in the user interface, which would help solve the issue of dubious defaults. Like, I didn't know that the icon theme could be set from the command line until I dug down in the code, since Solaar is not primarily a command-line application.

Assignee
Assign to
Time tracking