Merge updateRenderTreeForNodeIfNeeded checks into needsRenderTreeUpdate

The checks in this function were brittle since they had to be kept in
sync with the ones in needsRenderTreeUpdate(). Instead we can merge the
checks together.

This patch introduces needsFullRenderTreeUpdate() which means the Document
level state is dirty and we need to run a render tree update, allowing
updateRenderTreeForNodeIfNeeded to only check the other bits. It also moves
the style invalidation bit checks into the the ancestor loop.

Finally I added a FIXME to the loop. It needs to be over the composed tree.
I have a test case and will fix the bug with walking over the non-composed
ancestors in the next patch.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172142 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Pass 'name' to value getters in InspectorBackendDispatcher as const char*

This avoids generating code for the literal -> WTF::String implicit
conversions in all callsites.

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

git-svn-id: svn://svn.chromium.org/blink/trunk@172143 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[repaint-after-layout] Use repaintAfterLayoutIfNeeded to decide what to paint.

With repaint-after-layout we attempt to track when layout was executed on an
object and use this as a trigger to call repaintAfterLayoutIfNeeded. If layout
wasn't called we'll only do a repaint if the object is set to needing a full
repaint.

This causes issues for things like DeprecatedFlexibox which can move its
children around without triggering a layout on them. We then won't notice that
the child has moved and we won't repaint.

This CL changes repaint-after-layout to always call into
repaintAfterLayoutIfNeeded and then depends on the machinery in there to
determine when we need to issue invalidations.

BUG=360453,359826

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

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