| /* |
| * This file is part of the WebKit open source project. |
| * This file has been generated by generate-bindings.pl. DO NOT MODIFY! |
| * |
| * This library is free software; you can redistribute it and/or |
| * modify it under the terms of the GNU Library General Public |
| * License as published by the Free Software Foundation; either |
| * version 2 of the License, or (at your option) any later version. |
| * |
| * This library is distributed in the hope that it will be useful, |
| * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| * Library General Public License for more details. |
| * |
| * You should have received a copy of the GNU Library General Public License |
| * along with this library; see the file COPYING.LIB. If not, write to |
| * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
| * Boston, MA 02110-1301, USA. |
| */ |
| |
| #include "config.h" |
| #include "WebKitDOMHTMLVideoElement.h" |
| |
| #include <WebCore/CSSImportRule.h> |
| #include "DOMObjectCache.h" |
| #include <WebCore/Document.h> |
| #include <WebCore/ExceptionCode.h> |
| #include <WebCore/ExceptionCodeDescription.h> |
| #include "GObjectEventListener.h" |
| #include <WebCore/HTMLNames.h> |
| #include <WebCore/JSMainThreadExecState.h> |
| #include "WebKitDOMEventPrivate.h" |
| #include "WebKitDOMEventTarget.h" |
| #include "WebKitDOMHTMLVideoElementPrivate.h" |
| #include "WebKitDOMNodePrivate.h" |
| #include "WebKitDOMPrivate.h" |
| #include "ConvertToUTF8String.h" |
| #include <wtf/GetPtr.h> |
| #include <wtf/RefPtr.h> |
| |
| #if ENABLE(VIDEO) |
| |
| namespace WebKit { |
| |
| WebKitDOMHTMLVideoElement* kit(WebCore::HTMLVideoElement* obj) |
| { |
| return WEBKIT_DOM_HTML_VIDEO_ELEMENT(kit(static_cast<WebCore::Node*>(obj))); |
| } |
| |
| WebCore::HTMLVideoElement* core(WebKitDOMHTMLVideoElement* request) |
| { |
| return request ? static_cast<WebCore::HTMLVideoElement*>(WEBKIT_DOM_OBJECT(request)->coreObject) : 0; |
| } |
| |
| WebKitDOMHTMLVideoElement* wrapHTMLVideoElement(WebCore::HTMLVideoElement* coreObject) |
| { |
| ASSERT(coreObject); |
| return WEBKIT_DOM_HTML_VIDEO_ELEMENT(g_object_new(WEBKIT_DOM_TYPE_HTML_VIDEO_ELEMENT, "core-object", coreObject, nullptr)); |
| } |
| |
| } // namespace WebKit |
| |
| #endif // ENABLE(VIDEO) |
| |
| static gboolean webkit_dom_html_video_element_dispatch_event(WebKitDOMEventTarget* target, WebKitDOMEvent* event, GError** error) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::Event* coreEvent = WebKit::core(event); |
| if (!coreEvent) |
| return false; |
| WebCore::HTMLVideoElement* coreTarget = static_cast<WebCore::HTMLVideoElement*>(WEBKIT_DOM_OBJECT(target)->coreObject); |
| |
| WebCore::ExceptionCode ec = 0; |
| gboolean result = coreTarget->dispatchEventForBindings(*coreEvent, ec); |
| if (ec) { |
| WebCore::ExceptionCodeDescription description(ec); |
| g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), description.code, description.name); |
| } |
| return result; |
| #else |
| UNUSED_PARAM(target); |
| UNUSED_PARAM(event); |
| UNUSED_PARAM(error); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return false; |
| #endif // ENABLE(VIDEO) |
| } |
| |
| static gboolean webkit_dom_html_video_element_add_event_listener(WebKitDOMEventTarget* target, const char* eventName, GClosure* handler, gboolean useCapture) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::HTMLVideoElement* coreTarget = static_cast<WebCore::HTMLVideoElement*>(WEBKIT_DOM_OBJECT(target)->coreObject); |
| return WebKit::GObjectEventListener::addEventListener(G_OBJECT(target), coreTarget, eventName, handler, useCapture); |
| #else |
| UNUSED_PARAM(target); |
| UNUSED_PARAM(eventName); |
| UNUSED_PARAM(handler); |
| UNUSED_PARAM(useCapture); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return false; |
| #endif // ENABLE(VIDEO) |
| } |
| |
| static gboolean webkit_dom_html_video_element_remove_event_listener(WebKitDOMEventTarget* target, const char* eventName, GClosure* handler, gboolean useCapture) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::HTMLVideoElement* coreTarget = static_cast<WebCore::HTMLVideoElement*>(WEBKIT_DOM_OBJECT(target)->coreObject); |
| return WebKit::GObjectEventListener::removeEventListener(G_OBJECT(target), coreTarget, eventName, handler, useCapture); |
| #else |
| UNUSED_PARAM(target); |
| UNUSED_PARAM(eventName); |
| UNUSED_PARAM(handler); |
| UNUSED_PARAM(useCapture); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return false; |
| #endif // ENABLE(VIDEO) |
| } |
| |
| static void webkit_dom_event_target_init(WebKitDOMEventTargetIface* iface) |
| { |
| iface->dispatch_event = webkit_dom_html_video_element_dispatch_event; |
| iface->add_event_listener = webkit_dom_html_video_element_add_event_listener; |
| iface->remove_event_listener = webkit_dom_html_video_element_remove_event_listener; |
| } |
| |
| G_DEFINE_TYPE_WITH_CODE(WebKitDOMHTMLVideoElement, webkit_dom_html_video_element, WEBKIT_DOM_TYPE_HTML_MEDIA_ELEMENT, G_IMPLEMENT_INTERFACE(WEBKIT_DOM_TYPE_EVENT_TARGET, webkit_dom_event_target_init)) |
| |
| enum { |
| PROP_0, |
| PROP_WIDTH, |
| PROP_HEIGHT, |
| PROP_VIDEO_WIDTH, |
| PROP_VIDEO_HEIGHT, |
| PROP_POSTER, |
| PROP_PLAYS_INLINE, |
| PROP_WEBKIT_SUPPORTS_FULLSCREEN, |
| PROP_WEBKIT_DISPLAYING_FULLSCREEN, |
| PROP_WEBKIT_WIRELESS_VIDEO_PLAYBACK_DISABLED, |
| PROP_WEBKIT_DECODED_FRAME_COUNT, |
| PROP_WEBKIT_DROPPED_FRAME_COUNT, |
| }; |
| |
| static void webkit_dom_html_video_element_set_property(GObject* object, guint propertyId, const GValue* value, GParamSpec* pspec) |
| { |
| WebKitDOMHTMLVideoElement* self = WEBKIT_DOM_HTML_VIDEO_ELEMENT(object); |
| |
| switch (propertyId) { |
| case PROP_WIDTH: |
| webkit_dom_html_video_element_set_width(self, g_value_get_ulong(value)); |
| break; |
| case PROP_HEIGHT: |
| webkit_dom_html_video_element_set_height(self, g_value_get_ulong(value)); |
| break; |
| case PROP_POSTER: |
| webkit_dom_html_video_element_set_poster(self, g_value_get_string(value)); |
| break; |
| case PROP_PLAYS_INLINE: |
| webkit_dom_html_video_element_set_plays_inline(self, g_value_get_boolean(value)); |
| break; |
| case PROP_WEBKIT_WIRELESS_VIDEO_PLAYBACK_DISABLED: |
| webkit_dom_html_video_element_set_webkit_wireless_video_playback_disabled(self, g_value_get_boolean(value)); |
| break; |
| default: |
| G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, pspec); |
| break; |
| } |
| } |
| |
| static void webkit_dom_html_video_element_get_property(GObject* object, guint propertyId, GValue* value, GParamSpec* pspec) |
| { |
| WebKitDOMHTMLVideoElement* self = WEBKIT_DOM_HTML_VIDEO_ELEMENT(object); |
| |
| switch (propertyId) { |
| case PROP_WIDTH: |
| g_value_set_ulong(value, webkit_dom_html_video_element_get_width(self)); |
| break; |
| case PROP_HEIGHT: |
| g_value_set_ulong(value, webkit_dom_html_video_element_get_height(self)); |
| break; |
| case PROP_VIDEO_WIDTH: |
| g_value_set_ulong(value, webkit_dom_html_video_element_get_video_width(self)); |
| break; |
| case PROP_VIDEO_HEIGHT: |
| g_value_set_ulong(value, webkit_dom_html_video_element_get_video_height(self)); |
| break; |
| case PROP_POSTER: |
| g_value_take_string(value, webkit_dom_html_video_element_get_poster(self)); |
| break; |
| case PROP_PLAYS_INLINE: |
| g_value_set_boolean(value, webkit_dom_html_video_element_get_plays_inline(self)); |
| break; |
| case PROP_WEBKIT_SUPPORTS_FULLSCREEN: |
| g_value_set_boolean(value, webkit_dom_html_video_element_get_webkit_supports_fullscreen(self)); |
| break; |
| case PROP_WEBKIT_DISPLAYING_FULLSCREEN: |
| g_value_set_boolean(value, webkit_dom_html_video_element_get_webkit_displaying_fullscreen(self)); |
| break; |
| case PROP_WEBKIT_WIRELESS_VIDEO_PLAYBACK_DISABLED: |
| g_value_set_boolean(value, webkit_dom_html_video_element_get_webkit_wireless_video_playback_disabled(self)); |
| break; |
| case PROP_WEBKIT_DECODED_FRAME_COUNT: |
| g_value_set_ulong(value, webkit_dom_html_video_element_get_webkit_decoded_frame_count(self)); |
| break; |
| case PROP_WEBKIT_DROPPED_FRAME_COUNT: |
| g_value_set_ulong(value, webkit_dom_html_video_element_get_webkit_dropped_frame_count(self)); |
| break; |
| default: |
| G_OBJECT_WARN_INVALID_PROPERTY_ID(object, propertyId, pspec); |
| break; |
| } |
| } |
| |
| static void webkit_dom_html_video_element_class_init(WebKitDOMHTMLVideoElementClass* requestClass) |
| { |
| GObjectClass* gobjectClass = G_OBJECT_CLASS(requestClass); |
| gobjectClass->set_property = webkit_dom_html_video_element_set_property; |
| gobjectClass->get_property = webkit_dom_html_video_element_get_property; |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_WIDTH, |
| g_param_spec_ulong( |
| "width", |
| "HTMLVideoElement:width", |
| "read-write gulong HTMLVideoElement:width", |
| 0, G_MAXULONG, 0, |
| WEBKIT_PARAM_READWRITE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_HEIGHT, |
| g_param_spec_ulong( |
| "height", |
| "HTMLVideoElement:height", |
| "read-write gulong HTMLVideoElement:height", |
| 0, G_MAXULONG, 0, |
| WEBKIT_PARAM_READWRITE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_VIDEO_WIDTH, |
| g_param_spec_ulong( |
| "video-width", |
| "HTMLVideoElement:video-width", |
| "read-only gulong HTMLVideoElement:video-width", |
| 0, G_MAXULONG, 0, |
| WEBKIT_PARAM_READABLE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_VIDEO_HEIGHT, |
| g_param_spec_ulong( |
| "video-height", |
| "HTMLVideoElement:video-height", |
| "read-only gulong HTMLVideoElement:video-height", |
| 0, G_MAXULONG, 0, |
| WEBKIT_PARAM_READABLE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_POSTER, |
| g_param_spec_string( |
| "poster", |
| "HTMLVideoElement:poster", |
| "read-write gchar* HTMLVideoElement:poster", |
| "", |
| WEBKIT_PARAM_READWRITE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_PLAYS_INLINE, |
| g_param_spec_boolean( |
| "plays-inline", |
| "HTMLVideoElement:plays-inline", |
| "read-write gboolean HTMLVideoElement:plays-inline", |
| FALSE, |
| WEBKIT_PARAM_READWRITE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_WEBKIT_SUPPORTS_FULLSCREEN, |
| g_param_spec_boolean( |
| "webkit-supports-fullscreen", |
| "HTMLVideoElement:webkit-supports-fullscreen", |
| "read-only gboolean HTMLVideoElement:webkit-supports-fullscreen", |
| FALSE, |
| WEBKIT_PARAM_READABLE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_WEBKIT_DISPLAYING_FULLSCREEN, |
| g_param_spec_boolean( |
| "webkit-displaying-fullscreen", |
| "HTMLVideoElement:webkit-displaying-fullscreen", |
| "read-only gboolean HTMLVideoElement:webkit-displaying-fullscreen", |
| FALSE, |
| WEBKIT_PARAM_READABLE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_WEBKIT_WIRELESS_VIDEO_PLAYBACK_DISABLED, |
| g_param_spec_boolean( |
| "webkit-wireless-video-playback-disabled", |
| "HTMLVideoElement:webkit-wireless-video-playback-disabled", |
| "read-write gboolean HTMLVideoElement:webkit-wireless-video-playback-disabled", |
| FALSE, |
| WEBKIT_PARAM_READWRITE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_WEBKIT_DECODED_FRAME_COUNT, |
| g_param_spec_ulong( |
| "webkit-decoded-frame-count", |
| "HTMLVideoElement:webkit-decoded-frame-count", |
| "read-only gulong HTMLVideoElement:webkit-decoded-frame-count", |
| 0, G_MAXULONG, 0, |
| WEBKIT_PARAM_READABLE)); |
| |
| g_object_class_install_property( |
| gobjectClass, |
| PROP_WEBKIT_DROPPED_FRAME_COUNT, |
| g_param_spec_ulong( |
| "webkit-dropped-frame-count", |
| "HTMLVideoElement:webkit-dropped-frame-count", |
| "read-only gulong HTMLVideoElement:webkit-dropped-frame-count", |
| 0, G_MAXULONG, 0, |
| WEBKIT_PARAM_READABLE)); |
| |
| } |
| |
| static void webkit_dom_html_video_element_init(WebKitDOMHTMLVideoElement* request) |
| { |
| UNUSED_PARAM(request); |
| } |
| |
| void webkit_dom_html_video_element_webkit_enter_fullscreen(WebKitDOMHTMLVideoElement* self, GError** error) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self)); |
| g_return_if_fail(!error || !*error); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| WebCore::ExceptionCode ec = 0; |
| item->webkitEnterFullscreen(ec); |
| if (ec) { |
| WebCore::ExceptionCodeDescription ecdesc(ec); |
| g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name); |
| } |
| #else |
| UNUSED_PARAM(self); |
| UNUSED_PARAM(error); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| void webkit_dom_html_video_element_webkit_exit_fullscreen(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self)); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| item->webkitExitFullscreen(); |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| void webkit_dom_html_video_element_webkit_enter_full_screen(WebKitDOMHTMLVideoElement* self, GError** error) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self)); |
| g_return_if_fail(!error || !*error); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| WebCore::ExceptionCode ec = 0; |
| item->webkitEnterFullScreen(ec); |
| if (ec) { |
| WebCore::ExceptionCodeDescription ecdesc(ec); |
| g_set_error_literal(error, g_quark_from_string("WEBKIT_DOM"), ecdesc.code, ecdesc.name); |
| } |
| #else |
| UNUSED_PARAM(self); |
| UNUSED_PARAM(error); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| void webkit_dom_html_video_element_webkit_exit_full_screen(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self)); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| item->webkitExitFullScreen(); |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gulong webkit_dom_html_video_element_get_width(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), 0); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gulong result = item->getUnsignedIntegralAttribute(WebCore::HTMLNames::widthAttr); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gulong>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| void webkit_dom_html_video_element_set_width(WebKitDOMHTMLVideoElement* self, gulong value) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self)); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| item->setUnsignedIntegralAttribute(WebCore::HTMLNames::widthAttr, value); |
| #else |
| UNUSED_PARAM(self); |
| UNUSED_PARAM(value); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gulong webkit_dom_html_video_element_get_height(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), 0); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gulong result = item->getUnsignedIntegralAttribute(WebCore::HTMLNames::heightAttr); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gulong>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| void webkit_dom_html_video_element_set_height(WebKitDOMHTMLVideoElement* self, gulong value) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self)); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| item->setUnsignedIntegralAttribute(WebCore::HTMLNames::heightAttr, value); |
| #else |
| UNUSED_PARAM(self); |
| UNUSED_PARAM(value); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gulong webkit_dom_html_video_element_get_video_width(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), 0); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gulong result = item->videoWidth(); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gulong>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gulong webkit_dom_html_video_element_get_video_height(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), 0); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gulong result = item->videoHeight(); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gulong>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gchar* webkit_dom_html_video_element_get_poster(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), 0); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gchar* result = convertToUTF8String(item->getURLAttribute(WebCore::HTMLNames::posterAttr)); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return 0; |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| void webkit_dom_html_video_element_set_poster(WebKitDOMHTMLVideoElement* self, const gchar* value) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self)); |
| g_return_if_fail(value); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| WTF::String convertedValue = WTF::String::fromUTF8(value); |
| item->setAttributeWithoutSynchronization(WebCore::HTMLNames::posterAttr, convertedValue); |
| #else |
| UNUSED_PARAM(self); |
| UNUSED_PARAM(value); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gboolean webkit_dom_html_video_element_get_plays_inline(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), FALSE); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gboolean result = item->hasAttributeWithoutSynchronization(WebCore::HTMLNames::playsinlineAttr); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gboolean>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| void webkit_dom_html_video_element_set_plays_inline(WebKitDOMHTMLVideoElement* self, gboolean value) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self)); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| item->setBooleanAttribute(WebCore::HTMLNames::playsinlineAttr, value); |
| #else |
| UNUSED_PARAM(self); |
| UNUSED_PARAM(value); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gboolean webkit_dom_html_video_element_get_webkit_supports_fullscreen(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), FALSE); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gboolean result = item->webkitSupportsFullscreen(); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gboolean>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gboolean webkit_dom_html_video_element_get_webkit_displaying_fullscreen(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), FALSE); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gboolean result = item->webkitDisplayingFullscreen(); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gboolean>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gboolean webkit_dom_html_video_element_get_webkit_wireless_video_playback_disabled(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| #if ENABLE(WIRELESS_PLAYBACK_TARGET) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), FALSE); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gboolean result = item->webkitWirelessVideoPlaybackDisabled(); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Wireless Playback Target") |
| return static_cast<gboolean>(0); |
| #endif /* ENABLE(WIRELESS_PLAYBACK_TARGET) */ |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gboolean>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| void webkit_dom_html_video_element_set_webkit_wireless_video_playback_disabled(WebKitDOMHTMLVideoElement* self, gboolean value) |
| { |
| #if ENABLE(VIDEO) |
| #if ENABLE(WIRELESS_PLAYBACK_TARGET) |
| WebCore::JSMainThreadNullState state; |
| g_return_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self)); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| item->setWebkitWirelessVideoPlaybackDisabled(value); |
| #else |
| UNUSED_PARAM(self); |
| UNUSED_PARAM(value); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Wireless Playback Target") |
| #endif /* ENABLE(WIRELESS_PLAYBACK_TARGET) */ |
| #else |
| UNUSED_PARAM(self); |
| UNUSED_PARAM(value); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gulong webkit_dom_html_video_element_get_webkit_decoded_frame_count(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| #if ENABLE(MEDIA_STATISTICS) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), 0); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gulong result = item->webkitDecodedFrameCount(); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Media Statistics") |
| return static_cast<gulong>(0); |
| #endif /* ENABLE(MEDIA_STATISTICS) */ |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gulong>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |
| gulong webkit_dom_html_video_element_get_webkit_dropped_frame_count(WebKitDOMHTMLVideoElement* self) |
| { |
| #if ENABLE(VIDEO) |
| #if ENABLE(MEDIA_STATISTICS) |
| WebCore::JSMainThreadNullState state; |
| g_return_val_if_fail(WEBKIT_DOM_IS_HTML_VIDEO_ELEMENT(self), 0); |
| WebCore::HTMLVideoElement* item = WebKit::core(self); |
| gulong result = item->webkitDroppedFrameCount(); |
| return result; |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Media Statistics") |
| return static_cast<gulong>(0); |
| #endif /* ENABLE(MEDIA_STATISTICS) */ |
| #else |
| UNUSED_PARAM(self); |
| WEBKIT_WARN_FEATURE_NOT_PRESENT("Video") |
| return static_cast<gulong>(0); |
| #endif /* ENABLE(VIDEO) */ |
| } |
| |