flherne created this revision.
flherne added a reviewer: Frameworks.
flherne set the repository for this revision to R265 KConfigWidgets.
Restricted Application added a project: Frameworks.

REVISION SUMMARY
  [RFC]
  
  KColorSchemeManager::activateScheme()  sets a custom path for the 
application's color scheme, with
  
    qApp->setProperty("KDE_COLOR_SCHEME_PATH", index.data(Qt::UserRole));
  
  Currently, the KColorScheme() and KStatefulBrush() constructors will ignore 
this and use only the system color scheme, unless an application-specifiic 
config is explicitly loaded and passed in by the caller.
  
  This is problematic, because all callers I've seen assume that the default is 
to match the //application// scheme (usually this is equivalent, because few 
applications use KColorSchemeManager).
  
  For example, when the application of a KTextEditor widget or KonsolePart has 
an opposite color scheme to the system, the Find bars are unreadable: 
https://bugs.kde.org/373764
  
  This patch makes KColorScheme() match the application scheme by default when 
this differs from the system scheme, which seems preferable to adding the same 
code in hundreds of callers.
  
  BUG: 373764

TEST PLAN
  It works...
  
  I haven't looked at proper tests yet.

REPOSITORY
  R265 KConfigWidgets

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

AFFECTED FILES
  src/kcolorscheme.cpp
  src/kcolorscheme.h

EMAIL PREFERENCES
  https://phabricator.kde.org/settings/panel/emailpreferences/

To: flherne, #frameworks

Reply via email to