Have Text constructor take a Document reference in argument

Have Text constructor take a Document reference in argument as it can
never be NULL. Most callers already have a reference so this avoids
having to convert them into pointers.

BUG=281400

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

git-svn-id: svn://svn.chromium.org/blink/trunk@157251 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Only do partial layouts when possible.

This patch changes offsetWidth, offsetHeight, offsetLeft, and offsetTop to only
layout a portion of the render tree, up to the target renderer. Partial layout
leaves the root needing layout so a full layout must happen before painting.

An example of the benefit of this patch is wikipedia where the following
pattern is common:
1) page load
2) javascript calls offsetWidth, forcing a full layout
3) javascript injects style into the page, invalidating layout
4) a full layout is performed for painting

With this patch, the offsetWidth call in #2 is significantly improved.

Text autosizing currently removes most of the benefit of this patch, this will
be addressed in a followup patch. Similarly, non-overlay scrollbars reduce
the benefit from this patch.

This is currently implemented behind the PartialLayout
runtime enabled feature flag.

BUG=283623

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

git-svn-id: svn://svn.chromium.org/blink/trunk@157252 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Reland "Fix form resubmissions happening silently."

This reverts commit 9f3fcfea463d525af6b525318998edb72c09a7e1.

BUG=263508

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

git-svn-id: svn://svn.chromium.org/blink/trunk@157253 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Add ability to create solid color scrollbars in ScrollingCoordinator.

This CL adds the ability to create solid color scrollbars within ScrollingCoordinator,
based on the current value of the settings useOverlayScrollbars and useSolidColorScrollbars.
This functionality is made available in the class interface to facilitate
access from WebViewImpl in subsequent pinch-zoom CLs.

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@157254 bbb929c8-8fbe-4397-9dbb-9b2b20218538
ASSERT: Bad cast from CSSInitialValue to CSSValueList

The issue was that we would cast to CSSValueList without checking
the type of the CSSValue. After this change, we use the ASSERT'ing
cast and explicitly check the type of the CSSValue before the cast.

BUG=279286

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

git-svn-id: svn://svn.chromium.org/blink/trunk@157255 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix threading races on AudioDSPKernelProcessor::m_kernels

AudioDSPKernelProcessor::m_kernels is accessed by the main thread and
the Audio Device thread, and thus should be protected by mutex.

This mutex implementation is consistent with that of ConvolverNode::m_reverb.

See the crash report for more details: https://cluster-fuzz.appspot.com/testcase?key=6662160935550976

BUG=271161
No tests because the crash depends on threading races and thus not reproducible.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@157256 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Implement WheelController and remove all wheel-specific code from DOMWindow and Document

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@157257 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix CSP exceptions for googlestorage in garden-o-matic.

TBR=ojan@chromium.org, abarth@chromium.org
BUG=261719

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

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