ladybird/Libraries/LibWeb
Luke Wilde 8dc8835b64 LibWeb+LibWebView+WebContent: Allow muted media to autoplay by default
The autoplay setting was binary and its default blocked all media,
including muted video, leaving sites that rely on muted autoplay
visibly broken. Replace it with a tri-state user-agent autoplay
policy (allow audio and video, block audio, or block audio and video)
defaulting to allowing only inaudible media to autoplay.

This is enforced through the media element's "allowed to play" check,
so unmuting a muted autoplay or calling `play()` cannot slip audio
past the policy; audible playback is permitted once the document has
been activated by the user. The policy lives in a dedicated
AutoplaySettings consulted from HTMLMediaElement instead of the
Permissions Policy "allowed to use feature" check it was previously
conflated with.
2026-06-19 09:41:32 +02:00
..
Animations LibWeb: Skip repaint for visual context-only style changes 2026-06-18 00:12:42 +02:00
ARIA Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Bindings Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Clipboard LibWeb: Unify WebIDL C++ type generation 2026-05-23 18:26:12 +02:00
Compositor LibWeb+Compositor+WebContent: Simplify nested context composition 2026-06-18 07:08:34 +02:00
Compression LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
ContentBlocker/Rust LibWeb: Route content blocker Rust allocations through mimalloc 2026-06-03 06:48:08 -04:00
ContentSecurityPolicy Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
CookieStore LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
CredentialManagement LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
Crypto LibJS: Isolate ArrayBuffer backing stores 2026-06-10 14:50:10 +02:00
CSS LibWeb: Reject child selectors with a parent hash filter 2026-06-19 09:36:53 +02:00
DOM LibWeb+LibWebView+WebContent: Allow muted media to autoplay by default 2026-06-19 09:41:32 +02:00
DOMURL LibWeb: Unify WebIDL C++ type generation 2026-05-23 18:26:12 +02:00
Editing LibWeb/Editing: Include all effectively contained nodes in traversal 2026-06-16 12:35:49 +02:00
Encoding LibWeb/Bindings: Generate buffer typedefs as variants 2026-05-30 11:22:08 +02:00
EncryptedMediaExtensions LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
EntriesAPI LibWeb/Bindings: Emit one bindings header and cpp per IDL 2026-04-21 07:36:13 +02:00
EventTiming LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
Fetch LibWeb/Fetch: Implement CORS-preflight cache 2026-06-06 13:48:43 +02:00
FileAPI Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Fullscreen LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
Gamepad Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Geolocation LibWeb: Support Geolocation permission 2026-05-11 21:01:01 +02:00
Geometry LibWeb: Remove various case of unneeded use of GC::Root 2026-05-29 17:21:17 +02:00
GPC
HighResolutionTime LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
HTML LibWeb+LibWebView+WebContent: Allow muted media to autoplay by default 2026-06-19 09:41:32 +02:00
IndexedDB Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Infra
Internals LibWeb+LibWebView+WebContent: Allow muted media to autoplay by default 2026-06-19 09:41:32 +02:00
IntersectionObserver LibWeb: Keep pinch zoom out of client rects 2026-06-16 02:03:59 +02:00
Layout LibWeb: Support anchor() in calc() trees 2026-06-18 17:36:56 +01:00
Loader Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
MathML Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
MediaCapabilitiesAPI LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
MediaCapture Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
MediaSourceExtensions LibJS: Isolate ArrayBuffer backing stores 2026-06-10 14:50:10 +02:00
MimeSniff
MixedContent LibWeb: Reduce recompilation impact of DOM/Document.h 2026-02-11 20:02:28 +01:00
NavigationTiming Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
NotificationsAPI LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
Page LibWeb: Preserve parsed user style sheets 2026-06-18 13:27:39 +02:00
Painting LibGfx+LibWeb: Preserve text color for selections 2026-06-18 22:43:26 +02:00
PerformanceTimeline Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
PermissionsAPI Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Platform LibWeb: Keep active platform timers alive during GC 2026-05-10 10:58:11 +02:00
ReferrerPolicy
RequestIdleCallback LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
ResizeObserver LibGC: Default-construct RootVector from the global heap 2026-05-20 20:37:55 +02:00
ResourceTiming LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
Rust Rust: Set import granularity to Item 2026-05-28 06:52:18 +02:00
SecureContexts LibURL+LibWeb+LibWebView: Move internal URLs to their own header 2026-06-10 20:27:36 +02:00
Selection LibWeb: Avoid cross-root Selection extend comparisons 2026-06-08 01:04:08 +02:00
Serial LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
ServiceWorker Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Speech LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
SRI
StorageAPI LibWeb: Implement legacy-clone of session storage shed on window.open 2026-05-18 16:38:15 +02:00
Streams LibJS: Isolate ArrayBuffer backing stores 2026-06-10 14:50:10 +02:00
SVG LibWeb: Fix crash from SVG resource boxes outliving removed element 2026-06-18 13:35:32 +02:00
TrustedTypes Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
UIEvents LibWeb: Use Event storage for MouseEvent relatedTarget 2026-06-18 12:40:37 +02:00
URLPattern LibURL: Implement URLPattern in Rust 2026-05-28 09:27:41 +02:00
UserTiming LibWeb/Bindings: Generate struct definitions from IDL dictionaries 2026-05-09 10:49:49 +02:00
ViewTransition LibWeb: Skip non-rendered elements before querying view transition name 2026-05-28 10:39:26 +02:00
WebAssembly LibWeb/WebAssembly: Add missing WebIDL/Types.h include 2026-06-06 19:16:52 +02:00
WebAudio LibWeb: Remove various case of unneeded use of GC::Root 2026-05-29 17:21:17 +02:00
WebDriver LibWeb: Reject canvas toDataURL()/toBlob() when not origin-clean 2026-06-18 10:52:42 +02:00
WebGL LibWeb+Compositor: Move OpenGLContext in Compositor namespace 2026-06-17 19:07:32 +02:00
WebIDL Libraries: Remove LibIDL 2026-06-08 01:11:40 +02:00
WebSockets LibWeb/Bindings: Generate buffer typedefs as variants 2026-05-30 11:22:08 +02:00
WebVTT LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
WebXR LibWeb: Unify WebIDL C++ type generation 2026-05-23 18:26:12 +02:00
Worker LibWeb+LibWebView+WebWorker: Initialize transport peer pid on Windows 2026-06-18 04:06:30 +02:00
XHR LibWeb: Use FormDataEntryValue for FormData.get() 2026-06-06 16:59:12 +02:00
XLink
XML LibGC: Default-construct RootVector from the global heap 2026-05-20 20:37:55 +02:00
XPath LibWeb+LibIDL: Remove support for #import directives during parsing 2026-04-24 20:08:29 +02:00
CMakeLists.txt LibWeb+LibWebView+WebContent: Allow muted media to autoplay by default 2026-06-19 09:41:32 +02:00
Dump.cpp LibWebView: Keep browser history in the UI process 2026-06-14 17:38:44 +02:00
Dump.h LibWeb: Rename show_cascaded_properties flag in dump_tree() 2026-05-05 16:02:23 +02:00
Forward.h LibWeb+LibWebView+WebContent: Allow muted media to autoplay by default 2026-06-19 09:41:32 +02:00
GraphemeEdgeTracker.cpp LibWeb: Use the ASCII line segmenter for eligible text 2026-05-05 18:59:07 +02:00
GraphemeEdgeTracker.h LibWeb: Expose GraphemeEdgeTracker's find_line_start/find_line_end 2026-02-06 14:18:10 +00:00
idl_files.cmake LibWeb: Expose document caretPositionFromPoint 2026-05-30 13:50:48 +02:00
InvalidateDisplayList.h
Namespace.cpp Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
Namespace.h Meta: Enable exit-time destructor warnings for libraries 2026-06-04 19:20:49 +02:00
PixelUnits.cpp LibWeb: Add session history serialization support 2026-06-14 17:38:44 +02:00
PixelUnits.h LibWeb/CSS: Retain length precision in PercentageOr<T> 2026-06-18 09:59:41 +02:00
RefCountedTreeNode.h LibWeb: Make layout nodes refcounted 2026-06-07 20:52:49 +02:00
TraversalDecision.h
TraversalOrder.h
TreeNode.h LibWeb: Make Paintable tree ref-counted 2026-05-07 15:03:44 +02:00