DevTools: delegate entire paint routines to timeline flame chart provider.

R=loislo@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169026 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Use four instead of nine bits to store font weight

Reduce the number of bytes used to store the font weight in the traits
mask from nine to four and simplify the logic for converting between
the two. Also simplify the matching logic in compareFontFaces to
compare weights instead of masks.

R=eseidel@chromium.org
TEST=Source/platform/fonts/FontDescriptionTest.cpp
BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169027 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Throw empty error from V8PromiseCustom

Blink and the inspector cannot deal with a stack overflow exception
thrown from V8PromiseCustom.
As a workaround, V8PromiseCustom throws an empty error when some exception
is thrown.

BUG=345088

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169028 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Don't ignore OOM exceptions.

A few years back, we wanted to show an infobar if V8 runs out of memory.
However, there are many places that don't check whether V8 is OOM and
just crash if they get empty handles back. Also, there isn't really much
we can savely do other than crash.

BUG=347124,347724
R=dcarney@chromium.org,haraken@chromium.org,yurys@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169029 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Use correct container width as base for percentage margins.

Blocks establishing a new BFC need to avoid floats in its parent BFC. Also,
computing used values for auto margins for such blocks is affected by the
available line width constrained by these floats. However, percentage sized
margins must be calculated based on the full containing block width, not the
available line width.

R=jchaffraix@chromium.org
BUG=348927

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

git-svn-id: svn://svn.chromium.org/blink/trunk@169030 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[CSS Grid Layout] Initial span position not correctly resolved sometimes

We're using std::lower_bound to find the first line before the opposite
resolved position. The returned iterator might point to a resolved position
which is actually greater than the opposite position (since lower_bound
returns the first non less than). In those cases we need to move the
iterator to the previous line so that the span can be correctly computed.

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

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