mirror of
https://github.com/zebrajr/ladybird.git
synced 2025-12-06 00:19:53 +01:00
LibMedia+LibWeb: Implement media pausing/resuming
This commit is contained in:
parent
3ebaa0cd3f
commit
ee587cfec4
|
|
@ -92,7 +92,6 @@ PlaybackManager::PlaybackManager(NonnullRefPtr<MutexedDemuxer> const& demuxer, N
|
|||
, m_audio_tracks(audio_tracks)
|
||||
, m_audio_track_datas(audio_track_datas)
|
||||
{
|
||||
m_time_provider->resume();
|
||||
}
|
||||
|
||||
PlaybackManager::~PlaybackManager()
|
||||
|
|
@ -207,4 +206,14 @@ void PlaybackManager::disable_an_audio_track(Track const& track)
|
|||
m_audio_sink->set_provider(track, nullptr);
|
||||
}
|
||||
|
||||
void PlaybackManager::play()
|
||||
{
|
||||
m_time_provider->resume();
|
||||
}
|
||||
|
||||
void PlaybackManager::pause()
|
||||
{
|
||||
m_time_provider->pause();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -60,6 +60,9 @@ public:
|
|||
void enable_an_audio_track(Track const& track);
|
||||
void disable_an_audio_track(Track const& track);
|
||||
|
||||
void play();
|
||||
void pause();
|
||||
|
||||
Function<void(DecoderError&&)> on_error;
|
||||
|
||||
private:
|
||||
|
|
|
|||
|
|
@ -1775,7 +1775,8 @@ void HTMLMediaElement::notify_about_playing()
|
|||
resolve_pending_play_promises(promises);
|
||||
});
|
||||
|
||||
// FIXME: Implement resuming in PlaybackManager.
|
||||
if (m_playback_manager)
|
||||
m_playback_manager->play();
|
||||
|
||||
if (m_audio_tracks->has_enabled_track())
|
||||
document().page().client().page_did_change_audio_play_state(AudioPlayState::Playing);
|
||||
|
|
@ -1800,7 +1801,8 @@ void HTMLMediaElement::set_paused(bool paused)
|
|||
m_paused = paused;
|
||||
|
||||
if (m_paused) {
|
||||
// FIXME: Implement pausing in PlaybackManager.
|
||||
if (m_playback_manager)
|
||||
m_playback_manager->pause();
|
||||
|
||||
if (m_audio_tracks->has_enabled_track())
|
||||
document().page().client().page_did_change_audio_play_state(AudioPlayState::Paused);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user