Support multiple text decoration styles.

Currently, we draw only the last seen text decoration style during
decoration painting, even when multiple decorations
(e.g. underline + overline) are applied. Hence, we potentially draw
the wrong decoration style for one or more of the applied decorations.

Fixed by fetching the matching style for each decoration, similar
to how the matching text-decoration-color is fetched.

BUG=351282
TEST=text-decoration-style-multiple.html

Review URL: https://codereview.chromium.org/195093002

git-svn-id: svn://svn.chromium.org/blink/trunk@168946 bbb929c8-8fbe-4397-9dbb-9b2b20218538
shape-outside does not properly handle different writing modes

Fix ShapeOutsideInfo to properly convert the line coordinates and shape
coordinates with respect to the writing mode and writing direction for
the lines that are affected by the shape. This is notably different from
shape inside in that shape outside needs to use the writing mode of the
container, not of the element that the shape is applied to.

This also fixes the handling of negative top margins on the float.

R=leviw@chromium.org
BUG=322165

Review URL: https://codereview.chromium.org/185413024

git-svn-id: svn://svn.chromium.org/blink/trunk@168947 bbb929c8-8fbe-4397-9dbb-9b2b20218538
CSP hashing performance improvements.

Added a new variant to the StringUTF8Adaptor constructor that allows for the
consumer to specify that the string should be normalized before UTF-8 encoded.
This allows ContentSecurityPolicy to use the fast UTF-8 encoding (without
memcopy) from StringUTF8Adaptor in the common case, while also handling the less
common case.

Review URL: https://codereview.chromium.org/194713012

git-svn-id: svn://svn.chromium.org/blink/trunk@168949 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix truncation due to wrong abs calls found by clang's new -Wabsolute-value.

The warning looks like this:
../../third_party/WebKit/Source/core/animation/Player.cpp:304:53: error: using integer absolute value function 'abs' when argument is of floating point type [-Werror,-Wabsolute-value]
    return m_content->timeToReverseEffectChange() / abs(m_playbackRate);
                                                    ^
../../third_party/WebKit/Source/core/animation/Player.cpp:304:53: note: use function 'fabs' instead
    return m_content->timeToReverseEffectChange() / abs(m_playbackRate);
                                                    ^~~
                                                    fabs
1 error generated.

BUG=351479
R=hans@chromium.org

Review URL: https://codereview.chromium.org/195523004

git-svn-id: svn://svn.chromium.org/blink/trunk@168950 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Expand fast/text/international/rtl-text-wrapping.html test

Update the fast/text/international/rtl-text-wrapping.html test to
include elements with explicit directionality.

BUG=348554
R=dglazkov@chromium.org

Review URL: https://codereview.chromium.org/195423004

git-svn-id: svn://svn.chromium.org/blink/trunk@168951 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Mark virtual/softwarecompositing/plugins/webplugin*  for rebaseline.

TBR=jamesr
BUG=350578

Review URL: https://codereview.chromium.org/194703013

git-svn-id: svn://svn.chromium.org/blink/trunk@168952 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[webcrypto] Remove support for SHA-224 (CL 1 or 3).

Blink side of the change.

This was removed by the spec: https://dvcs.w3.org/hg/webcrypto-api/rev/3f7df730b2c7

BUG=245025

Review URL: https://codereview.chromium.org/194013003

git-svn-id: svn://svn.chromium.org/blink/trunk@168959 bbb929c8-8fbe-4397-9dbb-9b2b20218538