WebKit Bugzilla
Attachment 343654 Details for
Bug 187068
: Ensure element fullscreen animation is always visible.
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-187068-20180626161131.patch (text/plain), 3.06 KB, created by
Jeremy Jones
on 2018-06-26 16:11:32 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Jeremy Jones
Created:
2018-06-26 16:11:32 PDT
Size:
3.06 KB
patch
obsolete
>Subversion Revision: 233214 >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index 766381d2e378d311a118d0724b7016db11b8eabc..c5c9a90fe7700231b4a62b202547e4d3e90e8e69 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,19 @@ >+2018-06-26 Jeremy Jones <jeremyj@apple.com> >+ >+ Ensure element fullscreen animation is always visible. >+ https://bugs.webkit.org/show_bug.cgi?id=187068 >+ rdar://problem/36187369 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ The fullscreen animation is important for communicating to users that they are no longer in inline mode. >+ If fullscreen animation's inline rect is not visible, animate from a point in the middle of the screen. >+ >+ * UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm: >+ (WebKit::safeInlineRect): >+ (-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]): >+ (-[WKFullScreenWindowController beganExitFullScreenWithInitialFrame:finalFrame:]): >+ > 2018-06-26 Eric Carlson <eric.carlson@apple.com> > > [Mac] AirPlay picker uses incorrect theme in Dark mode >diff --git a/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm b/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm >index d2590f1ba5492e1466c9c4069740562c48a02162..0bb6dade4178db1d59f85de33f683de48ee2e6a0 100644 >--- a/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm >+++ b/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenWindowControllerIOS.mm >@@ -67,6 +67,13 @@ static CGSize sizeExpandedToSize(CGSize initial, CGSize other) > return CGSizeMake(std::max(initial.width, other.width), std::max(initial.height, other.height)); > } > >+static CGRect safeInlineRect(CGRect initial, CGSize parentSize) >+{ >+ if (initial.origin.y > parentSize.height || initial.origin.y < -initial.size.height || initial.origin.x > parentSize.width || initial.origin.x < -initial.size.width) >+ return CGRectMake(parentSize.width / 2, parentSize.height / 2, 1, 1); >+ return initial; >+} >+ > static void replaceViewWithView(UIView *view, UIView *otherView) > { > [CATransaction begin]; >@@ -594,7 +601,8 @@ - (void)beganEnterFullScreenWithInitialFrame:(CGRect)initialFrame finalFrame:(CG > > _initialFrame.size = sizeExpandedToSize(_initialFrame.size, CGSizeMake(1, 1)); > _finalFrame.size = sizeExpandedToSize(_finalFrame.size, CGSizeMake(1, 1)); >- >+ _initialFrame = safeInlineRect(_initialFrame, [_rootViewController view].frame.size); >+ > [CATransaction begin]; > [CATransaction setDisableActions:YES]; > >@@ -664,7 +672,8 @@ - (void)beganExitFullScreenWithInitialFrame:(CGRect)initialFrame finalFrame:(CGR > > _initialFrame.size = sizeExpandedToSize(_initialFrame.size, CGSizeMake(1, 1)); > _finalFrame.size = sizeExpandedToSize(_finalFrame.size, CGSizeMake(1, 1)); >- >+ _finalFrame = safeInlineRect(_finalFrame, [_rootViewController view].frame.size); >+ > [self._webView _page]->setSuppressVisibilityUpdates(true); > > [_fullscreenViewController setPrefersStatusBarHidden:NO];
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 187068
: 343654