Need to upstream BlackBerry-specific change to MediaPlayer.h, MediaPlayerPrivateBlackBerry.h(cpp) are already upstreamed and need this patch to build upstreaming code.
Created attachment 134954 [details] Patch
Comment on attachment 134954 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=134954&action=review > Source/WebCore/platform/graphics/MediaPlayer.h:312 > + MediaPlayerPrivateInterface* implementation() { return m_private.get(); } Why is this needed?
(In reply to comment #2) > (From update of attachment 134954 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=134954&action=review > > > Source/WebCore/platform/graphics/MediaPlayer.h:312 > > + MediaPlayerPrivateInterface* implementation() { return m_private.get(); } > > Why is this needed? BlackBerry porting need to access the implementation which stores implementation-specific information, like volume-control and volume-status. Look at html/HTMLMediaElement.cpp html/shadow/MediaControlElements.cpp rendering/MediaControlElements.cpp
Comment on attachment 134954 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=134954&action=review > Source/WebCore/platform/graphics/MediaPlayer.h:89 > + MediaPlayerPrivateInterface* qnxMediaPlayer; "qnx" does not seem too good here. >>> Source/WebCore/platform/graphics/MediaPlayer.h:312 >>> + MediaPlayerPrivateInterface* implementation() { return m_private.get(); } >> >> Why is this needed? > > BlackBerry porting need to access the implementation which stores implementation-specific information, like volume-control and volume-status. > > Look at html/HTMLMediaElement.cpp > html/shadow/MediaControlElements.cpp > rendering/MediaControlElements.cpp Does not it make more sense to add methods to MediaPlayer itself, and hide the "implementation" for the callee?
Comment on attachment 134954 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=134954&action=review >>>> Source/WebCore/platform/graphics/MediaPlayer.h:312 >>>> + MediaPlayerPrivateInterface* implementation() { return m_private.get(); } >>> >>> Why is this needed? >> >> BlackBerry porting need to access the implementation which stores implementation-specific information, like volume-control and volume-status. >> >> Look at html/HTMLMediaElement.cpp >> html/shadow/MediaControlElements.cpp >> rendering/MediaControlElements.cpp > > Does not it make more sense to add methods to MediaPlayer itself, and hide the "implementation" for the callee? The "PrivateInterface" part of the class name should be a strong hint that the interface is really private. Will it be a burden to add MediaPlayer methods to access the information you need?