/* * Copyright (c) 2023, Tim Flynn * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include #include namespace Web::Layout { class VideoBox final : public ReplacedBox { GC_CELL(VideoBox, ReplacedBox); GC_DECLARE_ALLOCATOR(VideoBox); public: HTML::HTMLVideoElement& dom_node(); HTML::HTMLVideoElement const& dom_node() const; virtual bool can_have_children() const override; virtual GC::Ptr create_paintable() const override; private: VideoBox(DOM::Document&, DOM::Element&, GC::Ref); virtual CSS::SizeWithAspectRatio natural_size() const override; }; }