Cleanup temporary setting of image interpolation quality in GraphicsContext::drawImage*
https://bugs.webkit.org/show_bug.cgi?id=133407

Reviewed by Darin Adler.

Add helper class to set/reset image interpolation quality value.

No change in functionality.

* platform/graphics/GraphicsContext.cpp:
(WebCore::InterpolationQualityMaintainer::InterpolationQualityMaintainer):
(WebCore::InterpolationQualityMaintainer::~InterpolationQualityMaintainer):
(WebCore::GraphicsContext::drawImage):
(WebCore::GraphicsContext::drawTiledImage):
(WebCore::GraphicsContext::drawImageBuffer):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169498 268f45cc-cd09-0410-ab3c-d52691b4dbfc
REGRESSION (WebKit2): space space to insert period doesn't work in web forms.
https://bugs.webkit.org/show_bug.cgi?id=133413
<rdar://problem/16948333>

Reviewed by Benjamin Poulain.


Source/WebCore: 
Adding utility functions and their exports.

* WebCore.exp.in:
* editing/TextIterator.cpp:
(WebCore::plainTextReplacingNoBreakSpace):
* editing/TextIterator.h:
* editing/VisibleUnits.cpp:
(WebCore::charactersAroundPosition):
(WebCore::characterBeforePosition): Deleted.
* editing/VisibleUnits.h:

Source/WebKit2: 
iOS TextInput needs to know about content surrounding the
current position while editing. Since we don't want to
query this information synchronously when asked, we cache it
as part of the EditorState. EditorState now contains a vector of
three characters representing the content after, before and two
position before the caret position.
The patch also replaces all calls to plainText with plainTextReplacingNoBreakSpace
to work well with iOS text input.

* Shared/EditorState.cpp:
(WebKit::EditorState::encode):
(WebKit::EditorState::decode):
* Shared/EditorState.h:
(WebKit::EditorState::EditorState):
* UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView _characterInRelationToCaretSelection:]):
(+[WKAutocorrectionContext autocorrectionContextWithData:markedText:selectedText:afterText:selectedRangeInMarkedText:]):
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::editorState):
* WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::requestDictationContext):
(WebKit::WebPage::replaceSelectedText):
(WebKit::WebPage::replaceDictatedText):
(WebKit::WebPage::requestAutocorrectionData):
(WebKit::WebPage::syncApplyAutocorrection):
(WebKit::computeAutocorrectionContext):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@169500 268f45cc-cd09-0410-ab3c-d52691b4dbfc