Changeset 207250 in webkit


Ignore:
Timestamp:
Oct 12, 2016 4:01:43 PM (7 years ago)
Author:
matthew_hanson@apple.com
Message:

Merge r203792. rdar://problem/28476951

Location:
branches/safari-602.2.14.0-branch/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/safari-602.2.14.0-branch/Source/WebCore/ChangeLog

    r207249 r207250  
     12016-10-11  Matthew Hanson  <matthew_hanson@apple.com>
     2
     3        Merge r203792. rdar://problem/28476951
     4
     5    2016-07-27  Jeremy Jones  <jeremyj@apple.com>
     6
     7            Fullscreen video zoom button does not work after rotating when aspect ratio matches display.
     8            https://bugs.webkit.org/show_bug.cgi?id=160263
     9            rdar://problem/27368872
     10
     11            Reviewed by Eric Carlson.
     12
     13            When video and display aspect ratio match, and rotating from landscape to protrait, the transform used in layout
     14            will be Identity. This means checking the transform for identity is an insufficient test to see if the bounds
     15            need to be resolved.
     16
     17            Instead, always attempt to resolve the bounds and do a more accurate test while doing so.
     18
     19            * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
     20            (-[WebAVPlayerLayer layoutSublayers]):
     21            (-[WebAVPlayerLayer resolveBounds]):
     22
    1232016-10-11  Matthew Hanson  <matthew_hanson@apple.com>
    224
  • branches/safari-602.2.14.0-branch/Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm

    r205709 r207250  
    270270        [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(resolveBounds) object:nil];
    271271
    272         if (!CGAffineTransformIsIdentity(transform))
    273             [self performSelector:@selector(resolveBounds) withObject:nil afterDelay:animationDuration + 0.1];
     272        [self performSelector:@selector(resolveBounds) withObject:nil afterDelay:animationDuration + 0.1];
    274273    });
    275274}
     
    282281   
    283282    if ([_videoSublayer superlayer] != self)
     283        return;
     284   
     285    if (CGRectEqualToRect(self.modelVideoLayerFrame, [self bounds]) && CGAffineTransformIsIdentity([(UIView *)[_videoSublayer delegate] transform]))
    284286        return;
    285287   
     
    288290    [CATransaction setDisableActions:YES];
    289291   
    290     self.modelVideoLayerFrame = [self bounds];
    291     ASSERT(_fullscreenInterface->model());
    292     _fullscreenInterface->model()->setVideoLayerFrame(self.modelVideoLayerFrame);
     292    if (!CGRectEqualToRect(self.modelVideoLayerFrame, [self bounds])) {
     293        self.modelVideoLayerFrame = [self bounds];
     294        ASSERT(_fullscreenInterface->model());
     295        _fullscreenInterface->model()->setVideoLayerFrame(self.modelVideoLayerFrame);
     296    }
    293297    [(UIView *)[_videoSublayer delegate] setTransform:CGAffineTransformIdentity];
    294298   
Note: See TracChangeset for help on using the changeset viewer.