Let parent handle invalidation of RenderText

Instead of letting invalidateTreeIfNeeded() work for RenderText,
this CL let RenderText's parent handle invalidation of RenderText
during invalidateTreeIfNeeded().

This avoids the complexity of implementing a correct and efficient
RenderText::clippedOverflowRectForPaintInvalidation(), and I believe
the performance is also better than full-functional RenderText
invalidation.

BUG=394133,409068

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

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182179 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Only reset UserGestureIndicator on main frame navigation.

Currently the UGI is reset in WebViewImpl::didCommitLoad() which was causing
problems with the virtual keyboard on sites that triggered network requests on
touch/tap/click. e.g. G+ would not display the vk when the user clicked on the
comment input. This patch modifies the behaviour to only clear the bit on main
frame navigation.

BUG=370922, 163072

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182180 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert of Temporarily let DocumentMakerController use invalidatePaintForWholeRenderer (patchset #3 id:60001 of https://codereview.chromium.org/499493003/)

Reason for revert:
We have fixed the RenderText invalidation issue (crbug.com/394133).

Original issue's description:
> Temporarily let DocumentMakerController use invalidatePaintForWholeRenderer
> 
> setShouldDoFullPaintInvalidation doesn't work for RenderText yet.
> 
> BUG=405501
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=180877

TBR=jchaffraix@chromium.org,esprehn@chromium.org,leviw@chromium.org
BUG=405501

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

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

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

The function now lives on RenderObject. Some clean-up
happened while moving it:
- Removed DisableCompositingQueryAsserts as we are doing
legit compositing state queries now.
- Replaced the explicit compositing state check with a
call to isPaintInvalidationContainer, which was the intent.
- Rename it to invalidatePaintIncludingNonCompositingDescendants
for consistency with other invalidation generating functions.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182184 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Animation: Animations with any playback rate are composited

BUG=398330

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182185 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Fix LayoutTest gesture-tap-frame-scrollbar.html

This test was dependant on the event handling behavior of scrollbars,
which varies across different OSes.  In particular, on most OSes
(including MacOS 10.6) we were seeing events pass through frame scrollbars
to be received by the page underneath.  On MacOS 10.7+ the scrollbars
appear to swallow the events so the page never sees them.

What we really care about in this test is blink behavior, so switch
to using mock scrollbars to make the test behavior consistent.

BUG=414034

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

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

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

BUG=394133
TBR=wangxianzhu@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182191 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove unneeded bool from RenderView::selectionBounds
    
The boolean was added in r21387 and the added test
(fast/overflow/scroll-nested-positioned-layer-in-overflow.html)
is still passing. AFAICT the only adverse potential for this removal
is to invalidate more (as we don't apply the ancestors' clips)
    
The only meaningful test change is
fast/repaint/text-selection-rect-in-overflow-2.html
which had bad invalidations anyway (halfway through the selection)
so I don't think it's meaningful.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182197 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Simplify window.closed testing.

Instead of keeping a separate Frame flag, have LocalDOMWindow::closed
consider the presence of a FrameHost on the frame. It'll be cleared
during detach and impending frame closure, and is observationally
equivalent to keeping an unnecessary extra flag.

R=dcheng,ager
BUG=414658

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182201 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Support getComputedStyle for non-rendered pseudo elements.

Computed style for pseudo elements exist and is defined by [1] regardless
of whether the pseudo element, or its ancestor, is rendered or not [2].
We make sure that the computed pseudo element style hangs off of the
RenderStyle of the ancestor, or the computed style in the ancestor's
rare-data if the ancestor is not rendered.

getCachedPseudoStyle, getUncachedPseudoStyle, and pseudoStyleForElement are
all written to not return anything if the pseudo element is not rendered.
That is the reason for calling pseudoStyleForElement in a special mode at
the end of Element::computedStyle to force creating and adding the pseudo
style to the cache.

This CL does not try to support computed style for pseudo elements which
are not in the document.

[1] http://dev.w3.org/csswg/cssom/#dom-window-getcomputedstyle
[2] http://dev.w3.org/csswg/cssom/#::after-pseudo-element

R=esprehn@chromium.org
BUG=414088

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182203 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Revert of [ServivceWorker] Treat rejecting respondWith as a Network Error (patchset #4 id:60001 of https://codereview.chromium.org/571843003/)

Reason for revert:
WebServiceWorkerResponse's status is not initialised.
This may cause problems.

I will re-land this patch after https://codereview.chromium.org/575153002/ is submitted.

Original issue's description:
> [ServivceWorker] Treat rejecting respondWith as a Network Error
> 
> Chromium side change is this: https://codereview.chromium.org/574643003/
> 
> 
> BUG=411173
> TEST=layouttest http/tests/serviceworker/
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=182147

TBR=yhirano@chromium.org,mkwst@chromium.org,tkent@chromium.org,nhiroki@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=411173

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182204 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Remove the WTF::KeyValuePair default constructor

SSIA. This constructor is never used, besides it
leaves the pair elements uninitialized which
can cause bugs if it is used at some point in future.

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

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

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

TBR=jchaffraix@chromium.org

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182207 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Web SQL: Remove AbstractDatabaseServer and DatabaseServer.

These classes just add code complexity, and have no benefit. This CL folds them
into DatabaseManager.

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182209 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[webp] Make createColorTransform bool returning

Make createColorTransform indicate success to callers via a bool
return to support dynamic color correction issue 353818.

No behavioral change, covered by existing layout / unit tests.

BUG=404544

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182211 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Take CompatibleImageBufferSurface out behind the woodshed.

There's no reason for it to exist, since it's always created with a
raster-backed surface anyway, so UnacceleratedImageBufferSurface will
do just fine.

Covered by existing tests.

BUG=

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182212 bbb929c8-8fbe-4397-9dbb-9b2b20218538
AX: Calendar Picker: Support of input[type=week].

Add accessibility attributes to WeekNumberCell.  This is similar to what we did
for DayCell. However we need to add a helper function to PagePopupController in
order to get a descriptive string for a week, and needs DateComponents::setWeek.

We'll generate a string like "Week 38, 2014, starting on September 15, 2014"

This CL doesn't contain a test. We'll add a test after landing a
Chromium CL for the string.

BUG=123896

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182213 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Attempt to fix crashes in run-webkit-tests when running Android layout tests.

It looks like we may see cases where devices crash or go offline,
in which case the Android Port implementation attempts to run 'adb logcat'
to get more debugging information. I think when that command runs,
we get output back that isn't ASCII-safe and that is causing Python's
goofy str/unicode handling to get confused.

This patch attempts to protect against that. It is a mostly
hypothetical fix, as I haven't actually reproduced the fault locally.

TBR=peter@chromium.org
BUG=386343

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182214 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Service Worker:Layouttests:Remove wrong done() call from serviceworkerobject-scripturl.html

1. Due to misplace "t.done()", get the undefined registration,and the assert_equals will always be not excuted.

R=nhiroki@chromium.org, dominicc@chromium.org, yhirano@chromium.org
BUG=414599

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

git-svn-id: svn://svn.chromium.org/blink/trunk@182215 bbb929c8-8fbe-4397-9dbb-9b2b20218538
As per spec and to be consistent with other browsers (Firefox & IE11), we should support form association by parser. 

BUG=336723
TEST=fast/dom/HTMLLabelElement/label-formAssociatedElement.html

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

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