[Mac] Spelling, grammar and correction dots are painted upside down
authordbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 14 Sep 2017 23:52:31 +0000 (23:52 +0000)
committerdbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 14 Sep 2017 23:52:31 +0000 (23:52 +0000)
commit92b0bdcc81646fa0966806a3deac2056efabb175
tree10664f80cca409032884c848ba996e5346e78537
parent30a01dcb78a3c5cb9c879856f242690cbc4473c8
[Mac] Spelling, grammar and correction dots are painted upside down
https://bugs.webkit.org/show_bug.cgi?id=176949
<rdar://problem/34441098>

Reviewed by Simon Fraser.

Painting occurs in a vertically flipped context. Vertically flip the context ("unflip" it)
before painting the document markers on macOS so that they are painted right-side. This makes
the appearance of spelling, grammar and correction dots in WebKit match the AppKit appearance
of these dots.

* platform/graphics/cocoa/GraphicsContextCocoa.mm:
(WebCore::GraphicsContext::drawLineForDocumentMarker): Flip the context as described above.
Also make use of RAII object CGContextStateSaver instead of manually saving and restoring
the state of the context.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@222065 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/cocoa/GraphicsContextCocoa.mm