Make CustomElementMicrotaskRunQueue weak.

This is a speculative fix for a reported crash.
The report says CEMRunQueue::dispatc() called as a microtask
even after the CEMRunQueue is dead. That is surely possible as
there is no way to cancel microtasks.

This change pass the WeakPtr to the microtask and invoke dispatch()
only if the reference is alive.

TEST=none
R=dominicc@chromium.org,dglazkov@chromium.org
BUG=393595

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

git-svn-id: svn://svn.chromium.org/blink/trunk@178304 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Incrementally invalidate background if possible

RenderObject::incrementallyInvalidatePaint() is still applicable to
boxes having background, if
- the box's previous border box size equals to the previous repaint rect size;
- the box's current border box size equals to the current repaint rect size;
- the box doesn't have box decorations;
- the background doesn't require full repaint on size change.

BUG=390587
TEST=Some full invalidations will become incremental invalidations.

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

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