rjvbb created this revision.

REVISION SUMMARY
  This patch introduces several improvements to QtCurve's integration with KF5:
  
  - Inherit KStyle instead of QCommonStyle when built with KDE support
  - recognise at least KF5 systemsettings application and above all KWin5
  - use the new method of being informed about changes to the compositing mode
  - detect when KWin5 adapted its colour palette to an application's dedicated 
palette.
  
  The last point addresses the issue that KWin's context (window) menus can 
become unreadable when they KWin5 adapts their palette to match the palette of 
an application set to use a palette that is different from the user's desktop 
colour palette (or when KWin5 itself modifies the palette of a specific 
application via a window or application rule).
  
  In this case, the patch attempts to use a temporary palette for the concerned 
menus and menu items. Depending on how QtCurve is configured this may not give 
exactly the same colours as used in the application's own menus, but they ought 
to give readable menus with appropriate colours.

TEST PLAN
  Tested on Linux/X11 with Qt 5.8.0, KF5 Frameworks 5.32.0, KWin5 5.9.3 as well 
as the latest KWin4 version.
  
  Care has been taken not to introduce regressions when used on a Plasma4 
desktop.

REPOSITORY
  R626 QtCurve

REVISION DETAIL
  https://phabricator.kde.org/D5178

AFFECTED FILES
  qt5/CMakeLists.txt
  qt5/config/CMakeLists.txt
  qt5/style/CMakeLists.txt
  qt5/style/qtcurve.cpp
  qt5/style/qtcurve.h
  qt5/style/qtcurve_api.cpp
  qt5/style/qtcurve_primitive.cpp

To: rjvbb, yuyichao
Cc: #frameworks, yuyichao

Reply via email to