Title: [233105] trunk/Source/WebKit
- Revision
- 233105
- Author
- [email protected]
- Date
- 2018-06-22 15:48:28 -0700 (Fri, 22 Jun 2018)
Log Message
[Fullscreen] Home indicator should show and hide with status bar
https://bugs.webkit.org/show_bug.cgi?id=186942
<rdar://problem/41302190>
Reviewed by Tim Horton.
* UIProcess/ios/fullscreen/WKFullScreenViewController.h:
* UIProcess/ios/fullscreen/WKFullScreenViewController.mm:
(-[WKFullScreenViewController showUI]):
(-[WKFullScreenViewController hideUI]):
(-[WKFullScreenViewController setPrefersHomeIndicatorAutoHidden:]):
Modified Paths
Diff
Modified: trunk/Source/WebKit/ChangeLog (233104 => 233105)
--- trunk/Source/WebKit/ChangeLog 2018-06-22 22:24:30 UTC (rev 233104)
+++ trunk/Source/WebKit/ChangeLog 2018-06-22 22:48:28 UTC (rev 233105)
@@ -1,5 +1,19 @@
2018-06-22 Jer Noble <[email protected]>
+ [Fullscreen] Home indicator should show and hide with status bar
+ https://bugs.webkit.org/show_bug.cgi?id=186942
+ <rdar://problem/41302190>
+
+ Reviewed by Tim Horton.
+
+ * UIProcess/ios/fullscreen/WKFullScreenViewController.h:
+ * UIProcess/ios/fullscreen/WKFullScreenViewController.mm:
+ (-[WKFullScreenViewController showUI]):
+ (-[WKFullScreenViewController hideUI]):
+ (-[WKFullScreenViewController setPrefersHomeIndicatorAutoHidden:]):
+
+2018-06-22 Jer Noble <[email protected]>
+
[Fullscreen] Add a pinch-to-exit gesture
https://bugs.webkit.org/show_bug.cgi?id=186821
Modified: trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.h (233104 => 233105)
--- trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.h 2018-06-22 22:24:30 UTC (rev 233104)
+++ trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.h 2018-06-22 22:48:28 UTC (rev 233105)
@@ -38,6 +38,7 @@
@property (assign, nonatomic) SEL action;
@property (copy, nonatomic) NSString *location;
@property (assign, nonatomic) BOOL prefersStatusBarHidden;
+@property (assign, nonatomic) BOOL prefersHomeIndicatorAutoHidden;
@property (assign, nonatomic, getter=isPlaying) BOOL playing;
@property (assign, nonatomic, getter=isPictureInPictureActive) BOOL pictureInPictureActive;
@property (assign, nonatomic, getter=isAnimating) BOOL animating;
Modified: trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm (233104 => 233105)
--- trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm 2018-06-22 22:24:30 UTC (rev 233104)
+++ trunk/Source/WebKit/UIProcess/ios/fullscreen/WKFullScreenViewController.mm 2018-06-22 22:48:28 UTC (rev 233105)
@@ -119,6 +119,9 @@
CGFloat _nonZeroStatusBarHeight;
}
+@synthesize prefersStatusBarHidden=_prefersStatusBarHidden;
+@synthesize prefersHomeIndicatorAutoHidden=_prefersHomeIndicatorAutoHidden;
+
#pragma mark - External Interface
- (id)initWithWebView:(WKWebView *)webView
@@ -167,6 +170,7 @@
[_stackView setHidden:NO];
[_stackView setAlpha:1];
self.prefersStatusBarHidden = NO;
+ self.prefersHomeIndicatorAutoHidden = NO;
[self.view removeConstraints:@[_topConstraint.get()]];
_topConstraint = [[_topGuide topAnchor] constraintEqualToAnchor:self.view.safeAreaLayoutGuide.topAnchor];
[_topConstraint setActive:YES];
@@ -179,11 +183,13 @@
{
[NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(hideUI) object:nil];
[UIView animateWithDuration:showHideAnimationDuration animations:^{
+
[self.view removeConstraints:@[_topConstraint.get()]];
_topConstraint = [[_topGuide topAnchor] constraintEqualToAnchor:self.view.topAnchor constant:self.view.safeAreaInsets.top];
[_topConstraint setActive:YES];
[_stackView setAlpha:0];
self.prefersStatusBarHidden = YES;
+ self.prefersHomeIndicatorAutoHidden = YES;
if (auto* manager = self._manager)
manager->setFullscreenControlsHidden(true);
} completion:^(BOOL finished) {
@@ -206,8 +212,6 @@
[_pipButton setHidden:!playbackSessionModel];
}
-@synthesize prefersStatusBarHidden=_prefersStatusBarHidden;
-
- (void)setPrefersStatusBarHidden:(BOOL)value
{
_prefersStatusBarHidden = value;
@@ -215,6 +219,12 @@
[self _updateWebViewFullscreenInsets];
}
+- (void)setPrefersHomeIndicatorAutoHidden:(BOOL)value
+{
+ _prefersHomeIndicatorAutoHidden = value;
+ [self setNeedsUpdateOfHomeIndicatorAutoHidden];
+}
+
- (void)setPlaying:(BOOL)isPlaying
{
if (_playing == isPlaying)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes