Revert of Separate repaint and layout requirements of StyleDifference (Step 1) (https://codereview.chromium.org/236203020/)

Reason for revert:
Reason for revert:
Depends on https://codereview.chromium.org/203463007/ which broke ChromeOS login window: https://code.google.com/p/chromium/issues/detail?id=365507

Original issue's description:
> Separate repaint and layout requirements of StyleDifference (Step 1)
> 
> Previously StyleDifference was an enum that proximately bigger values
> imply smaller values (e.g. StyleDifferenceLayout implies
> StyleDifferenceRepaint). This causes unnecessary repaints in some cases
> on layout change.
> 
> Convert StyleDifference to a structure containing relatively independent
> flags.
> 
> This change doesn't directly improve the result, but can make further
> repaint optimizations possible.
> 
> Step 1 doesn't change any functionality. RenderStyle still generate the
> legacy StyleDifference enum when comparing styles and convert the result
> to the new StyleDifference. Implicit requirements are not handled during
> the conversion.
> 
> Converted call sites to use the new StyleDifference according to the
> following conversion rules:
> - diff == StyleDifferenceEqual (&& !context) => diff.hasNoChange()
> - diff == StyleDifferenceRepaint => diff.needsRepaintObjectOnly()
> - diff == StyleDifferenceRepaintLayer => diff.needsRepaintLayer()
> - diff == StyleDifferenceRepaint || diff == StyleDifferenceRepaintLayer => diff.needsRepaintLayer()
> - diff >= StyleDifferenceRepaint => diff.needsRepaint() || diff.needsLayout()
> - diff >= StyleDifferenceRepaintLayer => diff.needsRepaintLayer() || diff.needsLayout()
> - diff > StyleDifferenceRepaintLayer => diff.needsLayout()
> - diff == StyleDifferencePositionedMovementLayoutOnly => diff.needsPositionedMovementLayoutOnly()
> - diff == StyleDifferenceLayout => diff.needsFullLayout()
> 
> BUG=358460
> TEST=All existing layout tests.
> R=eseidel@chromium.org, esprehn@chromium.org, jchaffraix@chromium.org
> 
> Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=171983

TBR=esprehn@chromium.org,jchaffraix@chromium.org,ojan@chromium.org,eseidel@chromium.org,wangxianzhu@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=358460

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

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