Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-78680

Fusion style hardcodes highlight colour on Mac (and imposes icons-in-buttons)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 5.9, 5.12
    • Widgets: Styles
    • None
    • macOS

    Description

      The Fusion style has a function `isMacSystemPalette()` that attempts to guess if a widget's current palette is the system palette, and then imposes an electric-blue highlight colour.

       

      Two problems with this:

      • the check probably gives a false positive when you load an application-wide alternative palette in the way that KDE's integration platform plugin does OR when the palette in use happens to be using the same QColor values for the 2 test colours.
      • the highlight colour is one of very few aspects that the user can actually customise and hardcoding the default thus introduces a look-and-feel violation for those users who do.

       

      I experimented with bypassing the function and applications then behave as you'd expect: they will use the highlight/selection colour configured via the System Preferences - changes are even visible immediately, without restarting the application (see e.g. github:RJVB/qstyle-demo).

       

      Curiously (because of the inconsistency), the style also imposes the use of icons in buttons (and menus), which is not at all appropriate on Mac.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            tpochep Timur Pocheptsov
            rjvbertin René Bertin
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes