diff options
-rw-r--r-- | src/core/render_widget_host_view_qt.cpp | 6 | ||||
-rw-r--r-- | tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp | 6 |
2 files changed, 7 insertions, 5 deletions
diff --git a/src/core/render_widget_host_view_qt.cpp b/src/core/render_widget_host_view_qt.cpp index 96cddfb4b..332be89f8 100644 --- a/src/core/render_widget_host_view_qt.cpp +++ b/src/core/render_widget_host_view_qt.cpp @@ -1149,11 +1149,7 @@ void RenderWidgetHostViewQt::handleInputMethodEvent(QInputMethodEvent *ev) if (format.underlineStyle() != QTextCharFormat::NoUnderline) underlineColor = format.underlineColor(); - QColor backgroundColor(0, 0, 0, 0); - if (format.background().style() != Qt::NoBrush) - backgroundColor = format.background().color(); - - underlines.push_back(blink::WebCompositionUnderline(start, end, toSk(underlineColor), /*thick*/ false, toSk(backgroundColor))); + underlines.push_back(blink::WebCompositionUnderline(start, end, toSk(underlineColor), /*thick*/ false, SK_ColorTRANSPARENT)); break; } case QInputMethodEvent::Cursor: diff --git a/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp b/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp index 75795c170..78190622c 100644 --- a/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp +++ b/tests/auto/widgets/qwebengineview/tst_qwebengineview.cpp @@ -1012,8 +1012,14 @@ void tst_QWebEngineView::inputMethodsTextFormat() QTextCharFormat format; format.setUnderlineStyle(static_cast<QTextCharFormat::UnderlineStyle>(underlineStyle)); format.setUnderlineColor(underlineColor); + + // Setting background color is disabled for Qt WebEngine because some IME manager + // sets background color to black and there is no API for setting the foreground color. + // This may result black text on black background. However, we still test it to ensure + // changing background color doesn't cause any crash. if (backgroundColor.isValid()) format.setBackground(QBrush(backgroundColor)); + attrs.append(QInputMethodEvent::Attribute(QInputMethodEvent::TextFormat, start, length, format)); QInputMethodEvent im(string, attrs); |