Branch: refs/heads/safari-7615.1.18-branch
Home: https://github.com/WebKit/WebKit
Commit: 62a1efae812e5f7055815732e2d8f56af60ab243
https://github.com/WebKit/WebKit/commit/62a1efae812e5f7055815732e2d8f56af60ab243
Author: Tim Horton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm
Log Message:
-----------
Cherry-pick 0a0fa97fea12. rdar://problem/104102164
CGDisplayList image buffer contents are upside-down
https://bugs.webkit.org/show_bug.cgi?id=250717
rdar://104102164
Reviewed by Dean Jackson.
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::paintContents):
Flip the contents when required.
Canonical link: https://commits.webkit.org/258997@main
Canonical link: https://commits.webkit.org/[email protected]
Commit: b8b05de496c2ec665688b3a72b33505243511eed
https://github.com/WebKit/WebKit/commit/b8b05de496c2ec665688b3a72b33505243511eed
Author: Tim Horton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M Source/WebKit/Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.mm
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm
Log Message:
-----------
Cherry-pick 9502f8564a09. rdar://problem/104102164
CG display list graphics contexts are sometimes still flipped
https://bugs.webkit.org/show_bug.cgi?id=250816
rdar://104388673
Reviewed by Dean Jackson.
* Source/WebKit/Shared/RemoteLayerTree/CGDisplayListImageBufferBackend.mm:
(WebKit::GraphicsContextCGDisplayList::GraphicsContextCGDisplayList):
Remove the workaround introduced in r252402@main, since we have reinstated
the toplevel
context flip in 258997@main. I missed this in 258997@main because it only
affects
cases where we end up doing setCTM(getCTM()), which is just rare enough to
miss
with cursory testing.
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h:
* Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.mm:
(WebKit::RemoteLayerBackingStore::paintContents):
(WebKit::RemoteLayerBackingStore::drawInContext):
While debugging the above, I also noticed that we were leaving the display
list context with a missing trailing `restore` operation, because we encode
the
display list inside drawInContext. To avoid this, move the flip inside our
existing
state saver, which is popped before encoding the display list. This has no
actual effect at the moment (except making the dumped list look more
correct),
but will eventually be necessary when the replayed destination context is
reused.
Canonical link: https://commits.webkit.org/259076@main
Canonical link: https://commits.webkit.org/[email protected]
Compare: https://github.com/WebKit/WebKit/compare/6fdb1d709539...b8b05de496c2
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes