Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: baf80f46662d7e1c4f8f11bd932fa51f723204ad
      
https://github.com/WebKit/WebKit/commit/baf80f46662d7e1c4f8f11bd932fa51f723204ad
  Author: Tim Horton <[email protected]>
  Date:   2024-04-12 (Fri, 12 Apr 2024)

  Changed paths:
    M Source/WebKit/UIProcess/WebPageProxy.cpp
    M Tools/TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm

  Log Message:
  -----------
  UnifiedPDF: Zooming in with keyboard in Safari, then pinch-zooming in, breaks 
keyboard zoom *out*
https://bugs.webkit.org/show_bug.cgi?id=272603
rdar://126214229

Reviewed by Abrar Rahman Protyasha.

* Source/WebKit/UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::setTextZoomFactor):
(WebKit::WebPageProxy::setPageZoomFactor):
(WebKit::WebPageProxy::setPageAndTextZoomFactors):
Avoid early-returning in these zoom setters, when a scale-owning plugin
is installed, for two reasons:

1) Since 159636@main, pageZoomFactor() returns a separate plugin-specific member
   instead of m_pageZoomFactor. The setter, however, confers only with 
m_pageZoomFactor
   when deciding to early return. This is the cause of the breakage in the 
title.
   Rectify this by avoiding the early return.

2) Avoid bailing entirely instead of just comparing against m_pluginZoomFactor,
   because m_pluginZoomFactor comes in asynchronously and is owned by the WP.

* Tools/TestWebKitAPI/Tests/WebKitCocoa/WKPDFView.mm:
(TEST(PDF, SetPageZoomFactorDoesNotBailIncorrectly)):
Add a trivial API test for this bug.

Canonical link: https://commits.webkit.org/277442@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to