Let SpellChecker::respondToChangeClient on a text input field avoid synchronous 
layout. 

SpellChecker::respondToChangeClient is called by FrameSelection::setSelection. 
We use VisiblePosition to find word and sentence boundaries and it cause 
synchronous layout. 

However we implement text field as a shadow element including only div and text 
nodes. 
HTMLTextFormControlElement, which is a implementation of text field, provides 
boundary functions without VisiblePosition.
Thus we can use them.

Following is an implementation detail. 
Source/core/editing/SpellChecker.cpp: 
- SpellChecker::respondToChangeClient. if Selection is in a text field, we use 
new Position functions to find the boundaries. 
- L794: oldSelection.isContentEditable() causes the layout. We avoid that. 

Source/core/html/HTMLTextFormControlElementTest.cpp: 
- The SpellCheckDoesNotCauseUpdateLayout test confirms 
that SpellChecker::respondToChangeClinet on a text input field avoid synchronous 
layout. 
- The test is little tricky because SpellChecker is strongly bound to frame and 
FrameSelection, which cause synchronous layout, so we can not test 
SpellChecker::respondToChangeClinet simply. 
- Until L187, we set up a situation that we have old Selection and 
FrameSelection selects new Selection. Then create new SpellChecker an call 
respondToChangedSelection with the old Selection. Thus the new SpellChecker 
works. 

Source/core/testing/DummyPageHolder.cpp/h: 
- We change DummyPageHolder constructor in order to assign new 
SpellCheckerClient for the 
HTMLTextFormControlElementTest::SpellCheckDoesNotCauseUpdateLayout test. 


BUG=382809

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

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

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

BUG=367736,133242
TBR=harpreet.sk@samsung.com

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

git-svn-id: svn://svn.chromium.org/blink/trunk@177733 bbb929c8-8fbe-4397-9dbb-9b2b20218538
[screen-orientation] Update implementation to match recent spec changes.

https://github.com/w3c/screen-orientation/pull/21

BUG=162827

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

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