#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include endpoint CompositorWebContentServer { init_transport(int peer_pid) => (int compositor_pid) set_parent_context(Web::Compositor::CompositorContextId context_id, Optional parent_context_id) =| stop_presenting_to_client(Web::Compositor::CompositorContextId context_id) =| destroy_context(Web::Compositor::CompositorContextId context_id) =| update_display_list(Web::Compositor::CompositorContextId context_id, NonnullRefPtr display_list, Web::Painting::AccumulatedVisualContextTree visual_context_tree, Web::Painting::DisplayListResourceTransaction resource_transaction, Web::Painting::ScrollStateSnapshot scroll_state_snapshot) =| update_image_frame_resources(Web::Compositor::CompositorContextId context_id, Vector image_frames) =| update_visual_context_tree(Web::Compositor::CompositorContextId context_id, Web::Painting::AccumulatedVisualContextTree visual_context_tree) =| update_scroll_state(Web::Compositor::CompositorContextId context_id, Web::Painting::ScrollStateSnapshot scroll_state_snapshot) =| update_video_frame(Web::Compositor::CompositorContextId context_id, Web::Painting::VideoFrameResourceId frame_id, NonnullRefPtr frame) =| clear_video_frame(Web::Compositor::CompositorContextId context_id, Web::Painting::VideoFrameResourceId frame_id) =| create_canvas_2d_context(Gfx::IntSize size, bool alpha) => (bool success, Web::Painting::CanvasId canvas_id) update_canvas_2d_stream(Vector segments) =| destroy_canvas_context(Web::Painting::CanvasId canvas_id) =| get_canvas_pixels(Web::Painting::CanvasId canvas_id, Gfx::IntRect rect) => (Gfx::ShareableBitmap pixels) create_webgl_context(Web::WebGL::WebGLVersion webgl_version, Gfx::IntSize size, bool depth, bool stencil, bool antialias) => (bool success, Web::Painting::CanvasId canvas_id, Vector supported_extensions) webgl_commands(Web::Painting::CanvasId canvas_id, Core::AnonymousBuffer commands, Vector bitmaps) =| webgl_present_canvas(Web::Painting::CanvasId canvas_id, bool preserve_drawing_buffer) =| webgl_sync_call(Web::Painting::CanvasId canvas_id, ByteBuffer request) => (ByteBuffer reply) webgl_read_pixels(Web::Painting::CanvasId canvas_id, i32 x, i32 y, i32 width, i32 height, u32 format, u32 type, i32 buf_size, Core::AnonymousBuffer pixels) => (i32 length, i32 columns, i32 rows) webgl_read_buffer_sub_data(Web::Painting::CanvasId canvas_id, u32 target, i64 offset, i64 size, Core::AnonymousBuffer data) => (bool success) invalidate_wheel_event_listener_state(Web::Compositor::CompositorContextId context_id, u64 generation) =| async_scroll_by(Web::Compositor::CompositorContextId context_id, Web::UniqueNodeID document_id, Gfx::FloatPoint position, Gfx::FloatPoint delta, Gfx::IntRect viewport_rect, Web::Compositor::AsyncScrollOperationTracking operation_tracking) => (Web::Compositor::AsyncScrollEnqueueResult result) should_defer_main_thread_present_for_async_scroll(Web::Compositor::CompositorContextId context_id) => (bool should_defer) take_pending_async_scroll_updates(Web::Compositor::CompositorContextId context_id) => (Web::Compositor::PendingAsyncScrollUpdates updates) viewport_size_updated(Web::Compositor::CompositorContextId context_id, Gfx::IntSize viewport_size, Web::Compositor::WindowResizingInProgress window_resize_in_progress) =| present_frame(Web::Compositor::CompositorContextId context_id, Gfx::IntRect viewport_rect) =| request_screenshot(Web::Compositor::CompositorContextId context_id, Web::Compositor::ScreenshotRequestId request_id, Gfx::ShareableBitmap target_bitmap) =| }