Fixing leaked SkDeferredCanvas in Canvas2DLayerBridge

When using RefPtr with SkRefCnt subclasses: it works, but there are no
adoption guards, so we have to be careful.  This leak was caused by an
un-adopted reference.

BUG=303546
TEST=valgrind layout test virtual/gpu/fast/canvas/canvas-resize-reset.html

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158863 bbb929c8-8fbe-4397-9dbb-9b2b20218538
document.documentElement.scrollTop/Left is zero

Blink, as of today, is the only engine that does not respect the
specification with regards to the values returned from scrollTop
and scrollLeft properties of documentElement and body nodes.

Current behavior is: in both strict and quirks modes, documentElement.scrollTop
always returns 0, while body.scrollTop always returns scrollY.
The analogy behavior applies to scrollLeft and scrollX (the return).

This patch fixes Blink's behavior in accordance to specification [1]:
if a document is in strict mode, document.documentElement.scrollTop
should return 'scrollY', and document.body.scrollTop should return 0.
On the other hand, if it is in quirks mode, document.documentElement
should return 0, and document.body.scrollTop should return 'scrollY'.
Same analogy applies to scrollLeft property.

An optimistic approach was chosen to fix this in the sense of doing this
change without collecting usage data first. The rationale behind it is
that given that Blink is the only engine behavior'ing differently, relevant
WebSites would already have two codepaths.

[1] http://dev.w3.org/csswg/cssom-view/#dom-element-scrolltop

Test: fast/dom/Element/scrollTop-scrollLeft-strict-quirks-modes.html
Existing updated tests:
      fast/dom/anchor-without-content.html
      fast/events/mouse-cursor-image-set.html
      fast/events/mouse-cursor.html
      fast/events/touch/gesture/touch-gesture-fully-scrolled-iframe-propagates.html
      fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html
      fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html
      fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html
      fast/events/touch/gesture/touch-gesture-scroll-iframe-editable.html
      fast/events/touch/gesture/touch-gesture-scroll-iframe-not-propagated.html
      fast/events/touch/gesture/touch-gesture-scroll-page-propagated.html
      fast/events/touch/gesture/touch-gesture-scroll-page.html
      fast/scrolling/hover-during-scroll.html
      http/tests/navigation/resources/frame-with-anchor-same-origin.html
      http/tests/navigation/resources/frame-with-anchor.html

BUG=157855

Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=158719

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158864 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove widgetRendererMap and Frame::frameForWidget

Apparently nothing uses the map of RenderWidgets, we should get
rid of it.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158865 bbb929c8-8fbe-4397-9dbb-9b2b20218538
@page rule missing from simpleUserAgentStyleSheet.

simpleUserAgentStyleSheet did not have an @page rule like html.css.
The result was flakiness for the following test depending on whether the full
UA styles had been triggered by a previous test or not:

LayoutTests/printing/page-format-data.html

R=ojan
BUG=303324

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158866 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Auto-rebaseline for r158845

http://src.chromium.org/viewvc/blink?view=revision&revision=158845

BUG=249099
TBR=eae@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@158867 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Implement KeyboardEvent.repeat attribute

Implement KeyboardEvent.repeat attribute as per the DOM level 3 specification:
https://dvcs.w3.org/hg/dom3events/raw-file/tip/html/DOM3-Events.html#widl-KeyboardEvent-repeat

This attribute is already implemented in IE10 and is currently being worked on
for Firefox.

BUG=263724
TEST=fast/events/constructors/keyboard-event-constructor.html
TEST=fast/events/keyboardevent-repeat.html

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

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