Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

(3/3) Extract player as Web Components #26

Open
wants to merge 32 commits into
base: main
Choose a base branch
from

Conversation

dvoracek-slub
Copy link
Contributor

This PR is based on #25. The player is refactorized as Web Component, so that it can be embedded via the custom HTML tags <dlf-media> and <slub-media>.

Kajetan Dvoracek added 30 commits May 13, 2022 10:35
- Remove methods in DlfMediaPlayer that just forward to seek bar.
- Prepare moving seek bar to a new frontend class.
This prepares various changes:
- Make modal parent configurable, so modals may not be created if the
  given parent is invalid.
- Later, extract custom element where modals are created in
  `connectedCallback()`.
This fixes the issue that when using the fullscreen button on the player
instead of a keybinding to enter fullscreen, the modals couldn't be
opened. Here we extract our own fullscreen button, and use the correct
container as fullscreenElement for both keybinding and button.

Also, move `toggleFullScreen` to `Environment`.
- `afterManualSeek()`
- `handleEscape()`
- Gesture initialization
- Move to `ShakaFrontend`
- Merge fps/chapter/variantGroups events
- Use for poster
There's more that could be done here, but it's also a preparation for
converting the player to custom elements.
The idea has been that the player could also be unmounted. This will be
superseded by Custom Elements.
Don't rely on event listeners being registered after load
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant