WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
143131
Synchronize fullscreen animation between processes.
https://bugs.webkit.org/show_bug.cgi?id=143131
Summary
Synchronize fullscreen animation between processes.
Jeremy Jones
Reported
2015-03-27 04:54:23 PDT
Synchronize fullscreen animation between processes.
Attachments
Patch
(13.40 KB, patch)
2015-03-27 05:19 PDT
,
Jeremy Jones
no flags
Details
Formatted Diff
Diff
Patch
(19.53 KB, patch)
2015-03-27 12:12 PDT
,
Jeremy Jones
no flags
Details
Formatted Diff
Diff
Patch
(19.49 KB, patch)
2015-03-27 14:59 PDT
,
Jeremy Jones
no flags
Details
Formatted Diff
Diff
Patch
(24.14 KB, patch)
2015-04-02 18:47 PDT
,
Jer Noble
no flags
Details
Formatted Diff
Diff
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Jeremy Jones
Comment 1
2015-03-27 05:19:54 PDT
Created
attachment 249562
[details]
Patch
Jeremy Jones
Comment 2
2015-03-27 05:20:43 PDT
rdar://problem/19948096
Simon Fraser (smfr)
Comment 3
2015-03-27 08:46:03 PDT
Comment on
attachment 249562
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=249562&action=review
> Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:623 > + id<CAAction> action = nil; // [self actionForKey:@"bounds"];
Please don't commit commented-out code. Reference a bug in a comment if you need to.
> Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:624 > + if (action && action != [NSNull null]) {
Should this use -isEqual:?
> Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm:38 > +#import <BackBoardServices/BKSAnimationFence.h> > +#import <BackBoardServices/BKSAnimationFence_Private.h>
This will break the public iOS build.
> Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm:40 > +#import <UIKit/UIWindow_Private.h>
Ditto.
> Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm:56 > + : m_page(&page), m_lastFencePort(0)
Each initialization on its own line please.
Jer Noble
Comment 4
2015-03-27 08:54:08 PDT
Comment on
attachment 249562
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=249562&action=review
>> Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:623 >> + id<CAAction> action = nil; // [self actionForKey:@"bounds"]; > > Please don't commit commented-out code. Reference a bug in a comment if you need to.
This must have been inadvertent. It makes the following section meaningless.
>> Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:624 >> + if (action && action != [NSNull null]) { > > Should this use -isEqual:?
It should probably just get reversed to: if (!action || [action isKindOfClass:[NSNull class]]) ...disableActions... else { ...other stuff... } I'm curious, however, why the `action` doesn't seem to be used inside the following block:
> Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:626 > + [CATransaction setAnimationTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]]; > + [CATransaction setAnimationDuration:0.4];
Shouldn't we be matching the timing function and duration with that of the action?
Jeremy Jones
Comment 5
2015-03-27 11:20:55 PDT
(In reply to
comment #3
)
> Comment on
attachment 249562
[details]
> Patch > > View in context: >
https://bugs.webkit.org/attachment.cgi?id=249562&action=review
> > > Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:623 > > + id<CAAction> action = nil; // [self actionForKey:@"bounds"]; > > Please don't commit commented-out code. Reference a bug in a comment if you > need to.
Removed. Code, referenced radar.
> > > Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:624 > > + if (action && action != [NSNull null]) { > > Should this use -isEqual:?
NSNull is a singleton, so this is valid, but I'll change it to -isEqual:
> > > Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm:38 > > +#import <BackBoardServices/BKSAnimationFence.h> > > +#import <BackBoardServices/BKSAnimationFence_Private.h> > > This will break the public iOS build.
Removed imports. Created BackBoardServiesSPI.h
> > > Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm:40 > > +#import <UIKit/UIWindow_Private.h> > > Ditto.
Removed import. Added interfaces to UIKitSPI.h
> > > Source/WebKit2/UIProcess/ios/WebVideoFullscreenManagerProxy.mm:56 > > + : m_page(&page), m_lastFencePort(0) > > Each initialization on its own line please.
Moved to separate line.
Jeremy Jones
Comment 6
2015-03-27 11:30:45 PDT
(In reply to
comment #4
)
> Comment on
attachment 249562
[details]
> Patch > > View in context: >
https://bugs.webkit.org/attachment.cgi?id=249562&action=review
> > >> Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:623 > >> + id<CAAction> action = nil; // [self actionForKey:@"bounds"]; > > > > Please don't commit commented-out code. Reference a bug in a comment if you need to.
Removed commented out code. Referenced a radar.
> > This must have been inadvertent. It makes the following section meaningless.
Intentional. I'll remove that code also and put it in the radar. The commented out code causes big UI problems. Still need to find a better way to do that.
> > >> Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:624 > >> + if (action && action != [NSNull null]) { > > > > Should this use -isEqual:?
NSNull is a singleton, so it is valid, but I've changed it to -isEqual:
> > It should probably just get reversed to: > > if (!action || [action isKindOfClass:[NSNull class]]) > ...disableActions... > else { > ...other stuff... > }
Reversed.
> > I'm curious, however, why the `action` doesn't seem to be used inside the > following block: > > > Source/WebCore/platform/ios/WebVideoFullscreenInterfaceAVKit.mm:626 > > + [CATransaction setAnimationTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]]; > > + [CATransaction setAnimationDuration:0.4]; > > Shouldn't we be matching the timing function and duration with that of the > action?
That action is a private class from UIKit and doesn't lend itself to proper inspection. I'm still looking for a better way to do that. I'll remove this code and move it to the radar.
Jeremy Jones
Comment 7
2015-03-27 12:12:36 PDT
Created
attachment 249594
[details]
Patch
Jeremy Jones
Comment 8
2015-03-27 14:59:07 PDT
Created
attachment 249610
[details]
Patch
Jer Noble
Comment 9
2015-04-02 18:47:39 PDT
Created
attachment 250028
[details]
Patch
WebKit Commit Bot
Comment 10
2015-04-06 15:03:40 PDT
Comment on
attachment 250028
[details]
Patch Clearing flags on attachment: 250028 Committed
r182439
: <
http://trac.webkit.org/changeset/182439
>
WebKit Commit Bot
Comment 11
2015-04-06 15:03:45 PDT
All reviewed patches have been landed. Closing bug.
Jer Noble
Comment 12
2015-04-07 10:20:07 PDT
Follow up build fix committed. Committed
r182477
: <
http://trac.webkit.org/r182477
>.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug