[GTK][WPE] Composition underline color is not applied
https://bugs.webkit.org/show_bug.cgi?id=206353

Reviewed by Sergio Villar Senin.

CompositionUnderline::compositionUnderlineColor is not encoded/decoded in IPC messages, so the web process
always uses CompositionUnderlineColor::TextColor ignoring the given color.

* Shared/WebCoreArgumentCoders.cpp:
(IPC::ArgumentCoder<CompositionUnderline>::encode): Encode compositionUnderlineColor.
(IPC::ArgumentCoder<CompositionUnderline>::decode): Decode compositionUnderlineColor.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@254742 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog
index 62ae9dd..2c71348 100644
--- a/Source/WebKit/ChangeLog
+++ b/Source/WebKit/ChangeLog
@@ -1,3 +1,17 @@
+2020-01-17  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        [GTK][WPE] Composition underline color is not applied
+        https://bugs.webkit.org/show_bug.cgi?id=206353
+
+        Reviewed by Sergio Villar Senin.
+
+        CompositionUnderline::compositionUnderlineColor is not encoded/decoded in IPC messages, so the web process
+        always uses CompositionUnderlineColor::TextColor ignoring the given color.
+
+        * Shared/WebCoreArgumentCoders.cpp:
+        (IPC::ArgumentCoder<CompositionUnderline>::encode): Encode compositionUnderlineColor.
+        (IPC::ArgumentCoder<CompositionUnderline>::decode): Decode compositionUnderlineColor.
+
 2020-01-16  Zan Dobersek  <zdobersek@igalia.com>
 
         Unreviewed. Move the common WebKitOptionMenu GLib API implementation
diff --git a/Source/WebKit/Shared/WebCoreArgumentCoders.cpp b/Source/WebKit/Shared/WebCoreArgumentCoders.cpp
index 7c1ef77..880d18c 100644
--- a/Source/WebKit/Shared/WebCoreArgumentCoders.cpp
+++ b/Source/WebKit/Shared/WebCoreArgumentCoders.cpp
@@ -1603,6 +1603,7 @@
     encoder << underline.startOffset;
     encoder << underline.endOffset;
     encoder << underline.thick;
+    encoder.encodeEnum(underline.compositionUnderlineColor);
     encoder << underline.color;
 }
 
@@ -1616,6 +1617,8 @@
         return WTF::nullopt;
     if (!decoder.decode(underline.thick))
         return WTF::nullopt;
+    if (!decoder.decodeEnum(underline.compositionUnderlineColor))
+        return WTF::nullopt;
     if (!decoder.decode(underline.color))
         return WTF::nullopt;