[webkit-reviews] review denied: [Bug 128143] Add support for AVKit fullscreen to WebKit2 : [Attachment 223291] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Feb 6 11:49:34 PST 2014
Simon Fraser (smfr) <simon.fraser at apple.com> has denied Jeremy Jones
<jeremyj-wk at apple.com>'s request for review:
Bug 128143: Add support for AVKit fullscreen to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=128143
Attachment 223291: Patch
https://bugs.webkit.org/attachment.cgi?id=223291&action=review
------- Additional Comments from Simon Fraser (smfr) <simon.fraser at apple.com>
View in context: https://bugs.webkit.org/attachment.cgi?id=223291&action=review
> Source/WebCore/platform/ios/WebVideoFullscreenModelMediaElement.h:33
> +#include <WebCore/HTMLMediaElement.h>
We try to avoid including files in headers. Why this include here and not in
the impl?
> Source/WebKit2/UIProcess/WebPageProxy.cpp:2971
> +WebVideoFullscreenManagerProxy* WebPageProxy::videoFullscreenManager()
This should return a reference if it can never be null.
> Source/WebKit2/UIProcess/WebVideoFullscreenManagerProxy.cpp:29
> +#if PLATFORM(IOS)
This file should live in UIProcess/ios if it's iOS-only.
> Source/WebKit2/UIProcess/WebVideoFullscreenManagerProxy.cpp:57
> +void WebVideoFullscreenManagerProxy::setVideoLayerID(unsigned
videoContextID)
It's called setVideoLayerID but sets a videoContextID. Which is it?
Can we use a stronger type than "unsigned"?
> Source/WebKit2/UIProcess/WebVideoFullscreenManagerProxy.h:42
> +class WebVideoFullscreenManagerProxy : public
WebCore::WebVideoFullscreenInterfaceAVKit, public
WebCore::WebVideoFullscreenModel, public IPC::MessageReceiver {
I think IPC::MessageReceiver can be privately inherited.
> Source/WebKit2/UIProcess/WebVideoFullscreenManagerProxy.h:58
> + void setVideoLayerID(unsigned) override;
> +
> + void requestExitFullScreen() override;
> + void play() override;
> + void pause() override;
> + void togglePlayState() override;
> + void seekToTime(double) override;
> + void didExitFullscreen() override;
Please use 'virtual' for these.
> Source/WebKit2/UIProcess/WebVideoFullscreenManagerProxy.h:60
> + WebPageProxy* m_page;
Can this be a reference?
>> Source/WebKit2/WebKit2.xcodeproj/project.pbxproj:2303
>> + 3F418EF81887BD97002795FD /*
WebVideoFullscreenManagerProxyMessages.h */ = {isa = PBXFileReference;
fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path =
WebVideoFullscreenManagerProxyMessages.h; sourceTree = "<group>"; };
>
> WebVideoFullscreenManagerProxyMessages.h isn't in the patch, did you forget
to add it?
It's generated.
> Source/WebKit2/WebProcess/WebPage/WebPage.h:210
> + WebVideoFullscreenManager* videoFullscreenManager();
Can this return a reference?
> Source/WebKit2/WebProcess/WebVideoFullscreenManager.cpp:28
> +#if PLATFORM(IOS)
This file should live in an /ios directory.
> Source/WebKit2/WebProcess/WebVideoFullscreenManager.cpp:51
> + setWebVideoFullscreenInterface(this);
Seems odd to call this here. Also odd that it's never unset in the dtor.
> Source/WebKit2/WebProcess/WebVideoFullscreenManager.h:28
> +#if PLATFORM(IOS)
This file should live in an /ios directory.
> Source/WebKit2/WebProcess/WebVideoFullscreenManager.h:51
> +class WebVideoFullscreenManager : public
WebCore::WebVideoFullscreenModelMediaElement, public
WebCore::WebVideoFullscreenInterface, public IPC::MessageReceiver {
It's weird that the existing WebVideoFullscreenModelMediaElement doesn't
inherit from HTMLMediaElement.
> Source/WebKit2/WebProcess/WebVideoFullscreenManager.h:58
> + bool supportsFullscreen(const WebCore::Node*);
const method?
> Source/WebKit2/WebProcess/WebVideoFullscreenManager.h:64
> + bool operator==(const EventListener& rhs) override {return
static_cast<WebCore::EventListener*>(this) == &rhs;}
Need spaces inside the {}
> Source/WebKit2/WebProcess/WebVideoFullscreenManager.h:73
> + void setDuration(double) override;
> + void setCurrentTime(double currentTime, double anchorTime) override;
> + void setRate(bool isPlaying, float playbackRate) override;
> + void setVideoDimensions(bool hasVideo, float width, float height)
override;
> + void setVideoLayer(PlatformLayer*) override;
> + void setVideoLayerID(uint32_t) override;
> + void enterFullscreen() override;
> + void exitFullscreen() override;
virtual please.
> Source/WebKit2/WebProcess/WebVideoFullscreenManager.h:75
> + RefPtr<WebPage> m_page;
Seems very odd for this to retain Page.
More information about the webkit-reviews
mailing list