Fix a back/forward regression in gmail.

r155718 incorrectly reordered updating the url and updating the back/forward
list during a same document navigation. This reverts that change to the
ordering, ensuring we update the url first.

BUG=280189

Review URL: https://chromiumcodereview.appspot.com/23702014

git-svn-id: svn://svn.chromium.org/blink/trunk@157132 bbb929c8-8fbe-4397-9dbb-9b2b20218538
WebCrypto: Add algorithm normalization rules for RSAES-PKCS1-v1_5.

As defined by:
https://dvcs.w3.org/hg/webcrypto-api/raw-file/tip/spec/Overview.html#rsaes-pkcs1

BUG=245025

Review URL: https://chromiumcodereview.appspot.com/23441021

git-svn-id: svn://svn.chromium.org/blink/trunk@157133 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Make NewWebSocketChannelImpl a ContextLifeCycleObserver subclass.

NewWebSocketChannelImpl should have a ScriptExecutionContext.
To prevent accessing the context after it is destroyed, we make NewWebSocketChannelImpl a ContextLifeCycleObserver subclass.
Currently NewWebSocketChannelImpl is destroyed before the context is destroyed and hence contextDestroyed shoule never be called.

BUG=275459
R=tyoshino, abarth

Review URL: https://chromiumcodereview.appspot.com/23523014

git-svn-id: svn://svn.chromium.org/blink/trunk@157134 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert 157091 "Recompute percentage based @viewport on resize."

Introduced bad cast.

> Recompute percentage based @viewport on resize.
> 
> Percentage values were resolved to px lengths at cascade time for @viewport
> widths and heights. This change keeps them as percentage values and recomputes
> the actual viewport from the initial viewport and the percentage value when
> the intial viewport changes (window resize). Likewise for viewport relative
> units (vw, vh, vmin, vmax).
> 
> This fixes constrain-006 and constrain-007 in the w3c testsuite.
> 
> BUG=269132
> 
> Review URL: https://chromiumcodereview.appspot.com/22549002

TBR=rune@opera.com

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

git-svn-id: svn://svn.chromium.org/blink/trunk@157135 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Allow SVG images containing data images to not taint canvases

This patch allows SVG images that contain data uri encoded images to
not taint the canvas. This patch relies on r156997 which made
createPattern synchronously snapshot images so that
currentFrameHasSingleSecurityOrigin() no longer has to check at draw-
time whether the referenced SVG image pattern is safe to draw. Now, we
check that the origin is clean when the pattern is created, or when
drawImage() is called.

As a result of this patch, any SVG image containing a foreignObject,
or any SVG image that contains an image that contains a foreignObject
will taint the canvas. Other cases of images in images are allowed.

This patch has two main changes:
1) hasSingleSecurityOrigin() has been renamed
currentFrameHasSingleSecurityOrigin to make it clear that images are
not guaranteed to have a global, static security origin but instead
can go in and out of having a single security origin due to
animations. The test in r156997 enforces this.
2) SVGImage::currentFrameHasSingleSecurityOrigin has been modified
to recursively check if all contained images have a single security
origin. In the case of SVG images, the only non-single-security-origin
element is currently foreignObject.

BUG=279445

Review URL: https://chromiumcodereview.appspot.com/23523010

git-svn-id: svn://svn.chromium.org/blink/trunk@157136 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Check WTF::VectorFiller template argument type size in compile time

The template argument's type size in WTF::VectorFiller 'memset' specialization should be checked during compilation rather than in runtime.

Review URL: https://chromiumcodereview.appspot.com/23604022

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