#include "third_party/blink/renderer/bindings/modules/v8/v8_html_media_element.h"
#include "third_party/blink/public/mojom/origin_trial_feature/origin_trial_feature.mojom-shared.h"
#include "third_party/blink/renderer/bindings/core/v8/generated_code_helper.h"
#include "third_party/blink/renderer/bindings/core/v8/native_value_traits_impl.h"
#include "third_party/blink/renderer/bindings/core/v8/to_v8_traits.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_audio_track_list.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_can_play_type_result.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_dom_token_list.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_event_handler_non_null.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_media_error.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_set_return_value_for_core.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_text_track.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_text_track_kind.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_text_track_list.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_time_ranges.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_video_track_list.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_media_keys.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_media_source_handle.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_media_stream.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_remote_playback.h"
#include "third_party/blink/renderer/bindings/modules/v8/v8_union_mediasourcehandle_mediastream.h"
#include "third_party/blink/renderer/core/dom/dom_token_list.h"
#include "third_party/blink/renderer/core/execution_context/execution_context.h"
#include "third_party/blink/renderer/core/frame/dactyloscoper.h"
#include "third_party/blink/renderer/core/frame/web_feature.h"
#include "third_party/blink/renderer/core/html/custom/ce_reactions_scope.h"
#include "third_party/blink/renderer/core/html/media/html_media_element.h"
#include "third_party/blink/renderer/core/html/media/media_error.h"
#include "third_party/blink/renderer/core/html/time_ranges.h"
#include "third_party/blink/renderer/core/html/track/audio_track_list.h"
#include "third_party/blink/renderer/core/html/track/text_track.h"
#include "third_party/blink/renderer/core/html/track/text_track_list.h"
#include "third_party/blink/renderer/core/html/track/video_track_list.h"
#include "third_party/blink/renderer/core/html_names.h"
#include "third_party/blink/renderer/core/keywords.h"
#include "third_party/blink/renderer/modules/audio_output_devices/html_media_element_audio_output_device.h"
#include "third_party/blink/renderer/modules/encryptedmedia/html_media_element_encrypted_media.h"
#include "third_party/blink/renderer/modules/encryptedmedia/media_keys.h"
#include "third_party/blink/renderer/modules/mediacapturefromelement/html_media_element_capture.h"
#include "third_party/blink/renderer/modules/mediasource/media_source_handle_impl.h"
#include "third_party/blink/renderer/modules/mediastream/media_stream.h"
#include "third_party/blink/renderer/modules/remoteplayback/html_media_element_remote_playback.h"
#include "third_party/blink/renderer/modules/remoteplayback/remote_playback.h"
#include "third_party/blink/renderer/modules/srcobject/html_media_element_src_object.h"
#include "third_party/blink/renderer/platform/bindings/exception_messages.h"
#include "third_party/blink/renderer/platform/bindings/idl_member_installer.h"
#include "third_party/blink/renderer/platform/bindings/runtime_call_stats.h"
#include "third_party/blink/renderer/platform/bindings/v8_binding.h"
#include "third_party/blink/renderer/platform/instrumentation/use_counter.h"
namespace blink {
void V8HTMLMediaElement::Impl::Init() { … }
namespace {
namespace v8_html_media_element {
void ErrorAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SrcAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SrcAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CurrentSrcAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CrossOriginAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CrossOriginAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void NetworkStateAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PreloadAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PreloadAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void BufferedAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ReadyStateAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SeekingAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CurrentTimeAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CurrentTimeAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DurationAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PausedAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DefaultPlaybackRateAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DefaultPlaybackRateAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PlaybackRateAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PlaybackRateAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PlayedAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SeekableAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void EndedAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void AutoplayAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void AutoplayAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LoopAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LoopAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LatencyHintAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LatencyHintAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PreservesPitchAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PreservesPitchAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ControlsAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ControlsAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ControlsListAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void ControlsListAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void VolumeAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void VolumeAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void MutedAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void MutedAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DefaultMutedAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DefaultMutedAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void AudioTracksAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void VideoTracksAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void TextTracksAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void WebkitAudioDecodedByteCountAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void WebkitVideoDecodedByteCountAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SinkIdAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void MediaKeysAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void OnencryptedAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void OnencryptedAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void OnwaitingforkeyAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void OnwaitingforkeyAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void RemoteAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DisableRemotePlaybackAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void DisableRemotePlaybackAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SrcObjectAttributeGetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SrcObjectAttributeSetCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void AddTextTrackOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CanPlayTypeOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void CaptureStreamOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void LoadOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PauseOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void PlayOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SetMediaKeysOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
void SetSinkIdOperationCallback(const v8::FunctionCallbackInfo<v8::Value>& info) { … }
}
usingnamespacev8_html_media_element;
}
void V8HTMLMediaElement::Impl::InstallInterfaceTemplate(v8::Isolate* isolate, const DOMWrapperWorld& world, v8::Local<v8::Template> interface_template) { … }
void V8HTMLMediaElement::Impl::InstallUnconditionalProperties(v8::Isolate* isolate, const DOMWrapperWorld& world, v8::Local<v8::Template> instance_template, v8::Local<v8::Template> prototype_template, v8::Local<v8::Template> interface_template) { … }
void V8HTMLMediaElement::Impl::InstallContextIndependentProperties(v8::Isolate* isolate, const DOMWrapperWorld& world, v8::Local<v8::Template> instance_template, v8::Local<v8::Template> prototype_template, v8::Local<v8::Template> interface_template) { … }
void V8HTMLMediaElement::Impl::InstallContextDependentProperties(v8::Local<v8::Context> context, const DOMWrapperWorld& world, v8::Local<v8::Object> instance_object, v8::Local<v8::Object> prototype_object, v8::Local<v8::Object> interface_object, v8::Local<v8::Template> interface_template, FeatureSelector feature_selector) { … }
}