diff --git a/src/plugins/texteditor/texteditor.cpp b/src/plugins/texteditor/texteditor.cpp index 197eb5ddcf1..2250b6fb5b2 100644 --- a/src/plugins/texteditor/texteditor.cpp +++ b/src/plugins/texteditor/texteditor.cpp @@ -106,6 +106,7 @@ #include #include #include +#include #include #include #include @@ -5363,7 +5364,19 @@ void TextEditorWidgetPrivate::drawFoldingMarker(QPainter *painter, const QPalett if (hovered) opt.palette.setBrush(QPalette::Window, pal.highlight()); - const char* const className = s->metaObject()->className(); + const char *className = s->metaObject()->className(); + + // Do not use the windows folding marker since we cannot style them and the default hover color + // is a blue which does not guarantee an high contrast on all themes. + static QPointer fusionStyleOverwrite = nullptr; + if (!qstrcmp(className, "QWindowsVistaStyle")) { + if (fusionStyleOverwrite.isNull()) + fusionStyleOverwrite = QStyleFactory::create("fusion"); + if (!fusionStyleOverwrite.isNull()) { + s = fusionStyleOverwrite.data(); + className = s->metaObject()->className(); + } + } if (!qstrcmp(className, "OxygenStyle")) { const QStyle::PrimitiveElement direction = expanded ? QStyle::PE_IndicatorArrowDown