Avoid direct style change after setStyle for button's inner block

Direct style change after RenderObject::setStyle() bypasses required
style diff check and may cause incorrect layout and invalidations.

The reason of extra invalidation of button's inner block is described
below:

- When the button's inner block is created:
1. The inner block's style is set to default anonymous style
   (with align-items: auto);
2. RenderButton::setupInnerStyle() directly sets the inner block's
   style (e.g. with align-items: flex-start).

- When button's style changes:
3. RenderObject::propagateStyleToAnonymousChildren() resets the inner
   block's style to default anonymous style (with align-items: auto);
4. RenderButton::setupInnerStyle() directly sets the inner block's
   style (e.g. with align-items: flex-start).

There is no visible issue during the button's inner block is created
because the inner block is added as a child of the button after the
steps.

However, at step 3, because align-items changes from auto to flex-start,
the inner block will be unnecessarily invalidated.

At step 4, the style changes bypass RenderObject::setStyle() which may
cause missing invalidations (not observed for now).

Previously RenderButton::styleWillChange tries to reset inner block's
style to default anonymous style to hide the style change in step 3.
However, it's not kept consistent with RenderButton::styleDidChange.
The method looks tricky and fragile.

Now add RenderObject::updateAnonymousChildStyle() and call it before
setStyle(). RenderButton overrides it to set inner block styles.

BUG=407351
TEST=fast/repaint/button-inner-no-repaint.html

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

git-svn-id: svn://svn.chromium.org/blink/trunk@180924 bbb929c8-8fbe-4397-9dbb-9b2b20218538
Simplify SMILTime operators

Since the unresolved and indefined symbols are represented by
NaN and Inf values already, the SMILTime operators can be
simplified.

R=fs@opera.com
BUG=406899

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

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