https://bugs.kde.org/show_bug.cgi?id=413790

            Bug ID: 413790
           Summary: Add an API for setting titlebar colors and simplify
                    the process of customizing them for specific apps
           Product: kwin
           Version: unspecified
          Platform: unspecified
                OS: Linux
            Status: REPORTED
          Severity: wishlist
          Priority: NOR
         Component: decorations
          Assignee: kwin-bugs-n...@kde.org
          Reporter: bin70...@eveav.com
  Target Milestone: ---

Created attachment 123708
  --> https://bugs.kde.org/attachment.cgi?id=123708&action=edit
Dark icons on dark backgound

Currently, if the user wants to have the color scheme of the titlebar match the
colors of a specific app, they have to
1) Open the app of interest
2) Open a color chooser (or install one first if needed)
3) Pick a color from the app
4) Go to Settings → Colors
5) Choose a color scheme and click Edit
6) Dig through the options to find the ones for titlebar colors
7) Edit the color scheme, click Save As and save it
8) Go to Settings → Window Management → Window Rules and click New...
9) Choose proper options for the window rule and save it.
These steps then have to be repeated for all the apps the user wants to have
matching titlebar colors with.

Clearly, this process it very tedious and inaccessible for most users. In
particular, it has the following obvious disadvantages:
1) The process is pretty sophisticated and is hard to discover in a way other
than just seeing someone else do it (e.g. from screenshots on the Internet).
The setting ultimately has more to do with window decorations, not with rules
in general (it controls the *Appearance* of apps, not the Workspace behavior).
The user wants set up window decorations, so they go to window decoration
settings, not to some unspecified location they have yet to discover. Moreover,
the configuration for decoration themes (e.g. Breeze) already includes a tab
for window-specific overrides, which further suggests to the user that all the
settings for customizing the look/behavior of window decorations with specific
apps. Another point is that color settings depend on the decoration chosen, as
not all of them take custom color schemes into account, and the window rule
will not be usable with the ones that don't.
2) The list of color schemes becomes filled with app-specific color schemes
that only exist to provide titlebar colors for window rules.
3) The color scheme set by the window rule also changes colors for the titlebar
menu. This is not an expected behavior and may result into bugs like the one
shown in the attachment. The menu colors will also stay the same even if the
user changes the main color scheme.
4) In the case of Konsole and other apps that have their own color scheme
settings, the user has to edit the color scheme for the window rule every time
they change colors in the app.
5) It is impossible to control transparency, nor to enable blur for the
titlebar. 

SUGGESTED SOLUTION
1) Provide an API to set titlebar colors/transparency/blur.
Such API could then be used by theme engines and individual apps, and window
decoration themes would then have an option to actually use the provided
settings (which may or may not be enabled by default or even implemented at
all).
For instance, Konsole could automatically switch titlbar colors and enable
transparency+blur when the user changes corresponding settings (and Konsole
already has the support for telling KWin to enable blur for the main window).
It will also allow themes like Akava-Kv to provide better out-of-the-box look
while not making the titlebar transparent and blurry for apps that do not have
transparency+blur in their UI.
2) Move the setting for custom color schemes to the Window-Specific Overrides
tab of window decoration settings.
3) In addition to being able to choose form the available color schemes, allow
users to only choose the colors that affect the appearance of the titlebar, as
well as to control transparency and enable blur.

Implementing this will solve the issues described above and will allow for a
more beautiful and consistent look with various applications and theme engines
that does not require installing pathed versions of Breeze. It will allow more
apps to look good without requiring custom window rules.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to