Bug 136644

Summary: Separate the Apple media controls module from other ports
Product: WebKit Reporter: Dean Jackson <dino>
Component: MediaAssignee: Dean Jackson <dino>
Status: RESOLVED FIXED    
Severity: Normal CC: calvaris, cdumez, commit-queue, eric.carlson, esprehn+autocc, glenn, gyuyoung.kim, jer.noble, kondapallykalyan, philipj, rakuco, ryuan.choi, sergio
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch eric.carlson: review+

Description Dean Jackson 2014-09-08 14:26:13 PDT
Currently, mediaControlsApple is acting as the base class for all ports that use JS-based controls. It's nice that we're trying to consolidate all behaviour into one place, but that one place should not be an Apple-specific controller.

For now, make a Base.js that is identical to the Apple.js, and have the EFL and GTK ports use that. Over time we'll probably change Apple.js to use the same base.
Comment 1 Dean Jackson 2014-09-08 14:29:18 PDT
Lots of discussion in 131951
Comment 2 Dean Jackson 2014-09-08 14:29:32 PDT
https://bugs.webkit.org/show_bug.cgi?id=131951
Comment 3 Dean Jackson 2014-09-08 14:36:31 PDT
rdar://problem/18270969
Comment 4 Dean Jackson 2014-09-08 14:38:02 PDT
Created attachment 237812 [details]
Patch
Comment 5 Dean Jackson 2014-09-08 14:51:12 PDT
Letting EWS check the ports I can't build.
Comment 6 Dean Jackson 2014-09-08 15:32:51 PDT
EFL EWS seems to be stuck. Committing for now.
Comment 7 Dean Jackson 2014-09-08 15:33:50 PDT
Committed r173401: <http://trac.webkit.org/changeset/173401>
Comment 8 Xabier Rodríguez Calvar 2014-09-08 15:36:54 PDT
(In reply to comment #0)
> Currently, mediaControlsApple is acting as the base class for all ports that use JS-based controls. It's nice that we're trying to consolidate all behaviour into one place, but that one place should not be an Apple-specific controller.
> 
> For now, make a Base.js that is identical to the Apple.js, and have the EFL and GTK ports use that. Over time we'll probably change Apple.js to use the same base.

For me it would be more credible if you had based the Apple controls already on Base, otherwise the discussion on bug 131951 is completely disregarded.
Comment 9 Dean Jackson 2014-09-09 15:19:39 PDT
(In reply to comment #8)
 
> For me it would be more credible if you had based the Apple controls already on Base, otherwise the discussion on bug 131951 is completely disregarded.

I understand your point, although this stuff is really supposed to be platform specific. The part that is really the base of the implementation is the HTMLMediaElement and the MediaControlsHost.

For example, we might want to replicate the way scrubbing works on iOS, where vertical position implies a scrubbing speed. That's not a stylistic thing - it's behaviour that we'd have to implement. It's quite hard to do that for platforms you don't have access to.

We're already sharing base functionality. All this change did was move it up the stack a bit.