[explicitly CCing Noah]

On 3/10/21 8:52 AM, Marco Martin wrote:
On Wed, Mar 10, 2021 at 4:09 PM Nate Graham <n...@kde.org> wrote:

People go off an do their own thing in an un-coordinated manner when
there is a significant problem that's not being solved, that problem has
existed for a while without being addressed, and there is no clear
direction or centrally coordinated plan for solving it.

yes, that's exactly what happened and is a good warning for the future.
Also a good signal that we should start thinking and actually doing something
wrt a good theming story, which we clearly don't have.
To me, the most promising approach was the quick prototype Arjen did
back at akademy
https://invent.kde.org/ahiemstra/qtunifiedstyle
whether is something realistic to turn is something actually useful or
not remains to be seen.
We do have a ton of things to do otherwise, so is not easy to find
time for this, but is becoming
more and more important


Based on other random conversations since this email thread petered out, it seems like we're going to end up considering qqc2-breeze-style to be a successful yet temporary stopgap solution from PlaMo, and continue using the qqc2-desktop-style theme bridge we currently have--fixing bugs and improving performance as needed--until we re-do and unify our whole theming system.

On that subject, have we done any further brainstorming? I remember being fairly impressed with Arjen's prototype as well. I love the idea of finally being able to theme everything consistently, and also the possibility of using CSS which is simple, easily writable, and easily readable in a diff view without losing your mind :)

As I understand it, here's the latest proposal:

1. We make a universal theme of some sort (using CSS, QML, or something
   else; exact format TBD)
2. We make a QStyle that is essentially a Kvantum-style theming engine
   that consumes the universal theme and applies it to Widgets-based
   apps
3. We make a QQC2 style that consumes the universal theme and applies it
   to QtQuick software, including (optionally) Plasma, without going
   through QPainter or the QStyle at all
4. We keep the existing Plasma QQC2 style that knows how to consume
   existing SVG-based Plasma themes, for compatibility's sake
5. We add a user-facing setting for apps to allow people to choose
   whether to have:
   - Their apps use the universal theme
   - Their apps use a different QStyle, such as Lightly or Kvantum
6. We add a user-facing setting for Plasma to allow people to choose
   whether to have:
   - Plasma use the same universal style as their apps
   - Plasma use a different universal style from the one being used for
     their apps
   - Plasma use an SVG-based Plasma 5 theme, which we deprecate in
     Plasma 6 but continue to support
6. In Plasma 7, we sunset support for SVG-based Plasma themes as well as
   generic QStyles (including Kvantum!) and only support the new
   universal theme--whatever it is we come up with


Am I representing everything accurately, to the best of everyone else's memory?

Nate

Reply via email to