From 517d9bb9d46d1f4090db2006474c4904ec952668 Mon Sep 17 00:00:00 2001
From: Apertis CI <devel@lists.apertis.org>
Date: Tue, 3 Dec 2024 08:19:18 +0000
Subject: [PATCH 1/3] Import Upstream version 2.46.4

---
 .../callback.ClassDeletePropertyFunction.html |   2 +-
 ...back.ClassEnumeratePropertiesFunction.html |   2 +-
 .../callback.ClassGetPropertyFunction.html    |   2 +-
 .../callback.ClassHasPropertyFunction.html    |   2 +-
 .../callback.ClassSetPropertyFunction.html    |   2 +-
 .../callback.ExceptionHandler.html            |   2 +-
 .../jsc-glib-6.0/callback.OptionsFunc.html    |   2 +-
 Documentation/jsc-glib-6.0/class.Class.html   |   2 +-
 Documentation/jsc-glib-6.0/class.Context.html |   2 +-
 .../jsc-glib-6.0/class.Exception.html         |   2 +-
 Documentation/jsc-glib-6.0/class.Value.html   |   2 +-
 .../jsc-glib-6.0/class.VirtualMachine.html    |   2 +-
 .../jsc-glib-6.0/class.WeakValue.html         |   2 +-
 .../jsc-glib-6.0/classes_hierarchy.html       |   2 +-
 .../jsc-glib-6.0/const.MAJOR_VERSION.html     |   2 +-
 .../jsc-glib-6.0/const.MICRO_VERSION.html     |   4 +-
 .../jsc-glib-6.0/const.MINOR_VERSION.html     |   2 +-
 .../jsc-glib-6.0/const.OPTIONS_USE_DFG.html   |   2 +-
 .../jsc-glib-6.0/const.OPTIONS_USE_FTL.html   |   2 +-
 .../jsc-glib-6.0/const.OPTIONS_USE_JIT.html   |   2 +-
 .../jsc-glib-6.0/const.OPTIONS_USE_LLINT.html |   2 +-
 .../jsc-glib-6.0/ctor.Context.new.html        |   2 +-
 ...ctor.Context.new_with_virtual_machine.html |   2 +-
 .../jsc-glib-6.0/ctor.Exception.new.html      |   2 +-
 .../ctor.Exception.new_printf.html            |   2 +-
 .../ctor.Exception.new_vprintf.html           |   2 +-
 .../ctor.Exception.new_with_name.html         |   2 +-
 .../ctor.Exception.new_with_name_printf.html  |   2 +-
 .../ctor.Exception.new_with_name_vprintf.html |   2 +-
 .../jsc-glib-6.0/ctor.Value.new_array.html    |   2 +-
 .../ctor.Value.new_array_buffer.html          |   2 +-
 .../ctor.Value.new_array_from_garray.html     |   2 +-
 .../ctor.Value.new_array_from_strv.html       |   2 +-
 .../jsc-glib-6.0/ctor.Value.new_boolean.html  |   2 +-
 .../ctor.Value.new_from_json.html             |   2 +-
 .../jsc-glib-6.0/ctor.Value.new_function.html |   2 +-
 .../ctor.Value.new_function_variadic.html     |   2 +-
 .../ctor.Value.new_functionv.html             |   2 +-
 .../jsc-glib-6.0/ctor.Value.new_null.html     |   2 +-
 .../jsc-glib-6.0/ctor.Value.new_number.html   |   2 +-
 .../jsc-glib-6.0/ctor.Value.new_object.html   |   2 +-
 .../jsc-glib-6.0/ctor.Value.new_string.html   |   2 +-
 .../ctor.Value.new_string_from_bytes.html     |   2 +-
 .../ctor.Value.new_typed_array.html           |   2 +-
 .../ctor.Value.new_undefined.html             |   2 +-
 .../jsc-glib-6.0/ctor.VirtualMachine.new.html |   2 +-
 .../jsc-glib-6.0/ctor.WeakValue.new.html      |   2 +-
 .../jsc-glib-6.0/enum.CheckSyntaxMode.html    |   2 +-
 .../jsc-glib-6.0/enum.CheckSyntaxResult.html  |   2 +-
 .../jsc-glib-6.0/enum.OptionType.html         |   2 +-
 .../jsc-glib-6.0/enum.TypedArrayType.html     |   2 +-
 .../flags.ValuePropertyFlags.html             |   2 +-
 .../jsc-glib-6.0/func.CHECK_VERSION.html      |   2 +-
 .../jsc-glib-6.0/func.DECLARE_FINAL_TYPE.html |   2 +-
 .../jsc-glib-6.0/func.get_major_version.html  |   2 +-
 .../jsc-glib-6.0/func.get_micro_version.html  |   2 +-
 .../jsc-glib-6.0/func.get_minor_version.html  |   2 +-
 .../jsc-glib-6.0/func.options_foreach.html    |   2 +-
 .../func.options_get_boolean.html             |   2 +-
 .../jsc-glib-6.0/func.options_get_double.html |   2 +-
 .../jsc-glib-6.0/func.options_get_int.html    |   2 +-
 .../func.options_get_option_group.html        |   2 +-
 .../func.options_get_range_string.html        |   2 +-
 .../jsc-glib-6.0/func.options_get_size.html   |   2 +-
 .../jsc-glib-6.0/func.options_get_string.html |   2 +-
 .../jsc-glib-6.0/func.options_get_uint.html   |   2 +-
 .../func.options_set_boolean.html             |   2 +-
 .../jsc-glib-6.0/func.options_set_double.html |   2 +-
 .../jsc-glib-6.0/func.options_set_int.html    |   2 +-
 .../func.options_set_range_string.html        |   2 +-
 .../jsc-glib-6.0/func.options_set_size.html   |   2 +-
 .../jsc-glib-6.0/func.options_set_string.html |   2 +-
 .../jsc-glib-6.0/func.options_set_uint.html   |   2 +-
 Documentation/jsc-glib-6.0/index.html         |   4 +-
 .../method.Class.add_constructor.html         |   2 +-
 ...method.Class.add_constructor_variadic.html |   2 +-
 .../method.Class.add_constructorv.html        |   2 +-
 .../jsc-glib-6.0/method.Class.add_method.html |   2 +-
 .../method.Class.add_method_variadic.html     |   2 +-
 .../method.Class.add_methodv.html             |   2 +-
 .../method.Class.add_property.html            |   2 +-
 .../jsc-glib-6.0/method.Class.get_name.html   |   2 +-
 .../jsc-glib-6.0/method.Class.get_parent.html |   2 +-
 .../method.Context.check_syntax.html          |   2 +-
 .../method.Context.clear_exception.html       |   2 +-
 .../jsc-glib-6.0/method.Context.evaluate.html |   2 +-
 .../method.Context.evaluate_in_object.html    |   2 +-
 ...thod.Context.evaluate_with_source_uri.html |   2 +-
 .../method.Context.get_exception.html         |   2 +-
 .../method.Context.get_global_object.html     |   2 +-
 .../method.Context.get_value.html             |   2 +-
 .../method.Context.get_virtual_machine.html   |   2 +-
 .../method.Context.pop_exception_handler.html |   2 +-
 ...method.Context.push_exception_handler.html |   2 +-
 .../method.Context.register_class.html        |   2 +-
 .../method.Context.set_value.html             |   2 +-
 .../jsc-glib-6.0/method.Context.throw.html    |   2 +-
 .../method.Context.throw_exception.html       |   2 +-
 .../method.Context.throw_printf.html          |   2 +-
 .../method.Context.throw_with_name.html       |   2 +-
 ...method.Context.throw_with_name_printf.html |   2 +-
 ...method.Exception.get_backtrace_string.html |   2 +-
 .../method.Exception.get_column_number.html   |   2 +-
 .../method.Exception.get_line_number.html     |   2 +-
 .../method.Exception.get_message.html         |   2 +-
 .../method.Exception.get_name.html            |   2 +-
 .../method.Exception.get_source_uri.html      |   2 +-
 .../jsc-glib-6.0/method.Exception.report.html |   2 +-
 .../method.Exception.to_string.html           |   2 +-
 .../method.Value.array_buffer_get_data.html   |   2 +-
 .../method.Value.array_buffer_get_size.html   |   2 +-
 .../method.Value.constructor_call.html        |   2 +-
 .../method.Value.constructor_callv.html       |   2 +-
 .../method.Value.function_call.html           |   2 +-
 .../method.Value.function_callv.html          |   2 +-
 .../method.Value.get_context.html             |   2 +-
 .../jsc-glib-6.0/method.Value.is_array.html   |   2 +-
 .../method.Value.is_array_buffer.html         |   2 +-
 .../jsc-glib-6.0/method.Value.is_boolean.html |   2 +-
 .../method.Value.is_constructor.html          |   2 +-
 .../method.Value.is_function.html             |   2 +-
 .../jsc-glib-6.0/method.Value.is_null.html    |   2 +-
 .../jsc-glib-6.0/method.Value.is_number.html  |   2 +-
 .../jsc-glib-6.0/method.Value.is_object.html  |   2 +-
 .../jsc-glib-6.0/method.Value.is_string.html  |   2 +-
 .../method.Value.is_typed_array.html          |   2 +-
 .../method.Value.is_undefined.html            |   2 +-
 ...hod.Value.new_typed_array_with_buffer.html |   2 +-
 ...Value.object_define_property_accessor.html |   2 +-
 ...hod.Value.object_define_property_data.html |   2 +-
 .../method.Value.object_delete_property.html  |   2 +-
 ...hod.Value.object_enumerate_properties.html |   2 +-
 .../method.Value.object_get_property.html     |   2 +-
 ...od.Value.object_get_property_at_index.html |   2 +-
 .../method.Value.object_has_property.html     |   2 +-
 .../method.Value.object_invoke_method.html    |   2 +-
 .../method.Value.object_invoke_methodv.html   |   2 +-
 .../method.Value.object_is_instance_of.html   |   2 +-
 .../method.Value.object_set_property.html     |   2 +-
 ...od.Value.object_set_property_at_index.html |   2 +-
 .../jsc-glib-6.0/method.Value.to_boolean.html |   2 +-
 .../jsc-glib-6.0/method.Value.to_double.html  |   2 +-
 .../jsc-glib-6.0/method.Value.to_int32.html   |   2 +-
 .../jsc-glib-6.0/method.Value.to_json.html    |   2 +-
 .../jsc-glib-6.0/method.Value.to_string.html  |   2 +-
 .../method.Value.to_string_as_bytes.html      |   2 +-
 .../method.Value.typed_array_get_buffer.html  |   2 +-
 .../method.Value.typed_array_get_data.html    |   2 +-
 .../method.Value.typed_array_get_length.html  |   2 +-
 .../method.Value.typed_array_get_offset.html  |   2 +-
 .../method.Value.typed_array_get_size.html    |   2 +-
 .../method.Value.typed_array_get_type.html    |   2 +-
 .../method.WeakValue.get_value.html           |   2 +-
 .../jsc-glib-6.0/property.Class.context.html  |   2 +-
 .../jsc-glib-6.0/property.Class.name.html     |   2 +-
 .../jsc-glib-6.0/property.Class.parent.html   |   2 +-
 .../property.Context.virtual-machine.html     |   2 +-
 .../jsc-glib-6.0/property.Value.context.html  |   2 +-
 .../property.WeakValue.value.html             |   2 +-
 .../signal.WeakValue.cleared.html             |   2 +-
 .../jsc-glib-6.0/struct.ClassVTable.html      |   2 +-
 .../type_func.Context.get_current.html        |   2 +-
 .../callback.URISchemeRequestCallback.html    |   2 +-
 .../class.AuthenticationRequest.html          |   2 +-
 .../class.AutomationSession.html              |   2 +-
 .../webkitgtk-6.0/class.BackForwardList.html  |   2 +-
 .../class.BackForwardListItem.html            |   2 +-
 .../class.ClipboardPermissionRequest.html     |   2 +-
 .../class.ColorChooserRequest.html            |   2 +-
 .../webkitgtk-6.0/class.ContextMenu.html      |   2 +-
 .../webkitgtk-6.0/class.ContextMenuItem.html  |   2 +-
 .../webkitgtk-6.0/class.CookieManager.html    |   2 +-
 .../class.DeviceInfoPermissionRequest.html    |   2 +-
 .../webkitgtk-6.0/class.Download.html         |   2 +-
 .../webkitgtk-6.0/class.EditorState.html      |   2 +-
 .../webkitgtk-6.0/class.FaviconDatabase.html  |   2 +-
 .../class.FileChooserRequest.html             |   2 +-
 .../webkitgtk-6.0/class.FindController.html   |   2 +-
 .../class.FormSubmissionRequest.html          |   2 +-
 .../class.GeolocationManager.html             |   2 +-
 .../class.GeolocationPermissionRequest.html   |   2 +-
 .../webkitgtk-6.0/class.HitTestResult.html    |   2 +-
 .../class.InputMethodContext.html             |   2 +-
 ...class.MediaKeySystemPermissionRequest.html |   2 +-
 .../class.NavigationPolicyDecision.html       |   2 +-
 .../webkitgtk-6.0/class.NetworkSession.html   |   2 +-
 .../webkitgtk-6.0/class.Notification.html     |   2 +-
 .../class.NotificationPermissionRequest.html  |   2 +-
 .../webkitgtk-6.0/class.OptionMenu.html       |   2 +-
 .../class.PointerLockPermissionRequest.html   |   2 +-
 .../webkitgtk-6.0/class.PolicyDecision.html   |   2 +-
 .../webkitgtk-6.0/class.PrintOperation.html   |   2 +-
 .../class.ResponsePolicyDecision.html         |   2 +-
 .../webkitgtk-6.0/class.SecurityManager.html  |   2 +-
 .../webkitgtk-6.0/class.Settings.html         |   2 +-
 .../webkitgtk-6.0/class.URIRequest.html       |   2 +-
 .../webkitgtk-6.0/class.URIResponse.html      |   2 +-
 .../webkitgtk-6.0/class.URISchemeRequest.html |   2 +-
 .../class.URISchemeResponse.html              |   2 +-
 .../class.UserContentFilterStore.html         |   2 +-
 .../class.UserContentManager.html             |   2 +-
 .../class.UserMediaPermissionRequest.html     |   2 +-
 .../webkitgtk-6.0/class.UserMessage.html      |   2 +-
 .../webkitgtk-6.0/class.WebContext.html       |   2 +-
 .../webkitgtk-6.0/class.WebInspector.html     |   2 +-
 .../webkitgtk-6.0/class.WebResource.html      |   2 +-
 .../webkitgtk-6.0/class.WebView.html          |   2 +-
 .../webkitgtk-6.0/class.WebViewBase.html      |   2 +-
 ...ss.WebsiteDataAccessPermissionRequest.html |   2 +-
 .../class.WebsiteDataManager.html             |   2 +-
 .../webkitgtk-6.0/class.WebsitePolicies.html  |   2 +-
 .../webkitgtk-6.0/class.WindowProperties.html |   2 +-
 .../webkitgtk-6.0/classes_hierarchy.html      |   2 +-
 .../const.EDITING_COMMAND_COPY.html           |   2 +-
 .../const.EDITING_COMMAND_CREATE_LINK.html    |   2 +-
 .../const.EDITING_COMMAND_CUT.html            |   2 +-
 .../const.EDITING_COMMAND_INSERT_IMAGE.html   |   2 +-
 .../const.EDITING_COMMAND_PASTE.html          |   2 +-
 ...t.EDITING_COMMAND_PASTE_AS_PLAIN_TEXT.html |   2 +-
 .../const.EDITING_COMMAND_REDO.html           |   2 +-
 .../const.EDITING_COMMAND_SELECT_ALL.html     |   2 +-
 .../const.EDITING_COMMAND_UNDO.html           |   2 +-
 .../webkitgtk-6.0/const.MAJOR_VERSION.html    |   2 +-
 .../webkitgtk-6.0/const.MICRO_VERSION.html    |   4 +-
 .../webkitgtk-6.0/const.MINOR_VERSION.html    |   2 +-
 .../ctor.ApplicationInfo.new.html             |   2 +-
 .../webkitgtk-6.0/ctor.ContextMenu.new.html   |   2 +-
 .../ctor.ContextMenu.new_with_items.html      |   2 +-
 ...ctor.ContextMenuItem.new_from_gaction.html |   2 +-
 ...ContextMenuItem.new_from_stock_action.html |   2 +-
 ...Item.new_from_stock_action_with_label.html |   2 +-
 .../ctor.ContextMenuItem.new_separator.html   |   2 +-
 ...ctor.ContextMenuItem.new_with_submenu.html |   2 +-
 .../webkitgtk-6.0/ctor.Credential.new.html    |   2 +-
 .../ctor.Credential.new_for_certificate.html  |   2 +-
 ...or.Credential.new_for_certificate_pin.html |   2 +-
 .../ctor.GeolocationPosition.new.html         |   2 +-
 .../ctor.InputMethodUnderline.new.html        |   2 +-
 .../ctor.MemoryPressureSettings.new.html      |   2 +-
 .../ctor.NetworkProxySettings.new.html        |   2 +-
 .../ctor.NetworkSession.new.html              |   2 +-
 .../ctor.NetworkSession.new_ephemeral.html    |   2 +-
 .../ctor.PrintOperation.new.html              |   2 +-
 .../ctor.SecurityOrigin.new.html              |   2 +-
 .../ctor.SecurityOrigin.new_for_uri.html      |   2 +-
 .../webkitgtk-6.0/ctor.Settings.new.html      |   2 +-
 .../ctor.Settings.new_with_settings.html      |   2 +-
 .../webkitgtk-6.0/ctor.URIRequest.new.html    |   2 +-
 .../ctor.URISchemeResponse.new.html           |   2 +-
 .../ctor.UserContentFilterStore.new.html      |   2 +-
 .../ctor.UserContentManager.new.html          |   2 +-
 .../webkitgtk-6.0/ctor.UserMessage.new.html   |   2 +-
 .../ctor.UserMessage.new_with_fd_list.html    |   2 +-
 .../webkitgtk-6.0/ctor.UserScript.new.html    |   2 +-
 .../ctor.UserScript.new_for_world.html        |   2 +-
 .../ctor.UserStyleSheet.new.html              |   2 +-
 .../ctor.UserStyleSheet.new_for_world.html    |   2 +-
 .../webkitgtk-6.0/ctor.WebContext.new.html    |   2 +-
 .../webkitgtk-6.0/ctor.WebView.new.html       |   2 +-
 .../ctor.WebViewSessionState.new.html         |   2 +-
 .../ctor.WebsitePolicies.new.html             |   2 +-
 ...tor.WebsitePolicies.new_with_policies.html |   2 +-
 .../enum.AuthenticationScheme.html            |   2 +-
 ...AutomationBrowsingContextPresentation.html |   2 +-
 .../webkitgtk-6.0/enum.AutoplayPolicy.html    |   2 +-
 .../webkitgtk-6.0/enum.CacheModel.html        |   2 +-
 .../webkitgtk-6.0/enum.ContextMenuAction.html |   2 +-
 .../enum.CookieAcceptPolicy.html              |   2 +-
 .../enum.CookiePersistentStorage.html         |   2 +-
 .../enum.CredentialPersistence.html           |   2 +-
 .../webkitgtk-6.0/enum.FeatureStatus.html     |   2 +-
 .../enum.HardwareAccelerationPolicy.html      |   2 +-
 .../webkitgtk-6.0/enum.InputPurpose.html      |   2 +-
 .../enum.InsecureContentEvent.html            |   2 +-
 .../webkitgtk-6.0/enum.LoadEvent.html         |   2 +-
 .../webkitgtk-6.0/enum.MediaCaptureState.html |   2 +-
 .../webkitgtk-6.0/enum.NavigationType.html    |   2 +-
 .../webkitgtk-6.0/enum.NetworkProxyMode.html  |   2 +-
 .../webkitgtk-6.0/enum.PermissionState.html   |   2 +-
 .../enum.PolicyDecisionType.html              |   2 +-
 .../enum.PrintOperationResponse.html          |   2 +-
 .../webkitgtk-6.0/enum.SaveMode.html          |   2 +-
 .../webkitgtk-6.0/enum.ScriptDialogType.html  |   2 +-
 .../webkitgtk-6.0/enum.SnapshotRegion.html    |   2 +-
 .../webkitgtk-6.0/enum.TLSErrorsPolicy.html   |   2 +-
 .../enum.UserContentInjectedFrames.html       |   2 +-
 .../enum.UserScriptInjectionTime.html         |   2 +-
 .../webkitgtk-6.0/enum.UserStyleLevel.html    |   2 +-
 .../webkitgtk-6.0/enum.WebExtensionMode.html  |   2 +-
 .../enum.WebProcessTerminationReason.html     |   2 +-
 .../webkitgtk-6.0/error.DownloadError.html    |   2 +-
 .../error.FaviconDatabaseError.html           |   2 +-
 .../webkitgtk-6.0/error.JavascriptError.html  |   2 +-
 .../webkitgtk-6.0/error.MediaError.html       |   2 +-
 .../webkitgtk-6.0/error.NetworkError.html     |   2 +-
 .../webkitgtk-6.0/error.PolicyError.html      |   2 +-
 .../webkitgtk-6.0/error.PrintError.html       |   2 +-
 .../webkitgtk-6.0/error.SnapshotError.html    |   2 +-
 .../error.UserContentFilterError.html         |   2 +-
 .../webkitgtk-6.0/error.UserMessageError.html |   2 +-
 .../flags.EditorTypingAttributes.html         |   2 +-
 .../webkitgtk-6.0/flags.FindOptions.html      |   2 +-
 .../flags.HitTestResultContext.html           |   2 +-
 .../webkitgtk-6.0/flags.InputHints.html       |   2 +-
 .../webkitgtk-6.0/flags.SnapshotOptions.html  |   2 +-
 .../webkitgtk-6.0/flags.WebsiteDataTypes.html |   2 +-
 .../webkitgtk-6.0/func.CHECK_VERSION.html     |   2 +-
 .../func.DECLARE_DERIVABLE_TYPE.html          |   2 +-
 .../func.DECLARE_FINAL_TYPE.html              |   2 +-
 .../webkitgtk-6.0/func.DECLARE_TYPE.html      |   2 +-
 .../webkitgtk-6.0/func.DEPRECATED_FOR.html    |   2 +-
 .../webkitgtk-6.0/func.get_major_version.html |   2 +-
 .../webkitgtk-6.0/func.get_micro_version.html |   2 +-
 .../webkitgtk-6.0/func.get_minor_version.html |   2 +-
 ....media_key_system_permission_get_name.html |   2 +-
 .../webkitgtk-6.0/func.uri_for_display.html   |   2 +-
 ..._media_permission_is_for_audio_device.html |   2 +-
 ...edia_permission_is_for_display_device.html |   2 +-
 ..._media_permission_is_for_video_device.html |   2 +-
 .../iface.PermissionRequest.html              |   2 +-
 Documentation/webkitgtk-6.0/index.html        |   4 +-
 .../method.ApplicationInfo.get_name.html      |   2 +-
 .../method.ApplicationInfo.get_version.html   |   2 +-
 .../method.ApplicationInfo.ref.html           |   2 +-
 .../method.ApplicationInfo.set_name.html      |   2 +-
 .../method.ApplicationInfo.set_version.html   |   2 +-
 .../method.ApplicationInfo.unref.html         |   2 +-
 ...od.AuthenticationRequest.authenticate.html |   2 +-
 ...nticationRequest.can_save_credentials.html |   2 +-
 .../method.AuthenticationRequest.cancel.html  |   2 +-
 ...tionRequest.get_certificate_pin_flags.html |   2 +-
 ...method.AuthenticationRequest.get_host.html |   2 +-
 ...method.AuthenticationRequest.get_port.html |   2 +-
 ...cationRequest.get_proposed_credential.html |   2 +-
 ...ethod.AuthenticationRequest.get_realm.html |   2 +-
 ...thod.AuthenticationRequest.get_scheme.html |   2 +-
 ...enticationRequest.get_security_origin.html |   2 +-
 ...od.AuthenticationRequest.is_for_proxy.html |   2 +-
 ...method.AuthenticationRequest.is_retry.html |   2 +-
 ...ationRequest.set_can_save_credentials.html |   2 +-
 ...cationRequest.set_proposed_credential.html |   2 +-
 ...utomationSession.get_application_info.html |   2 +-
 .../method.AutomationSession.get_id.html      |   2 +-
 ...utomationSession.set_application_info.html |   2 +-
 .../method.BackForwardList.get_back_item.html |   2 +-
 .../method.BackForwardList.get_back_list.html |   2 +-
 ...kForwardList.get_back_list_with_limit.html |   2 +-
 ...thod.BackForwardList.get_current_item.html |   2 +-
 ...thod.BackForwardList.get_forward_item.html |   2 +-
 ...thod.BackForwardList.get_forward_list.html |   2 +-
 ...rwardList.get_forward_list_with_limit.html |   2 +-
 .../method.BackForwardList.get_length.html    |   2 +-
 .../method.BackForwardList.get_nth_item.html  |   2 +-
 ....BackForwardListItem.get_original_uri.html |   2 +-
 .../method.BackForwardListItem.get_title.html |   2 +-
 .../method.BackForwardListItem.get_uri.html   |   2 +-
 .../method.ColorChooserRequest.cancel.html    |   2 +-
 .../method.ColorChooserRequest.finish.html    |   2 +-
 ...rChooserRequest.get_element_rectangle.html |   2 +-
 .../method.ColorChooserRequest.get_rgba.html  |   2 +-
 .../method.ColorChooserRequest.set_rgba.html  |   2 +-
 .../method.ContextMenu.append.html            |   2 +-
 .../method.ContextMenu.first.html             |   2 +-
 .../method.ContextMenu.get_event.html         |   2 +-
 ...thod.ContextMenu.get_item_at_position.html |   2 +-
 .../method.ContextMenu.get_items.html         |   2 +-
 .../method.ContextMenu.get_n_items.html       |   2 +-
 .../method.ContextMenu.get_user_data.html     |   2 +-
 .../method.ContextMenu.insert.html            |   2 +-
 .../method.ContextMenu.last.html              |   2 +-
 .../method.ContextMenu.move_item.html         |   2 +-
 .../method.ContextMenu.prepend.html           |   2 +-
 .../method.ContextMenu.remove.html            |   2 +-
 .../method.ContextMenu.remove_all.html        |   2 +-
 .../method.ContextMenu.set_user_data.html     |   2 +-
 .../method.ContextMenuItem.get_gaction.html   |   2 +-
 ...thod.ContextMenuItem.get_stock_action.html |   2 +-
 .../method.ContextMenuItem.get_submenu.html   |   2 +-
 .../method.ContextMenuItem.is_separator.html  |   2 +-
 .../method.ContextMenuItem.set_submenu.html   |   2 +-
 .../method.CookieManager.add_cookie.html      |   2 +-
 ...ethod.CookieManager.add_cookie_finish.html |   2 +-
 .../method.CookieManager.delete_cookie.html   |   2 +-
 ...od.CookieManager.delete_cookie_finish.html |   2 +-
 ...ethod.CookieManager.get_accept_policy.html |   2 +-
 ...ookieManager.get_accept_policy_finish.html |   2 +-
 .../method.CookieManager.get_all_cookies.html |   2 +-
 ....CookieManager.get_all_cookies_finish.html |   2 +-
 .../method.CookieManager.get_cookies.html     |   2 +-
 ...thod.CookieManager.get_cookies_finish.html |   2 +-
 .../method.CookieManager.replace_cookies.html |   2 +-
 ....CookieManager.replace_cookies_finish.html |   2 +-
 ...ethod.CookieManager.set_accept_policy.html |   2 +-
 ....CookieManager.set_persistent_storage.html |   2 +-
 .../webkitgtk-6.0/method.Credential.copy.html |   2 +-
 .../webkitgtk-6.0/method.Credential.free.html |   2 +-
 .../method.Credential.get_certificate.html    |   2 +-
 .../method.Credential.get_password.html       |   2 +-
 .../method.Credential.get_persistence.html    |   2 +-
 .../method.Credential.get_username.html       |   2 +-
 .../method.Credential.has_password.html       |   2 +-
 .../webkitgtk-6.0/method.Download.cancel.html |   2 +-
 .../method.Download.get_allow_overwrite.html  |   2 +-
 .../method.Download.get_destination.html      |   2 +-
 .../method.Download.get_elapsed_time.html     |   2 +-
 ...ethod.Download.get_estimated_progress.html |   2 +-
 ...hod.Download.get_received_data_length.html |   2 +-
 .../method.Download.get_request.html          |   2 +-
 .../method.Download.get_response.html         |   2 +-
 .../method.Download.get_web_view.html         |   2 +-
 .../method.Download.set_allow_overwrite.html  |   2 +-
 .../method.Download.set_destination.html      |   2 +-
 ...hod.EditorState.get_typing_attributes.html |   2 +-
 .../method.EditorState.is_copy_available.html |   2 +-
 .../method.EditorState.is_cut_available.html  |   2 +-
 ...method.EditorState.is_paste_available.html |   2 +-
 .../method.EditorState.is_redo_available.html |   2 +-
 .../method.EditorState.is_undo_available.html |   2 +-
 .../method.FaviconDatabase.clear.html         |   2 +-
 .../method.FaviconDatabase.get_favicon.html   |   2 +-
 ...od.FaviconDatabase.get_favicon_finish.html |   2 +-
 ...ethod.FaviconDatabase.get_favicon_uri.html |   2 +-
 .../method.Feature.get_category.html          |   2 +-
 .../method.Feature.get_default_value.html     |   2 +-
 .../method.Feature.get_details.html           |   2 +-
 .../method.Feature.get_identifier.html        |   2 +-
 .../method.Feature.get_name.html              |   2 +-
 .../method.Feature.get_status.html            |   2 +-
 .../webkitgtk-6.0/method.Feature.ref.html     |   2 +-
 .../webkitgtk-6.0/method.Feature.unref.html   |   2 +-
 .../webkitgtk-6.0/method.FeatureList.get.html |   2 +-
 .../method.FeatureList.get_length.html        |   2 +-
 .../webkitgtk-6.0/method.FeatureList.ref.html |   2 +-
 .../method.FeatureList.unref.html             |   2 +-
 .../method.FileChooserRequest.cancel.html     |   2 +-
 ...hod.FileChooserRequest.get_mime_types.html |   2 +-
 ...eChooserRequest.get_mime_types_filter.html |   2 +-
 ...ileChooserRequest.get_select_multiple.html |   2 +-
 ...FileChooserRequest.get_selected_files.html |   2 +-
 ...ethod.FileChooserRequest.select_files.html |   2 +-
 .../method.FindController.count_matches.html  |   2 +-
 ...od.FindController.get_max_match_count.html |   2 +-
 .../method.FindController.get_options.html    |   2 +-
 ...method.FindController.get_search_text.html |   2 +-
 .../method.FindController.get_web_view.html   |   2 +-
 .../method.FindController.search.html         |   2 +-
 .../method.FindController.search_finish.html  |   2 +-
 .../method.FindController.search_next.html    |   2 +-
 ...method.FindController.search_previous.html |   2 +-
 ...ormSubmissionRequest.list_text_fields.html |   2 +-
 .../method.FormSubmissionRequest.submit.html  |   2 +-
 .../method.GeolocationManager.failed.html     |   2 +-
 ...ationManager.get_enable_high_accuracy.html |   2 +-
 ...od.GeolocationManager.update_position.html |   2 +-
 .../method.GeolocationPosition.copy.html      |   2 +-
 .../method.GeolocationPosition.free.html      |   2 +-
 ...thod.GeolocationPosition.set_altitude.html |   2 +-
 ...ocationPosition.set_altitude_accuracy.html |   2 +-
 ...ethod.GeolocationPosition.set_heading.html |   2 +-
 .../method.GeolocationPosition.set_speed.html |   2 +-
 ...hod.GeolocationPosition.set_timestamp.html |   2 +-
 ...hod.HitTestResult.context_is_editable.html |   2 +-
 ...method.HitTestResult.context_is_image.html |   2 +-
 .../method.HitTestResult.context_is_link.html |   2 +-
 ...method.HitTestResult.context_is_media.html |   2 +-
 ...od.HitTestResult.context_is_scrollbar.html |   2 +-
 ...od.HitTestResult.context_is_selection.html |   2 +-
 .../method.HitTestResult.get_context.html     |   2 +-
 .../method.HitTestResult.get_image_uri.html   |   2 +-
 .../method.HitTestResult.get_link_label.html  |   2 +-
 .../method.HitTestResult.get_link_title.html  |   2 +-
 .../method.HitTestResult.get_link_uri.html    |   2 +-
 .../method.HitTestResult.get_media_uri.html   |   2 +-
 .../method.ITPFirstParty.get_domain.html      |   2 +-
 ...od.ITPFirstParty.get_last_update_time.html |   2 +-
 ...Party.get_website_data_access_allowed.html |   2 +-
 .../method.ITPFirstParty.ref.html             |   2 +-
 .../method.ITPFirstParty.unref.html           |   2 +-
 .../method.ITPThirdParty.get_domain.html      |   2 +-
 ...ethod.ITPThirdParty.get_first_parties.html |   2 +-
 .../method.ITPThirdParty.ref.html             |   2 +-
 .../method.ITPThirdParty.unref.html           |   2 +-
 ...d.InputMethodContext.filter_key_event.html |   2 +-
 ...od.InputMethodContext.get_input_hints.html |   2 +-
 ....InputMethodContext.get_input_purpose.html |   2 +-
 ...method.InputMethodContext.get_preedit.html |   2 +-
 ...InputMethodContext.notify_cursor_area.html |   2 +-
 ...od.InputMethodContext.notify_focus_in.html |   2 +-
 ...d.InputMethodContext.notify_focus_out.html |   2 +-
 ...InputMethodContext.notify_surrounding.html |   2 +-
 .../method.InputMethodContext.reset.html      |   2 +-
 ...InputMethodContext.set_enable_preedit.html |   2 +-
 ...od.InputMethodContext.set_input_hints.html |   2 +-
 ....InputMethodContext.set_input_purpose.html |   2 +-
 .../method.InputMethodUnderline.copy.html     |   2 +-
 .../method.InputMethodUnderline.free.html     |   2 +-
 ...method.InputMethodUnderline.set_color.html |   2 +-
 .../method.MemoryPressureSettings.copy.html   |   2 +-
 .../method.MemoryPressureSettings.free.html   |   2 +-
 ...reSettings.get_conservative_threshold.html |   2 +-
 ...ryPressureSettings.get_kill_threshold.html |   2 +-
 ...moryPressureSettings.get_memory_limit.html |   2 +-
 ...oryPressureSettings.get_poll_interval.html |   2 +-
 ...PressureSettings.get_strict_threshold.html |   2 +-
 ...reSettings.set_conservative_threshold.html |   2 +-
 ...ryPressureSettings.set_kill_threshold.html |   2 +-
 ...moryPressureSettings.set_memory_limit.html |   2 +-
 ...oryPressureSettings.set_poll_interval.html |   2 +-
 ...PressureSettings.set_strict_threshold.html |   2 +-
 .../method.NavigationAction.copy.html         |   2 +-
 .../method.NavigationAction.free.html         |   2 +-
 ...ethod.NavigationAction.get_frame_name.html |   2 +-
 ...method.NavigationAction.get_modifiers.html |   2 +-
 ...hod.NavigationAction.get_mouse_button.html |   2 +-
 ....NavigationAction.get_navigation_type.html |   2 +-
 .../method.NavigationAction.get_request.html  |   2 +-
 .../method.NavigationAction.is_redirect.html  |   2 +-
 ...thod.NavigationAction.is_user_gesture.html |   2 +-
 ...nPolicyDecision.get_navigation_action.html |   2 +-
 ...orkProxySettings.add_proxy_for_scheme.html |   2 +-
 .../method.NetworkProxySettings.copy.html     |   2 +-
 .../method.NetworkProxySettings.free.html     |   2 +-
 ...ession.allow_tls_certificate_for_host.html |   2 +-
 .../method.NetworkSession.download_uri.html   |   2 +-
 ...hod.NetworkSession.get_cookie_manager.html |   2 +-
 ...method.NetworkSession.get_itp_enabled.html |   2 +-
 ...method.NetworkSession.get_itp_summary.html |   2 +-
 ...NetworkSession.get_itp_summary_finish.html |   2 +-
 ...persistent_credential_storage_enabled.html |   2 +-
 ....NetworkSession.get_tls_errors_policy.html |   2 +-
 ...tworkSession.get_website_data_manager.html |   2 +-
 .../method.NetworkSession.is_ephemeral.html   |   2 +-
 .../method.NetworkSession.prefetch_dns.html   |   2 +-
 ...method.NetworkSession.set_itp_enabled.html |   2 +-
 ...persistent_credential_storage_enabled.html |   2 +-
 ...hod.NetworkSession.set_proxy_settings.html |   2 +-
 ....NetworkSession.set_tls_errors_policy.html |   2 +-
 .../method.Notification.clicked.html          |   2 +-
 .../method.Notification.close.html            |   2 +-
 .../method.Notification.get_body.html         |   2 +-
 .../method.Notification.get_id.html           |   2 +-
 .../method.Notification.get_tag.html          |   2 +-
 .../method.Notification.get_title.html        |   2 +-
 .../method.OptionMenu.activate_item.html      |   2 +-
 .../method.OptionMenu.close.html              |   2 +-
 .../method.OptionMenu.get_event.html          |   2 +-
 .../method.OptionMenu.get_item.html           |   2 +-
 .../method.OptionMenu.get_n_items.html        |   2 +-
 .../method.OptionMenu.select_item.html        |   2 +-
 .../method.OptionMenuItem.copy.html           |   2 +-
 .../method.OptionMenuItem.free.html           |   2 +-
 .../method.OptionMenuItem.get_label.html      |   2 +-
 .../method.OptionMenuItem.get_tooltip.html    |   2 +-
 .../method.OptionMenuItem.is_enabled.html     |   2 +-
 .../method.OptionMenuItem.is_group_child.html |   2 +-
 .../method.OptionMenuItem.is_group_label.html |   2 +-
 .../method.OptionMenuItem.is_selected.html    |   2 +-
 .../method.PermissionRequest.allow.html       |   2 +-
 .../method.PermissionRequest.deny.html        |   2 +-
 .../method.PermissionStateQuery.finish.html   |   2 +-
 .../method.PermissionStateQuery.get_name.html |   2 +-
 ...missionStateQuery.get_security_origin.html |   2 +-
 .../method.PermissionStateQuery.ref.html      |   2 +-
 .../method.PermissionStateQuery.unref.html    |   2 +-
 .../method.PolicyDecision.download.html       |   2 +-
 .../method.PolicyDecision.ignore.html         |   2 +-
 .../method.PolicyDecision.use.html            |   2 +-
 ...thod.PolicyDecision.use_with_policies.html |   2 +-
 .../method.PrintOperation.get_page_setup.html |   2 +-
 ...hod.PrintOperation.get_print_settings.html |   2 +-
 .../method.PrintOperation.print.html          |   2 +-
 .../method.PrintOperation.run_dialog.html     |   2 +-
 .../method.PrintOperation.set_page_setup.html |   2 +-
 ...hod.PrintOperation.set_print_settings.html |   2 +-
 ...od.ResponsePolicyDecision.get_request.html |   2 +-
 ...d.ResponsePolicyDecision.get_response.html |   2 +-
 ...yDecision.is_main_frame_main_resource.html |   2 +-
 ...PolicyDecision.is_mime_type_supported.html |   2 +-
 .../method.ScriptDialog.close.html            |   2 +-
 ...od.ScriptDialog.confirm_set_confirmed.html |   2 +-
 .../method.ScriptDialog.get_dialog_type.html  |   2 +-
 .../method.ScriptDialog.get_message.html      |   2 +-
 ....ScriptDialog.prompt_get_default_text.html |   2 +-
 .../method.ScriptDialog.prompt_set_text.html  |   2 +-
 .../method.ScriptDialog.ref.html              |   2 +-
 .../method.ScriptDialog.unref.html            |   2 +-
 .../method.ScriptMessageReply.ref.html        |   2 +-
 ...riptMessageReply.return_error_message.html |   2 +-
 ...ethod.ScriptMessageReply.return_value.html |   2 +-
 .../method.ScriptMessageReply.unref.html      |   2 +-
 ...r.register_uri_scheme_as_cors_enabled.html |   2 +-
 ...gister_uri_scheme_as_display_isolated.html |   2 +-
 ...register_uri_scheme_as_empty_document.html |   2 +-
 ...yManager.register_uri_scheme_as_local.html |   2 +-
 ...ager.register_uri_scheme_as_no_access.html |   2 +-
 ...Manager.register_uri_scheme_as_secure.html |   2 +-
 ...ityManager.uri_scheme_is_cors_enabled.html |   2 +-
 ...anager.uri_scheme_is_display_isolated.html |   2 +-
 ...yManager.uri_scheme_is_empty_document.html |   2 +-
 ...d.SecurityManager.uri_scheme_is_local.html |   2 +-
 ...curityManager.uri_scheme_is_no_access.html |   2 +-
 ....SecurityManager.uri_scheme_is_secure.html |   2 +-
 .../method.SecurityOrigin.get_host.html       |   2 +-
 .../method.SecurityOrigin.get_port.html       |   2 +-
 .../method.SecurityOrigin.get_protocol.html   |   2 +-
 .../method.SecurityOrigin.ref.html            |   2 +-
 .../method.SecurityOrigin.to_string.html      |   2 +-
 .../method.SecurityOrigin.unref.html          |   2 +-
 .../method.Settings.apply_from_key_file.html  |   2 +-
 ....get_allow_file_access_from_file_urls.html |   2 +-
 ...thod.Settings.get_allow_modal_dialogs.html |   2 +-
 ...get_allow_top_navigation_to_data_urls.html |   2 +-
 ...allow_universal_access_from_file_urls.html |   2 +-
 .../method.Settings.get_auto_load_images.html |   2 +-
 ...thod.Settings.get_cursive_font_family.html |   2 +-
 .../method.Settings.get_default_charset.html  |   2 +-
 ...thod.Settings.get_default_font_family.html |   2 +-
 ...method.Settings.get_default_font_size.html |   2 +-
 ...tings.get_default_monospace_font_size.html |   2 +-
 ...hod.Settings.get_disable_web_security.html |   2 +-
 ...tings.get_draw_compositing_indicators.html |   2 +-
 ...ngs.get_enable_2d_canvas_acceleration.html |   2 +-
 ...able_back_forward_navigation_gestures.html |   2 +-
 ...od.Settings.get_enable_caret_browsing.html |   2 +-
 ....Settings.get_enable_developer_extras.html |   2 +-
 ...d.Settings.get_enable_dns_prefetching.html |   2 +-
 ...d.Settings.get_enable_encrypted_media.html |   2 +-
 ...method.Settings.get_enable_fullscreen.html |   2 +-
 ...od.Settings.get_enable_html5_database.html |   2 +-
 ...ttings.get_enable_html5_local_storage.html |   2 +-
 ...ettings.get_enable_hyperlink_auditing.html |   2 +-
 ...method.Settings.get_enable_javascript.html |   2 +-
 ...Settings.get_enable_javascript_markup.html |   2 +-
 .../method.Settings.get_enable_media.html     |   2 +-
 ...ettings.get_enable_media_capabilities.html |   2 +-
 ...thod.Settings.get_enable_media_stream.html |   2 +-
 ...ethod.Settings.get_enable_mediasource.html |   2 +-
 ...tings.get_enable_mock_capture_devices.html |   2 +-
 ..._enable_offline_web_application_cache.html |   2 +-
 ...method.Settings.get_enable_page_cache.html |   2 +-
 ...tings.get_enable_resizable_text_areas.html |   2 +-
 ...tings.get_enable_site_specific_quirks.html |   2 +-
 ....Settings.get_enable_smooth_scrolling.html |   2 +-
 ...ettings.get_enable_spatial_navigation.html |   2 +-
 ...hod.Settings.get_enable_tabs_to_links.html |   2 +-
 .../method.Settings.get_enable_webaudio.html  |   2 +-
 .../method.Settings.get_enable_webgl.html     |   2 +-
 .../method.Settings.get_enable_webrtc.html    |   2 +-
 ...able_write_console_messages_to_stdout.html |   2 +-
 ...thod.Settings.get_fantasy_font_family.html |   2 +-
 .../method.Settings.get_feature_enabled.html  |   2 +-
 ...ings.get_hardware_acceleration_policy.html |   2 +-
 ...s.get_javascript_can_access_clipboard.html |   2 +-
 ...script_can_open_windows_automatically.html |   2 +-
 ...oad_icons_ignoring_image_load_setting.html |   2 +-
 ...tent_types_requiring_hardware_support.html |   2 +-
 ...ings.get_media_playback_allows_inline.html |   2 +-
 ..._media_playback_requires_user_gesture.html |   2 +-
 ...method.Settings.get_minimum_font_size.html |   2 +-
 ...od.Settings.get_monospace_font_family.html |   2 +-
 ...d.Settings.get_pictograph_font_family.html |   2 +-
 ...method.Settings.get_print_backgrounds.html |   2 +-
 ...d.Settings.get_sans_serif_font_family.html |   2 +-
 ...method.Settings.get_serif_font_family.html |   2 +-
 .../method.Settings.get_user_agent.html       |   2 +-
 .../method.Settings.get_zoom_text_only.html   |   2 +-
 ....set_allow_file_access_from_file_urls.html |   2 +-
 ...thod.Settings.set_allow_modal_dialogs.html |   2 +-
 ...set_allow_top_navigation_to_data_urls.html |   2 +-
 ...allow_universal_access_from_file_urls.html |   2 +-
 .../method.Settings.set_auto_load_images.html |   2 +-
 ...thod.Settings.set_cursive_font_family.html |   2 +-
 .../method.Settings.set_default_charset.html  |   2 +-
 ...thod.Settings.set_default_font_family.html |   2 +-
 ...method.Settings.set_default_font_size.html |   2 +-
 ...tings.set_default_monospace_font_size.html |   2 +-
 ...hod.Settings.set_disable_web_security.html |   2 +-
 ...tings.set_draw_compositing_indicators.html |   2 +-
 ...ngs.set_enable_2d_canvas_acceleration.html |   2 +-
 ...able_back_forward_navigation_gestures.html |   2 +-
 ...od.Settings.set_enable_caret_browsing.html |   2 +-
 ....Settings.set_enable_developer_extras.html |   2 +-
 ...d.Settings.set_enable_dns_prefetching.html |   2 +-
 ...d.Settings.set_enable_encrypted_media.html |   2 +-
 ...method.Settings.set_enable_fullscreen.html |   2 +-
 ...od.Settings.set_enable_html5_database.html |   2 +-
 ...ttings.set_enable_html5_local_storage.html |   2 +-
 ...ettings.set_enable_hyperlink_auditing.html |   2 +-
 ...method.Settings.set_enable_javascript.html |   2 +-
 ...Settings.set_enable_javascript_markup.html |   2 +-
 .../method.Settings.set_enable_media.html     |   2 +-
 ...ettings.set_enable_media_capabilities.html |   2 +-
 ...thod.Settings.set_enable_media_stream.html |   2 +-
 ...ethod.Settings.set_enable_mediasource.html |   2 +-
 ...tings.set_enable_mock_capture_devices.html |   2 +-
 ..._enable_offline_web_application_cache.html |   2 +-
 ...method.Settings.set_enable_page_cache.html |   2 +-
 ...tings.set_enable_resizable_text_areas.html |   2 +-
 ...tings.set_enable_site_specific_quirks.html |   2 +-
 ....Settings.set_enable_smooth_scrolling.html |   2 +-
 ...ettings.set_enable_spatial_navigation.html |   2 +-
 ...hod.Settings.set_enable_tabs_to_links.html |   2 +-
 .../method.Settings.set_enable_webaudio.html  |   2 +-
 .../method.Settings.set_enable_webgl.html     |   2 +-
 .../method.Settings.set_enable_webrtc.html    |   2 +-
 ...able_write_console_messages_to_stdout.html |   2 +-
 ...thod.Settings.set_fantasy_font_family.html |   2 +-
 .../method.Settings.set_feature_enabled.html  |   2 +-
 ...ings.set_hardware_acceleration_policy.html |   2 +-
 ...s.set_javascript_can_access_clipboard.html |   2 +-
 ...script_can_open_windows_automatically.html |   2 +-
 ...oad_icons_ignoring_image_load_setting.html |   2 +-
 ...tent_types_requiring_hardware_support.html |   2 +-
 ...ings.set_media_playback_allows_inline.html |   2 +-
 ..._media_playback_requires_user_gesture.html |   2 +-
 ...method.Settings.set_minimum_font_size.html |   2 +-
 ...od.Settings.set_monospace_font_family.html |   2 +-
 ...d.Settings.set_pictograph_font_family.html |   2 +-
 ...method.Settings.set_print_backgrounds.html |   2 +-
 ...d.Settings.set_sans_serif_font_family.html |   2 +-
 ...method.Settings.set_serif_font_family.html |   2 +-
 .../method.Settings.set_user_agent.html       |   2 +-
 ...t_user_agent_with_application_details.html |   2 +-
 .../method.Settings.set_zoom_text_only.html   |   2 +-
 .../method.URIRequest.get_http_headers.html   |   2 +-
 .../method.URIRequest.get_http_method.html    |   2 +-
 .../method.URIRequest.get_uri.html            |   2 +-
 .../method.URIRequest.set_uri.html            |   2 +-
 ...method.URIResponse.get_content_length.html |   2 +-
 .../method.URIResponse.get_http_headers.html  |   2 +-
 .../method.URIResponse.get_mime_type.html     |   2 +-
 .../method.URIResponse.get_status_code.html   |   2 +-
 ...od.URIResponse.get_suggested_filename.html |   2 +-
 .../method.URIResponse.get_uri.html           |   2 +-
 .../method.URISchemeRequest.finish.html       |   2 +-
 .../method.URISchemeRequest.finish_error.html |   2 +-
 ...URISchemeRequest.finish_with_response.html |   2 +-
 ...method.URISchemeRequest.get_http_body.html |   2 +-
 ...hod.URISchemeRequest.get_http_headers.html |   2 +-
 ...thod.URISchemeRequest.get_http_method.html |   2 +-
 .../method.URISchemeRequest.get_path.html     |   2 +-
 .../method.URISchemeRequest.get_scheme.html   |   2 +-
 .../method.URISchemeRequest.get_uri.html      |   2 +-
 .../method.URISchemeRequest.get_web_view.html |   2 +-
 ...od.URISchemeResponse.set_content_type.html |   2 +-
 ...od.URISchemeResponse.set_http_headers.html |   2 +-
 .../method.URISchemeResponse.set_status.html  |   2 +-
 ...thod.UserContentFilter.get_identifier.html |   2 +-
 .../method.UserContentFilter.ref.html         |   2 +-
 .../method.UserContentFilter.unref.html       |   2 +-
 ...rContentFilterStore.fetch_identifiers.html |   2 +-
 ...tFilterStore.fetch_identifiers_finish.html |   2 +-
 ...ethod.UserContentFilterStore.get_path.html |   2 +-
 .../method.UserContentFilterStore.load.html   |   2 +-
 ...od.UserContentFilterStore.load_finish.html |   2 +-
 .../method.UserContentFilterStore.remove.html |   2 +-
 ....UserContentFilterStore.remove_finish.html |   2 +-
 .../method.UserContentFilterStore.save.html   |   2 +-
 ...od.UserContentFilterStore.save_finish.html |   2 +-
 ...UserContentFilterStore.save_from_file.html |   2 +-
 ...tentFilterStore.save_from_file_finish.html |   2 +-
 .../method.UserContentManager.add_filter.html |   2 +-
 .../method.UserContentManager.add_script.html |   2 +-
 ...od.UserContentManager.add_style_sheet.html |   2 +-
 ...nager.register_script_message_handler.html |   2 +-
 ...ter_script_message_handler_with_reply.html |   2 +-
 ...UserContentManager.remove_all_filters.html |   2 +-
 ...UserContentManager.remove_all_scripts.html |   2 +-
 ...ontentManager.remove_all_style_sheets.html |   2 +-
 ...thod.UserContentManager.remove_filter.html |   2 +-
 ...serContentManager.remove_filter_by_id.html |   2 +-
 ...thod.UserContentManager.remove_script.html |   2 +-
 ...UserContentManager.remove_style_sheet.html |   2 +-
 ...ger.unregister_script_message_handler.html |   2 +-
 .../method.UserMessage.get_fd_list.html       |   2 +-
 .../method.UserMessage.get_name.html          |   2 +-
 .../method.UserMessage.get_parameters.html    |   2 +-
 .../method.UserMessage.send_reply.html        |   2 +-
 .../webkitgtk-6.0/method.UserScript.ref.html  |   2 +-
 .../method.UserScript.unref.html              |   2 +-
 .../method.UserStyleSheet.ref.html            |   2 +-
 .../method.UserStyleSheet.unref.html          |   2 +-
 ...method.WebContext.add_path_to_sandbox.html |   2 +-
 .../method.WebContext.get_cache_model.html    |   2 +-
 ...od.WebContext.get_geolocation_manager.html |   2 +-
 ...xt.get_network_session_for_automation.html |   2 +-
 ...ethod.WebContext.get_security_manager.html |   2 +-
 ...WebContext.get_spell_checking_enabled.html |   2 +-
 ...bContext.get_spell_checking_languages.html |   2 +-
 ...hod.WebContext.get_time_zone_override.html |   2 +-
 ...t.initialize_notification_permissions.html |   2 +-
 ...thod.WebContext.is_automation_allowed.html |   2 +-
 ...method.WebContext.register_uri_scheme.html |   2 +-
 ...ontext.send_message_to_all_extensions.html |   2 +-
 ...hod.WebContext.set_automation_allowed.html |   2 +-
 .../method.WebContext.set_cache_model.html    |   2 +-
 ...od.WebContext.set_preferred_languages.html |   2 +-
 ...WebContext.set_spell_checking_enabled.html |   2 +-
 ...bContext.set_spell_checking_languages.html |   2 +-
 ....set_web_process_extensions_directory.html |   2 +-
 ...s_extensions_initialization_user_data.html |   2 +-
 .../method.WebInspector.attach.html           |   2 +-
 .../method.WebInspector.close.html            |   2 +-
 .../method.WebInspector.detach.html           |   2 +-
 ...thod.WebInspector.get_attached_height.html |   2 +-
 .../method.WebInspector.get_can_attach.html   |   2 +-
 ...method.WebInspector.get_inspected_uri.html |   2 +-
 .../method.WebInspector.get_web_view.html     |   2 +-
 .../method.WebInspector.is_attached.html      |   2 +-
 .../method.WebInspector.show.html             |   2 +-
 .../method.WebResource.get_data.html          |   2 +-
 .../method.WebResource.get_data_finish.html   |   2 +-
 .../method.WebResource.get_response.html      |   2 +-
 .../method.WebResource.get_uri.html           |   2 +-
 ...ebView.call_async_javascript_function.html |   2 +-
 ...call_async_javascript_function_finish.html |   2 +-
 ...d.WebView.can_execute_editing_command.html |   2 +-
 ...ew.can_execute_editing_command_finish.html |   2 +-
 .../method.WebView.can_go_back.html           |   2 +-
 .../method.WebView.can_go_forward.html        |   2 +-
 .../method.WebView.can_show_mime_type.html    |   2 +-
 .../method.WebView.download_uri.html          |   2 +-
 .../method.WebView.evaluate_javascript.html   |   2 +-
 ...od.WebView.evaluate_javascript_finish.html |   2 +-
 ...ethod.WebView.execute_editing_command.html |   2 +-
 ...execute_editing_command_with_argument.html |   2 +-
 ...View.get_automation_presentation_type.html |   2 +-
 .../method.WebView.get_back_forward_list.html |   2 +-
 .../method.WebView.get_background_color.html  |   2 +-
 ...thod.WebView.get_camera_capture_state.html |   2 +-
 .../method.WebView.get_context.html           |   2 +-
 .../method.WebView.get_custom_charset.html    |   2 +-
 ...w.get_default_content_security_policy.html |   2 +-
 ...hod.WebView.get_display_capture_state.html |   2 +-
 .../method.WebView.get_editor_state.html      |   2 +-
 ...d.WebView.get_estimated_load_progress.html |   2 +-
 .../method.WebView.get_favicon.html           |   2 +-
 .../method.WebView.get_find_controller.html   |   2 +-
 ...thod.WebView.get_input_method_context.html |   2 +-
 .../method.WebView.get_inspector.html         |   2 +-
 .../method.WebView.get_is_muted.html          |   2 +-
 ...WebView.get_is_web_process_responsive.html |   2 +-
 .../method.WebView.get_main_resource.html     |   2 +-
 ....WebView.get_microphone_capture_state.html |   2 +-
 .../method.WebView.get_network_session.html   |   2 +-
 .../method.WebView.get_page_id.html           |   2 +-
 .../method.WebView.get_session_state.html     |   2 +-
 .../method.WebView.get_settings.html          |   2 +-
 .../method.WebView.get_snapshot.html          |   2 +-
 .../method.WebView.get_snapshot_finish.html   |   2 +-
 .../method.WebView.get_title.html             |   2 +-
 .../method.WebView.get_tls_info.html          |   2 +-
 .../webkitgtk-6.0/method.WebView.get_uri.html |   2 +-
 ...thod.WebView.get_user_content_manager.html |   2 +-
 ...method.WebView.get_web_extension_mode.html |   2 +-
 .../method.WebView.get_website_policies.html  |   2 +-
 .../method.WebView.get_window_properties.html |   2 +-
 .../method.WebView.get_zoom_level.html        |   2 +-
 .../webkitgtk-6.0/method.WebView.go_back.html |   2 +-
 .../method.WebView.go_forward.html            |   2 +-
 ....WebView.go_to_back_forward_list_item.html |   2 +-
 ...d.WebView.is_controlled_by_automation.html |   2 +-
 .../method.WebView.is_editable.html           |   2 +-
 .../method.WebView.is_loading.html            |   2 +-
 .../method.WebView.is_playing_audio.html      |   2 +-
 .../method.WebView.load_alternate_html.html   |   2 +-
 .../method.WebView.load_bytes.html            |   2 +-
 .../method.WebView.load_html.html             |   2 +-
 .../method.WebView.load_plain_text.html       |   2 +-
 .../method.WebView.load_request.html          |   2 +-
 .../method.WebView.load_uri.html              |   2 +-
 .../webkitgtk-6.0/method.WebView.reload.html  |   2 +-
 .../method.WebView.reload_bypass_cache.html   |   2 +-
 .../method.WebView.restore_session_state.html |   2 +-
 .../webkitgtk-6.0/method.WebView.save.html    |   2 +-
 .../method.WebView.save_finish.html           |   2 +-
 .../method.WebView.save_to_file.html          |   2 +-
 .../method.WebView.save_to_file_finish.html   |   2 +-
 .../method.WebView.send_message_to_page.html  |   2 +-
 ...d.WebView.send_message_to_page_finish.html |   2 +-
 .../method.WebView.set_background_color.html  |   2 +-
 ...thod.WebView.set_camera_capture_state.html |   2 +-
 .../method.WebView.set_cors_allowlist.html    |   2 +-
 .../method.WebView.set_custom_charset.html    |   2 +-
 ...hod.WebView.set_display_capture_state.html |   2 +-
 .../method.WebView.set_editable.html          |   2 +-
 ...thod.WebView.set_input_method_context.html |   2 +-
 .../method.WebView.set_is_muted.html          |   2 +-
 ....WebView.set_microphone_capture_state.html |   2 +-
 .../method.WebView.set_settings.html          |   2 +-
 .../method.WebView.set_zoom_level.html        |   2 +-
 .../method.WebView.stop_loading.html          |   2 +-
 .../method.WebView.terminate_web_process.html |   2 +-
 .../method.WebView.try_close.html             |   2 +-
 .../method.WebViewSessionState.ref.html       |   2 +-
 .../method.WebViewSessionState.serialize.html |   2 +-
 .../method.WebViewSessionState.unref.html     |   2 +-
 .../method.WebsiteData.get_name.html          |   2 +-
 .../method.WebsiteData.get_size.html          |   2 +-
 .../method.WebsiteData.get_types.html         |   2 +-
 .../webkitgtk-6.0/method.WebsiteData.ref.html |   2 +-
 .../method.WebsiteData.unref.html             |   2 +-
 ...sPermissionRequest.get_current_domain.html |   2 +-
 ...rmissionRequest.get_requesting_domain.html |   2 +-
 .../method.WebsiteDataManager.clear.html      |   2 +-
 ...ethod.WebsiteDataManager.clear_finish.html |   2 +-
 .../method.WebsiteDataManager.fetch.html      |   2 +-
 ...ethod.WebsiteDataManager.fetch_finish.html |   2 +-
 ...eDataManager.get_base_cache_directory.html |   2 +-
 ...teDataManager.get_base_data_directory.html |   2 +-
 ...bsiteDataManager.get_favicon_database.html |   2 +-
 ...bsiteDataManager.get_favicons_enabled.html |   2 +-
 ...od.WebsiteDataManager.get_itp_summary.html |   2 +-
 ...iteDataManager.get_itp_summary_finish.html |   2 +-
 ...ethod.WebsiteDataManager.is_ephemeral.html |   2 +-
 .../method.WebsiteDataManager.remove.html     |   2 +-
 ...thod.WebsiteDataManager.remove_finish.html |   2 +-
 ...bsiteDataManager.set_favicons_enabled.html |   2 +-
 ...d.WebsitePolicies.get_autoplay_policy.html |   2 +-
 ...ethod.WindowProperties.get_fullscreen.html |   2 +-
 .../method.WindowProperties.get_geometry.html |   2 +-
 ...dowProperties.get_locationbar_visible.html |   2 +-
 ....WindowProperties.get_menubar_visible.html |   2 +-
 ...method.WindowProperties.get_resizable.html |   2 +-
 ...ndowProperties.get_scrollbars_visible.html |   2 +-
 ...indowProperties.get_statusbar_visible.html |   2 +-
 ....WindowProperties.get_toolbar_visible.html |   2 +-
 .../migrating-to-webkitgtk-6.0.html           |   2 +-
 .../property.AutomationSession.id.html        |   2 +-
 .../property.ColorChooserRequest.rgba.html    |   2 +-
 .../property.Download.allow-overwrite.html    |   2 +-
 .../property.Download.destination.html        |   2 +-
 .../property.Download.estimated-progress.html |   2 +-
 .../property.Download.response.html           |   2 +-
 ...roperty.EditorState.typing-attributes.html |   2 +-
 .../property.FileChooserRequest.filter.html   |   2 +-
 ...roperty.FileChooserRequest.mime-types.html |   2 +-
 ...ty.FileChooserRequest.select-multiple.html |   2 +-
 ...rty.FileChooserRequest.selected-files.html |   2 +-
 ...operty.FindController.max-match-count.html |   2 +-
 .../property.FindController.options.html      |   2 +-
 .../property.FindController.text.html         |   2 +-
 .../property.FindController.web-view.html     |   2 +-
 ...olocationManager.enable-high-accuracy.html |   2 +-
 .../property.HitTestResult.context.html       |   2 +-
 .../property.HitTestResult.image-uri.html     |   2 +-
 .../property.HitTestResult.link-label.html    |   2 +-
 .../property.HitTestResult.link-title.html    |   2 +-
 .../property.HitTestResult.link-uri.html      |   2 +-
 .../property.HitTestResult.media-uri.html     |   2 +-
 ...operty.InputMethodContext.input-hints.html |   2 +-
 ...erty.InputMethodContext.input-purpose.html |   2 +-
 ...ationPolicyDecision.navigation-action.html |   2 +-
 ...operty.NetworkSession.cache-directory.html |   2 +-
 ...roperty.NetworkSession.data-directory.html |   2 +-
 .../property.NetworkSession.is-ephemeral.html |   2 +-
 .../property.Notification.body.html           |   2 +-
 .../property.Notification.id.html             |   2 +-
 .../property.Notification.tag.html            |   2 +-
 .../property.Notification.title.html          |   2 +-
 .../property.PrintOperation.page-setup.html   |   2 +-
 ...roperty.PrintOperation.print-settings.html |   2 +-
 .../property.PrintOperation.web-view.html     |   2 +-
 ...operty.ResponsePolicyDecision.request.html |   2 +-
 ...perty.ResponsePolicyDecision.response.html |   2 +-
 ...ings.allow-file-access-from-file-urls.html |   2 +-
 ...property.Settings.allow-modal-dialogs.html |   2 +-
 ...ngs.allow-top-navigation-to-data-urls.html |   2 +-
 ...allow-universal-access-from-file-urls.html |   2 +-
 .../property.Settings.auto-load-images.html   |   2 +-
 ...property.Settings.cursive-font-family.html |   2 +-
 .../property.Settings.default-charset.html    |   2 +-
 ...property.Settings.default-font-family.html |   2 +-
 .../property.Settings.default-font-size.html  |   2 +-
 ....Settings.default-monospace-font-size.html |   2 +-
 ...roperty.Settings.disable-web-security.html |   2 +-
 ....Settings.draw-compositing-indicators.html |   2 +-
 ...ettings.enable-2d-canvas-acceleration.html |   2 +-
 ...able-back-forward-navigation-gestures.html |   2 +-
 ...operty.Settings.enable-caret-browsing.html |   2 +-
 ...erty.Settings.enable-developer-extras.html |   2 +-
 ...perty.Settings.enable-dns-prefetching.html |   2 +-
 ...perty.Settings.enable-encrypted-media.html |   2 +-
 .../property.Settings.enable-fullscreen.html  |   2 +-
 ...operty.Settings.enable-html5-database.html |   2 +-
 ...y.Settings.enable-html5-local-storage.html |   2 +-
 ...ty.Settings.enable-hyperlink-auditing.html |   2 +-
 ...rty.Settings.enable-javascript-markup.html |   2 +-
 .../property.Settings.enable-javascript.html  |   2 +-
 ...ty.Settings.enable-media-capabilities.html |   2 +-
 ...property.Settings.enable-media-stream.html |   2 +-
 .../property.Settings.enable-media.html       |   2 +-
 .../property.Settings.enable-mediasource.html |   2 +-
 ....Settings.enable-mock-capture-devices.html |   2 +-
 ....enable-offline-web-application-cache.html |   2 +-
 .../property.Settings.enable-page-cache.html  |   2 +-
 ....Settings.enable-resizable-text-areas.html |   2 +-
 ....Settings.enable-site-specific-quirks.html |   2 +-
 ...erty.Settings.enable-smooth-scrolling.html |   2 +-
 ...ty.Settings.enable-spatial-navigation.html |   2 +-
 ...roperty.Settings.enable-tabs-to-links.html |   2 +-
 .../property.Settings.enable-webaudio.html    |   2 +-
 .../property.Settings.enable-webgl.html       |   2 +-
 .../property.Settings.enable-webrtc.html      |   2 +-
 ...able-write-console-messages-to-stdout.html |   2 +-
 ...property.Settings.fantasy-font-family.html |   2 +-
 ...Settings.hardware-acceleration-policy.html |   2 +-
 ...tings.javascript-can-access-clipboard.html |   2 +-
 ...script-can-open-windows-automatically.html |   2 +-
 ...oad-icons-ignoring-image-load-setting.html |   2 +-
 ...tent-types-requiring-hardware-support.html |   2 +-
 ...Settings.media-playback-allows-inline.html |   2 +-
 ....media-playback-requires-user-gesture.html |   2 +-
 .../property.Settings.minimum-font-size.html  |   2 +-
 ...operty.Settings.monospace-font-family.html |   2 +-
 ...perty.Settings.pictograph-font-family.html |   2 +-
 .../property.Settings.print-backgrounds.html  |   2 +-
 ...perty.Settings.sans-serif-font-family.html |   2 +-
 .../property.Settings.serif-font-family.html  |   2 +-
 .../property.Settings.user-agent.html         |   2 +-
 .../property.Settings.zoom-text-only.html     |   2 +-
 .../property.URIRequest.uri.html              |   2 +-
 .../property.URIResponse.content-length.html  |   2 +-
 .../property.URIResponse.http-headers.html    |   2 +-
 .../property.URIResponse.mime-type.html       |   2 +-
 .../property.URIResponse.status-code.html     |   2 +-
 ...operty.URIResponse.suggested-filename.html |   2 +-
 .../property.URIResponse.uri.html             |   2 +-
 ...perty.URISchemeResponse.stream-length.html |   2 +-
 .../property.URISchemeResponse.stream.html    |   2 +-
 .../property.UserContentFilterStore.path.html |   2 +-
 ...PermissionRequest.is-for-audio-device.html |   2 +-
 ...PermissionRequest.is-for-video-device.html |   2 +-
 .../property.UserMessage.fd-list.html         |   2 +-
 .../property.UserMessage.name.html            |   2 +-
 .../property.UserMessage.parameters.html      |   2 +-
 ...y.WebContext.memory-pressure-settings.html |   2 +-
 ...roperty.WebContext.time-zone-override.html |   2 +-
 ...property.WebInspector.attached-height.html |   2 +-
 .../property.WebInspector.can-attach.html     |   2 +-
 .../property.WebInspector.inspected-uri.html  |   2 +-
 .../property.WebResource.response.html        |   2 +-
 .../property.WebResource.uri.html             |   2 +-
 ....WebView.automation-presentation-type.html |   2 +-
 ...property.WebView.camera-capture-state.html |   2 +-
 ...bView.default-content-security-policy.html |   2 +-
 ...roperty.WebView.display-capture-state.html |   2 +-
 .../property.WebView.editable.html            |   2 +-
 ...perty.WebView.estimated-load-progress.html |   2 +-
 .../property.WebView.favicon.html             |   2 +-
 ...y.WebView.is-controlled-by-automation.html |   2 +-
 .../property.WebView.is-loading.html          |   2 +-
 .../property.WebView.is-muted.html            |   2 +-
 .../property.WebView.is-playing-audio.html    |   2 +-
 ...rty.WebView.is-web-process-responsive.html |   2 +-
 ...erty.WebView.microphone-capture-state.html |   2 +-
 .../property.WebView.network-session.html     |   2 +-
 .../property.WebView.page-id.html             |   2 +-
 .../property.WebView.related-view.html        |   2 +-
 .../property.WebView.settings.html            |   2 +-
 .../webkitgtk-6.0/property.WebView.title.html |   2 +-
 .../webkitgtk-6.0/property.WebView.uri.html   |   2 +-
 ...property.WebView.user-content-manager.html |   2 +-
 .../property.WebView.web-context.html         |   2 +-
 .../property.WebView.web-extension-mode.html  |   2 +-
 .../property.WebView.website-policies.html    |   2 +-
 .../property.WebView.zoom-level.html          |   2 +-
 ...bsiteDataManager.base-cache-directory.html |   2 +-
 ...ebsiteDataManager.base-data-directory.html |   2 +-
 ...perty.WebsiteDataManager.is-ephemeral.html |   2 +-
 ...bsiteDataManager.origin-storage-ratio.html |   2 +-
 ...ebsiteDataManager.total-storage-ratio.html |   2 +-
 .../property.WebsitePolicies.autoplay.html    |   2 +-
 .../property.WindowProperties.fullscreen.html |   2 +-
 .../property.WindowProperties.geometry.html   |   2 +-
 ....WindowProperties.locationbar-visible.html |   2 +-
 ...erty.WindowProperties.menubar-visible.html |   2 +-
 .../property.WindowProperties.resizable.html  |   2 +-
 ...y.WindowProperties.scrollbars-visible.html |   2 +-
 ...ty.WindowProperties.statusbar-visible.html |   2 +-
 ...erty.WindowProperties.toolbar-visible.html |   2 +-
 ...l.AuthenticationRequest.authenticated.html |   2 +-
 ...ignal.AuthenticationRequest.cancelled.html |   2 +-
 ...nal.AutomationSession.create-web-view.html |   2 +-
 .../signal.AutomationSession.will-close.html  |   2 +-
 .../signal.BackForwardList.changed.html       |   2 +-
 .../signal.ColorChooserRequest.finished.html  |   2 +-
 .../signal.CookieManager.changed.html         |   2 +-
 .../signal.Download.created-destination.html  |   2 +-
 .../signal.Download.decide-destination.html   |   2 +-
 .../webkitgtk-6.0/signal.Download.failed.html |   2 +-
 .../signal.Download.finished.html             |   2 +-
 .../signal.Download.received-data.html        |   2 +-
 .../signal.EditorState.changed.html           |   2 +-
 ...ignal.FaviconDatabase.favicon-changed.html |   2 +-
 ...signal.FindController.counted-matches.html |   2 +-
 ...al.FindController.failed-to-find-text.html |   2 +-
 .../signal.FindController.found-text.html     |   2 +-
 .../signal.GeolocationManager.start.html      |   2 +-
 .../signal.GeolocationManager.stop.html       |   2 +-
 .../signal.InputMethodContext.committed.html  |   2 +-
 ...InputMethodContext.delete-surrounding.html |   2 +-
 ...al.InputMethodContext.preedit-changed.html |   2 +-
 ...l.InputMethodContext.preedit-finished.html |   2 +-
 ...al.InputMethodContext.preedit-started.html |   2 +-
 ...ignal.NetworkSession.download-started.html |   2 +-
 .../signal.Notification.clicked.html          |   2 +-
 .../signal.Notification.closed.html           |   2 +-
 .../signal.OptionMenu.close.html              |   2 +-
 .../signal.PrintOperation.failed.html         |   2 +-
 .../signal.PrintOperation.finished.html       |   2 +-
 ...ontentManager.script-message-received.html |   2 +-
 ...er.script-message-with-reply-received.html |   2 +-
 .../signal.WebContext.automation-started.html |   2 +-
 ...t.initialize-notification-permissions.html |   2 +-
 ...ext.initialize-web-process-extensions.html |   2 +-
 ...gnal.WebContext.user-message-received.html |   2 +-
 .../signal.WebInspector.attach.html           |   2 +-
 .../signal.WebInspector.bring-to-front.html   |   2 +-
 .../signal.WebInspector.closed.html           |   2 +-
 .../signal.WebInspector.detach.html           |   2 +-
 .../signal.WebInspector.open-window.html      |   2 +-
 ...al.WebResource.failed-with-tls-errors.html |   2 +-
 .../signal.WebResource.failed.html            |   2 +-
 .../signal.WebResource.finished.html          |   2 +-
 .../signal.WebResource.sent-request.html      |   2 +-
 .../signal.WebView.authenticate.html          |   2 +-
 .../webkitgtk-6.0/signal.WebView.close.html   |   2 +-
 ...signal.WebView.context-menu-dismissed.html |   2 +-
 .../signal.WebView.context-menu.html          |   2 +-
 .../webkitgtk-6.0/signal.WebView.create.html  |   2 +-
 .../signal.WebView.decide-policy.html         |   2 +-
 .../signal.WebView.enter-fullscreen.html      |   2 +-
 ...nal.WebView.insecure-content-detected.html |   2 +-
 .../signal.WebView.leave-fullscreen.html      |   2 +-
 .../signal.WebView.load-changed.html          |   2 +-
 ...l.WebView.load-failed-with-tls-errors.html |   2 +-
 .../signal.WebView.load-failed.html           |   2 +-
 .../signal.WebView.mouse-target-changed.html  |   2 +-
 .../signal.WebView.permission-request.html    |   2 +-
 .../webkitgtk-6.0/signal.WebView.print.html   |   2 +-
 ...signal.WebView.query-permission-state.html |   2 +-
 .../signal.WebView.ready-to-show.html         |   2 +-
 .../signal.WebView.resource-load-started.html |   2 +-
 .../signal.WebView.run-as-modal.html          |   2 +-
 .../signal.WebView.run-color-chooser.html     |   2 +-
 .../signal.WebView.run-file-chooser.html      |   2 +-
 .../signal.WebView.script-dialog.html         |   2 +-
 .../signal.WebView.show-notification.html     |   2 +-
 .../signal.WebView.show-option-menu.html      |   2 +-
 .../signal.WebView.submit-form.html           |   2 +-
 .../signal.WebView.user-message-received.html |   2 +-
 ...signal.WebView.web-process-terminated.html |   2 +-
 .../webkitgtk-6.0/struct.ApplicationInfo.html |   2 +-
 .../webkitgtk-6.0/struct.Credential.html      |   2 +-
 .../webkitgtk-6.0/struct.Feature.html         |   2 +-
 .../webkitgtk-6.0/struct.FeatureList.html     |   2 +-
 .../struct.GeolocationPosition.html           |   2 +-
 .../webkitgtk-6.0/struct.ITPFirstParty.html   |   2 +-
 .../webkitgtk-6.0/struct.ITPThirdParty.html   |   2 +-
 .../struct.InputMethodUnderline.html          |   2 +-
 .../struct.MemoryPressureSettings.html        |   2 +-
 .../struct.NavigationAction.html              |   2 +-
 .../struct.NetworkProxySettings.html          |   2 +-
 .../webkitgtk-6.0/struct.OptionMenuItem.html  |   2 +-
 .../struct.PermissionStateQuery.html          |   2 +-
 .../webkitgtk-6.0/struct.ScriptDialog.html    |   2 +-
 .../struct.ScriptMessageReply.html            |   2 +-
 .../webkitgtk-6.0/struct.SecurityOrigin.html  |   2 +-
 .../struct.UserContentFilter.html             |   2 +-
 .../webkitgtk-6.0/struct.UserScript.html      |   2 +-
 .../webkitgtk-6.0/struct.UserStyleSheet.html  |   2 +-
 .../struct.WebViewSessionState.html           |   2 +-
 .../webkitgtk-6.0/struct.WebsiteData.html     |   2 +-
 .../type_func.DownloadError.quark.html        |   2 +-
 .../type_func.FaviconDatabaseError.quark.html |   2 +-
 .../type_func.JavascriptError.quark.html      |   2 +-
 .../type_func.MediaError.quark.html           |   2 +-
 .../type_func.NetworkError.quark.html         |   2 +-
 .../type_func.NetworkSession.get_default.html |   2 +-
 ...kSession.set_memory_pressure_settings.html |   2 +-
 .../type_func.PolicyError.quark.html          |   2 +-
 .../type_func.PrintError.quark.html           |   2 +-
 ...ype_func.Settings.font_size_to_pixels.html |   2 +-
 ...ype_func.Settings.font_size_to_points.html |   2 +-
 .../type_func.Settings.get_all_features.html  |   2 +-
 ...unc.Settings.get_development_features.html |   2 +-
 ...nc.Settings.get_experimental_features.html |   2 +-
 .../type_func.SnapshotError.quark.html        |   2 +-
 ...ype_func.UserContentFilterError.quark.html |   2 +-
 .../type_func.UserMessageError.quark.html     |   2 +-
 .../type_func.WebContext.get_default.html     |   2 +-
 .../vfunc.InputMethodContext.committed.html   |   2 +-
 ...InputMethodContext.delete_surrounding.html |   2 +-
 ...c.InputMethodContext.filter_key_event.html |   2 +-
 .../vfunc.InputMethodContext.get_preedit.html |   2 +-
 ...InputMethodContext.notify_cursor_area.html |   2 +-
 ...nc.InputMethodContext.notify_focus_in.html |   2 +-
 ...c.InputMethodContext.notify_focus_out.html |   2 +-
 ...InputMethodContext.notify_surrounding.html |   2 +-
 ...nc.InputMethodContext.preedit_changed.html |   2 +-
 ...c.InputMethodContext.preedit_finished.html |   2 +-
 ...nc.InputMethodContext.preedit_started.html |   2 +-
 .../vfunc.InputMethodContext.reset.html       |   2 +-
 ...InputMethodContext.set_enable_preedit.html |   2 +-
 .../vfunc.PermissionRequest.allow.html        |   2 +-
 .../vfunc.PermissionRequest.deny.html         |   2 +-
 .../vfunc.WebView.authenticate.html           |   2 +-
 .../webkitgtk-6.0/vfunc.WebView.close.html    |   2 +-
 .../vfunc.WebView.context_menu.html           |   2 +-
 .../vfunc.WebView.context_menu_dismissed.html |   2 +-
 .../webkitgtk-6.0/vfunc.WebView.create.html   |   2 +-
 .../vfunc.WebView.decide_policy.html          |   2 +-
 .../vfunc.WebView.enter_fullscreen.html       |   2 +-
 ...unc.WebView.insecure_content_detected.html |   2 +-
 .../vfunc.WebView.leave_fullscreen.html       |   2 +-
 .../vfunc.WebView.load_changed.html           |   2 +-
 .../vfunc.WebView.load_failed.html            |   2 +-
 ...c.WebView.load_failed_with_tls_errors.html |   2 +-
 .../vfunc.WebView.mouse_target_changed.html   |   2 +-
 .../vfunc.WebView.permission_request.html     |   2 +-
 .../webkitgtk-6.0/vfunc.WebView.print.html    |   2 +-
 .../vfunc.WebView.query_permission_state.html |   2 +-
 .../vfunc.WebView.ready_to_show.html          |   2 +-
 .../vfunc.WebView.resource_load_started.html  |   2 +-
 .../vfunc.WebView.run_as_modal.html           |   2 +-
 .../vfunc.WebView.run_color_chooser.html      |   2 +-
 .../vfunc.WebView.run_file_chooser.html       |   2 +-
 .../vfunc.WebView.script_dialog.html          |   2 +-
 .../vfunc.WebView.show_notification.html      |   2 +-
 .../vfunc.WebView.show_option_menu.html       |   2 +-
 .../vfunc.WebView.submit_form.html            |   2 +-
 .../vfunc.WebView.user_message_received.html  |   2 +-
 .../vfunc.WebView.web_process_crashed.html    |   2 +-
 .../vfunc.WebView.web_process_terminated.html |   2 +-
 ...WebProcessExtensionInitializeFunction.html |   2 +-
 ...tensionInitializeWithUserDataFunction.html |   2 +-
 .../class.ContextMenu.html                    |   2 +-
 .../class.ContextMenuItem.html                |   2 +-
 .../class.Frame.html                          |   2 +-
 .../class.HitTestResult.html                  |   2 +-
 .../class.ScriptWorld.html                    |   2 +-
 .../class.URIRequest.html                     |   2 +-
 .../class.URIResponse.html                    |   2 +-
 .../class.UserMessage.html                    |   2 +-
 .../class.WebEditor.html                      |   2 +-
 .../class.WebFormManager.html                 |   2 +-
 .../class.WebHitTestResult.html               |   2 +-
 .../class.WebPage.html                        |   2 +-
 .../class.WebProcessExtension.html            |   2 +-
 .../classes_hierarchy.html                    |   2 +-
 .../ctor.ContextMenu.new.html                 |   2 +-
 .../ctor.ContextMenu.new_with_items.html      |   2 +-
 ...ctor.ContextMenuItem.new_from_gaction.html |   2 +-
 ...ContextMenuItem.new_from_stock_action.html |   2 +-
 ...Item.new_from_stock_action_with_label.html |   2 +-
 .../ctor.ContextMenuItem.new_separator.html   |   2 +-
 ...ctor.ContextMenuItem.new_with_submenu.html |   2 +-
 .../ctor.ScriptWorld.new.html                 |   2 +-
 .../ctor.ScriptWorld.new_with_name.html       |   2 +-
 .../ctor.URIRequest.new.html                  |   2 +-
 .../ctor.UserMessage.new.html                 |   2 +-
 .../ctor.UserMessage.new_with_fd_list.html    |   2 +-
 .../enum.ConsoleMessageLevel.html             |   2 +-
 .../enum.ConsoleMessageSource.html            |   2 +-
 .../enum.ContextMenuAction.html               |   2 +-
 .../enum.UserMessageError.html                |   2 +-
 .../flags.HitTestResultContext.html           |   2 +-
 .../index.html                                |   4 +-
 .../method.ConsoleMessage.copy.html           |   2 +-
 .../method.ConsoleMessage.free.html           |   2 +-
 .../method.ConsoleMessage.get_level.html      |   2 +-
 .../method.ConsoleMessage.get_line.html       |   2 +-
 .../method.ConsoleMessage.get_source.html     |   2 +-
 .../method.ConsoleMessage.get_source_id.html  |   2 +-
 .../method.ConsoleMessage.get_text.html       |   2 +-
 .../method.ContextMenu.append.html            |   2 +-
 .../method.ContextMenu.first.html             |   2 +-
 .../method.ContextMenu.get_event.html         |   2 +-
 ...thod.ContextMenu.get_item_at_position.html |   2 +-
 .../method.ContextMenu.get_items.html         |   2 +-
 .../method.ContextMenu.get_n_items.html       |   2 +-
 .../method.ContextMenu.get_user_data.html     |   2 +-
 .../method.ContextMenu.insert.html            |   2 +-
 .../method.ContextMenu.last.html              |   2 +-
 .../method.ContextMenu.move_item.html         |   2 +-
 .../method.ContextMenu.prepend.html           |   2 +-
 .../method.ContextMenu.remove.html            |   2 +-
 .../method.ContextMenu.remove_all.html        |   2 +-
 .../method.ContextMenu.set_user_data.html     |   2 +-
 .../method.ContextMenuItem.get_gaction.html   |   2 +-
 ...thod.ContextMenuItem.get_stock_action.html |   2 +-
 .../method.ContextMenuItem.get_submenu.html   |   2 +-
 .../method.ContextMenuItem.is_separator.html  |   2 +-
 .../method.ContextMenuItem.set_submenu.html   |   2 +-
 .../method.Frame.get_id.html                  |   2 +-
 .../method.Frame.get_js_context.html          |   2 +-
 ...Frame.get_js_context_for_script_world.html |   2 +-
 .../method.Frame.get_uri.html                 |   2 +-
 .../method.Frame.is_main_frame.html           |   2 +-
 ...hod.HitTestResult.context_is_editable.html |   2 +-
 ...method.HitTestResult.context_is_image.html |   2 +-
 .../method.HitTestResult.context_is_link.html |   2 +-
 ...method.HitTestResult.context_is_media.html |   2 +-
 ...od.HitTestResult.context_is_scrollbar.html |   2 +-
 ...od.HitTestResult.context_is_selection.html |   2 +-
 .../method.HitTestResult.get_context.html     |   2 +-
 .../method.HitTestResult.get_image_uri.html   |   2 +-
 .../method.HitTestResult.get_link_label.html  |   2 +-
 .../method.HitTestResult.get_link_title.html  |   2 +-
 .../method.HitTestResult.get_link_uri.html    |   2 +-
 .../method.HitTestResult.get_media_uri.html   |   2 +-
 .../method.ScriptWorld.get_name.html          |   2 +-
 .../method.URIRequest.get_http_headers.html   |   2 +-
 .../method.URIRequest.get_http_method.html    |   2 +-
 .../method.URIRequest.get_uri.html            |   2 +-
 .../method.URIRequest.set_uri.html            |   2 +-
 ...method.URIResponse.get_content_length.html |   2 +-
 .../method.URIResponse.get_http_headers.html  |   2 +-
 .../method.URIResponse.get_mime_type.html     |   2 +-
 .../method.URIResponse.get_status_code.html   |   2 +-
 ...od.URIResponse.get_suggested_filename.html |   2 +-
 .../method.URIResponse.get_uri.html           |   2 +-
 .../method.UserMessage.get_fd_list.html       |   2 +-
 .../method.UserMessage.get_name.html          |   2 +-
 .../method.UserMessage.get_parameters.html    |   2 +-
 .../method.UserMessage.send_reply.html        |   2 +-
 .../method.WebEditor.get_page.html            |   2 +-
 ....WebHitTestResult.context_is_editable.html |   2 +-
 ...hod.WebHitTestResult.context_is_image.html |   2 +-
 ...thod.WebHitTestResult.context_is_link.html |   2 +-
 ...hod.WebHitTestResult.context_is_media.html |   2 +-
 ...WebHitTestResult.context_is_scrollbar.html |   2 +-
 ...WebHitTestResult.context_is_selection.html |   2 +-
 .../method.WebHitTestResult.get_context.html  |   2 +-
 ...method.WebHitTestResult.get_image_uri.html |   2 +-
 .../method.WebHitTestResult.get_js_node.html  |   2 +-
 ...ethod.WebHitTestResult.get_link_label.html |   2 +-
 ...ethod.WebHitTestResult.get_link_title.html |   2 +-
 .../method.WebHitTestResult.get_link_uri.html |   2 +-
 ...method.WebHitTestResult.get_media_uri.html |   2 +-
 .../method.WebPage.get_editor.html            |   2 +-
 .../method.WebPage.get_form_manager.html      |   2 +-
 .../method.WebPage.get_id.html                |   2 +-
 .../method.WebPage.get_main_frame.html        |   2 +-
 .../method.WebPage.get_uri.html               |   2 +-
 .../method.WebPage.send_message_to_view.html  |   2 +-
 ...d.WebPage.send_message_to_view_finish.html |   2 +-
 .../method.WebProcessExtension.get_page.html  |   2 +-
 ...cessExtension.send_message_to_context.html |   2 +-
 ...ension.send_message_to_context_finish.html |   2 +-
 .../property.HitTestResult.context.html       |   2 +-
 .../property.HitTestResult.image-uri.html     |   2 +-
 .../property.HitTestResult.link-label.html    |   2 +-
 .../property.HitTestResult.link-title.html    |   2 +-
 .../property.HitTestResult.link-uri.html      |   2 +-
 .../property.HitTestResult.media-uri.html     |   2 +-
 .../property.URIRequest.uri.html              |   2 +-
 .../property.URIResponse.content-length.html  |   2 +-
 .../property.URIResponse.http-headers.html    |   2 +-
 .../property.URIResponse.mime-type.html       |   2 +-
 .../property.URIResponse.status-code.html     |   2 +-
 ...operty.URIResponse.suggested-filename.html |   2 +-
 .../property.URIResponse.uri.html             |   2 +-
 .../property.UserMessage.fd-list.html         |   2 +-
 .../property.UserMessage.name.html            |   2 +-
 .../property.UserMessage.parameters.html      |   2 +-
 .../property.WebPage.uri.html                 |   2 +-
 ...nal.ScriptWorld.window-object-cleared.html |   2 +-
 .../signal.WebEditor.selection-changed.html   |   2 +-
 ...bFormManager.form-controls-associated.html |   2 +-
 ...WebFormManager.will-send-submit-event.html |   2 +-
 ...ignal.WebFormManager.will-submit-form.html |   2 +-
 .../signal.WebPage.console-message-sent.html  |   2 +-
 .../signal.WebPage.context-menu.html          |   2 +-
 .../signal.WebPage.document-loaded.html       |   2 +-
 .../signal.WebPage.send-request.html          |   2 +-
 .../signal.WebPage.user-message-received.html |   2 +-
 ...gnal.WebProcessExtension.page-created.html |   2 +-
 ...rocessExtension.user-message-received.html |   2 +-
 .../struct.ConsoleMessage.html                |   2 +-
 .../type_func.ScriptWorld.get_default.html    |   2 +-
 .../type_func.UserMessage.error_quark.html    |   2 +-
 ...ebFormManager.input_element_auto_fill.html |   2 +-
 ...mManager.input_element_is_auto_filled.html |   2 +-
 ...mManager.input_element_is_user_edited.html |   2 +-
 NEWS                                          |  13 +
 .../JavaScriptCore/dfg/DFGSpeculativeJIT.cpp  |  16 +-
 Source/JavaScriptCore/yarr/YarrPattern.cpp    |  11 +-
 .../Preferences/UnifiedWebPreferences.yaml    |  15 +
 Source/WTF/wtf/Logger.cpp                     |  11 +
 Source/WTF/wtf/Logger.h                       |  58 +-
 Source/WTF/wtf/PlatformJSCOnly.cmake          |  17 +-
 Source/WTF/wtf/URLHelpers.cpp                 |   6 +-
 Source/WTF/wtf/glib/GRefPtr.h                 |  13 +-
 Source/WTF/wtf/glib/GSocketMonitor.cpp        |   2 +-
 Source/WTF/wtf/glib/Sandbox.cpp               |   3 +-
 .../Modules/mediasource/MediaSource.cpp       |   5 +
 .../Modules/mediastream/MediaStream.cpp       |  11 +-
 .../Modules/mediastream/MediaStreamTrack.h    |   4 +
 .../mediastream/MediaStreamTrackProcessor.cpp |   1 +
 .../mediastream/PeerConnectionBackend.cpp     | 171 ++++-
 .../mediastream/PeerConnectionBackend.h       |  25 +
 .../Modules/mediastream/RTCController.cpp     |  22 +-
 .../Modules/mediastream/RTCController.h       |   9 +-
 .../Modules/mediastream/RTCPeerConnection.cpp |  56 +-
 .../Modules/mediastream/RTCPeerConnection.h   |   4 +-
 .../mediastream/RTCRtpEncodingParameters.h    |   6 +-
 .../mediastream/RTCRtpEncodingParameters.idl  |   2 +-
 .../gstreamer/GStreamerMediaEndpoint.cpp      | 659 ++++++++++++------
 .../gstreamer/GStreamerMediaEndpoint.h        |  25 +-
 .../GStreamerPeerConnectionBackend.cpp        |  34 +-
 .../GStreamerPeerConnectionBackend.h          |   9 +-
 .../gstreamer/GStreamerRtpReceiverBackend.cpp |  67 +-
 .../gstreamer/GStreamerRtpReceiverBackend.h   |   6 +-
 .../gstreamer/GStreamerRtpSenderBackend.cpp   |  33 +-
 .../GStreamerRtpTransceiverBackend.cpp        |  63 +-
 .../gstreamer/GStreamerStatsCollector.cpp     |  41 +-
 .../gstreamer/GStreamerWebRTCUtils.cpp        | 131 +++-
 .../gstreamer/GStreamerWebRTCUtils.h          |  43 +-
 .../libwebrtc/LibWebRTCMediaEndpoint.cpp      |  21 +-
 .../LibWebRTCPeerConnectionBackend.cpp        |   6 +
 .../LibWebRTCPeerConnectionBackend.h          |   2 +
 .../mediastream/libwebrtc/LibWebRTCUtils.cpp  |   6 +-
 .../Modules/notifications/Notification.cpp    |   1 +
 .../css/color/CSSUnresolvedAbsoluteColor.cpp  |   1 +
 Source/WebCore/dom/Document.cpp               |  11 +-
 Source/WebCore/dom/Document.h                 |   2 +-
 Source/WebCore/dom/ScriptElement.cpp          |   4 +-
 Source/WebCore/dom/ScriptRunner.cpp           |  10 +
 Source/WebCore/dom/ScriptRunner.h             |   3 +
 Source/WebCore/html/HTMLElement.cpp           |   4 +-
 .../inline/InlineFormattingContext.cpp        |   2 +-
 .../inline/InlineLineBuilder.cpp              |  70 +-
 .../inline/InlineLineBuilder.h                |   3 +-
 Source/WebCore/loader/FrameLoader.cpp         |   2 +-
 Source/WebCore/loader/SubframeLoader.cpp      |  11 +
 ...lingTreeOverflowScrollProxyNodeNicosia.cpp |   1 +
 .../ScrollingTreePositionedNodeNicosia.cpp    |   1 +
 .../WebCore/platform/LowPowerModeNotifier.h   |   2 +
 Source/WebCore/platform/SourcesGStreamer.txt  |   4 +
 Source/WebCore/platform/TextureMapper.cmake   |   6 +
 .../WebKitWebAudioSourceGStreamer.cpp         |   1 -
 .../WebCore/platform/glib/UserAgentGLib.cpp   |   2 +-
 .../WebCore/platform/glib/UserAgentQuirks.cpp |   1 +
 .../platform/graphics/TrackPrivateBase.h      |   2 +-
 .../gbm/GraphicsContextGLGBMTextureMapper.h   |   2 +
 .../gstreamer/AudioTrackPrivateGStreamer.cpp  |  10 +-
 .../gstreamer/AudioTrackPrivateGStreamer.h    |  22 +-
 .../graphics/gstreamer/GStreamerCommon.cpp    | 240 ++++++-
 .../graphics/gstreamer/GStreamerCommon.h      |  24 +
 .../gstreamer/GStreamerRegistryScanner.cpp    |  11 +-
 .../gstreamer/GStreamerRegistryScanner.h      |   5 +-
 .../InbandTextTrackPrivateGStreamer.cpp       |  12 +-
 .../InbandTextTrackPrivateGStreamer.h         |  10 +-
 .../gstreamer/MediaPlayerPrivateGStreamer.cpp | 126 ++--
 .../gstreamer/MediaPlayerPrivateGStreamer.h   |  39 +-
 .../graphics/gstreamer/TextSinkGStreamer.cpp  |   6 +-
 .../gstreamer/TrackPrivateBaseGStreamer.cpp   | 124 ++--
 .../gstreamer/TrackPrivateBaseGStreamer.h     |  12 +-
 .../gstreamer/VideoFrameMetadataGStreamer.cpp |   2 -
 .../gstreamer/VideoTrackPrivateGStreamer.cpp  |  10 +-
 .../gstreamer/VideoTrackPrivateGStreamer.h    |  22 +-
 .../gstreamer/WebKitWebSourceGStreamer.cpp    |  67 +-
 .../graphics/gstreamer/mse/AppendPipeline.cpp |  66 +-
 .../graphics/gstreamer/mse/AppendPipeline.h   |   8 +-
 .../mse/MediaPlayerPrivateGStreamerMSE.cpp    |   7 +-
 .../mse/MediaSourcePrivateGStreamer.cpp       |  34 +
 .../mse/MediaSourcePrivateGStreamer.h         |   8 +
 .../mse/MediaSourceTrackGStreamer.cpp         |   9 +-
 .../gstreamer/mse/MediaSourceTrackGStreamer.h |   6 +-
 .../mse/SourceBufferPrivateGStreamer.cpp      |  42 +-
 .../mse/SourceBufferPrivateGStreamer.h        |   3 +
 .../graphics/gstreamer/mse/TrackQueue.cpp     |  30 +-
 .../graphics/gstreamer/mse/TrackQueue.h       |   4 +-
 .../mse/WebKitMediaSourceGStreamer.cpp        |  57 +-
 .../mse/WebKitMediaSourceGStreamer.h          |   2 +-
 .../ImageBufferSkiaAcceleratedBackend.cpp     |  36 +-
 .../platform/graphics/texmap/FloatPlane3D.cpp |  43 ++
 .../platform/graphics/texmap/FloatPlane3D.h   |  58 ++
 .../graphics/texmap/FloatPolygon3D.cpp        | 119 ++++
 .../platform/graphics/texmap/FloatPolygon3D.h |  61 ++
 .../graphics/texmap/TextureMapper.cpp         |  63 ++
 .../platform/graphics/texmap/TextureMapper.h  |   2 +
 .../graphics/texmap/TextureMapperLayer.cpp    | 122 +---
 .../graphics/texmap/TextureMapperLayer.h      |   7 +-
 .../TextureMapperLayer3DRenderingContext.cpp  | 144 ++++
 .../TextureMapperLayer3DRenderingContext.h    |  96 +++
 .../texmap/TextureMapperPlatformLayer.h       |   2 +
 .../transforms/TransformationMatrix.cpp       |   7 +
 .../transforms/TransformationMatrix.h         |   2 +
 .../gstreamer/GStreamerElementHarness.cpp     |  13 +-
 .../MediaRecorderPrivateGStreamer.cpp         | 158 ++++-
 .../MediaRecorderPrivateGStreamer.h           |   9 +-
 .../mediastream/RealtimeMediaSource.cpp       |   7 +
 .../mediastream/RealtimeMediaSource.h         |   4 +
 .../gstreamer/GStreamerAudioCaptureSource.cpp |  10 +-
 .../gstreamer/GStreamerAudioCaptureSource.h   |   2 +
 .../gstreamer/GStreamerAudioRTPPacketizer.cpp | 165 +++++
 .../gstreamer/GStreamerAudioRTPPacketizer.h   |  44 ++
 .../GStreamerCaptureDeviceManager.cpp         |   4 +-
 .../gstreamer/GStreamerCaptureDeviceManager.h |   2 +-
 .../gstreamer/GStreamerCapturer.cpp           |  25 +
 .../mediastream/gstreamer/GStreamerCapturer.h |   3 +
 .../GStreamerIncomingTrackProcessor.cpp       |  22 +-
 .../gstreamer/GStreamerMediaStreamSource.cpp  |  72 +-
 .../gstreamer/GStreamerMockDevice.cpp         |   2 +-
 .../gstreamer/GStreamerRTPPacketizer.cpp      | 302 ++++++++
 .../gstreamer/GStreamerRTPPacketizer.h        |  88 +++
 .../gstreamer/GStreamerVideoCaptureSource.cpp |  12 +-
 .../gstreamer/GStreamerVideoCaptureSource.h   |   2 +
 .../gstreamer/GStreamerVideoCapturer.cpp      |   4 +-
 .../gstreamer/GStreamerVideoRTPPacketizer.cpp | 248 +++++++
 .../gstreamer/GStreamerVideoRTPPacketizer.h   |  46 ++
 .../gstreamer/GStreamerWebRTCCommon.h         |   1 +
 .../gstreamer/GStreamerWebRTCLogSink.cpp      |  93 +++
 .../gstreamer/GStreamerWebRTCLogSink.h        |  50 ++
 .../MockRealtimeAudioSourceGStreamer.cpp      |  18 +-
 .../MockRealtimeAudioSourceGStreamer.h        |   3 +
 .../MockRealtimeVideoSourceGStreamer.cpp      |   8 +
 .../MockRealtimeVideoSourceGStreamer.h        |   2 +
 .../RealtimeIncomingVideoSourceGStreamer.cpp  |   7 +-
 .../RealtimeOutgoingAudioSourceGStreamer.cpp  | 158 +----
 .../RealtimeOutgoingAudioSourceGStreamer.h    |  25 +-
 .../RealtimeOutgoingMediaSourceGStreamer.cpp  | 599 +++++++++++-----
 .../RealtimeOutgoingMediaSourceGStreamer.h    |  65 +-
 .../RealtimeOutgoingVideoSourceGStreamer.cpp  | 314 ++-------
 .../RealtimeOutgoingVideoSourceGStreamer.h    |  31 +-
 .../GStreamerVideoDecoderFactory.cpp          |  15 +-
 .../rendering/GridTrackSizingAlgorithm.cpp    |   5 +-
 Source/WebCore/rendering/RenderBox.cpp        |   9 +
 Source/WebCore/rendering/RenderBoxInlines.h   |   7 +
 Source/WebCore/rendering/RenderReplaced.cpp   |  15 +-
 Source/WebCore/rendering/RenderReplaced.h     |   1 +
 .../UserInterface/Base/Utilities.js           |   2 +-
 .../NetworkConnectionToWebProcess.cpp         |  51 +-
 .../WebKit/NetworkProcess/NetworkProcess.cpp  |  37 +-
 Source/WebKit/NetworkProcess/NetworkProcess.h |   5 +-
 .../WebKit/NetworkProcess/NetworkSession.cpp  |   2 +-
 .../ServiceWorker/WebSWServerConnection.cpp   |   2 +-
 .../WebSharedWorkerServerConnection.cpp       |   2 +-
 .../glib/WebKitCachedResolver.cpp             |   4 +-
 .../NetworkProcess/soup/WebSocketTaskSoup.cpp |   2 +-
 .../UIProcess/Downloads/DownloadProxy.cpp     |  11 +-
 .../glib/RemoteInspectorHTTPServer.cpp        |   2 +-
 .../UIProcess/linux/MemoryPressureMonitor.cpp |   6 +-
 Source/WebKit/gtk/NEWS                        |  13 +
 Source/bmalloc/CMakeLists.txt                 |   2 +-
 Source/cmake/OptionsGTK.cmake                 |  14 +-
 Source/cmake/WebKitCompilerFlags.cmake        |   4 -
 Tools/TestWebKitAPI/PlatformJSCOnly.cmake     |   3 +
 .../Tests/WebCore/UserAgentQuirks.cpp         |   1 +
 1552 files changed, 6166 insertions(+), 3002 deletions(-)
 create mode 100644 Source/WebCore/platform/graphics/texmap/FloatPlane3D.cpp
 create mode 100644 Source/WebCore/platform/graphics/texmap/FloatPlane3D.h
 create mode 100644 Source/WebCore/platform/graphics/texmap/FloatPolygon3D.cpp
 create mode 100644 Source/WebCore/platform/graphics/texmap/FloatPolygon3D.h
 create mode 100644 Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.cpp
 create mode 100644 Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.h
 create mode 100644 Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioRTPPacketizer.cpp
 create mode 100644 Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioRTPPacketizer.h
 create mode 100644 Source/WebCore/platform/mediastream/gstreamer/GStreamerRTPPacketizer.cpp
 create mode 100644 Source/WebCore/platform/mediastream/gstreamer/GStreamerRTPPacketizer.h
 create mode 100644 Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoRTPPacketizer.cpp
 create mode 100644 Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoRTPPacketizer.h
 create mode 100644 Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.cpp
 create mode 100644 Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.h

diff --git a/Documentation/jsc-glib-6.0/callback.ClassDeletePropertyFunction.html b/Documentation/jsc-glib-6.0/callback.ClassDeletePropertyFunction.html
index 21c4216fcd..79a2628ae6 100644
--- a/Documentation/jsc-glib-6.0/callback.ClassDeletePropertyFunction.html
+++ b/Documentation/jsc-glib-6.0/callback.ClassDeletePropertyFunction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/callback.ClassEnumeratePropertiesFunction.html b/Documentation/jsc-glib-6.0/callback.ClassEnumeratePropertiesFunction.html
index 7b130cf6d7..d4070313df 100644
--- a/Documentation/jsc-glib-6.0/callback.ClassEnumeratePropertiesFunction.html
+++ b/Documentation/jsc-glib-6.0/callback.ClassEnumeratePropertiesFunction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/callback.ClassGetPropertyFunction.html b/Documentation/jsc-glib-6.0/callback.ClassGetPropertyFunction.html
index 14bf41b7b8..1821902253 100644
--- a/Documentation/jsc-glib-6.0/callback.ClassGetPropertyFunction.html
+++ b/Documentation/jsc-glib-6.0/callback.ClassGetPropertyFunction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/callback.ClassHasPropertyFunction.html b/Documentation/jsc-glib-6.0/callback.ClassHasPropertyFunction.html
index 4450a9d202..0924e73893 100644
--- a/Documentation/jsc-glib-6.0/callback.ClassHasPropertyFunction.html
+++ b/Documentation/jsc-glib-6.0/callback.ClassHasPropertyFunction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/callback.ClassSetPropertyFunction.html b/Documentation/jsc-glib-6.0/callback.ClassSetPropertyFunction.html
index 42fdcbb702..8709da0d02 100644
--- a/Documentation/jsc-glib-6.0/callback.ClassSetPropertyFunction.html
+++ b/Documentation/jsc-glib-6.0/callback.ClassSetPropertyFunction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/callback.ExceptionHandler.html b/Documentation/jsc-glib-6.0/callback.ExceptionHandler.html
index 6704852634..6115b3a75c 100644
--- a/Documentation/jsc-glib-6.0/callback.ExceptionHandler.html
+++ b/Documentation/jsc-glib-6.0/callback.ExceptionHandler.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/callback.OptionsFunc.html b/Documentation/jsc-glib-6.0/callback.OptionsFunc.html
index bcac81eefc..9196bf5157 100644
--- a/Documentation/jsc-glib-6.0/callback.OptionsFunc.html
+++ b/Documentation/jsc-glib-6.0/callback.OptionsFunc.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/class.Class.html b/Documentation/jsc-glib-6.0/class.Class.html
index 74fe361926..c75a1567bb 100644
--- a/Documentation/jsc-glib-6.0/class.Class.html
+++ b/Documentation/jsc-glib-6.0/class.Class.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/class.Context.html b/Documentation/jsc-glib-6.0/class.Context.html
index 6097162b35..c863068d44 100644
--- a/Documentation/jsc-glib-6.0/class.Context.html
+++ b/Documentation/jsc-glib-6.0/class.Context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/class.Exception.html b/Documentation/jsc-glib-6.0/class.Exception.html
index 380c92b918..f1fb934d80 100644
--- a/Documentation/jsc-glib-6.0/class.Exception.html
+++ b/Documentation/jsc-glib-6.0/class.Exception.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/class.Value.html b/Documentation/jsc-glib-6.0/class.Value.html
index 17265cbeae..0b5165bf51 100644
--- a/Documentation/jsc-glib-6.0/class.Value.html
+++ b/Documentation/jsc-glib-6.0/class.Value.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/class.VirtualMachine.html b/Documentation/jsc-glib-6.0/class.VirtualMachine.html
index 6c01480e65..5f23c990e4 100644
--- a/Documentation/jsc-glib-6.0/class.VirtualMachine.html
+++ b/Documentation/jsc-glib-6.0/class.VirtualMachine.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/class.WeakValue.html b/Documentation/jsc-glib-6.0/class.WeakValue.html
index 1659ab3c84..3bbc70e4d7 100644
--- a/Documentation/jsc-glib-6.0/class.WeakValue.html
+++ b/Documentation/jsc-glib-6.0/class.WeakValue.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/classes_hierarchy.html b/Documentation/jsc-glib-6.0/classes_hierarchy.html
index bfe2ca6209..edb41a6275 100644
--- a/Documentation/jsc-glib-6.0/classes_hierarchy.html
+++ b/Documentation/jsc-glib-6.0/classes_hierarchy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/const.MAJOR_VERSION.html b/Documentation/jsc-glib-6.0/const.MAJOR_VERSION.html
index a460b70ea4..8c267bfe48 100644
--- a/Documentation/jsc-glib-6.0/const.MAJOR_VERSION.html
+++ b/Documentation/jsc-glib-6.0/const.MAJOR_VERSION.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/const.MICRO_VERSION.html b/Documentation/jsc-glib-6.0/const.MICRO_VERSION.html
index a52a3425a6..9b5528522f 100644
--- a/Documentation/jsc-glib-6.0/const.MICRO_VERSION.html
+++ b/Documentation/jsc-glib-6.0/const.MICRO_VERSION.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
@@ -100,7 +100,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
       </h4>
 
       <div class="docblock">
-        <pre><code><div class="highlight"><pre><span></span><span class="cp">#define JSC_MICRO_VERSION 3</span>
+        <pre><code><div class="highlight"><pre><span></span><span class="cp">#define JSC_MICRO_VERSION 4</span>
 </pre></div>
 </code></pre>
       </div>
diff --git a/Documentation/jsc-glib-6.0/const.MINOR_VERSION.html b/Documentation/jsc-glib-6.0/const.MINOR_VERSION.html
index dd7a6bc672..5fef684d8e 100644
--- a/Documentation/jsc-glib-6.0/const.MINOR_VERSION.html
+++ b/Documentation/jsc-glib-6.0/const.MINOR_VERSION.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/const.OPTIONS_USE_DFG.html b/Documentation/jsc-glib-6.0/const.OPTIONS_USE_DFG.html
index 65d0471b2a..3224d0d947 100644
--- a/Documentation/jsc-glib-6.0/const.OPTIONS_USE_DFG.html
+++ b/Documentation/jsc-glib-6.0/const.OPTIONS_USE_DFG.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/const.OPTIONS_USE_FTL.html b/Documentation/jsc-glib-6.0/const.OPTIONS_USE_FTL.html
index a9c410b479..4037c2b1e4 100644
--- a/Documentation/jsc-glib-6.0/const.OPTIONS_USE_FTL.html
+++ b/Documentation/jsc-glib-6.0/const.OPTIONS_USE_FTL.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/const.OPTIONS_USE_JIT.html b/Documentation/jsc-glib-6.0/const.OPTIONS_USE_JIT.html
index 8e6b0f1495..e4cadc60c8 100644
--- a/Documentation/jsc-glib-6.0/const.OPTIONS_USE_JIT.html
+++ b/Documentation/jsc-glib-6.0/const.OPTIONS_USE_JIT.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/const.OPTIONS_USE_LLINT.html b/Documentation/jsc-glib-6.0/const.OPTIONS_USE_LLINT.html
index 3409ac937c..044ce0ab1a 100644
--- a/Documentation/jsc-glib-6.0/const.OPTIONS_USE_LLINT.html
+++ b/Documentation/jsc-glib-6.0/const.OPTIONS_USE_LLINT.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Context.new.html b/Documentation/jsc-glib-6.0/ctor.Context.new.html
index 1314b90ca8..6fdebf7b76 100644
--- a/Documentation/jsc-glib-6.0/ctor.Context.new.html
+++ b/Documentation/jsc-glib-6.0/ctor.Context.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Context.new_with_virtual_machine.html b/Documentation/jsc-glib-6.0/ctor.Context.new_with_virtual_machine.html
index aa83792969..16d0db967b 100644
--- a/Documentation/jsc-glib-6.0/ctor.Context.new_with_virtual_machine.html
+++ b/Documentation/jsc-glib-6.0/ctor.Context.new_with_virtual_machine.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Exception.new.html b/Documentation/jsc-glib-6.0/ctor.Exception.new.html
index 3e198bb103..acf149348c 100644
--- a/Documentation/jsc-glib-6.0/ctor.Exception.new.html
+++ b/Documentation/jsc-glib-6.0/ctor.Exception.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Exception.new_printf.html b/Documentation/jsc-glib-6.0/ctor.Exception.new_printf.html
index ebd5566ac0..c890075225 100644
--- a/Documentation/jsc-glib-6.0/ctor.Exception.new_printf.html
+++ b/Documentation/jsc-glib-6.0/ctor.Exception.new_printf.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Exception.new_vprintf.html b/Documentation/jsc-glib-6.0/ctor.Exception.new_vprintf.html
index 46c2d4328a..8fe9e424c4 100644
--- a/Documentation/jsc-glib-6.0/ctor.Exception.new_vprintf.html
+++ b/Documentation/jsc-glib-6.0/ctor.Exception.new_vprintf.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name.html b/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name.html
index 3e020ba1be..c294ad8c0f 100644
--- a/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name.html
+++ b/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name_printf.html b/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name_printf.html
index 7592f6269c..669c661307 100644
--- a/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name_printf.html
+++ b/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name_printf.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name_vprintf.html b/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name_vprintf.html
index 3399b75cba..b009f852f3 100644
--- a/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name_vprintf.html
+++ b/Documentation/jsc-glib-6.0/ctor.Exception.new_with_name_vprintf.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_array.html b/Documentation/jsc-glib-6.0/ctor.Value.new_array.html
index 4485de52a4..60b49dc4b4 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_array.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_array.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_array_buffer.html b/Documentation/jsc-glib-6.0/ctor.Value.new_array_buffer.html
index 785c356469..aab5a7f04d 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_array_buffer.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_array_buffer.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_array_from_garray.html b/Documentation/jsc-glib-6.0/ctor.Value.new_array_from_garray.html
index 027597205a..beaa84568b 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_array_from_garray.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_array_from_garray.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_array_from_strv.html b/Documentation/jsc-glib-6.0/ctor.Value.new_array_from_strv.html
index cd20cd6e69..bfe9c5e60f 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_array_from_strv.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_array_from_strv.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_boolean.html b/Documentation/jsc-glib-6.0/ctor.Value.new_boolean.html
index a34d71d002..718a53bac4 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_boolean.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_boolean.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_from_json.html b/Documentation/jsc-glib-6.0/ctor.Value.new_from_json.html
index 409711635a..f7495ccf07 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_from_json.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_from_json.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_function.html b/Documentation/jsc-glib-6.0/ctor.Value.new_function.html
index 4be693e9f0..0f9e51facd 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_function.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_function.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_function_variadic.html b/Documentation/jsc-glib-6.0/ctor.Value.new_function_variadic.html
index c3e6ae99d3..02cf997ed7 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_function_variadic.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_function_variadic.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_functionv.html b/Documentation/jsc-glib-6.0/ctor.Value.new_functionv.html
index eb7cee018c..67628b7d53 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_functionv.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_functionv.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_null.html b/Documentation/jsc-glib-6.0/ctor.Value.new_null.html
index 1c6ed83079..b02f7d1677 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_null.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_null.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_number.html b/Documentation/jsc-glib-6.0/ctor.Value.new_number.html
index 9e713c29f1..089205702d 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_number.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_number.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_object.html b/Documentation/jsc-glib-6.0/ctor.Value.new_object.html
index 642d378187..412d24d376 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_object.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_object.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_string.html b/Documentation/jsc-glib-6.0/ctor.Value.new_string.html
index 3455e67f86..0b9ff7f90c 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_string.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_string_from_bytes.html b/Documentation/jsc-glib-6.0/ctor.Value.new_string_from_bytes.html
index f98a101820..37dedd4b21 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_string_from_bytes.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_string_from_bytes.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_typed_array.html b/Documentation/jsc-glib-6.0/ctor.Value.new_typed_array.html
index 9e67869761..cae4b7c8b6 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_typed_array.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_typed_array.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.Value.new_undefined.html b/Documentation/jsc-glib-6.0/ctor.Value.new_undefined.html
index aae697d93e..c26afa47b2 100644
--- a/Documentation/jsc-glib-6.0/ctor.Value.new_undefined.html
+++ b/Documentation/jsc-glib-6.0/ctor.Value.new_undefined.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.VirtualMachine.new.html b/Documentation/jsc-glib-6.0/ctor.VirtualMachine.new.html
index d5285f4854..c119e6c619 100644
--- a/Documentation/jsc-glib-6.0/ctor.VirtualMachine.new.html
+++ b/Documentation/jsc-glib-6.0/ctor.VirtualMachine.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/ctor.WeakValue.new.html b/Documentation/jsc-glib-6.0/ctor.WeakValue.new.html
index 870a92bb5d..89cc59772d 100644
--- a/Documentation/jsc-glib-6.0/ctor.WeakValue.new.html
+++ b/Documentation/jsc-glib-6.0/ctor.WeakValue.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/enum.CheckSyntaxMode.html b/Documentation/jsc-glib-6.0/enum.CheckSyntaxMode.html
index 9263692ab0..771f01bbc0 100644
--- a/Documentation/jsc-glib-6.0/enum.CheckSyntaxMode.html
+++ b/Documentation/jsc-glib-6.0/enum.CheckSyntaxMode.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/enum.CheckSyntaxResult.html b/Documentation/jsc-glib-6.0/enum.CheckSyntaxResult.html
index d08dd62370..413f78297d 100644
--- a/Documentation/jsc-glib-6.0/enum.CheckSyntaxResult.html
+++ b/Documentation/jsc-glib-6.0/enum.CheckSyntaxResult.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/enum.OptionType.html b/Documentation/jsc-glib-6.0/enum.OptionType.html
index f0362d6bdd..085177e849 100644
--- a/Documentation/jsc-glib-6.0/enum.OptionType.html
+++ b/Documentation/jsc-glib-6.0/enum.OptionType.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/enum.TypedArrayType.html b/Documentation/jsc-glib-6.0/enum.TypedArrayType.html
index 493c611fe1..dc26584e83 100644
--- a/Documentation/jsc-glib-6.0/enum.TypedArrayType.html
+++ b/Documentation/jsc-glib-6.0/enum.TypedArrayType.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/flags.ValuePropertyFlags.html b/Documentation/jsc-glib-6.0/flags.ValuePropertyFlags.html
index a7dc20c08a..e4b59d58c0 100644
--- a/Documentation/jsc-glib-6.0/flags.ValuePropertyFlags.html
+++ b/Documentation/jsc-glib-6.0/flags.ValuePropertyFlags.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.CHECK_VERSION.html b/Documentation/jsc-glib-6.0/func.CHECK_VERSION.html
index a28b71d9d2..94015e2eba 100644
--- a/Documentation/jsc-glib-6.0/func.CHECK_VERSION.html
+++ b/Documentation/jsc-glib-6.0/func.CHECK_VERSION.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.DECLARE_FINAL_TYPE.html b/Documentation/jsc-glib-6.0/func.DECLARE_FINAL_TYPE.html
index e0f3a014cb..fa9b405296 100644
--- a/Documentation/jsc-glib-6.0/func.DECLARE_FINAL_TYPE.html
+++ b/Documentation/jsc-glib-6.0/func.DECLARE_FINAL_TYPE.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.get_major_version.html b/Documentation/jsc-glib-6.0/func.get_major_version.html
index f4586798f4..5ed908e772 100644
--- a/Documentation/jsc-glib-6.0/func.get_major_version.html
+++ b/Documentation/jsc-glib-6.0/func.get_major_version.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.get_micro_version.html b/Documentation/jsc-glib-6.0/func.get_micro_version.html
index d8b915f0a8..a778cc27f6 100644
--- a/Documentation/jsc-glib-6.0/func.get_micro_version.html
+++ b/Documentation/jsc-glib-6.0/func.get_micro_version.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.get_minor_version.html b/Documentation/jsc-glib-6.0/func.get_minor_version.html
index c09a1a1c91..349217b746 100644
--- a/Documentation/jsc-glib-6.0/func.get_minor_version.html
+++ b/Documentation/jsc-glib-6.0/func.get_minor_version.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_foreach.html b/Documentation/jsc-glib-6.0/func.options_foreach.html
index daae797e75..3a09b3bf89 100644
--- a/Documentation/jsc-glib-6.0/func.options_foreach.html
+++ b/Documentation/jsc-glib-6.0/func.options_foreach.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_get_boolean.html b/Documentation/jsc-glib-6.0/func.options_get_boolean.html
index 2117e11a75..15f55f5bc8 100644
--- a/Documentation/jsc-glib-6.0/func.options_get_boolean.html
+++ b/Documentation/jsc-glib-6.0/func.options_get_boolean.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_get_double.html b/Documentation/jsc-glib-6.0/func.options_get_double.html
index bc388fa1f9..fd68272653 100644
--- a/Documentation/jsc-glib-6.0/func.options_get_double.html
+++ b/Documentation/jsc-glib-6.0/func.options_get_double.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_get_int.html b/Documentation/jsc-glib-6.0/func.options_get_int.html
index 3bfc730776..36fc9d7a99 100644
--- a/Documentation/jsc-glib-6.0/func.options_get_int.html
+++ b/Documentation/jsc-glib-6.0/func.options_get_int.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_get_option_group.html b/Documentation/jsc-glib-6.0/func.options_get_option_group.html
index 311c3743a2..64b0b55c8a 100644
--- a/Documentation/jsc-glib-6.0/func.options_get_option_group.html
+++ b/Documentation/jsc-glib-6.0/func.options_get_option_group.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_get_range_string.html b/Documentation/jsc-glib-6.0/func.options_get_range_string.html
index 8a3377a6ab..d40df1c89d 100644
--- a/Documentation/jsc-glib-6.0/func.options_get_range_string.html
+++ b/Documentation/jsc-glib-6.0/func.options_get_range_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_get_size.html b/Documentation/jsc-glib-6.0/func.options_get_size.html
index b2b7ae12e7..60288953ed 100644
--- a/Documentation/jsc-glib-6.0/func.options_get_size.html
+++ b/Documentation/jsc-glib-6.0/func.options_get_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_get_string.html b/Documentation/jsc-glib-6.0/func.options_get_string.html
index 105fb5925a..66f7e34fde 100644
--- a/Documentation/jsc-glib-6.0/func.options_get_string.html
+++ b/Documentation/jsc-glib-6.0/func.options_get_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_get_uint.html b/Documentation/jsc-glib-6.0/func.options_get_uint.html
index a94644a802..82c0741c4d 100644
--- a/Documentation/jsc-glib-6.0/func.options_get_uint.html
+++ b/Documentation/jsc-glib-6.0/func.options_get_uint.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_set_boolean.html b/Documentation/jsc-glib-6.0/func.options_set_boolean.html
index fdfa460563..9976868eda 100644
--- a/Documentation/jsc-glib-6.0/func.options_set_boolean.html
+++ b/Documentation/jsc-glib-6.0/func.options_set_boolean.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_set_double.html b/Documentation/jsc-glib-6.0/func.options_set_double.html
index 9a68b36fc2..ba2a7948d7 100644
--- a/Documentation/jsc-glib-6.0/func.options_set_double.html
+++ b/Documentation/jsc-glib-6.0/func.options_set_double.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_set_int.html b/Documentation/jsc-glib-6.0/func.options_set_int.html
index f8d262116b..daaa1ab80a 100644
--- a/Documentation/jsc-glib-6.0/func.options_set_int.html
+++ b/Documentation/jsc-glib-6.0/func.options_set_int.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_set_range_string.html b/Documentation/jsc-glib-6.0/func.options_set_range_string.html
index 23f2747c39..861aad561a 100644
--- a/Documentation/jsc-glib-6.0/func.options_set_range_string.html
+++ b/Documentation/jsc-glib-6.0/func.options_set_range_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_set_size.html b/Documentation/jsc-glib-6.0/func.options_set_size.html
index 42ff9659af..70c9a5a256 100644
--- a/Documentation/jsc-glib-6.0/func.options_set_size.html
+++ b/Documentation/jsc-glib-6.0/func.options_set_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_set_string.html b/Documentation/jsc-glib-6.0/func.options_set_string.html
index b4a3590dbd..66ba83af3c 100644
--- a/Documentation/jsc-glib-6.0/func.options_set_string.html
+++ b/Documentation/jsc-glib-6.0/func.options_set_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/func.options_set_uint.html b/Documentation/jsc-glib-6.0/func.options_set_uint.html
index df170ba22e..53d79a8388 100644
--- a/Documentation/jsc-glib-6.0/func.options_set_uint.html
+++ b/Documentation/jsc-glib-6.0/func.options_set_uint.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/index.html b/Documentation/jsc-glib-6.0/index.html
index 383fbda8d6..ce294858d2 100644
--- a/Documentation/jsc-glib-6.0/index.html
+++ b/Documentation/jsc-glib-6.0/index.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
@@ -135,7 +135,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
 
     <div class="meta info">
       <table>
-        <tr><td><em>Version</em></td><td>2.46.3</td></tr>
+        <tr><td><em>Version</em></td><td>2.46.4</td></tr>
         <tr><td><em>Authors</em></td><td>The WebKit GTK and WPE teams</td></tr>
         <tr><td><em>License</em></td><td>BSD, LGPL-2.1</td></tr>
         <tr><td><em>Website</em></td><td><a href="https://webkit.org" class="external">https://webkit.org</a></td></tr>
diff --git a/Documentation/jsc-glib-6.0/method.Class.add_constructor.html b/Documentation/jsc-glib-6.0/method.Class.add_constructor.html
index d2b02b88ab..925e5c11cc 100644
--- a/Documentation/jsc-glib-6.0/method.Class.add_constructor.html
+++ b/Documentation/jsc-glib-6.0/method.Class.add_constructor.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Class.add_constructor_variadic.html b/Documentation/jsc-glib-6.0/method.Class.add_constructor_variadic.html
index bdfec50df2..6e08ce04f0 100644
--- a/Documentation/jsc-glib-6.0/method.Class.add_constructor_variadic.html
+++ b/Documentation/jsc-glib-6.0/method.Class.add_constructor_variadic.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Class.add_constructorv.html b/Documentation/jsc-glib-6.0/method.Class.add_constructorv.html
index 0a64066f31..0e9548c356 100644
--- a/Documentation/jsc-glib-6.0/method.Class.add_constructorv.html
+++ b/Documentation/jsc-glib-6.0/method.Class.add_constructorv.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Class.add_method.html b/Documentation/jsc-glib-6.0/method.Class.add_method.html
index fc32f491cb..c1fc63f2c7 100644
--- a/Documentation/jsc-glib-6.0/method.Class.add_method.html
+++ b/Documentation/jsc-glib-6.0/method.Class.add_method.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Class.add_method_variadic.html b/Documentation/jsc-glib-6.0/method.Class.add_method_variadic.html
index 585348b8d6..800c45d2f9 100644
--- a/Documentation/jsc-glib-6.0/method.Class.add_method_variadic.html
+++ b/Documentation/jsc-glib-6.0/method.Class.add_method_variadic.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Class.add_methodv.html b/Documentation/jsc-glib-6.0/method.Class.add_methodv.html
index 1dc0809bf9..ce82bd5365 100644
--- a/Documentation/jsc-glib-6.0/method.Class.add_methodv.html
+++ b/Documentation/jsc-glib-6.0/method.Class.add_methodv.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Class.add_property.html b/Documentation/jsc-glib-6.0/method.Class.add_property.html
index 04798450c0..59b359973d 100644
--- a/Documentation/jsc-glib-6.0/method.Class.add_property.html
+++ b/Documentation/jsc-glib-6.0/method.Class.add_property.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Class.get_name.html b/Documentation/jsc-glib-6.0/method.Class.get_name.html
index 65b6ccbab2..677ac81a97 100644
--- a/Documentation/jsc-glib-6.0/method.Class.get_name.html
+++ b/Documentation/jsc-glib-6.0/method.Class.get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Class.get_parent.html b/Documentation/jsc-glib-6.0/method.Class.get_parent.html
index c69fb41397..41128a5871 100644
--- a/Documentation/jsc-glib-6.0/method.Class.get_parent.html
+++ b/Documentation/jsc-glib-6.0/method.Class.get_parent.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.check_syntax.html b/Documentation/jsc-glib-6.0/method.Context.check_syntax.html
index 1ce1bebba3..24aee55d3a 100644
--- a/Documentation/jsc-glib-6.0/method.Context.check_syntax.html
+++ b/Documentation/jsc-glib-6.0/method.Context.check_syntax.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.clear_exception.html b/Documentation/jsc-glib-6.0/method.Context.clear_exception.html
index 64494b3ea7..6cf92294f9 100644
--- a/Documentation/jsc-glib-6.0/method.Context.clear_exception.html
+++ b/Documentation/jsc-glib-6.0/method.Context.clear_exception.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.evaluate.html b/Documentation/jsc-glib-6.0/method.Context.evaluate.html
index 90cf956605..711710ea54 100644
--- a/Documentation/jsc-glib-6.0/method.Context.evaluate.html
+++ b/Documentation/jsc-glib-6.0/method.Context.evaluate.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.evaluate_in_object.html b/Documentation/jsc-glib-6.0/method.Context.evaluate_in_object.html
index 08cbdfecfd..99f5b537b1 100644
--- a/Documentation/jsc-glib-6.0/method.Context.evaluate_in_object.html
+++ b/Documentation/jsc-glib-6.0/method.Context.evaluate_in_object.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.evaluate_with_source_uri.html b/Documentation/jsc-glib-6.0/method.Context.evaluate_with_source_uri.html
index 2c6b078923..34feeeae9b 100644
--- a/Documentation/jsc-glib-6.0/method.Context.evaluate_with_source_uri.html
+++ b/Documentation/jsc-glib-6.0/method.Context.evaluate_with_source_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.get_exception.html b/Documentation/jsc-glib-6.0/method.Context.get_exception.html
index 7e6e81fd7c..3c44e79fe3 100644
--- a/Documentation/jsc-glib-6.0/method.Context.get_exception.html
+++ b/Documentation/jsc-glib-6.0/method.Context.get_exception.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.get_global_object.html b/Documentation/jsc-glib-6.0/method.Context.get_global_object.html
index 66a971a6ca..6d8d1122c0 100644
--- a/Documentation/jsc-glib-6.0/method.Context.get_global_object.html
+++ b/Documentation/jsc-glib-6.0/method.Context.get_global_object.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.get_value.html b/Documentation/jsc-glib-6.0/method.Context.get_value.html
index 3600af60cc..b4c1b065a2 100644
--- a/Documentation/jsc-glib-6.0/method.Context.get_value.html
+++ b/Documentation/jsc-glib-6.0/method.Context.get_value.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.get_virtual_machine.html b/Documentation/jsc-glib-6.0/method.Context.get_virtual_machine.html
index 7daf18b17a..34a3b44214 100644
--- a/Documentation/jsc-glib-6.0/method.Context.get_virtual_machine.html
+++ b/Documentation/jsc-glib-6.0/method.Context.get_virtual_machine.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.pop_exception_handler.html b/Documentation/jsc-glib-6.0/method.Context.pop_exception_handler.html
index 089c73bd8d..810427e128 100644
--- a/Documentation/jsc-glib-6.0/method.Context.pop_exception_handler.html
+++ b/Documentation/jsc-glib-6.0/method.Context.pop_exception_handler.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.push_exception_handler.html b/Documentation/jsc-glib-6.0/method.Context.push_exception_handler.html
index 5da7d3c97b..378c9fd42c 100644
--- a/Documentation/jsc-glib-6.0/method.Context.push_exception_handler.html
+++ b/Documentation/jsc-glib-6.0/method.Context.push_exception_handler.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.register_class.html b/Documentation/jsc-glib-6.0/method.Context.register_class.html
index f280b4e8b5..8369aae0b9 100644
--- a/Documentation/jsc-glib-6.0/method.Context.register_class.html
+++ b/Documentation/jsc-glib-6.0/method.Context.register_class.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.set_value.html b/Documentation/jsc-glib-6.0/method.Context.set_value.html
index 3d0968df3c..18de66e24a 100644
--- a/Documentation/jsc-glib-6.0/method.Context.set_value.html
+++ b/Documentation/jsc-glib-6.0/method.Context.set_value.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.throw.html b/Documentation/jsc-glib-6.0/method.Context.throw.html
index ca81730326..986323ea65 100644
--- a/Documentation/jsc-glib-6.0/method.Context.throw.html
+++ b/Documentation/jsc-glib-6.0/method.Context.throw.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.throw_exception.html b/Documentation/jsc-glib-6.0/method.Context.throw_exception.html
index 1f9344e950..989ebe68a7 100644
--- a/Documentation/jsc-glib-6.0/method.Context.throw_exception.html
+++ b/Documentation/jsc-glib-6.0/method.Context.throw_exception.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.throw_printf.html b/Documentation/jsc-glib-6.0/method.Context.throw_printf.html
index 2c2c16f137..8af380d1d7 100644
--- a/Documentation/jsc-glib-6.0/method.Context.throw_printf.html
+++ b/Documentation/jsc-glib-6.0/method.Context.throw_printf.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.throw_with_name.html b/Documentation/jsc-glib-6.0/method.Context.throw_with_name.html
index ff7bb0bbcd..547887b0c3 100644
--- a/Documentation/jsc-glib-6.0/method.Context.throw_with_name.html
+++ b/Documentation/jsc-glib-6.0/method.Context.throw_with_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Context.throw_with_name_printf.html b/Documentation/jsc-glib-6.0/method.Context.throw_with_name_printf.html
index 8004c353b1..98e7e71c7e 100644
--- a/Documentation/jsc-glib-6.0/method.Context.throw_with_name_printf.html
+++ b/Documentation/jsc-glib-6.0/method.Context.throw_with_name_printf.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Exception.get_backtrace_string.html b/Documentation/jsc-glib-6.0/method.Exception.get_backtrace_string.html
index 76407f96d6..0f03423191 100644
--- a/Documentation/jsc-glib-6.0/method.Exception.get_backtrace_string.html
+++ b/Documentation/jsc-glib-6.0/method.Exception.get_backtrace_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Exception.get_column_number.html b/Documentation/jsc-glib-6.0/method.Exception.get_column_number.html
index f07fc8254a..2ccc279ec1 100644
--- a/Documentation/jsc-glib-6.0/method.Exception.get_column_number.html
+++ b/Documentation/jsc-glib-6.0/method.Exception.get_column_number.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Exception.get_line_number.html b/Documentation/jsc-glib-6.0/method.Exception.get_line_number.html
index 5de2f624e0..3af34e6f90 100644
--- a/Documentation/jsc-glib-6.0/method.Exception.get_line_number.html
+++ b/Documentation/jsc-glib-6.0/method.Exception.get_line_number.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Exception.get_message.html b/Documentation/jsc-glib-6.0/method.Exception.get_message.html
index a1d5894cdf..0422c0723c 100644
--- a/Documentation/jsc-glib-6.0/method.Exception.get_message.html
+++ b/Documentation/jsc-glib-6.0/method.Exception.get_message.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Exception.get_name.html b/Documentation/jsc-glib-6.0/method.Exception.get_name.html
index 4cb1bad25d..2f10a0f2a6 100644
--- a/Documentation/jsc-glib-6.0/method.Exception.get_name.html
+++ b/Documentation/jsc-glib-6.0/method.Exception.get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Exception.get_source_uri.html b/Documentation/jsc-glib-6.0/method.Exception.get_source_uri.html
index 21b50bbc01..3bd4b7caab 100644
--- a/Documentation/jsc-glib-6.0/method.Exception.get_source_uri.html
+++ b/Documentation/jsc-glib-6.0/method.Exception.get_source_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Exception.report.html b/Documentation/jsc-glib-6.0/method.Exception.report.html
index ca88f359e2..c03035bccd 100644
--- a/Documentation/jsc-glib-6.0/method.Exception.report.html
+++ b/Documentation/jsc-glib-6.0/method.Exception.report.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Exception.to_string.html b/Documentation/jsc-glib-6.0/method.Exception.to_string.html
index b0f8c6a8b6..e5afbfc699 100644
--- a/Documentation/jsc-glib-6.0/method.Exception.to_string.html
+++ b/Documentation/jsc-glib-6.0/method.Exception.to_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.array_buffer_get_data.html b/Documentation/jsc-glib-6.0/method.Value.array_buffer_get_data.html
index 5ecdf60a05..94d9d2cfc7 100644
--- a/Documentation/jsc-glib-6.0/method.Value.array_buffer_get_data.html
+++ b/Documentation/jsc-glib-6.0/method.Value.array_buffer_get_data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.array_buffer_get_size.html b/Documentation/jsc-glib-6.0/method.Value.array_buffer_get_size.html
index 1f360f2717..ab88d47c01 100644
--- a/Documentation/jsc-glib-6.0/method.Value.array_buffer_get_size.html
+++ b/Documentation/jsc-glib-6.0/method.Value.array_buffer_get_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.constructor_call.html b/Documentation/jsc-glib-6.0/method.Value.constructor_call.html
index a6ed311a30..522e0b7a76 100644
--- a/Documentation/jsc-glib-6.0/method.Value.constructor_call.html
+++ b/Documentation/jsc-glib-6.0/method.Value.constructor_call.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.constructor_callv.html b/Documentation/jsc-glib-6.0/method.Value.constructor_callv.html
index f1f121f3df..c324cebc27 100644
--- a/Documentation/jsc-glib-6.0/method.Value.constructor_callv.html
+++ b/Documentation/jsc-glib-6.0/method.Value.constructor_callv.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.function_call.html b/Documentation/jsc-glib-6.0/method.Value.function_call.html
index d707886686..5e0b407af9 100644
--- a/Documentation/jsc-glib-6.0/method.Value.function_call.html
+++ b/Documentation/jsc-glib-6.0/method.Value.function_call.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.function_callv.html b/Documentation/jsc-glib-6.0/method.Value.function_callv.html
index a8cb43fbf5..0a918c99cc 100644
--- a/Documentation/jsc-glib-6.0/method.Value.function_callv.html
+++ b/Documentation/jsc-glib-6.0/method.Value.function_callv.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.get_context.html b/Documentation/jsc-glib-6.0/method.Value.get_context.html
index 56657036f2..f7be00a0af 100644
--- a/Documentation/jsc-glib-6.0/method.Value.get_context.html
+++ b/Documentation/jsc-glib-6.0/method.Value.get_context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_array.html b/Documentation/jsc-glib-6.0/method.Value.is_array.html
index bbd53d1d25..0ef5310fbe 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_array.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_array.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_array_buffer.html b/Documentation/jsc-glib-6.0/method.Value.is_array_buffer.html
index 64e21bcb83..dd14c959d4 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_array_buffer.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_array_buffer.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_boolean.html b/Documentation/jsc-glib-6.0/method.Value.is_boolean.html
index 3fc85bb522..672d3dd6af 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_boolean.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_boolean.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_constructor.html b/Documentation/jsc-glib-6.0/method.Value.is_constructor.html
index edf2f0742b..ae19c88a54 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_constructor.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_constructor.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_function.html b/Documentation/jsc-glib-6.0/method.Value.is_function.html
index fb65f9af3d..d9ad765c16 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_function.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_function.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_null.html b/Documentation/jsc-glib-6.0/method.Value.is_null.html
index 21021076f5..f8a36545f0 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_null.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_null.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_number.html b/Documentation/jsc-glib-6.0/method.Value.is_number.html
index 5d4cfe0507..7a6f9bb2e3 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_number.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_number.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_object.html b/Documentation/jsc-glib-6.0/method.Value.is_object.html
index 92e044a5fa..a3852c01ae 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_object.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_object.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_string.html b/Documentation/jsc-glib-6.0/method.Value.is_string.html
index 4fbd60659a..a34f9b3e75 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_string.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_typed_array.html b/Documentation/jsc-glib-6.0/method.Value.is_typed_array.html
index ae4e941e62..a700e802eb 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_typed_array.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_typed_array.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.is_undefined.html b/Documentation/jsc-glib-6.0/method.Value.is_undefined.html
index d74ae3fd94..60f650ffa4 100644
--- a/Documentation/jsc-glib-6.0/method.Value.is_undefined.html
+++ b/Documentation/jsc-glib-6.0/method.Value.is_undefined.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.new_typed_array_with_buffer.html b/Documentation/jsc-glib-6.0/method.Value.new_typed_array_with_buffer.html
index 1b18edae78..aa2c2c58cc 100644
--- a/Documentation/jsc-glib-6.0/method.Value.new_typed_array_with_buffer.html
+++ b/Documentation/jsc-glib-6.0/method.Value.new_typed_array_with_buffer.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_define_property_accessor.html b/Documentation/jsc-glib-6.0/method.Value.object_define_property_accessor.html
index cb8e73ddec..5a19faf1b0 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_define_property_accessor.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_define_property_accessor.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_define_property_data.html b/Documentation/jsc-glib-6.0/method.Value.object_define_property_data.html
index 83fb4d923f..b9d99b8801 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_define_property_data.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_define_property_data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_delete_property.html b/Documentation/jsc-glib-6.0/method.Value.object_delete_property.html
index 60e0214a30..5a43c3a2bd 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_delete_property.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_delete_property.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_enumerate_properties.html b/Documentation/jsc-glib-6.0/method.Value.object_enumerate_properties.html
index b4c9a0ceac..cfa7fc1caf 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_enumerate_properties.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_enumerate_properties.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_get_property.html b/Documentation/jsc-glib-6.0/method.Value.object_get_property.html
index 566178e246..eb5ee6cb35 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_get_property.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_get_property.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_get_property_at_index.html b/Documentation/jsc-glib-6.0/method.Value.object_get_property_at_index.html
index 285875808e..6164e8dd79 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_get_property_at_index.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_get_property_at_index.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_has_property.html b/Documentation/jsc-glib-6.0/method.Value.object_has_property.html
index 2df9932a51..eebe781d8e 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_has_property.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_has_property.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_invoke_method.html b/Documentation/jsc-glib-6.0/method.Value.object_invoke_method.html
index fe5b4b6ee8..70ace923ab 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_invoke_method.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_invoke_method.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_invoke_methodv.html b/Documentation/jsc-glib-6.0/method.Value.object_invoke_methodv.html
index 2599af06aa..3c7358e933 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_invoke_methodv.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_invoke_methodv.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_is_instance_of.html b/Documentation/jsc-glib-6.0/method.Value.object_is_instance_of.html
index 54cf47a67a..7f8fe434aa 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_is_instance_of.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_is_instance_of.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_set_property.html b/Documentation/jsc-glib-6.0/method.Value.object_set_property.html
index bc02e1b3e1..7218c12b06 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_set_property.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_set_property.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.object_set_property_at_index.html b/Documentation/jsc-glib-6.0/method.Value.object_set_property_at_index.html
index f401d75e96..59b48fe4df 100644
--- a/Documentation/jsc-glib-6.0/method.Value.object_set_property_at_index.html
+++ b/Documentation/jsc-glib-6.0/method.Value.object_set_property_at_index.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.to_boolean.html b/Documentation/jsc-glib-6.0/method.Value.to_boolean.html
index 1050655bfa..75a1236951 100644
--- a/Documentation/jsc-glib-6.0/method.Value.to_boolean.html
+++ b/Documentation/jsc-glib-6.0/method.Value.to_boolean.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.to_double.html b/Documentation/jsc-glib-6.0/method.Value.to_double.html
index 09c1d39772..d80036e8e2 100644
--- a/Documentation/jsc-glib-6.0/method.Value.to_double.html
+++ b/Documentation/jsc-glib-6.0/method.Value.to_double.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.to_int32.html b/Documentation/jsc-glib-6.0/method.Value.to_int32.html
index 46374ff254..0ad0233678 100644
--- a/Documentation/jsc-glib-6.0/method.Value.to_int32.html
+++ b/Documentation/jsc-glib-6.0/method.Value.to_int32.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.to_json.html b/Documentation/jsc-glib-6.0/method.Value.to_json.html
index e03809ca38..25f4fa48df 100644
--- a/Documentation/jsc-glib-6.0/method.Value.to_json.html
+++ b/Documentation/jsc-glib-6.0/method.Value.to_json.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.to_string.html b/Documentation/jsc-glib-6.0/method.Value.to_string.html
index cd91de9041..2fb240da2f 100644
--- a/Documentation/jsc-glib-6.0/method.Value.to_string.html
+++ b/Documentation/jsc-glib-6.0/method.Value.to_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.to_string_as_bytes.html b/Documentation/jsc-glib-6.0/method.Value.to_string_as_bytes.html
index 99c0078a3c..a19b8fbe82 100644
--- a/Documentation/jsc-glib-6.0/method.Value.to_string_as_bytes.html
+++ b/Documentation/jsc-glib-6.0/method.Value.to_string_as_bytes.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_buffer.html b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_buffer.html
index cf49ebeaac..f21ad9ee1b 100644
--- a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_buffer.html
+++ b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_buffer.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_data.html b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_data.html
index c8646b10ed..a74fed77f4 100644
--- a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_data.html
+++ b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_length.html b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_length.html
index db6691e7d7..91af98702f 100644
--- a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_length.html
+++ b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_length.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_offset.html b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_offset.html
index db2253bf24..351d922d43 100644
--- a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_offset.html
+++ b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_offset.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_size.html b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_size.html
index c0aa087a38..9c1303180f 100644
--- a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_size.html
+++ b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_type.html b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_type.html
index f8355bd990..e521644b80 100644
--- a/Documentation/jsc-glib-6.0/method.Value.typed_array_get_type.html
+++ b/Documentation/jsc-glib-6.0/method.Value.typed_array_get_type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/method.WeakValue.get_value.html b/Documentation/jsc-glib-6.0/method.WeakValue.get_value.html
index 2ee4bc9a39..3a19e17af3 100644
--- a/Documentation/jsc-glib-6.0/method.WeakValue.get_value.html
+++ b/Documentation/jsc-glib-6.0/method.WeakValue.get_value.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/property.Class.context.html b/Documentation/jsc-glib-6.0/property.Class.context.html
index 3003897d29..d71b368506 100644
--- a/Documentation/jsc-glib-6.0/property.Class.context.html
+++ b/Documentation/jsc-glib-6.0/property.Class.context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/property.Class.name.html b/Documentation/jsc-glib-6.0/property.Class.name.html
index 7bf4e4f083..6e684de247 100644
--- a/Documentation/jsc-glib-6.0/property.Class.name.html
+++ b/Documentation/jsc-glib-6.0/property.Class.name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/property.Class.parent.html b/Documentation/jsc-glib-6.0/property.Class.parent.html
index c1b3190f7f..78ff57c1a8 100644
--- a/Documentation/jsc-glib-6.0/property.Class.parent.html
+++ b/Documentation/jsc-glib-6.0/property.Class.parent.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/property.Context.virtual-machine.html b/Documentation/jsc-glib-6.0/property.Context.virtual-machine.html
index 37c99f4239..cfcb5e84f2 100644
--- a/Documentation/jsc-glib-6.0/property.Context.virtual-machine.html
+++ b/Documentation/jsc-glib-6.0/property.Context.virtual-machine.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/property.Value.context.html b/Documentation/jsc-glib-6.0/property.Value.context.html
index dbc11289eb..dd4fad8757 100644
--- a/Documentation/jsc-glib-6.0/property.Value.context.html
+++ b/Documentation/jsc-glib-6.0/property.Value.context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/property.WeakValue.value.html b/Documentation/jsc-glib-6.0/property.WeakValue.value.html
index 2740905eb7..d1e3814d5a 100644
--- a/Documentation/jsc-glib-6.0/property.WeakValue.value.html
+++ b/Documentation/jsc-glib-6.0/property.WeakValue.value.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/signal.WeakValue.cleared.html b/Documentation/jsc-glib-6.0/signal.WeakValue.cleared.html
index 92e96193c8..aa41985f69 100644
--- a/Documentation/jsc-glib-6.0/signal.WeakValue.cleared.html
+++ b/Documentation/jsc-glib-6.0/signal.WeakValue.cleared.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/struct.ClassVTable.html b/Documentation/jsc-glib-6.0/struct.ClassVTable.html
index a3f7f1fc8b..773649df26 100644
--- a/Documentation/jsc-glib-6.0/struct.ClassVTable.html
+++ b/Documentation/jsc-glib-6.0/struct.ClassVTable.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/jsc-glib-6.0/type_func.Context.get_current.html b/Documentation/jsc-glib-6.0/type_func.Context.get_current.html
index 1fd59f7fa5..fe8dafe7e7 100644
--- a/Documentation/jsc-glib-6.0/type_func.Context.get_current.html
+++ b/Documentation/jsc-glib-6.0/type_func.Context.get_current.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">JavaScriptCore</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/callback.URISchemeRequestCallback.html b/Documentation/webkitgtk-6.0/callback.URISchemeRequestCallback.html
index b0bb0dfc4c..01b5d29393 100644
--- a/Documentation/webkitgtk-6.0/callback.URISchemeRequestCallback.html
+++ b/Documentation/webkitgtk-6.0/callback.URISchemeRequestCallback.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.AuthenticationRequest.html b/Documentation/webkitgtk-6.0/class.AuthenticationRequest.html
index 4f1845ab21..7ae0ee5e58 100644
--- a/Documentation/webkitgtk-6.0/class.AuthenticationRequest.html
+++ b/Documentation/webkitgtk-6.0/class.AuthenticationRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.AutomationSession.html b/Documentation/webkitgtk-6.0/class.AutomationSession.html
index 86b74d277b..9b019d7f3c 100644
--- a/Documentation/webkitgtk-6.0/class.AutomationSession.html
+++ b/Documentation/webkitgtk-6.0/class.AutomationSession.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.BackForwardList.html b/Documentation/webkitgtk-6.0/class.BackForwardList.html
index b4411f8b8a..80480769a2 100644
--- a/Documentation/webkitgtk-6.0/class.BackForwardList.html
+++ b/Documentation/webkitgtk-6.0/class.BackForwardList.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.BackForwardListItem.html b/Documentation/webkitgtk-6.0/class.BackForwardListItem.html
index 7b7d7bc043..bbff98e9b8 100644
--- a/Documentation/webkitgtk-6.0/class.BackForwardListItem.html
+++ b/Documentation/webkitgtk-6.0/class.BackForwardListItem.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.ClipboardPermissionRequest.html b/Documentation/webkitgtk-6.0/class.ClipboardPermissionRequest.html
index 4986600498..199510deea 100644
--- a/Documentation/webkitgtk-6.0/class.ClipboardPermissionRequest.html
+++ b/Documentation/webkitgtk-6.0/class.ClipboardPermissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.ColorChooserRequest.html b/Documentation/webkitgtk-6.0/class.ColorChooserRequest.html
index f78ddc02ac..d333905d70 100644
--- a/Documentation/webkitgtk-6.0/class.ColorChooserRequest.html
+++ b/Documentation/webkitgtk-6.0/class.ColorChooserRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.ContextMenu.html b/Documentation/webkitgtk-6.0/class.ContextMenu.html
index fe1baf4860..73d4d39b45 100644
--- a/Documentation/webkitgtk-6.0/class.ContextMenu.html
+++ b/Documentation/webkitgtk-6.0/class.ContextMenu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.ContextMenuItem.html b/Documentation/webkitgtk-6.0/class.ContextMenuItem.html
index aaf0aca3dc..a81762bb7c 100644
--- a/Documentation/webkitgtk-6.0/class.ContextMenuItem.html
+++ b/Documentation/webkitgtk-6.0/class.ContextMenuItem.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.CookieManager.html b/Documentation/webkitgtk-6.0/class.CookieManager.html
index 5eb1024c2c..9d984f2fe6 100644
--- a/Documentation/webkitgtk-6.0/class.CookieManager.html
+++ b/Documentation/webkitgtk-6.0/class.CookieManager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.DeviceInfoPermissionRequest.html b/Documentation/webkitgtk-6.0/class.DeviceInfoPermissionRequest.html
index 1be6fe3f49..87a48f5a97 100644
--- a/Documentation/webkitgtk-6.0/class.DeviceInfoPermissionRequest.html
+++ b/Documentation/webkitgtk-6.0/class.DeviceInfoPermissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.Download.html b/Documentation/webkitgtk-6.0/class.Download.html
index 0641bd03ec..15bb265c4f 100644
--- a/Documentation/webkitgtk-6.0/class.Download.html
+++ b/Documentation/webkitgtk-6.0/class.Download.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.EditorState.html b/Documentation/webkitgtk-6.0/class.EditorState.html
index 7d26061d7e..926a51f0ff 100644
--- a/Documentation/webkitgtk-6.0/class.EditorState.html
+++ b/Documentation/webkitgtk-6.0/class.EditorState.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.FaviconDatabase.html b/Documentation/webkitgtk-6.0/class.FaviconDatabase.html
index 331e6bfec0..1151c5789b 100644
--- a/Documentation/webkitgtk-6.0/class.FaviconDatabase.html
+++ b/Documentation/webkitgtk-6.0/class.FaviconDatabase.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.FileChooserRequest.html b/Documentation/webkitgtk-6.0/class.FileChooserRequest.html
index 4b243c7d79..a20bfb1dc7 100644
--- a/Documentation/webkitgtk-6.0/class.FileChooserRequest.html
+++ b/Documentation/webkitgtk-6.0/class.FileChooserRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.FindController.html b/Documentation/webkitgtk-6.0/class.FindController.html
index 40758b9601..a2811e0b9e 100644
--- a/Documentation/webkitgtk-6.0/class.FindController.html
+++ b/Documentation/webkitgtk-6.0/class.FindController.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.FormSubmissionRequest.html b/Documentation/webkitgtk-6.0/class.FormSubmissionRequest.html
index e415f65bc3..788c6ce0ae 100644
--- a/Documentation/webkitgtk-6.0/class.FormSubmissionRequest.html
+++ b/Documentation/webkitgtk-6.0/class.FormSubmissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.GeolocationManager.html b/Documentation/webkitgtk-6.0/class.GeolocationManager.html
index 66f052b13b..5255c5e3d7 100644
--- a/Documentation/webkitgtk-6.0/class.GeolocationManager.html
+++ b/Documentation/webkitgtk-6.0/class.GeolocationManager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.GeolocationPermissionRequest.html b/Documentation/webkitgtk-6.0/class.GeolocationPermissionRequest.html
index 1238ad5efe..5ad864d6c1 100644
--- a/Documentation/webkitgtk-6.0/class.GeolocationPermissionRequest.html
+++ b/Documentation/webkitgtk-6.0/class.GeolocationPermissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.HitTestResult.html b/Documentation/webkitgtk-6.0/class.HitTestResult.html
index 184dad93de..4585fb4139 100644
--- a/Documentation/webkitgtk-6.0/class.HitTestResult.html
+++ b/Documentation/webkitgtk-6.0/class.HitTestResult.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.InputMethodContext.html b/Documentation/webkitgtk-6.0/class.InputMethodContext.html
index df9be999c1..76f9c97251 100644
--- a/Documentation/webkitgtk-6.0/class.InputMethodContext.html
+++ b/Documentation/webkitgtk-6.0/class.InputMethodContext.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.MediaKeySystemPermissionRequest.html b/Documentation/webkitgtk-6.0/class.MediaKeySystemPermissionRequest.html
index a508b18e07..0434475d99 100644
--- a/Documentation/webkitgtk-6.0/class.MediaKeySystemPermissionRequest.html
+++ b/Documentation/webkitgtk-6.0/class.MediaKeySystemPermissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.NavigationPolicyDecision.html b/Documentation/webkitgtk-6.0/class.NavigationPolicyDecision.html
index 4096af0103..9aff47984e 100644
--- a/Documentation/webkitgtk-6.0/class.NavigationPolicyDecision.html
+++ b/Documentation/webkitgtk-6.0/class.NavigationPolicyDecision.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.NetworkSession.html b/Documentation/webkitgtk-6.0/class.NetworkSession.html
index 8c3f80879c..1eb5d81f46 100644
--- a/Documentation/webkitgtk-6.0/class.NetworkSession.html
+++ b/Documentation/webkitgtk-6.0/class.NetworkSession.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.Notification.html b/Documentation/webkitgtk-6.0/class.Notification.html
index eb84aa8687..5f9770dbfc 100644
--- a/Documentation/webkitgtk-6.0/class.Notification.html
+++ b/Documentation/webkitgtk-6.0/class.Notification.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.NotificationPermissionRequest.html b/Documentation/webkitgtk-6.0/class.NotificationPermissionRequest.html
index fbbb1ffc9c..efcd913831 100644
--- a/Documentation/webkitgtk-6.0/class.NotificationPermissionRequest.html
+++ b/Documentation/webkitgtk-6.0/class.NotificationPermissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.OptionMenu.html b/Documentation/webkitgtk-6.0/class.OptionMenu.html
index 36af1a9e13..1a78209a97 100644
--- a/Documentation/webkitgtk-6.0/class.OptionMenu.html
+++ b/Documentation/webkitgtk-6.0/class.OptionMenu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.PointerLockPermissionRequest.html b/Documentation/webkitgtk-6.0/class.PointerLockPermissionRequest.html
index 33b14e91f9..7b32bb3e94 100644
--- a/Documentation/webkitgtk-6.0/class.PointerLockPermissionRequest.html
+++ b/Documentation/webkitgtk-6.0/class.PointerLockPermissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.PolicyDecision.html b/Documentation/webkitgtk-6.0/class.PolicyDecision.html
index c3addc8500..610d3f60fa 100644
--- a/Documentation/webkitgtk-6.0/class.PolicyDecision.html
+++ b/Documentation/webkitgtk-6.0/class.PolicyDecision.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.PrintOperation.html b/Documentation/webkitgtk-6.0/class.PrintOperation.html
index 5c56fc6210..9ec6a31a8f 100644
--- a/Documentation/webkitgtk-6.0/class.PrintOperation.html
+++ b/Documentation/webkitgtk-6.0/class.PrintOperation.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.ResponsePolicyDecision.html b/Documentation/webkitgtk-6.0/class.ResponsePolicyDecision.html
index c297b50680..a633b6d41c 100644
--- a/Documentation/webkitgtk-6.0/class.ResponsePolicyDecision.html
+++ b/Documentation/webkitgtk-6.0/class.ResponsePolicyDecision.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.SecurityManager.html b/Documentation/webkitgtk-6.0/class.SecurityManager.html
index abe1929179..02778436e5 100644
--- a/Documentation/webkitgtk-6.0/class.SecurityManager.html
+++ b/Documentation/webkitgtk-6.0/class.SecurityManager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.Settings.html b/Documentation/webkitgtk-6.0/class.Settings.html
index e2bc685aca..5518894e49 100644
--- a/Documentation/webkitgtk-6.0/class.Settings.html
+++ b/Documentation/webkitgtk-6.0/class.Settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.URIRequest.html b/Documentation/webkitgtk-6.0/class.URIRequest.html
index 911613823e..74abe92fd6 100644
--- a/Documentation/webkitgtk-6.0/class.URIRequest.html
+++ b/Documentation/webkitgtk-6.0/class.URIRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.URIResponse.html b/Documentation/webkitgtk-6.0/class.URIResponse.html
index 8a96fe4b70..ef527a2e18 100644
--- a/Documentation/webkitgtk-6.0/class.URIResponse.html
+++ b/Documentation/webkitgtk-6.0/class.URIResponse.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.URISchemeRequest.html b/Documentation/webkitgtk-6.0/class.URISchemeRequest.html
index 53b152088a..b80c9774ec 100644
--- a/Documentation/webkitgtk-6.0/class.URISchemeRequest.html
+++ b/Documentation/webkitgtk-6.0/class.URISchemeRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.URISchemeResponse.html b/Documentation/webkitgtk-6.0/class.URISchemeResponse.html
index d866df6901..0fce528b7e 100644
--- a/Documentation/webkitgtk-6.0/class.URISchemeResponse.html
+++ b/Documentation/webkitgtk-6.0/class.URISchemeResponse.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.UserContentFilterStore.html b/Documentation/webkitgtk-6.0/class.UserContentFilterStore.html
index 06605af6fc..6a20a3327c 100644
--- a/Documentation/webkitgtk-6.0/class.UserContentFilterStore.html
+++ b/Documentation/webkitgtk-6.0/class.UserContentFilterStore.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.UserContentManager.html b/Documentation/webkitgtk-6.0/class.UserContentManager.html
index 445df0fae8..f92a2f6030 100644
--- a/Documentation/webkitgtk-6.0/class.UserContentManager.html
+++ b/Documentation/webkitgtk-6.0/class.UserContentManager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.UserMediaPermissionRequest.html b/Documentation/webkitgtk-6.0/class.UserMediaPermissionRequest.html
index 7f65e7f1ea..4130a54a9e 100644
--- a/Documentation/webkitgtk-6.0/class.UserMediaPermissionRequest.html
+++ b/Documentation/webkitgtk-6.0/class.UserMediaPermissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.UserMessage.html b/Documentation/webkitgtk-6.0/class.UserMessage.html
index 3a6acf9677..ccdf87510f 100644
--- a/Documentation/webkitgtk-6.0/class.UserMessage.html
+++ b/Documentation/webkitgtk-6.0/class.UserMessage.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.WebContext.html b/Documentation/webkitgtk-6.0/class.WebContext.html
index 1017b5a667..915b140cef 100644
--- a/Documentation/webkitgtk-6.0/class.WebContext.html
+++ b/Documentation/webkitgtk-6.0/class.WebContext.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.WebInspector.html b/Documentation/webkitgtk-6.0/class.WebInspector.html
index 77903a8f45..e23b328c88 100644
--- a/Documentation/webkitgtk-6.0/class.WebInspector.html
+++ b/Documentation/webkitgtk-6.0/class.WebInspector.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.WebResource.html b/Documentation/webkitgtk-6.0/class.WebResource.html
index ab5958fc81..500f86a029 100644
--- a/Documentation/webkitgtk-6.0/class.WebResource.html
+++ b/Documentation/webkitgtk-6.0/class.WebResource.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.WebView.html b/Documentation/webkitgtk-6.0/class.WebView.html
index cfd085be0c..5077017d9a 100644
--- a/Documentation/webkitgtk-6.0/class.WebView.html
+++ b/Documentation/webkitgtk-6.0/class.WebView.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.WebViewBase.html b/Documentation/webkitgtk-6.0/class.WebViewBase.html
index eb362900e3..e24e898187 100644
--- a/Documentation/webkitgtk-6.0/class.WebViewBase.html
+++ b/Documentation/webkitgtk-6.0/class.WebViewBase.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.WebsiteDataAccessPermissionRequest.html b/Documentation/webkitgtk-6.0/class.WebsiteDataAccessPermissionRequest.html
index b84b9d9079..35a1075815 100644
--- a/Documentation/webkitgtk-6.0/class.WebsiteDataAccessPermissionRequest.html
+++ b/Documentation/webkitgtk-6.0/class.WebsiteDataAccessPermissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.WebsiteDataManager.html b/Documentation/webkitgtk-6.0/class.WebsiteDataManager.html
index 4ebc732c85..f5792813d5 100644
--- a/Documentation/webkitgtk-6.0/class.WebsiteDataManager.html
+++ b/Documentation/webkitgtk-6.0/class.WebsiteDataManager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.WebsitePolicies.html b/Documentation/webkitgtk-6.0/class.WebsitePolicies.html
index 57e2a128d3..8ca13fa317 100644
--- a/Documentation/webkitgtk-6.0/class.WebsitePolicies.html
+++ b/Documentation/webkitgtk-6.0/class.WebsitePolicies.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/class.WindowProperties.html b/Documentation/webkitgtk-6.0/class.WindowProperties.html
index 920fae658c..dfc92263f2 100644
--- a/Documentation/webkitgtk-6.0/class.WindowProperties.html
+++ b/Documentation/webkitgtk-6.0/class.WindowProperties.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/classes_hierarchy.html b/Documentation/webkitgtk-6.0/classes_hierarchy.html
index aa0fe5b360..8bc34a543b 100644
--- a/Documentation/webkitgtk-6.0/classes_hierarchy.html
+++ b/Documentation/webkitgtk-6.0/classes_hierarchy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_COPY.html b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_COPY.html
index 93bc40cd96..2aed70283f 100644
--- a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_COPY.html
+++ b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_COPY.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_CREATE_LINK.html b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_CREATE_LINK.html
index 1fc30bb70f..76079487c6 100644
--- a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_CREATE_LINK.html
+++ b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_CREATE_LINK.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_CUT.html b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_CUT.html
index 5372a2d8f4..9fd7a34683 100644
--- a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_CUT.html
+++ b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_CUT.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_INSERT_IMAGE.html b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_INSERT_IMAGE.html
index 33832ba2b9..f0272b8ac7 100644
--- a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_INSERT_IMAGE.html
+++ b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_INSERT_IMAGE.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_PASTE.html b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_PASTE.html
index a8e46f2e72..b0c5d0aecf 100644
--- a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_PASTE.html
+++ b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_PASTE.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_PASTE_AS_PLAIN_TEXT.html b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_PASTE_AS_PLAIN_TEXT.html
index 842c14d975..b4307d042d 100644
--- a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_PASTE_AS_PLAIN_TEXT.html
+++ b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_PASTE_AS_PLAIN_TEXT.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_REDO.html b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_REDO.html
index 5123a11973..927a79ba27 100644
--- a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_REDO.html
+++ b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_REDO.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_SELECT_ALL.html b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_SELECT_ALL.html
index c0e338ce6a..22344e3328 100644
--- a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_SELECT_ALL.html
+++ b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_SELECT_ALL.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_UNDO.html b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_UNDO.html
index 32a98a7aed..bebe8a6102 100644
--- a/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_UNDO.html
+++ b/Documentation/webkitgtk-6.0/const.EDITING_COMMAND_UNDO.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.MAJOR_VERSION.html b/Documentation/webkitgtk-6.0/const.MAJOR_VERSION.html
index 0b87d5d8af..bd8b09a65c 100644
--- a/Documentation/webkitgtk-6.0/const.MAJOR_VERSION.html
+++ b/Documentation/webkitgtk-6.0/const.MAJOR_VERSION.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/const.MICRO_VERSION.html b/Documentation/webkitgtk-6.0/const.MICRO_VERSION.html
index dd8c0c0a51..0f7496518d 100644
--- a/Documentation/webkitgtk-6.0/const.MICRO_VERSION.html
+++ b/Documentation/webkitgtk-6.0/const.MICRO_VERSION.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
@@ -100,7 +100,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
       </h4>
 
       <div class="docblock">
-        <pre><code><div class="highlight"><pre><span></span><span class="cp">#define WEBKIT_MICRO_VERSION 3</span>
+        <pre><code><div class="highlight"><pre><span></span><span class="cp">#define WEBKIT_MICRO_VERSION 4</span>
 </pre></div>
 </code></pre>
       </div>
diff --git a/Documentation/webkitgtk-6.0/const.MINOR_VERSION.html b/Documentation/webkitgtk-6.0/const.MINOR_VERSION.html
index f3a4b15d6e..122a9c635f 100644
--- a/Documentation/webkitgtk-6.0/const.MINOR_VERSION.html
+++ b/Documentation/webkitgtk-6.0/const.MINOR_VERSION.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.ApplicationInfo.new.html b/Documentation/webkitgtk-6.0/ctor.ApplicationInfo.new.html
index af8bfce4b4..4bc3b1b65b 100644
--- a/Documentation/webkitgtk-6.0/ctor.ApplicationInfo.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.ApplicationInfo.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.ContextMenu.new.html b/Documentation/webkitgtk-6.0/ctor.ContextMenu.new.html
index 487dd7d6a3..0d89d505c7 100644
--- a/Documentation/webkitgtk-6.0/ctor.ContextMenu.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.ContextMenu.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.ContextMenu.new_with_items.html b/Documentation/webkitgtk-6.0/ctor.ContextMenu.new_with_items.html
index f9d4304279..ca6af5853a 100644
--- a/Documentation/webkitgtk-6.0/ctor.ContextMenu.new_with_items.html
+++ b/Documentation/webkitgtk-6.0/ctor.ContextMenu.new_with_items.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_gaction.html b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_gaction.html
index 0b332a6cc0..a508702adc 100644
--- a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_gaction.html
+++ b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_gaction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_stock_action.html b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_stock_action.html
index 913d06ce89..7c0dac436a 100644
--- a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_stock_action.html
+++ b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_stock_action.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_stock_action_with_label.html b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_stock_action_with_label.html
index 98a2c4bdf4..a034d2dadc 100644
--- a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_stock_action_with_label.html
+++ b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_from_stock_action_with_label.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_separator.html b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_separator.html
index cde78b66a1..e6c0a9539c 100644
--- a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_separator.html
+++ b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_separator.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_with_submenu.html b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_with_submenu.html
index 1435d12f74..79dabf2e90 100644
--- a/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_with_submenu.html
+++ b/Documentation/webkitgtk-6.0/ctor.ContextMenuItem.new_with_submenu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.Credential.new.html b/Documentation/webkitgtk-6.0/ctor.Credential.new.html
index b8ecbfef83..821d60d6ed 100644
--- a/Documentation/webkitgtk-6.0/ctor.Credential.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.Credential.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.Credential.new_for_certificate.html b/Documentation/webkitgtk-6.0/ctor.Credential.new_for_certificate.html
index a55a85f049..483248ca3e 100644
--- a/Documentation/webkitgtk-6.0/ctor.Credential.new_for_certificate.html
+++ b/Documentation/webkitgtk-6.0/ctor.Credential.new_for_certificate.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.Credential.new_for_certificate_pin.html b/Documentation/webkitgtk-6.0/ctor.Credential.new_for_certificate_pin.html
index 9c4f9e0463..062ee95bee 100644
--- a/Documentation/webkitgtk-6.0/ctor.Credential.new_for_certificate_pin.html
+++ b/Documentation/webkitgtk-6.0/ctor.Credential.new_for_certificate_pin.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.GeolocationPosition.new.html b/Documentation/webkitgtk-6.0/ctor.GeolocationPosition.new.html
index 64b2349baf..e6b3cdb62b 100644
--- a/Documentation/webkitgtk-6.0/ctor.GeolocationPosition.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.GeolocationPosition.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.InputMethodUnderline.new.html b/Documentation/webkitgtk-6.0/ctor.InputMethodUnderline.new.html
index 0ec8e05847..db6ba45fba 100644
--- a/Documentation/webkitgtk-6.0/ctor.InputMethodUnderline.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.InputMethodUnderline.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.MemoryPressureSettings.new.html b/Documentation/webkitgtk-6.0/ctor.MemoryPressureSettings.new.html
index b5a43dcd1a..805f2d6973 100644
--- a/Documentation/webkitgtk-6.0/ctor.MemoryPressureSettings.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.MemoryPressureSettings.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.NetworkProxySettings.new.html b/Documentation/webkitgtk-6.0/ctor.NetworkProxySettings.new.html
index 78707f8aa4..e0e9e76d03 100644
--- a/Documentation/webkitgtk-6.0/ctor.NetworkProxySettings.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.NetworkProxySettings.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.NetworkSession.new.html b/Documentation/webkitgtk-6.0/ctor.NetworkSession.new.html
index f4b69b4ddf..d8d5929aed 100644
--- a/Documentation/webkitgtk-6.0/ctor.NetworkSession.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.NetworkSession.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.NetworkSession.new_ephemeral.html b/Documentation/webkitgtk-6.0/ctor.NetworkSession.new_ephemeral.html
index b33b822f1d..1b9118a468 100644
--- a/Documentation/webkitgtk-6.0/ctor.NetworkSession.new_ephemeral.html
+++ b/Documentation/webkitgtk-6.0/ctor.NetworkSession.new_ephemeral.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.PrintOperation.new.html b/Documentation/webkitgtk-6.0/ctor.PrintOperation.new.html
index 67865b3a06..f28b869024 100644
--- a/Documentation/webkitgtk-6.0/ctor.PrintOperation.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.PrintOperation.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.SecurityOrigin.new.html b/Documentation/webkitgtk-6.0/ctor.SecurityOrigin.new.html
index 0401ae08b1..825a63241e 100644
--- a/Documentation/webkitgtk-6.0/ctor.SecurityOrigin.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.SecurityOrigin.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.SecurityOrigin.new_for_uri.html b/Documentation/webkitgtk-6.0/ctor.SecurityOrigin.new_for_uri.html
index 7e78998a43..cb2c92e004 100644
--- a/Documentation/webkitgtk-6.0/ctor.SecurityOrigin.new_for_uri.html
+++ b/Documentation/webkitgtk-6.0/ctor.SecurityOrigin.new_for_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.Settings.new.html b/Documentation/webkitgtk-6.0/ctor.Settings.new.html
index e90c411c05..3463530322 100644
--- a/Documentation/webkitgtk-6.0/ctor.Settings.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.Settings.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.Settings.new_with_settings.html b/Documentation/webkitgtk-6.0/ctor.Settings.new_with_settings.html
index 863b9b7d6c..e654932946 100644
--- a/Documentation/webkitgtk-6.0/ctor.Settings.new_with_settings.html
+++ b/Documentation/webkitgtk-6.0/ctor.Settings.new_with_settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.URIRequest.new.html b/Documentation/webkitgtk-6.0/ctor.URIRequest.new.html
index e1bf4aa4ef..2d2b2450ad 100644
--- a/Documentation/webkitgtk-6.0/ctor.URIRequest.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.URIRequest.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.URISchemeResponse.new.html b/Documentation/webkitgtk-6.0/ctor.URISchemeResponse.new.html
index 8804ec2ff6..fde2372222 100644
--- a/Documentation/webkitgtk-6.0/ctor.URISchemeResponse.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.URISchemeResponse.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.UserContentFilterStore.new.html b/Documentation/webkitgtk-6.0/ctor.UserContentFilterStore.new.html
index 696a454d1a..660825c9ab 100644
--- a/Documentation/webkitgtk-6.0/ctor.UserContentFilterStore.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.UserContentFilterStore.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.UserContentManager.new.html b/Documentation/webkitgtk-6.0/ctor.UserContentManager.new.html
index a4e628c3f3..de8f86cc06 100644
--- a/Documentation/webkitgtk-6.0/ctor.UserContentManager.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.UserContentManager.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.UserMessage.new.html b/Documentation/webkitgtk-6.0/ctor.UserMessage.new.html
index 3029a853da..3dba081721 100644
--- a/Documentation/webkitgtk-6.0/ctor.UserMessage.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.UserMessage.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.UserMessage.new_with_fd_list.html b/Documentation/webkitgtk-6.0/ctor.UserMessage.new_with_fd_list.html
index 4ed33ffc27..a667517cd9 100644
--- a/Documentation/webkitgtk-6.0/ctor.UserMessage.new_with_fd_list.html
+++ b/Documentation/webkitgtk-6.0/ctor.UserMessage.new_with_fd_list.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.UserScript.new.html b/Documentation/webkitgtk-6.0/ctor.UserScript.new.html
index 328edfa000..23098e9394 100644
--- a/Documentation/webkitgtk-6.0/ctor.UserScript.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.UserScript.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.UserScript.new_for_world.html b/Documentation/webkitgtk-6.0/ctor.UserScript.new_for_world.html
index edfcdae2ba..7a1068e053 100644
--- a/Documentation/webkitgtk-6.0/ctor.UserScript.new_for_world.html
+++ b/Documentation/webkitgtk-6.0/ctor.UserScript.new_for_world.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.UserStyleSheet.new.html b/Documentation/webkitgtk-6.0/ctor.UserStyleSheet.new.html
index 557c5f9461..83ac5e2030 100644
--- a/Documentation/webkitgtk-6.0/ctor.UserStyleSheet.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.UserStyleSheet.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.UserStyleSheet.new_for_world.html b/Documentation/webkitgtk-6.0/ctor.UserStyleSheet.new_for_world.html
index 61af8e3f72..c210473812 100644
--- a/Documentation/webkitgtk-6.0/ctor.UserStyleSheet.new_for_world.html
+++ b/Documentation/webkitgtk-6.0/ctor.UserStyleSheet.new_for_world.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.WebContext.new.html b/Documentation/webkitgtk-6.0/ctor.WebContext.new.html
index b6c6bcdc29..fa555aaaaa 100644
--- a/Documentation/webkitgtk-6.0/ctor.WebContext.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.WebContext.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.WebView.new.html b/Documentation/webkitgtk-6.0/ctor.WebView.new.html
index 39924f7b1d..c49b3a7132 100644
--- a/Documentation/webkitgtk-6.0/ctor.WebView.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.WebView.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.WebViewSessionState.new.html b/Documentation/webkitgtk-6.0/ctor.WebViewSessionState.new.html
index 92789163db..0119ebdc35 100644
--- a/Documentation/webkitgtk-6.0/ctor.WebViewSessionState.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.WebViewSessionState.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.WebsitePolicies.new.html b/Documentation/webkitgtk-6.0/ctor.WebsitePolicies.new.html
index fea27d8be9..7d8642d5b9 100644
--- a/Documentation/webkitgtk-6.0/ctor.WebsitePolicies.new.html
+++ b/Documentation/webkitgtk-6.0/ctor.WebsitePolicies.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/ctor.WebsitePolicies.new_with_policies.html b/Documentation/webkitgtk-6.0/ctor.WebsitePolicies.new_with_policies.html
index 85db9f06b5..cc2994147f 100644
--- a/Documentation/webkitgtk-6.0/ctor.WebsitePolicies.new_with_policies.html
+++ b/Documentation/webkitgtk-6.0/ctor.WebsitePolicies.new_with_policies.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.AuthenticationScheme.html b/Documentation/webkitgtk-6.0/enum.AuthenticationScheme.html
index c242cb4f4f..c55dd5151a 100644
--- a/Documentation/webkitgtk-6.0/enum.AuthenticationScheme.html
+++ b/Documentation/webkitgtk-6.0/enum.AuthenticationScheme.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.AutomationBrowsingContextPresentation.html b/Documentation/webkitgtk-6.0/enum.AutomationBrowsingContextPresentation.html
index 7cecaa7639..97bc4ea27c 100644
--- a/Documentation/webkitgtk-6.0/enum.AutomationBrowsingContextPresentation.html
+++ b/Documentation/webkitgtk-6.0/enum.AutomationBrowsingContextPresentation.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.AutoplayPolicy.html b/Documentation/webkitgtk-6.0/enum.AutoplayPolicy.html
index 75b62eb987..5f75801aec 100644
--- a/Documentation/webkitgtk-6.0/enum.AutoplayPolicy.html
+++ b/Documentation/webkitgtk-6.0/enum.AutoplayPolicy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.CacheModel.html b/Documentation/webkitgtk-6.0/enum.CacheModel.html
index d8fd948369..0e58de368b 100644
--- a/Documentation/webkitgtk-6.0/enum.CacheModel.html
+++ b/Documentation/webkitgtk-6.0/enum.CacheModel.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.ContextMenuAction.html b/Documentation/webkitgtk-6.0/enum.ContextMenuAction.html
index 04dddaedf6..50b491fce3 100644
--- a/Documentation/webkitgtk-6.0/enum.ContextMenuAction.html
+++ b/Documentation/webkitgtk-6.0/enum.ContextMenuAction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.CookieAcceptPolicy.html b/Documentation/webkitgtk-6.0/enum.CookieAcceptPolicy.html
index 6da83e69b8..7eb41fb4b6 100644
--- a/Documentation/webkitgtk-6.0/enum.CookieAcceptPolicy.html
+++ b/Documentation/webkitgtk-6.0/enum.CookieAcceptPolicy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.CookiePersistentStorage.html b/Documentation/webkitgtk-6.0/enum.CookiePersistentStorage.html
index 581c01d0b3..898461294a 100644
--- a/Documentation/webkitgtk-6.0/enum.CookiePersistentStorage.html
+++ b/Documentation/webkitgtk-6.0/enum.CookiePersistentStorage.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.CredentialPersistence.html b/Documentation/webkitgtk-6.0/enum.CredentialPersistence.html
index 987121b90c..b43ac10b02 100644
--- a/Documentation/webkitgtk-6.0/enum.CredentialPersistence.html
+++ b/Documentation/webkitgtk-6.0/enum.CredentialPersistence.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.FeatureStatus.html b/Documentation/webkitgtk-6.0/enum.FeatureStatus.html
index ba22156758..6b6f4c6790 100644
--- a/Documentation/webkitgtk-6.0/enum.FeatureStatus.html
+++ b/Documentation/webkitgtk-6.0/enum.FeatureStatus.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.HardwareAccelerationPolicy.html b/Documentation/webkitgtk-6.0/enum.HardwareAccelerationPolicy.html
index a9406585c9..d9c6ec0eb7 100644
--- a/Documentation/webkitgtk-6.0/enum.HardwareAccelerationPolicy.html
+++ b/Documentation/webkitgtk-6.0/enum.HardwareAccelerationPolicy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.InputPurpose.html b/Documentation/webkitgtk-6.0/enum.InputPurpose.html
index 86562d5615..c9f5f8f449 100644
--- a/Documentation/webkitgtk-6.0/enum.InputPurpose.html
+++ b/Documentation/webkitgtk-6.0/enum.InputPurpose.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.InsecureContentEvent.html b/Documentation/webkitgtk-6.0/enum.InsecureContentEvent.html
index fe464fe88e..d63c817f50 100644
--- a/Documentation/webkitgtk-6.0/enum.InsecureContentEvent.html
+++ b/Documentation/webkitgtk-6.0/enum.InsecureContentEvent.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.LoadEvent.html b/Documentation/webkitgtk-6.0/enum.LoadEvent.html
index 0aa8a334bb..e1ab7dfe07 100644
--- a/Documentation/webkitgtk-6.0/enum.LoadEvent.html
+++ b/Documentation/webkitgtk-6.0/enum.LoadEvent.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.MediaCaptureState.html b/Documentation/webkitgtk-6.0/enum.MediaCaptureState.html
index 779e994fe0..88fa494886 100644
--- a/Documentation/webkitgtk-6.0/enum.MediaCaptureState.html
+++ b/Documentation/webkitgtk-6.0/enum.MediaCaptureState.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.NavigationType.html b/Documentation/webkitgtk-6.0/enum.NavigationType.html
index ba7e3cdf99..3ead390df8 100644
--- a/Documentation/webkitgtk-6.0/enum.NavigationType.html
+++ b/Documentation/webkitgtk-6.0/enum.NavigationType.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.NetworkProxyMode.html b/Documentation/webkitgtk-6.0/enum.NetworkProxyMode.html
index e68bfbd231..083be596c2 100644
--- a/Documentation/webkitgtk-6.0/enum.NetworkProxyMode.html
+++ b/Documentation/webkitgtk-6.0/enum.NetworkProxyMode.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.PermissionState.html b/Documentation/webkitgtk-6.0/enum.PermissionState.html
index 8dc8f41fdb..26de05dbb5 100644
--- a/Documentation/webkitgtk-6.0/enum.PermissionState.html
+++ b/Documentation/webkitgtk-6.0/enum.PermissionState.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.PolicyDecisionType.html b/Documentation/webkitgtk-6.0/enum.PolicyDecisionType.html
index 242fe7c8ae..f5e93ac872 100644
--- a/Documentation/webkitgtk-6.0/enum.PolicyDecisionType.html
+++ b/Documentation/webkitgtk-6.0/enum.PolicyDecisionType.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.PrintOperationResponse.html b/Documentation/webkitgtk-6.0/enum.PrintOperationResponse.html
index 43861c7ee7..1111bda515 100644
--- a/Documentation/webkitgtk-6.0/enum.PrintOperationResponse.html
+++ b/Documentation/webkitgtk-6.0/enum.PrintOperationResponse.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.SaveMode.html b/Documentation/webkitgtk-6.0/enum.SaveMode.html
index e076a4deba..fd03198504 100644
--- a/Documentation/webkitgtk-6.0/enum.SaveMode.html
+++ b/Documentation/webkitgtk-6.0/enum.SaveMode.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.ScriptDialogType.html b/Documentation/webkitgtk-6.0/enum.ScriptDialogType.html
index 69f54cebc0..d8a330a076 100644
--- a/Documentation/webkitgtk-6.0/enum.ScriptDialogType.html
+++ b/Documentation/webkitgtk-6.0/enum.ScriptDialogType.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.SnapshotRegion.html b/Documentation/webkitgtk-6.0/enum.SnapshotRegion.html
index 3094ee884b..d5612c8d65 100644
--- a/Documentation/webkitgtk-6.0/enum.SnapshotRegion.html
+++ b/Documentation/webkitgtk-6.0/enum.SnapshotRegion.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.TLSErrorsPolicy.html b/Documentation/webkitgtk-6.0/enum.TLSErrorsPolicy.html
index f585050192..51d40eb4cd 100644
--- a/Documentation/webkitgtk-6.0/enum.TLSErrorsPolicy.html
+++ b/Documentation/webkitgtk-6.0/enum.TLSErrorsPolicy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.UserContentInjectedFrames.html b/Documentation/webkitgtk-6.0/enum.UserContentInjectedFrames.html
index 5080d2b2aa..b075433b93 100644
--- a/Documentation/webkitgtk-6.0/enum.UserContentInjectedFrames.html
+++ b/Documentation/webkitgtk-6.0/enum.UserContentInjectedFrames.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.UserScriptInjectionTime.html b/Documentation/webkitgtk-6.0/enum.UserScriptInjectionTime.html
index f089451d66..6e1dc7dc73 100644
--- a/Documentation/webkitgtk-6.0/enum.UserScriptInjectionTime.html
+++ b/Documentation/webkitgtk-6.0/enum.UserScriptInjectionTime.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.UserStyleLevel.html b/Documentation/webkitgtk-6.0/enum.UserStyleLevel.html
index 65c921582c..238aae4e0c 100644
--- a/Documentation/webkitgtk-6.0/enum.UserStyleLevel.html
+++ b/Documentation/webkitgtk-6.0/enum.UserStyleLevel.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.WebExtensionMode.html b/Documentation/webkitgtk-6.0/enum.WebExtensionMode.html
index 5a07181ffb..d5d2029ac9 100644
--- a/Documentation/webkitgtk-6.0/enum.WebExtensionMode.html
+++ b/Documentation/webkitgtk-6.0/enum.WebExtensionMode.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/enum.WebProcessTerminationReason.html b/Documentation/webkitgtk-6.0/enum.WebProcessTerminationReason.html
index 1dd5a163c0..19fb5cc918 100644
--- a/Documentation/webkitgtk-6.0/enum.WebProcessTerminationReason.html
+++ b/Documentation/webkitgtk-6.0/enum.WebProcessTerminationReason.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.DownloadError.html b/Documentation/webkitgtk-6.0/error.DownloadError.html
index 08a2a0d8f1..3eb55cc323 100644
--- a/Documentation/webkitgtk-6.0/error.DownloadError.html
+++ b/Documentation/webkitgtk-6.0/error.DownloadError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.FaviconDatabaseError.html b/Documentation/webkitgtk-6.0/error.FaviconDatabaseError.html
index c1f56fdc11..ee15b6aec4 100644
--- a/Documentation/webkitgtk-6.0/error.FaviconDatabaseError.html
+++ b/Documentation/webkitgtk-6.0/error.FaviconDatabaseError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.JavascriptError.html b/Documentation/webkitgtk-6.0/error.JavascriptError.html
index 80dbb59e95..804ec0ce32 100644
--- a/Documentation/webkitgtk-6.0/error.JavascriptError.html
+++ b/Documentation/webkitgtk-6.0/error.JavascriptError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.MediaError.html b/Documentation/webkitgtk-6.0/error.MediaError.html
index 5e2c09c0f3..52524191b7 100644
--- a/Documentation/webkitgtk-6.0/error.MediaError.html
+++ b/Documentation/webkitgtk-6.0/error.MediaError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.NetworkError.html b/Documentation/webkitgtk-6.0/error.NetworkError.html
index 2f4e8aa82a..f6af68e3e0 100644
--- a/Documentation/webkitgtk-6.0/error.NetworkError.html
+++ b/Documentation/webkitgtk-6.0/error.NetworkError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.PolicyError.html b/Documentation/webkitgtk-6.0/error.PolicyError.html
index cec57d8abe..f9ff0e5a25 100644
--- a/Documentation/webkitgtk-6.0/error.PolicyError.html
+++ b/Documentation/webkitgtk-6.0/error.PolicyError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.PrintError.html b/Documentation/webkitgtk-6.0/error.PrintError.html
index 79a646df78..cec16e7b06 100644
--- a/Documentation/webkitgtk-6.0/error.PrintError.html
+++ b/Documentation/webkitgtk-6.0/error.PrintError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.SnapshotError.html b/Documentation/webkitgtk-6.0/error.SnapshotError.html
index b5d34cd226..6c91dbe157 100644
--- a/Documentation/webkitgtk-6.0/error.SnapshotError.html
+++ b/Documentation/webkitgtk-6.0/error.SnapshotError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.UserContentFilterError.html b/Documentation/webkitgtk-6.0/error.UserContentFilterError.html
index 7681722550..0331ba5385 100644
--- a/Documentation/webkitgtk-6.0/error.UserContentFilterError.html
+++ b/Documentation/webkitgtk-6.0/error.UserContentFilterError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/error.UserMessageError.html b/Documentation/webkitgtk-6.0/error.UserMessageError.html
index f26d5b2331..175c82151a 100644
--- a/Documentation/webkitgtk-6.0/error.UserMessageError.html
+++ b/Documentation/webkitgtk-6.0/error.UserMessageError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/flags.EditorTypingAttributes.html b/Documentation/webkitgtk-6.0/flags.EditorTypingAttributes.html
index 866da0c779..1eca0667b0 100644
--- a/Documentation/webkitgtk-6.0/flags.EditorTypingAttributes.html
+++ b/Documentation/webkitgtk-6.0/flags.EditorTypingAttributes.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/flags.FindOptions.html b/Documentation/webkitgtk-6.0/flags.FindOptions.html
index 94f05f83f7..ba645a18de 100644
--- a/Documentation/webkitgtk-6.0/flags.FindOptions.html
+++ b/Documentation/webkitgtk-6.0/flags.FindOptions.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/flags.HitTestResultContext.html b/Documentation/webkitgtk-6.0/flags.HitTestResultContext.html
index 542a3a78cc..d646723544 100644
--- a/Documentation/webkitgtk-6.0/flags.HitTestResultContext.html
+++ b/Documentation/webkitgtk-6.0/flags.HitTestResultContext.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/flags.InputHints.html b/Documentation/webkitgtk-6.0/flags.InputHints.html
index dfc3f491fe..51ab30613b 100644
--- a/Documentation/webkitgtk-6.0/flags.InputHints.html
+++ b/Documentation/webkitgtk-6.0/flags.InputHints.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/flags.SnapshotOptions.html b/Documentation/webkitgtk-6.0/flags.SnapshotOptions.html
index 02a855c438..4d1ca80389 100644
--- a/Documentation/webkitgtk-6.0/flags.SnapshotOptions.html
+++ b/Documentation/webkitgtk-6.0/flags.SnapshotOptions.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/flags.WebsiteDataTypes.html b/Documentation/webkitgtk-6.0/flags.WebsiteDataTypes.html
index 43d1dd42dc..97589a7585 100644
--- a/Documentation/webkitgtk-6.0/flags.WebsiteDataTypes.html
+++ b/Documentation/webkitgtk-6.0/flags.WebsiteDataTypes.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.CHECK_VERSION.html b/Documentation/webkitgtk-6.0/func.CHECK_VERSION.html
index 819cf9a7e7..5768a68fef 100644
--- a/Documentation/webkitgtk-6.0/func.CHECK_VERSION.html
+++ b/Documentation/webkitgtk-6.0/func.CHECK_VERSION.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.DECLARE_DERIVABLE_TYPE.html b/Documentation/webkitgtk-6.0/func.DECLARE_DERIVABLE_TYPE.html
index 9ebc7a1234..296a22e536 100644
--- a/Documentation/webkitgtk-6.0/func.DECLARE_DERIVABLE_TYPE.html
+++ b/Documentation/webkitgtk-6.0/func.DECLARE_DERIVABLE_TYPE.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.DECLARE_FINAL_TYPE.html b/Documentation/webkitgtk-6.0/func.DECLARE_FINAL_TYPE.html
index 726785db06..3de4dac535 100644
--- a/Documentation/webkitgtk-6.0/func.DECLARE_FINAL_TYPE.html
+++ b/Documentation/webkitgtk-6.0/func.DECLARE_FINAL_TYPE.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.DECLARE_TYPE.html b/Documentation/webkitgtk-6.0/func.DECLARE_TYPE.html
index 50dbfd69ad..7232472df7 100644
--- a/Documentation/webkitgtk-6.0/func.DECLARE_TYPE.html
+++ b/Documentation/webkitgtk-6.0/func.DECLARE_TYPE.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.DEPRECATED_FOR.html b/Documentation/webkitgtk-6.0/func.DEPRECATED_FOR.html
index cc1032e7c2..d12fb8dbe0 100644
--- a/Documentation/webkitgtk-6.0/func.DEPRECATED_FOR.html
+++ b/Documentation/webkitgtk-6.0/func.DEPRECATED_FOR.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.get_major_version.html b/Documentation/webkitgtk-6.0/func.get_major_version.html
index a53ecf8102..2f5b454543 100644
--- a/Documentation/webkitgtk-6.0/func.get_major_version.html
+++ b/Documentation/webkitgtk-6.0/func.get_major_version.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.get_micro_version.html b/Documentation/webkitgtk-6.0/func.get_micro_version.html
index 50f13a6da4..7ff2763737 100644
--- a/Documentation/webkitgtk-6.0/func.get_micro_version.html
+++ b/Documentation/webkitgtk-6.0/func.get_micro_version.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.get_minor_version.html b/Documentation/webkitgtk-6.0/func.get_minor_version.html
index cdf4a4482d..81bb04b2c7 100644
--- a/Documentation/webkitgtk-6.0/func.get_minor_version.html
+++ b/Documentation/webkitgtk-6.0/func.get_minor_version.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.media_key_system_permission_get_name.html b/Documentation/webkitgtk-6.0/func.media_key_system_permission_get_name.html
index 6fd8a0d417..96ba2b08e7 100644
--- a/Documentation/webkitgtk-6.0/func.media_key_system_permission_get_name.html
+++ b/Documentation/webkitgtk-6.0/func.media_key_system_permission_get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.uri_for_display.html b/Documentation/webkitgtk-6.0/func.uri_for_display.html
index 82cef055e2..cbdc1d57db 100644
--- a/Documentation/webkitgtk-6.0/func.uri_for_display.html
+++ b/Documentation/webkitgtk-6.0/func.uri_for_display.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_audio_device.html b/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_audio_device.html
index 91eba5c32a..19e26a4d8a 100644
--- a/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_audio_device.html
+++ b/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_audio_device.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_display_device.html b/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_display_device.html
index 1532e36613..a660a1b1c3 100644
--- a/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_display_device.html
+++ b/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_display_device.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_video_device.html b/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_video_device.html
index 723aaf8ed9..1afec8e092 100644
--- a/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_video_device.html
+++ b/Documentation/webkitgtk-6.0/func.user_media_permission_is_for_video_device.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/iface.PermissionRequest.html b/Documentation/webkitgtk-6.0/iface.PermissionRequest.html
index df7575fa92..3b7fe48522 100644
--- a/Documentation/webkitgtk-6.0/iface.PermissionRequest.html
+++ b/Documentation/webkitgtk-6.0/iface.PermissionRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/index.html b/Documentation/webkitgtk-6.0/index.html
index 211643d9ed..e086d0d884 100644
--- a/Documentation/webkitgtk-6.0/index.html
+++ b/Documentation/webkitgtk-6.0/index.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
@@ -173,7 +173,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
 
     <div class="meta info">
       <table>
-        <tr><td><em>Version</em></td><td>2.46.3</td></tr>
+        <tr><td><em>Version</em></td><td>2.46.4</td></tr>
         <tr><td><em>Authors</em></td><td>The WebKit GTK and WPE teams</td></tr>
         <tr><td><em>License</em></td><td>BSD, LGPL-2.1</td></tr>
         <tr><td><em>Website</em></td><td><a href="https://webkit.org" class="external">https://webkit.org</a></td></tr>
diff --git a/Documentation/webkitgtk-6.0/method.ApplicationInfo.get_name.html b/Documentation/webkitgtk-6.0/method.ApplicationInfo.get_name.html
index fe6c2d850f..6409e0d030 100644
--- a/Documentation/webkitgtk-6.0/method.ApplicationInfo.get_name.html
+++ b/Documentation/webkitgtk-6.0/method.ApplicationInfo.get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ApplicationInfo.get_version.html b/Documentation/webkitgtk-6.0/method.ApplicationInfo.get_version.html
index 16f9db5918..2caf01b8e8 100644
--- a/Documentation/webkitgtk-6.0/method.ApplicationInfo.get_version.html
+++ b/Documentation/webkitgtk-6.0/method.ApplicationInfo.get_version.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ApplicationInfo.ref.html b/Documentation/webkitgtk-6.0/method.ApplicationInfo.ref.html
index 8fd43030d2..2df755b8a8 100644
--- a/Documentation/webkitgtk-6.0/method.ApplicationInfo.ref.html
+++ b/Documentation/webkitgtk-6.0/method.ApplicationInfo.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ApplicationInfo.set_name.html b/Documentation/webkitgtk-6.0/method.ApplicationInfo.set_name.html
index 7d9d072faf..40155fabfd 100644
--- a/Documentation/webkitgtk-6.0/method.ApplicationInfo.set_name.html
+++ b/Documentation/webkitgtk-6.0/method.ApplicationInfo.set_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ApplicationInfo.set_version.html b/Documentation/webkitgtk-6.0/method.ApplicationInfo.set_version.html
index 8544118a2b..33a5f40894 100644
--- a/Documentation/webkitgtk-6.0/method.ApplicationInfo.set_version.html
+++ b/Documentation/webkitgtk-6.0/method.ApplicationInfo.set_version.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ApplicationInfo.unref.html b/Documentation/webkitgtk-6.0/method.ApplicationInfo.unref.html
index 3ab0ff5aef..3265d98d11 100644
--- a/Documentation/webkitgtk-6.0/method.ApplicationInfo.unref.html
+++ b/Documentation/webkitgtk-6.0/method.ApplicationInfo.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.authenticate.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.authenticate.html
index 1cc1d74478..d76fec17c2 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.authenticate.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.authenticate.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.can_save_credentials.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.can_save_credentials.html
index 4c7f3f0bb8..6eff1e7441 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.can_save_credentials.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.can_save_credentials.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.cancel.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.cancel.html
index 5d15cb4104..34defdaceb 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.cancel.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.cancel.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_certificate_pin_flags.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_certificate_pin_flags.html
index bcc0107f7f..6a38f9df90 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_certificate_pin_flags.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_certificate_pin_flags.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_host.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_host.html
index 38c2af998f..8acdeeb025 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_host.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_host.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_port.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_port.html
index 6d3ca3b9a4..f84a491593 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_port.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_port.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_proposed_credential.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_proposed_credential.html
index 009ab7f737..0f7201462a 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_proposed_credential.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_proposed_credential.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_realm.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_realm.html
index 33a5de0155..36c61a0cb5 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_realm.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_realm.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_scheme.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_scheme.html
index 560049dc2f..af875a5440 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_scheme.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_scheme.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_security_origin.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_security_origin.html
index bb34d61046..c1d0151d66 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_security_origin.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.get_security_origin.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.is_for_proxy.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.is_for_proxy.html
index f1f33ae823..cc92dfa3c4 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.is_for_proxy.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.is_for_proxy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.is_retry.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.is_retry.html
index b5f7fcc8c2..0089b563e0 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.is_retry.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.is_retry.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.set_can_save_credentials.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.set_can_save_credentials.html
index 84325a9a76..7aef1a2120 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.set_can_save_credentials.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.set_can_save_credentials.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.set_proposed_credential.html b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.set_proposed_credential.html
index 0e98b5bd9b..abd4dd491a 100644
--- a/Documentation/webkitgtk-6.0/method.AuthenticationRequest.set_proposed_credential.html
+++ b/Documentation/webkitgtk-6.0/method.AuthenticationRequest.set_proposed_credential.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AutomationSession.get_application_info.html b/Documentation/webkitgtk-6.0/method.AutomationSession.get_application_info.html
index 8dc78a7bc2..ac7bb6c172 100644
--- a/Documentation/webkitgtk-6.0/method.AutomationSession.get_application_info.html
+++ b/Documentation/webkitgtk-6.0/method.AutomationSession.get_application_info.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AutomationSession.get_id.html b/Documentation/webkitgtk-6.0/method.AutomationSession.get_id.html
index 2cb877e21f..ed66d584bf 100644
--- a/Documentation/webkitgtk-6.0/method.AutomationSession.get_id.html
+++ b/Documentation/webkitgtk-6.0/method.AutomationSession.get_id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.AutomationSession.set_application_info.html b/Documentation/webkitgtk-6.0/method.AutomationSession.set_application_info.html
index d020de7f76..2c5de96fdf 100644
--- a/Documentation/webkitgtk-6.0/method.AutomationSession.set_application_info.html
+++ b/Documentation/webkitgtk-6.0/method.AutomationSession.set_application_info.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_item.html b/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_item.html
index 1c16e6117d..e053ee4887 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_item.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_list.html b/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_list.html
index 406656adcc..019a7717dd 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_list.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_list.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_list_with_limit.html b/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_list_with_limit.html
index b5816ac96e..45bb7a23f3 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_list_with_limit.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardList.get_back_list_with_limit.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardList.get_current_item.html b/Documentation/webkitgtk-6.0/method.BackForwardList.get_current_item.html
index 544118e136..2b8ef94093 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardList.get_current_item.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardList.get_current_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_item.html b/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_item.html
index 93a96a30f4..3efdc7e780 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_item.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_list.html b/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_list.html
index 14067c569b..69f750766f 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_list.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_list.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_list_with_limit.html b/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_list_with_limit.html
index d816f55c30..841680e38e 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_list_with_limit.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardList.get_forward_list_with_limit.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardList.get_length.html b/Documentation/webkitgtk-6.0/method.BackForwardList.get_length.html
index 6ea216799d..39dfed278f 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardList.get_length.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardList.get_length.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardList.get_nth_item.html b/Documentation/webkitgtk-6.0/method.BackForwardList.get_nth_item.html
index 8c400573b2..bb303941d4 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardList.get_nth_item.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardList.get_nth_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_original_uri.html b/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_original_uri.html
index b598c9289b..4c3bb48bbc 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_original_uri.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_original_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_title.html b/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_title.html
index f01eab0b0c..33f4074daf 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_title.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_uri.html b/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_uri.html
index 673f75f015..98fcab8538 100644
--- a/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_uri.html
+++ b/Documentation/webkitgtk-6.0/method.BackForwardListItem.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.cancel.html b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.cancel.html
index 26339de912..7b1421231f 100644
--- a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.cancel.html
+++ b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.cancel.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.finish.html b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.finish.html
index 43afcab57a..c5d7c9eed1 100644
--- a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.finish.html
+++ b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.get_element_rectangle.html b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.get_element_rectangle.html
index 629b2d5940..f48cf6c63f 100644
--- a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.get_element_rectangle.html
+++ b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.get_element_rectangle.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.get_rgba.html b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.get_rgba.html
index 0b804f180a..471503353e 100644
--- a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.get_rgba.html
+++ b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.get_rgba.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.set_rgba.html b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.set_rgba.html
index ff01c87404..03f66d168b 100644
--- a/Documentation/webkitgtk-6.0/method.ColorChooserRequest.set_rgba.html
+++ b/Documentation/webkitgtk-6.0/method.ColorChooserRequest.set_rgba.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.append.html b/Documentation/webkitgtk-6.0/method.ContextMenu.append.html
index fbd6a6ab44..3d11a6cad4 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.append.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.append.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.first.html b/Documentation/webkitgtk-6.0/method.ContextMenu.first.html
index 779dd008a6..5ab7ed4cf9 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.first.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.first.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.get_event.html b/Documentation/webkitgtk-6.0/method.ContextMenu.get_event.html
index a18873584b..3917d30962 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.get_event.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.get_event.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.get_item_at_position.html b/Documentation/webkitgtk-6.0/method.ContextMenu.get_item_at_position.html
index 5636bd5f47..0568f1eb70 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.get_item_at_position.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.get_item_at_position.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.get_items.html b/Documentation/webkitgtk-6.0/method.ContextMenu.get_items.html
index 68c0b80930..1ec0348b55 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.get_items.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.get_items.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.get_n_items.html b/Documentation/webkitgtk-6.0/method.ContextMenu.get_n_items.html
index 379c524862..35d9953948 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.get_n_items.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.get_n_items.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.get_user_data.html b/Documentation/webkitgtk-6.0/method.ContextMenu.get_user_data.html
index 7ceeb1b790..0c3dbf7483 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.get_user_data.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.get_user_data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.insert.html b/Documentation/webkitgtk-6.0/method.ContextMenu.insert.html
index 9f5bc31bc6..4b26c52950 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.insert.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.insert.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.last.html b/Documentation/webkitgtk-6.0/method.ContextMenu.last.html
index d3be821616..20a7e127f8 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.last.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.last.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.move_item.html b/Documentation/webkitgtk-6.0/method.ContextMenu.move_item.html
index 4d89be8beb..fd60c810ac 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.move_item.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.move_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.prepend.html b/Documentation/webkitgtk-6.0/method.ContextMenu.prepend.html
index bd015baf2d..b311dc79cb 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.prepend.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.prepend.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.remove.html b/Documentation/webkitgtk-6.0/method.ContextMenu.remove.html
index 0cb004895a..85f3753d6a 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.remove.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.remove.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.remove_all.html b/Documentation/webkitgtk-6.0/method.ContextMenu.remove_all.html
index 5de0409eb5..c4325f91fc 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.remove_all.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.remove_all.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenu.set_user_data.html b/Documentation/webkitgtk-6.0/method.ContextMenu.set_user_data.html
index fc833559b6..339bb26722 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenu.set_user_data.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenu.set_user_data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_gaction.html b/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_gaction.html
index 764835dc73..1fa3a4ae1e 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_gaction.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_gaction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_stock_action.html b/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_stock_action.html
index 004b710d61..1a5d968f05 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_stock_action.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_stock_action.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_submenu.html b/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_submenu.html
index 1af5251583..c6e1a8f605 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_submenu.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenuItem.get_submenu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenuItem.is_separator.html b/Documentation/webkitgtk-6.0/method.ContextMenuItem.is_separator.html
index 78c257bbe4..7aa7434393 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenuItem.is_separator.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenuItem.is_separator.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ContextMenuItem.set_submenu.html b/Documentation/webkitgtk-6.0/method.ContextMenuItem.set_submenu.html
index f80fa455f9..e4a4a63253 100644
--- a/Documentation/webkitgtk-6.0/method.ContextMenuItem.set_submenu.html
+++ b/Documentation/webkitgtk-6.0/method.ContextMenuItem.set_submenu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.add_cookie.html b/Documentation/webkitgtk-6.0/method.CookieManager.add_cookie.html
index 228978d0c3..4010d5d4b6 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.add_cookie.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.add_cookie.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.add_cookie_finish.html b/Documentation/webkitgtk-6.0/method.CookieManager.add_cookie_finish.html
index 502fd5f8f9..589047636e 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.add_cookie_finish.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.add_cookie_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.delete_cookie.html b/Documentation/webkitgtk-6.0/method.CookieManager.delete_cookie.html
index eef2b1e201..e8f32c0575 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.delete_cookie.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.delete_cookie.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.delete_cookie_finish.html b/Documentation/webkitgtk-6.0/method.CookieManager.delete_cookie_finish.html
index 4c13fecaf2..aa264fb02e 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.delete_cookie_finish.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.delete_cookie_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.get_accept_policy.html b/Documentation/webkitgtk-6.0/method.CookieManager.get_accept_policy.html
index 4b4a749c98..8f5e63dc1a 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.get_accept_policy.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.get_accept_policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.get_accept_policy_finish.html b/Documentation/webkitgtk-6.0/method.CookieManager.get_accept_policy_finish.html
index fa7a2c71e5..3f23ff373c 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.get_accept_policy_finish.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.get_accept_policy_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.get_all_cookies.html b/Documentation/webkitgtk-6.0/method.CookieManager.get_all_cookies.html
index bd836520f2..c00c73f3b2 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.get_all_cookies.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.get_all_cookies.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.get_all_cookies_finish.html b/Documentation/webkitgtk-6.0/method.CookieManager.get_all_cookies_finish.html
index de642cbe5d..46a4e36109 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.get_all_cookies_finish.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.get_all_cookies_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.get_cookies.html b/Documentation/webkitgtk-6.0/method.CookieManager.get_cookies.html
index 6c0d55b19a..667e5ab8e4 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.get_cookies.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.get_cookies.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.get_cookies_finish.html b/Documentation/webkitgtk-6.0/method.CookieManager.get_cookies_finish.html
index 4ae31ac9b6..4aa41e0f70 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.get_cookies_finish.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.get_cookies_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.replace_cookies.html b/Documentation/webkitgtk-6.0/method.CookieManager.replace_cookies.html
index 4cc0894c50..abd685f938 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.replace_cookies.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.replace_cookies.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.replace_cookies_finish.html b/Documentation/webkitgtk-6.0/method.CookieManager.replace_cookies_finish.html
index 622797c99c..808a4db227 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.replace_cookies_finish.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.replace_cookies_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.set_accept_policy.html b/Documentation/webkitgtk-6.0/method.CookieManager.set_accept_policy.html
index 6f54e573ae..56f8ca7f7c 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.set_accept_policy.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.set_accept_policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.CookieManager.set_persistent_storage.html b/Documentation/webkitgtk-6.0/method.CookieManager.set_persistent_storage.html
index 103ee945ac..719d737b9e 100644
--- a/Documentation/webkitgtk-6.0/method.CookieManager.set_persistent_storage.html
+++ b/Documentation/webkitgtk-6.0/method.CookieManager.set_persistent_storage.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Credential.copy.html b/Documentation/webkitgtk-6.0/method.Credential.copy.html
index 3b153abcf4..fde96fb249 100644
--- a/Documentation/webkitgtk-6.0/method.Credential.copy.html
+++ b/Documentation/webkitgtk-6.0/method.Credential.copy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Credential.free.html b/Documentation/webkitgtk-6.0/method.Credential.free.html
index 537fdd4752..592d03ef1a 100644
--- a/Documentation/webkitgtk-6.0/method.Credential.free.html
+++ b/Documentation/webkitgtk-6.0/method.Credential.free.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Credential.get_certificate.html b/Documentation/webkitgtk-6.0/method.Credential.get_certificate.html
index 1b770a15f2..2103d2eb80 100644
--- a/Documentation/webkitgtk-6.0/method.Credential.get_certificate.html
+++ b/Documentation/webkitgtk-6.0/method.Credential.get_certificate.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Credential.get_password.html b/Documentation/webkitgtk-6.0/method.Credential.get_password.html
index 11ba375b4f..8c28c978f4 100644
--- a/Documentation/webkitgtk-6.0/method.Credential.get_password.html
+++ b/Documentation/webkitgtk-6.0/method.Credential.get_password.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Credential.get_persistence.html b/Documentation/webkitgtk-6.0/method.Credential.get_persistence.html
index a3a17709d2..c4e5005b15 100644
--- a/Documentation/webkitgtk-6.0/method.Credential.get_persistence.html
+++ b/Documentation/webkitgtk-6.0/method.Credential.get_persistence.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Credential.get_username.html b/Documentation/webkitgtk-6.0/method.Credential.get_username.html
index ea39abd570..76cba533f0 100644
--- a/Documentation/webkitgtk-6.0/method.Credential.get_username.html
+++ b/Documentation/webkitgtk-6.0/method.Credential.get_username.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Credential.has_password.html b/Documentation/webkitgtk-6.0/method.Credential.has_password.html
index f0c2e0a8b3..7f9cc7ed46 100644
--- a/Documentation/webkitgtk-6.0/method.Credential.has_password.html
+++ b/Documentation/webkitgtk-6.0/method.Credential.has_password.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.cancel.html b/Documentation/webkitgtk-6.0/method.Download.cancel.html
index 838d3df9e7..5738d4c62b 100644
--- a/Documentation/webkitgtk-6.0/method.Download.cancel.html
+++ b/Documentation/webkitgtk-6.0/method.Download.cancel.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.get_allow_overwrite.html b/Documentation/webkitgtk-6.0/method.Download.get_allow_overwrite.html
index 3e02a95603..2d08264c97 100644
--- a/Documentation/webkitgtk-6.0/method.Download.get_allow_overwrite.html
+++ b/Documentation/webkitgtk-6.0/method.Download.get_allow_overwrite.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.get_destination.html b/Documentation/webkitgtk-6.0/method.Download.get_destination.html
index f3d779cd04..65d44fd18a 100644
--- a/Documentation/webkitgtk-6.0/method.Download.get_destination.html
+++ b/Documentation/webkitgtk-6.0/method.Download.get_destination.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.get_elapsed_time.html b/Documentation/webkitgtk-6.0/method.Download.get_elapsed_time.html
index 0ba00c73e4..15b7a42add 100644
--- a/Documentation/webkitgtk-6.0/method.Download.get_elapsed_time.html
+++ b/Documentation/webkitgtk-6.0/method.Download.get_elapsed_time.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.get_estimated_progress.html b/Documentation/webkitgtk-6.0/method.Download.get_estimated_progress.html
index 584a22051b..952f5716a2 100644
--- a/Documentation/webkitgtk-6.0/method.Download.get_estimated_progress.html
+++ b/Documentation/webkitgtk-6.0/method.Download.get_estimated_progress.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.get_received_data_length.html b/Documentation/webkitgtk-6.0/method.Download.get_received_data_length.html
index a59451fe5c..89a0a5f168 100644
--- a/Documentation/webkitgtk-6.0/method.Download.get_received_data_length.html
+++ b/Documentation/webkitgtk-6.0/method.Download.get_received_data_length.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.get_request.html b/Documentation/webkitgtk-6.0/method.Download.get_request.html
index 73cf48eaca..64e798d01c 100644
--- a/Documentation/webkitgtk-6.0/method.Download.get_request.html
+++ b/Documentation/webkitgtk-6.0/method.Download.get_request.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.get_response.html b/Documentation/webkitgtk-6.0/method.Download.get_response.html
index 5243f3cbee..4fad6d828a 100644
--- a/Documentation/webkitgtk-6.0/method.Download.get_response.html
+++ b/Documentation/webkitgtk-6.0/method.Download.get_response.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.get_web_view.html b/Documentation/webkitgtk-6.0/method.Download.get_web_view.html
index 5ed5da210e..71f5789c8c 100644
--- a/Documentation/webkitgtk-6.0/method.Download.get_web_view.html
+++ b/Documentation/webkitgtk-6.0/method.Download.get_web_view.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.set_allow_overwrite.html b/Documentation/webkitgtk-6.0/method.Download.set_allow_overwrite.html
index ec0348c903..6ffe25fb72 100644
--- a/Documentation/webkitgtk-6.0/method.Download.set_allow_overwrite.html
+++ b/Documentation/webkitgtk-6.0/method.Download.set_allow_overwrite.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Download.set_destination.html b/Documentation/webkitgtk-6.0/method.Download.set_destination.html
index 16e44b9fe4..b9fe1223dd 100644
--- a/Documentation/webkitgtk-6.0/method.Download.set_destination.html
+++ b/Documentation/webkitgtk-6.0/method.Download.set_destination.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.EditorState.get_typing_attributes.html b/Documentation/webkitgtk-6.0/method.EditorState.get_typing_attributes.html
index b1202b031e..429df0537b 100644
--- a/Documentation/webkitgtk-6.0/method.EditorState.get_typing_attributes.html
+++ b/Documentation/webkitgtk-6.0/method.EditorState.get_typing_attributes.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.EditorState.is_copy_available.html b/Documentation/webkitgtk-6.0/method.EditorState.is_copy_available.html
index cc7c357351..03f1f06f66 100644
--- a/Documentation/webkitgtk-6.0/method.EditorState.is_copy_available.html
+++ b/Documentation/webkitgtk-6.0/method.EditorState.is_copy_available.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.EditorState.is_cut_available.html b/Documentation/webkitgtk-6.0/method.EditorState.is_cut_available.html
index 873b6f9518..e3e7d4f116 100644
--- a/Documentation/webkitgtk-6.0/method.EditorState.is_cut_available.html
+++ b/Documentation/webkitgtk-6.0/method.EditorState.is_cut_available.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.EditorState.is_paste_available.html b/Documentation/webkitgtk-6.0/method.EditorState.is_paste_available.html
index d498788171..d49ba6cc42 100644
--- a/Documentation/webkitgtk-6.0/method.EditorState.is_paste_available.html
+++ b/Documentation/webkitgtk-6.0/method.EditorState.is_paste_available.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.EditorState.is_redo_available.html b/Documentation/webkitgtk-6.0/method.EditorState.is_redo_available.html
index 2df9223ccc..a895565f7a 100644
--- a/Documentation/webkitgtk-6.0/method.EditorState.is_redo_available.html
+++ b/Documentation/webkitgtk-6.0/method.EditorState.is_redo_available.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.EditorState.is_undo_available.html b/Documentation/webkitgtk-6.0/method.EditorState.is_undo_available.html
index 94e096036a..f423c3902a 100644
--- a/Documentation/webkitgtk-6.0/method.EditorState.is_undo_available.html
+++ b/Documentation/webkitgtk-6.0/method.EditorState.is_undo_available.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FaviconDatabase.clear.html b/Documentation/webkitgtk-6.0/method.FaviconDatabase.clear.html
index 1b92e102bb..5be8e0d469 100644
--- a/Documentation/webkitgtk-6.0/method.FaviconDatabase.clear.html
+++ b/Documentation/webkitgtk-6.0/method.FaviconDatabase.clear.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon.html b/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon.html
index 6276a07b90..1aff19d55a 100644
--- a/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon.html
+++ b/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon_finish.html b/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon_finish.html
index 5648059e41..5b3d789c0d 100644
--- a/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon_finish.html
+++ b/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon_uri.html b/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon_uri.html
index c35d20eaab..f6661fb224 100644
--- a/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon_uri.html
+++ b/Documentation/webkitgtk-6.0/method.FaviconDatabase.get_favicon_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Feature.get_category.html b/Documentation/webkitgtk-6.0/method.Feature.get_category.html
index e7380824f4..63b2064cb0 100644
--- a/Documentation/webkitgtk-6.0/method.Feature.get_category.html
+++ b/Documentation/webkitgtk-6.0/method.Feature.get_category.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Feature.get_default_value.html b/Documentation/webkitgtk-6.0/method.Feature.get_default_value.html
index 00ec341860..db286c76bc 100644
--- a/Documentation/webkitgtk-6.0/method.Feature.get_default_value.html
+++ b/Documentation/webkitgtk-6.0/method.Feature.get_default_value.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Feature.get_details.html b/Documentation/webkitgtk-6.0/method.Feature.get_details.html
index cf737c928a..6a42f9b49f 100644
--- a/Documentation/webkitgtk-6.0/method.Feature.get_details.html
+++ b/Documentation/webkitgtk-6.0/method.Feature.get_details.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Feature.get_identifier.html b/Documentation/webkitgtk-6.0/method.Feature.get_identifier.html
index f062edd68e..824b9b57b0 100644
--- a/Documentation/webkitgtk-6.0/method.Feature.get_identifier.html
+++ b/Documentation/webkitgtk-6.0/method.Feature.get_identifier.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Feature.get_name.html b/Documentation/webkitgtk-6.0/method.Feature.get_name.html
index 5e5ee179ee..75dc8717d8 100644
--- a/Documentation/webkitgtk-6.0/method.Feature.get_name.html
+++ b/Documentation/webkitgtk-6.0/method.Feature.get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Feature.get_status.html b/Documentation/webkitgtk-6.0/method.Feature.get_status.html
index ba0411d9fc..47bd70a7b7 100644
--- a/Documentation/webkitgtk-6.0/method.Feature.get_status.html
+++ b/Documentation/webkitgtk-6.0/method.Feature.get_status.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Feature.ref.html b/Documentation/webkitgtk-6.0/method.Feature.ref.html
index 394d0f07e9..c1dd7a4c88 100644
--- a/Documentation/webkitgtk-6.0/method.Feature.ref.html
+++ b/Documentation/webkitgtk-6.0/method.Feature.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Feature.unref.html b/Documentation/webkitgtk-6.0/method.Feature.unref.html
index b104ff73aa..de85ff9808 100644
--- a/Documentation/webkitgtk-6.0/method.Feature.unref.html
+++ b/Documentation/webkitgtk-6.0/method.Feature.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FeatureList.get.html b/Documentation/webkitgtk-6.0/method.FeatureList.get.html
index 67ac4ee17e..341ed76d6e 100644
--- a/Documentation/webkitgtk-6.0/method.FeatureList.get.html
+++ b/Documentation/webkitgtk-6.0/method.FeatureList.get.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FeatureList.get_length.html b/Documentation/webkitgtk-6.0/method.FeatureList.get_length.html
index c2ebb20403..0714e624b2 100644
--- a/Documentation/webkitgtk-6.0/method.FeatureList.get_length.html
+++ b/Documentation/webkitgtk-6.0/method.FeatureList.get_length.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FeatureList.ref.html b/Documentation/webkitgtk-6.0/method.FeatureList.ref.html
index d734ea2b47..5814244394 100644
--- a/Documentation/webkitgtk-6.0/method.FeatureList.ref.html
+++ b/Documentation/webkitgtk-6.0/method.FeatureList.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FeatureList.unref.html b/Documentation/webkitgtk-6.0/method.FeatureList.unref.html
index ef6b96eae1..8e655e9690 100644
--- a/Documentation/webkitgtk-6.0/method.FeatureList.unref.html
+++ b/Documentation/webkitgtk-6.0/method.FeatureList.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FileChooserRequest.cancel.html b/Documentation/webkitgtk-6.0/method.FileChooserRequest.cancel.html
index d1f4659775..59b43e2d3c 100644
--- a/Documentation/webkitgtk-6.0/method.FileChooserRequest.cancel.html
+++ b/Documentation/webkitgtk-6.0/method.FileChooserRequest.cancel.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_mime_types.html b/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_mime_types.html
index e793392c99..6ce22860b2 100644
--- a/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_mime_types.html
+++ b/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_mime_types.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_mime_types_filter.html b/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_mime_types_filter.html
index 629f5a49e6..ccd84f10ce 100644
--- a/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_mime_types_filter.html
+++ b/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_mime_types_filter.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_select_multiple.html b/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_select_multiple.html
index 4df9ed3092..29899816d8 100644
--- a/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_select_multiple.html
+++ b/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_select_multiple.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_selected_files.html b/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_selected_files.html
index f9be9f8637..c5b3176f4f 100644
--- a/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_selected_files.html
+++ b/Documentation/webkitgtk-6.0/method.FileChooserRequest.get_selected_files.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FileChooserRequest.select_files.html b/Documentation/webkitgtk-6.0/method.FileChooserRequest.select_files.html
index 568906a2b9..7b5cf3d479 100644
--- a/Documentation/webkitgtk-6.0/method.FileChooserRequest.select_files.html
+++ b/Documentation/webkitgtk-6.0/method.FileChooserRequest.select_files.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FindController.count_matches.html b/Documentation/webkitgtk-6.0/method.FindController.count_matches.html
index 980c30f9f1..89a03ade72 100644
--- a/Documentation/webkitgtk-6.0/method.FindController.count_matches.html
+++ b/Documentation/webkitgtk-6.0/method.FindController.count_matches.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FindController.get_max_match_count.html b/Documentation/webkitgtk-6.0/method.FindController.get_max_match_count.html
index 4c056cc4bd..f971c67ec4 100644
--- a/Documentation/webkitgtk-6.0/method.FindController.get_max_match_count.html
+++ b/Documentation/webkitgtk-6.0/method.FindController.get_max_match_count.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FindController.get_options.html b/Documentation/webkitgtk-6.0/method.FindController.get_options.html
index 365382da97..f64edf9796 100644
--- a/Documentation/webkitgtk-6.0/method.FindController.get_options.html
+++ b/Documentation/webkitgtk-6.0/method.FindController.get_options.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FindController.get_search_text.html b/Documentation/webkitgtk-6.0/method.FindController.get_search_text.html
index 5dd6225903..38ceec9e3b 100644
--- a/Documentation/webkitgtk-6.0/method.FindController.get_search_text.html
+++ b/Documentation/webkitgtk-6.0/method.FindController.get_search_text.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FindController.get_web_view.html b/Documentation/webkitgtk-6.0/method.FindController.get_web_view.html
index 015c0f012e..1f30834401 100644
--- a/Documentation/webkitgtk-6.0/method.FindController.get_web_view.html
+++ b/Documentation/webkitgtk-6.0/method.FindController.get_web_view.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FindController.search.html b/Documentation/webkitgtk-6.0/method.FindController.search.html
index c74c340be2..fdf1c6142a 100644
--- a/Documentation/webkitgtk-6.0/method.FindController.search.html
+++ b/Documentation/webkitgtk-6.0/method.FindController.search.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FindController.search_finish.html b/Documentation/webkitgtk-6.0/method.FindController.search_finish.html
index 0d654d45f5..b6e9f20708 100644
--- a/Documentation/webkitgtk-6.0/method.FindController.search_finish.html
+++ b/Documentation/webkitgtk-6.0/method.FindController.search_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FindController.search_next.html b/Documentation/webkitgtk-6.0/method.FindController.search_next.html
index 509f58d242..5e5c5ce72c 100644
--- a/Documentation/webkitgtk-6.0/method.FindController.search_next.html
+++ b/Documentation/webkitgtk-6.0/method.FindController.search_next.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FindController.search_previous.html b/Documentation/webkitgtk-6.0/method.FindController.search_previous.html
index 5736ca2e34..168201d9b0 100644
--- a/Documentation/webkitgtk-6.0/method.FindController.search_previous.html
+++ b/Documentation/webkitgtk-6.0/method.FindController.search_previous.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FormSubmissionRequest.list_text_fields.html b/Documentation/webkitgtk-6.0/method.FormSubmissionRequest.list_text_fields.html
index 3e0c17b471..3a07051b7e 100644
--- a/Documentation/webkitgtk-6.0/method.FormSubmissionRequest.list_text_fields.html
+++ b/Documentation/webkitgtk-6.0/method.FormSubmissionRequest.list_text_fields.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.FormSubmissionRequest.submit.html b/Documentation/webkitgtk-6.0/method.FormSubmissionRequest.submit.html
index 5fa0b52154..15a636abea 100644
--- a/Documentation/webkitgtk-6.0/method.FormSubmissionRequest.submit.html
+++ b/Documentation/webkitgtk-6.0/method.FormSubmissionRequest.submit.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationManager.failed.html b/Documentation/webkitgtk-6.0/method.GeolocationManager.failed.html
index 43f0e4f9d2..f791119a2b 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationManager.failed.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationManager.failed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationManager.get_enable_high_accuracy.html b/Documentation/webkitgtk-6.0/method.GeolocationManager.get_enable_high_accuracy.html
index 545f190d1e..788ed19ebb 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationManager.get_enable_high_accuracy.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationManager.get_enable_high_accuracy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationManager.update_position.html b/Documentation/webkitgtk-6.0/method.GeolocationManager.update_position.html
index 1b04f4c420..c1e571bcf3 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationManager.update_position.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationManager.update_position.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationPosition.copy.html b/Documentation/webkitgtk-6.0/method.GeolocationPosition.copy.html
index 69c536d681..01299272ca 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationPosition.copy.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationPosition.copy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationPosition.free.html b/Documentation/webkitgtk-6.0/method.GeolocationPosition.free.html
index 79b102fb93..c92423ba07 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationPosition.free.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationPosition.free.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_altitude.html b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_altitude.html
index 838376bac8..ae3e910d76 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_altitude.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_altitude.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_altitude_accuracy.html b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_altitude_accuracy.html
index 657383dbdd..9677701ebe 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_altitude_accuracy.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_altitude_accuracy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_heading.html b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_heading.html
index 3d719fdc1a..bebb28db05 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_heading.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_heading.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_speed.html b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_speed.html
index d2b0f9016e..483165a43e 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_speed.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_speed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_timestamp.html b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_timestamp.html
index e82e06c932..73b15fe9ca 100644
--- a/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_timestamp.html
+++ b/Documentation/webkitgtk-6.0/method.GeolocationPosition.set_timestamp.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_editable.html b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_editable.html
index 0df4ab3c7c..501a326e66 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_editable.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_editable.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_image.html b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_image.html
index 98b01d7001..8a05416980 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_image.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_image.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_link.html b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_link.html
index 8eb5115eb1..a4197afda4 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_link.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_link.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_media.html b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_media.html
index 666c08696e..660f2105ee 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_media.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_media.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_scrollbar.html b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_scrollbar.html
index 97e5c2a28c..6bb16258a4 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_scrollbar.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_scrollbar.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_selection.html b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_selection.html
index 16c441a06d..562d9a6147 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_selection.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.context_is_selection.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.get_context.html b/Documentation/webkitgtk-6.0/method.HitTestResult.get_context.html
index 77d3b58991..125f35836a 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.get_context.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.get_context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.get_image_uri.html b/Documentation/webkitgtk-6.0/method.HitTestResult.get_image_uri.html
index 5ff80fbd86..ebf829852f 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.get_image_uri.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.get_image_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_label.html b/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_label.html
index b73e94727a..8c8ab7d968 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_label.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_label.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_title.html b/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_title.html
index 9c149993cc..7b5b00f9f3 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_title.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_uri.html b/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_uri.html
index a10a2fc7c6..4654523533 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_uri.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.get_link_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.HitTestResult.get_media_uri.html b/Documentation/webkitgtk-6.0/method.HitTestResult.get_media_uri.html
index d8a06bc887..0d76cf1908 100644
--- a/Documentation/webkitgtk-6.0/method.HitTestResult.get_media_uri.html
+++ b/Documentation/webkitgtk-6.0/method.HitTestResult.get_media_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_domain.html b/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_domain.html
index bea3ec807a..6933592475 100644
--- a/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_domain.html
+++ b/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_domain.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_last_update_time.html b/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_last_update_time.html
index 2e83b9e613..b5173f3894 100644
--- a/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_last_update_time.html
+++ b/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_last_update_time.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_website_data_access_allowed.html b/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_website_data_access_allowed.html
index a9c5de8a20..77396edfd6 100644
--- a/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_website_data_access_allowed.html
+++ b/Documentation/webkitgtk-6.0/method.ITPFirstParty.get_website_data_access_allowed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ITPFirstParty.ref.html b/Documentation/webkitgtk-6.0/method.ITPFirstParty.ref.html
index f58cea4c8f..af7f17421b 100644
--- a/Documentation/webkitgtk-6.0/method.ITPFirstParty.ref.html
+++ b/Documentation/webkitgtk-6.0/method.ITPFirstParty.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ITPFirstParty.unref.html b/Documentation/webkitgtk-6.0/method.ITPFirstParty.unref.html
index 4d9509fd63..b5335bf213 100644
--- a/Documentation/webkitgtk-6.0/method.ITPFirstParty.unref.html
+++ b/Documentation/webkitgtk-6.0/method.ITPFirstParty.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ITPThirdParty.get_domain.html b/Documentation/webkitgtk-6.0/method.ITPThirdParty.get_domain.html
index 7077583db0..1fde257985 100644
--- a/Documentation/webkitgtk-6.0/method.ITPThirdParty.get_domain.html
+++ b/Documentation/webkitgtk-6.0/method.ITPThirdParty.get_domain.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ITPThirdParty.get_first_parties.html b/Documentation/webkitgtk-6.0/method.ITPThirdParty.get_first_parties.html
index aa8a02a529..d763c6f62e 100644
--- a/Documentation/webkitgtk-6.0/method.ITPThirdParty.get_first_parties.html
+++ b/Documentation/webkitgtk-6.0/method.ITPThirdParty.get_first_parties.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ITPThirdParty.ref.html b/Documentation/webkitgtk-6.0/method.ITPThirdParty.ref.html
index d39e44ee17..5292e1014a 100644
--- a/Documentation/webkitgtk-6.0/method.ITPThirdParty.ref.html
+++ b/Documentation/webkitgtk-6.0/method.ITPThirdParty.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ITPThirdParty.unref.html b/Documentation/webkitgtk-6.0/method.ITPThirdParty.unref.html
index 220136f57e..5dbcfc69ae 100644
--- a/Documentation/webkitgtk-6.0/method.ITPThirdParty.unref.html
+++ b/Documentation/webkitgtk-6.0/method.ITPThirdParty.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.filter_key_event.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.filter_key_event.html
index 93a7d59164..88377192b7 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.filter_key_event.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.filter_key_event.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.get_input_hints.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.get_input_hints.html
index 491b3a6dca..f8051214b1 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.get_input_hints.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.get_input_hints.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.get_input_purpose.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.get_input_purpose.html
index 9d549e4963..6daa13988b 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.get_input_purpose.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.get_input_purpose.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.get_preedit.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.get_preedit.html
index 16f4427c86..1fe95b146e 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.get_preedit.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.get_preedit.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_cursor_area.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_cursor_area.html
index e2ac7f4d8a..e1a232d420 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_cursor_area.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_cursor_area.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_focus_in.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_focus_in.html
index 0fe9d3e068..f86b312498 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_focus_in.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_focus_in.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_focus_out.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_focus_out.html
index a5ad8184fa..b4fd0d08f6 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_focus_out.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_focus_out.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_surrounding.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_surrounding.html
index 37ebb70f87..249933f2b0 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_surrounding.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.notify_surrounding.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.reset.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.reset.html
index 35b71dd609..b0ac4d3828 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.reset.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.reset.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.set_enable_preedit.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.set_enable_preedit.html
index ae9bd206c2..3a07195c26 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.set_enable_preedit.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.set_enable_preedit.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.set_input_hints.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.set_input_hints.html
index e2de893ed5..4fbde145cc 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.set_input_hints.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.set_input_hints.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodContext.set_input_purpose.html b/Documentation/webkitgtk-6.0/method.InputMethodContext.set_input_purpose.html
index 38a456e9fb..c0f1bb53a7 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodContext.set_input_purpose.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodContext.set_input_purpose.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodUnderline.copy.html b/Documentation/webkitgtk-6.0/method.InputMethodUnderline.copy.html
index 08286a5480..10e635fefe 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodUnderline.copy.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodUnderline.copy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodUnderline.free.html b/Documentation/webkitgtk-6.0/method.InputMethodUnderline.free.html
index f362a64f4f..03258dc910 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodUnderline.free.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodUnderline.free.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.InputMethodUnderline.set_color.html b/Documentation/webkitgtk-6.0/method.InputMethodUnderline.set_color.html
index 32624faeed..9e9d288849 100644
--- a/Documentation/webkitgtk-6.0/method.InputMethodUnderline.set_color.html
+++ b/Documentation/webkitgtk-6.0/method.InputMethodUnderline.set_color.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.copy.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.copy.html
index b09409b118..a142aa9f24 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.copy.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.copy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.free.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.free.html
index 6f305c4905..be977705b4 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.free.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.free.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_conservative_threshold.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_conservative_threshold.html
index 477f1e1f16..25ade0c55e 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_conservative_threshold.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_conservative_threshold.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_kill_threshold.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_kill_threshold.html
index 3ac42a3cf1..e75c0f086b 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_kill_threshold.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_kill_threshold.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_memory_limit.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_memory_limit.html
index b41b85eaf5..8cbe4d9a76 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_memory_limit.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_memory_limit.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_poll_interval.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_poll_interval.html
index 945c30a030..d3882080f5 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_poll_interval.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_poll_interval.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_strict_threshold.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_strict_threshold.html
index 701410ef42..3a9354d598 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_strict_threshold.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.get_strict_threshold.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_conservative_threshold.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_conservative_threshold.html
index 142e433409..dcbe7d45c3 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_conservative_threshold.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_conservative_threshold.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_kill_threshold.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_kill_threshold.html
index e08b3ee85a..01b53cf783 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_kill_threshold.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_kill_threshold.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_memory_limit.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_memory_limit.html
index bb10dd40e2..f770621908 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_memory_limit.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_memory_limit.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_poll_interval.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_poll_interval.html
index 3f33e6be9c..91064a510b 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_poll_interval.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_poll_interval.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_strict_threshold.html b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_strict_threshold.html
index ad4a592bba..ad081ac140 100644
--- a/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_strict_threshold.html
+++ b/Documentation/webkitgtk-6.0/method.MemoryPressureSettings.set_strict_threshold.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationAction.copy.html b/Documentation/webkitgtk-6.0/method.NavigationAction.copy.html
index a4f598b033..8d89980ac4 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationAction.copy.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationAction.copy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationAction.free.html b/Documentation/webkitgtk-6.0/method.NavigationAction.free.html
index f53b618639..27c19b0b40 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationAction.free.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationAction.free.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationAction.get_frame_name.html b/Documentation/webkitgtk-6.0/method.NavigationAction.get_frame_name.html
index 217267b315..37602972cd 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationAction.get_frame_name.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationAction.get_frame_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationAction.get_modifiers.html b/Documentation/webkitgtk-6.0/method.NavigationAction.get_modifiers.html
index 81bd4c6c34..18d49e0d19 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationAction.get_modifiers.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationAction.get_modifiers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationAction.get_mouse_button.html b/Documentation/webkitgtk-6.0/method.NavigationAction.get_mouse_button.html
index b74df55e0b..bba9d2d5f3 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationAction.get_mouse_button.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationAction.get_mouse_button.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationAction.get_navigation_type.html b/Documentation/webkitgtk-6.0/method.NavigationAction.get_navigation_type.html
index 713d3a015e..66b59ee86e 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationAction.get_navigation_type.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationAction.get_navigation_type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationAction.get_request.html b/Documentation/webkitgtk-6.0/method.NavigationAction.get_request.html
index c366a0eac4..b50f254274 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationAction.get_request.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationAction.get_request.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationAction.is_redirect.html b/Documentation/webkitgtk-6.0/method.NavigationAction.is_redirect.html
index 886c94aabb..6e181e5aaf 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationAction.is_redirect.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationAction.is_redirect.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationAction.is_user_gesture.html b/Documentation/webkitgtk-6.0/method.NavigationAction.is_user_gesture.html
index 795531c752..21d8212301 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationAction.is_user_gesture.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationAction.is_user_gesture.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NavigationPolicyDecision.get_navigation_action.html b/Documentation/webkitgtk-6.0/method.NavigationPolicyDecision.get_navigation_action.html
index e1ef522cb8..c814624869 100644
--- a/Documentation/webkitgtk-6.0/method.NavigationPolicyDecision.get_navigation_action.html
+++ b/Documentation/webkitgtk-6.0/method.NavigationPolicyDecision.get_navigation_action.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkProxySettings.add_proxy_for_scheme.html b/Documentation/webkitgtk-6.0/method.NetworkProxySettings.add_proxy_for_scheme.html
index 2493715a1d..7d77ce39ea 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkProxySettings.add_proxy_for_scheme.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkProxySettings.add_proxy_for_scheme.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkProxySettings.copy.html b/Documentation/webkitgtk-6.0/method.NetworkProxySettings.copy.html
index 3f7a12763c..c1bfda346d 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkProxySettings.copy.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkProxySettings.copy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkProxySettings.free.html b/Documentation/webkitgtk-6.0/method.NetworkProxySettings.free.html
index a0e421cbcd..8b2820ba6c 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkProxySettings.free.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkProxySettings.free.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.allow_tls_certificate_for_host.html b/Documentation/webkitgtk-6.0/method.NetworkSession.allow_tls_certificate_for_host.html
index e557642efa..92b82719fa 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.allow_tls_certificate_for_host.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.allow_tls_certificate_for_host.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.download_uri.html b/Documentation/webkitgtk-6.0/method.NetworkSession.download_uri.html
index f2a8ce2596..f591053473 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.download_uri.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.download_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.get_cookie_manager.html b/Documentation/webkitgtk-6.0/method.NetworkSession.get_cookie_manager.html
index e226030991..2a1e52bd82 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.get_cookie_manager.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.get_cookie_manager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_enabled.html b/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_enabled.html
index e161650e22..07dbeaa98a 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_summary.html b/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_summary.html
index 2f0ff5477a..10026ca2a1 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_summary.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_summary.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_summary_finish.html b/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_summary_finish.html
index 0b53ce8b1c..8bca48b891 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_summary_finish.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.get_itp_summary_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.get_persistent_credential_storage_enabled.html b/Documentation/webkitgtk-6.0/method.NetworkSession.get_persistent_credential_storage_enabled.html
index ff846dee89..4a98121284 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.get_persistent_credential_storage_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.get_persistent_credential_storage_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.get_tls_errors_policy.html b/Documentation/webkitgtk-6.0/method.NetworkSession.get_tls_errors_policy.html
index ea6735efc3..2715aec0ad 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.get_tls_errors_policy.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.get_tls_errors_policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.get_website_data_manager.html b/Documentation/webkitgtk-6.0/method.NetworkSession.get_website_data_manager.html
index f13377c384..3642fe1023 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.get_website_data_manager.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.get_website_data_manager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.is_ephemeral.html b/Documentation/webkitgtk-6.0/method.NetworkSession.is_ephemeral.html
index a838b345a2..8be7dacf83 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.is_ephemeral.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.is_ephemeral.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.prefetch_dns.html b/Documentation/webkitgtk-6.0/method.NetworkSession.prefetch_dns.html
index 2f421d821d..2e1823aeda 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.prefetch_dns.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.prefetch_dns.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.set_itp_enabled.html b/Documentation/webkitgtk-6.0/method.NetworkSession.set_itp_enabled.html
index 72cd80e976..f6f057b9d5 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.set_itp_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.set_itp_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.set_persistent_credential_storage_enabled.html b/Documentation/webkitgtk-6.0/method.NetworkSession.set_persistent_credential_storage_enabled.html
index 7f098b2823..d9a36546e2 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.set_persistent_credential_storage_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.set_persistent_credential_storage_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.set_proxy_settings.html b/Documentation/webkitgtk-6.0/method.NetworkSession.set_proxy_settings.html
index 8c51327449..efb028454d 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.set_proxy_settings.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.set_proxy_settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.NetworkSession.set_tls_errors_policy.html b/Documentation/webkitgtk-6.0/method.NetworkSession.set_tls_errors_policy.html
index 735979ec25..d4481e1686 100644
--- a/Documentation/webkitgtk-6.0/method.NetworkSession.set_tls_errors_policy.html
+++ b/Documentation/webkitgtk-6.0/method.NetworkSession.set_tls_errors_policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Notification.clicked.html b/Documentation/webkitgtk-6.0/method.Notification.clicked.html
index bcbd1003c6..fea62093e0 100644
--- a/Documentation/webkitgtk-6.0/method.Notification.clicked.html
+++ b/Documentation/webkitgtk-6.0/method.Notification.clicked.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Notification.close.html b/Documentation/webkitgtk-6.0/method.Notification.close.html
index 482c375c06..5f5828858b 100644
--- a/Documentation/webkitgtk-6.0/method.Notification.close.html
+++ b/Documentation/webkitgtk-6.0/method.Notification.close.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Notification.get_body.html b/Documentation/webkitgtk-6.0/method.Notification.get_body.html
index 3556945d3c..8db66233da 100644
--- a/Documentation/webkitgtk-6.0/method.Notification.get_body.html
+++ b/Documentation/webkitgtk-6.0/method.Notification.get_body.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Notification.get_id.html b/Documentation/webkitgtk-6.0/method.Notification.get_id.html
index a24109bece..9d4062692a 100644
--- a/Documentation/webkitgtk-6.0/method.Notification.get_id.html
+++ b/Documentation/webkitgtk-6.0/method.Notification.get_id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Notification.get_tag.html b/Documentation/webkitgtk-6.0/method.Notification.get_tag.html
index 5dc1ae3305..957292540e 100644
--- a/Documentation/webkitgtk-6.0/method.Notification.get_tag.html
+++ b/Documentation/webkitgtk-6.0/method.Notification.get_tag.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Notification.get_title.html b/Documentation/webkitgtk-6.0/method.Notification.get_title.html
index 3b987dd825..3cddaf78d9 100644
--- a/Documentation/webkitgtk-6.0/method.Notification.get_title.html
+++ b/Documentation/webkitgtk-6.0/method.Notification.get_title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenu.activate_item.html b/Documentation/webkitgtk-6.0/method.OptionMenu.activate_item.html
index dd12c8ddec..8494640c46 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenu.activate_item.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenu.activate_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenu.close.html b/Documentation/webkitgtk-6.0/method.OptionMenu.close.html
index 2fb139a177..d9992f8bfd 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenu.close.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenu.close.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenu.get_event.html b/Documentation/webkitgtk-6.0/method.OptionMenu.get_event.html
index b45d77e014..a5c75cbb4f 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenu.get_event.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenu.get_event.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenu.get_item.html b/Documentation/webkitgtk-6.0/method.OptionMenu.get_item.html
index 5e2faf2ccc..0c5a6f5ecb 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenu.get_item.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenu.get_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenu.get_n_items.html b/Documentation/webkitgtk-6.0/method.OptionMenu.get_n_items.html
index 3703f37876..280cc797a1 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenu.get_n_items.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenu.get_n_items.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenu.select_item.html b/Documentation/webkitgtk-6.0/method.OptionMenu.select_item.html
index 15a852190e..a063cde79c 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenu.select_item.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenu.select_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenuItem.copy.html b/Documentation/webkitgtk-6.0/method.OptionMenuItem.copy.html
index 4ecb42beeb..46b3c85ee0 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenuItem.copy.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenuItem.copy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenuItem.free.html b/Documentation/webkitgtk-6.0/method.OptionMenuItem.free.html
index 41d942e41c..caf6f82d37 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenuItem.free.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenuItem.free.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenuItem.get_label.html b/Documentation/webkitgtk-6.0/method.OptionMenuItem.get_label.html
index 511424c279..791377ebdc 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenuItem.get_label.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenuItem.get_label.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenuItem.get_tooltip.html b/Documentation/webkitgtk-6.0/method.OptionMenuItem.get_tooltip.html
index 77a9c6f9a9..e1541d6bca 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenuItem.get_tooltip.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenuItem.get_tooltip.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_enabled.html b/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_enabled.html
index d172afbc9e..dd48bbb1b7 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_group_child.html b/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_group_child.html
index 02b12c6ac3..6f7bc6b646 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_group_child.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_group_child.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_group_label.html b/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_group_label.html
index 7573a33ec1..ed3591f867 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_group_label.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_group_label.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_selected.html b/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_selected.html
index e1f9221c49..500c153be2 100644
--- a/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_selected.html
+++ b/Documentation/webkitgtk-6.0/method.OptionMenuItem.is_selected.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PermissionRequest.allow.html b/Documentation/webkitgtk-6.0/method.PermissionRequest.allow.html
index 1c5171b21e..f0478d9812 100644
--- a/Documentation/webkitgtk-6.0/method.PermissionRequest.allow.html
+++ b/Documentation/webkitgtk-6.0/method.PermissionRequest.allow.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PermissionRequest.deny.html b/Documentation/webkitgtk-6.0/method.PermissionRequest.deny.html
index ada47d07bc..693ab4e4ac 100644
--- a/Documentation/webkitgtk-6.0/method.PermissionRequest.deny.html
+++ b/Documentation/webkitgtk-6.0/method.PermissionRequest.deny.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.finish.html b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.finish.html
index 71ad5ac975..e859243934 100644
--- a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.finish.html
+++ b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.get_name.html b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.get_name.html
index 93eb25710c..9ac409e810 100644
--- a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.get_name.html
+++ b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.get_security_origin.html b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.get_security_origin.html
index 6d3a6a75cb..01464b4d7b 100644
--- a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.get_security_origin.html
+++ b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.get_security_origin.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.ref.html b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.ref.html
index 7d679fa520..aa82994622 100644
--- a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.ref.html
+++ b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.unref.html b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.unref.html
index d97d65419c..d4710d01d7 100644
--- a/Documentation/webkitgtk-6.0/method.PermissionStateQuery.unref.html
+++ b/Documentation/webkitgtk-6.0/method.PermissionStateQuery.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PolicyDecision.download.html b/Documentation/webkitgtk-6.0/method.PolicyDecision.download.html
index 56feb3d98d..8baf674ffd 100644
--- a/Documentation/webkitgtk-6.0/method.PolicyDecision.download.html
+++ b/Documentation/webkitgtk-6.0/method.PolicyDecision.download.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PolicyDecision.ignore.html b/Documentation/webkitgtk-6.0/method.PolicyDecision.ignore.html
index 47b16b3950..d2d31bfec9 100644
--- a/Documentation/webkitgtk-6.0/method.PolicyDecision.ignore.html
+++ b/Documentation/webkitgtk-6.0/method.PolicyDecision.ignore.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PolicyDecision.use.html b/Documentation/webkitgtk-6.0/method.PolicyDecision.use.html
index f3edbdd980..3fc5df0e56 100644
--- a/Documentation/webkitgtk-6.0/method.PolicyDecision.use.html
+++ b/Documentation/webkitgtk-6.0/method.PolicyDecision.use.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PolicyDecision.use_with_policies.html b/Documentation/webkitgtk-6.0/method.PolicyDecision.use_with_policies.html
index f9c956fdcb..973fe18a7f 100644
--- a/Documentation/webkitgtk-6.0/method.PolicyDecision.use_with_policies.html
+++ b/Documentation/webkitgtk-6.0/method.PolicyDecision.use_with_policies.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PrintOperation.get_page_setup.html b/Documentation/webkitgtk-6.0/method.PrintOperation.get_page_setup.html
index adf6737e82..76c52021df 100644
--- a/Documentation/webkitgtk-6.0/method.PrintOperation.get_page_setup.html
+++ b/Documentation/webkitgtk-6.0/method.PrintOperation.get_page_setup.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PrintOperation.get_print_settings.html b/Documentation/webkitgtk-6.0/method.PrintOperation.get_print_settings.html
index 1982da97b1..525f6331c8 100644
--- a/Documentation/webkitgtk-6.0/method.PrintOperation.get_print_settings.html
+++ b/Documentation/webkitgtk-6.0/method.PrintOperation.get_print_settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PrintOperation.print.html b/Documentation/webkitgtk-6.0/method.PrintOperation.print.html
index b85064a325..0f56cc7731 100644
--- a/Documentation/webkitgtk-6.0/method.PrintOperation.print.html
+++ b/Documentation/webkitgtk-6.0/method.PrintOperation.print.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PrintOperation.run_dialog.html b/Documentation/webkitgtk-6.0/method.PrintOperation.run_dialog.html
index 59b173954a..4cf023e0eb 100644
--- a/Documentation/webkitgtk-6.0/method.PrintOperation.run_dialog.html
+++ b/Documentation/webkitgtk-6.0/method.PrintOperation.run_dialog.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PrintOperation.set_page_setup.html b/Documentation/webkitgtk-6.0/method.PrintOperation.set_page_setup.html
index a828e8bd4f..bbbf1b7b5e 100644
--- a/Documentation/webkitgtk-6.0/method.PrintOperation.set_page_setup.html
+++ b/Documentation/webkitgtk-6.0/method.PrintOperation.set_page_setup.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.PrintOperation.set_print_settings.html b/Documentation/webkitgtk-6.0/method.PrintOperation.set_print_settings.html
index 6f014d2cec..cd41a517ea 100644
--- a/Documentation/webkitgtk-6.0/method.PrintOperation.set_print_settings.html
+++ b/Documentation/webkitgtk-6.0/method.PrintOperation.set_print_settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.get_request.html b/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.get_request.html
index a746be8a42..6868f3ecef 100644
--- a/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.get_request.html
+++ b/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.get_request.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.get_response.html b/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.get_response.html
index 4a6a891d2e..49b24dd080 100644
--- a/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.get_response.html
+++ b/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.get_response.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.is_main_frame_main_resource.html b/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.is_main_frame_main_resource.html
index 9ab045a91c..0c1ddf4dda 100644
--- a/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.is_main_frame_main_resource.html
+++ b/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.is_main_frame_main_resource.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.is_mime_type_supported.html b/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.is_mime_type_supported.html
index bb0aa82f39..08b37548d2 100644
--- a/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.is_mime_type_supported.html
+++ b/Documentation/webkitgtk-6.0/method.ResponsePolicyDecision.is_mime_type_supported.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptDialog.close.html b/Documentation/webkitgtk-6.0/method.ScriptDialog.close.html
index d00f7d11a0..a9fa018893 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptDialog.close.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptDialog.close.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptDialog.confirm_set_confirmed.html b/Documentation/webkitgtk-6.0/method.ScriptDialog.confirm_set_confirmed.html
index b1e18c36bd..842155c3b5 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptDialog.confirm_set_confirmed.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptDialog.confirm_set_confirmed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptDialog.get_dialog_type.html b/Documentation/webkitgtk-6.0/method.ScriptDialog.get_dialog_type.html
index 988ec38384..14ba39f1be 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptDialog.get_dialog_type.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptDialog.get_dialog_type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptDialog.get_message.html b/Documentation/webkitgtk-6.0/method.ScriptDialog.get_message.html
index ddb0a81410..a6c1c2950e 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptDialog.get_message.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptDialog.get_message.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptDialog.prompt_get_default_text.html b/Documentation/webkitgtk-6.0/method.ScriptDialog.prompt_get_default_text.html
index 8fc322b6ba..aa062b01e5 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptDialog.prompt_get_default_text.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptDialog.prompt_get_default_text.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptDialog.prompt_set_text.html b/Documentation/webkitgtk-6.0/method.ScriptDialog.prompt_set_text.html
index d0c89f1c01..189346bb63 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptDialog.prompt_set_text.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptDialog.prompt_set_text.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptDialog.ref.html b/Documentation/webkitgtk-6.0/method.ScriptDialog.ref.html
index 7274554903..053fd4828a 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptDialog.ref.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptDialog.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptDialog.unref.html b/Documentation/webkitgtk-6.0/method.ScriptDialog.unref.html
index 53e9c9ffa2..437e6de98c 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptDialog.unref.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptDialog.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptMessageReply.ref.html b/Documentation/webkitgtk-6.0/method.ScriptMessageReply.ref.html
index c3dd3c1c0f..4488675e80 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptMessageReply.ref.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptMessageReply.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptMessageReply.return_error_message.html b/Documentation/webkitgtk-6.0/method.ScriptMessageReply.return_error_message.html
index 32285fb2aa..6ff99571c0 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptMessageReply.return_error_message.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptMessageReply.return_error_message.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptMessageReply.return_value.html b/Documentation/webkitgtk-6.0/method.ScriptMessageReply.return_value.html
index 0bb6a0da7f..f190c84294 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptMessageReply.return_value.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptMessageReply.return_value.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.ScriptMessageReply.unref.html b/Documentation/webkitgtk-6.0/method.ScriptMessageReply.unref.html
index 9fb40d7779..7bce5d2d63 100644
--- a/Documentation/webkitgtk-6.0/method.ScriptMessageReply.unref.html
+++ b/Documentation/webkitgtk-6.0/method.ScriptMessageReply.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_cors_enabled.html b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_cors_enabled.html
index 70a304f8c7..50852041e4 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_cors_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_cors_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_display_isolated.html b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_display_isolated.html
index a1bdb7c9b6..91127ef698 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_display_isolated.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_display_isolated.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_empty_document.html b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_empty_document.html
index 6e28f60089..c7d14360f6 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_empty_document.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_empty_document.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_local.html b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_local.html
index ed11c3c135..302e5e3446 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_local.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_local.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_no_access.html b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_no_access.html
index e860814e52..1162b658e6 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_no_access.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_no_access.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_secure.html b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_secure.html
index e4639b2f3f..77537bb1a4 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_secure.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.register_uri_scheme_as_secure.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_cors_enabled.html b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_cors_enabled.html
index 1e80768a54..5a63fee14e 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_cors_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_cors_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_display_isolated.html b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_display_isolated.html
index 8b01af2ad9..526f195a11 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_display_isolated.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_display_isolated.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_empty_document.html b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_empty_document.html
index 6aec706b2b..1b928b62d5 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_empty_document.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_empty_document.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_local.html b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_local.html
index 5691fa7fc2..6f73547a47 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_local.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_local.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_no_access.html b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_no_access.html
index cfa51694e2..e07b2240be 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_no_access.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_no_access.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_secure.html b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_secure.html
index 90756d66fd..590822fdcb 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_secure.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityManager.uri_scheme_is_secure.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_host.html b/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_host.html
index 5df191f767..78dced6e5c 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_host.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_host.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_port.html b/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_port.html
index b5a96f32e3..ab8f45cbf2 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_port.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_port.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_protocol.html b/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_protocol.html
index e6714c2443..c03e1a98dc 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_protocol.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityOrigin.get_protocol.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityOrigin.ref.html b/Documentation/webkitgtk-6.0/method.SecurityOrigin.ref.html
index b9f450489a..f08956d944 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityOrigin.ref.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityOrigin.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityOrigin.to_string.html b/Documentation/webkitgtk-6.0/method.SecurityOrigin.to_string.html
index 692c2dfb77..ab6647c03e 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityOrigin.to_string.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityOrigin.to_string.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.SecurityOrigin.unref.html b/Documentation/webkitgtk-6.0/method.SecurityOrigin.unref.html
index 25f7d08d49..c244c9f01e 100644
--- a/Documentation/webkitgtk-6.0/method.SecurityOrigin.unref.html
+++ b/Documentation/webkitgtk-6.0/method.SecurityOrigin.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.apply_from_key_file.html b/Documentation/webkitgtk-6.0/method.Settings.apply_from_key_file.html
index a150bc7e26..3966890078 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.apply_from_key_file.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.apply_from_key_file.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_allow_file_access_from_file_urls.html b/Documentation/webkitgtk-6.0/method.Settings.get_allow_file_access_from_file_urls.html
index 64a889f830..18cfeecd7d 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_allow_file_access_from_file_urls.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_allow_file_access_from_file_urls.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_allow_modal_dialogs.html b/Documentation/webkitgtk-6.0/method.Settings.get_allow_modal_dialogs.html
index 054cb7e683..9beb11618e 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_allow_modal_dialogs.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_allow_modal_dialogs.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_allow_top_navigation_to_data_urls.html b/Documentation/webkitgtk-6.0/method.Settings.get_allow_top_navigation_to_data_urls.html
index a43f605b49..6fbe66b1b0 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_allow_top_navigation_to_data_urls.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_allow_top_navigation_to_data_urls.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_allow_universal_access_from_file_urls.html b/Documentation/webkitgtk-6.0/method.Settings.get_allow_universal_access_from_file_urls.html
index cc27fc35bc..4a81618686 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_allow_universal_access_from_file_urls.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_allow_universal_access_from_file_urls.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_auto_load_images.html b/Documentation/webkitgtk-6.0/method.Settings.get_auto_load_images.html
index 252ab03fe1..0dfe60ad52 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_auto_load_images.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_auto_load_images.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_cursive_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.get_cursive_font_family.html
index e9084b2e53..326db3ca07 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_cursive_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_cursive_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_default_charset.html b/Documentation/webkitgtk-6.0/method.Settings.get_default_charset.html
index 2d2280d365..6165090a67 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_default_charset.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_default_charset.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_default_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.get_default_font_family.html
index 0bc4bdef76..2d05c901eb 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_default_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_default_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_default_font_size.html b/Documentation/webkitgtk-6.0/method.Settings.get_default_font_size.html
index 82cc80e61b..655ac16952 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_default_font_size.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_default_font_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_default_monospace_font_size.html b/Documentation/webkitgtk-6.0/method.Settings.get_default_monospace_font_size.html
index 702c7ec86c..e66fa7317c 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_default_monospace_font_size.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_default_monospace_font_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_disable_web_security.html b/Documentation/webkitgtk-6.0/method.Settings.get_disable_web_security.html
index d3ee419edd..0b4a4a82e7 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_disable_web_security.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_disable_web_security.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_draw_compositing_indicators.html b/Documentation/webkitgtk-6.0/method.Settings.get_draw_compositing_indicators.html
index db940ef8d0..2a692283a9 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_draw_compositing_indicators.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_draw_compositing_indicators.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_2d_canvas_acceleration.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_2d_canvas_acceleration.html
index 8e1e7c98ad..51fc2e6851 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_2d_canvas_acceleration.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_2d_canvas_acceleration.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_back_forward_navigation_gestures.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_back_forward_navigation_gestures.html
index c8d1ad060f..ad3b8f3b40 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_back_forward_navigation_gestures.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_back_forward_navigation_gestures.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_caret_browsing.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_caret_browsing.html
index 75973c2e2c..110c47e666 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_caret_browsing.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_caret_browsing.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_developer_extras.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_developer_extras.html
index 695642b0ae..4def05453d 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_developer_extras.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_developer_extras.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_dns_prefetching.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_dns_prefetching.html
index 6c95d234ed..308de883bd 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_dns_prefetching.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_dns_prefetching.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_encrypted_media.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_encrypted_media.html
index 8963031709..d554708011 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_encrypted_media.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_encrypted_media.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_fullscreen.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_fullscreen.html
index cbb25e8bf1..8073a08420 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_fullscreen.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_fullscreen.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_html5_database.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_html5_database.html
index aa5c84f5f9..5d3f92f1ae 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_html5_database.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_html5_database.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_html5_local_storage.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_html5_local_storage.html
index cf03844a8b..d21602d963 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_html5_local_storage.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_html5_local_storage.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_hyperlink_auditing.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_hyperlink_auditing.html
index c82277eac8..f224266860 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_hyperlink_auditing.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_hyperlink_auditing.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_javascript.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_javascript.html
index ae544a41c4..fd0e3e6d1f 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_javascript.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_javascript.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_javascript_markup.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_javascript_markup.html
index ecc30f9baa..3119057b86 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_javascript_markup.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_javascript_markup.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_media.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_media.html
index 00ce7adca6..3e5c8d2075 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_media.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_media.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_media_capabilities.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_media_capabilities.html
index 2ff5a8837f..84d62af98e 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_media_capabilities.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_media_capabilities.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_media_stream.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_media_stream.html
index be26a946a8..db57a60b1d 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_media_stream.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_media_stream.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_mediasource.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_mediasource.html
index 278e78c976..962c93581e 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_mediasource.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_mediasource.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_mock_capture_devices.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_mock_capture_devices.html
index 7256429d8d..0116809b8c 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_mock_capture_devices.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_mock_capture_devices.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_offline_web_application_cache.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_offline_web_application_cache.html
index 06c2049a3a..9f88f04199 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_offline_web_application_cache.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_offline_web_application_cache.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_page_cache.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_page_cache.html
index ccdb6928f6..946bd2c1b4 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_page_cache.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_page_cache.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_resizable_text_areas.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_resizable_text_areas.html
index df890192c1..eb23d0162c 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_resizable_text_areas.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_resizable_text_areas.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_site_specific_quirks.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_site_specific_quirks.html
index a575fc71c5..891c941ab2 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_site_specific_quirks.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_site_specific_quirks.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_smooth_scrolling.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_smooth_scrolling.html
index bcc1ca9e18..61e3552a6d 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_smooth_scrolling.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_smooth_scrolling.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_spatial_navigation.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_spatial_navigation.html
index 1fece5cb0e..a74b94bebf 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_spatial_navigation.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_spatial_navigation.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_tabs_to_links.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_tabs_to_links.html
index dcbfed969f..913ab23918 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_tabs_to_links.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_tabs_to_links.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_webaudio.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_webaudio.html
index 2f0259b8b2..e8ec0aa934 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_webaudio.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_webaudio.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_webgl.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_webgl.html
index cb5edbdba2..22fcd0c359 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_webgl.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_webgl.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_webrtc.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_webrtc.html
index 11e3819afa..9daaeaf934 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_webrtc.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_webrtc.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_enable_write_console_messages_to_stdout.html b/Documentation/webkitgtk-6.0/method.Settings.get_enable_write_console_messages_to_stdout.html
index d80db0b92d..f314a1d458 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_enable_write_console_messages_to_stdout.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_enable_write_console_messages_to_stdout.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_fantasy_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.get_fantasy_font_family.html
index b982c58e35..9a672ad26f 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_fantasy_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_fantasy_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_feature_enabled.html b/Documentation/webkitgtk-6.0/method.Settings.get_feature_enabled.html
index 0f14c49914..3a759aacad 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_feature_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_feature_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_hardware_acceleration_policy.html b/Documentation/webkitgtk-6.0/method.Settings.get_hardware_acceleration_policy.html
index 236b17ab71..c809c8ffcd 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_hardware_acceleration_policy.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_hardware_acceleration_policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_javascript_can_access_clipboard.html b/Documentation/webkitgtk-6.0/method.Settings.get_javascript_can_access_clipboard.html
index b267536857..3727f40a65 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_javascript_can_access_clipboard.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_javascript_can_access_clipboard.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_javascript_can_open_windows_automatically.html b/Documentation/webkitgtk-6.0/method.Settings.get_javascript_can_open_windows_automatically.html
index 764b12fbdf..9319837b14 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_javascript_can_open_windows_automatically.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_javascript_can_open_windows_automatically.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_load_icons_ignoring_image_load_setting.html b/Documentation/webkitgtk-6.0/method.Settings.get_load_icons_ignoring_image_load_setting.html
index 178baa98ed..37e1ff97bf 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_load_icons_ignoring_image_load_setting.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_load_icons_ignoring_image_load_setting.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_media_content_types_requiring_hardware_support.html b/Documentation/webkitgtk-6.0/method.Settings.get_media_content_types_requiring_hardware_support.html
index dcf8289011..b708b8dd40 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_media_content_types_requiring_hardware_support.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_media_content_types_requiring_hardware_support.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_media_playback_allows_inline.html b/Documentation/webkitgtk-6.0/method.Settings.get_media_playback_allows_inline.html
index 9c03916dce..096c6c450a 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_media_playback_allows_inline.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_media_playback_allows_inline.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_media_playback_requires_user_gesture.html b/Documentation/webkitgtk-6.0/method.Settings.get_media_playback_requires_user_gesture.html
index 73887f44cb..2afd7eb3be 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_media_playback_requires_user_gesture.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_media_playback_requires_user_gesture.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_minimum_font_size.html b/Documentation/webkitgtk-6.0/method.Settings.get_minimum_font_size.html
index 6e32749615..c7be4e9c03 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_minimum_font_size.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_minimum_font_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_monospace_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.get_monospace_font_family.html
index d76db2bb8a..82a47b849d 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_monospace_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_monospace_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_pictograph_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.get_pictograph_font_family.html
index e48c01c99d..f7b558ffae 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_pictograph_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_pictograph_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_print_backgrounds.html b/Documentation/webkitgtk-6.0/method.Settings.get_print_backgrounds.html
index 5e72fc8892..f097c99ee7 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_print_backgrounds.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_print_backgrounds.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_sans_serif_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.get_sans_serif_font_family.html
index cbb043b44b..b81f28dc09 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_sans_serif_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_sans_serif_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_serif_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.get_serif_font_family.html
index a4d62111a3..3d114f8ae2 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_serif_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_serif_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_user_agent.html b/Documentation/webkitgtk-6.0/method.Settings.get_user_agent.html
index 85a310f37b..0cd48f4502 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_user_agent.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_user_agent.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.get_zoom_text_only.html b/Documentation/webkitgtk-6.0/method.Settings.get_zoom_text_only.html
index 8e2aab3a3d..66148aa2aa 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.get_zoom_text_only.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.get_zoom_text_only.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_allow_file_access_from_file_urls.html b/Documentation/webkitgtk-6.0/method.Settings.set_allow_file_access_from_file_urls.html
index f179d70c3d..e7cfe412d9 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_allow_file_access_from_file_urls.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_allow_file_access_from_file_urls.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_allow_modal_dialogs.html b/Documentation/webkitgtk-6.0/method.Settings.set_allow_modal_dialogs.html
index f282f88e22..9f51dde1bc 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_allow_modal_dialogs.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_allow_modal_dialogs.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_allow_top_navigation_to_data_urls.html b/Documentation/webkitgtk-6.0/method.Settings.set_allow_top_navigation_to_data_urls.html
index cfde9882b3..7dc8d8e252 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_allow_top_navigation_to_data_urls.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_allow_top_navigation_to_data_urls.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_allow_universal_access_from_file_urls.html b/Documentation/webkitgtk-6.0/method.Settings.set_allow_universal_access_from_file_urls.html
index 8a590b0bc1..8ded686ec5 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_allow_universal_access_from_file_urls.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_allow_universal_access_from_file_urls.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_auto_load_images.html b/Documentation/webkitgtk-6.0/method.Settings.set_auto_load_images.html
index 7b3588c9a9..5fc3d19345 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_auto_load_images.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_auto_load_images.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_cursive_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.set_cursive_font_family.html
index e94b643adf..a44fee54ec 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_cursive_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_cursive_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_default_charset.html b/Documentation/webkitgtk-6.0/method.Settings.set_default_charset.html
index 4d68d1513c..3db635d905 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_default_charset.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_default_charset.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_default_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.set_default_font_family.html
index 965de67423..9c6b9cd1bf 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_default_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_default_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_default_font_size.html b/Documentation/webkitgtk-6.0/method.Settings.set_default_font_size.html
index 8d833aac36..4f1465fa69 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_default_font_size.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_default_font_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_default_monospace_font_size.html b/Documentation/webkitgtk-6.0/method.Settings.set_default_monospace_font_size.html
index 15f83a8ed1..da446ba7f4 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_default_monospace_font_size.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_default_monospace_font_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_disable_web_security.html b/Documentation/webkitgtk-6.0/method.Settings.set_disable_web_security.html
index d265c68f0b..89ab053ced 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_disable_web_security.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_disable_web_security.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_draw_compositing_indicators.html b/Documentation/webkitgtk-6.0/method.Settings.set_draw_compositing_indicators.html
index ba73813053..545b4d57cb 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_draw_compositing_indicators.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_draw_compositing_indicators.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_2d_canvas_acceleration.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_2d_canvas_acceleration.html
index f7e3dc1823..4ed1e0f91e 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_2d_canvas_acceleration.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_2d_canvas_acceleration.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_back_forward_navigation_gestures.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_back_forward_navigation_gestures.html
index 0eefdd279f..47af192a2b 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_back_forward_navigation_gestures.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_back_forward_navigation_gestures.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_caret_browsing.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_caret_browsing.html
index 1fa189ecbc..5ab258c431 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_caret_browsing.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_caret_browsing.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_developer_extras.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_developer_extras.html
index adc81a6e2e..3f39c73df9 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_developer_extras.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_developer_extras.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_dns_prefetching.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_dns_prefetching.html
index 0e69a75046..d4a388418c 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_dns_prefetching.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_dns_prefetching.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_encrypted_media.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_encrypted_media.html
index a8e8d7cc1c..598585d237 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_encrypted_media.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_encrypted_media.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_fullscreen.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_fullscreen.html
index d92689de78..38436f98b9 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_fullscreen.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_fullscreen.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_html5_database.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_html5_database.html
index 3bd3eae9f2..5f040688ed 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_html5_database.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_html5_database.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_html5_local_storage.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_html5_local_storage.html
index 367fc6a238..4ffc98316b 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_html5_local_storage.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_html5_local_storage.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_hyperlink_auditing.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_hyperlink_auditing.html
index 991aac031f..edf1e6c775 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_hyperlink_auditing.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_hyperlink_auditing.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_javascript.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_javascript.html
index d681c7dee7..189e479953 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_javascript.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_javascript.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_javascript_markup.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_javascript_markup.html
index f4e38d8dd5..35db773a10 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_javascript_markup.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_javascript_markup.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_media.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_media.html
index 9f0cf0fc05..f6c603e60f 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_media.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_media.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_media_capabilities.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_media_capabilities.html
index 9da5286d8b..a1bcc18329 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_media_capabilities.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_media_capabilities.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_media_stream.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_media_stream.html
index 196abe5ce9..f6c4d0940a 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_media_stream.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_media_stream.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_mediasource.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_mediasource.html
index f6b265c60b..23c4d5d8c2 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_mediasource.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_mediasource.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_mock_capture_devices.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_mock_capture_devices.html
index 8c8550f397..9350e19264 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_mock_capture_devices.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_mock_capture_devices.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_offline_web_application_cache.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_offline_web_application_cache.html
index 94f2aee06c..a4b4fec622 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_offline_web_application_cache.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_offline_web_application_cache.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_page_cache.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_page_cache.html
index af3a747a40..48745bc510 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_page_cache.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_page_cache.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_resizable_text_areas.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_resizable_text_areas.html
index 740e0abef3..d2f15bb391 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_resizable_text_areas.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_resizable_text_areas.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_site_specific_quirks.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_site_specific_quirks.html
index 1b0c67710a..7b3e796742 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_site_specific_quirks.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_site_specific_quirks.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_smooth_scrolling.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_smooth_scrolling.html
index 7af14a336f..4e7929c707 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_smooth_scrolling.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_smooth_scrolling.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_spatial_navigation.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_spatial_navigation.html
index e819bd6e07..294783f78c 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_spatial_navigation.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_spatial_navigation.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_tabs_to_links.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_tabs_to_links.html
index 59ebd1f77d..fc7378e85a 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_tabs_to_links.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_tabs_to_links.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_webaudio.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_webaudio.html
index 8ae969b07c..472a1eb04f 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_webaudio.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_webaudio.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_webgl.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_webgl.html
index dad1c86cff..be1b9109ff 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_webgl.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_webgl.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_webrtc.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_webrtc.html
index ce464e3b63..007829308b 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_webrtc.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_webrtc.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_enable_write_console_messages_to_stdout.html b/Documentation/webkitgtk-6.0/method.Settings.set_enable_write_console_messages_to_stdout.html
index 27550eca2e..5ddad69e28 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_enable_write_console_messages_to_stdout.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_enable_write_console_messages_to_stdout.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_fantasy_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.set_fantasy_font_family.html
index a28352ea53..538708a7e8 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_fantasy_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_fantasy_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_feature_enabled.html b/Documentation/webkitgtk-6.0/method.Settings.set_feature_enabled.html
index 90f7bc1826..85371e2baa 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_feature_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_feature_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_hardware_acceleration_policy.html b/Documentation/webkitgtk-6.0/method.Settings.set_hardware_acceleration_policy.html
index 9bbbd6287e..14e5d6c482 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_hardware_acceleration_policy.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_hardware_acceleration_policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_javascript_can_access_clipboard.html b/Documentation/webkitgtk-6.0/method.Settings.set_javascript_can_access_clipboard.html
index 1829b72f03..d163fb6a53 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_javascript_can_access_clipboard.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_javascript_can_access_clipboard.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_javascript_can_open_windows_automatically.html b/Documentation/webkitgtk-6.0/method.Settings.set_javascript_can_open_windows_automatically.html
index 1350016108..ce2b6dcf99 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_javascript_can_open_windows_automatically.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_javascript_can_open_windows_automatically.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_load_icons_ignoring_image_load_setting.html b/Documentation/webkitgtk-6.0/method.Settings.set_load_icons_ignoring_image_load_setting.html
index e1e0df38e4..f7d0a71372 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_load_icons_ignoring_image_load_setting.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_load_icons_ignoring_image_load_setting.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_media_content_types_requiring_hardware_support.html b/Documentation/webkitgtk-6.0/method.Settings.set_media_content_types_requiring_hardware_support.html
index ceb27c95f2..3fd353a506 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_media_content_types_requiring_hardware_support.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_media_content_types_requiring_hardware_support.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_media_playback_allows_inline.html b/Documentation/webkitgtk-6.0/method.Settings.set_media_playback_allows_inline.html
index f87a428122..06722b023b 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_media_playback_allows_inline.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_media_playback_allows_inline.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_media_playback_requires_user_gesture.html b/Documentation/webkitgtk-6.0/method.Settings.set_media_playback_requires_user_gesture.html
index b4224f6885..26ef56bb2d 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_media_playback_requires_user_gesture.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_media_playback_requires_user_gesture.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_minimum_font_size.html b/Documentation/webkitgtk-6.0/method.Settings.set_minimum_font_size.html
index 8961886672..f323cb0b7d 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_minimum_font_size.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_minimum_font_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_monospace_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.set_monospace_font_family.html
index 2a5207804d..fde20a265b 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_monospace_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_monospace_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_pictograph_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.set_pictograph_font_family.html
index 66b6540562..5fd29ac898 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_pictograph_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_pictograph_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_print_backgrounds.html b/Documentation/webkitgtk-6.0/method.Settings.set_print_backgrounds.html
index 8bd32fe46d..1b15769a66 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_print_backgrounds.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_print_backgrounds.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_sans_serif_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.set_sans_serif_font_family.html
index 3b46516b2d..f64f4435f4 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_sans_serif_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_sans_serif_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_serif_font_family.html b/Documentation/webkitgtk-6.0/method.Settings.set_serif_font_family.html
index dba614818b..c8e12409fd 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_serif_font_family.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_serif_font_family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_user_agent.html b/Documentation/webkitgtk-6.0/method.Settings.set_user_agent.html
index 8dce213ce4..12d5b136f0 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_user_agent.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_user_agent.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_user_agent_with_application_details.html b/Documentation/webkitgtk-6.0/method.Settings.set_user_agent_with_application_details.html
index 434c7ada48..e3bcf74cdd 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_user_agent_with_application_details.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_user_agent_with_application_details.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.Settings.set_zoom_text_only.html b/Documentation/webkitgtk-6.0/method.Settings.set_zoom_text_only.html
index 7dd3085493..0f183b973d 100644
--- a/Documentation/webkitgtk-6.0/method.Settings.set_zoom_text_only.html
+++ b/Documentation/webkitgtk-6.0/method.Settings.set_zoom_text_only.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIRequest.get_http_headers.html b/Documentation/webkitgtk-6.0/method.URIRequest.get_http_headers.html
index 5ae9dec9d3..1b28abd535 100644
--- a/Documentation/webkitgtk-6.0/method.URIRequest.get_http_headers.html
+++ b/Documentation/webkitgtk-6.0/method.URIRequest.get_http_headers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIRequest.get_http_method.html b/Documentation/webkitgtk-6.0/method.URIRequest.get_http_method.html
index dd2060415a..48dc01fea0 100644
--- a/Documentation/webkitgtk-6.0/method.URIRequest.get_http_method.html
+++ b/Documentation/webkitgtk-6.0/method.URIRequest.get_http_method.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIRequest.get_uri.html b/Documentation/webkitgtk-6.0/method.URIRequest.get_uri.html
index 2205138d87..7abf838027 100644
--- a/Documentation/webkitgtk-6.0/method.URIRequest.get_uri.html
+++ b/Documentation/webkitgtk-6.0/method.URIRequest.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIRequest.set_uri.html b/Documentation/webkitgtk-6.0/method.URIRequest.set_uri.html
index f30ca981e5..2c6de04199 100644
--- a/Documentation/webkitgtk-6.0/method.URIRequest.set_uri.html
+++ b/Documentation/webkitgtk-6.0/method.URIRequest.set_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIResponse.get_content_length.html b/Documentation/webkitgtk-6.0/method.URIResponse.get_content_length.html
index 58ee40d653..cd2b9394cc 100644
--- a/Documentation/webkitgtk-6.0/method.URIResponse.get_content_length.html
+++ b/Documentation/webkitgtk-6.0/method.URIResponse.get_content_length.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIResponse.get_http_headers.html b/Documentation/webkitgtk-6.0/method.URIResponse.get_http_headers.html
index 9f1480f2fb..ed7502297e 100644
--- a/Documentation/webkitgtk-6.0/method.URIResponse.get_http_headers.html
+++ b/Documentation/webkitgtk-6.0/method.URIResponse.get_http_headers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIResponse.get_mime_type.html b/Documentation/webkitgtk-6.0/method.URIResponse.get_mime_type.html
index c021d25b13..30c74bfb2c 100644
--- a/Documentation/webkitgtk-6.0/method.URIResponse.get_mime_type.html
+++ b/Documentation/webkitgtk-6.0/method.URIResponse.get_mime_type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIResponse.get_status_code.html b/Documentation/webkitgtk-6.0/method.URIResponse.get_status_code.html
index 0624079436..f7d7dd9fa3 100644
--- a/Documentation/webkitgtk-6.0/method.URIResponse.get_status_code.html
+++ b/Documentation/webkitgtk-6.0/method.URIResponse.get_status_code.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIResponse.get_suggested_filename.html b/Documentation/webkitgtk-6.0/method.URIResponse.get_suggested_filename.html
index 9053879e15..80faeea76e 100644
--- a/Documentation/webkitgtk-6.0/method.URIResponse.get_suggested_filename.html
+++ b/Documentation/webkitgtk-6.0/method.URIResponse.get_suggested_filename.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URIResponse.get_uri.html b/Documentation/webkitgtk-6.0/method.URIResponse.get_uri.html
index 862fc49815..80c16a10cb 100644
--- a/Documentation/webkitgtk-6.0/method.URIResponse.get_uri.html
+++ b/Documentation/webkitgtk-6.0/method.URIResponse.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish.html
index 36118957b2..5054cb85b7 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish_error.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish_error.html
index 2795429c53..eba69a7633 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish_error.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish_error.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish_with_response.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish_with_response.html
index c0f8fe33d5..e8e34f9a99 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish_with_response.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.finish_with_response.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_body.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_body.html
index e0e2f344d3..49346d60a7 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_body.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_body.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_headers.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_headers.html
index e19b7a671c..89b49e6665 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_headers.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_headers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_method.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_method.html
index a075176ea8..e7d933c3cd 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_method.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_http_method.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_path.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_path.html
index 41a7211cde..a9ba3fc7ba 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_path.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_path.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_scheme.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_scheme.html
index 38a2558297..a7f8cc496d 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_scheme.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_scheme.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_uri.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_uri.html
index 64e19bd63e..9860a53372 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_uri.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_web_view.html b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_web_view.html
index 461d86364a..dcc4209005 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_web_view.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeRequest.get_web_view.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_content_type.html b/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_content_type.html
index c4146486a0..b7a43ae5f3 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_content_type.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_content_type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_http_headers.html b/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_http_headers.html
index 6e80a86f85..cfe4f10136 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_http_headers.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_http_headers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_status.html b/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_status.html
index ef91084015..28de85bd4e 100644
--- a/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_status.html
+++ b/Documentation/webkitgtk-6.0/method.URISchemeResponse.set_status.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilter.get_identifier.html b/Documentation/webkitgtk-6.0/method.UserContentFilter.get_identifier.html
index 564f8d19e9..238d42a35f 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilter.get_identifier.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilter.get_identifier.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilter.ref.html b/Documentation/webkitgtk-6.0/method.UserContentFilter.ref.html
index ae94d4e9e5..44a89f7513 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilter.ref.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilter.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilter.unref.html b/Documentation/webkitgtk-6.0/method.UserContentFilter.unref.html
index 049a0c8924..7d3ca6a79a 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilter.unref.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilter.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.fetch_identifiers.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.fetch_identifiers.html
index ca3c0da444..ee3d373a96 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.fetch_identifiers.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.fetch_identifiers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.fetch_identifiers_finish.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.fetch_identifiers_finish.html
index 1fcc2c1b31..8001f91dc1 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.fetch_identifiers_finish.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.fetch_identifiers_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.get_path.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.get_path.html
index bad5a154fc..5f87c8d671 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.get_path.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.get_path.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.load.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.load.html
index 9346e6947e..bb504ab5e5 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.load.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.load.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.load_finish.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.load_finish.html
index bfab4c17a8..c7b9c17098 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.load_finish.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.load_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.remove.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.remove.html
index d2b9f20190..e2a6f3fd04 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.remove.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.remove.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.remove_finish.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.remove_finish.html
index 8b5b790649..f3798b176b 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.remove_finish.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.remove_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save.html
index 30143be520..31e2ec2e03 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_finish.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_finish.html
index 4ec3b3294a..c3265fc094 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_finish.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_from_file.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_from_file.html
index 1bc47ecc53..abf2804588 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_from_file.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_from_file.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_from_file_finish.html b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_from_file_finish.html
index caea3f2784..68c3a621f3 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_from_file_finish.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentFilterStore.save_from_file_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.add_filter.html b/Documentation/webkitgtk-6.0/method.UserContentManager.add_filter.html
index c3ce0b26f1..fd4670b3ba 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.add_filter.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.add_filter.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.add_script.html b/Documentation/webkitgtk-6.0/method.UserContentManager.add_script.html
index aa0b9687cf..f4c15ed353 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.add_script.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.add_script.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.add_style_sheet.html b/Documentation/webkitgtk-6.0/method.UserContentManager.add_style_sheet.html
index 450cdc8eeb..ec1080952a 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.add_style_sheet.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.add_style_sheet.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.register_script_message_handler.html b/Documentation/webkitgtk-6.0/method.UserContentManager.register_script_message_handler.html
index 32f8664192..f294688ee2 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.register_script_message_handler.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.register_script_message_handler.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.register_script_message_handler_with_reply.html b/Documentation/webkitgtk-6.0/method.UserContentManager.register_script_message_handler_with_reply.html
index d9e55052d6..8ec68f1b21 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.register_script_message_handler_with_reply.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.register_script_message_handler_with_reply.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_filters.html b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_filters.html
index 4ee1f6210b..4dd493e886 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_filters.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_filters.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_scripts.html b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_scripts.html
index cea9793f06..a076f8610a 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_scripts.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_scripts.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_style_sheets.html b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_style_sheets.html
index a343f6f801..f014b5c250 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_style_sheets.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_all_style_sheets.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_filter.html b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_filter.html
index 89f0c8f8c5..a7204bd6db 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_filter.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_filter.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_filter_by_id.html b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_filter_by_id.html
index 9b52d57901..aca28408a4 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_filter_by_id.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_filter_by_id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_script.html b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_script.html
index 7a2781e4bd..0624f124fd 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_script.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_script.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_style_sheet.html b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_style_sheet.html
index 75ac95cd37..882fbafa84 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.remove_style_sheet.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.remove_style_sheet.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserContentManager.unregister_script_message_handler.html b/Documentation/webkitgtk-6.0/method.UserContentManager.unregister_script_message_handler.html
index f8b26688f1..b25bf2da30 100644
--- a/Documentation/webkitgtk-6.0/method.UserContentManager.unregister_script_message_handler.html
+++ b/Documentation/webkitgtk-6.0/method.UserContentManager.unregister_script_message_handler.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserMessage.get_fd_list.html b/Documentation/webkitgtk-6.0/method.UserMessage.get_fd_list.html
index d6fc91b797..b3325caf78 100644
--- a/Documentation/webkitgtk-6.0/method.UserMessage.get_fd_list.html
+++ b/Documentation/webkitgtk-6.0/method.UserMessage.get_fd_list.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserMessage.get_name.html b/Documentation/webkitgtk-6.0/method.UserMessage.get_name.html
index a6db4d054d..c23e55d1a9 100644
--- a/Documentation/webkitgtk-6.0/method.UserMessage.get_name.html
+++ b/Documentation/webkitgtk-6.0/method.UserMessage.get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserMessage.get_parameters.html b/Documentation/webkitgtk-6.0/method.UserMessage.get_parameters.html
index a78927cb5a..fb242d94cc 100644
--- a/Documentation/webkitgtk-6.0/method.UserMessage.get_parameters.html
+++ b/Documentation/webkitgtk-6.0/method.UserMessage.get_parameters.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserMessage.send_reply.html b/Documentation/webkitgtk-6.0/method.UserMessage.send_reply.html
index 539df3c953..0f4c90ae62 100644
--- a/Documentation/webkitgtk-6.0/method.UserMessage.send_reply.html
+++ b/Documentation/webkitgtk-6.0/method.UserMessage.send_reply.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserScript.ref.html b/Documentation/webkitgtk-6.0/method.UserScript.ref.html
index 5fb36ad6c5..cbd8838b55 100644
--- a/Documentation/webkitgtk-6.0/method.UserScript.ref.html
+++ b/Documentation/webkitgtk-6.0/method.UserScript.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserScript.unref.html b/Documentation/webkitgtk-6.0/method.UserScript.unref.html
index 30b7106342..2f878d5090 100644
--- a/Documentation/webkitgtk-6.0/method.UserScript.unref.html
+++ b/Documentation/webkitgtk-6.0/method.UserScript.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserStyleSheet.ref.html b/Documentation/webkitgtk-6.0/method.UserStyleSheet.ref.html
index 04f4bc08ad..c39914f4be 100644
--- a/Documentation/webkitgtk-6.0/method.UserStyleSheet.ref.html
+++ b/Documentation/webkitgtk-6.0/method.UserStyleSheet.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.UserStyleSheet.unref.html b/Documentation/webkitgtk-6.0/method.UserStyleSheet.unref.html
index 94b706436b..7fd7f429d6 100644
--- a/Documentation/webkitgtk-6.0/method.UserStyleSheet.unref.html
+++ b/Documentation/webkitgtk-6.0/method.UserStyleSheet.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.add_path_to_sandbox.html b/Documentation/webkitgtk-6.0/method.WebContext.add_path_to_sandbox.html
index c4884a9e0c..f4cf62da79 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.add_path_to_sandbox.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.add_path_to_sandbox.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.get_cache_model.html b/Documentation/webkitgtk-6.0/method.WebContext.get_cache_model.html
index 331654fd58..5799b595a2 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.get_cache_model.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.get_cache_model.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.get_geolocation_manager.html b/Documentation/webkitgtk-6.0/method.WebContext.get_geolocation_manager.html
index 47d8a974ea..93b0ac8951 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.get_geolocation_manager.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.get_geolocation_manager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.get_network_session_for_automation.html b/Documentation/webkitgtk-6.0/method.WebContext.get_network_session_for_automation.html
index 3409e4e40c..73fab5b39f 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.get_network_session_for_automation.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.get_network_session_for_automation.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.get_security_manager.html b/Documentation/webkitgtk-6.0/method.WebContext.get_security_manager.html
index 3097736bf4..45d7ac2da8 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.get_security_manager.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.get_security_manager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.get_spell_checking_enabled.html b/Documentation/webkitgtk-6.0/method.WebContext.get_spell_checking_enabled.html
index b2e0a0375c..3039514e95 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.get_spell_checking_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.get_spell_checking_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.get_spell_checking_languages.html b/Documentation/webkitgtk-6.0/method.WebContext.get_spell_checking_languages.html
index e6dca76149..5ff4ef66a6 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.get_spell_checking_languages.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.get_spell_checking_languages.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.get_time_zone_override.html b/Documentation/webkitgtk-6.0/method.WebContext.get_time_zone_override.html
index 4a73869dd2..bbea954dc5 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.get_time_zone_override.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.get_time_zone_override.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.initialize_notification_permissions.html b/Documentation/webkitgtk-6.0/method.WebContext.initialize_notification_permissions.html
index df89b1b83a..2137fdb77a 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.initialize_notification_permissions.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.initialize_notification_permissions.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.is_automation_allowed.html b/Documentation/webkitgtk-6.0/method.WebContext.is_automation_allowed.html
index 31cbed1903..9d02055758 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.is_automation_allowed.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.is_automation_allowed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.register_uri_scheme.html b/Documentation/webkitgtk-6.0/method.WebContext.register_uri_scheme.html
index 24736bf4e8..1a50d9ac5c 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.register_uri_scheme.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.register_uri_scheme.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.send_message_to_all_extensions.html b/Documentation/webkitgtk-6.0/method.WebContext.send_message_to_all_extensions.html
index ddd55cf186..a8839fbc8c 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.send_message_to_all_extensions.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.send_message_to_all_extensions.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.set_automation_allowed.html b/Documentation/webkitgtk-6.0/method.WebContext.set_automation_allowed.html
index 41bcb662c2..20b9f043e9 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.set_automation_allowed.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.set_automation_allowed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.set_cache_model.html b/Documentation/webkitgtk-6.0/method.WebContext.set_cache_model.html
index 3326e55883..034c2c8316 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.set_cache_model.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.set_cache_model.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.set_preferred_languages.html b/Documentation/webkitgtk-6.0/method.WebContext.set_preferred_languages.html
index d017572e31..4d6ae43995 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.set_preferred_languages.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.set_preferred_languages.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.set_spell_checking_enabled.html b/Documentation/webkitgtk-6.0/method.WebContext.set_spell_checking_enabled.html
index d40d424337..e23136f9d4 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.set_spell_checking_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.set_spell_checking_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.set_spell_checking_languages.html b/Documentation/webkitgtk-6.0/method.WebContext.set_spell_checking_languages.html
index c354e966dc..edba4357e8 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.set_spell_checking_languages.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.set_spell_checking_languages.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.set_web_process_extensions_directory.html b/Documentation/webkitgtk-6.0/method.WebContext.set_web_process_extensions_directory.html
index 85b8115f24..f34e087335 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.set_web_process_extensions_directory.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.set_web_process_extensions_directory.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebContext.set_web_process_extensions_initialization_user_data.html b/Documentation/webkitgtk-6.0/method.WebContext.set_web_process_extensions_initialization_user_data.html
index f86f205d30..e70ffda43f 100644
--- a/Documentation/webkitgtk-6.0/method.WebContext.set_web_process_extensions_initialization_user_data.html
+++ b/Documentation/webkitgtk-6.0/method.WebContext.set_web_process_extensions_initialization_user_data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebInspector.attach.html b/Documentation/webkitgtk-6.0/method.WebInspector.attach.html
index a8de1f3967..0515c55bb8 100644
--- a/Documentation/webkitgtk-6.0/method.WebInspector.attach.html
+++ b/Documentation/webkitgtk-6.0/method.WebInspector.attach.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebInspector.close.html b/Documentation/webkitgtk-6.0/method.WebInspector.close.html
index d5ba385efc..ef806dd89b 100644
--- a/Documentation/webkitgtk-6.0/method.WebInspector.close.html
+++ b/Documentation/webkitgtk-6.0/method.WebInspector.close.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebInspector.detach.html b/Documentation/webkitgtk-6.0/method.WebInspector.detach.html
index 9f42098718..3d089ea52d 100644
--- a/Documentation/webkitgtk-6.0/method.WebInspector.detach.html
+++ b/Documentation/webkitgtk-6.0/method.WebInspector.detach.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebInspector.get_attached_height.html b/Documentation/webkitgtk-6.0/method.WebInspector.get_attached_height.html
index 480c2b0fbf..20d4ec6850 100644
--- a/Documentation/webkitgtk-6.0/method.WebInspector.get_attached_height.html
+++ b/Documentation/webkitgtk-6.0/method.WebInspector.get_attached_height.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebInspector.get_can_attach.html b/Documentation/webkitgtk-6.0/method.WebInspector.get_can_attach.html
index d19a6215c4..c9863f8ddd 100644
--- a/Documentation/webkitgtk-6.0/method.WebInspector.get_can_attach.html
+++ b/Documentation/webkitgtk-6.0/method.WebInspector.get_can_attach.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebInspector.get_inspected_uri.html b/Documentation/webkitgtk-6.0/method.WebInspector.get_inspected_uri.html
index 8083e62d92..235c7a209c 100644
--- a/Documentation/webkitgtk-6.0/method.WebInspector.get_inspected_uri.html
+++ b/Documentation/webkitgtk-6.0/method.WebInspector.get_inspected_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebInspector.get_web_view.html b/Documentation/webkitgtk-6.0/method.WebInspector.get_web_view.html
index 7c8e887710..78b0a40911 100644
--- a/Documentation/webkitgtk-6.0/method.WebInspector.get_web_view.html
+++ b/Documentation/webkitgtk-6.0/method.WebInspector.get_web_view.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebInspector.is_attached.html b/Documentation/webkitgtk-6.0/method.WebInspector.is_attached.html
index c444791741..a9faff66f8 100644
--- a/Documentation/webkitgtk-6.0/method.WebInspector.is_attached.html
+++ b/Documentation/webkitgtk-6.0/method.WebInspector.is_attached.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebInspector.show.html b/Documentation/webkitgtk-6.0/method.WebInspector.show.html
index a096c9bd0e..076bd44674 100644
--- a/Documentation/webkitgtk-6.0/method.WebInspector.show.html
+++ b/Documentation/webkitgtk-6.0/method.WebInspector.show.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebResource.get_data.html b/Documentation/webkitgtk-6.0/method.WebResource.get_data.html
index 414802d1ef..57615752dc 100644
--- a/Documentation/webkitgtk-6.0/method.WebResource.get_data.html
+++ b/Documentation/webkitgtk-6.0/method.WebResource.get_data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebResource.get_data_finish.html b/Documentation/webkitgtk-6.0/method.WebResource.get_data_finish.html
index cfe2e687c3..98d730f25b 100644
--- a/Documentation/webkitgtk-6.0/method.WebResource.get_data_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebResource.get_data_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebResource.get_response.html b/Documentation/webkitgtk-6.0/method.WebResource.get_response.html
index 97de0abec1..bb98f161c0 100644
--- a/Documentation/webkitgtk-6.0/method.WebResource.get_response.html
+++ b/Documentation/webkitgtk-6.0/method.WebResource.get_response.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebResource.get_uri.html b/Documentation/webkitgtk-6.0/method.WebResource.get_uri.html
index 481e83783e..67c36983b9 100644
--- a/Documentation/webkitgtk-6.0/method.WebResource.get_uri.html
+++ b/Documentation/webkitgtk-6.0/method.WebResource.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.call_async_javascript_function.html b/Documentation/webkitgtk-6.0/method.WebView.call_async_javascript_function.html
index e5da9e5783..246a644ba4 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.call_async_javascript_function.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.call_async_javascript_function.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.call_async_javascript_function_finish.html b/Documentation/webkitgtk-6.0/method.WebView.call_async_javascript_function_finish.html
index 2edabf92d9..0bd05df164 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.call_async_javascript_function_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.call_async_javascript_function_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.can_execute_editing_command.html b/Documentation/webkitgtk-6.0/method.WebView.can_execute_editing_command.html
index e4134ff679..709d9c5a4e 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.can_execute_editing_command.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.can_execute_editing_command.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.can_execute_editing_command_finish.html b/Documentation/webkitgtk-6.0/method.WebView.can_execute_editing_command_finish.html
index ba52f792a9..bff1f940ff 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.can_execute_editing_command_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.can_execute_editing_command_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.can_go_back.html b/Documentation/webkitgtk-6.0/method.WebView.can_go_back.html
index ed890a6558..5e3cedb545 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.can_go_back.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.can_go_back.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.can_go_forward.html b/Documentation/webkitgtk-6.0/method.WebView.can_go_forward.html
index cf0b08632b..9593f966b5 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.can_go_forward.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.can_go_forward.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.can_show_mime_type.html b/Documentation/webkitgtk-6.0/method.WebView.can_show_mime_type.html
index 2189bd9e15..a577116693 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.can_show_mime_type.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.can_show_mime_type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.download_uri.html b/Documentation/webkitgtk-6.0/method.WebView.download_uri.html
index 014123fff9..f0e7b89f09 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.download_uri.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.download_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.evaluate_javascript.html b/Documentation/webkitgtk-6.0/method.WebView.evaluate_javascript.html
index 1b591df751..04c0568477 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.evaluate_javascript.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.evaluate_javascript.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.evaluate_javascript_finish.html b/Documentation/webkitgtk-6.0/method.WebView.evaluate_javascript_finish.html
index 6111eecae6..26cf60a9c8 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.evaluate_javascript_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.evaluate_javascript_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.execute_editing_command.html b/Documentation/webkitgtk-6.0/method.WebView.execute_editing_command.html
index 334726eedb..89f90f8ecf 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.execute_editing_command.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.execute_editing_command.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.execute_editing_command_with_argument.html b/Documentation/webkitgtk-6.0/method.WebView.execute_editing_command_with_argument.html
index e0e9fd9a83..3acb4a2cad 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.execute_editing_command_with_argument.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.execute_editing_command_with_argument.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_automation_presentation_type.html b/Documentation/webkitgtk-6.0/method.WebView.get_automation_presentation_type.html
index 78b574c563..8380deed1b 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_automation_presentation_type.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_automation_presentation_type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_back_forward_list.html b/Documentation/webkitgtk-6.0/method.WebView.get_back_forward_list.html
index c34d215815..1339208da9 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_back_forward_list.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_back_forward_list.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_background_color.html b/Documentation/webkitgtk-6.0/method.WebView.get_background_color.html
index b27115f854..8241592f8e 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_background_color.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_background_color.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_camera_capture_state.html b/Documentation/webkitgtk-6.0/method.WebView.get_camera_capture_state.html
index d52068a161..9334d1f11d 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_camera_capture_state.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_camera_capture_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_context.html b/Documentation/webkitgtk-6.0/method.WebView.get_context.html
index 076047fb55..d958ee4b62 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_context.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_custom_charset.html b/Documentation/webkitgtk-6.0/method.WebView.get_custom_charset.html
index 0da46020d5..9fe592e712 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_custom_charset.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_custom_charset.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_default_content_security_policy.html b/Documentation/webkitgtk-6.0/method.WebView.get_default_content_security_policy.html
index 90b7b79945..eb888f3236 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_default_content_security_policy.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_default_content_security_policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_display_capture_state.html b/Documentation/webkitgtk-6.0/method.WebView.get_display_capture_state.html
index c820bf209a..d240baec5b 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_display_capture_state.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_display_capture_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_editor_state.html b/Documentation/webkitgtk-6.0/method.WebView.get_editor_state.html
index 076dc020fe..189a91bcb9 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_editor_state.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_editor_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_estimated_load_progress.html b/Documentation/webkitgtk-6.0/method.WebView.get_estimated_load_progress.html
index 84e999910d..f2b1610723 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_estimated_load_progress.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_estimated_load_progress.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_favicon.html b/Documentation/webkitgtk-6.0/method.WebView.get_favicon.html
index b547118c9d..4a41ec371a 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_favicon.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_favicon.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_find_controller.html b/Documentation/webkitgtk-6.0/method.WebView.get_find_controller.html
index 37ce4bf360..b5085e68b1 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_find_controller.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_find_controller.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_input_method_context.html b/Documentation/webkitgtk-6.0/method.WebView.get_input_method_context.html
index f694879ab6..a6942c758f 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_input_method_context.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_input_method_context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_inspector.html b/Documentation/webkitgtk-6.0/method.WebView.get_inspector.html
index 692a730633..1577c05c8d 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_inspector.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_inspector.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_is_muted.html b/Documentation/webkitgtk-6.0/method.WebView.get_is_muted.html
index 46119f872c..bf84ee5061 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_is_muted.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_is_muted.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_is_web_process_responsive.html b/Documentation/webkitgtk-6.0/method.WebView.get_is_web_process_responsive.html
index e2f6883f14..ee2ac7d24e 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_is_web_process_responsive.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_is_web_process_responsive.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_main_resource.html b/Documentation/webkitgtk-6.0/method.WebView.get_main_resource.html
index aeb99e29da..f4cbe98b8a 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_main_resource.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_main_resource.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_microphone_capture_state.html b/Documentation/webkitgtk-6.0/method.WebView.get_microphone_capture_state.html
index b553033667..6fb3e0acda 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_microphone_capture_state.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_microphone_capture_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_network_session.html b/Documentation/webkitgtk-6.0/method.WebView.get_network_session.html
index 0749a46b33..56de18eda9 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_network_session.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_network_session.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_page_id.html b/Documentation/webkitgtk-6.0/method.WebView.get_page_id.html
index 12e45b3289..56f353f5c0 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_page_id.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_page_id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_session_state.html b/Documentation/webkitgtk-6.0/method.WebView.get_session_state.html
index 964bd4b297..a0d232d2d3 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_session_state.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_session_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_settings.html b/Documentation/webkitgtk-6.0/method.WebView.get_settings.html
index 0541b6ee5a..18f13498ea 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_settings.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_snapshot.html b/Documentation/webkitgtk-6.0/method.WebView.get_snapshot.html
index 22e76627f7..add9248f14 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_snapshot.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_snapshot.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_snapshot_finish.html b/Documentation/webkitgtk-6.0/method.WebView.get_snapshot_finish.html
index e29ba00009..23de5c61d5 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_snapshot_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_snapshot_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_title.html b/Documentation/webkitgtk-6.0/method.WebView.get_title.html
index 43cb8f313d..de72f24b1b 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_title.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_tls_info.html b/Documentation/webkitgtk-6.0/method.WebView.get_tls_info.html
index e780da73a8..6bf2c435b8 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_tls_info.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_tls_info.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_uri.html b/Documentation/webkitgtk-6.0/method.WebView.get_uri.html
index 7b28523986..eb015be0fb 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_uri.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_user_content_manager.html b/Documentation/webkitgtk-6.0/method.WebView.get_user_content_manager.html
index e8dd41336a..2191c0924e 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_user_content_manager.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_user_content_manager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_web_extension_mode.html b/Documentation/webkitgtk-6.0/method.WebView.get_web_extension_mode.html
index d7c716ec94..920414f191 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_web_extension_mode.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_web_extension_mode.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_website_policies.html b/Documentation/webkitgtk-6.0/method.WebView.get_website_policies.html
index f2ddb6954a..200e788c0e 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_website_policies.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_website_policies.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_window_properties.html b/Documentation/webkitgtk-6.0/method.WebView.get_window_properties.html
index a8a201ebe7..8161425e0e 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_window_properties.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_window_properties.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.get_zoom_level.html b/Documentation/webkitgtk-6.0/method.WebView.get_zoom_level.html
index 24970544f7..9426126d53 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.get_zoom_level.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.get_zoom_level.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.go_back.html b/Documentation/webkitgtk-6.0/method.WebView.go_back.html
index dbed216cdc..95405842bf 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.go_back.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.go_back.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.go_forward.html b/Documentation/webkitgtk-6.0/method.WebView.go_forward.html
index 2e63bfa7ee..de4ceb526d 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.go_forward.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.go_forward.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.go_to_back_forward_list_item.html b/Documentation/webkitgtk-6.0/method.WebView.go_to_back_forward_list_item.html
index 688fce3b0c..05a3327476 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.go_to_back_forward_list_item.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.go_to_back_forward_list_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.is_controlled_by_automation.html b/Documentation/webkitgtk-6.0/method.WebView.is_controlled_by_automation.html
index 78018ae46f..a55f96c174 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.is_controlled_by_automation.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.is_controlled_by_automation.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.is_editable.html b/Documentation/webkitgtk-6.0/method.WebView.is_editable.html
index 820933cd7b..0f7ae9190a 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.is_editable.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.is_editable.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.is_loading.html b/Documentation/webkitgtk-6.0/method.WebView.is_loading.html
index 792e8893a7..dda53faa98 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.is_loading.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.is_loading.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.is_playing_audio.html b/Documentation/webkitgtk-6.0/method.WebView.is_playing_audio.html
index 3c6b6b340f..99fc415846 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.is_playing_audio.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.is_playing_audio.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.load_alternate_html.html b/Documentation/webkitgtk-6.0/method.WebView.load_alternate_html.html
index aa5384488f..c0b1d12159 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.load_alternate_html.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.load_alternate_html.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.load_bytes.html b/Documentation/webkitgtk-6.0/method.WebView.load_bytes.html
index 8e1c5772b6..211293ff6e 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.load_bytes.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.load_bytes.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.load_html.html b/Documentation/webkitgtk-6.0/method.WebView.load_html.html
index 8b4bc46afb..ce9f1eb9c7 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.load_html.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.load_html.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.load_plain_text.html b/Documentation/webkitgtk-6.0/method.WebView.load_plain_text.html
index a423491b15..80e446621d 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.load_plain_text.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.load_plain_text.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.load_request.html b/Documentation/webkitgtk-6.0/method.WebView.load_request.html
index 39680f9c14..01515757e5 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.load_request.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.load_request.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.load_uri.html b/Documentation/webkitgtk-6.0/method.WebView.load_uri.html
index b18fa7a46a..dff7341dbb 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.load_uri.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.load_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.reload.html b/Documentation/webkitgtk-6.0/method.WebView.reload.html
index 495292715c..3fd0880900 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.reload.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.reload.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.reload_bypass_cache.html b/Documentation/webkitgtk-6.0/method.WebView.reload_bypass_cache.html
index 7d7a4a1d9c..56c2252f41 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.reload_bypass_cache.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.reload_bypass_cache.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.restore_session_state.html b/Documentation/webkitgtk-6.0/method.WebView.restore_session_state.html
index 8158c3d8a0..5a99e2c366 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.restore_session_state.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.restore_session_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.save.html b/Documentation/webkitgtk-6.0/method.WebView.save.html
index c09ea8f5a1..f4a6cae0fd 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.save.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.save.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.save_finish.html b/Documentation/webkitgtk-6.0/method.WebView.save_finish.html
index f793f1807d..1a0663953d 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.save_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.save_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.save_to_file.html b/Documentation/webkitgtk-6.0/method.WebView.save_to_file.html
index 2a13af1a1f..0ee30ab8eb 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.save_to_file.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.save_to_file.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.save_to_file_finish.html b/Documentation/webkitgtk-6.0/method.WebView.save_to_file_finish.html
index 99d2fbe3e9..54c29c3c27 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.save_to_file_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.save_to_file_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.send_message_to_page.html b/Documentation/webkitgtk-6.0/method.WebView.send_message_to_page.html
index 432b61c1ea..acf1bd4cad 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.send_message_to_page.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.send_message_to_page.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.send_message_to_page_finish.html b/Documentation/webkitgtk-6.0/method.WebView.send_message_to_page_finish.html
index eb7a01f009..0c2688f683 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.send_message_to_page_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.send_message_to_page_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_background_color.html b/Documentation/webkitgtk-6.0/method.WebView.set_background_color.html
index e77880ed14..b8db8d06c9 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_background_color.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_background_color.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_camera_capture_state.html b/Documentation/webkitgtk-6.0/method.WebView.set_camera_capture_state.html
index 103191b422..628a83d462 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_camera_capture_state.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_camera_capture_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_cors_allowlist.html b/Documentation/webkitgtk-6.0/method.WebView.set_cors_allowlist.html
index 359913245c..37b75338ee 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_cors_allowlist.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_cors_allowlist.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_custom_charset.html b/Documentation/webkitgtk-6.0/method.WebView.set_custom_charset.html
index db4d965275..d20cef34e3 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_custom_charset.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_custom_charset.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_display_capture_state.html b/Documentation/webkitgtk-6.0/method.WebView.set_display_capture_state.html
index 824d90b316..733f2b5b18 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_display_capture_state.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_display_capture_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_editable.html b/Documentation/webkitgtk-6.0/method.WebView.set_editable.html
index f9e5a8d3ef..1776927af8 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_editable.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_editable.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_input_method_context.html b/Documentation/webkitgtk-6.0/method.WebView.set_input_method_context.html
index 7d776543c9..169f5b0654 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_input_method_context.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_input_method_context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_is_muted.html b/Documentation/webkitgtk-6.0/method.WebView.set_is_muted.html
index 8ec2886c9a..6b18615148 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_is_muted.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_is_muted.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_microphone_capture_state.html b/Documentation/webkitgtk-6.0/method.WebView.set_microphone_capture_state.html
index 725a2a3d4e..13d1397278 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_microphone_capture_state.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_microphone_capture_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_settings.html b/Documentation/webkitgtk-6.0/method.WebView.set_settings.html
index 890c67da40..ecb8706636 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_settings.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.set_zoom_level.html b/Documentation/webkitgtk-6.0/method.WebView.set_zoom_level.html
index 3c6e7cb5a9..241d435a1b 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.set_zoom_level.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.set_zoom_level.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.stop_loading.html b/Documentation/webkitgtk-6.0/method.WebView.stop_loading.html
index 85cf561be5..c673c6e0dd 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.stop_loading.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.stop_loading.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.terminate_web_process.html b/Documentation/webkitgtk-6.0/method.WebView.terminate_web_process.html
index a61153f778..07da940044 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.terminate_web_process.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.terminate_web_process.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebView.try_close.html b/Documentation/webkitgtk-6.0/method.WebView.try_close.html
index c0efcb5faa..28c234d23f 100644
--- a/Documentation/webkitgtk-6.0/method.WebView.try_close.html
+++ b/Documentation/webkitgtk-6.0/method.WebView.try_close.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebViewSessionState.ref.html b/Documentation/webkitgtk-6.0/method.WebViewSessionState.ref.html
index b49cb65435..093091fd25 100644
--- a/Documentation/webkitgtk-6.0/method.WebViewSessionState.ref.html
+++ b/Documentation/webkitgtk-6.0/method.WebViewSessionState.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebViewSessionState.serialize.html b/Documentation/webkitgtk-6.0/method.WebViewSessionState.serialize.html
index 5bc2d0e0bc..463f093fd5 100644
--- a/Documentation/webkitgtk-6.0/method.WebViewSessionState.serialize.html
+++ b/Documentation/webkitgtk-6.0/method.WebViewSessionState.serialize.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebViewSessionState.unref.html b/Documentation/webkitgtk-6.0/method.WebViewSessionState.unref.html
index 7321b584e2..092a98beb3 100644
--- a/Documentation/webkitgtk-6.0/method.WebViewSessionState.unref.html
+++ b/Documentation/webkitgtk-6.0/method.WebViewSessionState.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteData.get_name.html b/Documentation/webkitgtk-6.0/method.WebsiteData.get_name.html
index 62b5417121..48bc4a1e63 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteData.get_name.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteData.get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteData.get_size.html b/Documentation/webkitgtk-6.0/method.WebsiteData.get_size.html
index 6699698f87..6a1ff3899f 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteData.get_size.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteData.get_size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteData.get_types.html b/Documentation/webkitgtk-6.0/method.WebsiteData.get_types.html
index 3d673a9996..56a2a0508a 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteData.get_types.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteData.get_types.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteData.ref.html b/Documentation/webkitgtk-6.0/method.WebsiteData.ref.html
index cd541d0bb7..d14d0b8800 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteData.ref.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteData.ref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteData.unref.html b/Documentation/webkitgtk-6.0/method.WebsiteData.unref.html
index 8b0f06a3f8..9ab5f1b93e 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteData.unref.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteData.unref.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataAccessPermissionRequest.get_current_domain.html b/Documentation/webkitgtk-6.0/method.WebsiteDataAccessPermissionRequest.get_current_domain.html
index 75b24ccd1d..5974af404e 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataAccessPermissionRequest.get_current_domain.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataAccessPermissionRequest.get_current_domain.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataAccessPermissionRequest.get_requesting_domain.html b/Documentation/webkitgtk-6.0/method.WebsiteDataAccessPermissionRequest.get_requesting_domain.html
index 5e9586e335..79ddff0e0e 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataAccessPermissionRequest.get_requesting_domain.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataAccessPermissionRequest.get_requesting_domain.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.clear.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.clear.html
index 53516e5d07..191e50b014 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.clear.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.clear.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.clear_finish.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.clear_finish.html
index b4ad6ecb1c..40559e3698 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.clear_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.clear_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.fetch.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.fetch.html
index 7edbef5868..75c0efe5c1 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.fetch.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.fetch.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.fetch_finish.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.fetch_finish.html
index 49fcb1ccca..b6b41f9300 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.fetch_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.fetch_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_base_cache_directory.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_base_cache_directory.html
index 01849f7298..75814af205 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_base_cache_directory.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_base_cache_directory.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_base_data_directory.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_base_data_directory.html
index 24f1ccc677..a3e4a1f710 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_base_data_directory.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_base_data_directory.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_favicon_database.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_favicon_database.html
index a130e78a9b..1957c1c565 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_favicon_database.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_favicon_database.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_favicons_enabled.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_favicons_enabled.html
index 440ed3bfa2..2783eee650 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_favicons_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_favicons_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_itp_summary.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_itp_summary.html
index e27c73edf3..16709ee0f7 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_itp_summary.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_itp_summary.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_itp_summary_finish.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_itp_summary_finish.html
index d3c3554934..bf3744c4d3 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_itp_summary_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.get_itp_summary_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.is_ephemeral.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.is_ephemeral.html
index f949607b67..a75179a677 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.is_ephemeral.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.is_ephemeral.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.remove.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.remove.html
index 5470307a03..457302d580 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.remove.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.remove.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.remove_finish.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.remove_finish.html
index 420536a707..ad50d3851a 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.remove_finish.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.remove_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.set_favicons_enabled.html b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.set_favicons_enabled.html
index 08d5eb5e43..1f6be577f7 100644
--- a/Documentation/webkitgtk-6.0/method.WebsiteDataManager.set_favicons_enabled.html
+++ b/Documentation/webkitgtk-6.0/method.WebsiteDataManager.set_favicons_enabled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WebsitePolicies.get_autoplay_policy.html b/Documentation/webkitgtk-6.0/method.WebsitePolicies.get_autoplay_policy.html
index 495e036554..276c969336 100644
--- a/Documentation/webkitgtk-6.0/method.WebsitePolicies.get_autoplay_policy.html
+++ b/Documentation/webkitgtk-6.0/method.WebsitePolicies.get_autoplay_policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WindowProperties.get_fullscreen.html b/Documentation/webkitgtk-6.0/method.WindowProperties.get_fullscreen.html
index b05689d344..22b393379c 100644
--- a/Documentation/webkitgtk-6.0/method.WindowProperties.get_fullscreen.html
+++ b/Documentation/webkitgtk-6.0/method.WindowProperties.get_fullscreen.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WindowProperties.get_geometry.html b/Documentation/webkitgtk-6.0/method.WindowProperties.get_geometry.html
index 89fb849c2b..e613054a88 100644
--- a/Documentation/webkitgtk-6.0/method.WindowProperties.get_geometry.html
+++ b/Documentation/webkitgtk-6.0/method.WindowProperties.get_geometry.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WindowProperties.get_locationbar_visible.html b/Documentation/webkitgtk-6.0/method.WindowProperties.get_locationbar_visible.html
index 35ab4bff18..4645bb7490 100644
--- a/Documentation/webkitgtk-6.0/method.WindowProperties.get_locationbar_visible.html
+++ b/Documentation/webkitgtk-6.0/method.WindowProperties.get_locationbar_visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WindowProperties.get_menubar_visible.html b/Documentation/webkitgtk-6.0/method.WindowProperties.get_menubar_visible.html
index 69fa2d1364..292f91822e 100644
--- a/Documentation/webkitgtk-6.0/method.WindowProperties.get_menubar_visible.html
+++ b/Documentation/webkitgtk-6.0/method.WindowProperties.get_menubar_visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WindowProperties.get_resizable.html b/Documentation/webkitgtk-6.0/method.WindowProperties.get_resizable.html
index 431b888eac..ababc2745f 100644
--- a/Documentation/webkitgtk-6.0/method.WindowProperties.get_resizable.html
+++ b/Documentation/webkitgtk-6.0/method.WindowProperties.get_resizable.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WindowProperties.get_scrollbars_visible.html b/Documentation/webkitgtk-6.0/method.WindowProperties.get_scrollbars_visible.html
index 6d042d7538..022c382ed2 100644
--- a/Documentation/webkitgtk-6.0/method.WindowProperties.get_scrollbars_visible.html
+++ b/Documentation/webkitgtk-6.0/method.WindowProperties.get_scrollbars_visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WindowProperties.get_statusbar_visible.html b/Documentation/webkitgtk-6.0/method.WindowProperties.get_statusbar_visible.html
index bc44dcc898..faf6a87822 100644
--- a/Documentation/webkitgtk-6.0/method.WindowProperties.get_statusbar_visible.html
+++ b/Documentation/webkitgtk-6.0/method.WindowProperties.get_statusbar_visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/method.WindowProperties.get_toolbar_visible.html b/Documentation/webkitgtk-6.0/method.WindowProperties.get_toolbar_visible.html
index aa383b9898..a61a9a9337 100644
--- a/Documentation/webkitgtk-6.0/method.WindowProperties.get_toolbar_visible.html
+++ b/Documentation/webkitgtk-6.0/method.WindowProperties.get_toolbar_visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/migrating-to-webkitgtk-6.0.html b/Documentation/webkitgtk-6.0/migrating-to-webkitgtk-6.0.html
index 80765c1b66..9ce2ed24e6 100644
--- a/Documentation/webkitgtk-6.0/migrating-to-webkitgtk-6.0.html
+++ b/Documentation/webkitgtk-6.0/migrating-to-webkitgtk-6.0.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.AutomationSession.id.html b/Documentation/webkitgtk-6.0/property.AutomationSession.id.html
index 9310eaba81..1c217316dd 100644
--- a/Documentation/webkitgtk-6.0/property.AutomationSession.id.html
+++ b/Documentation/webkitgtk-6.0/property.AutomationSession.id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.ColorChooserRequest.rgba.html b/Documentation/webkitgtk-6.0/property.ColorChooserRequest.rgba.html
index eade71a508..c5a094cb7b 100644
--- a/Documentation/webkitgtk-6.0/property.ColorChooserRequest.rgba.html
+++ b/Documentation/webkitgtk-6.0/property.ColorChooserRequest.rgba.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Download.allow-overwrite.html b/Documentation/webkitgtk-6.0/property.Download.allow-overwrite.html
index 210c19a9f4..e24b5eb49c 100644
--- a/Documentation/webkitgtk-6.0/property.Download.allow-overwrite.html
+++ b/Documentation/webkitgtk-6.0/property.Download.allow-overwrite.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Download.destination.html b/Documentation/webkitgtk-6.0/property.Download.destination.html
index 731c060ed1..ee1f2669cb 100644
--- a/Documentation/webkitgtk-6.0/property.Download.destination.html
+++ b/Documentation/webkitgtk-6.0/property.Download.destination.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Download.estimated-progress.html b/Documentation/webkitgtk-6.0/property.Download.estimated-progress.html
index e87515d3d5..b7dc717a7d 100644
--- a/Documentation/webkitgtk-6.0/property.Download.estimated-progress.html
+++ b/Documentation/webkitgtk-6.0/property.Download.estimated-progress.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Download.response.html b/Documentation/webkitgtk-6.0/property.Download.response.html
index 798555db78..0450507661 100644
--- a/Documentation/webkitgtk-6.0/property.Download.response.html
+++ b/Documentation/webkitgtk-6.0/property.Download.response.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.EditorState.typing-attributes.html b/Documentation/webkitgtk-6.0/property.EditorState.typing-attributes.html
index bd009ff121..1b659353eb 100644
--- a/Documentation/webkitgtk-6.0/property.EditorState.typing-attributes.html
+++ b/Documentation/webkitgtk-6.0/property.EditorState.typing-attributes.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.FileChooserRequest.filter.html b/Documentation/webkitgtk-6.0/property.FileChooserRequest.filter.html
index b2e376ad3c..a4841e645c 100644
--- a/Documentation/webkitgtk-6.0/property.FileChooserRequest.filter.html
+++ b/Documentation/webkitgtk-6.0/property.FileChooserRequest.filter.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.FileChooserRequest.mime-types.html b/Documentation/webkitgtk-6.0/property.FileChooserRequest.mime-types.html
index e3632a3c86..8d590fee86 100644
--- a/Documentation/webkitgtk-6.0/property.FileChooserRequest.mime-types.html
+++ b/Documentation/webkitgtk-6.0/property.FileChooserRequest.mime-types.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.FileChooserRequest.select-multiple.html b/Documentation/webkitgtk-6.0/property.FileChooserRequest.select-multiple.html
index 28ef8ed099..d485036c1a 100644
--- a/Documentation/webkitgtk-6.0/property.FileChooserRequest.select-multiple.html
+++ b/Documentation/webkitgtk-6.0/property.FileChooserRequest.select-multiple.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.FileChooserRequest.selected-files.html b/Documentation/webkitgtk-6.0/property.FileChooserRequest.selected-files.html
index ce1c785c31..be2d2e2c35 100644
--- a/Documentation/webkitgtk-6.0/property.FileChooserRequest.selected-files.html
+++ b/Documentation/webkitgtk-6.0/property.FileChooserRequest.selected-files.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.FindController.max-match-count.html b/Documentation/webkitgtk-6.0/property.FindController.max-match-count.html
index 444f59121b..37177adbf7 100644
--- a/Documentation/webkitgtk-6.0/property.FindController.max-match-count.html
+++ b/Documentation/webkitgtk-6.0/property.FindController.max-match-count.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.FindController.options.html b/Documentation/webkitgtk-6.0/property.FindController.options.html
index 9b0bf3f4ab..8cb1bf73d2 100644
--- a/Documentation/webkitgtk-6.0/property.FindController.options.html
+++ b/Documentation/webkitgtk-6.0/property.FindController.options.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.FindController.text.html b/Documentation/webkitgtk-6.0/property.FindController.text.html
index f909937a59..8104496c14 100644
--- a/Documentation/webkitgtk-6.0/property.FindController.text.html
+++ b/Documentation/webkitgtk-6.0/property.FindController.text.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.FindController.web-view.html b/Documentation/webkitgtk-6.0/property.FindController.web-view.html
index 17f0f0c77b..2ba9974f5a 100644
--- a/Documentation/webkitgtk-6.0/property.FindController.web-view.html
+++ b/Documentation/webkitgtk-6.0/property.FindController.web-view.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.GeolocationManager.enable-high-accuracy.html b/Documentation/webkitgtk-6.0/property.GeolocationManager.enable-high-accuracy.html
index 78db97d8d4..98961b0dae 100644
--- a/Documentation/webkitgtk-6.0/property.GeolocationManager.enable-high-accuracy.html
+++ b/Documentation/webkitgtk-6.0/property.GeolocationManager.enable-high-accuracy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.HitTestResult.context.html b/Documentation/webkitgtk-6.0/property.HitTestResult.context.html
index 5abe677c80..f80366d0d7 100644
--- a/Documentation/webkitgtk-6.0/property.HitTestResult.context.html
+++ b/Documentation/webkitgtk-6.0/property.HitTestResult.context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.HitTestResult.image-uri.html b/Documentation/webkitgtk-6.0/property.HitTestResult.image-uri.html
index 0bce43f1c2..7df337164a 100644
--- a/Documentation/webkitgtk-6.0/property.HitTestResult.image-uri.html
+++ b/Documentation/webkitgtk-6.0/property.HitTestResult.image-uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.HitTestResult.link-label.html b/Documentation/webkitgtk-6.0/property.HitTestResult.link-label.html
index bf2b32efe7..1e64592567 100644
--- a/Documentation/webkitgtk-6.0/property.HitTestResult.link-label.html
+++ b/Documentation/webkitgtk-6.0/property.HitTestResult.link-label.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.HitTestResult.link-title.html b/Documentation/webkitgtk-6.0/property.HitTestResult.link-title.html
index 7e88d491ee..3b3eb8f9b9 100644
--- a/Documentation/webkitgtk-6.0/property.HitTestResult.link-title.html
+++ b/Documentation/webkitgtk-6.0/property.HitTestResult.link-title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.HitTestResult.link-uri.html b/Documentation/webkitgtk-6.0/property.HitTestResult.link-uri.html
index c98a8d7d10..8914c8cdec 100644
--- a/Documentation/webkitgtk-6.0/property.HitTestResult.link-uri.html
+++ b/Documentation/webkitgtk-6.0/property.HitTestResult.link-uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.HitTestResult.media-uri.html b/Documentation/webkitgtk-6.0/property.HitTestResult.media-uri.html
index e24afc3242..64ec8a49b3 100644
--- a/Documentation/webkitgtk-6.0/property.HitTestResult.media-uri.html
+++ b/Documentation/webkitgtk-6.0/property.HitTestResult.media-uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.InputMethodContext.input-hints.html b/Documentation/webkitgtk-6.0/property.InputMethodContext.input-hints.html
index 4b5de1af4f..81ae747bc1 100644
--- a/Documentation/webkitgtk-6.0/property.InputMethodContext.input-hints.html
+++ b/Documentation/webkitgtk-6.0/property.InputMethodContext.input-hints.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.InputMethodContext.input-purpose.html b/Documentation/webkitgtk-6.0/property.InputMethodContext.input-purpose.html
index 9fc2b6d9f6..5adecef88c 100644
--- a/Documentation/webkitgtk-6.0/property.InputMethodContext.input-purpose.html
+++ b/Documentation/webkitgtk-6.0/property.InputMethodContext.input-purpose.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.NavigationPolicyDecision.navigation-action.html b/Documentation/webkitgtk-6.0/property.NavigationPolicyDecision.navigation-action.html
index 64fc967664..850c017034 100644
--- a/Documentation/webkitgtk-6.0/property.NavigationPolicyDecision.navigation-action.html
+++ b/Documentation/webkitgtk-6.0/property.NavigationPolicyDecision.navigation-action.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.NetworkSession.cache-directory.html b/Documentation/webkitgtk-6.0/property.NetworkSession.cache-directory.html
index f681720934..0b6ebbdf9a 100644
--- a/Documentation/webkitgtk-6.0/property.NetworkSession.cache-directory.html
+++ b/Documentation/webkitgtk-6.0/property.NetworkSession.cache-directory.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.NetworkSession.data-directory.html b/Documentation/webkitgtk-6.0/property.NetworkSession.data-directory.html
index 564addb055..b477835173 100644
--- a/Documentation/webkitgtk-6.0/property.NetworkSession.data-directory.html
+++ b/Documentation/webkitgtk-6.0/property.NetworkSession.data-directory.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.NetworkSession.is-ephemeral.html b/Documentation/webkitgtk-6.0/property.NetworkSession.is-ephemeral.html
index be8b383b49..1a900b22bb 100644
--- a/Documentation/webkitgtk-6.0/property.NetworkSession.is-ephemeral.html
+++ b/Documentation/webkitgtk-6.0/property.NetworkSession.is-ephemeral.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Notification.body.html b/Documentation/webkitgtk-6.0/property.Notification.body.html
index 52cc083548..46547f51a6 100644
--- a/Documentation/webkitgtk-6.0/property.Notification.body.html
+++ b/Documentation/webkitgtk-6.0/property.Notification.body.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Notification.id.html b/Documentation/webkitgtk-6.0/property.Notification.id.html
index 1dce992b54..fc68eb787b 100644
--- a/Documentation/webkitgtk-6.0/property.Notification.id.html
+++ b/Documentation/webkitgtk-6.0/property.Notification.id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Notification.tag.html b/Documentation/webkitgtk-6.0/property.Notification.tag.html
index 5f22ea1fbe..bd1a579494 100644
--- a/Documentation/webkitgtk-6.0/property.Notification.tag.html
+++ b/Documentation/webkitgtk-6.0/property.Notification.tag.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Notification.title.html b/Documentation/webkitgtk-6.0/property.Notification.title.html
index e19a1a961f..b45bfe18bf 100644
--- a/Documentation/webkitgtk-6.0/property.Notification.title.html
+++ b/Documentation/webkitgtk-6.0/property.Notification.title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.PrintOperation.page-setup.html b/Documentation/webkitgtk-6.0/property.PrintOperation.page-setup.html
index e6b2dd8d12..26dc8aa358 100644
--- a/Documentation/webkitgtk-6.0/property.PrintOperation.page-setup.html
+++ b/Documentation/webkitgtk-6.0/property.PrintOperation.page-setup.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.PrintOperation.print-settings.html b/Documentation/webkitgtk-6.0/property.PrintOperation.print-settings.html
index e6e65c5d97..ea6ec1603f 100644
--- a/Documentation/webkitgtk-6.0/property.PrintOperation.print-settings.html
+++ b/Documentation/webkitgtk-6.0/property.PrintOperation.print-settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.PrintOperation.web-view.html b/Documentation/webkitgtk-6.0/property.PrintOperation.web-view.html
index f2dd1ea4a0..d5d187de35 100644
--- a/Documentation/webkitgtk-6.0/property.PrintOperation.web-view.html
+++ b/Documentation/webkitgtk-6.0/property.PrintOperation.web-view.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.ResponsePolicyDecision.request.html b/Documentation/webkitgtk-6.0/property.ResponsePolicyDecision.request.html
index ff7a7207aa..aea382bb81 100644
--- a/Documentation/webkitgtk-6.0/property.ResponsePolicyDecision.request.html
+++ b/Documentation/webkitgtk-6.0/property.ResponsePolicyDecision.request.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.ResponsePolicyDecision.response.html b/Documentation/webkitgtk-6.0/property.ResponsePolicyDecision.response.html
index abee337265..a7377ed5f1 100644
--- a/Documentation/webkitgtk-6.0/property.ResponsePolicyDecision.response.html
+++ b/Documentation/webkitgtk-6.0/property.ResponsePolicyDecision.response.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.allow-file-access-from-file-urls.html b/Documentation/webkitgtk-6.0/property.Settings.allow-file-access-from-file-urls.html
index 80360fd2c2..b28dbdc68e 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.allow-file-access-from-file-urls.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.allow-file-access-from-file-urls.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.allow-modal-dialogs.html b/Documentation/webkitgtk-6.0/property.Settings.allow-modal-dialogs.html
index 766c9ce4cf..7eb3979144 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.allow-modal-dialogs.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.allow-modal-dialogs.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.allow-top-navigation-to-data-urls.html b/Documentation/webkitgtk-6.0/property.Settings.allow-top-navigation-to-data-urls.html
index 36c0edaee6..adccd3dd16 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.allow-top-navigation-to-data-urls.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.allow-top-navigation-to-data-urls.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.allow-universal-access-from-file-urls.html b/Documentation/webkitgtk-6.0/property.Settings.allow-universal-access-from-file-urls.html
index 544cb5f183..9bd7fd779e 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.allow-universal-access-from-file-urls.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.allow-universal-access-from-file-urls.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.auto-load-images.html b/Documentation/webkitgtk-6.0/property.Settings.auto-load-images.html
index a0127e2f8a..942e66cd08 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.auto-load-images.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.auto-load-images.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.cursive-font-family.html b/Documentation/webkitgtk-6.0/property.Settings.cursive-font-family.html
index f1d1bc8b72..0795fe6c7a 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.cursive-font-family.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.cursive-font-family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.default-charset.html b/Documentation/webkitgtk-6.0/property.Settings.default-charset.html
index 2482e4bb84..c7526d9ee8 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.default-charset.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.default-charset.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.default-font-family.html b/Documentation/webkitgtk-6.0/property.Settings.default-font-family.html
index 3d5f2269ff..8fbad233e6 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.default-font-family.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.default-font-family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.default-font-size.html b/Documentation/webkitgtk-6.0/property.Settings.default-font-size.html
index dac4575527..54c2e1660a 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.default-font-size.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.default-font-size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.default-monospace-font-size.html b/Documentation/webkitgtk-6.0/property.Settings.default-monospace-font-size.html
index ffd296fc92..847df717a2 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.default-monospace-font-size.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.default-monospace-font-size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.disable-web-security.html b/Documentation/webkitgtk-6.0/property.Settings.disable-web-security.html
index 78a27a7e7c..05de037d91 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.disable-web-security.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.disable-web-security.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.draw-compositing-indicators.html b/Documentation/webkitgtk-6.0/property.Settings.draw-compositing-indicators.html
index 4e63e621fd..72f6ad22f6 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.draw-compositing-indicators.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.draw-compositing-indicators.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-2d-canvas-acceleration.html b/Documentation/webkitgtk-6.0/property.Settings.enable-2d-canvas-acceleration.html
index 45683c9da4..bebedf404b 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-2d-canvas-acceleration.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-2d-canvas-acceleration.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-back-forward-navigation-gestures.html b/Documentation/webkitgtk-6.0/property.Settings.enable-back-forward-navigation-gestures.html
index b7d684c700..2a0bd7a745 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-back-forward-navigation-gestures.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-back-forward-navigation-gestures.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-caret-browsing.html b/Documentation/webkitgtk-6.0/property.Settings.enable-caret-browsing.html
index c6a1bde308..9d9c9541f3 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-caret-browsing.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-caret-browsing.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-developer-extras.html b/Documentation/webkitgtk-6.0/property.Settings.enable-developer-extras.html
index 9fe35746c0..7bded30553 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-developer-extras.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-developer-extras.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-dns-prefetching.html b/Documentation/webkitgtk-6.0/property.Settings.enable-dns-prefetching.html
index 7ae99b6658..f886aa3882 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-dns-prefetching.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-dns-prefetching.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-encrypted-media.html b/Documentation/webkitgtk-6.0/property.Settings.enable-encrypted-media.html
index 08c261ca0f..8f9aa30ef1 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-encrypted-media.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-encrypted-media.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-fullscreen.html b/Documentation/webkitgtk-6.0/property.Settings.enable-fullscreen.html
index 4e961a92e8..7f689e4fcf 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-fullscreen.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-fullscreen.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-html5-database.html b/Documentation/webkitgtk-6.0/property.Settings.enable-html5-database.html
index 379a27a9ee..c05f6f8a66 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-html5-database.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-html5-database.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-html5-local-storage.html b/Documentation/webkitgtk-6.0/property.Settings.enable-html5-local-storage.html
index 416b902241..426226acc5 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-html5-local-storage.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-html5-local-storage.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-hyperlink-auditing.html b/Documentation/webkitgtk-6.0/property.Settings.enable-hyperlink-auditing.html
index 91070cbdd4..8cd05102e2 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-hyperlink-auditing.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-hyperlink-auditing.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-javascript-markup.html b/Documentation/webkitgtk-6.0/property.Settings.enable-javascript-markup.html
index 8cdc676fcb..98799cb3c4 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-javascript-markup.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-javascript-markup.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-javascript.html b/Documentation/webkitgtk-6.0/property.Settings.enable-javascript.html
index 848b399d30..f72b3911b2 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-javascript.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-javascript.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-media-capabilities.html b/Documentation/webkitgtk-6.0/property.Settings.enable-media-capabilities.html
index a638907c7d..86e8b5581a 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-media-capabilities.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-media-capabilities.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-media-stream.html b/Documentation/webkitgtk-6.0/property.Settings.enable-media-stream.html
index 8987b13fb4..eff0217fca 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-media-stream.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-media-stream.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-media.html b/Documentation/webkitgtk-6.0/property.Settings.enable-media.html
index 0b07fcc9cd..9b7f131f9b 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-media.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-media.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-mediasource.html b/Documentation/webkitgtk-6.0/property.Settings.enable-mediasource.html
index ba3ec85b7d..2825924799 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-mediasource.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-mediasource.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-mock-capture-devices.html b/Documentation/webkitgtk-6.0/property.Settings.enable-mock-capture-devices.html
index 783008a9b7..5f635880c8 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-mock-capture-devices.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-mock-capture-devices.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-offline-web-application-cache.html b/Documentation/webkitgtk-6.0/property.Settings.enable-offline-web-application-cache.html
index 9416af1ace..d9aceb887e 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-offline-web-application-cache.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-offline-web-application-cache.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-page-cache.html b/Documentation/webkitgtk-6.0/property.Settings.enable-page-cache.html
index 09083e1202..9b85c6a1b0 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-page-cache.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-page-cache.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-resizable-text-areas.html b/Documentation/webkitgtk-6.0/property.Settings.enable-resizable-text-areas.html
index c7031b8ab3..bd7c737c42 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-resizable-text-areas.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-resizable-text-areas.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-site-specific-quirks.html b/Documentation/webkitgtk-6.0/property.Settings.enable-site-specific-quirks.html
index 2b44015833..cb96b92df9 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-site-specific-quirks.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-site-specific-quirks.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-smooth-scrolling.html b/Documentation/webkitgtk-6.0/property.Settings.enable-smooth-scrolling.html
index 5afd7ad067..8d048d4afe 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-smooth-scrolling.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-smooth-scrolling.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-spatial-navigation.html b/Documentation/webkitgtk-6.0/property.Settings.enable-spatial-navigation.html
index 2c559a78cb..79051b8171 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-spatial-navigation.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-spatial-navigation.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-tabs-to-links.html b/Documentation/webkitgtk-6.0/property.Settings.enable-tabs-to-links.html
index 3dbccad46d..c887025238 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-tabs-to-links.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-tabs-to-links.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-webaudio.html b/Documentation/webkitgtk-6.0/property.Settings.enable-webaudio.html
index 508e978a41..d3bcf566b0 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-webaudio.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-webaudio.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-webgl.html b/Documentation/webkitgtk-6.0/property.Settings.enable-webgl.html
index 12cdf92fac..cdca4fa8c1 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-webgl.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-webgl.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-webrtc.html b/Documentation/webkitgtk-6.0/property.Settings.enable-webrtc.html
index 3d787ed4fc..31d463d4f0 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-webrtc.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-webrtc.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.enable-write-console-messages-to-stdout.html b/Documentation/webkitgtk-6.0/property.Settings.enable-write-console-messages-to-stdout.html
index 336c52a296..2bce64bb04 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.enable-write-console-messages-to-stdout.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.enable-write-console-messages-to-stdout.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.fantasy-font-family.html b/Documentation/webkitgtk-6.0/property.Settings.fantasy-font-family.html
index 791946fa53..56d42fae95 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.fantasy-font-family.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.fantasy-font-family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.hardware-acceleration-policy.html b/Documentation/webkitgtk-6.0/property.Settings.hardware-acceleration-policy.html
index 12f902c308..82323f1e5f 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.hardware-acceleration-policy.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.hardware-acceleration-policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.javascript-can-access-clipboard.html b/Documentation/webkitgtk-6.0/property.Settings.javascript-can-access-clipboard.html
index c52279826c..42104e9d9f 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.javascript-can-access-clipboard.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.javascript-can-access-clipboard.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.javascript-can-open-windows-automatically.html b/Documentation/webkitgtk-6.0/property.Settings.javascript-can-open-windows-automatically.html
index 3606bdf9d5..72778fbbd0 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.javascript-can-open-windows-automatically.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.javascript-can-open-windows-automatically.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.load-icons-ignoring-image-load-setting.html b/Documentation/webkitgtk-6.0/property.Settings.load-icons-ignoring-image-load-setting.html
index d498da0033..cd203fb7fa 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.load-icons-ignoring-image-load-setting.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.load-icons-ignoring-image-load-setting.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.media-content-types-requiring-hardware-support.html b/Documentation/webkitgtk-6.0/property.Settings.media-content-types-requiring-hardware-support.html
index deed0a6c29..1c2b24557c 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.media-content-types-requiring-hardware-support.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.media-content-types-requiring-hardware-support.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.media-playback-allows-inline.html b/Documentation/webkitgtk-6.0/property.Settings.media-playback-allows-inline.html
index 150f2249be..f0493e5d8f 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.media-playback-allows-inline.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.media-playback-allows-inline.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.media-playback-requires-user-gesture.html b/Documentation/webkitgtk-6.0/property.Settings.media-playback-requires-user-gesture.html
index 00b547d0f3..9c19cb25aa 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.media-playback-requires-user-gesture.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.media-playback-requires-user-gesture.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.minimum-font-size.html b/Documentation/webkitgtk-6.0/property.Settings.minimum-font-size.html
index b2a5178b72..faec47e72f 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.minimum-font-size.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.minimum-font-size.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.monospace-font-family.html b/Documentation/webkitgtk-6.0/property.Settings.monospace-font-family.html
index 74504f93c9..0482e67bc5 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.monospace-font-family.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.monospace-font-family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.pictograph-font-family.html b/Documentation/webkitgtk-6.0/property.Settings.pictograph-font-family.html
index a3996eb3b9..96c160e34f 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.pictograph-font-family.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.pictograph-font-family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.print-backgrounds.html b/Documentation/webkitgtk-6.0/property.Settings.print-backgrounds.html
index 2bb0f2d1fb..567896d0c8 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.print-backgrounds.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.print-backgrounds.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.sans-serif-font-family.html b/Documentation/webkitgtk-6.0/property.Settings.sans-serif-font-family.html
index 834ad69e90..86d9bcb3a1 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.sans-serif-font-family.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.sans-serif-font-family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.serif-font-family.html b/Documentation/webkitgtk-6.0/property.Settings.serif-font-family.html
index 1d27113925..c4430d79c2 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.serif-font-family.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.serif-font-family.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.user-agent.html b/Documentation/webkitgtk-6.0/property.Settings.user-agent.html
index 7937ae38ac..7244ab8d52 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.user-agent.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.user-agent.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.Settings.zoom-text-only.html b/Documentation/webkitgtk-6.0/property.Settings.zoom-text-only.html
index 8577ea7aa5..e040c1e839 100644
--- a/Documentation/webkitgtk-6.0/property.Settings.zoom-text-only.html
+++ b/Documentation/webkitgtk-6.0/property.Settings.zoom-text-only.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.URIRequest.uri.html b/Documentation/webkitgtk-6.0/property.URIRequest.uri.html
index 6c5fc19cf9..c46eedfc48 100644
--- a/Documentation/webkitgtk-6.0/property.URIRequest.uri.html
+++ b/Documentation/webkitgtk-6.0/property.URIRequest.uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.URIResponse.content-length.html b/Documentation/webkitgtk-6.0/property.URIResponse.content-length.html
index c5d92c7543..8829533b2c 100644
--- a/Documentation/webkitgtk-6.0/property.URIResponse.content-length.html
+++ b/Documentation/webkitgtk-6.0/property.URIResponse.content-length.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.URIResponse.http-headers.html b/Documentation/webkitgtk-6.0/property.URIResponse.http-headers.html
index b90a1cd5f9..13db497ed9 100644
--- a/Documentation/webkitgtk-6.0/property.URIResponse.http-headers.html
+++ b/Documentation/webkitgtk-6.0/property.URIResponse.http-headers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.URIResponse.mime-type.html b/Documentation/webkitgtk-6.0/property.URIResponse.mime-type.html
index f25119b5fd..89552e465d 100644
--- a/Documentation/webkitgtk-6.0/property.URIResponse.mime-type.html
+++ b/Documentation/webkitgtk-6.0/property.URIResponse.mime-type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.URIResponse.status-code.html b/Documentation/webkitgtk-6.0/property.URIResponse.status-code.html
index 9ec06593ba..293facb104 100644
--- a/Documentation/webkitgtk-6.0/property.URIResponse.status-code.html
+++ b/Documentation/webkitgtk-6.0/property.URIResponse.status-code.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.URIResponse.suggested-filename.html b/Documentation/webkitgtk-6.0/property.URIResponse.suggested-filename.html
index 5b3e5a7b2e..f90e65d798 100644
--- a/Documentation/webkitgtk-6.0/property.URIResponse.suggested-filename.html
+++ b/Documentation/webkitgtk-6.0/property.URIResponse.suggested-filename.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.URIResponse.uri.html b/Documentation/webkitgtk-6.0/property.URIResponse.uri.html
index ca6333ac95..a7b7a9adb6 100644
--- a/Documentation/webkitgtk-6.0/property.URIResponse.uri.html
+++ b/Documentation/webkitgtk-6.0/property.URIResponse.uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.URISchemeResponse.stream-length.html b/Documentation/webkitgtk-6.0/property.URISchemeResponse.stream-length.html
index 11f27a5367..4a9dd80917 100644
--- a/Documentation/webkitgtk-6.0/property.URISchemeResponse.stream-length.html
+++ b/Documentation/webkitgtk-6.0/property.URISchemeResponse.stream-length.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.URISchemeResponse.stream.html b/Documentation/webkitgtk-6.0/property.URISchemeResponse.stream.html
index d511777a0b..a6b76a0e47 100644
--- a/Documentation/webkitgtk-6.0/property.URISchemeResponse.stream.html
+++ b/Documentation/webkitgtk-6.0/property.URISchemeResponse.stream.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.UserContentFilterStore.path.html b/Documentation/webkitgtk-6.0/property.UserContentFilterStore.path.html
index acad4b234f..2ab56101e2 100644
--- a/Documentation/webkitgtk-6.0/property.UserContentFilterStore.path.html
+++ b/Documentation/webkitgtk-6.0/property.UserContentFilterStore.path.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.UserMediaPermissionRequest.is-for-audio-device.html b/Documentation/webkitgtk-6.0/property.UserMediaPermissionRequest.is-for-audio-device.html
index 463084504a..004322c2bf 100644
--- a/Documentation/webkitgtk-6.0/property.UserMediaPermissionRequest.is-for-audio-device.html
+++ b/Documentation/webkitgtk-6.0/property.UserMediaPermissionRequest.is-for-audio-device.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.UserMediaPermissionRequest.is-for-video-device.html b/Documentation/webkitgtk-6.0/property.UserMediaPermissionRequest.is-for-video-device.html
index 3cbb321152..56424d682c 100644
--- a/Documentation/webkitgtk-6.0/property.UserMediaPermissionRequest.is-for-video-device.html
+++ b/Documentation/webkitgtk-6.0/property.UserMediaPermissionRequest.is-for-video-device.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.UserMessage.fd-list.html b/Documentation/webkitgtk-6.0/property.UserMessage.fd-list.html
index ab59f83261..396eb6c8a8 100644
--- a/Documentation/webkitgtk-6.0/property.UserMessage.fd-list.html
+++ b/Documentation/webkitgtk-6.0/property.UserMessage.fd-list.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.UserMessage.name.html b/Documentation/webkitgtk-6.0/property.UserMessage.name.html
index 8c8d5aacdd..362ebb6dc3 100644
--- a/Documentation/webkitgtk-6.0/property.UserMessage.name.html
+++ b/Documentation/webkitgtk-6.0/property.UserMessage.name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.UserMessage.parameters.html b/Documentation/webkitgtk-6.0/property.UserMessage.parameters.html
index a9160021d5..1313027339 100644
--- a/Documentation/webkitgtk-6.0/property.UserMessage.parameters.html
+++ b/Documentation/webkitgtk-6.0/property.UserMessage.parameters.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebContext.memory-pressure-settings.html b/Documentation/webkitgtk-6.0/property.WebContext.memory-pressure-settings.html
index 13813b4132..518f30818d 100644
--- a/Documentation/webkitgtk-6.0/property.WebContext.memory-pressure-settings.html
+++ b/Documentation/webkitgtk-6.0/property.WebContext.memory-pressure-settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebContext.time-zone-override.html b/Documentation/webkitgtk-6.0/property.WebContext.time-zone-override.html
index d46216e37d..168080ccb3 100644
--- a/Documentation/webkitgtk-6.0/property.WebContext.time-zone-override.html
+++ b/Documentation/webkitgtk-6.0/property.WebContext.time-zone-override.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebInspector.attached-height.html b/Documentation/webkitgtk-6.0/property.WebInspector.attached-height.html
index ef95a01d4e..b87a6f1384 100644
--- a/Documentation/webkitgtk-6.0/property.WebInspector.attached-height.html
+++ b/Documentation/webkitgtk-6.0/property.WebInspector.attached-height.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebInspector.can-attach.html b/Documentation/webkitgtk-6.0/property.WebInspector.can-attach.html
index 96bbdd8193..c118239b9e 100644
--- a/Documentation/webkitgtk-6.0/property.WebInspector.can-attach.html
+++ b/Documentation/webkitgtk-6.0/property.WebInspector.can-attach.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebInspector.inspected-uri.html b/Documentation/webkitgtk-6.0/property.WebInspector.inspected-uri.html
index d1b65bf47d..aaa6794973 100644
--- a/Documentation/webkitgtk-6.0/property.WebInspector.inspected-uri.html
+++ b/Documentation/webkitgtk-6.0/property.WebInspector.inspected-uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebResource.response.html b/Documentation/webkitgtk-6.0/property.WebResource.response.html
index 85f357b2af..c9bf6a04c8 100644
--- a/Documentation/webkitgtk-6.0/property.WebResource.response.html
+++ b/Documentation/webkitgtk-6.0/property.WebResource.response.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebResource.uri.html b/Documentation/webkitgtk-6.0/property.WebResource.uri.html
index 9376131d2f..c01faf33de 100644
--- a/Documentation/webkitgtk-6.0/property.WebResource.uri.html
+++ b/Documentation/webkitgtk-6.0/property.WebResource.uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.automation-presentation-type.html b/Documentation/webkitgtk-6.0/property.WebView.automation-presentation-type.html
index d3659b6fd0..4f6eb2d828 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.automation-presentation-type.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.automation-presentation-type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.camera-capture-state.html b/Documentation/webkitgtk-6.0/property.WebView.camera-capture-state.html
index 3110c78d26..8bc289e7d1 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.camera-capture-state.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.camera-capture-state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.default-content-security-policy.html b/Documentation/webkitgtk-6.0/property.WebView.default-content-security-policy.html
index be858adfa0..ea4724c6bb 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.default-content-security-policy.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.default-content-security-policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.display-capture-state.html b/Documentation/webkitgtk-6.0/property.WebView.display-capture-state.html
index 23773cd6a5..741caff99d 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.display-capture-state.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.display-capture-state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.editable.html b/Documentation/webkitgtk-6.0/property.WebView.editable.html
index 58a196a360..67528ca16e 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.editable.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.editable.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.estimated-load-progress.html b/Documentation/webkitgtk-6.0/property.WebView.estimated-load-progress.html
index 2c68f3cd8b..7c2b409f7c 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.estimated-load-progress.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.estimated-load-progress.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.favicon.html b/Documentation/webkitgtk-6.0/property.WebView.favicon.html
index 7f1073de3c..0eef5265f2 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.favicon.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.favicon.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.is-controlled-by-automation.html b/Documentation/webkitgtk-6.0/property.WebView.is-controlled-by-automation.html
index 6c8dd206b1..bea1c8e00d 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.is-controlled-by-automation.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.is-controlled-by-automation.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.is-loading.html b/Documentation/webkitgtk-6.0/property.WebView.is-loading.html
index 11b343b0d5..a5cd3275ad 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.is-loading.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.is-loading.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.is-muted.html b/Documentation/webkitgtk-6.0/property.WebView.is-muted.html
index e1f5e7e4ff..0bb0108da5 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.is-muted.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.is-muted.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.is-playing-audio.html b/Documentation/webkitgtk-6.0/property.WebView.is-playing-audio.html
index d0c962b93a..bcf8655b73 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.is-playing-audio.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.is-playing-audio.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.is-web-process-responsive.html b/Documentation/webkitgtk-6.0/property.WebView.is-web-process-responsive.html
index 92b16d923c..311f6b10f6 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.is-web-process-responsive.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.is-web-process-responsive.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.microphone-capture-state.html b/Documentation/webkitgtk-6.0/property.WebView.microphone-capture-state.html
index 253d4d036b..09080be683 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.microphone-capture-state.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.microphone-capture-state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.network-session.html b/Documentation/webkitgtk-6.0/property.WebView.network-session.html
index dea9956246..72b1549c05 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.network-session.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.network-session.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.page-id.html b/Documentation/webkitgtk-6.0/property.WebView.page-id.html
index 84b4604e35..f3e6ae9494 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.page-id.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.page-id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.related-view.html b/Documentation/webkitgtk-6.0/property.WebView.related-view.html
index 2983f5c1cb..6491d8d050 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.related-view.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.related-view.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.settings.html b/Documentation/webkitgtk-6.0/property.WebView.settings.html
index d6b6ea8ca1..aab5271e98 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.settings.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.title.html b/Documentation/webkitgtk-6.0/property.WebView.title.html
index 55252220de..d2edd7aa78 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.title.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.uri.html b/Documentation/webkitgtk-6.0/property.WebView.uri.html
index cd2b6a307e..4a2aebd767 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.uri.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.user-content-manager.html b/Documentation/webkitgtk-6.0/property.WebView.user-content-manager.html
index c62b9e44bc..11cc45ebff 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.user-content-manager.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.user-content-manager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.web-context.html b/Documentation/webkitgtk-6.0/property.WebView.web-context.html
index 1761760861..715ff41496 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.web-context.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.web-context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.web-extension-mode.html b/Documentation/webkitgtk-6.0/property.WebView.web-extension-mode.html
index 05068551e1..3a3201afef 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.web-extension-mode.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.web-extension-mode.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.website-policies.html b/Documentation/webkitgtk-6.0/property.WebView.website-policies.html
index 06cb7e0ad4..8b28933910 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.website-policies.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.website-policies.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebView.zoom-level.html b/Documentation/webkitgtk-6.0/property.WebView.zoom-level.html
index 45fcfcbad3..459d91995d 100644
--- a/Documentation/webkitgtk-6.0/property.WebView.zoom-level.html
+++ b/Documentation/webkitgtk-6.0/property.WebView.zoom-level.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.base-cache-directory.html b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.base-cache-directory.html
index a7484d8e63..044286b926 100644
--- a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.base-cache-directory.html
+++ b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.base-cache-directory.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.base-data-directory.html b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.base-data-directory.html
index de4eedef37..a991176113 100644
--- a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.base-data-directory.html
+++ b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.base-data-directory.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.is-ephemeral.html b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.is-ephemeral.html
index 16361768ec..ba0f08cab0 100644
--- a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.is-ephemeral.html
+++ b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.is-ephemeral.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.origin-storage-ratio.html b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.origin-storage-ratio.html
index f1c1a5e706..f220b58c04 100644
--- a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.origin-storage-ratio.html
+++ b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.origin-storage-ratio.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.total-storage-ratio.html b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.total-storage-ratio.html
index 025baab34b..43da8c4465 100644
--- a/Documentation/webkitgtk-6.0/property.WebsiteDataManager.total-storage-ratio.html
+++ b/Documentation/webkitgtk-6.0/property.WebsiteDataManager.total-storage-ratio.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WebsitePolicies.autoplay.html b/Documentation/webkitgtk-6.0/property.WebsitePolicies.autoplay.html
index 39f96a4a84..c7644fd232 100644
--- a/Documentation/webkitgtk-6.0/property.WebsitePolicies.autoplay.html
+++ b/Documentation/webkitgtk-6.0/property.WebsitePolicies.autoplay.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WindowProperties.fullscreen.html b/Documentation/webkitgtk-6.0/property.WindowProperties.fullscreen.html
index 99b9b721da..2f4951f1ea 100644
--- a/Documentation/webkitgtk-6.0/property.WindowProperties.fullscreen.html
+++ b/Documentation/webkitgtk-6.0/property.WindowProperties.fullscreen.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WindowProperties.geometry.html b/Documentation/webkitgtk-6.0/property.WindowProperties.geometry.html
index 97d23c2fa7..9ac4b651d7 100644
--- a/Documentation/webkitgtk-6.0/property.WindowProperties.geometry.html
+++ b/Documentation/webkitgtk-6.0/property.WindowProperties.geometry.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WindowProperties.locationbar-visible.html b/Documentation/webkitgtk-6.0/property.WindowProperties.locationbar-visible.html
index b89e07087e..3fbe578ead 100644
--- a/Documentation/webkitgtk-6.0/property.WindowProperties.locationbar-visible.html
+++ b/Documentation/webkitgtk-6.0/property.WindowProperties.locationbar-visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WindowProperties.menubar-visible.html b/Documentation/webkitgtk-6.0/property.WindowProperties.menubar-visible.html
index 0770d0a8ec..65c166c460 100644
--- a/Documentation/webkitgtk-6.0/property.WindowProperties.menubar-visible.html
+++ b/Documentation/webkitgtk-6.0/property.WindowProperties.menubar-visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WindowProperties.resizable.html b/Documentation/webkitgtk-6.0/property.WindowProperties.resizable.html
index b623c6b2c2..61af89bf01 100644
--- a/Documentation/webkitgtk-6.0/property.WindowProperties.resizable.html
+++ b/Documentation/webkitgtk-6.0/property.WindowProperties.resizable.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WindowProperties.scrollbars-visible.html b/Documentation/webkitgtk-6.0/property.WindowProperties.scrollbars-visible.html
index d23d8e819c..3ce4f6991b 100644
--- a/Documentation/webkitgtk-6.0/property.WindowProperties.scrollbars-visible.html
+++ b/Documentation/webkitgtk-6.0/property.WindowProperties.scrollbars-visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WindowProperties.statusbar-visible.html b/Documentation/webkitgtk-6.0/property.WindowProperties.statusbar-visible.html
index d470c4cb8f..2fe38cbe24 100644
--- a/Documentation/webkitgtk-6.0/property.WindowProperties.statusbar-visible.html
+++ b/Documentation/webkitgtk-6.0/property.WindowProperties.statusbar-visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/property.WindowProperties.toolbar-visible.html b/Documentation/webkitgtk-6.0/property.WindowProperties.toolbar-visible.html
index 5d33bcfa15..2bda9e60ed 100644
--- a/Documentation/webkitgtk-6.0/property.WindowProperties.toolbar-visible.html
+++ b/Documentation/webkitgtk-6.0/property.WindowProperties.toolbar-visible.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.AuthenticationRequest.authenticated.html b/Documentation/webkitgtk-6.0/signal.AuthenticationRequest.authenticated.html
index d023108a92..29d13eaee4 100644
--- a/Documentation/webkitgtk-6.0/signal.AuthenticationRequest.authenticated.html
+++ b/Documentation/webkitgtk-6.0/signal.AuthenticationRequest.authenticated.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.AuthenticationRequest.cancelled.html b/Documentation/webkitgtk-6.0/signal.AuthenticationRequest.cancelled.html
index 036bedc70a..b226e9ca07 100644
--- a/Documentation/webkitgtk-6.0/signal.AuthenticationRequest.cancelled.html
+++ b/Documentation/webkitgtk-6.0/signal.AuthenticationRequest.cancelled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.AutomationSession.create-web-view.html b/Documentation/webkitgtk-6.0/signal.AutomationSession.create-web-view.html
index 71e5abccbd..8c896cb76a 100644
--- a/Documentation/webkitgtk-6.0/signal.AutomationSession.create-web-view.html
+++ b/Documentation/webkitgtk-6.0/signal.AutomationSession.create-web-view.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.AutomationSession.will-close.html b/Documentation/webkitgtk-6.0/signal.AutomationSession.will-close.html
index c5421c18ab..f0e82a6f93 100644
--- a/Documentation/webkitgtk-6.0/signal.AutomationSession.will-close.html
+++ b/Documentation/webkitgtk-6.0/signal.AutomationSession.will-close.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.BackForwardList.changed.html b/Documentation/webkitgtk-6.0/signal.BackForwardList.changed.html
index b01f8df9a8..189d58cfb8 100644
--- a/Documentation/webkitgtk-6.0/signal.BackForwardList.changed.html
+++ b/Documentation/webkitgtk-6.0/signal.BackForwardList.changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.ColorChooserRequest.finished.html b/Documentation/webkitgtk-6.0/signal.ColorChooserRequest.finished.html
index e13b814078..fec2f8e4c9 100644
--- a/Documentation/webkitgtk-6.0/signal.ColorChooserRequest.finished.html
+++ b/Documentation/webkitgtk-6.0/signal.ColorChooserRequest.finished.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.CookieManager.changed.html b/Documentation/webkitgtk-6.0/signal.CookieManager.changed.html
index 8e4c290b46..68fc652611 100644
--- a/Documentation/webkitgtk-6.0/signal.CookieManager.changed.html
+++ b/Documentation/webkitgtk-6.0/signal.CookieManager.changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.Download.created-destination.html b/Documentation/webkitgtk-6.0/signal.Download.created-destination.html
index f81ca9a230..15da56105d 100644
--- a/Documentation/webkitgtk-6.0/signal.Download.created-destination.html
+++ b/Documentation/webkitgtk-6.0/signal.Download.created-destination.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.Download.decide-destination.html b/Documentation/webkitgtk-6.0/signal.Download.decide-destination.html
index b9a84b9982..6ad618c24d 100644
--- a/Documentation/webkitgtk-6.0/signal.Download.decide-destination.html
+++ b/Documentation/webkitgtk-6.0/signal.Download.decide-destination.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.Download.failed.html b/Documentation/webkitgtk-6.0/signal.Download.failed.html
index 344fa5609d..23cb05ba60 100644
--- a/Documentation/webkitgtk-6.0/signal.Download.failed.html
+++ b/Documentation/webkitgtk-6.0/signal.Download.failed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.Download.finished.html b/Documentation/webkitgtk-6.0/signal.Download.finished.html
index ff7852dab3..72aaefe26a 100644
--- a/Documentation/webkitgtk-6.0/signal.Download.finished.html
+++ b/Documentation/webkitgtk-6.0/signal.Download.finished.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.Download.received-data.html b/Documentation/webkitgtk-6.0/signal.Download.received-data.html
index c4fabc5504..029e340789 100644
--- a/Documentation/webkitgtk-6.0/signal.Download.received-data.html
+++ b/Documentation/webkitgtk-6.0/signal.Download.received-data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.EditorState.changed.html b/Documentation/webkitgtk-6.0/signal.EditorState.changed.html
index d53b45c20a..73cae318bb 100644
--- a/Documentation/webkitgtk-6.0/signal.EditorState.changed.html
+++ b/Documentation/webkitgtk-6.0/signal.EditorState.changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.FaviconDatabase.favicon-changed.html b/Documentation/webkitgtk-6.0/signal.FaviconDatabase.favicon-changed.html
index 2c86ac5c96..bdc0fa5624 100644
--- a/Documentation/webkitgtk-6.0/signal.FaviconDatabase.favicon-changed.html
+++ b/Documentation/webkitgtk-6.0/signal.FaviconDatabase.favicon-changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.FindController.counted-matches.html b/Documentation/webkitgtk-6.0/signal.FindController.counted-matches.html
index 531a993ead..dbfaf78414 100644
--- a/Documentation/webkitgtk-6.0/signal.FindController.counted-matches.html
+++ b/Documentation/webkitgtk-6.0/signal.FindController.counted-matches.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.FindController.failed-to-find-text.html b/Documentation/webkitgtk-6.0/signal.FindController.failed-to-find-text.html
index 5b4139184d..de8bc108f8 100644
--- a/Documentation/webkitgtk-6.0/signal.FindController.failed-to-find-text.html
+++ b/Documentation/webkitgtk-6.0/signal.FindController.failed-to-find-text.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.FindController.found-text.html b/Documentation/webkitgtk-6.0/signal.FindController.found-text.html
index 4a83e621b9..e85a217a42 100644
--- a/Documentation/webkitgtk-6.0/signal.FindController.found-text.html
+++ b/Documentation/webkitgtk-6.0/signal.FindController.found-text.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.GeolocationManager.start.html b/Documentation/webkitgtk-6.0/signal.GeolocationManager.start.html
index a1b90ef2ec..295a363c1b 100644
--- a/Documentation/webkitgtk-6.0/signal.GeolocationManager.start.html
+++ b/Documentation/webkitgtk-6.0/signal.GeolocationManager.start.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.GeolocationManager.stop.html b/Documentation/webkitgtk-6.0/signal.GeolocationManager.stop.html
index 127a59f5da..27c947d43f 100644
--- a/Documentation/webkitgtk-6.0/signal.GeolocationManager.stop.html
+++ b/Documentation/webkitgtk-6.0/signal.GeolocationManager.stop.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.InputMethodContext.committed.html b/Documentation/webkitgtk-6.0/signal.InputMethodContext.committed.html
index 783d2ba940..794366ca52 100644
--- a/Documentation/webkitgtk-6.0/signal.InputMethodContext.committed.html
+++ b/Documentation/webkitgtk-6.0/signal.InputMethodContext.committed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.InputMethodContext.delete-surrounding.html b/Documentation/webkitgtk-6.0/signal.InputMethodContext.delete-surrounding.html
index fde569e8cc..f1217d1c3a 100644
--- a/Documentation/webkitgtk-6.0/signal.InputMethodContext.delete-surrounding.html
+++ b/Documentation/webkitgtk-6.0/signal.InputMethodContext.delete-surrounding.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-changed.html b/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-changed.html
index ff28d8bfe8..3baab5bcc0 100644
--- a/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-changed.html
+++ b/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-finished.html b/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-finished.html
index 10c61c37c8..2014b777a5 100644
--- a/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-finished.html
+++ b/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-finished.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-started.html b/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-started.html
index d3dcf37322..27d51e9702 100644
--- a/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-started.html
+++ b/Documentation/webkitgtk-6.0/signal.InputMethodContext.preedit-started.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.NetworkSession.download-started.html b/Documentation/webkitgtk-6.0/signal.NetworkSession.download-started.html
index 3c487ee649..7cb3b0852d 100644
--- a/Documentation/webkitgtk-6.0/signal.NetworkSession.download-started.html
+++ b/Documentation/webkitgtk-6.0/signal.NetworkSession.download-started.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.Notification.clicked.html b/Documentation/webkitgtk-6.0/signal.Notification.clicked.html
index 3102b2b18a..b44144ff13 100644
--- a/Documentation/webkitgtk-6.0/signal.Notification.clicked.html
+++ b/Documentation/webkitgtk-6.0/signal.Notification.clicked.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.Notification.closed.html b/Documentation/webkitgtk-6.0/signal.Notification.closed.html
index 3c35582cce..21e974eb2e 100644
--- a/Documentation/webkitgtk-6.0/signal.Notification.closed.html
+++ b/Documentation/webkitgtk-6.0/signal.Notification.closed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.OptionMenu.close.html b/Documentation/webkitgtk-6.0/signal.OptionMenu.close.html
index f35b442029..2ecc32e9e1 100644
--- a/Documentation/webkitgtk-6.0/signal.OptionMenu.close.html
+++ b/Documentation/webkitgtk-6.0/signal.OptionMenu.close.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.PrintOperation.failed.html b/Documentation/webkitgtk-6.0/signal.PrintOperation.failed.html
index 74417c63da..fe016e6f8b 100644
--- a/Documentation/webkitgtk-6.0/signal.PrintOperation.failed.html
+++ b/Documentation/webkitgtk-6.0/signal.PrintOperation.failed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.PrintOperation.finished.html b/Documentation/webkitgtk-6.0/signal.PrintOperation.finished.html
index 56007024c7..283ec4230b 100644
--- a/Documentation/webkitgtk-6.0/signal.PrintOperation.finished.html
+++ b/Documentation/webkitgtk-6.0/signal.PrintOperation.finished.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.UserContentManager.script-message-received.html b/Documentation/webkitgtk-6.0/signal.UserContentManager.script-message-received.html
index 17bc29c5e6..5c0bde1ab2 100644
--- a/Documentation/webkitgtk-6.0/signal.UserContentManager.script-message-received.html
+++ b/Documentation/webkitgtk-6.0/signal.UserContentManager.script-message-received.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.UserContentManager.script-message-with-reply-received.html b/Documentation/webkitgtk-6.0/signal.UserContentManager.script-message-with-reply-received.html
index fb6c37bca2..38ac625d2f 100644
--- a/Documentation/webkitgtk-6.0/signal.UserContentManager.script-message-with-reply-received.html
+++ b/Documentation/webkitgtk-6.0/signal.UserContentManager.script-message-with-reply-received.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebContext.automation-started.html b/Documentation/webkitgtk-6.0/signal.WebContext.automation-started.html
index 50a01cd16b..6a59c0e1e9 100644
--- a/Documentation/webkitgtk-6.0/signal.WebContext.automation-started.html
+++ b/Documentation/webkitgtk-6.0/signal.WebContext.automation-started.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebContext.initialize-notification-permissions.html b/Documentation/webkitgtk-6.0/signal.WebContext.initialize-notification-permissions.html
index c87c4701a5..d441332800 100644
--- a/Documentation/webkitgtk-6.0/signal.WebContext.initialize-notification-permissions.html
+++ b/Documentation/webkitgtk-6.0/signal.WebContext.initialize-notification-permissions.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebContext.initialize-web-process-extensions.html b/Documentation/webkitgtk-6.0/signal.WebContext.initialize-web-process-extensions.html
index d4cf3cda16..680ab83ee8 100644
--- a/Documentation/webkitgtk-6.0/signal.WebContext.initialize-web-process-extensions.html
+++ b/Documentation/webkitgtk-6.0/signal.WebContext.initialize-web-process-extensions.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebContext.user-message-received.html b/Documentation/webkitgtk-6.0/signal.WebContext.user-message-received.html
index fd443b4b72..ee40e55476 100644
--- a/Documentation/webkitgtk-6.0/signal.WebContext.user-message-received.html
+++ b/Documentation/webkitgtk-6.0/signal.WebContext.user-message-received.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebInspector.attach.html b/Documentation/webkitgtk-6.0/signal.WebInspector.attach.html
index 2f7db02a7f..ef825bcb3c 100644
--- a/Documentation/webkitgtk-6.0/signal.WebInspector.attach.html
+++ b/Documentation/webkitgtk-6.0/signal.WebInspector.attach.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebInspector.bring-to-front.html b/Documentation/webkitgtk-6.0/signal.WebInspector.bring-to-front.html
index 387c142415..4bf20ef1af 100644
--- a/Documentation/webkitgtk-6.0/signal.WebInspector.bring-to-front.html
+++ b/Documentation/webkitgtk-6.0/signal.WebInspector.bring-to-front.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebInspector.closed.html b/Documentation/webkitgtk-6.0/signal.WebInspector.closed.html
index 3063345a74..50884f955d 100644
--- a/Documentation/webkitgtk-6.0/signal.WebInspector.closed.html
+++ b/Documentation/webkitgtk-6.0/signal.WebInspector.closed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebInspector.detach.html b/Documentation/webkitgtk-6.0/signal.WebInspector.detach.html
index 5c3794335c..3019a01cbe 100644
--- a/Documentation/webkitgtk-6.0/signal.WebInspector.detach.html
+++ b/Documentation/webkitgtk-6.0/signal.WebInspector.detach.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebInspector.open-window.html b/Documentation/webkitgtk-6.0/signal.WebInspector.open-window.html
index dbd84f3cb5..42a9330b6a 100644
--- a/Documentation/webkitgtk-6.0/signal.WebInspector.open-window.html
+++ b/Documentation/webkitgtk-6.0/signal.WebInspector.open-window.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebResource.failed-with-tls-errors.html b/Documentation/webkitgtk-6.0/signal.WebResource.failed-with-tls-errors.html
index 2c59d9de9f..26801e4ecd 100644
--- a/Documentation/webkitgtk-6.0/signal.WebResource.failed-with-tls-errors.html
+++ b/Documentation/webkitgtk-6.0/signal.WebResource.failed-with-tls-errors.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebResource.failed.html b/Documentation/webkitgtk-6.0/signal.WebResource.failed.html
index 6a08e2f909..47721f9d89 100644
--- a/Documentation/webkitgtk-6.0/signal.WebResource.failed.html
+++ b/Documentation/webkitgtk-6.0/signal.WebResource.failed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebResource.finished.html b/Documentation/webkitgtk-6.0/signal.WebResource.finished.html
index 71dd81fd3d..b2950c8c93 100644
--- a/Documentation/webkitgtk-6.0/signal.WebResource.finished.html
+++ b/Documentation/webkitgtk-6.0/signal.WebResource.finished.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebResource.sent-request.html b/Documentation/webkitgtk-6.0/signal.WebResource.sent-request.html
index 646b47e088..e973f21fa4 100644
--- a/Documentation/webkitgtk-6.0/signal.WebResource.sent-request.html
+++ b/Documentation/webkitgtk-6.0/signal.WebResource.sent-request.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.authenticate.html b/Documentation/webkitgtk-6.0/signal.WebView.authenticate.html
index 685f3818ac..8312522387 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.authenticate.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.authenticate.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.close.html b/Documentation/webkitgtk-6.0/signal.WebView.close.html
index 79819b8fd6..9d2341238f 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.close.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.close.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.context-menu-dismissed.html b/Documentation/webkitgtk-6.0/signal.WebView.context-menu-dismissed.html
index 5aece52f70..f35f04498a 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.context-menu-dismissed.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.context-menu-dismissed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.context-menu.html b/Documentation/webkitgtk-6.0/signal.WebView.context-menu.html
index cc27d34cbe..5219d79671 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.context-menu.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.context-menu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.create.html b/Documentation/webkitgtk-6.0/signal.WebView.create.html
index 4a917a4be3..5528bc6bf8 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.create.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.create.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.decide-policy.html b/Documentation/webkitgtk-6.0/signal.WebView.decide-policy.html
index d9d9234c8f..a5e1658895 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.decide-policy.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.decide-policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.enter-fullscreen.html b/Documentation/webkitgtk-6.0/signal.WebView.enter-fullscreen.html
index 523ee423e8..124318a650 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.enter-fullscreen.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.enter-fullscreen.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.insecure-content-detected.html b/Documentation/webkitgtk-6.0/signal.WebView.insecure-content-detected.html
index 893010b452..5149ca65aa 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.insecure-content-detected.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.insecure-content-detected.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.leave-fullscreen.html b/Documentation/webkitgtk-6.0/signal.WebView.leave-fullscreen.html
index 98f4b5c08b..c16422a348 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.leave-fullscreen.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.leave-fullscreen.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.load-changed.html b/Documentation/webkitgtk-6.0/signal.WebView.load-changed.html
index e75a9710f5..f288bb7557 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.load-changed.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.load-changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.load-failed-with-tls-errors.html b/Documentation/webkitgtk-6.0/signal.WebView.load-failed-with-tls-errors.html
index b74ee1a75e..6c37c7d9c0 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.load-failed-with-tls-errors.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.load-failed-with-tls-errors.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.load-failed.html b/Documentation/webkitgtk-6.0/signal.WebView.load-failed.html
index f18dc77644..eb8d924bbe 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.load-failed.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.load-failed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.mouse-target-changed.html b/Documentation/webkitgtk-6.0/signal.WebView.mouse-target-changed.html
index ef2f43919b..e2d22018f1 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.mouse-target-changed.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.mouse-target-changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.permission-request.html b/Documentation/webkitgtk-6.0/signal.WebView.permission-request.html
index fa655308fd..9cca7ee151 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.permission-request.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.permission-request.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.print.html b/Documentation/webkitgtk-6.0/signal.WebView.print.html
index 493de46909..2d8f6ecf87 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.print.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.print.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.query-permission-state.html b/Documentation/webkitgtk-6.0/signal.WebView.query-permission-state.html
index 56e564c123..9ce8204b39 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.query-permission-state.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.query-permission-state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.ready-to-show.html b/Documentation/webkitgtk-6.0/signal.WebView.ready-to-show.html
index aaa9cae5e0..e6497dbec1 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.ready-to-show.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.ready-to-show.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.resource-load-started.html b/Documentation/webkitgtk-6.0/signal.WebView.resource-load-started.html
index 460c70a2a7..e066e83ed0 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.resource-load-started.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.resource-load-started.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.run-as-modal.html b/Documentation/webkitgtk-6.0/signal.WebView.run-as-modal.html
index 14117285b9..a208d77c52 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.run-as-modal.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.run-as-modal.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.run-color-chooser.html b/Documentation/webkitgtk-6.0/signal.WebView.run-color-chooser.html
index 12ceaf0400..4d4c6ebc2b 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.run-color-chooser.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.run-color-chooser.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.run-file-chooser.html b/Documentation/webkitgtk-6.0/signal.WebView.run-file-chooser.html
index e229b0edca..ec540e6641 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.run-file-chooser.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.run-file-chooser.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.script-dialog.html b/Documentation/webkitgtk-6.0/signal.WebView.script-dialog.html
index 3451833671..69878a0996 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.script-dialog.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.script-dialog.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.show-notification.html b/Documentation/webkitgtk-6.0/signal.WebView.show-notification.html
index fd2691538a..210886aedf 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.show-notification.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.show-notification.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.show-option-menu.html b/Documentation/webkitgtk-6.0/signal.WebView.show-option-menu.html
index d94620a899..638d1ef9d9 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.show-option-menu.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.show-option-menu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.submit-form.html b/Documentation/webkitgtk-6.0/signal.WebView.submit-form.html
index 3424352685..763f073c26 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.submit-form.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.submit-form.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.user-message-received.html b/Documentation/webkitgtk-6.0/signal.WebView.user-message-received.html
index 975f27043b..1e6eabd666 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.user-message-received.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.user-message-received.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/signal.WebView.web-process-terminated.html b/Documentation/webkitgtk-6.0/signal.WebView.web-process-terminated.html
index 2f380d2fa8..c240aaab67 100644
--- a/Documentation/webkitgtk-6.0/signal.WebView.web-process-terminated.html
+++ b/Documentation/webkitgtk-6.0/signal.WebView.web-process-terminated.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.ApplicationInfo.html b/Documentation/webkitgtk-6.0/struct.ApplicationInfo.html
index f1c96fa49b..d20bbaf4cf 100644
--- a/Documentation/webkitgtk-6.0/struct.ApplicationInfo.html
+++ b/Documentation/webkitgtk-6.0/struct.ApplicationInfo.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.Credential.html b/Documentation/webkitgtk-6.0/struct.Credential.html
index 19b5c8f787..b948ddc69f 100644
--- a/Documentation/webkitgtk-6.0/struct.Credential.html
+++ b/Documentation/webkitgtk-6.0/struct.Credential.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.Feature.html b/Documentation/webkitgtk-6.0/struct.Feature.html
index b02cd26f79..ca95c90def 100644
--- a/Documentation/webkitgtk-6.0/struct.Feature.html
+++ b/Documentation/webkitgtk-6.0/struct.Feature.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.FeatureList.html b/Documentation/webkitgtk-6.0/struct.FeatureList.html
index 69759f000b..992780123a 100644
--- a/Documentation/webkitgtk-6.0/struct.FeatureList.html
+++ b/Documentation/webkitgtk-6.0/struct.FeatureList.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.GeolocationPosition.html b/Documentation/webkitgtk-6.0/struct.GeolocationPosition.html
index efaf7bf0fe..cf59f70cef 100644
--- a/Documentation/webkitgtk-6.0/struct.GeolocationPosition.html
+++ b/Documentation/webkitgtk-6.0/struct.GeolocationPosition.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.ITPFirstParty.html b/Documentation/webkitgtk-6.0/struct.ITPFirstParty.html
index 9c762784d1..e012958b0c 100644
--- a/Documentation/webkitgtk-6.0/struct.ITPFirstParty.html
+++ b/Documentation/webkitgtk-6.0/struct.ITPFirstParty.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.ITPThirdParty.html b/Documentation/webkitgtk-6.0/struct.ITPThirdParty.html
index 9e63e35305..4bbf97d762 100644
--- a/Documentation/webkitgtk-6.0/struct.ITPThirdParty.html
+++ b/Documentation/webkitgtk-6.0/struct.ITPThirdParty.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.InputMethodUnderline.html b/Documentation/webkitgtk-6.0/struct.InputMethodUnderline.html
index 4b0295cb8c..3c2c0dbe11 100644
--- a/Documentation/webkitgtk-6.0/struct.InputMethodUnderline.html
+++ b/Documentation/webkitgtk-6.0/struct.InputMethodUnderline.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.MemoryPressureSettings.html b/Documentation/webkitgtk-6.0/struct.MemoryPressureSettings.html
index 674cc8f87f..0fb1b1f4d9 100644
--- a/Documentation/webkitgtk-6.0/struct.MemoryPressureSettings.html
+++ b/Documentation/webkitgtk-6.0/struct.MemoryPressureSettings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.NavigationAction.html b/Documentation/webkitgtk-6.0/struct.NavigationAction.html
index 3b653833ca..791bc44339 100644
--- a/Documentation/webkitgtk-6.0/struct.NavigationAction.html
+++ b/Documentation/webkitgtk-6.0/struct.NavigationAction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.NetworkProxySettings.html b/Documentation/webkitgtk-6.0/struct.NetworkProxySettings.html
index 6ee7cca5d8..14b801d080 100644
--- a/Documentation/webkitgtk-6.0/struct.NetworkProxySettings.html
+++ b/Documentation/webkitgtk-6.0/struct.NetworkProxySettings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.OptionMenuItem.html b/Documentation/webkitgtk-6.0/struct.OptionMenuItem.html
index 14fada498e..6d6377ef31 100644
--- a/Documentation/webkitgtk-6.0/struct.OptionMenuItem.html
+++ b/Documentation/webkitgtk-6.0/struct.OptionMenuItem.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.PermissionStateQuery.html b/Documentation/webkitgtk-6.0/struct.PermissionStateQuery.html
index 7cde264b4b..fd48855801 100644
--- a/Documentation/webkitgtk-6.0/struct.PermissionStateQuery.html
+++ b/Documentation/webkitgtk-6.0/struct.PermissionStateQuery.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.ScriptDialog.html b/Documentation/webkitgtk-6.0/struct.ScriptDialog.html
index e3713c9631..363223847b 100644
--- a/Documentation/webkitgtk-6.0/struct.ScriptDialog.html
+++ b/Documentation/webkitgtk-6.0/struct.ScriptDialog.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.ScriptMessageReply.html b/Documentation/webkitgtk-6.0/struct.ScriptMessageReply.html
index d8f3fef53c..fb54f3a25a 100644
--- a/Documentation/webkitgtk-6.0/struct.ScriptMessageReply.html
+++ b/Documentation/webkitgtk-6.0/struct.ScriptMessageReply.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.SecurityOrigin.html b/Documentation/webkitgtk-6.0/struct.SecurityOrigin.html
index bc9bbeb66b..0c68cef6a3 100644
--- a/Documentation/webkitgtk-6.0/struct.SecurityOrigin.html
+++ b/Documentation/webkitgtk-6.0/struct.SecurityOrigin.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.UserContentFilter.html b/Documentation/webkitgtk-6.0/struct.UserContentFilter.html
index e52fef1ed4..9f7deb3fbf 100644
--- a/Documentation/webkitgtk-6.0/struct.UserContentFilter.html
+++ b/Documentation/webkitgtk-6.0/struct.UserContentFilter.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.UserScript.html b/Documentation/webkitgtk-6.0/struct.UserScript.html
index 6e78bcc959..e2c6cdc862 100644
--- a/Documentation/webkitgtk-6.0/struct.UserScript.html
+++ b/Documentation/webkitgtk-6.0/struct.UserScript.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.UserStyleSheet.html b/Documentation/webkitgtk-6.0/struct.UserStyleSheet.html
index c39709dc39..55f821012e 100644
--- a/Documentation/webkitgtk-6.0/struct.UserStyleSheet.html
+++ b/Documentation/webkitgtk-6.0/struct.UserStyleSheet.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.WebViewSessionState.html b/Documentation/webkitgtk-6.0/struct.WebViewSessionState.html
index 59325760df..99842458ba 100644
--- a/Documentation/webkitgtk-6.0/struct.WebViewSessionState.html
+++ b/Documentation/webkitgtk-6.0/struct.WebViewSessionState.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/struct.WebsiteData.html b/Documentation/webkitgtk-6.0/struct.WebsiteData.html
index 5bf11b5af3..6fd25746af 100644
--- a/Documentation/webkitgtk-6.0/struct.WebsiteData.html
+++ b/Documentation/webkitgtk-6.0/struct.WebsiteData.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.DownloadError.quark.html b/Documentation/webkitgtk-6.0/type_func.DownloadError.quark.html
index e1066dd214..d368293001 100644
--- a/Documentation/webkitgtk-6.0/type_func.DownloadError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.DownloadError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.FaviconDatabaseError.quark.html b/Documentation/webkitgtk-6.0/type_func.FaviconDatabaseError.quark.html
index 374a6707e1..1d358198f8 100644
--- a/Documentation/webkitgtk-6.0/type_func.FaviconDatabaseError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.FaviconDatabaseError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.JavascriptError.quark.html b/Documentation/webkitgtk-6.0/type_func.JavascriptError.quark.html
index b1beaf4648..eadec6b466 100644
--- a/Documentation/webkitgtk-6.0/type_func.JavascriptError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.JavascriptError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.MediaError.quark.html b/Documentation/webkitgtk-6.0/type_func.MediaError.quark.html
index d934361b32..27767ceccf 100644
--- a/Documentation/webkitgtk-6.0/type_func.MediaError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.MediaError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.NetworkError.quark.html b/Documentation/webkitgtk-6.0/type_func.NetworkError.quark.html
index edacc36a82..890a07094f 100644
--- a/Documentation/webkitgtk-6.0/type_func.NetworkError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.NetworkError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.NetworkSession.get_default.html b/Documentation/webkitgtk-6.0/type_func.NetworkSession.get_default.html
index cc4385f9f8..4db7d0a7a5 100644
--- a/Documentation/webkitgtk-6.0/type_func.NetworkSession.get_default.html
+++ b/Documentation/webkitgtk-6.0/type_func.NetworkSession.get_default.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.NetworkSession.set_memory_pressure_settings.html b/Documentation/webkitgtk-6.0/type_func.NetworkSession.set_memory_pressure_settings.html
index adea778797..0a8be02f43 100644
--- a/Documentation/webkitgtk-6.0/type_func.NetworkSession.set_memory_pressure_settings.html
+++ b/Documentation/webkitgtk-6.0/type_func.NetworkSession.set_memory_pressure_settings.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.PolicyError.quark.html b/Documentation/webkitgtk-6.0/type_func.PolicyError.quark.html
index b57c9c0605..68cbb9c207 100644
--- a/Documentation/webkitgtk-6.0/type_func.PolicyError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.PolicyError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.PrintError.quark.html b/Documentation/webkitgtk-6.0/type_func.PrintError.quark.html
index 6fb72bfe0c..62292a9351 100644
--- a/Documentation/webkitgtk-6.0/type_func.PrintError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.PrintError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.Settings.font_size_to_pixels.html b/Documentation/webkitgtk-6.0/type_func.Settings.font_size_to_pixels.html
index e044891cc8..4422bc4962 100644
--- a/Documentation/webkitgtk-6.0/type_func.Settings.font_size_to_pixels.html
+++ b/Documentation/webkitgtk-6.0/type_func.Settings.font_size_to_pixels.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.Settings.font_size_to_points.html b/Documentation/webkitgtk-6.0/type_func.Settings.font_size_to_points.html
index d0696782eb..a94c12c1be 100644
--- a/Documentation/webkitgtk-6.0/type_func.Settings.font_size_to_points.html
+++ b/Documentation/webkitgtk-6.0/type_func.Settings.font_size_to_points.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.Settings.get_all_features.html b/Documentation/webkitgtk-6.0/type_func.Settings.get_all_features.html
index 0f9bdf68f3..a56ccb3d3a 100644
--- a/Documentation/webkitgtk-6.0/type_func.Settings.get_all_features.html
+++ b/Documentation/webkitgtk-6.0/type_func.Settings.get_all_features.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.Settings.get_development_features.html b/Documentation/webkitgtk-6.0/type_func.Settings.get_development_features.html
index 49df45f0f5..25d89b333f 100644
--- a/Documentation/webkitgtk-6.0/type_func.Settings.get_development_features.html
+++ b/Documentation/webkitgtk-6.0/type_func.Settings.get_development_features.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.Settings.get_experimental_features.html b/Documentation/webkitgtk-6.0/type_func.Settings.get_experimental_features.html
index 11b2493ed6..14c1287546 100644
--- a/Documentation/webkitgtk-6.0/type_func.Settings.get_experimental_features.html
+++ b/Documentation/webkitgtk-6.0/type_func.Settings.get_experimental_features.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.SnapshotError.quark.html b/Documentation/webkitgtk-6.0/type_func.SnapshotError.quark.html
index 268a73f15c..86832ec7ef 100644
--- a/Documentation/webkitgtk-6.0/type_func.SnapshotError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.SnapshotError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.UserContentFilterError.quark.html b/Documentation/webkitgtk-6.0/type_func.UserContentFilterError.quark.html
index ad3c718c31..eeced02e5f 100644
--- a/Documentation/webkitgtk-6.0/type_func.UserContentFilterError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.UserContentFilterError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.UserMessageError.quark.html b/Documentation/webkitgtk-6.0/type_func.UserMessageError.quark.html
index 7a122e8813..73f10a67b4 100644
--- a/Documentation/webkitgtk-6.0/type_func.UserMessageError.quark.html
+++ b/Documentation/webkitgtk-6.0/type_func.UserMessageError.quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/type_func.WebContext.get_default.html b/Documentation/webkitgtk-6.0/type_func.WebContext.get_default.html
index 6c7481a2ce..2a865b9b0c 100644
--- a/Documentation/webkitgtk-6.0/type_func.WebContext.get_default.html
+++ b/Documentation/webkitgtk-6.0/type_func.WebContext.get_default.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.committed.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.committed.html
index 5ab547d228..de3c4e2984 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.committed.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.committed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.delete_surrounding.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.delete_surrounding.html
index b034ab30d4..ffc2554565 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.delete_surrounding.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.delete_surrounding.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.filter_key_event.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.filter_key_event.html
index 19a1c94504..41bbd09d72 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.filter_key_event.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.filter_key_event.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.get_preedit.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.get_preedit.html
index 48b1c33af5..08e2d774c8 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.get_preedit.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.get_preedit.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_cursor_area.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_cursor_area.html
index a2b3eb5f38..2c954d437d 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_cursor_area.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_cursor_area.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_focus_in.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_focus_in.html
index 30d9511bbc..ebc0133155 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_focus_in.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_focus_in.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_focus_out.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_focus_out.html
index 89b3035ef4..7d2ce2d6cd 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_focus_out.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_focus_out.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_surrounding.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_surrounding.html
index 7d1378c733..f83b6538e8 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_surrounding.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.notify_surrounding.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_changed.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_changed.html
index 5bc0b51bc0..48832b3abe 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_changed.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_finished.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_finished.html
index c1846fa8fd..93d1e147a7 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_finished.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_finished.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_started.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_started.html
index a44f810484..10844617e7 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_started.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.preedit_started.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.reset.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.reset.html
index 75aecb88e0..a294c0e4ec 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.reset.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.reset.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.set_enable_preedit.html b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.set_enable_preedit.html
index c814a173a3..5ca94bb9a3 100644
--- a/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.set_enable_preedit.html
+++ b/Documentation/webkitgtk-6.0/vfunc.InputMethodContext.set_enable_preedit.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.PermissionRequest.allow.html b/Documentation/webkitgtk-6.0/vfunc.PermissionRequest.allow.html
index eacd494c29..253406b177 100644
--- a/Documentation/webkitgtk-6.0/vfunc.PermissionRequest.allow.html
+++ b/Documentation/webkitgtk-6.0/vfunc.PermissionRequest.allow.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.PermissionRequest.deny.html b/Documentation/webkitgtk-6.0/vfunc.PermissionRequest.deny.html
index 387f4fb4b2..717ce0ed3a 100644
--- a/Documentation/webkitgtk-6.0/vfunc.PermissionRequest.deny.html
+++ b/Documentation/webkitgtk-6.0/vfunc.PermissionRequest.deny.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.authenticate.html b/Documentation/webkitgtk-6.0/vfunc.WebView.authenticate.html
index de62d97056..112cacf97a 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.authenticate.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.authenticate.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.close.html b/Documentation/webkitgtk-6.0/vfunc.WebView.close.html
index cf9893e3f0..20edee0bf5 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.close.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.close.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.context_menu.html b/Documentation/webkitgtk-6.0/vfunc.WebView.context_menu.html
index 6c42be039d..36b7f2eafc 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.context_menu.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.context_menu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.context_menu_dismissed.html b/Documentation/webkitgtk-6.0/vfunc.WebView.context_menu_dismissed.html
index 99e50c4772..48081e5740 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.context_menu_dismissed.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.context_menu_dismissed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.create.html b/Documentation/webkitgtk-6.0/vfunc.WebView.create.html
index e7fc104733..eaad6959e0 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.create.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.create.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.decide_policy.html b/Documentation/webkitgtk-6.0/vfunc.WebView.decide_policy.html
index 63bcb806da..e9c3e4aef1 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.decide_policy.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.decide_policy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.enter_fullscreen.html b/Documentation/webkitgtk-6.0/vfunc.WebView.enter_fullscreen.html
index 0ec4610423..a09f28b5ed 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.enter_fullscreen.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.enter_fullscreen.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.insecure_content_detected.html b/Documentation/webkitgtk-6.0/vfunc.WebView.insecure_content_detected.html
index ce6c0681dc..6d03e6ed6c 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.insecure_content_detected.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.insecure_content_detected.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.leave_fullscreen.html b/Documentation/webkitgtk-6.0/vfunc.WebView.leave_fullscreen.html
index fe409ce6d9..378885bfa0 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.leave_fullscreen.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.leave_fullscreen.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.load_changed.html b/Documentation/webkitgtk-6.0/vfunc.WebView.load_changed.html
index 1cb89f211a..2e3bf81ac0 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.load_changed.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.load_changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.load_failed.html b/Documentation/webkitgtk-6.0/vfunc.WebView.load_failed.html
index 356fa035fb..54f0451320 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.load_failed.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.load_failed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.load_failed_with_tls_errors.html b/Documentation/webkitgtk-6.0/vfunc.WebView.load_failed_with_tls_errors.html
index 7454b95fa5..ba081b9c97 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.load_failed_with_tls_errors.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.load_failed_with_tls_errors.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.mouse_target_changed.html b/Documentation/webkitgtk-6.0/vfunc.WebView.mouse_target_changed.html
index 488edd481c..40ed8e2114 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.mouse_target_changed.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.mouse_target_changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.permission_request.html b/Documentation/webkitgtk-6.0/vfunc.WebView.permission_request.html
index 612ac82315..acddaa4724 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.permission_request.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.permission_request.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.print.html b/Documentation/webkitgtk-6.0/vfunc.WebView.print.html
index 50d39f7747..c210bbee1a 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.print.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.print.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.query_permission_state.html b/Documentation/webkitgtk-6.0/vfunc.WebView.query_permission_state.html
index 13fc0a49c2..c80a8fb5a0 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.query_permission_state.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.query_permission_state.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.ready_to_show.html b/Documentation/webkitgtk-6.0/vfunc.WebView.ready_to_show.html
index 688c3dc62f..908f7ac423 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.ready_to_show.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.ready_to_show.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.resource_load_started.html b/Documentation/webkitgtk-6.0/vfunc.WebView.resource_load_started.html
index 809954ee89..54b28765b7 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.resource_load_started.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.resource_load_started.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.run_as_modal.html b/Documentation/webkitgtk-6.0/vfunc.WebView.run_as_modal.html
index 7c9b72b67e..aac93ac122 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.run_as_modal.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.run_as_modal.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.run_color_chooser.html b/Documentation/webkitgtk-6.0/vfunc.WebView.run_color_chooser.html
index 52e51a0f30..e60cfc08ff 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.run_color_chooser.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.run_color_chooser.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.run_file_chooser.html b/Documentation/webkitgtk-6.0/vfunc.WebView.run_file_chooser.html
index 9193f11e05..c795067a06 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.run_file_chooser.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.run_file_chooser.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.script_dialog.html b/Documentation/webkitgtk-6.0/vfunc.WebView.script_dialog.html
index 61a7efbc2d..19dbd9e558 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.script_dialog.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.script_dialog.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.show_notification.html b/Documentation/webkitgtk-6.0/vfunc.WebView.show_notification.html
index 750b9b8b2c..ff95f1b77c 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.show_notification.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.show_notification.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.show_option_menu.html b/Documentation/webkitgtk-6.0/vfunc.WebView.show_option_menu.html
index b98006a47a..57ef9efd80 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.show_option_menu.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.show_option_menu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.submit_form.html b/Documentation/webkitgtk-6.0/vfunc.WebView.submit_form.html
index 623190e476..4aa99fa2f3 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.submit_form.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.submit_form.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.user_message_received.html b/Documentation/webkitgtk-6.0/vfunc.WebView.user_message_received.html
index 9fc3a397ed..1140eb3885 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.user_message_received.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.user_message_received.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.web_process_crashed.html b/Documentation/webkitgtk-6.0/vfunc.WebView.web_process_crashed.html
index 501e63176e..2c80e16264 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.web_process_crashed.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.web_process_crashed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-6.0/vfunc.WebView.web_process_terminated.html b/Documentation/webkitgtk-6.0/vfunc.WebView.web_process_terminated.html
index fdd6f4b39d..f14dc76ef4 100644
--- a/Documentation/webkitgtk-6.0/vfunc.WebView.web_process_terminated.html
+++ b/Documentation/webkitgtk-6.0/vfunc.WebView.web_process_terminated.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKit</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/callback.WebProcessExtensionInitializeFunction.html b/Documentation/webkitgtk-web-process-extension-6.0/callback.WebProcessExtensionInitializeFunction.html
index 650999e44a..11e429606d 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/callback.WebProcessExtensionInitializeFunction.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/callback.WebProcessExtensionInitializeFunction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/callback.WebProcessExtensionInitializeWithUserDataFunction.html b/Documentation/webkitgtk-web-process-extension-6.0/callback.WebProcessExtensionInitializeWithUserDataFunction.html
index 70e4b91e43..9f67f3db3a 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/callback.WebProcessExtensionInitializeWithUserDataFunction.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/callback.WebProcessExtensionInitializeWithUserDataFunction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.ContextMenu.html b/Documentation/webkitgtk-web-process-extension-6.0/class.ContextMenu.html
index e5e383948e..a508f68a57 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.ContextMenu.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.ContextMenu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.ContextMenuItem.html b/Documentation/webkitgtk-web-process-extension-6.0/class.ContextMenuItem.html
index e294fff7ab..811f0a1c8d 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.ContextMenuItem.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.ContextMenuItem.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.Frame.html b/Documentation/webkitgtk-web-process-extension-6.0/class.Frame.html
index f2a9460da3..a12681c36d 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.Frame.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.Frame.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.HitTestResult.html b/Documentation/webkitgtk-web-process-extension-6.0/class.HitTestResult.html
index 5ac7fc07b1..8e352d1b44 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.HitTestResult.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.HitTestResult.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.ScriptWorld.html b/Documentation/webkitgtk-web-process-extension-6.0/class.ScriptWorld.html
index ca108653cb..5f67eed6e7 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.ScriptWorld.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.ScriptWorld.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.URIRequest.html b/Documentation/webkitgtk-web-process-extension-6.0/class.URIRequest.html
index 2d4ec76a1b..8cb406dcb5 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.URIRequest.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.URIRequest.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.URIResponse.html b/Documentation/webkitgtk-web-process-extension-6.0/class.URIResponse.html
index f38ab0cb53..bcfd3062a3 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.URIResponse.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.URIResponse.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.UserMessage.html b/Documentation/webkitgtk-web-process-extension-6.0/class.UserMessage.html
index 63a2241be3..bf2fc1f35d 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.UserMessage.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.UserMessage.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.WebEditor.html b/Documentation/webkitgtk-web-process-extension-6.0/class.WebEditor.html
index ec0c851f5f..ad3ccb0365 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.WebEditor.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.WebEditor.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.WebFormManager.html b/Documentation/webkitgtk-web-process-extension-6.0/class.WebFormManager.html
index f81c93ee1c..5801a843ef 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.WebFormManager.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.WebFormManager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.WebHitTestResult.html b/Documentation/webkitgtk-web-process-extension-6.0/class.WebHitTestResult.html
index f920259b4b..81b6a923a6 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.WebHitTestResult.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.WebHitTestResult.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.WebPage.html b/Documentation/webkitgtk-web-process-extension-6.0/class.WebPage.html
index 8e019e7c2f..e86bfa7afc 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.WebPage.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.WebPage.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/class.WebProcessExtension.html b/Documentation/webkitgtk-web-process-extension-6.0/class.WebProcessExtension.html
index 04deddb214..bff03ead04 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/class.WebProcessExtension.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/class.WebProcessExtension.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/classes_hierarchy.html b/Documentation/webkitgtk-web-process-extension-6.0/classes_hierarchy.html
index 4d375d9107..340ce582a0 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/classes_hierarchy.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/classes_hierarchy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenu.new.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenu.new.html
index 177d9dcf41..9ac18eb05e 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenu.new.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenu.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenu.new_with_items.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenu.new_with_items.html
index 3e42fa3c16..71d9cdb322 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenu.new_with_items.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenu.new_with_items.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_gaction.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_gaction.html
index 6f6ec2da6b..d35b4452df 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_gaction.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_gaction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_stock_action.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_stock_action.html
index 622a642019..02d764b988 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_stock_action.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_stock_action.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_stock_action_with_label.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_stock_action_with_label.html
index d0a7b7d6eb..5e42ab2074 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_stock_action_with_label.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_from_stock_action_with_label.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_separator.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_separator.html
index 2f709e999e..9b9277edc8 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_separator.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_separator.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_with_submenu.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_with_submenu.html
index 7d9e5fde90..20f269a6ac 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_with_submenu.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ContextMenuItem.new_with_submenu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ScriptWorld.new.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ScriptWorld.new.html
index 18ff8010bd..b4aec5035f 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ScriptWorld.new.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ScriptWorld.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ScriptWorld.new_with_name.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ScriptWorld.new_with_name.html
index 6ddeae66bc..9a671d6c79 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.ScriptWorld.new_with_name.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.ScriptWorld.new_with_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.URIRequest.new.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.URIRequest.new.html
index b2f6e4feb6..87f721249b 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.URIRequest.new.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.URIRequest.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.UserMessage.new.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.UserMessage.new.html
index 0b08e50daa..cf554d901e 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.UserMessage.new.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.UserMessage.new.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/ctor.UserMessage.new_with_fd_list.html b/Documentation/webkitgtk-web-process-extension-6.0/ctor.UserMessage.new_with_fd_list.html
index 5ab99c28bb..e22432fc42 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/ctor.UserMessage.new_with_fd_list.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/ctor.UserMessage.new_with_fd_list.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/enum.ConsoleMessageLevel.html b/Documentation/webkitgtk-web-process-extension-6.0/enum.ConsoleMessageLevel.html
index 023f9188c3..5bc87a668b 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/enum.ConsoleMessageLevel.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/enum.ConsoleMessageLevel.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/enum.ConsoleMessageSource.html b/Documentation/webkitgtk-web-process-extension-6.0/enum.ConsoleMessageSource.html
index 2664ab987a..0f44d40771 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/enum.ConsoleMessageSource.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/enum.ConsoleMessageSource.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/enum.ContextMenuAction.html b/Documentation/webkitgtk-web-process-extension-6.0/enum.ContextMenuAction.html
index 91ae774596..6c24917461 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/enum.ContextMenuAction.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/enum.ContextMenuAction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/enum.UserMessageError.html b/Documentation/webkitgtk-web-process-extension-6.0/enum.UserMessageError.html
index a5e963c3c1..e59e2583e5 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/enum.UserMessageError.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/enum.UserMessageError.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/flags.HitTestResultContext.html b/Documentation/webkitgtk-web-process-extension-6.0/flags.HitTestResultContext.html
index f7c8b54299..0f5030d597 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/flags.HitTestResultContext.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/flags.HitTestResultContext.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/index.html b/Documentation/webkitgtk-web-process-extension-6.0/index.html
index 7471482e2e..16469c3e16 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/index.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/index.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
@@ -161,7 +161,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
 
     <div class="meta info">
       <table>
-        <tr><td><em>Version</em></td><td>2.46.3</td></tr>
+        <tr><td><em>Version</em></td><td>2.46.4</td></tr>
         <tr><td><em>Authors</em></td><td>The WebKit GTK and WPE teams</td></tr>
         <tr><td><em>License</em></td><td>BSD, LGPL-2.1</td></tr>
         <tr><td><em>Website</em></td><td><a href="https://webkit.org" class="external">https://webkit.org</a></td></tr>
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.copy.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.copy.html
index 8091768fc1..24922dd83b 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.copy.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.copy.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.free.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.free.html
index f30ebe8831..b3ceb6c954 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.free.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.free.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_level.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_level.html
index b6e7e35dce..0e9f99bfb3 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_level.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_level.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_line.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_line.html
index 38386737b1..9ade89e23c 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_line.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_line.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_source.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_source.html
index 01ab501282..948cc17aa4 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_source.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_source.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_source_id.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_source_id.html
index 255e5fb533..4b8bdf18b7 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_source_id.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_source_id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_text.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_text.html
index 64bf371bb9..95364c413b 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_text.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ConsoleMessage.get_text.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.append.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.append.html
index a0141ba02c..b45f34c381 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.append.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.append.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.first.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.first.html
index 0fa5e2504c..0de01142fe 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.first.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.first.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_event.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_event.html
index a01d5eee4c..332d5ced26 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_event.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_event.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_item_at_position.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_item_at_position.html
index f603dd4e6f..e1ae67e0ac 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_item_at_position.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_item_at_position.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_items.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_items.html
index 7e4370e11b..2ff62e73c5 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_items.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_items.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_n_items.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_n_items.html
index a6410f550c..9a52515c45 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_n_items.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_n_items.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_user_data.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_user_data.html
index 76594ed5a8..11d5200923 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_user_data.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.get_user_data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.insert.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.insert.html
index 41d9c44ebc..9ac9602a4d 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.insert.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.insert.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.last.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.last.html
index 97b38dddeb..567a5e9a38 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.last.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.last.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.move_item.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.move_item.html
index 401289b5c5..bab0f1ba0d 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.move_item.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.move_item.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.prepend.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.prepend.html
index bc6fcad561..31396931f3 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.prepend.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.prepend.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.remove.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.remove.html
index 941f44c33c..eb454e2bb6 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.remove.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.remove.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.remove_all.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.remove_all.html
index 90e6bf7bff..ad9d691ad1 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.remove_all.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.remove_all.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.set_user_data.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.set_user_data.html
index 1230dd20a0..8aea7fcc61 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.set_user_data.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenu.set_user_data.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_gaction.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_gaction.html
index b918df870f..fc7488fd1d 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_gaction.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_gaction.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_stock_action.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_stock_action.html
index 7f84ddb811..3055020d48 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_stock_action.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_stock_action.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_submenu.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_submenu.html
index d07a36e3a4..153ce06107 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_submenu.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.get_submenu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.is_separator.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.is_separator.html
index aa5594c2b5..41a71949c4 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.is_separator.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.is_separator.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.set_submenu.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.set_submenu.html
index 60cf4d0e08..01216be979 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.set_submenu.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ContextMenuItem.set_submenu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_id.html b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_id.html
index 7a2781c7df..11618acced 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_id.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_js_context.html b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_js_context.html
index 3f568cd260..f45f9e060d 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_js_context.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_js_context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_js_context_for_script_world.html b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_js_context_for_script_world.html
index 074dee7c87..86976bc291 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_js_context_for_script_world.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_js_context_for_script_world.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_uri.html
index e8e30e403d..e1386cb0fb 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.is_main_frame.html b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.is_main_frame.html
index 4dd233aded..ebb95f71a4 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.is_main_frame.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.Frame.is_main_frame.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_editable.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_editable.html
index ed9abb6f4d..089dccb547 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_editable.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_editable.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_image.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_image.html
index 8c055171c8..efcd8657c9 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_image.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_image.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_link.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_link.html
index ee15f87319..81aaa3d83c 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_link.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_link.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_media.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_media.html
index 1488a96ee2..ae46c311dd 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_media.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_media.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_scrollbar.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_scrollbar.html
index aee8a1a87e..801d94006c 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_scrollbar.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_scrollbar.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_selection.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_selection.html
index 1d9b5b2355..e5b99e9c42 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_selection.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.context_is_selection.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_context.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_context.html
index ae6f59a551..11f9868b69 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_context.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_image_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_image_uri.html
index 8a239b9049..9e2b2835ee 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_image_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_image_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_label.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_label.html
index 2ab40870bd..19d3ee8ca3 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_label.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_label.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_title.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_title.html
index 5723c5c5f6..aaac594123 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_title.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_uri.html
index 949e0c30eb..893c4eabb3 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_link_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_media_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_media_uri.html
index 56bccf19b9..f8b233657c 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_media_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.HitTestResult.get_media_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.ScriptWorld.get_name.html b/Documentation/webkitgtk-web-process-extension-6.0/method.ScriptWorld.get_name.html
index b4c35ffe57..d9636b72ff 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.ScriptWorld.get_name.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.ScriptWorld.get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_http_headers.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_http_headers.html
index 9bbf58dfc1..d459c4d3e7 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_http_headers.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_http_headers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_http_method.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_http_method.html
index 352e172f03..d8ece47ba2 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_http_method.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_http_method.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_uri.html
index 4155456d67..fd581b10dc 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.set_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.set_uri.html
index edec19ad42..c0f752509f 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.set_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIRequest.set_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_content_length.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_content_length.html
index e3060f38b0..1a8f4eb1dd 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_content_length.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_content_length.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_http_headers.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_http_headers.html
index 4e0c6a3054..d13e9cb1e2 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_http_headers.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_http_headers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_mime_type.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_mime_type.html
index dc36c24e72..e63983cadb 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_mime_type.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_mime_type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_status_code.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_status_code.html
index f2b8c80f43..a91765ea09 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_status_code.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_status_code.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_suggested_filename.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_suggested_filename.html
index dae1a208c1..428a99801b 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_suggested_filename.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_suggested_filename.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_uri.html
index bd36cc8d3c..9c5f8ff23a 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.URIResponse.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_fd_list.html b/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_fd_list.html
index 259e6d123e..1e828e2aec 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_fd_list.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_fd_list.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_name.html b/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_name.html
index 0ac15ebbe7..3138badb28 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_name.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_parameters.html b/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_parameters.html
index 8a64f6daf8..51482339c2 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_parameters.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.get_parameters.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.send_reply.html b/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.send_reply.html
index 42f4fcedf2..a525b06919 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.send_reply.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.UserMessage.send_reply.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebEditor.get_page.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebEditor.get_page.html
index 02573cdf2f..8c1e0aa80f 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebEditor.get_page.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebEditor.get_page.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_editable.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_editable.html
index 887d59471d..31ff387525 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_editable.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_editable.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_image.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_image.html
index 352aad546d..2df489c540 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_image.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_image.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_link.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_link.html
index fd73855e30..d393a2e149 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_link.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_link.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_media.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_media.html
index f45260d348..3acdf8490e 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_media.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_media.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_scrollbar.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_scrollbar.html
index 7ff6d9471e..f7adebca7f 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_scrollbar.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_scrollbar.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_selection.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_selection.html
index 2fad0d79de..a3700205bc 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_selection.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.context_is_selection.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_context.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_context.html
index a8868e25cc..69e89e2923 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_context.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_image_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_image_uri.html
index b7b38114a8..83c3f64ea1 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_image_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_image_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_js_node.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_js_node.html
index 11e8bb0c09..30540b73df 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_js_node.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_js_node.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_label.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_label.html
index 73cd48d276..ad8373e80a 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_label.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_label.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_title.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_title.html
index c12e8286b1..956c32a266 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_title.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_uri.html
index ff2ab06dab..1ab3b74d5b 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_link_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_media_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_media_uri.html
index f463906926..9b5bdb23f5 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_media_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebHitTestResult.get_media_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_editor.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_editor.html
index 6f15fe09fa..03a7d0fb73 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_editor.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_editor.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_form_manager.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_form_manager.html
index 7ecc926e01..f82ba4dd3e 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_form_manager.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_form_manager.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_id.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_id.html
index 75fdad8804..b93db00577 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_id.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_id.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_main_frame.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_main_frame.html
index 4aa8be8131..e626504183 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_main_frame.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_main_frame.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_uri.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_uri.html
index 6e8fd76b2d..c817c6ebf0 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.get_uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.send_message_to_view.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.send_message_to_view.html
index fccdd916f3..bef434c415 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.send_message_to_view.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.send_message_to_view.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.send_message_to_view_finish.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.send_message_to_view_finish.html
index 3c045a757d..ba5ce378bd 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.send_message_to_view_finish.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebPage.send_message_to_view_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.get_page.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.get_page.html
index 257039cce1..dac64580d1 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.get_page.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.get_page.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.send_message_to_context.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.send_message_to_context.html
index 8590743729..bbf771f235 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.send_message_to_context.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.send_message_to_context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.send_message_to_context_finish.html b/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.send_message_to_context_finish.html
index a6cbbbe9f1..e7431e348a 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.send_message_to_context_finish.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/method.WebProcessExtension.send_message_to_context_finish.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.context.html b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.context.html
index 4576b06850..b275f4acb2 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.context.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.context.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.image-uri.html b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.image-uri.html
index 063187547a..c8c7d03b8c 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.image-uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.image-uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-label.html b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-label.html
index 70928e2288..37e8fd2ea4 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-label.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-label.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-title.html b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-title.html
index 53e8df48fa..a75b7f6cbc 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-title.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-title.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-uri.html b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-uri.html
index 0cf009d112..e97e87c7cc 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.link-uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.media-uri.html b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.media-uri.html
index 7291b43581..7c565f9d83 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.media-uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.HitTestResult.media-uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.URIRequest.uri.html b/Documentation/webkitgtk-web-process-extension-6.0/property.URIRequest.uri.html
index 8bdf163376..c517b33f3a 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.URIRequest.uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.URIRequest.uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.content-length.html b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.content-length.html
index ef38137678..a7b2843e3b 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.content-length.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.content-length.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.http-headers.html b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.http-headers.html
index f8dba06fab..abdf6bfc98 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.http-headers.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.http-headers.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.mime-type.html b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.mime-type.html
index 806e8a6963..d781241220 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.mime-type.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.mime-type.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.status-code.html b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.status-code.html
index de472568d5..5a926c6938 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.status-code.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.status-code.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.suggested-filename.html b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.suggested-filename.html
index f3c44e3aab..627e818318 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.suggested-filename.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.suggested-filename.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.uri.html b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.uri.html
index 879cc942ba..d2dc9a7e09 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.URIResponse.uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.fd-list.html b/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.fd-list.html
index 5d404cbcd1..02a7ea78c8 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.fd-list.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.fd-list.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.name.html b/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.name.html
index e22b905e0f..bc8c6f7615 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.name.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.name.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.parameters.html b/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.parameters.html
index 756ae3d84e..43de9f6fa0 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.parameters.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.UserMessage.parameters.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/property.WebPage.uri.html b/Documentation/webkitgtk-web-process-extension-6.0/property.WebPage.uri.html
index 9ab3c14bcf..da8c6bff52 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/property.WebPage.uri.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/property.WebPage.uri.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.ScriptWorld.window-object-cleared.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.ScriptWorld.window-object-cleared.html
index 2702fb0880..07031aa3cc 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.ScriptWorld.window-object-cleared.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.ScriptWorld.window-object-cleared.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebEditor.selection-changed.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebEditor.selection-changed.html
index ae98630181..50a99fab7e 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebEditor.selection-changed.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebEditor.selection-changed.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.form-controls-associated.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.form-controls-associated.html
index bbae4ccd2e..4b424633fb 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.form-controls-associated.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.form-controls-associated.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.will-send-submit-event.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.will-send-submit-event.html
index 1006aaf830..fb8c901d88 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.will-send-submit-event.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.will-send-submit-event.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.will-submit-form.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.will-submit-form.html
index 44e783bc2b..c0655348c6 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.will-submit-form.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebFormManager.will-submit-form.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.console-message-sent.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.console-message-sent.html
index 9fcabcd4fe..008cf758c2 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.console-message-sent.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.console-message-sent.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.context-menu.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.context-menu.html
index 985d68feb3..38fb43d186 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.context-menu.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.context-menu.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.document-loaded.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.document-loaded.html
index a62b01e603..3d4e31f5ba 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.document-loaded.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.document-loaded.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.send-request.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.send-request.html
index 8fb6dda168..a900d2de3d 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.send-request.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.send-request.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.user-message-received.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.user-message-received.html
index 26e22f2eec..b0bf3b95d2 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.user-message-received.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebPage.user-message-received.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebProcessExtension.page-created.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebProcessExtension.page-created.html
index 55df7e24e9..2bec391cef 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebProcessExtension.page-created.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebProcessExtension.page-created.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebProcessExtension.user-message-received.html b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebProcessExtension.user-message-received.html
index e57307723a..4a1ff6c336 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/signal.WebProcessExtension.user-message-received.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/signal.WebProcessExtension.user-message-received.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/struct.ConsoleMessage.html b/Documentation/webkitgtk-web-process-extension-6.0/struct.ConsoleMessage.html
index 939c5dc162..34084f32c7 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/struct.ConsoleMessage.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/struct.ConsoleMessage.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/type_func.ScriptWorld.get_default.html b/Documentation/webkitgtk-web-process-extension-6.0/type_func.ScriptWorld.get_default.html
index 2e17a187e8..ea11e65d09 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/type_func.ScriptWorld.get_default.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/type_func.ScriptWorld.get_default.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/type_func.UserMessage.error_quark.html b/Documentation/webkitgtk-web-process-extension-6.0/type_func.UserMessage.error_quark.html
index 8fdc861ffb..2ab0188908 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/type_func.UserMessage.error_quark.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/type_func.UserMessage.error_quark.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_auto_fill.html b/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_auto_fill.html
index 2366ecddb7..ee1c8e2c04 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_auto_fill.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_auto_fill.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_is_auto_filled.html b/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_is_auto_filled.html
index 77f7e9de98..f15133080c 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_is_auto_filled.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_is_auto_filled.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_is_user_edited.html b/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_is_user_edited.html
index 29a526b149..bc72f43379 100644
--- a/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_is_user_edited.html
+++ b/Documentation/webkitgtk-web-process-extension-6.0/type_func.WebFormManager.input_element_is_user_edited.html
@@ -62,7 +62,7 @@ SPDX-License-Identifier: BSD, LGPL-2.1
         <h3><a href="index.html">WebKitWebProcessExtension</a></h3>
         <p>API Version: 6.0</p>
         
-        <p>Library Version: 2.46.3</p>
+        <p>Library Version: 2.46.4</p>
         
       </div>
       
diff --git a/NEWS b/NEWS
index 9789ad8d87..da08515412 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,16 @@
+================
+WebKitGTK 2.46.4
+================
+
+What's new in WebKitGTK 2.46.4?
+
+  - Improve memory consumption and performance of Canvas getImageData.
+  - Fix preserve-3D intersection rendering.
+  - Fix video dimensions since GStreamer 1.24.9.
+  - Fix the HTTP-based remote Web Inspector not loading in Chromium.
+  - Fix content filters not working on about:blank iframes.
+  - Fix several crashes and rendering issues.
+
 ================
 WebKitGTK 2.46.3
 ================
diff --git a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
index 356d52b21a..d041b63e8b 100644
--- a/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
+++ b/Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp
@@ -3528,6 +3528,14 @@ void SpeculativeJIT::compilePutByValForIntTypedArray(Node* node, TypedArrayType
         }
     }
 
+    GPRReg scratch2GPR = InvalidGPRReg;
+#if USE(JSVALUE64)
+    if (node->arrayMode().mayBeResizableOrGrowableSharedTypedArray()) {
+        scratch2.emplace(this);
+        scratch2GPR = scratch2->gpr();
+    }
+#endif
+
     bool result = getIntTypedArrayStoreOperand(
         value, propertyReg,
 #if USE(JSVALUE32_64)
@@ -3539,14 +3547,6 @@ void SpeculativeJIT::compilePutByValForIntTypedArray(Node* node, TypedArrayType
         return;
     }
 
-    GPRReg scratch2GPR = InvalidGPRReg;
-#if USE(JSVALUE64)
-    if (node->arrayMode().mayBeResizableOrGrowableSharedTypedArray()) {
-        scratch2.emplace(this);
-        scratch2GPR = scratch2->gpr();
-    }
-#endif
-
     GPRReg valueGPR = value.gpr();
     GPRReg scratchGPR = scratch.gpr();
 #if USE(JSVALUE32_64)
diff --git a/Source/JavaScriptCore/yarr/YarrPattern.cpp b/Source/JavaScriptCore/yarr/YarrPattern.cpp
index 9ae4992b9a..767376fc7f 100644
--- a/Source/JavaScriptCore/yarr/YarrPattern.cpp
+++ b/Source/JavaScriptCore/yarr/YarrPattern.cpp
@@ -409,8 +409,13 @@ public:
         if (m_compileMode != CompileMode::UnicodeSets)
             return;
 
-        asciiOpSorted(rhsMatches, rhsRanges);
-        unicodeOpSorted(rhsMatchesUnicode, rhsRangesUnicode);
+        asciiOp(rhsMatches, rhsRanges);
+        // Sort the incoming Unicode matches, since Unicode case folding canonicalization may cause
+        // characters to be added to rhsMatches out of code point order.
+        Vector<char32_t> rhsSortedMatchesUnicode(rhsMatchesUnicode);
+        std::sort(rhsSortedMatchesUnicode.begin(), rhsSortedMatchesUnicode.end());
+
+        unicodeOpSorted(rhsSortedMatchesUnicode, rhsRangesUnicode);
     }
 
     bool hasInverteStrings()
@@ -667,7 +672,7 @@ private:
         m_mayContainStrings = !m_strings.isEmpty();
     }
 
-    void asciiOpSorted(const Vector<char32_t>& rhsMatches, const Vector<CharacterRange>& rhsRanges)
+    void asciiOp(const Vector<char32_t>& rhsMatches, const Vector<CharacterRange>& rhsRanges)
     {
         Vector<char32_t> resultMatches;
         Vector<CharacterRange> resultRanges;
diff --git a/Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml b/Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
index ac1797039c..551b7fd6ea 100644
--- a/Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
+++ b/Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
@@ -8165,6 +8165,21 @@ WebRTCH265CodecEnabled:
       "PLATFORM(COCOA)": true
       default: false
 
+WebRTCL4SEnabled:
+  type: bool
+  status: testable
+  category: media
+  condition: ENABLE(WEB_RTC)
+  humanReadableName: "WebRTC L4S support"
+  humanReadableDescription: "Enable WebRTC L4S support"
+  defaultValue:
+    WebKitLegacy:
+      default: false
+    WebKit:
+      default: false
+    WebCore:
+      default: false
+
 WebRTCMediaPipelineAdditionalLoggingEnabled:
   type: bool
   status: internal
diff --git a/Source/WTF/wtf/Logger.cpp b/Source/WTF/wtf/Logger.cpp
index 29bed9304c..c806bfec5e 100644
--- a/Source/WTF/wtf/Logger.cpp
+++ b/Source/WTF/wtf/Logger.cpp
@@ -34,6 +34,7 @@
 namespace WTF {
 
 Lock loggerObserverLock;
+Lock messageHandlerLoggerObserverLock;
 
 String Logger::LogSiteIdentifier::toString() const
 {
@@ -57,4 +58,14 @@ Vector<std::reference_wrapper<Logger::Observer>>& Logger::observers()
     return observers;
 }
 
+Vector<std::reference_wrapper<Logger::MessageHandlerObserver>>& Logger::messageHandlerObservers()
+{
+    static LazyNeverDestroyed<Vector<std::reference_wrapper<MessageHandlerObserver>>> observers;
+    static std::once_flag onceKey;
+    std::call_once(onceKey, [&] {
+        observers.construct();
+    });
+    return observers;
+}
+
 } // namespace WTF
diff --git a/Source/WTF/wtf/Logger.h b/Source/WTF/wtf/Logger.h
index d50fe8180e..9f0de7bc2b 100644
--- a/Source/WTF/wtf/Logger.h
+++ b/Source/WTF/wtf/Logger.h
@@ -123,6 +123,7 @@ struct ConsoleLogValue<Argument, false> {
 };
 
 WTF_EXPORT_PRIVATE extern Lock loggerObserverLock;
+WTF_EXPORT_PRIVATE extern Lock messageHandlerLoggerObserverLock;
 
 class Logger : public ThreadSafeRefCounted<Logger> {
     WTF_MAKE_NONCOPYABLE(Logger);
@@ -136,6 +137,12 @@ public:
         virtual void didLogMessage(const WTFLogChannel&, WTFLogLevel, Vector<JSONLogValue>&&) = 0;
     };
 
+    class MessageHandlerObserver {
+    public:
+        virtual ~MessageHandlerObserver() = default;
+        virtual void handleLogMessage(const WTFLogChannel&, WTFLogLevel, Vector<JSONLogValue>&&) = 0;
+    };
+
     static Ref<Logger> create(const void* owner)
     {
         return adoptRef(*new Logger(owner));
@@ -149,7 +156,7 @@ public:
         //  on some systems, so don't allow it.
         UNUSED_PARAM(channel);
 #else
-        if (!willLog(channel, WTFLogLevel::Always))
+        if (!willLog(channel, WTFLogLevel::Always, arguments...))
             return;
 
         log(channel, WTFLogLevel::Always, arguments...);
@@ -159,7 +166,7 @@ public:
     template<typename... Arguments>
     inline void error(WTFLogChannel& channel, const Arguments&... arguments) const
     {
-        if (!willLog(channel, WTFLogLevel::Error))
+        if (!willLog(channel, WTFLogLevel::Error, arguments...))
             return;
 
         log(channel, WTFLogLevel::Error, arguments...);
@@ -168,7 +175,7 @@ public:
     template<typename... Arguments>
     inline void warning(WTFLogChannel& channel, const Arguments&... arguments) const
     {
-        if (!willLog(channel, WTFLogLevel::Warning))
+        if (!willLog(channel, WTFLogLevel::Warning, arguments...))
             return;
 
         log(channel, WTFLogLevel::Warning, arguments...);
@@ -177,7 +184,7 @@ public:
     template<typename... Arguments>
     inline void info(WTFLogChannel& channel, const Arguments&... arguments) const
     {
-        if (!willLog(channel, WTFLogLevel::Info))
+        if (!willLog(channel, WTFLogLevel::Info, arguments...))
             return;
 
         log(channel, WTFLogLevel::Info, arguments...);
@@ -186,7 +193,7 @@ public:
     template<typename... Arguments>
     inline void debug(WTFLogChannel& channel, const Arguments&... arguments) const
     {
-        if (!willLog(channel, WTFLogLevel::Debug))
+        if (!willLog(channel, WTFLogLevel::Debug, arguments...))
             return;
 
         log(channel, WTFLogLevel::Debug, arguments...);
@@ -203,7 +210,7 @@ public:
         UNUSED_PARAM(function);
         UNUSED_PARAM(line);
 #else
-        if (!willLog(channel, WTFLogLevel::Always))
+        if (!willLog(channel, WTFLogLevel::Always, arguments...))
             return;
 
         logVerbose(channel, WTFLogLevel::Always, file, function, line, arguments...);
@@ -213,7 +220,7 @@ public:
     template<typename... Arguments>
     inline void errorVerbose(WTFLogChannel& channel, const char* file, const char* function, int line, const Arguments&... arguments) const
     {
-        if (!willLog(channel, WTFLogLevel::Error))
+        if (!willLog(channel, WTFLogLevel::Error, arguments...))
             return;
 
         logVerbose(channel, WTFLogLevel::Error, file, function, line, arguments...);
@@ -222,7 +229,7 @@ public:
     template<typename... Arguments>
     inline void warningVerbose(WTFLogChannel& channel, const char* file, const char* function, int line, const Arguments&... arguments) const
     {
-        if (!willLog(channel, WTFLogLevel::Warning))
+        if (!willLog(channel, WTFLogLevel::Warning, arguments...))
             return;
 
         logVerbose(channel, WTFLogLevel::Warning, file, function, line, arguments...);
@@ -231,7 +238,7 @@ public:
     template<typename... Arguments>
     inline void infoVerbose(WTFLogChannel& channel, const char* file, const char* function, int line, const Arguments&... arguments) const
     {
-        if (!willLog(channel, WTFLogLevel::Info))
+        if (!willLog(channel, WTFLogLevel::Info, arguments...))
             return;
 
         logVerbose(channel, WTFLogLevel::Info, file, function, line, arguments...);
@@ -240,14 +247,24 @@ public:
     template<typename... Arguments>
     inline void debugVerbose(WTFLogChannel& channel, const char* file, const char* function, int line, const Arguments&... arguments) const
     {
-        if (!willLog(channel, WTFLogLevel::Debug))
+        if (!willLog(channel, WTFLogLevel::Debug, arguments...))
             return;
 
         logVerbose(channel, WTFLogLevel::Debug, file, function, line, arguments...);
     }
 
-    inline bool willLog(const WTFLogChannel& channel, WTFLogLevel level) const
+    template<typename... Argument>
+    inline bool willLog(const WTFLogChannel& channel, WTFLogLevel level, const Argument&... arguments) const
     {
+        {
+            if (!messageHandlerObserverLock().tryLock())
+                return false;
+
+            Locker locker { AdoptLock, messageHandlerObserverLock() };
+            for (MessageHandlerObserver& observer : messageHandlerObservers())
+                observer.handleLogMessage(channel, level, { ConsoleLogValue<Argument>::toValue(arguments)... });
+        }
+
         if (!m_enabled)
             return false;
 
@@ -307,6 +324,19 @@ public:
         });
     }
 
+    static inline void addMessageHandlerObserver(MessageHandlerObserver& observer)
+    {
+        Locker locker { messageHandlerObserverLock() };
+        messageHandlerObservers().append(observer);
+    }
+    static inline void removeMessageHandlerObserver(MessageHandlerObserver& observer)
+    {
+        Locker locker { messageHandlerObserverLock() };
+        messageHandlerObservers().removeFirstMatching([&observer](auto anObserver) {
+            return &anObserver.get() == &observer;
+        });
+    }
+
 private:
     friend class AggregateLogger;
     friend class NativePromiseBase;
@@ -380,6 +410,12 @@ private:
         return loggerObserverLock;
     }
 
+    WTF_EXPORT_PRIVATE static Vector<std::reference_wrapper<MessageHandlerObserver>>& messageHandlerObservers() WTF_REQUIRES_LOCK(messageHandlerObserverLock());
+
+    static Lock& messageHandlerObserverLock() WTF_RETURNS_LOCK(messageHandlerLoggerObserverLock)
+    {
+        return messageHandlerLoggerObserverLock;
+    }
 
     bool m_enabled { true };
     const void* m_owner;
diff --git a/Source/WTF/wtf/PlatformJSCOnly.cmake b/Source/WTF/wtf/PlatformJSCOnly.cmake
index 04300bcda8..cd1b713506 100644
--- a/Source/WTF/wtf/PlatformJSCOnly.cmake
+++ b/Source/WTF/wtf/PlatformJSCOnly.cmake
@@ -49,15 +49,15 @@ else ()
     if (LOWERCASE_EVENT_LOOP_TYPE STREQUAL "glib")
         list(APPEND WTF_SOURCES
             glib/FileSystemGlib.cpp
-        )
-    else ()
-        list(APPEND WTF_SOURCES
-            posix/FileSystemPOSIX.cpp
-
-            unix/UniStdExtrasUnix.cpp
+            glib/Sandbox.cpp
         )
     endif ()
 
+    list(APPEND WTF_SOURCES
+        posix/FileSystemPOSIX.cpp
+
+        unix/UniStdExtrasUnix.cpp
+    )
 endif ()
 
 if (WIN32)
@@ -107,6 +107,11 @@ else ()
 endif ()
 
 if (LOWERCASE_EVENT_LOOP_TYPE STREQUAL "glib")
+    list(APPEND WTF_PUBLIC_HEADERS
+        glib/GRefPtr.h
+        glib/GTypedefs.h
+        glib/RunLoopSourcePriority.h
+    )
     list(APPEND WTF_SOURCES
         glib/GRefPtr.cpp
         glib/RunLoopGLib.cpp
diff --git a/Source/WTF/wtf/URLHelpers.cpp b/Source/WTF/wtf/URLHelpers.cpp
index c71e8ccd93..60b8f6b1f0 100644
--- a/Source/WTF/wtf/URLHelpers.cpp
+++ b/Source/WTF/wtf/URLHelpers.cpp
@@ -798,9 +798,9 @@ static void applyHostNameFunctionToURLString(const String& string, URLDecodeFunc
     }, authorityStart);
     unsigned hostNameEnd = hostNameTerminator == notFound ? string.length() : hostNameTerminator;
 
-    // Find "@" for the start of the host name.
-    auto userInfoTerminator = StringView { string }.left(hostNameEnd).find('@', authorityStart);
-    unsigned hostNameStart = userInfoTerminator == notFound ? authorityStart : userInfoTerminator + 1;
+    // Find "@" for the start of the host name. There might be more than one and we try to find the last one.
+    auto lastUserInfoTerminator = StringView { string }.left(hostNameEnd).reverseFind('@');
+    unsigned hostNameStart = lastUserInfoTerminator == notFound ? authorityStart : lastUserInfoTerminator + 1;
 
     collectRangesThatNeedMapping(string, hostNameStart, hostNameEnd - hostNameStart, array, decodeFunction);
 }
diff --git a/Source/WTF/wtf/glib/GRefPtr.h b/Source/WTF/wtf/glib/GRefPtr.h
index b8fcb7da39..0dbd505398 100644
--- a/Source/WTF/wtf/glib/GRefPtr.h
+++ b/Source/WTF/wtf/glib/GRefPtr.h
@@ -31,11 +31,20 @@
 extern "C" {
     typedef struct _GDBusConnection GDBusConnection;
     typedef struct _GDBusNodeInfo GDBusNodeInfo;
+
     GDBusNodeInfo* g_dbus_node_info_ref(GDBusNodeInfo*);
     void g_dbus_node_info_unref(GDBusNodeInfo*);
+
+    // Since GLib 2.56 a g_object_ref_sink() macro may be defined which propagates
+    // the type of the parameter to the returned value, but it conflicts with the
+    // declaration below, causing an error when glib-object.h is included before
+    // this file. Thus, add the forward declarations only when the macro is not
+    // present.
+#ifndef g_object_ref_sink
+    void g_object_unref(gpointer);
+    gpointer g_object_ref_sink(gpointer);
+#endif
 };
-extern "C" void g_object_unref(gpointer);
-extern "C" gpointer g_object_ref_sink(gpointer);
 
 namespace WTF {
 
diff --git a/Source/WTF/wtf/glib/GSocketMonitor.cpp b/Source/WTF/wtf/glib/GSocketMonitor.cpp
index f3e31efb50..4266d939c6 100644
--- a/Source/WTF/wtf/glib/GSocketMonitor.cpp
+++ b/Source/WTF/wtf/glib/GSocketMonitor.cpp
@@ -47,8 +47,8 @@ gboolean GSocketMonitor::socketSourceCallback(GSocket*, GIOCondition condition,
     monitor->m_isExecutingCallback = false;
 
     if (monitor->m_shouldDestroyCallback) {
-        monitor->m_callback = nullptr;
         monitor->m_shouldDestroyCallback = false;
+        monitor->m_callback = nullptr;
     }
 
     return result;
diff --git a/Source/WTF/wtf/glib/Sandbox.cpp b/Source/WTF/wtf/glib/Sandbox.cpp
index 28186c450e..6ad10204ae 100644
--- a/Source/WTF/wtf/glib/Sandbox.cpp
+++ b/Source/WTF/wtf/glib/Sandbox.cpp
@@ -27,7 +27,6 @@
 #include <wtf/glib/Sandbox.h>
 
 #include <gio/gio.h>
-#include <glib.h>
 #include <wtf/FileSystem.h>
 #include <wtf/NeverDestroyed.h>
 #include <wtf/glib/GRefPtr.h>
@@ -126,6 +125,8 @@ const CString& sandboxedUserRuntimeDirectory()
         static constexpr ASCIILiteral baseDirectory = "webkitgtk"_s;
 #elif PLATFORM(WPE)
         static constexpr ASCIILiteral baseDirectory = "wpe"_s;
+#else
+        static constexpr ASCIILiteral baseDirectory = "javascriptcore"_s;
 #endif
         userRuntimeDirectory.construct(FileSystem::pathByAppendingComponent(FileSystem::stringFromFileSystemRepresentation(g_get_user_runtime_dir()), baseDirectory).utf8());
     });
diff --git a/Source/WebCore/Modules/mediasource/MediaSource.cpp b/Source/WebCore/Modules/mediasource/MediaSource.cpp
index ad9e47fe72..f2c8210c7d 100644
--- a/Source/WebCore/Modules/mediasource/MediaSource.cpp
+++ b/Source/WebCore/Modules/mediasource/MediaSource.cpp
@@ -537,6 +537,11 @@ bool MediaSource::isBuffered(const PlatformTimeRanges& ranges) const
 
 void MediaSource::monitorSourceBuffers()
 {
+    if (isClosed())
+        return;
+
+    ASSERT(m_private);
+
     // 2.4.4 SourceBuffer Monitoring
     // https://rawgit.com/w3c/media-source/45627646344eea0170dd1cbc5a3d508ca751abb8/media-source-respec.html#buffer-monitoring
 
diff --git a/Source/WebCore/Modules/mediastream/MediaStream.cpp b/Source/WebCore/Modules/mediastream/MediaStream.cpp
index 2ab9bb1f58..9fd6c8f88a 100644
--- a/Source/WebCore/Modules/mediastream/MediaStream.cpp
+++ b/Source/WebCore/Modules/mediastream/MediaStream.cpp
@@ -81,8 +81,10 @@ MediaStream::MediaStream(Document& document, const Vector<Ref<MediaStreamTrack>>
     // This constructor preserves MediaStreamTrack instances and must be used by calls originating
     // from the JavaScript MediaStream constructor.
 
-    for (auto& track : tracks)
+    for (auto& track : tracks) {
+        track->setMediaStreamId(id());
         m_trackMap.add(track->id(), track);
+    }
 
     setIsActive(m_private->active());
     m_private->addObserver(*this);
@@ -94,8 +96,11 @@ MediaStream::MediaStream(Document& document, Ref<MediaStreamPrivate>&& streamPri
 {
     ALWAYS_LOG(LOGIDENTIFIER);
 
-    for (auto& trackPrivate : m_private->tracks())
-        m_trackMap.add(trackPrivate->id(), MediaStreamTrack::create(document, trackPrivate.get()));
+    for (auto& trackPrivate : m_private->tracks()) {
+        auto track = MediaStreamTrack::create(document, trackPrivate.get());
+        track->setMediaStreamId(id());
+        m_trackMap.add(trackPrivate->id(), WTFMove(track));
+    }
 
     setIsActive(m_private->active());
     m_private->addObserver(*this);
diff --git a/Source/WebCore/Modules/mediastream/MediaStreamTrack.h b/Source/WebCore/Modules/mediastream/MediaStreamTrack.h
index d5583e7ade..116d302f0c 100644
--- a/Source/WebCore/Modules/mediastream/MediaStreamTrack.h
+++ b/Source/WebCore/Modules/mediastream/MediaStreamTrack.h
@@ -183,6 +183,9 @@ public:
     bool isDetached() const { return m_isDetached; }
     UniqueRef<MediaStreamTrackDataHolder> detach();
 
+    void setMediaStreamId(const String& id) { m_mediaStreamId = id; }
+    const String& mediaStreamId() const { return m_mediaStreamId; }
+
 protected:
     MediaStreamTrack(ScriptExecutionContext&, Ref<MediaStreamTrackPrivate>&&);
 
@@ -226,6 +229,7 @@ private:
 
     MediaTrackConstraints m_constraints;
 
+    String m_mediaStreamId;
     String m_groupId;
     State m_readyState { State::Live };
     bool m_muted { false };
diff --git a/Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.cpp b/Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.cpp
index 13854a90e2..641927a8b4 100644
--- a/Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.cpp
+++ b/Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.cpp
@@ -32,6 +32,7 @@
 #include "HTMLCanvasElement.h"
 #include "HTMLImageElement.h"
 #include "HTMLVideoElement.h"
+#include "ImageBitmap.h"
 #include "JSWebCodecsVideoFrame.h"
 #include "Logging.h"
 #include "OffscreenCanvas.h"
diff --git a/Source/WebCore/Modules/mediastream/PeerConnectionBackend.cpp b/Source/WebCore/Modules/mediastream/PeerConnectionBackend.cpp
index 5891622e27..d6bb7ef7a3 100644
--- a/Source/WebCore/Modules/mediastream/PeerConnectionBackend.cpp
+++ b/Source/WebCore/Modules/mediastream/PeerConnectionBackend.cpp
@@ -39,7 +39,6 @@
 #include "JSRTCCertificate.h"
 #include "Logging.h"
 #include "Page.h"
-#include "RTCDataChannelEvent.h"
 #include "RTCDtlsTransport.h"
 #include "RTCIceCandidate.h"
 #include "RTCPeerConnection.h"
@@ -50,7 +49,9 @@
 #include "RTCTrackEvent.h"
 #include "WebRTCProvider.h"
 #include <wtf/EnumTraits.h>
+#include <wtf/FilePrintStream.h>
 #include <wtf/UUID.h>
+#include <wtf/text/Base64.h>
 #include <wtf/text/StringBuilder.h>
 
 #if USE(GSTREAMER_WEBRTC)
@@ -104,6 +105,53 @@ std::optional<RTCRtpCapabilities> PeerConnectionBackend::senderCapabilities(Scri
 }
 #endif // USE(LIBWEBRTC) || USE(GSTREAMER_WEBRTC)
 
+#if PLATFORM(WPE) || PLATFORM(GTK)
+class JSONFileHandler {
+public:
+    JSONFileHandler(const String& path)
+        : m_logFile(FilePrintStream::open(path.utf8().data(), "w"))
+    {
+        // Prefer unbuffered output, so that we get a full log upon crash or deadlock.
+        setvbuf(m_logFile->file(), nullptr, _IONBF, 0);
+    }
+
+    void log(String&& event)
+    {
+        m_logFile->println(WTFMove(event));
+    }
+
+    void addClient(uint64_t identifier)
+    {
+        Locker lock(m_clientsLock);
+        m_clients.append(identifier);
+    }
+
+    void removeClient(uint64_t identifier)
+    {
+        Locker lock(m_clientsLock);
+        if (!m_clients.contains(identifier))
+            return;
+
+        m_clients.remove(identifier);
+        if (m_clients.isEmpty())
+            m_logFile = nullptr;
+    }
+
+private:
+    std::unique_ptr<FilePrintStream> m_logFile;
+    Lock m_clientsLock;
+    Vector<uint64_t> m_clients WTF_GUARDED_BY_LOCK(m_clientsLock);
+};
+
+JSONFileHandler& jsonFileHandler()
+{
+    auto path = String::fromUTF8(getenv("WEBKIT_WEBRTC_JSON_EVENTS_FILE"));
+    ASSERT(!path.isEmpty());
+    static NeverDestroyed<JSONFileHandler> sharedInstance(path);
+    return sharedInstance;
+}
+#endif
+
 PeerConnectionBackend::PeerConnectionBackend(RTCPeerConnection& peerConnection)
     : m_peerConnection(peerConnection)
 #if !RELEASE_LOG_DISABLED
@@ -116,9 +164,73 @@ PeerConnectionBackend::PeerConnectionBackend(RTCPeerConnection& peerConnection)
     if (auto* page = document ? document->page() : nullptr)
         m_shouldFilterICECandidates = page->webRTCProvider().isSupportingMDNS();
 #endif
+
+#if !RELEASE_LOG_DISABLED && (PLATFORM(WPE) || PLATFORM(GTK))
+    m_jsonFilePath = String::fromUTF8(getenv("WEBKIT_WEBRTC_JSON_EVENTS_FILE"));
+    if (!m_jsonFilePath.isEmpty())
+        jsonFileHandler().addClient(uint64_t(m_logIdentifier));
+
+    m_logger->addMessageHandlerObserver(*this);
+    ALWAYS_LOG(LOGIDENTIFIER, "PeerConnection created"_s);
+#endif
 }
 
-PeerConnectionBackend::~PeerConnectionBackend() = default;
+PeerConnectionBackend::~PeerConnectionBackend()
+{
+#if !RELEASE_LOG_DISABLED && (PLATFORM(WPE) || PLATFORM(GTK))
+    ALWAYS_LOG(LOGIDENTIFIER, "Disposing PeerConnection"_s);
+    m_logger->removeMessageHandlerObserver(*this);
+
+    if (isJSONLogStreamingEnabled())
+        jsonFileHandler().removeClient(uint64_t(m_logIdentifier));
+#endif
+}
+
+#if !RELEASE_LOG_DISABLED && (PLATFORM(WPE) || PLATFORM(GTK))
+void PeerConnectionBackend::handleLogMessage(const WTFLogChannel& channel, WTFLogLevel, Vector<JSONLogValue>&& values)
+{
+    auto name = StringView::fromLatin1(channel.name);
+    if (name != "WebRTC"_s)
+        return;
+
+    // Ignore logs containing only the call site information or JSON logs.
+    if (values.size() < 2 || values[1].type == JSONLogValue::Type::JSON)
+        return;
+
+    if (!isJSONLogStreamingEnabled())
+        return;
+
+    // Parse "foo::bar(hexidentifier) "
+    auto& callSite = values[0].value;
+    auto leftParenthesisIndex = callSite.reverseFind('(');
+    if (leftParenthesisIndex == notFound)
+        return;
+
+    auto rightParenthesisIndex = callSite.reverseFind(')');
+    if (rightParenthesisIndex == notFound)
+        return;
+
+    if (!m_logIdentifierString)
+        m_logIdentifierString = makeString(hex(uint64_t(m_logIdentifier)));
+
+    auto identifier = callSite.substring(leftParenthesisIndex + 1, rightParenthesisIndex - leftParenthesisIndex - 1);
+    if (identifier != m_logIdentifierString)
+        return;
+
+    String event;
+
+    // Check if the third message is a multi-lines string, concatenating such message would look ugly in log events.
+    if (values.size() >= 3 && values[2].value.find("\r\n"_s) != notFound)
+        event = generateJSONLogEvent(MessageLogEvent { values[1].value, { values[2].value.span8() } }, false);
+    else {
+        StringBuilder builder;
+        for (auto& value : values.subvector(1))
+            builder.append(WTF::makeStringByReplacingAll(value.value, '\"', '\''));
+        event = generateJSONLogEvent(MessageLogEvent { builder.toString(), { } }, false);
+    }
+    emitJSONLogEvent(WTFMove(event));
+}
+#endif // !RELEASE_LOG_DISABLED && (PLATFORM(WPE) || PLATFORM(GTK))
 
 void PeerConnectionBackend::createOffer(RTCOfferOptions&& options, CreateCallback&& callback)
 {
@@ -238,7 +350,7 @@ static void processRemoteTracks(RTCRtpTransceiver& transceiver, PeerConnectionBa
 void PeerConnectionBackend::setLocalDescriptionSucceeded(std::optional<DescriptionStates>&& descriptionStates, std::optional<TransceiverStates>&& transceiverStates, std::unique_ptr<RTCSctpTransportBackend>&& sctpBackend, std::optional<double> maxMessageSize)
 {
     ASSERT(isMainThread());
-    ALWAYS_LOG(LOGIDENTIFIER);
+    ALWAYS_LOG(LOGIDENTIFIER, "Set local description succeeded");
     if (transceiverStates)
         DEBUG_LOG(LOGIDENTIFIER, "Transceiver states: ", *transceiverStates);
     ASSERT(m_setDescriptionCallback);
@@ -411,6 +523,7 @@ void PeerConnectionBackend::setRemoteDescriptionSucceeded(std::optional<Descript
             DEBUG_LOG(LOGIDENTIFIER, "Dispatching ", trackEventList.size(), " track events");
             for (auto& event : trackEventList) {
                 RefPtr track = event->track();
+                ALWAYS_LOG(LOGIDENTIFIER, "Dispatching track event for track ", track->id());
                 m_peerConnection.dispatchEvent(event);
                 if (m_peerConnection.isClosed()) {
                     DEBUG_LOG(LOGIDENTIFIER, "PeerConnection closed while dispatching track events");
@@ -550,20 +663,14 @@ void PeerConnectionBackend::newICECandidate(String&& sdp, String&& mid, unsigned
 
         ASSERT(!m_shouldFilterICECandidates || sdp.contains(".local"_s) || sdp.contains(" srflx "_s) || sdp.contains(" relay "_s));
         auto candidate = RTCIceCandidate::create(WTFMove(sdp), WTFMove(mid), sdpMLineIndex);
+        ALWAYS_LOG(logSiteIdentifier, "Dispatching ICE event for SDP ", candidate->candidate());
         m_peerConnection.dispatchEvent(RTCPeerConnectionIceEvent::create(Event::CanBubble::No, Event::IsCancelable::No, WTFMove(candidate), WTFMove(serverURL)));
     });
 }
 
 void PeerConnectionBackend::newDataChannel(UniqueRef<RTCDataChannelHandler>&& channelHandler, String&& label, RTCDataChannelInit&& channelInit)
 {
-    m_peerConnection.queueTaskKeepingObjectAlive(m_peerConnection, TaskSource::Networking, [connection = Ref { m_peerConnection }, label = WTFMove(label), channelHandler = WTFMove(channelHandler), channelInit = WTFMove(channelInit)]() mutable {
-        if (connection->isClosed())
-            return;
-
-        auto channel = RTCDataChannel::create(*connection->document(), channelHandler.moveToUniquePtr(), WTFMove(label), WTFMove(channelInit), RTCDataChannelState::Open);
-        connection->dispatchEvent(RTCDataChannelEvent::create(eventNames().datachannelEvent, Event::CanBubble::No, Event::IsCancelable::No, Ref { channel }));
-        channel->fireOpenEventIfNeeded();
-    });
+    m_peerConnection.dispatchDataChannelEvent(WTFMove(channelHandler), WTFMove(label), WTFMove(channelInit));
 }
 
 void PeerConnectionBackend::doneGatheringCandidates()
@@ -677,6 +784,48 @@ static String toJSONString(const PeerConnectionBackend::TransceiverStates& trans
     return toJSONArray(transceiverStates)->toJSONString();
 }
 
+String PeerConnectionBackend::generateJSONLogEvent(LogEvent&& logEvent, bool isForGatherLogs)
+{
+    ASCIILiteral type;
+    String event;
+    WTF::switchOn(WTFMove(logEvent), [&](MessageLogEvent&& logEvent) {
+        type = "event"_s;
+        StringBuilder builder;
+        auto strippedMessage = logEvent.message.removeCharacters([](auto character) {
+            return character == '\n';
+        });
+        builder.append("{\"message\":\""_s, strippedMessage, "\",\"payload\":\""_s);
+        if (logEvent.payload)
+            builder.append(WTF::base64EncodeToString(*logEvent.payload));
+        builder.append("\"}"_s);
+        event = builder.toString();
+    }, [&](StatsLogEvent&& logEvent) {
+        type = "stats"_s;
+        event = WTFMove(logEvent);
+    });
+
+    if (isForGatherLogs) {
+        UNUSED_VARIABLE(type);
+        return event;
+    }
+
+    auto timestamp = WTF::WallTime::now().secondsSinceEpoch().microseconds();
+    return makeString("{\"peer-connection\":\""_s, m_logIdentifierString, "\",\"timestamp\":"_s, timestamp, ",\"type\":\""_s, type, "\",\"event\":"_s, event, '}');
+}
+
+void PeerConnectionBackend::emitJSONLogEvent(String&& event)
+{
+#if PLATFORM(WPE) || PLATFORM(GTK)
+    if (!isJSONLogStreamingEnabled())
+        return;
+
+    auto& handler = jsonFileHandler();
+    handler.log(WTFMove(event));
+#else
+    UNUSED_PARAM(event);
+#endif
+}
+
 } // namespace WebCore
 
 namespace WTF {
diff --git a/Source/WebCore/Modules/mediastream/PeerConnectionBackend.h b/Source/WebCore/Modules/mediastream/PeerConnectionBackend.h
index 525d6ac91c..e061502522 100644
--- a/Source/WebCore/Modules/mediastream/PeerConnectionBackend.h
+++ b/Source/WebCore/Modules/mediastream/PeerConnectionBackend.h
@@ -93,6 +93,9 @@ class PeerConnectionBackend
     : public CanMakeWeakPtr<PeerConnectionBackend>
 #if !RELEASE_LOG_DISABLED
     , private LoggerHelper
+#if PLATFORM(WPE) || PLATFORM(GTK)
+    , public Logger::MessageHandlerObserver
+#endif
 #endif
 {
 public:
@@ -172,6 +175,9 @@ public:
     const void* logIdentifier() const final { return m_logIdentifier; }
     ASCIILiteral logClassName() const override { return "PeerConnectionBackend"_s; }
     WTFLogChannel& logChannel() const final;
+#if PLATFORM(WPE) || PLATFORM(GTK)
+    void handleLogMessage(const WTFLogChannel&, WTFLogLevel, Vector<JSONLogValue>&&) final;
+#endif
 #endif
 
     virtual bool isLocalDescriptionSet() const = 0;
@@ -241,6 +247,20 @@ protected:
 
     void validateSDP(const String&) const;
 
+#if PLATFORM(WPE) || PLATFORM(GTK)
+    bool isJSONLogStreamingEnabled() const { return !m_jsonFilePath.isEmpty(); }
+#endif
+
+    struct MessageLogEvent {
+        String message;
+        std::optional<std::span<const uint8_t>> payload;
+    };
+    using StatsLogEvent = String;
+
+    using LogEvent = std::variant<MessageLogEvent, StatsLogEvent>;
+    String generateJSONLogEvent(LogEvent&&, bool isForGatherLogs);
+    void emitJSONLogEvent(String&&);
+
 private:
     virtual void doCreateOffer(RTCOfferOptions&&) = 0;
     virtual void doCreateAnswer(RTCAnswerOptions&&) = 0;
@@ -261,9 +281,14 @@ private:
 #if !RELEASE_LOG_DISABLED
     Ref<const Logger> m_logger;
     const void* m_logIdentifier;
+    String m_logIdentifierString;
 #endif
     bool m_finishedGatheringCandidates { false };
     bool m_isProcessingLocalDescriptionAnswer { false };
+
+#if PLATFORM(WPE) || PLATFORM(GTK)
+    String m_jsonFilePath;
+#endif
 };
 
 inline PeerConnectionBackend::DescriptionStates PeerConnectionBackend::DescriptionStates::isolatedCopy() &&
diff --git a/Source/WebCore/Modules/mediastream/RTCController.cpp b/Source/WebCore/Modules/mediastream/RTCController.cpp
index 8b85a8ab0a..0ef8fb3baf 100644
--- a/Source/WebCore/Modules/mediastream/RTCController.cpp
+++ b/Source/WebCore/Modules/mediastream/RTCController.cpp
@@ -37,6 +37,10 @@
 #include "LibWebRTCUtils.h"
 #endif
 
+#if USE(GSTREAMER_WEBRTC)
+#include "GStreamerWebRTCLogSink.h"
+#endif
+
 #endif
 
 namespace WebCore {
@@ -191,6 +195,18 @@ void RTCController::startGatheringLogs(Document& document, LogCallback&& callbac
         m_logSink->start();
     }
 #endif
+
+#if USE(GSTREAMER_WEBRTC)
+    if (!m_logSink) {
+        m_logSink = makeUnique<GStreamerWebRTCLogSink>([weakThis = WeakPtr { *this }](const auto& logLevel, const auto& logMessage) {
+            ensureOnMainThread([weakThis, logMessage = logMessage.isolatedCopy(), logLevel = logLevel.isolatedCopy()]() mutable {
+                if (auto protectedThis = weakThis.get())
+                    protectedThis->m_callback("backend-logs"_s, WTFMove(logMessage), WTFMove(logLevel), nullptr);
+            });
+        });
+        m_logSink->start();
+    }
+#endif
 }
 
 void RTCController::stopGatheringLogs()
@@ -203,7 +219,7 @@ void RTCController::stopGatheringLogs()
     for (Ref connection : m_peerConnections)
         connection->stopGatheringStatLogs();
 
-    stopLoggingLibWebRTCLogs();
+    stopLoggingWebRTCLogs();
 }
 
 void RTCController::startGatheringStatLogs(RTCPeerConnection& connection)
@@ -214,9 +230,9 @@ void RTCController::startGatheringStatLogs(RTCPeerConnection& connection)
     });
 }
 
-void RTCController::stopLoggingLibWebRTCLogs()
+void RTCController::stopLoggingWebRTCLogs()
 {
-#if USE(LIBWEBRTC)
+#if USE(LIBWEBRTC) || USE(GSTREAMER_WEBRTC)
     if (!m_logSink)
         return;
 
diff --git a/Source/WebCore/Modules/mediastream/RTCController.h b/Source/WebCore/Modules/mediastream/RTCController.h
index 5b58c11920..b61e525c7c 100644
--- a/Source/WebCore/Modules/mediastream/RTCController.h
+++ b/Source/WebCore/Modules/mediastream/RTCController.h
@@ -44,6 +44,10 @@ class WeakPtrImplWithEventTargetData;
 class LibWebRTCLogSink;
 #endif
 
+#if USE(GSTREAMER_WEBRTC)
+class GStreamerWebRTCLogSink;
+#endif
+
 class RTCController : public RefCounted<RTCController>, public CanMakeWeakPtr<RTCController> {
 public:
     static Ref<RTCController> create() { return adoptRef(*new RTCController); }
@@ -72,7 +76,7 @@ private:
     void startGatheringStatLogs(RTCPeerConnection&);
     bool shouldDisableICECandidateFiltering(Document&);
 
-    void stopLoggingLibWebRTCLogs();
+    void stopLoggingWebRTCLogs();
 
     struct PeerConnectionOrigin {
         Ref<SecurityOrigin> topOrigin;
@@ -87,6 +91,9 @@ private:
 #if USE(LIBWEBRTC)
     std::unique_ptr<LibWebRTCLogSink> m_logSink;
 #endif
+#if USE(GSTREAMER_WEBRTC)
+    std::unique_ptr<GStreamerWebRTCLogSink> m_logSink;
+#endif
 #endif // ENABLE(WEB_RTC)
 };
 
diff --git a/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp b/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp
index dc193d6266..9e2f390a05 100644
--- a/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp
+++ b/Source/WebCore/Modules/mediastream/RTCPeerConnection.cpp
@@ -54,6 +54,7 @@
 #include "RTCConfiguration.h"
 #include "RTCController.h"
 #include "RTCDataChannel.h"
+#include "RTCDataChannelEvent.h"
 #include "RTCDtlsTransport.h"
 #include "RTCDtlsTransportBackend.h"
 #include "RTCIceCandidate.h"
@@ -185,10 +186,50 @@ ExceptionOr<void> RTCPeerConnection::removeTrack(RTCRtpSender& sender)
     return { };
 }
 
-ExceptionOr<Ref<RTCRtpTransceiver>> RTCPeerConnection::addTransceiver(AddTransceiverTrackOrKind&& withTrack, const RTCRtpTransceiverInit& init)
+static bool isAudioTransceiver(const RTCPeerConnection::AddTransceiverTrackOrKind& withTrack)
+{
+    return switchOn(withTrack, [] (const String& type) -> bool {
+        return type == "audio"_s;
+    }, [] (const RefPtr<MediaStreamTrack>& track) -> bool {
+        return track->isAudio();
+    });
+}
+
+// https://w3c.github.io/webrtc-pc/#dfn-addtransceiver-sendencodings-validation-steps
+static std::optional<Exception> validateSendEncodings(Vector<RTCRtpEncodingParameters>& encodings, bool isAudio)
+{
+    size_t encodingIndex = 0;
+    bool hasAnyScaleResolutionDownBy = !isAudio && WTF::anyOf(encodings, [] (auto& encoding){ return !!encoding.scaleResolutionDownBy; });
+    for (auto& encoding: encodings) {
+        // FIXME: Validate rid and codec
+        if (isAudio) {
+            encoding.scaleResolutionDownBy = { };
+            encoding.maxFramerate = { };
+            continue;
+        }
+        if (encoding.scaleResolutionDownBy && *encoding.scaleResolutionDownBy < 1)
+            return Exception { ExceptionCode::RangeError, "scaleResolutionDownBy is below 1"_s };
+
+        if (encoding.maxFramerate && *encoding.maxFramerate <= 0)
+            return Exception { ExceptionCode::RangeError, "maxFrameRate is below or equal 0"_s };
+
+        if (hasAnyScaleResolutionDownBy) {
+            if (!encoding.scaleResolutionDownBy)
+                encoding.scaleResolutionDownBy = 1;
+        } else
+            encoding.scaleResolutionDownBy = 1 << (encodings.size() - ++encodingIndex);
+    }
+
+    return { };
+}
+
+ExceptionOr<Ref<RTCRtpTransceiver>> RTCPeerConnection::addTransceiver(AddTransceiverTrackOrKind&& withTrack, RTCRtpTransceiverInit&& init)
 {
     INFO_LOG(LOGIDENTIFIER);
 
+    if (auto exception = validateSendEncodings(init.sendEncodings, isAudioTransceiver(withTrack)))
+        return WTFMove(*exception);
+
     if (std::holds_alternative<String>(withTrack)) {
         const String& kind = std::get<String>(withTrack);
         if (kind != "audio"_s && kind != "video"_s)
@@ -927,6 +968,19 @@ void RTCPeerConnection::dispatchEvent(Event& event)
     EventTarget::dispatchEvent(event);
 }
 
+void RTCPeerConnection::dispatchDataChannelEvent(UniqueRef<RTCDataChannelHandler>&& channelHandler, String&& label, RTCDataChannelInit&& channelInit)
+{
+    queueTaskKeepingObjectAlive(*this, TaskSource::Networking, [this, label = WTFMove(label), channelHandler = WTFMove(channelHandler), channelInit = WTFMove(channelInit)]() mutable {
+        if (isClosed())
+            return;
+
+        auto channel = RTCDataChannel::create(*document(), channelHandler.moveToUniquePtr(), WTFMove(label), WTFMove(channelInit), RTCDataChannelState::Open);
+        ALWAYS_LOG(LOGIDENTIFIER, makeString("Dispatching data-channel event for channel "_s, channel->label()));
+        dispatchEvent(RTCDataChannelEvent::create(eventNames().datachannelEvent, Event::CanBubble::No, Event::IsCancelable::No, Ref { channel }));
+        channel->fireOpenEventIfNeeded();
+    });
+}
+
 static inline ExceptionOr<PeerConnectionBackend::CertificateInformation> certificateTypeFromAlgorithmIdentifier(JSC::JSGlobalObject& lexicalGlobalObject, RTCPeerConnection::AlgorithmIdentifier&& algorithmIdentifier)
 {
     if (std::holds_alternative<String>(algorithmIdentifier))
diff --git a/Source/WebCore/Modules/mediastream/RTCPeerConnection.h b/Source/WebCore/Modules/mediastream/RTCPeerConnection.h
index 698d56e3eb..9d78be0f49 100644
--- a/Source/WebCore/Modules/mediastream/RTCPeerConnection.h
+++ b/Source/WebCore/Modules/mediastream/RTCPeerConnection.h
@@ -152,7 +152,7 @@ public:
     ExceptionOr<void> removeTrack(RTCRtpSender&);
 
     using AddTransceiverTrackOrKind = std::variant<RefPtr<MediaStreamTrack>, String>;
-    ExceptionOr<Ref<RTCRtpTransceiver>> addTransceiver(AddTransceiverTrackOrKind&&, const RTCRtpTransceiverInit&);
+    ExceptionOr<Ref<RTCRtpTransceiver>> addTransceiver(AddTransceiverTrackOrKind&&, RTCRtpTransceiverInit&&);
 
     // 6.1 Peer-to-peer data API
     ExceptionOr<Ref<RTCDataChannel>> createDataChannel(String&&, RTCDataChannelInit&&);
@@ -202,6 +202,8 @@ public:
     // EventTarget implementation.
     void dispatchEvent(Event&) final;
 
+    void dispatchDataChannelEvent(UniqueRef<RTCDataChannelHandler>&&, String&& label, RTCDataChannelInit&&);
+
 #if !RELEASE_LOG_DISABLED
     const Logger& logger() const final { return m_logger.get(); }
     const void* logIdentifier() const final { return m_logIdentifier; }
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.h b/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.h
index 574e0352a2..5eea694e42 100644
--- a/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.h
+++ b/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.h
@@ -43,9 +43,9 @@ struct RTCRtpEncodingParameters : RTCRtpCodingParameters {
     bool active { false};
     RTCPriorityType priority { RTCPriorityType::Low };
     std::optional<RTCPriorityType> networkPriority;
-    unsigned long maxBitrate { 0 };
-    unsigned long maxFramerate { 0 };
-    double scaleResolutionDownBy { 1 };
+    std::optional<unsigned long> maxBitrate;
+    std::optional<unsigned long> maxFramerate;
+    std::optional<double> scaleResolutionDownBy;
 };
 
 } // namespace WebCore
diff --git a/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.idl b/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.idl
index 638c40ed5c..8663d12f5d 100644
--- a/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.idl
+++ b/Source/WebCore/Modules/mediastream/RTCRtpEncodingParameters.idl
@@ -38,5 +38,5 @@
     RTCPriorityType networkPriority;
     unsigned long maxBitrate;
     unsigned long maxFramerate;
-    double scaleResolutionDownBy = 1;
+    double scaleResolutionDownBy;
 };
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp
index f915359e92..deb6281f40 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.cpp
@@ -100,6 +100,11 @@ bool GStreamerMediaEndpoint::initializePipeline()
     m_pipeline = gst_pipeline_new(pipelineName.ascii().data());
     registerActivePipeline(m_pipeline);
 
+    auto clock = adoptGRef(gst_system_clock_obtain());
+    gst_pipeline_use_clock(GST_PIPELINE(m_pipeline.get()), clock.get());
+    gst_element_set_base_time(m_pipeline.get(), 0);
+    gst_element_set_start_time(m_pipeline.get(), GST_CLOCK_TIME_NONE);
+
     connectSimpleBusMessageCallback(m_pipeline.get(), [this](GstMessage* message) {
         handleMessage(message);
     });
@@ -109,6 +114,9 @@ bool GStreamerMediaEndpoint::initializePipeline()
     if (!m_webrtcBin)
         return false;
 
+    // Lower default latency from 200ms to 40ms.
+    g_object_set(m_webrtcBin.get(), "latency", 40, nullptr);
+
     auto rtpBin = adoptGRef(gst_bin_get_by_name(GST_BIN_CAST(m_webrtcBin.get()), "rtpbin"));
     if (!rtpBin) {
         GST_ERROR_OBJECT(m_webrtcBin.get(), "rtpbin not found. Please check that your GStreamer installation has the rtp and rtpmanager plugins.");
@@ -118,13 +126,15 @@ bool GStreamerMediaEndpoint::initializePipeline()
     if (gstObjectHasProperty(rtpBin.get(), "add-reference-timestamp-meta"))
         g_object_set(rtpBin.get(), "add-reference-timestamp-meta", TRUE, nullptr);
 
-    g_signal_connect(GST_BIN_CAST(m_webrtcBin.get()), "deep-element-added", G_CALLBACK(+[](GstBin*, GstBin*, GstElement* element, gpointer) {
-        GUniquePtr<char> elementName(gst_element_get_name(element));
+    g_signal_connect(rtpBin.get(), "new-jitterbuffer", G_CALLBACK(+[](GstElement*, GstElement* element, unsigned, unsigned ssrc, GStreamerMediaEndpoint* endPoint) {
 
         // Workaround for https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/914
-        if (g_str_has_prefix(elementName.get(), "rtpjitterbuffer"))
-            g_object_set(element, "rtx-next-seqnum", FALSE, nullptr);
+        g_object_set(element, "rtx-next-seqnum", FALSE, nullptr);
 
+        GST_DEBUG_OBJECT(endPoint->pipeline(), "Creating incoming track processor for SSRC %u", ssrc);
+        endPoint->m_trackProcessors.ensure(ssrc, [] {
+            return GStreamerIncomingTrackProcessor::create();
+        });
     }), this);
 
     m_statsCollector->setElement(m_webrtcBin.get());
@@ -297,7 +307,7 @@ bool GStreamerMediaEndpoint::setConfiguration(MediaEndpointConfiguration& config
     // WIP: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/302
     GST_FIXME("%zu custom certificates not propagated to webrtcbin", configuration.certificates.size());
 
-    gst_element_set_state(m_pipeline.get(), GST_STATE_PLAYING);
+    gst_element_set_state(m_pipeline.get(), GST_STATE_READY);
     GST_DEBUG_OBJECT(m_pipeline.get(), "End-point ready");
     return true;
 }
@@ -427,7 +437,7 @@ Vector<String> getMediaStreamIdsFromSDPMedia(const GstSDPMedia& media)
         }
     }
     Vector<String> mediaStreamIds;
-    mediaStreamIds.reserveCapacity(mediaStreamIdsSet.size());
+    mediaStreamIds.reserveInitialCapacity(mediaStreamIdsSet.size());
     for (const auto& msid : mediaStreamIdsSet)
         mediaStreamIds.append(msid);
     return mediaStreamIds;
@@ -453,6 +463,9 @@ static std::optional<GStreamerMediaEndpointTransceiverState> toGStreamerMediaEnd
     GST_TRACE_OBJECT(webrtcBin, "Receiver = %" GST_PTR_FORMAT ", direction = %s, mlineindex = %u, mid = %s", receiver.get(), desc.get(), mLineIndex, GST_STR_NULL(mid.get()));
 #endif
 
+    if (UNLIKELY(!mid))
+        return { };
+
     GUniqueOutPtr<GstWebRTCSessionDescription> localDescription, remoteDescription;
     g_object_get(webrtcBin, "local-description", &localDescription.outPtr(), "remote-description", &remoteDescription.outPtr(), nullptr);
 
@@ -474,9 +487,6 @@ static std::optional<GStreamerMediaEndpointTransceiverState> toGStreamerMediaEnd
             streamIds = getMediaStreamIdsFromSDPMedia(*media);
     }
 
-    if (UNLIKELY(!mid))
-        return { };
-
     return { { String::fromUTF8(mid.get()), WTFMove(streamIds), { toRTCRtpTransceiverDirection(direction) } } };
 }
 
@@ -498,6 +508,7 @@ static Vector<GStreamerMediaEndpointTransceiverState> transceiverStatesFromWebRT
         states.append(WTFMove(*state));
     }
 
+    states.shrinkToFit();
     return states;
 }
 
@@ -568,7 +579,70 @@ void GStreamerMediaEndpoint::doSetLocalDescription(const RTCSessionDescription*
     String remoteDescriptionSdp = remoteDescription ? remoteDescription->sdp() : emptyString();
     std::optional<RTCSdpType> remoteDescriptionSdpType = remoteDescription ? std::make_optional(remoteDescription->type()) : std::nullopt;
 
-    setDescription(initialDescription.get(), DescriptionType::Local, [](const auto&) { }, [protectedThis = Ref(*this), this, initialSDP = WTFMove(initialSDP), remoteDescriptionSdp = WTFMove(remoteDescriptionSdp), remoteDescriptionSdpType = WTFMove(remoteDescriptionSdpType)](const GstSDPMessage& message) {
+    if (!initialDescription->sdp().isEmpty()) {
+        GUniqueOutPtr<GstSDPMessage> sdpMessage;
+        if (gst_sdp_message_new_from_text(initialDescription->sdp().utf8().data(), &sdpMessage.outPtr()) != GST_SDP_OK) {
+            m_peerConnectionBackend.setLocalDescriptionFailed(Exception { ExceptionCode::OperationError, "Invalid SDP"_s });
+            return;
+        }
+
+        // Make sure each outgoing media source is configured using the proposed codec and linked to webrtcbin.
+        unsigned totalMedias = gst_sdp_message_medias_len(sdpMessage.get());
+        for (unsigned i = 0; i < totalMedias; i++) {
+            const auto media = gst_sdp_message_get_media(sdpMessage.get(), i);
+            auto mediaType = StringView::fromLatin1(gst_sdp_media_get_media(media));
+            RealtimeMediaSource::Type sourceType;
+            if (mediaType == "audio"_s)
+                sourceType = RealtimeMediaSource::Type::Audio;
+            else if (mediaType == "video"_s)
+                sourceType = RealtimeMediaSource::Type::Video;
+            else
+                continue;
+
+            auto msid = String::fromUTF8(gst_sdp_media_get_attribute_val(media, "msid"));
+            if (msid.isEmpty())
+                continue;
+
+            GST_DEBUG_OBJECT(m_pipeline.get(), "Looking-up outgoing source with msid %s", msid.utf8().data());
+            m_unlinkedOutgoingSources.removeFirstMatching([&](auto& source) -> bool {
+                auto track = source->track();
+                if (UNLIKELY(!track))
+                    return false;
+                if (track->type() != sourceType)
+                    return false;
+
+                auto sourceMsid = makeString(source->mediaStreamID(), ' ', track->id());
+                if (sourceMsid != msid)
+                    return false;
+
+                auto allowedCaps = capsFromSDPMedia(media);
+                source->configure(WTFMove(allowedCaps));
+                if (!source->pad()) {
+                    auto rtpCaps = source->rtpCaps();
+                    auto sinkPad = requestPad(rtpCaps, source->mediaStreamID());
+                    source->setSinkPad(WTFMove(sinkPad));
+                }
+
+                auto& sinkPad = source->pad();
+                if (UNLIKELY(gst_pad_is_linked(sinkPad.get()))) {
+                    ASSERT_WITH_MESSAGE(gst_pad_is_linked(sinkPad.get()), "RealtimeMediaSource already linked.");
+                    return true;
+                }
+
+                source->link();
+                callOnMainThreadAndWait([&] {
+                    source->start();
+                });
+                return true;
+            });
+        }
+    }
+
+    if (!m_unlinkedOutgoingSources.isEmpty())
+        GST_WARNING_OBJECT(m_pipeline.get(), "Unlinked outgoing sources lingering");
+    gst_element_set_state(m_pipeline.get(), GST_STATE_PLAYING);
+
+    setDescription(initialDescription.get(), DescriptionType::Local, [protectedThis = Ref(*this), this, initialSDP = WTFMove(initialSDP), remoteDescriptionSdp = WTFMove(remoteDescriptionSdp), remoteDescriptionSdpType = WTFMove(remoteDescriptionSdpType)](const GstSDPMessage& message) {
         if (protectedThis->isStopped())
             return;
 
@@ -650,21 +724,13 @@ void GStreamerMediaEndpoint::doSetRemoteDescription(const RTCSessionDescription&
     String localDescriptionSdp = localDescription ? localDescription->sdp() : emptyString();
     std::optional<RTCSdpType> localDescriptionSdpType = localDescription ? std::make_optional(localDescription->type()) : std::nullopt;
 
-    setDescription(&description, DescriptionType::Remote, [this](const auto& message) {
-        unsigned numberOfMedias = gst_sdp_message_medias_len(&message);
-        for (unsigned i = 0; i < numberOfMedias; i++) {
-            const auto* media = gst_sdp_message_get_media(&message, i);
-            if (UNLIKELY(!media))
-                continue;
-            setTransceiverCodecPreferences(*media, i);
-        }
-    }, [protectedThis = Ref(*this), this, initialSDP = WTFMove(initialSDP), localDescriptionSdp = WTFMove(localDescriptionSdp), localDescriptionSdpType = WTFMove(localDescriptionSdpType)](const GstSDPMessage& message) {
+    setDescription(&description, DescriptionType::Remote, [protectedThis = Ref(*this), this, initialSDP = WTFMove(initialSDP), localDescriptionSdp = WTFMove(localDescriptionSdp), localDescriptionSdpType = WTFMove(localDescriptionSdpType)](const GstSDPMessage& message) {
         if (protectedThis->isStopped())
             return;
 
-        processSDPMessage(&message, [this](unsigned, const char* mid, const auto* media) {
+        processSDPMessage(&message, [this](unsigned, StringView mid, const auto* media) {
             const char* mediaType = gst_sdp_media_get_media(media);
-            m_mediaForMid.set(String::fromLatin1(mid), g_str_equal(mediaType, "audio") ? RealtimeMediaSource::Type::Audio : RealtimeMediaSource::Type::Video);
+            m_mediaForMid.set(mid.toString(), g_str_equal(mediaType, "audio") ? RealtimeMediaSource::Type::Audio : RealtimeMediaSource::Type::Video);
 
             // https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1907
             if (sdpMediaHasAttributeKey(media, "ice-lite")) {
@@ -733,13 +799,13 @@ struct SetDescriptionCallData {
     Function<void(const GstSDPMessage&)> successCallback;
     Function<void(const GError*)> failureCallback;
     GUniqueOutPtr<GstSDPMessage> message;
-    const char* typeString;
+    ASCIILiteral typeString;
     GRefPtr<GstElement> webrtcBin;
 };
 
 WEBKIT_DEFINE_ASYNC_DATA_STRUCT(SetDescriptionCallData)
 
-void GStreamerMediaEndpoint::setDescription(const RTCSessionDescription* description, DescriptionType descriptionType, Function<void(const GstSDPMessage&)>&& preProcessCallback, Function<void(const GstSDPMessage&)>&& successCallback, Function<void(const GError*)>&& failureCallback)
+void GStreamerMediaEndpoint::setDescription(const RTCSessionDescription* description, DescriptionType descriptionType, Function<void(const GstSDPMessage&)>&& successCallback, Function<void(const GError*)>&& failureCallback)
 {
     GST_DEBUG_OBJECT(m_webrtcBin.get(), "Setting %s description", descriptionType == DescriptionType::Local ? "local" : "remote");
 
@@ -764,7 +830,6 @@ void GStreamerMediaEndpoint::setDescription(const RTCSessionDescription* descrip
             failureCallback(&error);
             return;
         }
-        preProcessCallback(*message.get());
     } else if (gst_sdp_message_new(&message.outPtr()) != GST_SDP_OK) {
         failureCallback(nullptr);
         return;
@@ -773,11 +838,12 @@ void GStreamerMediaEndpoint::setDescription(const RTCSessionDescription* descrip
     auto type = toSessionDescriptionType(sdpType);
     auto typeString = descriptionType == DescriptionType::Local ? "local"_s : "remote"_s;
     GST_DEBUG_OBJECT(m_pipeline.get(), "Creating %s session for SDP %s", typeString.characters(), gst_webrtc_sdp_type_to_string(type));
+    auto signalName = makeString("set-"_s, typeString, "-description"_s);
 
     auto* data = createSetDescriptionCallData();
     data->successCallback = WTFMove(successCallback);
     data->failureCallback = WTFMove(failureCallback);
-    data->typeString = typeString.characters();
+    data->typeString = WTFMove(typeString);
     data->webrtcBin = m_webrtcBin;
     gst_sdp_message_copy(message.get(), &data->message.outPtr());
 
@@ -787,13 +853,12 @@ void GStreamerMediaEndpoint::setDescription(const RTCSessionDescription* descrip
 #endif
 
     GUniquePtr<GstWebRTCSessionDescription> sessionDescription(gst_webrtc_session_description_new(type, message.release()));
-    auto signalName = makeString("set-"_s, typeString, "-description"_s);
     g_signal_emit_by_name(m_webrtcBin.get(), signalName.ascii().data(), sessionDescription.get(), gst_promise_new_with_change_func([](GstPromise* rawPromise, gpointer userData) {
         auto* data = static_cast<SetDescriptionCallData*>(userData);
         auto promise = adoptGRef(rawPromise);
         auto result = gst_promise_wait(promise.get());
         const auto* reply = gst_promise_get_reply(promise.get());
-        GST_DEBUG_OBJECT(data->webrtcBin.get(), "%s description reply: %u %" GST_PTR_FORMAT, data->typeString, result, reply);
+        GST_DEBUG_OBJECT(data->webrtcBin.get(), "%s description reply: %u %" GST_PTR_FORMAT, data->typeString.characters(), result, reply);
         if (result != GST_PROMISE_RESULT_REPLIED || (reply && gst_structure_has_field(reply, "error"))) {
             std::optional<GUniquePtr<GError>> errorHolder;
             if (reply) {
@@ -808,13 +873,15 @@ void GStreamerMediaEndpoint::setDescription(const RTCSessionDescription* descrip
             return;
         }
 
-        callOnMainThread([successCallback = WTFMove(data->successCallback), message = GUniquePtr<GstSDPMessage>(data->message.release())] {
+        if (!data->successCallback)
+            return;
+        callOnMainThread([successCallback = WTFMove(data->successCallback), message = GUniquePtr<GstSDPMessage>(data->message.release())]() mutable {
             successCallback(*message.get());
         });
     }, data, reinterpret_cast<GDestroyNotify>(destroySetDescriptionCallData)));
 }
 
-void GStreamerMediaEndpoint::processSDPMessage(const GstSDPMessage* message, Function<void(unsigned, const char*, const GstSDPMedia*)> mediaCallback)
+void GStreamerMediaEndpoint::processSDPMessage(const GstSDPMessage* message, Function<void(unsigned, StringView, const GstSDPMedia*)> mediaCallback)
 {
     unsigned totalMedias = gst_sdp_message_medias_len(message);
     for (unsigned mediaIndex = 0; mediaIndex < totalMedias; mediaIndex++) {
@@ -845,52 +912,20 @@ void GStreamerMediaEndpoint::processSDPMessage(const GstSDPMessage* message, Fun
             continue;
         }
 
-        mediaCallback(mediaIndex, mid, media);
+        mediaCallback(mediaIndex, StringView::fromLatin1(mid), media);
     }
 }
 
-void GStreamerMediaEndpoint::configureAndLinkSource(RealtimeOutgoingMediaSourceGStreamer& source, bool shouldLookForUnusedPads)
+void GStreamerMediaEndpoint::configureSource(RealtimeOutgoingMediaSourceGStreamer& source, GUniquePtr<GstStructure>&& parameters)
 {
-    GST_DEBUG_OBJECT(m_pipeline.get(), "Configuring and linking outgoing source %" GST_PTR_FORMAT, source.bin().get());
-    if (!source.pad() && shouldLookForUnusedPads) {
-        auto allowedCaps = source.allowedCaps();
-        GST_DEBUG_OBJECT(m_pipeline.get(), "Looking for unused pad matching %" GST_PTR_FORMAT, allowedCaps.get());
-        for (auto pad : GstIteratorAdaptor<GstPad>(GUniquePtr<GstIterator>(gst_element_iterate_sink_pads(m_webrtcBin.get())))) {
-            if (gst_pad_is_linked(pad))
-                continue;
-
-            GRefPtr<GstWebRTCRTPTransceiver> transceiver;
-            g_object_get(pad, "transceiver", &transceiver.outPtr(), nullptr);
-
-            if (!transceiver)
-                continue;
-
-            GRefPtr<GstCaps> codecPreferences;
-            g_object_get(transceiver.get(), "codec-preferences", &codecPreferences.outPtr(), nullptr);
-            if (codecPreferences && gst_caps_is_always_compatible(codecPreferences.get(), allowedCaps.get())) {
-                source.setSinkPad(GRefPtr<GstPad>(pad));
-                break;
-            }
-        }
-    }
-
-    if (!source.pad())
-        source.setSinkPad(requestPad(source.allowedCaps(), source.mediaStreamID()));
-
-    auto& sinkPad = source.pad();
-    ASSERT(!gst_pad_is_linked(sinkPad.get()));
-    if (gst_pad_is_linked(sinkPad.get())) {
-        WTFLogAlways("RealtimeMediaSource already linked, this should not happen.");
-        return;
-    }
+    GST_DEBUG_OBJECT(m_pipeline.get(), "Configuring outgoing source %" GST_PTR_FORMAT, source.bin().get());
+    source.setInitialParameters(WTFMove(parameters));
 
     auto sourceBin = source.bin();
     gst_bin_add(GST_BIN_CAST(m_pipeline.get()), sourceBin.get());
-    source.link();
 
 #ifndef GST_DISABLE_GST_DEBUG
-    GUniquePtr<char> padName(gst_pad_get_name(sinkPad.get()));
-    auto dotFileName = makeString(span(GST_OBJECT_NAME(m_pipeline.get())), ".outgoing-"_s, span(padName.get()));
+    auto dotFileName = makeString(span(GST_OBJECT_NAME(m_pipeline.get())), ".outgoing"_s);
     GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_pipeline.get()), GST_DEBUG_GRAPH_SHOW_ALL, dotFileName.utf8().data());
 #endif
 }
@@ -924,12 +959,47 @@ GRefPtr<GstPad> GStreamerMediaEndpoint::requestPad(const GRefPtr<GstCaps>& allow
         i++;
     }
 
+    // Update codec preferences on the first matching un-associated transceiver, otherwise a new one
+    // would be created, leading to extra m-line in SDP. This is a requirement since:
+    // https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commit/09d870a39c28428dc1c8ed77006bf8ad6d3f005e
+    // which is included in our SDKs.
+    auto kind = webrtcKindFromCaps(caps);
+    GRefPtr<GArray> transceivers;
+    g_signal_emit_by_name(m_webrtcBin.get(), "get-transceivers", &transceivers.outPtr());
+    if (transceivers && transceivers->len) {
+        for (unsigned i = 0; i < transceivers->len; i++) {
+            GstWebRTCRTPTransceiver* transceiver = g_array_index(transceivers.get(), GstWebRTCRTPTransceiver*, i);
+            GstWebRTCKind transceiverKind;
+            g_object_get(transceiver, "kind", &transceiverKind, nullptr);
+            if (transceiverKind != kind)
+                continue;
+
+            bool isTransceiverAssociated = false;
+            for (auto pad : GstIteratorAdaptor<GstPad>(GUniquePtr<GstIterator>(gst_element_iterate_sink_pads(m_webrtcBin.get())))) {
+                GRefPtr<GstWebRTCRTPTransceiver> padTransceiver;
+                g_object_get(pad, "transceiver", &padTransceiver.outPtr(), nullptr);
+                if (padTransceiver.get() == transceiver) {
+                    isTransceiverAssociated = true;
+                    break;
+                }
+            }
+            if (isTransceiverAssociated)
+                continue;
+
+            g_object_set(transceiver, "codec-preferences", caps.get(), nullptr);
+            GST_DEBUG_OBJECT(m_pipeline.get(), "Expecting transceiver %" GST_PTR_FORMAT " to associate to new webrtc sink pad", transceiver);
+            break;
+        }
+    }
+
     auto padTemplate = gst_element_get_pad_template(m_webrtcBin.get(), "sink_%u");
     auto sinkPad = adoptGRef(gst_element_request_pad(m_webrtcBin.get(), padTemplate, nullptr, caps.get()));
 
-    GST_DEBUG_OBJECT(m_pipeline.get(), "Setting msid to %s on sink pad %" GST_PTR_FORMAT, mediaStreamID.ascii().data(), sinkPad.get());
-    if (gstObjectHasProperty(sinkPad.get(), "msid"))
-        g_object_set(sinkPad.get(), "msid", mediaStreamID.ascii().data(), nullptr);
+    if (!mediaStreamID.isEmpty()) {
+        GST_DEBUG_OBJECT(m_pipeline.get(), "Setting msid to %s on sink pad %" GST_PTR_FORMAT, mediaStreamID.ascii().data(), sinkPad.get());
+        if (gstObjectHasProperty(sinkPad.get(), "msid"))
+            g_object_set(sinkPad.get(), "msid", mediaStreamID.ascii().data(), nullptr);
+    }
 
     GRefPtr<GstWebRTCRTPTransceiver> transceiver;
     g_object_get(sinkPad.get(), "transceiver", &transceiver.outPtr(), nullptr);
@@ -954,42 +1024,38 @@ std::optional<bool> GStreamerMediaEndpoint::isIceGatheringComplete(const String&
     return true;
 }
 
-bool GStreamerMediaEndpoint::addTrack(GStreamerRtpSenderBackend& sender, MediaStreamTrack& track, const FixedVector<String>& mediaStreamIds)
+ExceptionOr<std::unique_ptr<GStreamerRtpSenderBackend>> GStreamerMediaEndpoint::addTrack(MediaStreamTrack& track, const FixedVector<String>& mediaStreamIds)
 {
     GStreamerRtpSenderBackend::Source source;
-    GRefPtr<GstWebRTCRTPSender> rtcSender;
     auto mediaStreamId = mediaStreamIds.isEmpty() ? emptyString() : mediaStreamIds[0];
 
+    String kind;
+    RTCRtpTransceiverInit init;
+    init.direction = RTCRtpTransceiverDirection::Sendrecv;
+
     GST_DEBUG_OBJECT(m_pipeline.get(), "Adding source for track %s", track.id().utf8().data());
     if (track.privateTrack().isAudio()) {
         GST_DEBUG_OBJECT(m_pipeline.get(), "Adding outgoing audio source");
         auto audioSource = RealtimeOutgoingAudioSourceGStreamer::create(m_ssrcGenerator, mediaStreamId, track);
-        configureAndLinkSource(audioSource);
-
-        rtcSender = audioSource->sender();
         source = WTFMove(audioSource);
+        kind = "audio"_s;
     } else {
         ASSERT(track.privateTrack().isVideo());
         GST_DEBUG_OBJECT(m_pipeline.get(), "Adding outgoing video source");
         auto videoSource = RealtimeOutgoingVideoSourceGStreamer::create(m_ssrcGenerator, mediaStreamId, track);
-        configureAndLinkSource(videoSource);
-
-        rtcSender = videoSource->sender();
         source = WTFMove(videoSource);
+        kind = "video"_s;
     }
 
-    sender.setSource(WTFMove(source));
-
-    if (sender.rtcSender()) {
-        GST_DEBUG_OBJECT(m_pipeline.get(), "Already has a sender.");
-        return true;
-    }
-
-    sender.setRTCSender(WTFMove(rtcSender));
+    auto backendsResult = createTransceiverBackends(kind, init, WTFMove(source), GStreamerPeerConnectionBackend::IgnoreNegotiationNeededFlag::No);
+    if (backendsResult.hasException())
+        return backendsResult.releaseException();
 
+    auto backends = backendsResult.releaseReturnValue();
+    auto senderBackend = WTFMove(backends.senderBackend);
     GST_DEBUG_OBJECT(m_pipeline.get(), "Sender configured");
     onNegotiationNeeded();
-    return true;
+    return senderBackend;
 }
 
 void GStreamerMediaEndpoint::removeTrack(GStreamerRtpSenderBackend& sender)
@@ -1027,6 +1093,7 @@ void GStreamerMediaEndpoint::initiate(bool isInitiator, GstStructure* rawOptions
     auto* holder = createGStreamerMediaEndpointHolder();
     holder->endPoint = this;
     holder->sdpType = isInitiator ? RTCSdpType::Offer : RTCSdpType::Answer;
+
     g_signal_emit_by_name(m_webrtcBin.get(), signalName.ascii().data(), options.get(), gst_promise_new_with_change_func([](GstPromise* rawPromise, gpointer userData) {
         auto* holder = static_cast<GStreamerMediaEndpointHolder*>(userData);
         auto promise = adoptGRef(rawPromise);
@@ -1129,7 +1196,7 @@ String GStreamerMediaEndpoint::trackIdFromSDPMedia(const GstSDPMedia& media)
     if (components.size() < 2)
         return emptyString();
 
-    return String::fromUTF8(components[1].utf8().span());
+    return components[1];
 }
 
 void GStreamerMediaEndpoint::connectIncomingTrack(WebRTCTrackData& data)
@@ -1140,8 +1207,9 @@ void GStreamerMediaEndpoint::connectIncomingTrack(WebRTCTrackData& data)
     g_object_get(m_webrtcBin.get(), "remote-description", &description.outPtr(), nullptr);
 
     GRefPtr<GstWebRTCRTPTransceiver> rtcTransceiver(data.transceiver);
-    auto* transceiver = m_peerConnectionBackend.existingTransceiver([&](auto& transceiverBackend) {
-        return rtcTransceiver.get() == transceiverBackend.rtcTransceiver();
+    auto trackId = data.trackId;
+    auto transceiver = m_peerConnectionBackend.existingTransceiver([&](auto& backend) -> bool {
+        return backend.rtcTransceiver() == rtcTransceiver.get();
     });
     if (!transceiver) {
         unsigned mLineIndex;
@@ -1151,7 +1219,7 @@ void GStreamerMediaEndpoint::connectIncomingTrack(WebRTCTrackData& data)
             GST_WARNING_OBJECT(m_pipeline.get(), "SDP media for transceiver %u not found, skipping incoming track setup", mLineIndex);
             return;
         }
-        transceiver = &m_peerConnectionBackend.newRemoteTransceiver(makeUnique<GStreamerRtpTransceiverBackend>(WTFMove(rtcTransceiver)), data.type, trackIdFromSDPMedia(*media));
+        transceiver = &m_peerConnectionBackend.newRemoteTransceiver(makeUnique<GStreamerRtpTransceiverBackend>(WTFMove(rtcTransceiver)), data.type, trackId.isolatedCopy());
     }
 
     auto mediaStreamBin = adoptGRef(gst_bin_get_by_name(GST_BIN_CAST(m_pipeline.get()), data.mediaStreamBinName.ascii().data()));
@@ -1167,7 +1235,7 @@ void GStreamerMediaEndpoint::connectIncomingTrack(WebRTCTrackData& data)
             return;
     }
 
-    m_pendingIncomingMediaStreamIDs.append(data.mediaStreamId);
+    m_pendingIncomingTracks.append(&track.privateTrack());
 
     unsigned totalExpectedMediaTracks = 0;
     for (unsigned i = 0; i < gst_sdp_message_medias_len(description->sdp); i++) {
@@ -1178,30 +1246,36 @@ void GStreamerMediaEndpoint::connectIncomingTrack(WebRTCTrackData& data)
     }
 
     GST_DEBUG_OBJECT(m_pipeline.get(), "Expecting %u media tracks", totalExpectedMediaTracks);
-    if (m_pendingIncomingMediaStreamIDs.size() < totalExpectedMediaTracks) {
-        GST_DEBUG_OBJECT(m_pipeline.get(), "Only %zu track(s) received so far", m_pendingIncomingMediaStreamIDs.size());
+    if (m_pendingIncomingTracks.size() < totalExpectedMediaTracks) {
+        GST_DEBUG_OBJECT(m_pipeline.get(), "Only %zu track(s) received so far", m_pendingIncomingTracks.size());
         return;
     }
 
-    for (auto& mediaStreamID : m_pendingIncomingMediaStreamIDs) {
-        auto& mediaStream = mediaStreamFromRTCStream(mediaStreamID);
-        GST_DEBUG_OBJECT(m_pipeline.get(), "Incoming stream %s ready, notifying observers", mediaStreamID.ascii().data());
-        mediaStream.privateStream().forEachTrack([](auto& track) {
-            GST_DEBUG("Incoming stream has track %s", track.id().ascii().data());
-            track.dataFlowStarted();
-        });
+    GST_DEBUG_OBJECT(m_pipeline.get(), "Incoming stream %s ready, notifying observers", data.mediaStreamId.ascii().data());
+    for (auto& track : m_pendingIncomingTracks) {
+        GST_DEBUG_OBJECT(m_pipeline.get(), "Incoming stream has track %s", track->id().utf8().data());
+        track->dataFlowStarted();
+        track->source().setMuted(false);
     }
 
-    m_pendingIncomingMediaStreamIDs.clear();
+    m_pendingIncomingTracks.clear();
     gst_element_set_state(m_pipeline.get(), GST_STATE_PLAYING);
 }
 
 void GStreamerMediaEndpoint::connectPad(GstPad* pad)
 {
-    GRefPtr<GstWebRTCRTPTransceiver> transceiver;
-    g_object_get(pad, "transceiver", &transceiver.outPtr(), nullptr);
+    auto caps = adoptGRef(gst_pad_get_current_caps(pad));
+    if (!caps)
+        caps = adoptGRef(gst_pad_query_caps(pad, nullptr));
+
+    auto structure = gst_caps_get_structure(caps.get(), 0);
+    auto ssrc = gstStructureGet<unsigned>(structure, "ssrc"_s);
+    if (!ssrc) {
+        GST_ERROR_OBJECT(m_pipeline.get(), "Missing SSRC for webrtcin src pad %" GST_PTR_FORMAT, pad);
+        return;
+    }
 
-    auto trackProcessor = m_trackProcessors.get(transceiver);
+    auto trackProcessor = m_trackProcessors.get(*ssrc);
     trackProcessor->configure(ThreadSafeWeakPtr { *this }, GRefPtr<GstPad>(pad));
 
     auto bin = trackProcessor->bin();
@@ -1310,10 +1384,26 @@ ExceptionOr<GStreamerMediaEndpoint::Backends> GStreamerMediaEndpoint::createTran
             codecs = registryScanner.audioRtpCapabilities(GStreamerRegistryScanner::Configuration::Decoding).codecs;
     }
 
+    String mediaStreamId;
+    String trackId;
+    switchOn(source, [&](Ref<RealtimeOutgoingAudioSourceGStreamer>& source) {
+        mediaStreamId = source->mediaStreamID();
+        if (auto track = source->track())
+            trackId = track->id();
+    }, [&](Ref<RealtimeOutgoingVideoSourceGStreamer>& source) {
+        mediaStreamId = source->mediaStreamID();
+        if (auto track = source->track())
+            trackId = track->id();
+    }, [](std::nullptr_t&) { });
+
     int payloadType = pickAvailablePayloadType();
-    auto caps = capsFromRtpCapabilities(m_ssrcGenerator, { .codecs = codecs, .headerExtensions = rtpExtensions }, [&payloadType](GstStructure* structure) {
+    auto msid = !mediaStreamId.isEmpty() && !trackId.isEmpty() ? makeString(mediaStreamId, ' ', trackId) : emptyString();
+    auto caps = capsFromRtpCapabilities({ .codecs = codecs, .headerExtensions = rtpExtensions }, [&payloadType, &msid](GstStructure* structure) {
         if (!gst_structure_has_field(structure, "payload"))
             gst_structure_set(structure, "payload", G_TYPE_INT, payloadType++, nullptr);
+        if (msid.isEmpty())
+            return;
+        gst_structure_set(structure, "a-msid", G_TYPE_STRING, msid.utf8().data(), nullptr);
     });
 
 #ifndef GST_DISABLE_GST_DEBUG
@@ -1335,28 +1425,110 @@ ExceptionOr<GStreamerMediaEndpoint::Backends> GStreamerMediaEndpoint::createTran
     }
     gst_structure_take_value(initData.get(), "stream-ids", &streamIdsValue);
 
+    GValue codecsValue = G_VALUE_INIT;
+    g_value_init(&codecsValue, GST_TYPE_LIST);
+    unsigned index = 0;
+    for (auto& codec : codecs) {
+        GUniquePtr<GstStructure> codecData(gst_structure_new("codec-parameters",
+            "mime-type", G_TYPE_STRING, codec.mimeType.utf8().data(), "clock-rate", G_TYPE_UINT, codec.clockRate,
+            "fmtp-line", G_TYPE_STRING, codec.sdpFmtpLine.utf8().data(), nullptr));
+        if (codec.channels)
+            gst_structure_set(codecData.get(), "channels", G_TYPE_UINT, codec.channels.value(), nullptr);
+
+        auto codecStructure = gst_caps_get_structure(caps.get(), index);
+        if (auto pt = gstStructureGet<int>(codecStructure, "payload"_s))
+            gst_structure_set(codecData.get(), "pt", G_TYPE_UINT, static_cast<unsigned>(*pt), nullptr);
+
+        GValue value = G_VALUE_INIT;
+        g_value_init(&value, GST_TYPE_STRUCTURE);
+        gst_value_set_structure(&value, codecData.get());
+        gst_value_list_append_and_take_value(&codecsValue, &value);
+        index++;
+    }
+    gst_structure_take_value(initData.get(), "codecs", &codecsValue);
+
     GValue encodingsValue = G_VALUE_INIT;
     g_value_init(&encodingsValue, GST_TYPE_LIST);
+    auto scopeExit = makeScopeExit([&] {
+        g_value_unset(&encodingsValue);
+    });
     if (kind == "audio"_s) {
         if (!init.sendEncodings.isEmpty()) {
-            auto encodingData = fromRTCEncodingParameters(init.sendEncodings[0]);
+            auto encodingData = fromRTCEncodingParameters(init.sendEncodings[0], kind);
+            if (encodingData.hasException())
+                return encodingData.releaseException();
+            GValue value = G_VALUE_INIT;
+            g_value_init(&value, GST_TYPE_STRUCTURE);
+            gst_value_set_structure(&value, encodingData.returnValue().get());
+            gst_value_list_append_and_take_value(&encodingsValue, &value);
+        } else {
+            GUniquePtr<GstStructure> encodingData(gst_structure_new("encoding-parameters", "encoding-name", G_TYPE_STRING, "OPUS", "payload", G_TYPE_INT, 96, "active", G_TYPE_BOOLEAN, TRUE, nullptr));
             GValue value = G_VALUE_INIT;
             g_value_init(&value, GST_TYPE_STRUCTURE);
             gst_value_set_structure(&value, encodingData.get());
-            gst_value_list_append_value(&encodingsValue, &value);
-            g_value_unset(&value);
+            gst_value_list_append_and_take_value(&encodingsValue, &value);
+        }
+    } else if (!init.sendEncodings.isEmpty()) {
+        auto sendEncodings = init.sendEncodings;
+        if (init.sendEncodings.size() > 10) {
+            GST_WARNING_OBJECT(m_pipeline.get(), "Too many (%zu) sendEncodings requested for video transceiver. Limiting to 10.", init.sendEncodings.size());
+            sendEncodings = sendEncodings.subvector(0, 10);
+        }
+        Vector<String> allRids;
+        Vector<double> scaleValues;
+        scaleValues.reserveInitialCapacity(sendEncodings.size());
+        if (sendEncodings.size() == 1 && sendEncodings[0].scaleResolutionDownBy)
+            scaleValues.append(sendEncodings[0].scaleResolutionDownBy.value());
+        else if (allOf(sendEncodings, [](auto& encoding) { return encoding.scaleResolutionDownBy.value_or(1) == 1; })) {
+            for (unsigned i = sendEncodings.size() - 1; i >= 1; i--)
+                scaleValues.append(i * 2);
+            scaleValues.append(1);
+        }
+        for (unsigned i = 0; i < sendEncodings.size(); i++) {
+            auto& encoding = sendEncodings[i];
+            if (allRids.contains(encoding.rid))
+                return Exception { ExceptionCode::TypeError, makeString("Duplicate rid:"_s, encoding.rid) };
+            allRids.append(encoding.rid);
+
+            auto encodingCopy = encoding;
+            if (i < scaleValues.size())
+                encodingCopy.scaleResolutionDownBy = scaleValues[i];
+            auto encodingData = fromRTCEncodingParameters(encodingCopy, kind);
+            if (encodingData.hasException())
+                return encodingData.releaseException();
+
+            GValue value = G_VALUE_INIT;
+            g_value_init(&value, GST_TYPE_STRUCTURE);
+            gst_value_set_structure(&value, encodingData.returnValue().get());
+            gst_value_list_append_and_take_value(&encodingsValue, &value);
         }
+        if (allRids.isEmpty() && sendEncodings.size() > 1)
+            return Exception { ExceptionCode::TypeError, "Missing rid"_s };
+        if (allRids.size() > 1 && anyOf(allRids, [](auto& rid) { return rid.isNull() || rid.isEmpty(); }))
+            return Exception { ExceptionCode::TypeError, "Empty rid"_s };
+        if (allRids.size() == 1 && allRids[0] == emptyString())
+            return Exception { ExceptionCode::TypeError, "Empty rid"_s };
     } else {
-        for (auto& encoding : init.sendEncodings) {
-            auto encodingData = fromRTCEncodingParameters(encoding);
+        String fallbackCodec = emptyString();
+        for (auto& codec : codecs) {
+            if (codec.mimeType == "video/H264"_s || codec.mimeType == "video/VP8"_s) {
+                fallbackCodec = codec.mimeType.substring(6);
+                break;
+            }
+        }
+
+        GST_DEBUG_OBJECT(m_pipeline.get(), "Fallback codec: %s", fallbackCodec.ascii().data());
+        if (!fallbackCodec.isEmpty()) {
+            GUniquePtr<GstStructure> encodingData(gst_structure_new("encoding-parameters", "encoding-name", G_TYPE_STRING, fallbackCodec.ascii().data(), "payload", G_TYPE_INT, 97, "active", G_TYPE_BOOLEAN, TRUE, nullptr));
             GValue value = G_VALUE_INIT;
             g_value_init(&value, GST_TYPE_STRUCTURE);
             gst_value_set_structure(&value, encodingData.get());
-            gst_value_list_append_value(&encodingsValue, &value);
-            g_value_unset(&value);
-        }
+            gst_value_list_append_and_take_value(&encodingsValue, &value);
+        } else
+            WTFLogAlways("Missing video encoder / RTP payloader. Please install an H.264 encoder and/or a VP8 encoder");
     }
-    gst_structure_take_value(initData.get(), "encodings", &encodingsValue);
+
+    gst_structure_set_value(initData.get(), "encodings", &encodingsValue);
 
     auto transactionId = createVersion4UUIDString();
     gst_structure_set(initData.get(), "transaction-id", G_TYPE_STRING, transactionId.ascii().data(), nullptr);
@@ -1366,45 +1538,42 @@ ExceptionOr<GStreamerMediaEndpoint::Backends> GStreamerMediaEndpoint::createTran
     if (!rtcTransceiver)
         return Exception { ExceptionCode::InvalidAccessError, "Unable to add transceiver"_s };
 
+    GUniquePtr<GstStructure> parameters(gst_structure_copy(initData.get()));
+    switchOn(source, [&](Ref<RealtimeOutgoingAudioSourceGStreamer>& source) {
+        configureSource(source, WTFMove(parameters));
+        m_unlinkedOutgoingSources.append(source.ptr());
+    }, [&](Ref<RealtimeOutgoingVideoSourceGStreamer>& source) {
+        configureSource(source, WTFMove(parameters));
+        m_unlinkedOutgoingSources.append(source.ptr());
+    }, [](std::nullptr_t&) {
+    });
+
     auto transceiver = makeUnique<GStreamerRtpTransceiverBackend>(WTFMove(rtcTransceiver));
+
     return GStreamerMediaEndpoint::Backends { transceiver->createSenderBackend(m_peerConnectionBackend, WTFMove(source), WTFMove(initData)), transceiver->createReceiverBackend(), WTFMove(transceiver) };
 }
 
 ExceptionOr<GStreamerMediaEndpoint::Backends> GStreamerMediaEndpoint::addTransceiver(const String& trackKind, const RTCRtpTransceiverInit& init, PeerConnectionBackend::IgnoreNegotiationNeededFlag ignoreNegotiationNeededFlag)
 {
     GST_DEBUG_OBJECT(m_pipeline.get(), "Creating transceiver for %s track kind", trackKind.ascii().data());
-    return createTransceiverBackends(trackKind, init, nullptr, ignoreNegotiationNeededFlag);
+    GStreamerRtpSenderBackend::Source source = nullptr;
+    if (init.direction == RTCRtpTransceiverDirection::Sendonly || init.direction == RTCRtpTransceiverDirection::Sendrecv) {
+        // A muted source is associated to the transceiver, this is a webrtcbin limitation, if a
+        // transceiver is created without track and Offer/Answer is attempted, no corresponding m=
+        // section is added to the SDP.
+        if (trackKind == "audio"_s)
+            source = RealtimeOutgoingAudioSourceGStreamer::createMuted(m_ssrcGenerator);
+        else
+            source = RealtimeOutgoingVideoSourceGStreamer::createMuted(m_ssrcGenerator);
+    }
+    return createTransceiverBackends(trackKind, init, WTFMove(source), ignoreNegotiationNeededFlag);
 }
 
 GStreamerRtpSenderBackend::Source GStreamerMediaEndpoint::createSourceForTrack(MediaStreamTrack& track)
 {
     if (track.privateTrack().isAudio())
-        return RealtimeOutgoingAudioSourceGStreamer::create(m_ssrcGenerator, emptyString(), track);
-
-    ASSERT(track.privateTrack().isVideo());
-    return RealtimeOutgoingVideoSourceGStreamer::create(m_ssrcGenerator, emptyString(), track);
-}
-
-GStreamerRtpSenderBackend::Source GStreamerMediaEndpoint::createLinkedSourceForTrack(MediaStreamTrack& track)
-{
-    auto source = createSourceForTrack(track);
-    switchOn(source, [&](Ref<RealtimeOutgoingAudioSourceGStreamer>& source) {
-        configureAndLinkSource(source, true);
-        callOnMainThreadAndWait([&] {
-            source->setPayloadType(source->allowedCaps());
-            source->start();
-        });
-    }, [&](Ref<RealtimeOutgoingVideoSourceGStreamer>& source) {
-        configureAndLinkSource(source, true);
-        callOnMainThreadAndWait([&] {
-            source->setPayloadType(source->allowedCaps());
-            source->start();
-        });
-    }, [&](std::nullptr_t&) {
-        ASSERT_NOT_REACHED();
-    });
-
-    return source;
+        return RealtimeOutgoingAudioSourceGStreamer::create(m_ssrcGenerator, track.mediaStreamId(), track);
+    return RealtimeOutgoingVideoSourceGStreamer::create(m_ssrcGenerator, track.mediaStreamId(), track);
 }
 
 ExceptionOr<GStreamerMediaEndpoint::Backends> GStreamerMediaEndpoint::addTransceiver(MediaStreamTrack& track, const RTCRtpTransceiverInit& init, PeerConnectionBackend::IgnoreNegotiationNeededFlag ignoreNegotiationNeededFlag)
@@ -1573,9 +1742,9 @@ GstElement* GStreamerMediaEndpoint::requestAuxiliarySender()
 
 void GStreamerMediaEndpoint::close()
 {
-    // https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1181
+    // https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2760
     GST_DEBUG_OBJECT(m_pipeline.get(), "Closing");
-    if (m_pipeline)
+    if (m_pipeline && GST_STATE(m_pipeline.get()) > GST_STATE_READY)
         gst_element_set_state(m_pipeline.get(), GST_STATE_READY);
 
 #if !RELEASE_LOG_DISABLED
@@ -1605,7 +1774,7 @@ void GStreamerMediaEndpoint::suspend()
         return;
 
     GST_DEBUG_OBJECT(m_pipeline.get(), "Suspending");
-    gst_element_set_state(m_pipeline.get(), GST_STATE_NULL);
+    notImplemented();
 }
 
 void GStreamerMediaEndpoint::resume()
@@ -1624,7 +1793,7 @@ void GStreamerMediaEndpoint::onNegotiationNeeded()
         return;
     }
 
-    if (GST_STATE(m_webrtcBin.get()) < GST_STATE_PAUSED) {
+    if (GST_STATE(m_webrtcBin.get()) < GST_STATE_READY) {
         GST_DEBUG_OBJECT(m_pipeline.get(), "Deferring negotiation-needed until webrtc is ready");
         return;
     }
@@ -1752,12 +1921,11 @@ void GStreamerMediaEndpoint::collectTransceivers()
 
     GUniqueOutPtr<GstWebRTCSessionDescription> description;
     g_object_get(m_webrtcBin.get(), "remote-description", &description.outPtr(), nullptr);
+    if (!description)
+        return;
 
     for (unsigned i = 0; i < transceivers->len; i++) {
         auto current = adoptGRef(g_array_index(transceivers, GstWebRTCRTPTransceiver*, i));
-        m_trackProcessors.ensure(GRefPtr(current), [] {
-            return GStreamerIncomingTrackProcessor::create();
-        });
         auto* existingTransceiver = m_peerConnectionBackend.existingTransceiver([&](auto& transceiverBackend) {
             return current == transceiverBackend.rtcTransceiver();
         });
@@ -1780,64 +1948,29 @@ void GStreamerMediaEndpoint::collectTransceivers()
     }
 }
 
-#if !RELEASE_LOG_DISABLED
-void GStreamerMediaEndpoint::gatherStatsForLogging()
-{
-    auto* holder = createGStreamerMediaEndpointHolder();
-    holder->endPoint = this;
-    g_signal_emit_by_name(m_webrtcBin.get(), "get-stats", nullptr, gst_promise_new_with_change_func([](GstPromise* rawPromise, gpointer userData) {
-        auto promise = adoptGRef(rawPromise);
-        auto result = gst_promise_wait(promise.get());
-        if (result != GST_PROMISE_RESULT_REPLIED)
-            return;
-
-        const auto* reply = gst_promise_get_reply(promise.get());
-        ASSERT(reply);
-        if (gst_structure_has_field(reply, "error"))
-            return;
-
-        auto* holder = static_cast<GStreamerMediaEndpointHolder*>(userData);
-        callOnMainThreadAndWait([holder, reply] {
-            auto stats = holder->endPoint->preprocessStats(nullptr, reply);
-            holder->endPoint->onStatsDelivered(WTFMove(stats));
-        });
-    }, holder, reinterpret_cast<GDestroyNotify>(destroyGStreamerMediaEndpointHolder)));
-}
-
-class RTCStatsLogger {
-public:
-    explicit RTCStatsLogger(const GstStructure* stats)
-        : m_stats(stats)
-    { }
-
-    String toJSONString() const { return gstStructureToJSONString(m_stats); }
-
-private:
-    const GstStructure* m_stats;
-};
-
 GUniquePtr<GstStructure> GStreamerMediaEndpoint::preprocessStats(const GRefPtr<GstPad>& pad, const GstStructure* stats)
 {
     ASSERT(isMainThread());
     GUniquePtr<GstStructure> additionalStats(gst_structure_new_empty("stats"));
     auto mergeStructureInAdditionalStats = [&](const GstStructure* stats) {
-        gst_structure_foreach(stats, [](GQuark quark, const GValue* value, gpointer userData) -> gboolean {
-            auto* resultStructure = static_cast<GstStructure*>(userData);
-            gst_structure_set_value(resultStructure, g_quark_to_string(quark), value);
+        gstStructureForeach(stats, [&](auto id, const GValue* value) -> bool {
+            gstStructureIdSetValue(additionalStats.get(), id, value);
             return TRUE;
-        }, additionalStats.get());
+        });
     };
     if (!pad) {
         for (auto& sender : m_peerConnectionBackend.connection().getSenders()) {
             auto& backend = m_peerConnectionBackend.backendFromRTPSender(sender);
-            const GstStructure* stats = nullptr;
+            GUniquePtr<GstStructure> stats;
             if (auto* videoSource = backend.videoSource())
                 stats = videoSource->stats();
+            else if (auto audioSource = backend.audioSource())
+                stats = audioSource->stats();
 
             if (!stats)
                 continue;
 
-            mergeStructureInAdditionalStats(stats);
+            mergeStructureInAdditionalStats(stats.get());
         }
         for (auto& receiver : m_peerConnectionBackend.connection().getReceivers()) {
             auto& track = receiver.get().track();
@@ -1865,7 +1998,7 @@ GUniquePtr<GstStructure> GStreamerMediaEndpoint::preprocessStats(const GRefPtr<G
     }
 
     GUniquePtr<GstStructure> result(gst_structure_copy(stats));
-    gst_structure_map_in_place(result.get(), [](GQuark, GValue* value, gpointer userData) -> gboolean {
+    gstStructureMapInPlace(result.get(), [&](auto, auto value) -> bool {
         if (!GST_VALUE_HOLDS_STRUCTURE(value))
             return TRUE;
 
@@ -1874,38 +2007,114 @@ GUniquePtr<GstStructure> GStreamerMediaEndpoint::preprocessStats(const GRefPtr<G
         if (!gst_structure_get(structure.get(), "type", GST_TYPE_WEBRTC_STATS_TYPE, &statsType, nullptr))
             return TRUE;
 
-        auto additionalStats = GST_STRUCTURE_CAST(userData);
         switch (statsType) {
         case GST_WEBRTC_STATS_INBOUND_RTP: {
-            if (auto framesDecoded = gstStructureGet<uint64_t>(additionalStats, "frames-decoded"_s))
+            if (auto framesDecoded = gstStructureGet<uint64_t>(additionalStats.get(), "frames-decoded"_s))
                 gst_structure_set(structure.get(), "frames-decoded", G_TYPE_UINT64, *framesDecoded, nullptr);
-            if (auto framesDropped = gstStructureGet<uint64_t>(additionalStats, "frames-dropped"_s))
+            if (auto framesDropped = gstStructureGet<uint64_t>(additionalStats.get(), "frames-dropped"_s))
                 gst_structure_set(structure.get(), "frames-dropped", G_TYPE_UINT64, *framesDropped, nullptr);
-            if (auto frameWidth = gstStructureGet<unsigned>(additionalStats, "frame-width"_s))
+            if (auto frameWidth = gstStructureGet<unsigned>(additionalStats.get(), "frame-width"_s))
                 gst_structure_set(structure.get(), "frame-width", G_TYPE_UINT, *frameWidth, nullptr);
-            if (auto frameHeight = gstStructureGet<unsigned>(additionalStats, "frame-height"_s))
+            if (auto frameHeight = gstStructureGet<unsigned>(additionalStats.get(), "frame-height"_s))
                 gst_structure_set(structure.get(), "frame-height", G_TYPE_UINT, *frameHeight, nullptr);
+            auto trackIdentifier = gstStructureGetString(additionalStats.get(), "track-identifier"_s);
+            if (!trackIdentifier.isEmpty())
+                gst_structure_set(structure.get(), "track-identifier", G_TYPE_STRING, trackIdentifier.toStringWithoutCopying().utf8().data(), nullptr);
             break;
         }
         case GST_WEBRTC_STATS_OUTBOUND_RTP: {
-            if (auto framesSent = gstStructureGet<uint64_t>(additionalStats, "frames-sent"_s))
+            // FIXME: This likely not correct, in simulcast case webrtcbin generates a single
+            // outbound stat instead of one per simulcast layer.
+            auto ssrc = gstStructureGet<unsigned>(structure.get(), "ssrc"_s);
+            if (!ssrc) {
+                GST_WARNING_OBJECT(pipeline(), "Missing SSRC in outbound stats %" GST_PTR_FORMAT, structure.get());
+                break;
+            }
+
+            auto ssrcString = makeString(*ssrc);
+            GUniqueOutPtr<GstStructure> ssrcStats;
+            gst_structure_get(additionalStats.get(), ssrcString.ascii().data(), GST_TYPE_STRUCTURE, &ssrcStats.outPtr(), nullptr);
+            if (!ssrcStats) {
+                GST_WARNING_OBJECT(pipeline(), "Missing SSRC %s in additional outbound stats %" GST_PTR_FORMAT, ssrcString.ascii().data(), additionalStats.get());
+                break;
+            }
+
+            if (auto framesSent = gstStructureGet<uint64_t>(ssrcStats.get(), "frames-sent"_s))
                 gst_structure_set(structure.get(), "frames-sent", G_TYPE_UINT64, *framesSent, nullptr);
-            if (auto framesEncoded = gstStructureGet<uint64_t>(additionalStats, "frames-encoded"_s))
+            if (auto framesEncoded = gstStructureGet<uint64_t>(ssrcStats.get(), "frames-encoded"_s))
                 gst_structure_set(structure.get(), "frames-encoded", G_TYPE_UINT64, *framesEncoded, nullptr);
-            if (auto targetBitrate = gstStructureGet<double>(additionalStats, "bitrate"_s))
+            if (auto targetBitrate = gstStructureGet<double>(ssrcStats.get(), "bitrate"_s))
                 gst_structure_set(structure.get(), "target-bitrate", G_TYPE_DOUBLE, *targetBitrate, nullptr);
+
+            if (auto frameWidth = gstStructureGet<unsigned>(ssrcStats.get(), "frame-width"_s))
+                gst_structure_set(structure.get(), "frame-width", G_TYPE_UINT, *frameWidth, nullptr);
+            if (auto frameHeight = gstStructureGet<unsigned>(ssrcStats.get(), "frame-height"_s))
+                gst_structure_set(structure.get(), "frame-height", G_TYPE_UINT, *frameHeight, nullptr);
+            if (auto framesPerSecond = gstStructureGet<double>(ssrcStats.get(), "frames-per-second"_s))
+                gst_structure_set(structure.get(), "frames-per-second", G_TYPE_DOUBLE, *framesPerSecond, nullptr);
+
+            if (auto midValue = gstStructureGetString(ssrcStats.get(), "mid"_s))
+                gst_structure_set(structure.get(), "mid", G_TYPE_STRING, midValue.toString().ascii().data(), nullptr);
+            if (auto ridValue = gstStructureGetString(ssrcStats.get(), "rid"_s))
+                gst_structure_set(structure.get(), "rid", G_TYPE_STRING, ridValue.toString().ascii().data(), nullptr);
             break;
         }
         default:
             break;
         };
+
+        auto timestamp = gstStructureGet<double>(structure.get(), "timestamp"_s);
+        if (LIKELY(timestamp)) {
+            auto newTimestamp = StatsTimestampConverter::singleton().convertFromMonotonicTime(Seconds::fromMilliseconds(*timestamp));
+            gst_structure_set(structure.get(), "timestamp", G_TYPE_DOUBLE, newTimestamp.microseconds(), nullptr);
+        }
+
         gst_value_set_structure(value, structure.get());
         return TRUE;
-    }, additionalStats.get());
+    });
 
     return result;
 }
 
+#if !RELEASE_LOG_DISABLED
+void GStreamerMediaEndpoint::gatherStatsForLogging()
+{
+    g_signal_emit_by_name(m_webrtcBin.get(), "get-stats", nullptr, gst_promise_new_with_change_func([](GstPromise* rawPromise, gpointer userData) {
+        auto promise = adoptGRef(rawPromise);
+        auto result = gst_promise_wait(promise.get());
+        if (result != GST_PROMISE_RESULT_REPLIED)
+            return;
+
+        const auto* reply = gst_promise_get_reply(promise.get());
+        ASSERT(reply);
+        if (gst_structure_has_field(reply, "error"))
+            return;
+
+        auto weakSelf = static_cast<ThreadSafeWeakPtr<GStreamerMediaEndpoint>*>(userData);
+        callOnMainThreadAndWait([weakSelf, reply] {
+            auto self = weakSelf->get();
+            if (!self)
+                return;
+            auto stats = self->preprocessStats(nullptr, reply);
+            self->onStatsDelivered(stats.get());
+        });
+    }, new ThreadSafeWeakPtr<GStreamerMediaEndpoint> { *this }, reinterpret_cast<GDestroyNotify>(+[](gpointer data) {
+        delete static_cast<ThreadSafeWeakPtr<GStreamerMediaEndpoint>*>(data);
+    })));
+}
+
+class RTCStatsLogger {
+public:
+    explicit RTCStatsLogger(const GstStructure* stats)
+        : m_stats(stats)
+    { }
+
+    String toJSONString() const { return gstStructureToJSONString(m_stats); }
+
+private:
+    const GstStructure* m_stats;
+};
+
 void GStreamerMediaEndpoint::processStatsItem(const GValue* value)
 {
     if (!GST_VALUE_HOLDS_STRUCTURE(value))
@@ -1929,31 +2138,33 @@ void GStreamerMediaEndpoint::processStatsItem(const GValue* value)
         }
     }
 
+    RTCStatsLogger statsLogger { structure };
+
+    if (m_peerConnectionBackend.isJSONLogStreamingEnabled()) {
+        auto event = m_peerConnectionBackend.generateJSONLogEvent(gstStructureToJSONString(structure), false);
+        m_peerConnectionBackend.emitJSONLogEvent(WTFMove(event));
+    }
+
+    if (m_isGatheringRTCLogs) {
+        auto event = m_peerConnectionBackend.generateJSONLogEvent(gstStructureToJSONString(structure), true);
+        m_peerConnectionBackend.provideStatLogs(WTFMove(event));
+    }
+
     if (logger().willLog(logChannel(), WTFLogLevel::Debug)) {
         // Stats are very verbose, let's only display them in inspector console in verbose mode.
-        logger().debug(LogWebRTC,
-            Logger::LogSiteIdentifier("GStreamerMediaEndpoint"_s, "onStatsDelivered"_s, logIdentifier()),
-            RTCStatsLogger { structure });
-    } else {
-        logger().logAlways(LogWebRTCStats,
-            Logger::LogSiteIdentifier("GStreamerMediaEndpoint"_s, "onStatsDelivered"_s, logIdentifier()),
-            RTCStatsLogger { structure });
-    }
+        logger().debug(LogWebRTC, Logger::LogSiteIdentifier("GStreamerMediaEndpoint"_s, "OnStatsDelivered"_s, logIdentifier()), statsLogger);
+    } else
+        logger().logAlways(LogWebRTCStats, Logger::LogSiteIdentifier("GStreamerMediaEndpoint"_s, "OnStatsDelivered"_s, logIdentifier()), statsLogger);
 }
 
-void GStreamerMediaEndpoint::onStatsDelivered(GUniquePtr<GstStructure>&& stats)
+void GStreamerMediaEndpoint::onStatsDelivered(const GstStructure* stats)
 {
-    callOnMainThread([protectedThis = Ref(*this), this, stats = WTFMove(stats)] {
-        gst_structure_foreach(stats.get(), static_cast<GstStructureForeachFunc>([](GQuark, const GValue* value, gpointer userData) -> gboolean {
-            auto* endPoint = reinterpret_cast<GStreamerMediaEndpoint*>(userData);
-            endPoint->processStatsItem(value);
-            return TRUE;
-        }), this);
+    gstStructureForeach(stats, [&](auto, const auto value) -> bool {
+        processStatsItem(value);
+        return true;
     });
 }
-#endif
 
-#if !RELEASE_LOG_DISABLED
 void GStreamerMediaEndpoint::startLoggingStats()
 {
     if (m_statsLogTimer.isActive())
@@ -1973,6 +2184,9 @@ WTFLogChannel& GStreamerMediaEndpoint::logChannel() const
 
 Seconds GStreamerMediaEndpoint::statsLogInterval(Seconds reportTimestamp) const
 {
+    if (m_isGatheringRTCLogs)
+        return 1_s;
+
     if (logger().willLog(logChannel(), WTFLogLevel::Info))
         return 2_s;
 
@@ -2011,6 +2225,17 @@ std::optional<bool> GStreamerMediaEndpoint::canTrickleIceCandidates() const
     return false;
 }
 
+void GStreamerMediaEndpoint::startRTCLogs()
+{
+    m_isGatheringRTCLogs = true;
+    startLoggingStats();
+}
+
+void GStreamerMediaEndpoint::stopRTCLogs()
+{
+    m_isGatheringRTCLogs = false;
+}
+
 } // namespace WebCore
 
 #if !RELEASE_LOG_DISABLED
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.h b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.h
index fc90a64b6e..7fc00a225d 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.h
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerMediaEndpoint.h
@@ -85,9 +85,9 @@ public:
 
     std::optional<bool> canTrickleIceCandidates() const;
 
-    void configureAndLinkSource(RealtimeOutgoingMediaSourceGStreamer&, bool shouldLookForUnusedPads = false);
+    void configureSource(RealtimeOutgoingMediaSourceGStreamer&, GUniquePtr<GstStructure>&&);
 
-    bool addTrack(GStreamerRtpSenderBackend&, MediaStreamTrack&, const FixedVector<String>&);
+    ExceptionOr<std::unique_ptr<GStreamerRtpSenderBackend>> addTrack(MediaStreamTrack&, const FixedVector<String>&);
     void removeTrack(GStreamerRtpSenderBackend&);
 
     struct Backends {
@@ -99,7 +99,7 @@ public:
     ExceptionOr<Backends> addTransceiver(MediaStreamTrack&, const RTCRtpTransceiverInit&, PeerConnectionBackend::IgnoreNegotiationNeededFlag);
     std::unique_ptr<GStreamerRtpTransceiverBackend> transceiverBackendFromSender(GStreamerRtpSenderBackend&);
 
-    GStreamerRtpSenderBackend::Source createLinkedSourceForTrack(MediaStreamTrack&);
+    GStreamerRtpSenderBackend::Source createSourceForTrack(MediaStreamTrack&);
 
     void collectTransceivers();
 
@@ -117,9 +117,12 @@ public:
 
     void connectIncomingTrack(WebRTCTrackData&);
 
+    void startRTCLogs();
+    void stopRTCLogs();
+
 protected:
 #if !RELEASE_LOG_DISABLED
-    void onStatsDelivered(GUniquePtr<GstStructure>&&);
+    void onStatsDelivered(const GstStructure*);
 #endif
 
 private:
@@ -134,7 +137,7 @@ private:
         Remote
     };
 
-    void setDescription(const RTCSessionDescription*, DescriptionType, Function<void(const GstSDPMessage&)>&& preProcessCallback, Function<void(const GstSDPMessage&)>&& successCallback, Function<void(const GError*)>&& failureCallback);
+    void setDescription(const RTCSessionDescription*, DescriptionType, Function<void(const GstSDPMessage&)>&& successCallback, Function<void(const GError*)>&& failureCallback);
     void initiate(bool isInitiator, GstStructure*);
 
     void onNegotiationNeeded();
@@ -155,9 +158,8 @@ private:
     int pickAvailablePayloadType();
 
     ExceptionOr<Backends> createTransceiverBackends(const String& kind, const RTCRtpTransceiverInit&, GStreamerRtpSenderBackend::Source&&, PeerConnectionBackend::IgnoreNegotiationNeededFlag);
-    GStreamerRtpSenderBackend::Source createSourceForTrack(MediaStreamTrack&);
 
-    void processSDPMessage(const GstSDPMessage*, Function<void(unsigned index, const char* mid, const GstSDPMedia*)>);
+    void processSDPMessage(const GstSDPMessage*, Function<void(unsigned index, StringView mid, const GstSDPMedia*)>);
 
     WARN_UNUSED_RETURN GRefPtr<GstPad> requestPad(const GRefPtr<GstCaps>&, const String& mediaStreamID);
 
@@ -206,11 +208,18 @@ private:
 
     RefPtr<UniqueSSRCGenerator> m_ssrcGenerator;
 
-    HashMap<GRefPtr<GstWebRTCRTPTransceiver>, RefPtr<GStreamerIncomingTrackProcessor>> m_trackProcessors;
+    using SSRC = unsigned;
+    HashMap<SSRC, RefPtr<GStreamerIncomingTrackProcessor>> m_trackProcessors;
 
     Vector<String> m_pendingIncomingMediaStreamIDs;
 
     bool m_shouldIgnoreNegotiationNeededSignal { false };
+
+    Vector<RefPtr<MediaStreamTrackPrivate>> m_pendingIncomingTracks;
+
+    Vector<RefPtr<RealtimeOutgoingMediaSourceGStreamer>> m_unlinkedOutgoingSources;
+
+    bool m_isGatheringRTCLogs { false };
 };
 
 } // namespace WebCore
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp
index 1a745c9298..5a7c10bc8e 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.cpp
@@ -30,6 +30,7 @@
 #include "GStreamerRtpTransceiverBackend.h"
 #include "IceCandidate.h"
 #include "JSRTCStatsReport.h"
+#include "Logging.h"
 #include "MediaEndpointConfiguration.h"
 #include "NotImplemented.h"
 #include "RTCIceCandidate.h"
@@ -238,9 +239,11 @@ RefPtr<RTCRtpSender> GStreamerPeerConnectionBackend::findExistingSender(const Ve
 ExceptionOr<Ref<RTCRtpSender>> GStreamerPeerConnectionBackend::addTrack(MediaStreamTrack& track, FixedVector<String>&& mediaStreamIds)
 {
     GST_DEBUG_OBJECT(m_endpoint->pipeline(), "Adding new track.");
-    auto senderBackend = WTF::makeUnique<GStreamerRtpSenderBackend>(*this, nullptr);
-    if (!m_endpoint->addTrack(*senderBackend, track, mediaStreamIds))
-        return Exception { ExceptionCode::TypeError, "Unable to add track"_s };
+    auto addTrackResult = m_endpoint->addTrack(track, mediaStreamIds);
+    if (addTrackResult.hasException())
+        return addTrackResult.releaseException();
+
+    auto senderBackend = addTrackResult.releaseReturnValue();
 
     if (auto sender = findExistingSender(m_peerConnection.currentTransceivers(), *senderBackend)) {
         GST_DEBUG_OBJECT(m_endpoint->pipeline(), "Existing sender found, associating track to it.");
@@ -288,9 +291,9 @@ ExceptionOr<Ref<RTCRtpTransceiver>> GStreamerPeerConnectionBackend::addTransceiv
     return addTransceiverFromTrackOrKind(WTFMove(track), init, IgnoreNegotiationNeededFlag::No);
 }
 
-GStreamerRtpSenderBackend::Source GStreamerPeerConnectionBackend::createLinkedSourceForTrack(MediaStreamTrack& track)
+GStreamerRtpSenderBackend::Source GStreamerPeerConnectionBackend::createSourceForTrack(MediaStreamTrack& track)
 {
-    return m_endpoint->createLinkedSourceForTrack(track);
+    return m_endpoint->createSourceForTrack(track);
 }
 
 static inline GStreamerRtpTransceiverBackend& backendFromRTPTransceiver(RTCRtpTransceiver& transceiver)
@@ -375,6 +378,27 @@ void GStreamerPeerConnectionBackend::tearDown()
     }
 }
 
+void GStreamerPeerConnectionBackend::startGatheringStatLogs(Function<void(String&&)>&& callback)
+{
+    if (!m_rtcStatsLogCallback)
+        m_endpoint->startRTCLogs();
+    m_rtcStatsLogCallback = WTFMove(callback);
+}
+
+void GStreamerPeerConnectionBackend::stopGatheringStatLogs()
+{
+    if (m_rtcStatsLogCallback) {
+        m_endpoint->stopRTCLogs();
+        m_rtcStatsLogCallback = { };
+    }
+}
+
+void GStreamerPeerConnectionBackend::provideStatLogs(String&& stats)
+{
+    if (m_rtcStatsLogCallback)
+        m_rtcStatsLogCallback(WTFMove(stats));
+}
+
 #undef GST_CAT_DEFAULT
 
 } // namespace WebCore
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.h b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.h
index 6c5b29cb6b..8d0871e5ab 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.h
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.h
@@ -91,6 +91,11 @@ private:
 
     std::optional<bool> canTrickleIceCandidates() const final;
 
+    void startGatheringStatLogs(Function<void(String&&)>&&) final;
+    void stopGatheringStatLogs() final;
+    void provideStatLogs(String&&);
+    friend class RtcEventLogOutput;
+
     friend class GStreamerMediaEndpoint;
     friend class GStreamerRtpSenderBackend;
     RTCPeerConnection& connection() { return m_peerConnection; }
@@ -103,7 +108,7 @@ private:
     ExceptionOr<Ref<RTCRtpTransceiver>> addTransceiver(const String&, const RTCRtpTransceiverInit&, IgnoreNegotiationNeededFlag) final;
     ExceptionOr<Ref<RTCRtpTransceiver>> addTransceiver(Ref<MediaStreamTrack>&&, const RTCRtpTransceiverInit&) final;
 
-    GStreamerRtpSenderBackend::Source createLinkedSourceForTrack(MediaStreamTrack&);
+    GStreamerRtpSenderBackend::Source createSourceForTrack(MediaStreamTrack&);
 
     RTCRtpTransceiver* existingTransceiver(WTF::Function<bool(GStreamerRtpTransceiverBackend&)>&&);
     RTCRtpTransceiver& newRemoteTransceiver(std::unique_ptr<GStreamerRtpTransceiverBackend>&&, RealtimeMediaSource::Type, String&&);
@@ -130,6 +135,8 @@ private:
     bool m_isRemoteDescriptionSet { false };
 
     bool m_isReconfiguring { false };
+
+    Function<void(String&&)> m_rtcStatsLogCallback;
 };
 
 } // namespace WebCore
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpReceiverBackend.cpp b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpReceiverBackend.cpp
index cc35544262..2a8d20533e 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpReceiverBackend.cpp
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpReceiverBackend.cpp
@@ -29,13 +29,74 @@
 #include "RealtimeIncomingAudioSourceGStreamer.h"
 #include "RealtimeIncomingVideoSourceGStreamer.h"
 #include <wtf/glib/GUniquePtr.h>
+#include <wtf/text/StringToIntegerConversion.h>
+
+GST_DEBUG_CATEGORY(webkit_webrtc_rtp_receiver_debug);
+#define GST_CAT_DEFAULT webkit_webrtc_rtp_receiver_debug
 
 namespace WebCore {
 
+
+GStreamerRtpReceiverBackend::GStreamerRtpReceiverBackend(GRefPtr<GstWebRTCRTPTransceiver>&& rtcTransceiver)
+    : m_rtcTransceiver(WTFMove(rtcTransceiver))
+{
+    static std::once_flag debugRegisteredFlag;
+    std::call_once(debugRegisteredFlag, [] {
+        GST_DEBUG_CATEGORY_INIT(webkit_webrtc_rtp_receiver_debug, "webkitwebrtcrtpreceiver", 0, "WebKit WebRTC RTP Receiver");
+    });
+
+    g_object_get(m_rtcTransceiver.get(), "receiver", &m_rtcReceiver.outPtr(), nullptr);
+}
+
 RTCRtpParameters GStreamerRtpReceiverBackend::getParameters()
 {
-    notImplemented();
-    return { };
+    RTCRtpParameters parameters;
+    parameters.rtcp.reducedSize = true;
+
+    GRefPtr<GstCaps> caps;
+    g_object_get(m_rtcTransceiver.get(), "codec-preferences", &caps.outPtr(), nullptr);
+    if (!caps || gst_caps_is_any(caps.get()))
+        return parameters;
+
+    unsigned totalCodecs = gst_caps_get_size(caps.get());
+    for (unsigned i = 0; i < totalCodecs; i++) {
+        auto structure = gst_caps_get_structure(caps.get(), i);
+        RTCRtpCodecParameters codec;
+        if (auto pt = gstStructureGet<int>(structure, "payload"_s))
+            codec.payloadType = *pt;
+
+        auto media = gstStructureGetString(structure, "media"_s);
+        auto encodingName = gstStructureGetString(structure, "encoding-name"_s);
+        if (media && encodingName)
+            codec.mimeType = makeString(media, '/', encodingName.convertToASCIILowercase());
+
+        if (auto clockRate = gstStructureGet<uint64_t>(structure, "clock-rate"_s))
+            codec.clockRate = *clockRate;
+
+        if (auto channels = gstStructureGet<unsigned>(structure, "channels"_s))
+            codec.channels = *channels;
+
+        if (auto fmtpLine = gstStructureGetString(structure, "fmtp-line"_s))
+            codec.sdpFmtpLine = fmtpLine.toString();
+
+        parameters.codecs.append(WTFMove(codec));
+
+        gstStructureForeach(structure, [&](auto id, const auto value) -> bool {
+            auto name = gstIdToString(id);
+            if (!name.startsWith("extmap-"_s))
+                return true;
+
+            auto extensionId = parseInteger<unsigned short>(name.toStringWithoutCopying().substring(7));
+            if (!extensionId)
+                return true;
+
+            auto uri = String::fromLatin1(g_value_get_string(value));
+            parameters.headerExtensions.append({ uri, *extensionId });
+            return true;
+        });
+    }
+
+    return parameters;
 }
 
 Vector<RTCRtpContributingSource> GStreamerRtpReceiverBackend::getContributingSources() const
@@ -73,6 +134,8 @@ std::unique_ptr<RTCDtlsTransportBackend> GStreamerRtpReceiverBackend::dtlsTransp
     return makeUnique<GStreamerDtlsTransportBackend>(WTFMove(transport));
 }
 
+#undef GST_CAT_DEFAULT
+
 } // namespace WebCore
 
 #endif // ENABLE(WEB_RTC) && USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpReceiverBackend.h b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpReceiverBackend.h
index f63a7597b9..b40bea736a 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpReceiverBackend.h
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpReceiverBackend.h
@@ -30,10 +30,7 @@ namespace WebCore {
 class GStreamerRtpReceiverBackend final : public RTCRtpReceiverBackend {
     WTF_MAKE_FAST_ALLOCATED;
 public:
-    explicit GStreamerRtpReceiverBackend(GRefPtr<GstWebRTCRTPReceiver>&& rtcReceiver)
-        : m_rtcReceiver(WTFMove(rtcReceiver))
-    {
-    }
+    explicit GStreamerRtpReceiverBackend(GRefPtr<GstWebRTCRTPTransceiver>&&);
 
     GstWebRTCRTPReceiver* rtcReceiver() { return m_rtcReceiver.get(); }
     Ref<RealtimeMediaSource> createSource(const String& trackKind, const String& trackId);
@@ -46,6 +43,7 @@ private:
     std::unique_ptr<RTCDtlsTransportBackend> dtlsTransportBackend() final;
 
     GRefPtr<GstWebRTCRTPReceiver> m_rtcReceiver;
+    GRefPtr<GstWebRTCRTPTransceiver> m_rtcTransceiver;
 };
 
 } // namespace WebCore
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.cpp b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.cpp
index c3340f6fc8..7b54a8ab88 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.cpp
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.cpp
@@ -61,7 +61,7 @@ GStreamerRtpSenderBackend::GStreamerRtpSenderBackend(GStreamerPeerConnectionBack
     , m_initData(WTFMove(initData))
 {
     ensureDebugCategoryIsRegistered();
-    GST_DEBUG_OBJECT(m_rtcSender.get(), "constructed with associated source");
+    GST_DEBUG_OBJECT(m_rtcSender.get(), "constructed with associated source with init data: %" GST_PTR_FORMAT, m_initData.get());
 }
 
 void GStreamerRtpSenderBackend::clearSource()
@@ -77,6 +77,17 @@ void GStreamerRtpSenderBackend::setSource(Source&& source)
     GST_DEBUG_OBJECT(m_rtcSender.get(), "Setting source");
     m_source = WTFMove(source);
     ASSERT(hasSource());
+
+    if (!m_currentParameters && !m_initData)
+        return;
+
+    GUniquePtr<GstStructure> parameters(gst_structure_copy(m_currentParameters ? m_currentParameters.get() : m_initData.get()));
+    switchOn(m_source, [&](Ref<RealtimeOutgoingAudioSourceGStreamer>& source) {
+        source->setParameters(WTFMove(parameters));
+    }, [&](Ref<RealtimeOutgoingVideoSourceGStreamer>& source) {
+        source->setParameters(WTFMove(parameters));
+    }, [](std::nullptr_t&) {
+    });
 }
 
 void GStreamerRtpSenderBackend::takeSource(GStreamerRtpSenderBackend& backend)
@@ -142,7 +153,7 @@ bool GStreamerRtpSenderBackend::replaceTrack(RTCRtpSender& sender, MediaStreamTr
 
     bool replace = true;
     if (!sender.track()) {
-        m_source = m_peerConnectionBackend->createLinkedSourceForTrack(*track);
+        m_source = m_peerConnectionBackend->createSourceForTrack(*track);
         replace = false;
     }
 
@@ -245,11 +256,23 @@ void GStreamerRtpSenderBackend::setParameters(const RTCRtpSendParameters& parame
         return;
     }
 
-    auto newParameters(fromRTCSendParameters(parameters));
+    auto kind = ""_s;
+    switchOn(m_source, [&](Ref<RealtimeOutgoingAudioSourceGStreamer>&) {
+        kind = "audio"_s;
+    }, [&](Ref<RealtimeOutgoingVideoSourceGStreamer>&) {
+        kind = "video"_s;
+    }, [](const std::nullptr_t&) {
+    });
+
+    auto newParameters = fromRTCSendParameters(parameters, kind);
+    if (newParameters.hasException()) {
+        promise.reject(newParameters.releaseException());
+        return;
+    }
     switchOn(m_source, [&](Ref<RealtimeOutgoingAudioSourceGStreamer>& source) {
-        source->setParameters(WTFMove(newParameters));
+        source->setParameters(newParameters.releaseReturnValue());
     }, [&](Ref<RealtimeOutgoingVideoSourceGStreamer>& source) {
-        source->setParameters(WTFMove(newParameters));
+        source->setParameters(newParameters.releaseReturnValue());
     }, [](const std::nullptr_t&) {
     });
 
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.cpp b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.cpp
index df91e42ba4..4d01f0fad9 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.cpp
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpTransceiverBackend.cpp
@@ -28,18 +28,25 @@
 #include "RTCRtpCodecCapability.h"
 #include <wtf/glib/GUniquePtr.h>
 
-GST_DEBUG_CATEGORY_EXTERN(webkit_webrtc_endpoint_debug);
-#define GST_CAT_DEFAULT webkit_webrtc_endpoint_debug
+GST_DEBUG_CATEGORY(webkit_webrtc_transceiver_debug);
+#define GST_CAT_DEFAULT webkit_webrtc_transceiver_debug
 
 namespace WebCore {
 
 GStreamerRtpTransceiverBackend::GStreamerRtpTransceiverBackend(GRefPtr<GstWebRTCRTPTransceiver>&& rtcTransceiver)
     : m_rtcTransceiver(WTFMove(rtcTransceiver))
 {
+    static std::once_flag debugRegisteredFlag;
+    std::call_once(debugRegisteredFlag, [] {
+        GST_DEBUG_CATEGORY_INIT(webkit_webrtc_transceiver_debug, "webkitwebrtcrtptransceiver", 0, "WebKit WebRTC RTP transceiver");
+    });
+
     GstWebRTCKind kind;
     g_object_get(m_rtcTransceiver.get(), "kind", &kind, nullptr);
 
-    gst_util_set_object_arg(G_OBJECT(m_rtcTransceiver.get()), "fec-type", "ulp-red");
+    // FIXME: The ulp/red encoders drop MID extension headers. See also:
+    // https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/923
+    // gst_util_set_object_arg(G_OBJECT(m_rtcTransceiver.get()), "fec-type", "ulp-red");
 
     // Enable nack only for video transceivers, so that RTX payloads are not signaled in SDP
     // offer/answer. Those are confusing some media servers... Internally webrtcbin will always
@@ -52,9 +59,7 @@ GStreamerRtpTransceiverBackend::GStreamerRtpTransceiverBackend(GRefPtr<GstWebRTC
 
 std::unique_ptr<GStreamerRtpReceiverBackend> GStreamerRtpTransceiverBackend::createReceiverBackend()
 {
-    GRefPtr<GstWebRTCRTPReceiver> receiver;
-    g_object_get(m_rtcTransceiver.get(), "receiver", &receiver.outPtr(), nullptr);
-    return WTF::makeUnique<GStreamerRtpReceiverBackend>(WTFMove(receiver));
+    return WTF::makeUnique<GStreamerRtpReceiverBackend>(GRefPtr(m_rtcTransceiver));
 }
 
 std::unique_ptr<GStreamerRtpSenderBackend> GStreamerRtpTransceiverBackend::createSenderBackend(GStreamerPeerConnectionBackend& backend, GStreamerRtpSenderBackend::Source&& source, GUniquePtr<GstStructure>&& initData)
@@ -109,7 +114,7 @@ bool GStreamerRtpTransceiverBackend::stopped() const
     return m_isStopped;
 }
 
-static inline WARN_UNUSED_RETURN ExceptionOr<GRefPtr<GstCaps>> toRtpCodecCapability(const RTCRtpCodecCapability& codec, int& dynamicPayloadType, StringView msid)
+static inline WARN_UNUSED_RETURN ExceptionOr<GRefPtr<GstCaps>> toRtpCodecCapability(const RTCRtpCodecCapability& codec, int& dynamicPayloadType, const String& msid)
 {
     if (!codec.mimeType.startsWith("video/"_s) && !codec.mimeType.startsWith("audio/"_s))
         return Exception { ExceptionCode::InvalidModificationError, "RTCRtpCodecCapability bad mimeType"_s };
@@ -134,37 +139,53 @@ static inline WARN_UNUSED_RETURN ExceptionOr<GRefPtr<GstCaps>> toRtpCodecCapabil
         }
     }
 
-    if (msid)
-        gst_caps_set_simple(caps.get(), "a-msid", G_TYPE_STRING, msid.toStringWithoutCopying().ascii().data(), nullptr);
+    if (!msid.isEmpty())
+        gst_caps_set_simple(caps.get(), "a-msid", G_TYPE_STRING, msid.ascii().data(), nullptr);
 
     GST_DEBUG("Codec capability: %" GST_PTR_FORMAT, caps.get());
     return caps;
 }
 
-static StringView getMsidFromCurrentCodecPreferences(GstWebRTCRTPTransceiver* transceiver)
+ExceptionOr<void> GStreamerRtpTransceiverBackend::setCodecPreferences(const Vector<RTCRtpCodecCapability>& codecs)
 {
     GRefPtr<GstCaps> currentCaps;
-    g_object_get(transceiver, "codec-preferences", &currentCaps.outPtr(), nullptr);
-    GST_TRACE_OBJECT(transceiver, "Current codec preferences: %" GST_PTR_FORMAT, currentCaps.get());
+    g_object_get(m_rtcTransceiver.get(), "codec-preferences", &currentCaps.outPtr(), nullptr);
+    GST_TRACE_OBJECT(m_rtcTransceiver.get(), "Current codec preferences: %" GST_PTR_FORMAT, currentCaps.get());
+    String msid;
+    HashMap<String, String> extensions;
     if (gst_caps_get_size(currentCaps.get()) > 0) {
-        auto* s = gst_caps_get_structure(currentCaps.get(), 0);
-        if (auto msIdValue = gstStructureGetString(s, "a-msid"_s))
-            return msIdValue;
+        auto structure = gst_caps_get_structure(currentCaps.get(), 0);
+        if (auto msIdValue = gstStructureGetString(structure, "a-msid"_s))
+            msid = msIdValue.toString();
+
+        gstStructureForeach(structure, [&](auto id, const auto& value) -> bool {
+            auto key = gstIdToString(id);
+            if (!key.startsWith("extmap-"_s))
+                return true;
+
+            extensions.add(key.toString(), String::fromLatin1(g_value_get_string(value)));
+            return true;
+        });
     }
-    return nullptr;
-}
 
-ExceptionOr<void> GStreamerRtpTransceiverBackend::setCodecPreferences(const Vector<RTCRtpCodecCapability>& codecs)
-{
     auto gstCodecs = adoptGRef(gst_caps_new_empty());
-    auto msid = getMsidFromCurrentCodecPreferences(m_rtcTransceiver.get());
     int dynamicPayloadType = 96;
     for (auto& codec : codecs) {
         auto result = toRtpCodecCapability(codec, dynamicPayloadType, msid);
         if (result.hasException())
             return result.releaseException();
-        gst_caps_append(gstCodecs.get(), result.releaseReturnValue().leakRef());
+
+        auto codecCaps = result.releaseReturnValue();
+
+        // Restore extensions data on the first codec. It might be useful to do in the others too.
+        if (!extensions.isEmpty()) {
+            for (auto& [extensionId, url] : extensions)
+                gst_caps_set_simple(codecCaps.get(), extensionId.ascii().data(), G_TYPE_STRING, url.ascii().data(), nullptr);
+            extensions.clear();
+        }
+        gst_caps_append(gstCodecs.get(), codecCaps.leakRef());
     }
+    GST_DEBUG_OBJECT(m_rtcTransceiver.get(), "Setting codec preferences to %" GST_PTR_FORMAT, gstCodecs.get());
     g_object_set(m_rtcTransceiver.get(), "codec-preferences", gstCodecs.get(), nullptr);
     return { };
 }
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp
index 6f5863bf86..c12aa3374c 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerStatsCollector.cpp
@@ -33,8 +33,8 @@
 #include <wtf/MainThread.h>
 #include <wtf/glib/WTFGType.h>
 
-GST_DEBUG_CATEGORY_EXTERN(webkit_webrtc_endpoint_debug);
-#define GST_CAT_DEFAULT webkit_webrtc_endpoint_debug
+GST_DEBUG_CATEGORY(webkit_webrtc_stats_debug);
+#define GST_CAT_DEFAULT webkit_webrtc_stats_debug
 
 namespace WebCore {
 
@@ -43,7 +43,7 @@ RTCStatsReport::Stats::Stats(Type type, const GstStructure* structure)
     , id(gstStructureGetString(structure, "id"_s).toString())
 {
     if (auto value = gstStructureGet<double>(structure, "timestamp"_s))
-        timestamp = *value;
+        timestamp = Seconds::fromMicroseconds(*value).milliseconds();
 }
 
 RTCStatsReport::RtpStreamStats::RtpStreamStats(Type type, const GstStructure* structure)
@@ -81,10 +81,11 @@ RTCStatsReport::CodecStats::CodecStats(const GstStructure* structure)
 RTCStatsReport::ReceivedRtpStreamStats::ReceivedRtpStreamStats(Type type, const GstStructure* structure)
     : RtpStreamStats(type, structure)
 {
-    GstStructure* rtpSourceStats;
-    gst_structure_get(structure, "gst-rtpsource-stats", GST_TYPE_STRUCTURE, &rtpSourceStats, nullptr);
+    GUniqueOutPtr<GstStructure> rtpSourceStats;
+    gst_structure_get(structure, "gst-rtpsource-stats", GST_TYPE_STRUCTURE, &rtpSourceStats.outPtr(), nullptr);
 
-    packetsReceived = gstStructureGet<uint64_t>(rtpSourceStats, "packets-received"_s);
+    if (rtpSourceStats)
+        packetsReceived = gstStructureGet<uint64_t>(rtpSourceStats.get(), "packets-received"_s);
 
 #if GST_CHECK_VERSION(1, 22, 0)
     packetsLost = gstStructureGet<int64_t>(structure, "packets-lost"_s);
@@ -137,6 +138,9 @@ RTCStatsReport::InboundRtpStreamStats::InboundRtpStreamStats(const GstStructure*
     frameWidth = gstStructureGet<unsigned>(structure, "frame-width"_s);
     frameHeight = gstStructureGet<unsigned>(structure, "frame-height"_s);
 
+    if (auto identifier = gstStructureGetString(structure, "track-identifier"_s))
+        trackIdentifier = identifier.toString();
+
     // FIXME:
     // stats.fractionLost =
     // stats.burstPacketsLost =
@@ -160,6 +164,14 @@ RTCStatsReport::OutboundRtpStreamStats::OutboundRtpStreamStats(const GstStructur
     framesSent = gstStructureGet<uint64_t>(structure, "frames-sent"_s);
     framesEncoded = gstStructureGet<uint64_t>(structure, "frames-encoded"_s);
     targetBitrate = gstStructureGet<double>(structure, "target-bitrate"_s);
+    frameWidth = gstStructureGet<unsigned>(structure, "frame-width"_s);
+    frameHeight = gstStructureGet<unsigned>(structure, "frame-height"_s);
+    framesPerSecond = gstStructureGet<double>(structure, "frames-per-second"_s);
+
+    if (auto midValue = gstStructureGetString(structure, "mid"_s))
+        mid = midValue.toString();
+    if (auto ridValue = gstStructureGetString(structure, "rid"_s))
+        rid = ridValue.toString();
 }
 
 RTCStatsReport::PeerConnectionStats::PeerConnectionStats(const GstStructure* structure)
@@ -255,7 +267,7 @@ public:
     DOMMapAdapter* adapter;
 };
 
-static gboolean fillReportCallback(GQuark, const GValue* value, gpointer userData)
+static gboolean fillReportCallback(const GValue* value, Ref<ReportHolder>& reportHolder)
 {
     if (!GST_VALUE_HOLDS_STRUCTURE(value))
         return TRUE;
@@ -265,8 +277,10 @@ static gboolean fillReportCallback(GQuark, const GValue* value, gpointer userDat
     if (!gst_structure_get(structure, "type", GST_TYPE_WEBRTC_STATS_TYPE, &statsType, nullptr))
         return TRUE;
 
-    auto* reportHolder = reinterpret_cast<ReportHolder*>(userData);
-    DOMMapAdapter& report = *reportHolder->adapter;
+    if (UNLIKELY(!reportHolder->adapter))
+        return TRUE;
+
+    auto& report = *reportHolder->adapter;
 
     switch (statsType) {
     case GST_WEBRTC_STATS_CODEC: {
@@ -344,6 +358,11 @@ WEBKIT_DEFINE_ASYNC_DATA_STRUCT(CallbackHolder)
 
 void GStreamerStatsCollector::getStats(CollectorCallback&& callback, const GRefPtr<GstPad>& pad, PreprocessCallback&& preprocessCallback)
 {
+    static std::once_flag debugRegisteredFlag;
+    std::call_once(debugRegisteredFlag, [] {
+        GST_DEBUG_CATEGORY_INIT(webkit_webrtc_stats_debug, "webkitwebrtcstats", 0, "WebKit WebRTC Stats");
+    });
+
     if (!m_webrtcBin) {
         callback(nullptr);
         return;
@@ -381,7 +400,9 @@ void GStreamerStatsCollector::getStats(CollectorCallback&& callback, const GRefP
                 return;
             holder->callback(RTCStatsReport::create([stats = WTFMove(preprocessedStats)](auto& mapAdapter) mutable {
                 auto holder = adoptRef(*new ReportHolder(&mapAdapter));
-                gst_structure_foreach(stats.get(), fillReportCallback, holder.ptr());
+                gstStructureForeach(stats.get(), [&](auto, const auto value) -> bool {
+                    return fillReportCallback(value, holder);
+                });
             }));
         });
     }, holder, reinterpret_cast<GDestroyNotify>(destroyCallbackHolder)));
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerWebRTCUtils.cpp b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerWebRTCUtils.cpp
index 637ab3e189..8529b943b2 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerWebRTCUtils.cpp
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerWebRTCUtils.cpp
@@ -106,8 +106,16 @@ static inline double toWebRTCBitRatePriority(RTCPriorityType priority)
     RELEASE_ASSERT_NOT_REACHED();
 }
 
-GUniquePtr<GstStructure> fromRTCEncodingParameters(const RTCRtpEncodingParameters& parameters)
+ExceptionOr<GUniquePtr<GstStructure>> fromRTCEncodingParameters(const RTCRtpEncodingParameters& parameters, const String& kind)
 {
+    if (kind == "video"_s && parameters.scaleResolutionDownBy && *parameters.scaleResolutionDownBy < 1)
+        return Exception { ExceptionCode::RangeError, "scaleResolutionDownBy should be >= 1"_s };
+
+    if (parameters.rid.length() > 255)
+        return Exception { ExceptionCode::TypeError, "rid is too long"_s };
+    if (!parameters.rid.containsOnlyASCII() || !parameters.rid.containsOnly<isASCIIAlphanumeric>())
+        return Exception { ExceptionCode::TypeError, "rid contains invalid characters"_s };
+
     GUniquePtr<GstStructure> rtcParameters(gst_structure_new("encoding-parameters", "active", G_TYPE_BOOLEAN, parameters.active,
         "rid", G_TYPE_STRING, parameters.rid.utf8().data(), "bitrate-priority", G_TYPE_DOUBLE, toWebRTCBitRatePriority(parameters.priority), nullptr));
 
@@ -115,13 +123,13 @@ GUniquePtr<GstStructure> fromRTCEncodingParameters(const RTCRtpEncodingParameter
         gst_structure_set(rtcParameters.get(), "ssrc", G_TYPE_UINT, parameters.ssrc, nullptr);
 
     if (parameters.maxBitrate)
-        gst_structure_set(rtcParameters.get(), "max-bitrate", G_TYPE_ULONG, parameters.maxBitrate, nullptr);
+        gst_structure_set(rtcParameters.get(), "max-bitrate", G_TYPE_UINT, *parameters.maxBitrate, nullptr);
 
     if (parameters.maxFramerate)
-        gst_structure_set(rtcParameters.get(), "max-framerate", G_TYPE_ULONG, parameters.maxFramerate, nullptr);
+        gst_structure_set(rtcParameters.get(), "max-framerate", G_TYPE_UINT, *parameters.maxFramerate, nullptr);
 
-    if (parameters.scaleResolutionDownBy)
-        gst_structure_set(rtcParameters.get(), "scale-resolution-down-by", G_TYPE_DOUBLE, parameters.scaleResolutionDownBy, nullptr);
+    if (parameters.scaleResolutionDownBy && kind == "video"_s)
+        gst_structure_set(rtcParameters.get(), "scale-resolution-down-by", G_TYPE_DOUBLE, *parameters.scaleResolutionDownBy, nullptr);
 
     if (parameters.networkPriority)
         gst_structure_set(rtcParameters.get(), "network-priority", G_TYPE_INT, *parameters.networkPriority, nullptr);
@@ -149,10 +157,10 @@ static inline RTCRtpEncodingParameters toRTCEncodingParameters(const GstStructur
 
     gst_structure_get(rtcParameters, "active", G_TYPE_BOOLEAN, &(parameters.active), nullptr);
 
-    if (auto maxBitrate = gstStructureGet<uint64_t>(rtcParameters, "max-bitrate"_s))
+    if (auto maxBitrate = gstStructureGet<unsigned>(rtcParameters, "max-bitrate"_s))
         parameters.maxBitrate = *maxBitrate;
 
-    if (auto maxFramerate = gstStructureGet<uint64_t>(rtcParameters, "max-framerate"_s))
+    if (auto maxFramerate = gstStructureGet<unsigned>(rtcParameters, "max-framerate"_s))
         parameters.maxFramerate = *maxFramerate;
 
     if (auto rid = gstStructureGetString(rtcParameters, "rid"_s))
@@ -170,6 +178,28 @@ static inline RTCRtpEncodingParameters toRTCEncodingParameters(const GstStructur
     return parameters;
 }
 
+static inline RTCRtpCodecParameters toRTCCodecParameters(const GstStructure* rtcParameters)
+{
+    RTCRtpCodecParameters parameters;
+
+    if (auto pt = gstStructureGet<unsigned>(rtcParameters, "pt"_s))
+        parameters.payloadType = *pt;
+
+    if (auto mimeType = gstStructureGetString(rtcParameters, "mime-type"_s))
+        parameters.mimeType = mimeType.toString();
+
+    if (auto clockRate = gstStructureGet<unsigned>(rtcParameters, "clock-rate"_s))
+        parameters.clockRate = *clockRate;
+
+    if (auto channels = gstStructureGet<unsigned>(rtcParameters, "channels"_s))
+        parameters.channels = *channels;
+
+    if (auto fmtpLine = gstStructureGetString(rtcParameters, "fmtp-line"_s))
+        parameters.sdpFmtpLine = fmtpLine.toString();
+
+    return parameters;
+}
+
 RTCRtpSendParameters toRTCRtpSendParameters(const GstStructure* rtcParameters)
 {
     if (!rtcParameters)
@@ -179,32 +209,73 @@ RTCRtpSendParameters toRTCRtpSendParameters(const GstStructure* rtcParameters)
     if (auto transactionId = gstStructureGetString(rtcParameters, "transaction-id"_s))
         parameters.transactionId = makeString(transactionId);
 
-    auto* encodings = gst_structure_get_value(rtcParameters, "encodings");
-    unsigned size = gst_value_list_get_size(encodings);
-    for (unsigned i = 0; i < size; i++) {
-        const auto* value = gst_value_list_get_value(encodings, i);
-        RELEASE_ASSERT(GST_VALUE_HOLDS_STRUCTURE(value));
-        parameters.encodings.append(toRTCEncodingParameters(gst_value_get_structure(value)));
+    if (auto encodings = gst_structure_get_value(rtcParameters, "encodings")) {
+        unsigned size = gst_value_list_get_size(encodings);
+        parameters.encodings.reserveInitialCapacity(size);
+        for (unsigned i = 0; i < size; i++) {
+            const auto value = gst_value_list_get_value(encodings, i);
+            RELEASE_ASSERT(GST_VALUE_HOLDS_STRUCTURE(value));
+            parameters.encodings.append(toRTCEncodingParameters(gst_value_get_structure(value)));
+        }
     }
 
-    // FIXME: Handle rtcParameters.degradation_preference.
+    if (auto codecs = gst_structure_get_value(rtcParameters, "codecs")) {
+        unsigned size = gst_value_list_get_size(codecs);
+        parameters.codecs.reserveInitialCapacity(size);
+        for (unsigned i = 0; i < size; i++) {
+            const auto value = gst_value_list_get_value(codecs, i);
+            RELEASE_ASSERT(GST_VALUE_HOLDS_STRUCTURE(value));
+            parameters.codecs.append(toRTCCodecParameters(gst_value_get_structure(value)));
+        }
+    }
+
+    // FIXME: The rtcp parameters should not be hardcoded.
+    parameters.rtcp.cname = "unused"_s;
+    parameters.rtcp.reducedSize = false;
+
+    // FIXME: Handle rtcParameters.degradationPreference, headerExtensions.
     return parameters;
 }
 
-GUniquePtr<GstStructure> fromRTCSendParameters(const RTCRtpSendParameters& parameters)
+GUniquePtr<GstStructure> fromRTCCodecParameters(const RTCRtpCodecParameters& parameters)
+{
+    GUniquePtr<GstStructure> rtcParameters(gst_structure_new("codec-parameters", "pt", G_TYPE_UINT, parameters.payloadType,
+        "mime-type", G_TYPE_STRING, parameters.mimeType.utf8().data(), "clock-rate", G_TYPE_UINT, parameters.clockRate,
+        "channels", G_TYPE_UINT, parameters.channels, "fmtp-line", G_TYPE_STRING, parameters.sdpFmtpLine.utf8().data(), nullptr));
+    return rtcParameters;
+}
+
+ExceptionOr<GUniquePtr<GstStructure>> fromRTCSendParameters(const RTCRtpSendParameters& parameters, const String& kind)
 {
     GUniquePtr<GstStructure> gstParameters(gst_structure_new("send-parameters", "transaction-id", G_TYPE_STRING, parameters.transactionId.ascii().data(), nullptr));
     GValue encodingsValue = G_VALUE_INIT;
     g_value_init(&encodingsValue, GST_TYPE_LIST);
     for (auto& encoding : parameters.encodings) {
-        auto encodingData = fromRTCEncodingParameters(encoding);
+        auto encodingData = fromRTCEncodingParameters(encoding, kind);
+        if (encodingData.hasException())
+            return encodingData.releaseException();
         GValue value = G_VALUE_INIT;
         g_value_init(&value, GST_TYPE_STRUCTURE);
-        gst_value_set_structure(&value, encodingData.get());
+        gst_value_set_structure(&value, encodingData.returnValue().get());
         gst_value_list_append_value(&encodingsValue, &value);
         g_value_unset(&value);
     }
     gst_structure_take_value(gstParameters.get(), "encodings", &encodingsValue);
+
+    GValue codecsValue = G_VALUE_INIT;
+    g_value_init(&codecsValue, GST_TYPE_LIST);
+    for (auto& codec : parameters.codecs) {
+        auto codecData = fromRTCCodecParameters(codec);
+        GValue value = G_VALUE_INIT;
+        g_value_init(&value, GST_TYPE_STRUCTURE);
+        gst_value_set_structure(&value, codecData.get());
+        gst_value_list_append_value(&codecsValue, &value);
+        g_value_unset(&value);
+    }
+    gst_structure_take_value(gstParameters.get(), "codecs", &codecsValue);
+
+    // FIXME: Missing serialization for degradationPreference, headerExtensions, rtcp.
+
     return gstParameters;
 }
 
@@ -500,7 +571,7 @@ std::optional<int> payloadTypeForEncodingName(StringView encodingName)
     return { };
 }
 
-GRefPtr<GstCaps> capsFromRtpCapabilities(RefPtr<UniqueSSRCGenerator> ssrcGenerator, const RTCRtpCapabilities& capabilities, Function<void(GstStructure*)> supplementCapsCallback)
+GRefPtr<GstCaps> capsFromRtpCapabilities(const RTCRtpCapabilities& capabilities, Function<void(GstStructure*)> supplementCapsCallback)
 {
     auto caps = adoptGRef(gst_caps_new_empty());
     for (unsigned index = 0; auto& codec : capabilities.codecs) {
@@ -508,10 +579,6 @@ GRefPtr<GstCaps> capsFromRtpCapabilities(RefPtr<UniqueSSRCGenerator> ssrcGenerat
         auto* codecStructure = gst_structure_new("application/x-rtp", "media", G_TYPE_STRING, components[0].ascii().data(),
             "encoding-name", G_TYPE_STRING, components[1].convertToASCIIUppercase().ascii().data() , "clock-rate", G_TYPE_INT, codec.clockRate, nullptr);
 
-        auto ssrc = ssrcGenerator->generateSSRC();
-        if (ssrc != std::numeric_limits<uint32_t>::max())
-            gst_structure_set(codecStructure, "ssrc", G_TYPE_UINT, ssrc, nullptr);
-
         if (!codec.sdpFmtpLine.isEmpty()) {
             for (auto& fmtp : codec.sdpFmtpLine.split(';')) {
                 auto fieldAndValue = fmtp.split('=');
@@ -601,9 +668,10 @@ GRefPtr<GstCaps> capsFromSDPMedia(const GstSDPMedia* media)
             }
 
             // Remove ssrc- attributes that end up being accumulated in fmtp SDP media parameters.
-            gst_structure_filter_and_map_in_place(structure, reinterpret_cast<GstStructureFilterMapFunc>(+[](GQuark quark, GValue*, gpointer) -> gboolean {
-                return !g_str_has_prefix(g_quark_to_string(quark), "ssrc-");
-            }), nullptr);
+            gstStructureFilterAndMapInPlace(structure, [&](auto id, auto) -> bool {
+                auto fieldId = gstIdToString(id);
+                return !fieldId.startsWith("ssrc-"_s);
+            });
             // Align with caps from RealtimeOutgoingAudioSourceGStreamer
             setSsrcAudioLevelVadOn(structure);
         }
@@ -649,6 +717,19 @@ void setSsrcAudioLevelVadOn(GstStructure* structure)
     }
 }
 
+StatsTimestampConverter& StatsTimestampConverter::singleton()
+{
+    static NeverDestroyed<StatsTimestampConverter> sharedInstance;
+    return sharedInstance;
+}
+
+Seconds StatsTimestampConverter::convertFromMonotonicTime(Seconds value) const
+{
+    auto monotonicOffset = value - m_initialMonotonicTime;
+    auto newTimestamp = m_epoch.secondsSinceEpoch() + monotonicOffset;
+    return Performance::reduceTimeResolution(newTimestamp.secondsSinceEpoch());
+}
+
 #undef GST_CAT_DEFAULT
 
 } // namespace WebCore
diff --git a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerWebRTCUtils.h b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerWebRTCUtils.h
index 9e82e2967b..e6f38a89d7 100644
--- a/Source/WebCore/Modules/mediastream/gstreamer/GStreamerWebRTCUtils.h
+++ b/Source/WebCore/Modules/mediastream/gstreamer/GStreamerWebRTCUtils.h
@@ -25,6 +25,7 @@
 #include "GUniquePtrGStreamer.h"
 #include "MediaEndpointConfiguration.h"
 #include "PeerConnectionBackend.h"
+#include "Performance.h"
 #include "RTCBundlePolicy.h"
 #include "RTCCertificate.h"
 #include "RTCDtlsTransport.h"
@@ -261,9 +262,10 @@ static inline std::optional<RTCErrorDetailType> toRTCErrorDetailType(GstWebRTCEr
 
 RefPtr<RTCError> toRTCError(GError*);
 
-GUniquePtr<GstStructure> fromRTCEncodingParameters(const RTCRtpEncodingParameters&);
+ExceptionOr<GUniquePtr<GstStructure>> fromRTCEncodingParameters(const RTCRtpEncodingParameters&, const String& kind);
+GUniquePtr<GstStructure> fromRTCCodecParameters(const RTCRtpCodecParameters&);
 RTCRtpSendParameters toRTCRtpSendParameters(const GstStructure*);
-GUniquePtr<GstStructure> fromRTCSendParameters(const RTCRtpSendParameters&);
+ExceptionOr<GUniquePtr<GstStructure>>fromRTCSendParameters(const RTCRtpSendParameters&, const String& kind);
 
 std::optional<Ref<RTCCertificate>> generateCertificate(Ref<SecurityOrigin>&&, const PeerConnectionBackend::CertificateInformation&);
 
@@ -283,7 +285,7 @@ private:
 
 std::optional<int> payloadTypeForEncodingName(StringView encodingName);
 
-WARN_UNUSED_RETURN GRefPtr<GstCaps> capsFromRtpCapabilities(RefPtr<UniqueSSRCGenerator>, const RTCRtpCapabilities&, Function<void(GstStructure*)> supplementCapsCallback);
+WARN_UNUSED_RETURN GRefPtr<GstCaps> capsFromRtpCapabilities(const RTCRtpCapabilities&, Function<void(GstStructure*)> supplementCapsCallback);
 
 GstWebRTCRTPTransceiverDirection getDirectionFromSDPMedia(const GstSDPMedia*);
 WARN_UNUSED_RETURN GRefPtr<GstCaps> capsFromSDPMedia(const GstSDPMedia*);
@@ -303,6 +305,41 @@ inline void unmapRtpBuffer(GstBuffer*, GstRTPBuffer* rtpBuffer)
 
 using GstMappedRtpBuffer = GstBufferMapper<GstRTPBuffer, mapRtpBuffer, unmapRtpBuffer>;
 
+class StatsTimestampConverter {
+    WTF_MAKE_FAST_ALLOCATED;
+    WTF_MAKE_NONCOPYABLE(StatsTimestampConverter);
+    friend NeverDestroyed<StatsTimestampConverter>;
+
+public:
+    static StatsTimestampConverter& singleton();
+
+    Seconds convertFromMonotonicTime(Seconds value) const;
+
+private:
+    explicit StatsTimestampConverter() = default;
+
+    WallTime m_epoch { WallTime::now() };
+    MonotonicTime m_initialMonotonicTime { MonotonicTime::now() };
+};
+
+inline GstWebRTCKind webrtcKindFromCaps(const GRefPtr<GstCaps>& caps)
+{
+    if (!caps || !gst_caps_get_size(caps.get()))
+        return GST_WEBRTC_KIND_UNKNOWN;
+
+    auto media = gstStructureGetString(gst_caps_get_structure(caps.get(), 0), "media"_s);
+    if (!media)
+        return GST_WEBRTC_KIND_UNKNOWN;
+
+    if (media == "audio"_s)
+        return GST_WEBRTC_KIND_AUDIO;
+
+    if (media == "video"_s)
+        return GST_WEBRTC_KIND_VIDEO;
+
+    return GST_WEBRTC_KIND_UNKNOWN;
+}
+
 } // namespace WebCore
 
 #endif // ENABLE(WEB_RTC) && USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp b/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp
index 34179e6832..75cc35a9a7 100644
--- a/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp
+++ b/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp
@@ -82,7 +82,11 @@ LibWebRTCMediaEndpoint::LibWebRTCMediaEndpoint(LibWebRTCPeerConnectionBackend& p
     ASSERT(isMainThread());
     ASSERT(client.factory());
 
-    webrtc::field_trial::InitFieldTrialsFromString("WebRTC-Video-H26xPacketBuffer/Enabled/");
+    String fieldTrials = "WebRTC-Video-H26xPacketBuffer/Enabled/"_s;
+    if (peerConnection.shouldEnableWebRTCL4S())
+        fieldTrials = makeString(fieldTrials, "WebRTC-RFC8888CongestionControlFeedback/Enabled,force_send:true/"_s);
+
+    webrtc::field_trial::InitFieldTrialsFromString(fieldTrials.utf8().data());
 }
 
 void LibWebRTCMediaEndpoint::restartIce()
@@ -825,8 +829,17 @@ void LibWebRTCMediaEndpoint::OnStatsDelivered(const rtc::scoped_refptr<const web
 
         for (auto iterator = report->begin(); iterator != report->end(); ++iterator) {
             RTCStatsLogger statsLogger { *iterator };
-            if (m_isGatheringRTCLogs)
-                m_peerConnectionBackend.provideStatLogs(statsLogger.toJSONString());
+            if (m_isGatheringRTCLogs) {
+                auto event = m_peerConnectionBackend.generateJSONLogEvent(String::fromLatin1(iterator->ToJson().c_str()), true);
+                m_peerConnectionBackend.provideStatLogs(WTFMove(event));
+            }
+
+#if PLATFORM(WPE) || PLATFORM(GTK)
+            if (m_peerConnectionBackend.isJSONLogStreamingEnabled()) {
+                auto event = m_peerConnectionBackend.generateJSONLogEvent(String::fromLatin1(iterator->ToJson().c_str()), false);
+                m_peerConnectionBackend.emitJSONLogEvent(WTFMove(event));
+            }
+#endif
 
             if (logger().willLog(logChannel(), WTFLogLevel::Debug)) {
                 // Stats are very verbose, let's only display them in inspector console in verbose mode.
@@ -835,8 +848,6 @@ void LibWebRTCMediaEndpoint::OnStatsDelivered(const rtc::scoped_refptr<const web
                 logger().logAlways(LogWebRTCStats, Logger::LogSiteIdentifier("LibWebRTCMediaEndpoint"_s, "OnStatsDelivered"_s, logIdentifier()), statsLogger);
         }
     });
-#else
-    UNUSED_PARAM(report);
 #endif
 }
 
diff --git a/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp b/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp
index 975ccd0779..1b8c560e39 100644
--- a/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp
+++ b/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp
@@ -79,6 +79,12 @@ LibWebRTCPeerConnectionBackend::LibWebRTCPeerConnectionBackend(RTCPeerConnection
 
 LibWebRTCPeerConnectionBackend::~LibWebRTCPeerConnectionBackend() = default;
 
+bool LibWebRTCPeerConnectionBackend::shouldEnableWebRTCL4S() const
+{
+    RefPtr document = m_peerConnection.document();
+    return document && document->settings().webRTCL4SEnabled();
+}
+
 void LibWebRTCPeerConnectionBackend::suspend()
 {
     m_endpoint->suspend();
diff --git a/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h b/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h
index 171a8abc62..5a6ed90f20 100644
--- a/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h
+++ b/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h
@@ -65,6 +65,8 @@ public:
     LibWebRTCPeerConnectionBackend(RTCPeerConnection&, LibWebRTCProvider&);
     ~LibWebRTCPeerConnectionBackend();
 
+    bool shouldEnableWebRTCL4S() const;
+
 private:
     void close() final;
     void doCreateOffer(RTCOfferOptions&&) final;
diff --git a/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp b/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp
index b96ade6c47..df79b75723 100644
--- a/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp
+++ b/Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCUtils.cpp
@@ -255,11 +255,11 @@ void updateRTCRtpSendParameters(const RTCRtpSendParameters& parameters, webrtc::
     for (size_t i = 0; i < parameters.encodings.size(); ++i) {
         rtcParameters.encodings[i].active = parameters.encodings[i].active;
         if (parameters.encodings[i].maxBitrate)
-            rtcParameters.encodings[i].max_bitrate_bps = parameters.encodings[i].maxBitrate;
+            rtcParameters.encodings[i].max_bitrate_bps = *parameters.encodings[i].maxBitrate;
         if (parameters.encodings[i].maxFramerate)
-            rtcParameters.encodings[i].max_framerate = parameters.encodings[i].maxFramerate;
+            rtcParameters.encodings[i].max_framerate = *parameters.encodings[i].maxFramerate;
         if (parameters.encodings[i].scaleResolutionDownBy)
-            rtcParameters.encodings[i].scale_resolution_down_by = parameters.encodings[i].scaleResolutionDownBy;
+            rtcParameters.encodings[i].scale_resolution_down_by = *parameters.encodings[i].scaleResolutionDownBy;
         rtcParameters.encodings[i].bitrate_priority = toWebRTCBitRatePriority(parameters.encodings[i].priority);
         if (parameters.encodings[i].networkPriority)
             rtcParameters.encodings[i].network_priority = fromRTCPriorityType(*parameters.encodings[i].networkPriority);
diff --git a/Source/WebCore/Modules/notifications/Notification.cpp b/Source/WebCore/Modules/notifications/Notification.cpp
index b49ac5473f..46eece8aa0 100644
--- a/Source/WebCore/Modules/notifications/Notification.cpp
+++ b/Source/WebCore/Modules/notifications/Notification.cpp
@@ -143,6 +143,7 @@ Ref<Notification> Notification::create(ScriptExecutionContext& context, const UR
 
     RefPtr<SerializedScriptValue> dataScriptValue;
     if (payload.options && !payload.options->dataJSONString.isEmpty() && context.globalObject()) {
+        JSC::JSLockHolder lock(context.globalObject());
         auto value = JSONParse(context.globalObject(), payload.options->dataJSONString);
         dataScriptValue = SerializedScriptValue::convert(*context.globalObject(), value);
     }
diff --git a/Source/WebCore/css/color/CSSUnresolvedAbsoluteColor.cpp b/Source/WebCore/css/color/CSSUnresolvedAbsoluteColor.cpp
index b8ac36a830..568942c7f3 100644
--- a/Source/WebCore/css/color/CSSUnresolvedAbsoluteColor.cpp
+++ b/Source/WebCore/css/color/CSSUnresolvedAbsoluteColor.cpp
@@ -25,6 +25,7 @@
 
 #include "config.h"
 #include "CSSUnresolvedAbsoluteColor.h"
+#include <wtf/text/TextStream.h>
 
 namespace WebCore {
 
diff --git a/Source/WebCore/dom/Document.cpp b/Source/WebCore/dom/Document.cpp
index 4ddb3243b4..7aaf6587a4 100644
--- a/Source/WebCore/dom/Document.cpp
+++ b/Source/WebCore/dom/Document.cpp
@@ -740,7 +740,6 @@ Document::~Document()
     if (RefPtr window = m_domWindow)
         window->resetUnlessSuspendedForDocumentSuspension();
 
-    m_scriptRunner = nullptr;
     m_moduleLoader = nullptr;
 
     removeAllEventListeners();
@@ -7232,7 +7231,7 @@ bool Document::isTopDocument() const
 ScriptRunner& Document::ensureScriptRunner()
 {
     ASSERT(!m_scriptRunner);
-    m_scriptRunner = makeUnique<ScriptRunner>(*this);
+    m_scriptRunner = makeUniqueWithoutRefCountedCheck<ScriptRunner>(*this);
     return *m_scriptRunner;
 }
 
@@ -7243,7 +7242,7 @@ ScriptModuleLoader& Document::ensureModuleLoader()
     return *m_moduleLoader;
 }
 
-CheckedRef<ScriptRunner> Document::checkedScriptRunner()
+Ref<ScriptRunner> Document::protectedScriptRunner()
 {
     return scriptRunner();
 }
@@ -7357,7 +7356,7 @@ void Document::finishedParsing()
 
     Ref protectedThis { *this };
 
-    if (CheckedPtr scriptRunner = m_scriptRunner.get())
+    if (RefPtr scriptRunner = m_scriptRunner.get())
         scriptRunner->documentFinishedParsing();
 
     if (!m_eventTiming.domContentLoadedEventStart) {
@@ -7932,7 +7931,7 @@ void Document::suspendScheduledTasks(ReasonForSuspension reason)
 
     suspendScriptedAnimationControllerCallbacks();
     suspendActiveDOMObjects(reason);
-    if (CheckedPtr scriptRunner = m_scriptRunner.get())
+    if (RefPtr scriptRunner = m_scriptRunner.get())
         scriptRunner->suspend();
     m_pendingTasksTimer.stop();
 
@@ -7967,7 +7966,7 @@ void Document::resumeScheduledTasks(ReasonForSuspension reason)
 
     if (!m_pendingTasks.isEmpty())
         m_pendingTasksTimer.startOneShot(0_s);
-    if (CheckedPtr scriptRunner = m_scriptRunner.get())
+    if (RefPtr scriptRunner = m_scriptRunner.get())
         scriptRunner->resume();
     resumeActiveDOMObjects(reason);
     resumeScriptedAnimationControllerCallbacks();
diff --git a/Source/WebCore/dom/Document.h b/Source/WebCore/dom/Document.h
index ee814c0056..5f17fbd8ee 100644
--- a/Source/WebCore/dom/Document.h
+++ b/Source/WebCore/dom/Document.h
@@ -1240,7 +1240,7 @@ public:
 
     ScriptRunner* scriptRunnerIfExists() { return m_scriptRunner.get(); }
     inline ScriptRunner& scriptRunner();
-    CheckedRef<ScriptRunner> checkedScriptRunner();
+    Ref<ScriptRunner> protectedScriptRunner();
     inline ScriptModuleLoader& moduleLoader();
 
     Element* currentScript() const { return !m_currentScriptStack.isEmpty() ? m_currentScriptStack.last().get() : nullptr; }
diff --git a/Source/WebCore/dom/ScriptElement.cpp b/Source/WebCore/dom/ScriptElement.cpp
index beb803df36..347f7d714a 100644
--- a/Source/WebCore/dom/ScriptElement.cpp
+++ b/Source/WebCore/dom/ScriptElement.cpp
@@ -289,11 +289,11 @@ bool ScriptElement::prepareScript(const TextPosition& scriptStartPosition)
     } else if ((isClassicExternalScript || scriptType == ScriptType::Module) && !hasAsyncAttribute() && !m_forceAsync) {
         m_willExecuteInOrder = true;
         ASSERT(m_loadableScript);
-        document->checkedScriptRunner()->queueScriptForExecution(*this, *m_loadableScript, ScriptRunner::IN_ORDER_EXECUTION);
+        document->protectedScriptRunner()->queueScriptForExecution(*this, *m_loadableScript, ScriptRunner::IN_ORDER_EXECUTION);
     } else if (hasSourceAttribute() || scriptType == ScriptType::Module) {
         ASSERT(m_loadableScript);
         ASSERT(hasAsyncAttribute() || m_forceAsync);
-        document->checkedScriptRunner()->queueScriptForExecution(*this, *m_loadableScript, ScriptRunner::ASYNC_EXECUTION);
+        document->protectedScriptRunner()->queueScriptForExecution(*this, *m_loadableScript, ScriptRunner::ASYNC_EXECUTION);
     } else if (!hasSourceAttribute() && m_parserInserted == ParserInserted::Yes && !document->haveStylesheetsLoaded()) {
         ASSERT(scriptType == ScriptType::Classic || scriptType == ScriptType::ImportMap);
         m_willBeParserExecuted = true;
diff --git a/Source/WebCore/dom/ScriptRunner.cpp b/Source/WebCore/dom/ScriptRunner.cpp
index c5b5c98fa7..29997e1d29 100644
--- a/Source/WebCore/dom/ScriptRunner.cpp
+++ b/Source/WebCore/dom/ScriptRunner.cpp
@@ -58,6 +58,16 @@ ScriptRunner::~ScriptRunner()
     }
 }
 
+void ScriptRunner::ref() const
+{
+    m_document->ref();
+}
+
+void ScriptRunner::deref() const
+{
+    m_document->deref();
+}
+
 void ScriptRunner::queueScriptForExecution(ScriptElement& scriptElement, LoadableScript& loadableScript, ExecutionType executionType)
 {
     ASSERT(scriptElement.element().isConnected());
diff --git a/Source/WebCore/dom/ScriptRunner.h b/Source/WebCore/dom/ScriptRunner.h
index 1057ea5ab7..1be1452205 100644
--- a/Source/WebCore/dom/ScriptRunner.h
+++ b/Source/WebCore/dom/ScriptRunner.h
@@ -48,6 +48,9 @@ public:
     explicit ScriptRunner(Document&);
     ~ScriptRunner();
 
+    void ref() const;
+    void deref() const;
+
     // CheckedPtr interface
     uint32_t ptrCount() const final { return CanMakeCheckedPtr::ptrCount(); }
     uint32_t ptrCountWithoutThreadCheck() const final { return CanMakeCheckedPtr::ptrCountWithoutThreadCheck(); }
diff --git a/Source/WebCore/html/HTMLElement.cpp b/Source/WebCore/html/HTMLElement.cpp
index 778a42f79e..e8a242b9ce 100644
--- a/Source/WebCore/html/HTMLElement.cpp
+++ b/Source/WebCore/html/HTMLElement.cpp
@@ -1203,7 +1203,9 @@ ExceptionOr<void> HTMLElement::hidePopoverInternal(FocusPreviousElement focusPre
 
     removeFromTopLayer();
 
-    Style::PseudoClassChangeInvalidation styleInvalidation(*this, CSSSelector::PseudoClass::PopoverOpen, false);
+    std::optional<Style::PseudoClassChangeInvalidation> styleInvalidation;
+    if (isConnected())
+        styleInvalidation.emplace(*this, CSSSelector::PseudoClass::PopoverOpen, false, Style::InvalidationScope::Descendants);
     popoverData()->setVisibilityState(PopoverVisibilityState::Hidden);
 
     if (fireEvents == FireEvents::Yes)
diff --git a/Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp b/Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
index f84bebb624..20f84bf0db 100644
--- a/Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
+++ b/Source/WebCore/layout/formattingContexts/inline/InlineFormattingContext.cpp
@@ -156,7 +156,7 @@ InlineLayoutResult InlineFormattingContext::layout(const ConstraintsForInlineCon
         auto rangeBasedLineBuilder = RangeBasedLineBuilder { *this, constraints.horizontal(), inlineItemList };
         return lineLayout(rangeBasedLineBuilder, inlineItemList, needsLayoutRange, previousLine(), constraints, lineDamage);
     }
-    auto lineBuilder = LineBuilder { *this, constraints.horizontal(), inlineItemList };
+    auto lineBuilder = makeUniqueRef<LineBuilder>(*this, constraints.horizontal(), inlineItemList);
     return lineLayout(lineBuilder, inlineItemList, needsLayoutRange, previousLine(), constraints, lineDamage);
 }
 
diff --git a/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp b/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
index 87f894e569..53e84cb33e 100644
--- a/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
+++ b/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.cpp
@@ -44,6 +44,8 @@ namespace WebCore {
 namespace Layout {
 
 struct LineContent {
+    WTF_MAKE_STRUCT_FAST_ALLOCATED;
+
     InlineItemRange range;
     bool endsWithHyphen { false };
     size_t partialTrailingContentLength { 0 };
@@ -180,6 +182,7 @@ static TextDirection inlineBaseDirectionForLineContent(const Line::RunList& runs
 }
 
 struct LineCandidate {
+    WTF_MAKE_STRUCT_FAST_ALLOCATED;
 
     void reset();
 
@@ -259,10 +262,10 @@ LineLayoutResult LineBuilder::layoutInlineContent(const LineInput& lineInput, co
     auto result = m_line.close();
 
     if (isInIntrinsicWidthMode()) {
-        return { lineContent.range
+        return { lineContent->range
             , WTFMove(result.runs)
             , { WTFMove(m_placedFloats), WTFMove(m_suspendedFloats), { } }
-            , { { }, result.contentLogicalWidth, { }, lineContent.overflowLogicalWidth }
+            , { { }, result.contentLogicalWidth, { }, lineContent->overflowLogicalWidth }
             , { m_lineLogicalRect.topLeft(), { }, { }, { } }
         };
     }
@@ -271,27 +274,27 @@ LineLayoutResult LineBuilder::layoutInlineContent(const LineInput& lineInput, co
     // Lines with nothing but content trailing out-of-flow boxes should also be considered last line for alignment
     // e.g. <div style="text-align-last: center">last line<br><div style="display: inline; position: absolute"></div></div>
     // Both the inline content ('last line') and the trailing out-of-flow box are supposed to be center aligned.
-    auto shouldTreatAsLastLine = isLastInlineContent || lineContent.range.endIndex() == lineInput.needsLayoutRange.endIndex();
+    auto shouldTreatAsLastLine = isLastInlineContent || lineContent->range.endIndex() == lineInput.needsLayoutRange.endIndex();
     auto inlineBaseDirection = !result.runs.isEmpty() ? inlineBaseDirectionForLineContent(result.runs, rootStyle(), m_previousLine) : TextDirection::LTR;
     auto contentLogicalLeft = !result.runs.isEmpty() ? InlineFormattingUtils::horizontalAlignmentOffset(rootStyle(), result.contentLogicalRight, m_lineLogicalRect.width(), result.hangingTrailingContentWidth, result.runs, shouldTreatAsLastLine, inlineBaseDirection) : 0.f;
     Vector<int32_t> visualOrderList;
     if (result.contentNeedsBidiReordering)
         computedVisualOrder(result.runs, visualOrderList);
 
-    return { lineContent.range
+    return { lineContent->range
         , WTFMove(result.runs)
         , { WTFMove(m_placedFloats), WTFMove(m_suspendedFloats), m_lineIsConstrainedByFloat }
-        , { contentLogicalLeft, result.contentLogicalWidth, contentLogicalLeft + result.contentLogicalRight, lineContent.overflowLogicalWidth }
+        , { contentLogicalLeft, result.contentLogicalWidth, contentLogicalLeft + result.contentLogicalRight, lineContent->overflowLogicalWidth }
         , { m_lineLogicalRect.topLeft(), m_lineLogicalRect.width(), m_lineInitialLogicalRect.left() + m_initialIntrusiveFloatsWidth, m_initialLetterClearGap }
         , { !result.isHangingTrailingContentWhitespace, result.hangingTrailingContentWidth, result.hangablePunctuationStartWidth }
         , { WTFMove(visualOrderList), inlineBaseDirection }
         , { isFirstFormattedLine() ? LineLayoutResult::IsFirstLast::FirstFormattedLine::WithinIFC : LineLayoutResult::IsFirstLast::FirstFormattedLine::No, isLastInlineContent }
-        , { WTFMove(lineContent.rubyBaseAlignmentOffsetList), lineContent.rubyAnnotationOffset }
-        , lineContent.endsWithHyphen
+        , { WTFMove(lineContent->rubyBaseAlignmentOffsetList), lineContent->rubyAnnotationOffset }
+        , lineContent->endsWithHyphen
         , result.nonSpanningInlineLevelBoxCount
         , { }
         , { }
-        , lineContent.range.isEmpty() ? std::make_optional(m_lineLogicalRect.top() + m_candidateContentMaximumHeight) : std::nullopt
+        , lineContent->range.isEmpty() ? std::make_optional(m_lineLogicalRect.top() + m_candidateContentMaximumHeight) : std::nullopt
     };
 }
 
@@ -390,7 +393,7 @@ void LineBuilder::initialize(const InlineRect& initialLineLogicalRect, const Inl
     initializeLeadingContentFromOverflow();
 }
 
-LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needsLayoutRange)
+UniqueRef<LineContent> LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needsLayoutRange)
 {
     size_t resumedFloatCount = 0;
     auto layoutPreviouslySuspendedFloats = [&] {
@@ -413,16 +416,19 @@ LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needs
         m_previousLine->suspendedFloats.clear();
         return true;
     };
+
+    auto lineContent = makeUniqueRef<LineContent>();
+
     if (!layoutPreviouslySuspendedFloats()) {
         // Couldn't even manage to place all suspended floats from previous line(s). -which also means we can't fit any inline content at this vertical position.
-        return { { needsLayoutRange.start, needsLayoutRange.start } };
+        lineContent->range = { needsLayoutRange.start, needsLayoutRange.start };
+        return lineContent;
     }
 
-    auto lineContent = LineContent { };
     size_t placedInlineItemCount = 0;
 
     auto layoutInlineAndFloatContent = [&] {
-        auto lineCandidate = LineCandidate { };
+        auto lineCandidate = makeUniqueRef<LineCandidate>();
 
         auto currentItemIndex = needsLayoutRange.startIndex();
         while (currentItemIndex < needsLayoutRange.endIndex()) {
@@ -432,8 +438,8 @@ LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needs
             // 4. Return if we are at the end of the line either by not being able to fit more content or because of an explicit line break.
             candidateContentForLine(lineCandidate, currentItemIndex, needsLayoutRange, m_line.contentLogicalRight());
             // Now check if we can put this content on the current line.
-            if (auto* floatItem = lineCandidate.floatItem) {
-                ASSERT(lineCandidate.inlineContent.isEmpty());
+            if (auto* floatItem = lineCandidate->floatItem) {
+                ASSERT(lineCandidate->inlineContent.isEmpty());
                 if (!tryPlacingFloatBox(floatItem->layoutBox(), m_line.runs().isEmpty() ? MayOverConstrainLine::Yes : MayOverConstrainLine::No)) {
                     // This float overconstrains the line (it simply means shrinking the line box by the float would cause inline content overflow.)
                     // At this point we suspend float layout but continue with inline layout.
@@ -446,7 +452,7 @@ LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needs
                 auto isEndOfLine = result.isEndOfLine == InlineContentBreaker::IsEndOfLine::Yes;
                 if (!result.committedCount.isRevert) {
                     placedInlineItemCount += result.committedCount.value;
-                    auto& inlineContent = lineCandidate.inlineContent;
+                    auto& inlineContent = lineCandidate->inlineContent;
                     auto inlineContentIsFullyPlaced = inlineContent.continuousContent().runs().size() == result.committedCount.value && !result.partialTrailingContentLength;
                     if (inlineContentIsFullyPlaced) {
                         if (auto* wordBreakOpportunity = inlineContent.trailingWordBreakOpportunity()) {
@@ -469,8 +475,8 @@ LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needs
                     placedInlineItemCount = result.committedCount.value;
 
                 if (isEndOfLine) {
-                    lineContent.partialTrailingContentLength = result.partialTrailingContentLength;
-                    lineContent.overflowLogicalWidth = result.overflowLogicalWidth;
+                    lineContent->partialTrailingContentLength = result.partialTrailingContentLength;
+                    lineContent->overflowLogicalWidth = result.overflowLogicalWidth;
                     return;
                 }
             }
@@ -482,7 +488,7 @@ LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needs
     layoutInlineAndFloatContent();
 
     auto computePlacedInlineItemRange = [&] {
-        lineContent.range = { needsLayoutRange.start, needsLayoutRange.start };
+        lineContent->range = { needsLayoutRange.start, needsLayoutRange.start };
 
         if (!placedInlineItemCount)
             return;
@@ -490,19 +496,19 @@ LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needs
         // Layout range already includes "suspended" floats from previous line(s). See layoutPreviouslySuspendedFloats above for details.
         ASSERT(m_placedFloats.size() >= resumedFloatCount);
         auto onlyFloatContentPlaced = placedInlineItemCount == m_placedFloats.size() - resumedFloatCount;
-        if (onlyFloatContentPlaced || !lineContent.partialTrailingContentLength) {
-            lineContent.range.end = { needsLayoutRange.startIndex() + placedInlineItemCount, { } };
+        if (onlyFloatContentPlaced || !lineContent->partialTrailingContentLength) {
+            lineContent->range.end = { needsLayoutRange.startIndex() + placedInlineItemCount, { } };
             return;
         }
 
         auto trailingInlineItemIndex = needsLayoutRange.startIndex() + placedInlineItemCount - 1;
         auto overflowingInlineTextItemLength = downcast<InlineTextItem>(m_inlineItemList[trailingInlineItemIndex]).length();
-        ASSERT(lineContent.partialTrailingContentLength && lineContent.partialTrailingContentLength < overflowingInlineTextItemLength);
-        lineContent.range.end = { trailingInlineItemIndex, overflowingInlineTextItemLength - lineContent.partialTrailingContentLength };
+        ASSERT(lineContent->partialTrailingContentLength && lineContent->partialTrailingContentLength < overflowingInlineTextItemLength);
+        lineContent->range.end = { trailingInlineItemIndex, overflowingInlineTextItemLength - lineContent->partialTrailingContentLength };
     };
     computePlacedInlineItemRange();
 
-    ASSERT(lineContent.range.endIndex() <= needsLayoutRange.endIndex());
+    ASSERT(lineContent->range.endIndex() <= needsLayoutRange.endIndex());
 
     auto handleLineEnding = [&] {
         auto isLastInlineContent = isLastLineWithInlineContent(lineContent, needsLayoutRange.endIndex(), m_line.runs());
@@ -523,23 +529,23 @@ LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needs
 
             m_line.handleTrailingHangingContent(intrinsicWidthMode(), horizontalAvailableSpace, isLastInlineContent);
 
-            auto mayNeedOutOfFlowOverflowTrimming = !isInIntrinsicWidthMode() && lineHasOverflow() && !lineContent.partialTrailingContentLength && TextUtil::isWrappingAllowed(rootStyle);
+            auto mayNeedOutOfFlowOverflowTrimming = !isInIntrinsicWidthMode() && lineHasOverflow() && !lineContent->partialTrailingContentLength && TextUtil::isWrappingAllowed(rootStyle);
             if (mayNeedOutOfFlowOverflowTrimming) {
                 // Overflowing out-of-flow boxes should wrap the to subsequent lines just like any other in-flow content.
                 // However since we take a shortcut by not considering out-of-flow content as inflow but instead treating it as an opaque box with zero width and no
                 // soft wrap opportunity, any overflowing out-of-flow content would pile up as trailing content.
                 // Alternatively we could initiate a two pass layout first with out-of-flow content treated as true inflow and a second without them.
-                ASSERT(!lineContent.range.end.offset);
+                ASSERT(!lineContent->range.end.offset);
                 if (auto* lastRemovedTrailingBox = m_line.removeOverflowingOutOfFlowContent()) {
                     auto lineEndIndex = [&] {
-                        for (auto index = lineContent.range.start.index; index < lineContent.range.end.index; ++index) {
+                        for (auto index = lineContent->range.start.index; index < lineContent->range.end.index; ++index) {
                             if (&m_inlineItemList[index].layoutBox() == lastRemovedTrailingBox)
                                 return index;
                         }
                         ASSERT_NOT_REACHED();
-                        return lineContent.range.end.index;
+                        return lineContent->range.end.index;
                     };
-                    lineContent.range.end.index = lineEndIndex();
+                    lineContent->range.end.index = lineEndIndex();
                 }
             }
         };
@@ -556,9 +562,9 @@ LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needs
 
                 auto spaceToDistribute = horizontalAvailableSpace - m_line.contentLogicalWidth() + (m_line.isHangingTrailingContentWhitespace() ? m_line.hangingTrailingContentWidth() : 0.f);
                 if (root().isRubyAnnotationBox() && rootStyle.textAlign() == RenderStyle::initialTextAlign()) {
-                    lineContent.rubyAnnotationOffset = RubyFormattingContext::applyRubyAlignOnAnnotationBox(m_line, spaceToDistribute, formattingContext());
+                    lineContent->rubyAnnotationOffset = RubyFormattingContext::applyRubyAlignOnAnnotationBox(m_line, spaceToDistribute, formattingContext());
                     m_line.inflateContentLogicalWidth(spaceToDistribute);
-                    m_line.adjustContentRightWithRubyAlign(2 * lineContent.rubyAnnotationOffset);
+                    m_line.adjustContentRightWithRubyAlign(2 * lineContent->rubyAnnotationOffset);
                     return;
                 }
                 // Text is justified according to the method specified by the text-justify property,
@@ -570,11 +576,11 @@ LineContent LineBuilder::placeInlineAndFloatContent(const InlineItemRange& needs
                     m_line.inflateContentLogicalWidth(additionalSpaceForAlignedContent);
                 }
                 if (m_line.hasRubyContent())
-                    lineContent.rubyBaseAlignmentOffsetList = RubyFormattingContext::applyRubyAlign(m_line, formattingContext());
+                    lineContent->rubyBaseAlignmentOffsetList = RubyFormattingContext::applyRubyAlign(m_line, formattingContext());
             };
             applyRunBasedAlignmentIfApplicable();
             auto& lastTextContent = m_line.runs().last().textContent();
-            lineContent.endsWithHyphen = lastTextContent && lastTextContent->needsHyphen;
+            lineContent->endsWithHyphen = lastTextContent && lastTextContent->needsHyphen;
         }
     };
     handleLineEnding();
diff --git a/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.h b/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.h
index c90ef5e6b7..5c86e71a7a 100644
--- a/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.h
+++ b/Source/WebCore/layout/formattingContexts/inline/InlineLineBuilder.h
@@ -35,6 +35,7 @@ struct LineContent;
 struct LineCandidate;
 
 class LineBuilder final : public AbstractLineBuilder {
+    WTF_MAKE_FAST_ALLOCATED;
 public:
     LineBuilder(InlineFormattingContext&, HorizontalConstraints rootHorizontalConstraints, const InlineItemList&);
     virtual ~LineBuilder() { };
@@ -69,7 +70,7 @@ private:
     size_t rebuildLineForTrailingSoftHyphen(const InlineItemRange& layoutRange);
     void commitPartialContent(const InlineContentBreaker::ContinuousContent::RunList&, const InlineContentBreaker::Result::PartialTrailingContent&);
     void initialize(const InlineRect& initialLineLogicalRect, const InlineItemRange& needsLayoutRange, const std::optional<PreviousLine>&,  std::optional<bool> previousLineEndsWithLineBreak);
-    LineContent placeInlineAndFloatContent(const InlineItemRange&);
+    UniqueRef<LineContent> placeInlineAndFloatContent(const InlineItemRange&);
     struct InitialLetterOffsets {
         LayoutUnit capHeightOffset;
         LayoutUnit sunkenBelowFirstLineOffset;
diff --git a/Source/WebCore/loader/FrameLoader.cpp b/Source/WebCore/loader/FrameLoader.cpp
index b5bb051f58..9383f72194 100644
--- a/Source/WebCore/loader/FrameLoader.cpp
+++ b/Source/WebCore/loader/FrameLoader.cpp
@@ -4837,7 +4837,7 @@ void FrameLoader::updateNavigationAPIEntries(std::optional<NavigationNavigationT
     if (startingIndex != notFound) {
         Ref startingOrigin = SecurityOrigin::create(rawEntries[startingIndex]->url());
 
-        for (int64_t i = startingIndex - 1; i >= 0; i--) {
+        for (int64_t i = static_cast<int64_t>(startingIndex) - 1; i >= 0; i--) {
             Ref item = rawEntries[i];
 
             if (!SecurityOrigin::create(item->url())->isSameOriginAs(startingOrigin))
diff --git a/Source/WebCore/loader/SubframeLoader.cpp b/Source/WebCore/loader/SubframeLoader.cpp
index 8c77c6de5d..be0f3ae19f 100644
--- a/Source/WebCore/loader/SubframeLoader.cpp
+++ b/Source/WebCore/loader/SubframeLoader.cpp
@@ -59,6 +59,7 @@
 #include "SecurityOrigin.h"
 #include "SecurityPolicy.h"
 #include "Settings.h"
+#include "UserContentProvider.h"
 #include <wtf/CompletionHandler.h>
 
 namespace WebCore {
@@ -328,6 +329,16 @@ RefPtr<LocalFrame> FrameLoader::SubframeLoader::loadSubframe(HTMLFrameOwnerEleme
 
     frame->checkedLoader()->loadURLIntoChildFrame(url, referrerToUse, subFrame.get());
 
+#if ENABLE(CONTENT_EXTENSIONS)
+    RefPtr subFramePage = subFrame->page();
+    if ((url.isAboutBlank() || url.isAboutSrcDoc()) && subFramePage) {
+        subFramePage->protectedUserContentProvider()->userContentExtensionBackend().forEach([&] (const String& identifier, ContentExtensions::ContentExtension& extension) {
+            if (RefPtr styleSheetContents = extension.globalDisplayNoneStyleSheet())
+                subFrame->document()->extensionStyleSheets().maybeAddContentExtensionSheet(identifier, *styleSheetContents);
+        });
+    }
+#endif
+
     document->decrementLoadEventDelayCount();
 
     // The frame's onload handler may have removed it from the document.
diff --git a/Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollProxyNodeNicosia.cpp b/Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollProxyNodeNicosia.cpp
index 3dfce76ea5..574b72058f 100644
--- a/Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollProxyNodeNicosia.cpp
+++ b/Source/WebCore/page/scrolling/nicosia/ScrollingTreeOverflowScrollProxyNodeNicosia.cpp
@@ -32,6 +32,7 @@
 #include "Logging.h"
 #include "ScrollingStateOverflowScrollProxyNode.h"
 #include "ScrollingStateTree.h"
+#include "ScrollingTree.h"
 
 namespace WebCore {
 
diff --git a/Source/WebCore/page/scrolling/nicosia/ScrollingTreePositionedNodeNicosia.cpp b/Source/WebCore/page/scrolling/nicosia/ScrollingTreePositionedNodeNicosia.cpp
index 42e0bd2ae5..b9268c2cff 100644
--- a/Source/WebCore/page/scrolling/nicosia/ScrollingTreePositionedNodeNicosia.cpp
+++ b/Source/WebCore/page/scrolling/nicosia/ScrollingTreePositionedNodeNicosia.cpp
@@ -33,6 +33,7 @@
 
 #include "Logging.h"
 #include "ScrollingStatePositionedNode.h"
+#include "ScrollingTree.h"
 
 namespace WebCore {
 
diff --git a/Source/WebCore/platform/LowPowerModeNotifier.h b/Source/WebCore/platform/LowPowerModeNotifier.h
index 6db5b369e9..5a3cbf8957 100644
--- a/Source/WebCore/platform/LowPowerModeNotifier.h
+++ b/Source/WebCore/platform/LowPowerModeNotifier.h
@@ -34,7 +34,9 @@ OBJC_CLASS WebLowPowerModeObserver;
 
 #if USE(GLIB)
 #include <wtf/glib/GRefPtr.h>
+extern "C" {
 typedef struct _GPowerProfileMonitor GPowerProfileMonitor;
+};
 #endif
 
 namespace WebCore {
diff --git a/Source/WebCore/platform/SourcesGStreamer.txt b/Source/WebCore/platform/SourcesGStreamer.txt
index 309ac33b1a..ffda5063ce 100644
--- a/Source/WebCore/platform/SourcesGStreamer.txt
+++ b/Source/WebCore/platform/SourcesGStreamer.txt
@@ -128,6 +128,7 @@ platform/mediastream/libwebrtc/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.cp
 
 platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp
 platform/mediastream/gstreamer/GStreamerAudioCapturer.cpp
+platform/mediastream/gstreamer/GStreamerAudioRTPPacketizer.cpp
 platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp
 platform/mediastream/gstreamer/GStreamerCapturer.cpp
 platform/mediastream/gstreamer/GStreamerDTMFSenderBackend.cpp
@@ -136,8 +137,11 @@ platform/mediastream/gstreamer/GStreamerIncomingTrackProcessor.cpp
 platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp @no-unify
 platform/mediastream/gstreamer/GStreamerMockDevice.cpp @no-unify
 platform/mediastream/gstreamer/GStreamerMockDeviceProvider.cpp @no-unify
+platform/mediastream/gstreamer/GStreamerRTPPacketizer.cpp
 platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp
 platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp
+platform/mediastream/gstreamer/GStreamerVideoRTPPacketizer.cpp
+platform/mediastream/gstreamer/GStreamerWebRTCLogSink.cpp
 platform/mediastream/gstreamer/GStreamerWebRTCProvider.cpp
 platform/mediastream/gstreamer/MockDisplayCaptureSourceGStreamer.cpp
 platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp
diff --git a/Source/WebCore/platform/TextureMapper.cmake b/Source/WebCore/platform/TextureMapper.cmake
index d27b08a45f..f108d0bed4 100644
--- a/Source/WebCore/platform/TextureMapper.cmake
+++ b/Source/WebCore/platform/TextureMapper.cmake
@@ -6,12 +6,15 @@ list(APPEND WebCore_SOURCES
     platform/graphics/texmap/BitmapTexture.cpp
     platform/graphics/texmap/BitmapTexturePool.cpp
     platform/graphics/texmap/ClipStack.cpp
+    platform/graphics/texmap/FloatPlane3D.cpp
+    platform/graphics/texmap/FloatPolygon3D.cpp
     platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp
     platform/graphics/texmap/TextureMapper.cpp
     platform/graphics/texmap/TextureMapperBackingStore.cpp
     platform/graphics/texmap/TextureMapperFPSCounter.cpp
     platform/graphics/texmap/TextureMapperGCGLPlatformLayer.cpp
     platform/graphics/texmap/TextureMapperLayer.cpp
+    platform/graphics/texmap/TextureMapperLayer3DRenderingContext.cpp
     platform/graphics/texmap/TextureMapperShaderProgram.cpp
     platform/graphics/texmap/TextureMapperTile.cpp
 )
@@ -20,6 +23,8 @@ list(APPEND WebCore_PRIVATE_FRAMEWORK_HEADERS
     platform/graphics/texmap/BitmapTexture.h
     platform/graphics/texmap/BitmapTexturePool.h
     platform/graphics/texmap/ClipStack.h
+    platform/graphics/texmap/FloatPlane3D.h
+    platform/graphics/texmap/FloatPolygon3D.h
     platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.h
     platform/graphics/texmap/GraphicsLayerTextureMapper.h
     platform/graphics/texmap/TextureMapper.h
@@ -28,6 +33,7 @@ list(APPEND WebCore_PRIVATE_FRAMEWORK_HEADERS
     platform/graphics/texmap/TextureMapperFPSCounter.h
     platform/graphics/texmap/TextureMapperGLHeaders.h
     platform/graphics/texmap/TextureMapperLayer.h
+    platform/graphics/texmap/TextureMapperLayer3DRenderingContext.h
     platform/graphics/texmap/TextureMapperPlatformLayer.h
     platform/graphics/texmap/TextureMapperPlatformLayerProxy.h
     platform/graphics/texmap/TextureMapperPlatformLayerProxyGL.h
diff --git a/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp b/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp
index 996ed5d646..c0bddde942 100644
--- a/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp
+++ b/Source/WebCore/platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp
@@ -437,7 +437,6 @@ static GstStateChangeReturn webKitWebAudioSrcChangeState(GstElement* element, Gs
     case GST_STATE_CHANGE_PAUSED_TO_READY:
         {
             Locker locker { priv->dispatchLock };
-            priv->dispatchDone = false;
             priv->dispatchCondition.notifyAll();
         }
         gst_buffer_pool_set_flushing(priv->pool.get(), TRUE);
diff --git a/Source/WebCore/platform/glib/UserAgentGLib.cpp b/Source/WebCore/platform/glib/UserAgentGLib.cpp
index 163b8daae2..f0313e9154 100644
--- a/Source/WebCore/platform/glib/UserAgentGLib.cpp
+++ b/Source/WebCore/platform/glib/UserAgentGLib.cpp
@@ -105,7 +105,7 @@ static String buildUserAgentString(const UserAgentQuirks& quirks)
     // Version/X is mandatory *before* Safari/X to be a valid Safari UA. See
     // https://bugs.webkit.org/show_bug.cgi?id=133403 for details.
     } else
-        uaString.append("Version/17.0 "_s);
+        uaString.append("Version/18.1 "_s);
 
     if (chassisType() == WTF::ChassisType::Mobile)
         uaString.append("Mobile "_s);
diff --git a/Source/WebCore/platform/glib/UserAgentQuirks.cpp b/Source/WebCore/platform/glib/UserAgentQuirks.cpp
index ef0d0e0217..2f5c392fdb 100644
--- a/Source/WebCore/platform/glib/UserAgentQuirks.cpp
+++ b/Source/WebCore/platform/glib/UserAgentQuirks.cpp
@@ -123,6 +123,7 @@ static bool urlRequiresMacintoshPlatform(const String& domain, const String& bas
     // agent to use the light version. Earlier versions even block users from
     // accessing the calendar.
     if (domain == "outlook.office.com"_s
+        || domain == "outlook.office365.com"_s
         || domain == "mail.ntu.edu.tw"_s
         || domain == "exchange.tu-berlin.de"_s)
         return true;
diff --git a/Source/WebCore/platform/graphics/TrackPrivateBase.h b/Source/WebCore/platform/graphics/TrackPrivateBase.h
index d5f3ab293c..d91e569873 100644
--- a/Source/WebCore/platform/graphics/TrackPrivateBase.h
+++ b/Source/WebCore/platform/graphics/TrackPrivateBase.h
@@ -110,7 +110,7 @@ protected:
     bool hasClients() const;
     bool hasOneClient() const;
     mutable Lock m_lock;
-    using ClientRecord = std::tuple<RefPtr<SharedDispatcher>, WeakPtr<TrackPrivateBaseClient>, bool>;
+    using ClientRecord = std::tuple<RefPtr<SharedDispatcher>, WeakPtr<TrackPrivateBaseClient>, bool /* is main thread */>;
     Vector<ClientRecord> m_clients WTF_GUARDED_BY_LOCK(m_lock);
 
 #if !RELEASE_LOG_DISABLED
diff --git a/Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBMTextureMapper.h b/Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBMTextureMapper.h
index 957db76af4..2d07d55b0f 100644
--- a/Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBMTextureMapper.h
+++ b/Source/WebCore/platform/graphics/gbm/GraphicsContextGLGBMTextureMapper.h
@@ -53,6 +53,8 @@ private:
 
     std::unique_ptr<Nicosia::GCGLANGLELayer> m_nicosiaLayer;
     RefPtr<GraphicsLayerContentsDisplayDelegate> m_layerContentsDisplayDelegate;
+    void notifyVideoPosition(const FloatRect&, const TransformationMatrix&) override;
+    void paintTransparentRectangle(TextureMapper&, const FloatRect&, const TransformationMatrix&) override;
 };
 
 } // namespace WebCore
diff --git a/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp
index 4741d13303..762886bf62 100644
--- a/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.cpp
@@ -56,6 +56,14 @@ AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPl
     installUpdateConfigurationHandlers();
 }
 
+AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&& player, unsigned index, GRefPtr<GstPad>&& pad, TrackID trackId)
+    : TrackPrivateBaseGStreamer(TrackPrivateBaseGStreamer::TrackType::Audio, this, index, WTFMove(pad), trackId)
+    , m_player(WTFMove(player))
+{
+    ensureDebugCategoryInitialized();
+    installUpdateConfigurationHandlers();
+}
+
 AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&& player, unsigned index, GstStream* stream)
     : TrackPrivateBaseGStreamer(TrackPrivateBaseGStreamer::TrackType::Audio, this, index, stream)
     , m_player(WTFMove(player))
@@ -70,7 +78,7 @@ AudioTrackPrivateGStreamer::AudioTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPl
     updateConfigurationFromTags(WTFMove(tags));
 }
 
-void AudioTrackPrivateGStreamer::capsChanged(const String& streamId, GRefPtr<GstCaps>&& caps)
+void AudioTrackPrivateGStreamer::capsChanged(TrackID streamId, GRefPtr<GstCaps>&& caps)
 {
     ASSERT(isMainThread());
     updateConfigurationFromCaps(WTFMove(caps));
diff --git a/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h
index 410a23808c..49048a3132 100644
--- a/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/AudioTrackPrivateGStreamer.h
@@ -28,6 +28,7 @@
 #if ENABLE(VIDEO) && USE(GSTREAMER)
 
 #include "AudioTrackPrivate.h"
+#include "MediaPlayerPrivateGStreamer.h"
 #include "TrackPrivateBaseGStreamer.h"
 
 #include <wtf/ThreadSafeWeakPtr.h>
@@ -42,6 +43,11 @@ public:
         return adoptRef(*new AudioTrackPrivateGStreamer(WTFMove(player), index, WTFMove(pad), shouldHandleStreamStartEvent));
     }
 
+    static Ref<AudioTrackPrivateGStreamer> create(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&& player, unsigned index, GRefPtr<GstPad>&& pad, TrackID trackId)
+    {
+        return adoptRef(*new AudioTrackPrivateGStreamer(WTFMove(player), index, WTFMove(pad), trackId));
+    }
+
     static Ref<AudioTrackPrivateGStreamer> create(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&& player, unsigned index, GstStream* stream)
     {
         return adoptRef(*new AudioTrackPrivateGStreamer(WTFMove(player), index, stream));
@@ -56,8 +62,17 @@ public:
 
     int trackIndex() const final { return m_index; }
 
-    TrackID id() const final { return m_trackID.value_or(m_index); }
-    std::optional<AtomString> trackUID() const final { return m_stringId; }
+    TrackID id() const final { return m_trackID.value_or(m_id); }
+    std::optional<AtomString> trackUID() const final
+    {
+        auto player = m_player.get();
+
+        if (player && player->isMediaStreamPlayer())
+            return m_gstStreamId;
+
+        return std::nullopt;
+    }
+
     AtomString label() const final { return m_label; }
     AtomString language() const final { return m_language; }
 
@@ -67,10 +82,11 @@ protected:
     void updateConfigurationFromTags(GRefPtr<GstTagList>&&) final;
 
     void tagsChanged(GRefPtr<GstTagList>&& tags) final { updateConfigurationFromTags(WTFMove(tags)); }
-    void capsChanged(const String& streamId, GRefPtr<GstCaps>&&) final;
+    void capsChanged(TrackID streamId, GRefPtr<GstCaps>&&) final;
 
 private:
     AudioTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&&, unsigned index, GRefPtr<GstPad>&&, bool shouldHandleStreamStartEvent);
+    AudioTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&&, unsigned index, GRefPtr<GstPad>&&, TrackID);
     AudioTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&&, unsigned index, GstStream*);
 
     ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer> m_player;
diff --git a/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp b/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp
index a7392908ea..812a1f6aca 100644
--- a/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp
@@ -46,12 +46,15 @@
 #include <wtf/PrintStream.h>
 #include <wtf/RecursiveLockAdapter.h>
 #include <wtf/Scope.h>
+#include <wtf/TZoneMallocInlines.h>
+#include <wtf/UUID.h>
 #include <wtf/glib/GThreadSafeWeakPtr.h>
 #include <wtf/glib/GUniquePtr.h>
 #include <wtf/glib/RunLoopSourcePriority.h>
 #include <wtf/glib/WTFGType.h>
 #include <wtf/text/MakeString.h>
 #include <wtf/text/StringHash.h>
+#include <wtf/text/StringToIntegerConversion.h>
 
 #if USE(GSTREAMER_MPEGTS)
 #define GST_USE_UNSTABLE_API
@@ -95,6 +98,11 @@
 #define IS_GST_FULL_1_18 0
 #endif
 
+#if USE(GBM)
+#include "DRMDeviceManager.h"
+#include <drm_fourcc.h>
+#endif
+
 GST_DEBUG_CATEGORY(webkit_gst_common_debug);
 #define GST_CAT_DEFAULT webkit_gst_common_debug
 
@@ -226,6 +234,51 @@ bool getSampleVideoInfo(GstSample* sample, GstVideoInfo& videoInfo)
 }
 #endif
 
+std::optional<TrackID> getStreamIdFromPad(const GRefPtr<GstPad>& pad)
+{
+    GUniquePtr<gchar> streamIdAsCharacters(gst_pad_get_stream_id(pad.get()));
+    if (!streamIdAsCharacters) {
+        GST_DEBUG_OBJECT(pad.get(), "Failed to get stream-id from pad");
+        return std::nullopt;
+    }
+
+    std::optional<TrackID> streamId(parseStreamId(StringView::fromLatin1(streamIdAsCharacters.get())));
+    if (!streamId)
+        GST_WARNING_OBJECT(pad.get(), "Got invalid stream-id from pad: %s", streamIdAsCharacters.get());
+
+    return streamId;
+}
+
+std::optional<TrackID> getStreamIdFromStream(const GRefPtr<GstStream>& stream)
+{
+    const gchar* streamIdAsCharacters = gst_stream_get_stream_id(stream.get());
+    if (!streamIdAsCharacters) {
+        GST_DEBUG_OBJECT(stream.get(), "Failed to get stream-id from stream");
+        return std::nullopt;
+    }
+
+    std::optional<TrackID> streamId(parseStreamId(StringView::fromLatin1(streamIdAsCharacters)));
+    if (!streamId)
+        GST_WARNING_OBJECT(stream.get(), "Got invalid stream-id from stream: %s", streamIdAsCharacters);
+
+    return streamId;
+}
+
+std::optional<TrackID> parseStreamId(StringView stringId)
+{
+    auto maybeUUID = WTF::UUID::parse(stringId);
+    if (maybeUUID.has_value())
+        return maybeUUID.value().low();
+
+    // GStreamer docs advise against interpreting contents of a stream-id,
+    // however this is the format qtdemux uses for stream-id creation,
+    // so we can reasonably rely on it.
+    size_t position = stringId.find('/');
+    if (position == notFound || position + 1 == stringId.length())
+        return parseIntegerAllowingTrailingJunk<TrackID>(stringId);
+
+    return parseIntegerAllowingTrailingJunk<TrackID>(stringId.substring(position + 1));
+}
 
 StringView capsMediaType(const GstCaps* caps)
 {
@@ -441,6 +494,10 @@ void registerWebKitGStreamerElements()
             }
         }
 
+        // Make sure isofmp4mux is auto-plugged in transcodebin pipelines.
+        if (auto factory = adoptGRef(gst_element_factory_find("isofmp4mux")))
+            gst_plugin_feature_set_rank(GST_PLUGIN_FEATURE_CAST(factory.get()), GST_RANK_PRIMARY + 1);
+
         // The VAAPI plugin is not much maintained anymore and prone to rendering issues. In the
         // mid-term we will leverage the new stateless VA decoders. Disable the legacy plugin,
         // unless the WEBKIT_GST_ENABLE_LEGACY_VAAPI environment variable is set to 1.
@@ -830,6 +887,11 @@ void connectSimpleBusMessageCallback(GstElement* pipeline, Function<void(GstMess
             break;
         }
         case GST_MESSAGE_LATENCY:
+            // Recalculate the latency, we don't need any special handling
+            // here other than the GStreamer default.
+            // This can happen if the latency of live elements changes, or
+            // for one reason or another a new live element is added or
+            // removed from the pipeline.
             gst_bin_recalculate_latency(GST_BIN_CAST(pipeline.get()));
             break;
         default:
@@ -1211,15 +1273,6 @@ static std::optional<RefPtr<JSON::Value>> gstStructureValueToJSON(const GValue*
     return { };
 }
 
-static gboolean parseGstStructureValue(GQuark fieldId, const GValue* value, gpointer userData)
-{
-    if (auto jsonValue = gstStructureValueToJSON(value)) {
-        auto* object = reinterpret_cast<JSON::Object*>(userData);
-        object->setValue(String::fromLatin1(g_quark_to_string(fieldId)), jsonValue->releaseNonNull());
-    }
-    return TRUE;
-}
-
 static RefPtr<JSON::Value> gstStructureToJSON(const GstStructure* structure)
 {
     auto jsonObject = JSON::Object::create();
@@ -1227,7 +1280,13 @@ static RefPtr<JSON::Value> gstStructureToJSON(const GstStructure* structure)
     if (!resultValue)
         return nullptr;
 
-    gst_structure_foreach(structure, parseGstStructureValue, resultValue.get());
+    gstStructureForeach(structure, [&](auto id, auto value) -> bool {
+        if (auto jsonValue = gstStructureValueToJSON(value)) {
+            auto fieldId = gstIdToString(id);
+            resultValue->setValue(fieldId.toString(), jsonValue->releaseNonNull());
+        }
+        return TRUE;
+    });
     return resultValue;
 }
 
@@ -1604,6 +1663,167 @@ std::optional<unsigned> gstGetAutoplugSelectResult(ASCIILiteral nick)
     return enumValue->value;
 }
 
+bool gstStructureForeach(const GstStructure* structure, Function<bool(GstId, const GValue*)>&& callback)
+{
+#if GST_CHECK_VERSION(1, 25, 0)
+    return gst_structure_foreach_id_str(structure, [](GstId id, const GValue* value, gpointer userData) -> gboolean {
+        auto& callback = *reinterpret_cast<Function<bool(GstId, const GValue*)>*>(userData);
+        return callback(id, value);
+    }, &callback);
+#else
+    return gst_structure_foreach(structure, [](GQuark quark, const GValue* value, gpointer userData) -> gboolean {
+        auto& callback = *reinterpret_cast<Function<bool(GQuark, const GValue*)>*>(userData);
+        return callback(quark, value);
+    }, &callback);
+#endif
+}
+
+void gstStructureIdSetValue(GstStructure* structure, GstId id, const GValue* value)
+{
+#if GST_CHECK_VERSION(1, 25, 0)
+    gst_structure_id_str_set_value(structure, id, value);
+#else
+    gst_structure_set_value(structure, g_quark_to_string(id), value);
+#endif
+}
+
+bool gstStructureMapInPlace(GstStructure* structure, Function<bool(GstId, GValue*)>&& callback)
+{
+#if GST_CHECK_VERSION(1, 25, 0)
+    return gst_structure_map_in_place_id_str(structure, [](GstId id, GValue* value, gpointer userData) -> gboolean {
+        auto& callback = *reinterpret_cast<Function<bool(GstId, GValue*)>*>(userData);
+        return callback(id, value);
+    }, &callback);
+#else
+    return gst_structure_map_in_place(structure, [](GQuark quark, GValue* value, gpointer userData) -> gboolean {
+        auto& callback = *reinterpret_cast<Function<bool(GQuark, GValue*)>*>(userData);
+        return callback(quark, value);
+    }, &callback);
+#endif
+}
+
+StringView gstIdToString(GstId id)
+{
+#if GST_CHECK_VERSION(1, 25, 0)
+    return StringView::fromLatin1(gst_id_str_as_str(id));
+#else
+    return StringView::fromLatin1(g_quark_to_string(id));
+#endif
+}
+
+void gstStructureFilterAndMapInPlace(GstStructure* structure, Function<bool(GstId, GValue*)>&& callback)
+{
+#if GST_CHECK_VERSION(1, 25, 0)
+    gst_structure_filter_and_map_in_place_id_str(structure, [](GstId id, GValue* value, gpointer userData) -> gboolean {
+        auto& callback = *reinterpret_cast<Function<bool(GstId, GValue*)>*>(userData);
+        return callback(id, value);
+    }, &callback);
+#else
+    gst_structure_filter_and_map_in_place(structure, [](GQuark quark, GValue* value, gpointer userData) -> gboolean {
+        auto& callback = *reinterpret_cast<Function<bool(GQuark, GValue*)>*>(userData);
+        return callback(quark, value);
+    }, &callback);
+#endif
+}
+
+#if !GST_CHECK_VERSION(1, 24, 0)
+static GstVideoFormat drmFourccToGstVideoFormat(uint32_t fourcc)
+{
+    switch (fourcc) {
+    case DRM_FORMAT_XRGB8888:
+        return GST_VIDEO_FORMAT_BGRx;
+    case DRM_FORMAT_XBGR8888:
+        return GST_VIDEO_FORMAT_RGBx;
+    case DRM_FORMAT_ARGB8888:
+        return GST_VIDEO_FORMAT_BGRA;
+    case DRM_FORMAT_ABGR8888:
+        return GST_VIDEO_FORMAT_RGBA;
+    case DRM_FORMAT_YUV420:
+        return GST_VIDEO_FORMAT_I420;
+    case DRM_FORMAT_YVU420:
+        return GST_VIDEO_FORMAT_YV12;
+    case DRM_FORMAT_NV12:
+        return GST_VIDEO_FORMAT_NV12;
+    case DRM_FORMAT_NV21:
+        return GST_VIDEO_FORMAT_NV21;
+    case DRM_FORMAT_YUV444:
+        return GST_VIDEO_FORMAT_Y444;
+    case DRM_FORMAT_YUV411:
+        return GST_VIDEO_FORMAT_Y41B;
+    case DRM_FORMAT_YUV422:
+        return GST_VIDEO_FORMAT_Y42B;
+    case DRM_FORMAT_P010:
+        return GST_VIDEO_FORMAT_P010_10LE;
+    default:
+        break;
+    }
+
+    RELEASE_ASSERT_NOT_REACHED();
+    return GST_VIDEO_FORMAT_UNKNOWN;
+}
+#endif // !GST_CHECK_VERSION(1, 24, 0)
+
+#if USE(GBM)
+GRefPtr<GstCaps> buildDMABufCaps()
+{
+    GRefPtr<GstCaps> caps = adoptGRef(gst_caps_from_string("video/x-raw(memory:DMABuf), width = " GST_VIDEO_SIZE_RANGE ", height = " GST_VIDEO_SIZE_RANGE ", framerate = " GST_VIDEO_FPS_RANGE));
+#if GST_CHECK_VERSION(1, 24, 0)
+    gst_caps_set_simple(caps.get(), "format", G_TYPE_STRING, "DMA_DRM", nullptr);
+
+    static const char* formats = g_getenv("WEBKIT_GST_DMABUF_FORMATS");
+    if (formats && *formats) {
+        auto formatsString = StringView::fromLatin1(formats);
+        GValue drmSupportedFormats = G_VALUE_INIT;
+        g_value_init(&drmSupportedFormats, GST_TYPE_LIST);
+        for (auto token : formatsString.split(',')) {
+            GValue value = G_VALUE_INIT;
+            g_value_init(&value, G_TYPE_STRING);
+            g_value_set_string(&value, token.toStringWithoutCopying().ascii().data());
+            gst_value_list_append_and_take_value(&drmSupportedFormats, &value);
+        }
+        gst_caps_set_value(caps.get(), "drm-format", &drmSupportedFormats);
+        g_value_unset(&drmSupportedFormats);
+        return caps;
+    }
+#endif
+
+    GValue supportedFormats = G_VALUE_INIT;
+    g_value_init(&supportedFormats, GST_TYPE_LIST);
+    const auto& dmabufFormats = PlatformDisplay::sharedDisplay().dmabufFormats();
+    for (const auto& format : dmabufFormats) {
+#if GST_CHECK_VERSION(1, 24, 0)
+        if (format.modifiers.isEmpty() || format.modifiers[0] == DRM_FORMAT_MOD_INVALID) {
+            GValue value = G_VALUE_INIT;
+            g_value_init(&value, G_TYPE_STRING);
+            g_value_take_string(&value, gst_video_dma_drm_fourcc_to_string(format.fourcc, DRM_FORMAT_MOD_LINEAR));
+            gst_value_list_append_and_take_value(&supportedFormats, &value);
+        } else {
+            for (auto modifier : format.modifiers) {
+                GValue value = G_VALUE_INIT;
+                g_value_init(&value, G_TYPE_STRING);
+                g_value_take_string(&value, gst_video_dma_drm_fourcc_to_string(format.fourcc, modifier));
+                gst_value_list_append_and_take_value(&supportedFormats, &value);
+            }
+        }
+#else
+        GValue value = G_VALUE_INIT;
+        g_value_init(&value, G_TYPE_STRING);
+        g_value_set_string(&value, gst_video_format_to_string(drmFourccToGstVideoFormat(format.fourcc)));
+        gst_value_list_append_and_take_value(&supportedFormats, &value);
+#endif
+    }
+
+#if GST_CHECK_VERSION(1, 24, 0)
+    gst_caps_set_value(caps.get(), "drm-format", &supportedFormats);
+#else
+    gst_caps_set_value(caps.get(), "format", &supportedFormats);
+#endif
+    g_value_unset(&supportedFormats);
+
+    return caps;
+}
+#endif // USE(GBM)
+
 #undef GST_CAT_DEFAULT
 
 } // namespace WebCore
diff --git a/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h b/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h
index f9f42a940a..99361e887d 100644
--- a/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h
+++ b/Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.h
@@ -36,6 +36,11 @@ namespace WebCore {
 class IntSize;
 class SharedBuffer;
 
+using TrackID = uint64_t;
+
+template<typename MappedArg>
+using TrackIDHashMap = HashMap<TrackID, MappedArg, WTF::IntHash<TrackID>, WTF::UnsignedWithZeroKeyHashTraits<TrackID>>;
+
 inline bool webkitGstCheckVersion(guint major, guint minor, guint micro)
 {
     guint currentMajor, currentMinor, currentMicro, currentNano;
@@ -68,6 +73,9 @@ std::optional<FloatSize> getVideoResolutionFromCaps(const GstCaps*);
 bool getSampleVideoInfo(GstSample*, GstVideoInfo&);
 #endif
 StringView capsMediaType(const GstCaps*);
+std::optional<TrackID> getStreamIdFromPad(const GRefPtr<GstPad>&);
+std::optional<TrackID> getStreamIdFromStream(const GRefPtr<GstStream>&);
+std::optional<TrackID> parseStreamId(StringView stringId);
 bool doCapsHaveType(const GstCaps*, const char*);
 bool areEncryptedCaps(const GstCaps*);
 Vector<String> extractGStreamerOptionsFromCommandLine();
@@ -327,6 +335,22 @@ private:
     Atomic<uint64_t> m_totalObservers;
 };
 
+#if GST_CHECK_VERSION(1, 25, 0)
+using GstId = const GstIdStr*;
+#else
+using GstId = GQuark;
+#endif
+
+bool gstStructureForeach(const GstStructure*, Function<bool(GstId, const GValue*)>&&);
+void gstStructureIdSetValue(GstStructure*, GstId, const GValue*);
+bool gstStructureMapInPlace(GstStructure*, Function<bool(GstId, GValue*)>&&);
+StringView gstIdToString(GstId);
+void gstStructureFilterAndMapInPlace(GstStructure*, Function<bool(GstId, GValue*)>&&);
+
+#if USE(GBM)
+WARN_UNUSED_RETURN GRefPtr<GstCaps> buildDMABufCaps();
+#endif
+
 } // namespace WebCore
 
 #ifndef GST_BUFFER_DTS_OR_PTS
diff --git a/Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp b/Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp
index 73aa1fe6bb..d66db894bd 100644
--- a/Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp
@@ -740,11 +740,12 @@ GStreamerRegistryScanner::CodecLookupResult GStreamerRegistryScanner::isHEVCCode
     return areCapsSupported(configuration, h265Caps, shouldCheckForHardwareUse);
 }
 
-GStreamerRegistryScanner::CodecLookupResult GStreamerRegistryScanner::isCodecSupported(Configuration configuration, const String& codec, bool shouldCheckForHardwareUse) const
+GStreamerRegistryScanner::CodecLookupResult GStreamerRegistryScanner::isCodecSupported(Configuration configuration, const String& codec, bool shouldCheckForHardwareUse, CaseSensitiveCodecName caseSensitive) const
 {
     // If the codec is named like a mimetype (eg: video/avc) remove the "video/" part.
     size_t slashIndex = codec.find('/');
-    String codecName = slashIndex != notFound ? codec.substring(slashIndex + 1) : codec;
+    String subType = slashIndex != notFound ? codec.substring(slashIndex + 1) : codec;
+    auto codecName = caseSensitive == CaseSensitiveCodecName::Yes ? subType : subType.convertToASCIILowercase();
 
     CodecLookupResult result;
     if (codecName.startsWith("avc1"_s))
@@ -767,7 +768,7 @@ GStreamerRegistryScanner::CodecLookupResult GStreamerRegistryScanner::isCodecSup
 
 #ifndef GST_DISABLE_GST_DEBUG
     ASCIILiteral configLogString = configurationNameForLogging(configuration);
-    GST_LOG("Checked %s %s codec \"%s\" supported %s", shouldCheckForHardwareUse ? "hardware" : "software", configLogString.characters(), codecName.utf8().data(), boolForPrinting(result.isSupported));
+    GST_LOG("Checked %s %s codec \"%s\" supported %s", shouldCheckForHardwareUse ? "hardware" : "software", configLogString.characters(), codec.utf8().data(), boolForPrinting(result.isSupported));
 #endif
     return result;
 }
@@ -782,7 +783,7 @@ bool GStreamerRegistryScanner::supportsFeatures(const String& features) const
     return false;
 }
 
-MediaPlayerEnums::SupportsType GStreamerRegistryScanner::isContentTypeSupported(Configuration configuration, const ContentType& contentType, const Vector<ContentType>& contentTypesRequiringHardwareSupport) const
+MediaPlayerEnums::SupportsType GStreamerRegistryScanner::isContentTypeSupported(Configuration configuration, const ContentType& contentType, const Vector<ContentType>& contentTypesRequiringHardwareSupport, CaseSensitiveCodecName caseSensitive) const
 {
     VideoDecodingLimits* videoDecodingLimits = nullptr;
 #ifdef VIDEO_DECODING_LIMIT
@@ -885,7 +886,7 @@ MediaPlayerEnums::SupportsType GStreamerRegistryScanner::isContentTypeSupported(
                     return !fnmatch(hardwareCodec.utf8().data(), codec.utf8().data(), 0);
             }) != notFound;
         }) != notFound;
-        if (!isCodecSupported(configuration, codec, requiresHardwareSupport))
+        if (!isCodecSupported(configuration, codec, requiresHardwareSupport, caseSensitive))
             return SupportsType::IsNotSupported;
     }
     return SupportsType::IsSupported;
diff --git a/Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.h b/Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.h
index 2ea9a57d12..d0695a0157 100644
--- a/Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.h
+++ b/Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.h
@@ -102,8 +102,9 @@ public:
         GRefPtr<GstElementFactory> factory;
     };
 
-    CodecLookupResult isCodecSupported(Configuration, const String& codec, bool usingHardware = false) const;
-    MediaPlayerEnums::SupportsType isContentTypeSupported(Configuration, const ContentType&, const Vector<ContentType>& contentTypesRequiringHardwareSupport) const;
+    enum class CaseSensitiveCodecName : bool { No, Yes };
+    CodecLookupResult isCodecSupported(Configuration, const String& codec, bool usingHardware = false, CaseSensitiveCodecName = CaseSensitiveCodecName::Yes) const;
+    MediaPlayerEnums::SupportsType isContentTypeSupported(Configuration, const ContentType&, const Vector<ContentType>& contentTypesRequiringHardwareSupport, CaseSensitiveCodecName = CaseSensitiveCodecName::Yes) const;
     bool areAllCodecsSupported(Configuration, const Vector<String>& codecs, bool shouldCheckForHardwareUse = false) const;
 
     CodecLookupResult areCapsSupported(Configuration, const GRefPtr<GstCaps>&, bool shouldCheckForHardwareUse) const;
diff --git a/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp
index 725681056f..42bf98c634 100644
--- a/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp
@@ -54,6 +54,15 @@ InbandTextTrackPrivateGStreamer::InbandTextTrackPrivateGStreamer(unsigned index,
     installUpdateConfigurationHandlers();
 }
 
+InbandTextTrackPrivateGStreamer::InbandTextTrackPrivateGStreamer(unsigned index, GRefPtr<GstPad>&& pad, TrackID trackId)
+    : InbandTextTrackPrivate(CueFormat::WebVTT)
+    , TrackPrivateBaseGStreamer(TrackPrivateBaseGStreamer::TrackType::Text, this, index, WTFMove(pad), trackId)
+    , m_kind(Kind::Subtitles)
+{
+    ensureTextTrackDebugCategoryInitialized();
+    installUpdateConfigurationHandlers();
+}
+
 InbandTextTrackPrivateGStreamer::InbandTextTrackPrivateGStreamer(unsigned index, GstStream* stream)
     : InbandTextTrackPrivate(CueFormat::WebVTT)
     , TrackPrivateBaseGStreamer(TrackPrivateBaseGStreamer::TrackType::Text, this, index, stream)
@@ -61,7 +70,7 @@ InbandTextTrackPrivateGStreamer::InbandTextTrackPrivateGStreamer(unsigned index,
     ensureTextTrackDebugCategoryInitialized();
     installUpdateConfigurationHandlers();
 
-    GST_INFO("Track %d got stream start for stream %s.", m_index, m_stringId.string().utf8().data());
+    GST_INFO("Track %d got stream start for stream %" PRIu64 ". GStreamer stream-id: %s", m_index, m_id, m_gstStreamId.string().utf8().data());
 
     GST_DEBUG("Stream %" GST_PTR_FORMAT, m_stream.get());
     auto caps = adoptGRef(gst_stream_get_caps(m_stream.get()));
@@ -70,6 +79,7 @@ InbandTextTrackPrivateGStreamer::InbandTextTrackPrivateGStreamer(unsigned index,
 
 void InbandTextTrackPrivateGStreamer::tagsChanged(GRefPtr<GstTagList>&& tags)
 {
+    ASSERT(isMainThread());
     if (!tags)
         return;
 
diff --git a/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h
index debce2844b..84c343b792 100644
--- a/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.h
@@ -42,6 +42,11 @@ public:
         return adoptRef(*new InbandTextTrackPrivateGStreamer(index, WTFMove(pad), shouldHandleStreamStartEvent));
     }
 
+    static Ref<InbandTextTrackPrivateGStreamer> create(unsigned index, GRefPtr<GstPad>&& pad, TrackID trackId)
+    {
+        return adoptRef(*new InbandTextTrackPrivateGStreamer(index, WTFMove(pad), trackId));
+    }
+
     static Ref<InbandTextTrackPrivateGStreamer> create(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&&, unsigned index, GRefPtr<GstPad> pad)
     {
         return create(index, WTFMove(pad));
@@ -53,8 +58,8 @@ public:
     }
 
     Kind kind() const final { return m_kind; }
-    TrackID id() const final { return m_trackID.value_or(m_index); }
-    std::optional<AtomString> trackUID() const final { return m_stringId; }
+    TrackID id() const final { return m_trackID.value_or(m_id); }
+    std::optional<AtomString> trackUID() const final { return std::nullopt; }
     AtomString label() const final { return m_label; }
     AtomString language() const final { return m_language; }
     int trackIndex() const final { return m_index; }
@@ -66,6 +71,7 @@ protected:
 
 private:
     InbandTextTrackPrivateGStreamer(unsigned index, GRefPtr<GstPad>&&, bool shouldHandleStreamStartEvent);
+    InbandTextTrackPrivateGStreamer(unsigned index, GRefPtr<GstPad>&&, TrackID);
     InbandTextTrackPrivateGStreamer(unsigned index, GstStream*);
 
     void notifyTrackOfSample();
diff --git a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
index 9b30c5cfac..6786147019 100644
--- a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp
@@ -1144,7 +1144,7 @@ void MediaPlayerPrivateGStreamer::notifyPlayerOfTrack()
     ASSERT(m_isLegacyPlaybin);
 
     using TrackType = TrackPrivateBaseGStreamer::TrackType;
-    std::variant<HashMap<AtomString, Ref<AudioTrackPrivateGStreamer>>*, HashMap<AtomString, Ref<VideoTrackPrivateGStreamer>>*, HashMap<AtomString, Ref<InbandTextTrackPrivateGStreamer>>*> variantTracks = static_cast<HashMap<AtomString, Ref<TrackPrivateType>>*>(0);
+    std::variant<TrackIDHashMap<Ref<AudioTrackPrivateGStreamer>>*, TrackIDHashMap<Ref<VideoTrackPrivateGStreamer>>*, TrackIDHashMap<Ref<InbandTextTrackPrivateGStreamer>>*> variantTracks = static_cast<TrackIDHashMap<Ref<TrackPrivateType>>*>(0);
     auto type(static_cast<TrackType>(variantTracks.index()));
     const char* typeName;
     bool* hasType;
@@ -1167,7 +1167,7 @@ void MediaPlayerPrivateGStreamer::notifyPlayerOfTrack()
     default:
         ASSERT_NOT_REACHED();
     }
-    auto& tracks = *std::get<HashMap<AtomString, Ref<TrackPrivateType>>*>(variantTracks);
+    auto& tracks = *std::get<TrackIDHashMap<Ref<TrackPrivateType>>*>(variantTracks);
 
     // Ignore notifications after a EOS. We don't want the tracks to disappear when the video is finished.
     if (m_isEndReached && (type == TrackType::Audio || type == TrackType::Video))
@@ -1190,7 +1190,7 @@ void MediaPlayerPrivateGStreamer::notifyPlayerOfTrack()
             player->sizeChanged();
     }
 
-    Vector<AtomString> validStreams;
+    Vector<TrackID> validStreams;
     StringPrintStream getPadProperty;
     getPadProperty.printf("get-%s-pad", typeName);
 
@@ -1202,7 +1202,7 @@ void MediaPlayerPrivateGStreamer::notifyPlayerOfTrack()
         if (!pad)
             continue;
 
-        AtomString streamId(TrackPrivateBaseGStreamer::trackIdFromPadStreamStartOrUniqueID(type, i, pad));
+        TrackID streamId(getStreamIdFromPad(pad).value_or(i));
         validStreams.append(streamId);
 
         if (i < tracks.size()) {
@@ -1220,7 +1220,7 @@ void MediaPlayerPrivateGStreamer::notifyPlayerOfTrack()
         }
 
         auto track = TrackPrivateType::create(*this, i, GRefPtr(pad));
-        ASSERT(track->stringId() == streamId);
+        ASSERT(track->streamId() == streamId);
         if (!track->trackIndex() && (type == TrackType::Audio || type == TrackType::Video))
             track->setActive(true);
 
@@ -1236,7 +1236,7 @@ void MediaPlayerPrivateGStreamer::notifyPlayerOfTrack()
             player->addTextTrack(*std::get<InbandTextTrackPrivate*>(variantTrack));
             break;
         }
-        tracks.add(track->stringId(), WTFMove(track));
+        tracks.add(track->streamId(), WTFMove(track));
         changed = true;
     }
 
@@ -1281,16 +1281,16 @@ void MediaPlayerPrivateGStreamer::videoSinkCapsChanged(GstPad* videoSinkPad)
     });
 }
 
-void MediaPlayerPrivateGStreamer::handleTextSample(GRefPtr<GstSample>&& sample, const String& streamId)
+void MediaPlayerPrivateGStreamer::handleTextSample(GRefPtr<GstSample>&& sample, TrackID streamId)
 {
     for (auto& track : m_textTracks.values()) {
-        if (track->stringId() == streamId) {
+        if (track->streamId() == streamId) {
             track->handleSample(WTFMove(sample));
             return;
         }
     }
 
-    GST_WARNING_OBJECT(m_pipeline.get(), "Got sample with unknown stream ID %s.", streamId.utf8().data());
+    GST_WARNING_OBJECT(m_pipeline.get(), "Got sample with unknown stream ID %" PRIu64 ".", streamId);
 }
 
 MediaTime MediaPlayerPrivateGStreamer::platformDuration() const
@@ -1581,7 +1581,7 @@ void MediaPlayerPrivateGStreamer::updateEnabledVideoTrack()
         GST_DEBUG_OBJECT(m_pipeline.get(), "Setting playbin2 current-video=%d", wantedTrack->trackIndex());
         g_object_set(m_pipeline.get(), "current-video", wantedTrack->trackIndex(), nullptr);
     } else {
-        m_wantedVideoStreamId = wantedTrack->stringId();
+        m_wantedVideoStreamId = wantedTrack->streamId();
         playbin3SendSelectStreamsIfAppropriate();
     }
 }
@@ -1605,7 +1605,7 @@ void MediaPlayerPrivateGStreamer::updateEnabledAudioTrack()
         GST_DEBUG_OBJECT(m_pipeline.get(), "Setting playbin2 current-audio=%d", wantedTrack->trackIndex());
         g_object_set(m_pipeline.get(), "current-audio", wantedTrack->trackIndex(), nullptr);
     } else {
-        m_wantedAudioStreamId = wantedTrack->stringId();
+        m_wantedAudioStreamId = wantedTrack->streamId();
         playbin3SendSelectStreamsIfAppropriate();
     }
 }
@@ -1622,17 +1622,20 @@ void MediaPlayerPrivateGStreamer::playbin3SendSelectStreamsIfAppropriate()
         return;
 
     GList* streams = nullptr;
-    if (!m_wantedVideoStreamId.isNull()) {
+    if (m_wantedVideoStreamId) {
+        auto track = m_videoTracks.get(m_wantedVideoStreamId.value());
         m_requestedVideoStreamId = m_wantedVideoStreamId;
-        streams = g_list_append(streams, g_strdup(m_wantedVideoStreamId.string().utf8().data()));
+        streams = g_list_append(streams, g_strdup(track->gstStreamId().string().utf8().data()));
     }
-    if (!m_wantedAudioStreamId.isNull()) {
+    if (m_wantedAudioStreamId) {
+        auto track = m_audioTracks.get(m_wantedAudioStreamId.value());
         m_requestedAudioStreamId = m_wantedAudioStreamId;
-        streams = g_list_append(streams, g_strdup(m_wantedAudioStreamId.string().utf8().data()));
+        streams = g_list_append(streams, g_strdup(track->gstStreamId().string().utf8().data()));
     }
-    if (!m_wantedTextStreamId.isNull()) {
+    if (m_wantedTextStreamId) {
+        auto track = m_textTracks.get(m_wantedTextStreamId.value());
         m_requestedTextStreamId = m_wantedTextStreamId;
-        streams = g_list_append(streams, g_strdup(m_wantedTextStreamId.string().utf8().data()));
+        streams = g_list_append(streams, g_strdup(track->gstStreamId().string().utf8().data()));
     }
 
     if (!streams)
@@ -1710,7 +1713,7 @@ void MediaPlayerPrivateGStreamer::updateTracks([[maybe_unused]] const GRefPtr<Gs
         auto track = m_##type##Tracks.get(streamId);                    \
         if (isTrackCached)                                              \
             track->updateConfigurationFromCaps(WTFMove(caps));          \
-        auto trackId = track->stringId();                               \
+        auto trackId = track->streamId();                               \
         if (!type##TrackIndex) { \
             m_wanted##Type##StreamId = trackId;                         \
             m_requested##Type##StreamId = trackId;                      \
@@ -1728,11 +1731,11 @@ void MediaPlayerPrivateGStreamer::updateTracks([[maybe_unused]] const GRefPtr<Gs
     for (unsigned i = 0; i < length; i++) {
         auto* stream = gst_stream_collection_get_stream(m_streamCollection.get(), i);
         RELEASE_ASSERT(stream);
-        auto streamId = AtomString::fromLatin1(gst_stream_get_stream_id(stream));
+        auto streamId = getStreamIdFromStream(stream).value_or(0);
         auto type = gst_stream_get_stream_type(stream);
         auto caps = adoptGRef(gst_stream_get_caps(stream));
 
-        GST_DEBUG_OBJECT(pipeline(), "#%u %s track with ID %s and caps %" GST_PTR_FORMAT, i, gst_stream_type_get_name(type), streamId.string().ascii().data(), caps.get());
+        GST_DEBUG_OBJECT(pipeline(), "#%u %s track with ID %" PRIu64 " and caps %" GST_PTR_FORMAT, i, gst_stream_type_get_name(type), streamId, caps.get());
 
         if (type & GST_STREAM_TYPE_AUDIO) {
             CREATE_OR_SELECT_TRACK(audio, Audio);
@@ -1742,7 +1745,7 @@ void MediaPlayerPrivateGStreamer::updateTracks([[maybe_unused]] const GRefPtr<Gs
         else if (type & GST_STREAM_TYPE_TEXT && !useMediaSource)
             CREATE_OR_SELECT_TRACK(text, Text);
         else
-            GST_WARNING("Unknown track type found for stream %s", streamId.string().ascii().data());
+            GST_WARNING("Unknown track type found for stream %" PRIu64 "", streamId);
     }
 #undef CREATE_OR_SELECT_TRACK
 }
@@ -2145,14 +2148,6 @@ void MediaPlayerPrivateGStreamer::handleMessage(GstMessage* message)
         gst_element_set_state(m_pipeline.get(), GST_STATE_PAUSED);
         gst_element_set_state(m_pipeline.get(), GST_STATE_PLAYING);
         break;
-    case GST_MESSAGE_LATENCY:
-        // Recalculate the latency, we don't need any special handling
-        // here other than the GStreamer default.
-        // This can happen if the latency of live elements changes, or
-        // for one reason or another a new live element is added or
-        // removed from the pipeline.
-        gst_bin_recalculate_latency(GST_BIN(m_pipeline.get()));
-        break;
     case GST_MESSAGE_ELEMENT:
 #if USE(GSTREAMER_MPEGTS)
         if (GstMpegtsSection* section = gst_message_parse_mpegts_section(message)) {
@@ -3180,6 +3175,13 @@ void MediaPlayerPrivateGStreamer::createGSTPlayBin(const URL& url)
 #endif
     registerActivePipeline(m_pipeline);
 
+    if (isMediaStream) {
+        auto clock = adoptGRef(gst_system_clock_obtain());
+        gst_pipeline_use_clock(GST_PIPELINE(m_pipeline.get()), clock.get());
+        gst_element_set_base_time(m_pipeline.get(), 0);
+        gst_element_set_start_time(m_pipeline.get(), GST_CLOCK_TIME_NONE);
+    }
+
     setStreamVolumeElement(GST_STREAM_VOLUME(m_pipeline.get()));
 
     GST_INFO_OBJECT(pipeline(), "Using legacy playbin element: %s", boolForPrinting(m_isLegacyPlaybin));
@@ -3278,17 +3280,17 @@ void MediaPlayerPrivateGStreamer::setupCodecProbe(GstElement* element)
         if (!codec)
             return GST_PAD_PROBE_REMOVE;
 
-        GUniquePtr<char> streamId(gst_pad_get_stream_id(pad));
+        std::optional<TrackID> streamId(getStreamIdFromPad(pad));
         if (UNLIKELY(!streamId)) {
             // FIXME: This is a workaround for https://bugs.webkit.org/show_bug.cgi?id=256428.
             GST_WARNING_OBJECT(player->pipeline(), "Caps event received before stream-start. This shouldn't happen!");
             return GST_PAD_PROBE_REMOVE;
         }
 
-        GST_INFO_OBJECT(player->pipeline(), "Setting codec for stream %s to %s", streamId.get(), codec.get());
+        GST_INFO_OBJECT(player->pipeline(), "Setting codec for stream %" PRIu64 " to %s", streamId.value(), codec.get());
         {
             Locker locker { player->m_codecsLock };
-            player->m_codecs.add(String::fromLatin1(streamId.get()), String::fromLatin1(codec.get()));
+            player->m_codecs.add(streamId.value(), String::fromLatin1(codec.get()));
         }
         return GST_PAD_PROBE_REMOVE;
     }), this, nullptr);
@@ -3459,13 +3461,17 @@ void MediaPlayerPrivateGStreamer::swapBuffersIfNeeded()
 }
 #endif
 
-void MediaPlayerPrivateGStreamer::pushTextureToCompositor()
+void MediaPlayerPrivateGStreamer::pushTextureToCompositor(bool isDuplicateSample)
 {
     Locker sampleLocker { m_sampleMutex };
     if (!GST_IS_SAMPLE(m_sample.get()))
         return;
 
-    ++m_sampleCount;
+    // The GL video appsink reports the sample following a preroll with the same buffer, so don't
+    // account for this scenario, this is important for rvfc, ensuring timestamps in metadata
+    // increase monotonically during playback.
+    if (!isDuplicateSample)
+        ++m_sampleCount;
 
     auto internalCompositingOperation = [this](TextureMapperPlatformLayerProxyGL& proxy, std::unique_ptr<GstVideoFrameHolder>&& frameHolder) {
         std::unique_ptr<TextureMapperPlatformLayerBuffer> layerBuffer;
@@ -3897,6 +3903,7 @@ void MediaPlayerPrivateGStreamer::triggerRepaint(GRefPtr<GstSample>&& sample)
     ASSERT(!isMainThread());
 
     GstBuffer* buffer = gst_sample_get_buffer(sample.get());
+    RELEASE_ASSERT(buffer);
     if (buffer && GST_BUFFER_PTS_IS_VALID(buffer)) {
         // Heuristic to avoid asking for playbackPosition() from a non-main thread.
         MediaTime currentTime = MediaTime(gst_segment_to_stream_time(gst_sample_get_segment(sample.get()), GST_FORMAT_TIME, GST_BUFFER_PTS(buffer)), GST_SECOND);
@@ -3906,9 +3913,15 @@ void MediaPlayerPrivateGStreamer::triggerRepaint(GRefPtr<GstSample>&& sample)
     }
 
     bool shouldTriggerResize;
+    bool isDuplicateSample = false;
     {
         Locker sampleLocker { m_sampleMutex };
         shouldTriggerResize = !m_sample;
+        if (!shouldTriggerResize) {
+            auto previousBuffer = gst_sample_get_buffer(m_sample.get());
+            RELEASE_ASSERT(previousBuffer);
+            isDuplicateSample = buffer == previousBuffer;
+        }
         m_sample = WTFMove(sample);
     }
 
@@ -3922,6 +3935,22 @@ void MediaPlayerPrivateGStreamer::triggerRepaint(GRefPtr<GstSample>&& sample)
                 GST_ERROR_OBJECT(pipeline(), "Received sample without caps: %" GST_PTR_FORMAT, m_sample.get());
                 return;
             }
+
+            if (UNLIKELY(!gst_caps_is_empty(caps.get()) && !gst_caps_is_any(caps.get()))) {
+                auto structure = gst_caps_get_structure(caps.get(), 0);
+                int framerateNumerator, framerateDenominator;
+                if (gst_structure_get_fraction(structure, "framerate", &framerateNumerator, &framerateDenominator)) {
+                    // In case the framerate is unknown, the frame duration won't be set on buffers. In that
+                    // case, estimate it. Otherwise use 0 and expect the PTS to be set depending on the
+                    // framerate when computing the rvfc frame mediaTime.
+                    if (!framerateNumerator) {
+                        if (GST_BUFFER_PTS_IS_VALID(buffer) && !GST_BUFFER_DURATION_IS_VALID(buffer)) {
+                            GST_DEBUG_OBJECT(pipeline(), "Video framerate is unknown, estimating from first buffer PTS");
+                            m_estimatedVideoFrameDuration = fromGstClockTime(GST_BUFFER_PTS(buffer));
+                        }
+                    }
+                }
+            }
         }
         RunLoop::main().dispatch([weakThis = ThreadSafeWeakPtr { *this }, this, caps = WTFMove(caps)] {
             RefPtr self = weakThis.get();
@@ -3956,9 +3985,9 @@ void MediaPlayerPrivateGStreamer::triggerRepaint(GRefPtr<GstSample>&& sample)
     if (m_isUsingFallbackVideoSink) {
         Locker locker { m_drawLock };
         auto proxyOperation =
-            [this](TextureMapperPlatformLayerProxyGL& proxy)
+            [this, isDuplicateSample](TextureMapperPlatformLayerProxyGL& proxy)
             {
-                return proxy.scheduleUpdateOnCompositorThread([this] { this->pushTextureToCompositor(); });
+                return proxy.scheduleUpdateOnCompositorThread([this, isDuplicateSample] { this->pushTextureToCompositor(isDuplicateSample); });
             };
 #if USE(NICOSIA)
         auto& proxy = m_nicosiaLayer->proxy();
@@ -3979,8 +4008,9 @@ void MediaPlayerPrivateGStreamer::triggerRepaint(GRefPtr<GstSample>&& sample)
         }
 #endif
 
-        pushTextureToCompositor();
+        pushTextureToCompositor(isDuplicateSample);
     }
+    pushTextureToCompositor(isDuplicateSample);
 #endif // USE(TEXTURE_MAPPER)
 }
 
@@ -4629,15 +4659,15 @@ WTFLogChannel& MediaPlayerPrivateGStreamer::logChannel() const
 
 std::optional<VideoFrameMetadata> MediaPlayerPrivateGStreamer::videoFrameMetadata()
 {
+    Locker sampleLocker { m_sampleMutex };
+    if (!GST_IS_SAMPLE(m_sample.get()))
+        return { };
+
     if (m_sampleCount == m_lastVideoFrameMetadataSampleCount)
         return { };
 
     m_lastVideoFrameMetadataSampleCount = m_sampleCount;
 
-    Locker sampleLocker { m_sampleMutex };
-    if (!GST_IS_SAMPLE(m_sample.get()))
-        return { };
-
     auto* buffer = gst_sample_get_buffer(m_sample.get());
     auto metadata = webkitGstBufferGetVideoFrameMetadata(buffer);
     auto size = naturalSize();
@@ -4645,9 +4675,15 @@ std::optional<VideoFrameMetadata> MediaPlayerPrivateGStreamer::videoFrameMetadat
     metadata.height = size.height();
     metadata.presentedFrames = m_sampleCount;
 
-    // FIXME: presentationTime and expectedDisplayTime might not always have the same value, we should try getting more precise values.
-    metadata.presentationTime = MonotonicTime::now().secondsSinceEpoch().seconds();
-    metadata.expectedDisplayTime = metadata.presentationTime;
+    if (GST_BUFFER_PTS_IS_VALID(buffer)) {
+        auto bufferPts = fromGstClockTime(GST_BUFFER_PTS(buffer));
+        metadata.mediaTime = (bufferPts - m_estimatedVideoFrameDuration).toDouble();
+
+        // FIXME: presentationTime and expectedDisplayTime might not always have the same value, we should try getting more precise values.
+        const auto currentTime = this->currentTime();
+        metadata.presentationTime = MonotonicTime::now().secondsSinceEpoch().seconds() - (currentTime - bufferPts).toDouble();
+        metadata.expectedDisplayTime = metadata.presentationTime;
+    }
 
     return metadata;
 }
@@ -4687,7 +4723,7 @@ void MediaPlayerPrivateGStreamer::checkPlayingConsistency()
     }
 }
 
-String MediaPlayerPrivateGStreamer::codecForStreamId(const String& streamId)
+String MediaPlayerPrivateGStreamer::codecForStreamId(TrackID streamId)
 {
     Locker locker { m_codecsLock };
     if (UNLIKELY(!m_codecs.contains(streamId)))
diff --git a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h
index 687bb4648a..e01d9208f5 100644
--- a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h
@@ -146,6 +146,7 @@ public:
 #if ENABLE(MEDIA_STREAM)
     void load(MediaStreamPrivate&) override;
 #endif
+    bool isMediaStreamPlayer() const;
     void cancelLoad() final;
     void prepareToPlay() final;
     void play() override;
@@ -227,7 +228,7 @@ public:
     void flushCurrentBuffer();
 #endif
 
-    void handleTextSample(GRefPtr<GstSample>&&, const String& streamId);
+    void handleTextSample(GRefPtr<GstSample>&&, TrackID streamId);
 
 #if !RELEASE_LOG_DISABLED
     const Logger& logger() const final { return m_logger; }
@@ -243,7 +244,7 @@ public:
     // to avoid deadlocks from threads in the playback pipeline waiting for the main thread.
     AbortableTaskQueue& sinkTaskQueue() { return m_sinkTaskQueue; }
 
-    String codecForStreamId(const String& streamId);
+    String codecForStreamId(TrackID streamId);
     bool shouldDownload() { return m_fillTimer.isActive(); }
 
     void setQuirkState(const GStreamerQuirk* owner, std::unique_ptr<GStreamerQuirkBase::GStreamerQuirkState>&& state)
@@ -312,7 +313,7 @@ protected:
 #endif
 
 #if USE(TEXTURE_MAPPER)
-    void pushTextureToCompositor();
+    void pushTextureToCompositor(bool isDuplicateSample);
 #if USE(NICOSIA)
     void swapBuffersIfNeeded() final;
 #else
@@ -493,8 +494,6 @@ private:
     GstElement* createAudioSink();
     GstElement* audioSink() const { return m_audioSink.get(); }
 
-    bool isMediaStreamPlayer() const;
-
     friend class MediaPlayerFactoryGStreamer;
     static void getSupportedTypes(HashSet<String>&);
     static MediaPlayer::SupportsType supportsType(const MediaEngineSupportParameters&);
@@ -609,27 +608,27 @@ private:
 
     // playbin3 only:
     bool m_waitingForStreamsSelectedEvent { true };
-    AtomString m_currentAudioStreamId; // Currently playing.
-    AtomString m_currentVideoStreamId;
-    AtomString m_currentTextStreamId;
-    AtomString m_wantedAudioStreamId; // Set in JavaScript.
-    AtomString m_wantedVideoStreamId;
-    AtomString m_wantedTextStreamId;
-    AtomString m_requestedAudioStreamId; // Expected in the next STREAMS_SELECTED message.
-    AtomString m_requestedVideoStreamId;
-    AtomString m_requestedTextStreamId;
+    std::optional<TrackID> m_currentAudioStreamId; // Currently playing.
+    std::optional<TrackID> m_currentVideoStreamId;
+    std::optional<TrackID> m_currentTextStreamId;
+    std::optional<TrackID> m_wantedAudioStreamId; // Set in JavaScript.
+    std::optional<TrackID> m_wantedVideoStreamId;
+    std::optional<TrackID> m_wantedTextStreamId;
+    std::optional<TrackID> m_requestedAudioStreamId; // Expected in the next STREAMS_SELECTED message.
+    std::optional<TrackID> m_requestedVideoStreamId;
+    std::optional<TrackID> m_requestedTextStreamId;
 
 #if ENABLE(WEB_AUDIO)
     RefPtr<AudioSourceProviderGStreamer> m_audioSourceProvider;
 #endif
     GRefPtr<GstElement> m_downloadBuffer;
 
-    HashMap<AtomString, Ref<AudioTrackPrivateGStreamer>> m_audioTracks;
-    HashMap<AtomString, Ref<VideoTrackPrivateGStreamer>> m_videoTracks;
-    HashMap<AtomString, Ref<InbandTextTrackPrivateGStreamer>> m_textTracks;
+    TrackIDHashMap<Ref<AudioTrackPrivateGStreamer>> m_audioTracks;
+    TrackIDHashMap<Ref<VideoTrackPrivateGStreamer>> m_videoTracks;
+    TrackIDHashMap<Ref<InbandTextTrackPrivateGStreamer>> m_textTracks;
     RefPtr<InbandMetadataTextTrackPrivateGStreamer> m_chaptersTrack;
 #if USE(GSTREAMER_MPEGTS)
-    HashMap<AtomString, RefPtr<InbandMetadataTextTrackPrivateGStreamer>> m_metadataTracks;
+    TrackIDHashMap<RefPtr<InbandMetadataTextTrackPrivateGStreamer>> m_metadataTracks;
 #endif
     virtual bool isMediaSource() const { return false; }
 
@@ -675,7 +674,7 @@ private:
 
     void setupCodecProbe(GstElement*);
     Lock m_codecsLock;
-    HashMap<String, String> m_codecs WTF_GUARDED_BY_LOCK(m_codecsLock);
+    TrackIDHashMap<String> m_codecs WTF_GUARDED_BY_LOCK(m_codecsLock);
 
     bool isSeamlessSeekingEnabled() const { return m_seekFlags & (1 << GST_SEEK_FLAG_SEGMENT); }
 
@@ -683,6 +682,8 @@ private:
 
     RefPtr<GStreamerQuirksManager> m_quirksManagerForTesting;
     HashMap<const GStreamerQuirk*, std::unique_ptr<GStreamerQuirkBase::GStreamerQuirkState>> m_quirkStates;
+
+    MediaTime m_estimatedVideoFrameDuration { MediaTime::zeroTime() };
 };
 
 }
diff --git a/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.cpp
index 8be96e084c..fa584c2b11 100644
--- a/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/TextSinkGStreamer.cpp
@@ -42,7 +42,7 @@ using namespace WebCore;
 struct _WebKitTextSinkPrivate {
     GRefPtr<GstElement> appSink;
     ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer> mediaPlayerPrivate;
-    GUniquePtr<char> streamId;
+    std::optional<TrackID> streamId;
 };
 
 #define webkit_text_sink_parent_class parent_class
@@ -54,7 +54,7 @@ static void webkitTextSinkHandleSample(WebKitTextSink* self, GRefPtr<GstSample>&
     auto* priv = self->priv;
     if (!priv->streamId) {
         auto pad = adoptGRef(gst_element_get_static_pad(priv->appSink.get(), "sink"));
-        priv->streamId.reset(gst_pad_get_stream_id(pad.get()));
+        priv->streamId = getStreamIdFromPad(pad.get());
     }
 
     if (UNLIKELY(!priv->streamId)) {
@@ -65,7 +65,7 @@ static void webkitTextSinkHandleSample(WebKitTextSink* self, GRefPtr<GstSample>&
     // Player private methods that interact with WebCore must run from the main thread. Things can
     // be destroyed before that code runs, including the text sink and priv, so pass everything in a
     // safe way.
-    callOnMainThread([mediaPlayerPrivate = ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>(priv->mediaPlayerPrivate), streamId = String::fromUTF8(priv->streamId.get()), sample = WTFMove(sample)]() mutable {
+    callOnMainThread([mediaPlayerPrivate = ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>(priv->mediaPlayerPrivate), streamId = priv->streamId.value(), sample = WTFMove(sample)]() mutable {
         RefPtr player = mediaPlayerPrivate.get();
         if (!player)
             return;
diff --git a/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp
index 89386b9ed6..aca899902d 100644
--- a/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp
@@ -40,37 +40,6 @@ GST_DEBUG_CATEGORY_EXTERN(webkit_media_player_debug);
 
 namespace WebCore {
 
-char TrackPrivateBaseGStreamer::prefixForType(TrackType trackType)
-{
-        switch (trackType) {
-        case TrackPrivateBaseGStreamer::TrackType::Audio:
-            return 'A';
-        case TrackPrivateBaseGStreamer::TrackType::Video:
-            return 'V';
-        case TrackPrivateBaseGStreamer::TrackType::Text:
-            return 'T';
-        default:
-            ASSERT_NOT_REACHED();
-            return 'U';
-        }
-}
-
-static AtomString trimStreamId(StringView streamId)
-{
-    size_t index = streamId.find([](auto c) {
-        return c != '0';
-    });
-
-    if (index == notFound)
-        return AtomString::fromLatin1("0");
-    return AtomString(streamId.substring(index).toString());
-}
-
-AtomString TrackPrivateBaseGStreamer::generateUniquePlaybin2StreamID(TrackType trackType, unsigned index)
-{
-    return makeAtomString(prefixForType(trackType), index);
-}
-
 static GRefPtr<GstPad> findBestUpstreamPad(GRefPtr<GstPad> pad)
 {
     if (!pad)
@@ -101,11 +70,27 @@ TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer(TrackType type, TrackPrivat
     tagsChanged();
 }
 
+TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer(TrackType type, TrackPrivateBase* owner, unsigned index, GRefPtr<GstPad>&& pad, TrackID trackId)
+    : m_notifier(MainThreadNotifier<MainThreadNotification>::create())
+    , m_index(index)
+    , m_id(trackId)
+    , m_type(type)
+    , m_owner(owner)
+    , m_shouldUsePadStreamId(false)
+    , m_shouldHandleStreamStartEvent(false)
+{
+    setPad(WTFMove(pad));
+    ASSERT(m_pad);
+
+    // We can't call notifyTrackOfTagsChanged() directly, because we need tagsChanged() to setup m_tags.
+    tagsChanged();
+}
+
 TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer(TrackType type, TrackPrivateBase* owner, unsigned index, GstStream* stream)
     : m_notifier(MainThreadNotifier<MainThreadNotification>::create())
     , m_index(index)
-    , m_stringId(trimStreamId(StringView::fromLatin1(gst_stream_get_stream_id(stream))))
-    , m_id(trackIdFromStringIdOrIndex(type, m_stringId, index))
+    , m_gstStreamId(AtomString::fromLatin1(gst_stream_get_stream_id(stream)))
+    , m_id(parseStreamId(m_gstStreamId).value_or(index))
     , m_stream(stream)
     , m_type(type)
     , m_owner(owner)
@@ -122,13 +107,17 @@ TrackPrivateBaseGStreamer::TrackPrivateBaseGStreamer(TrackType type, TrackPrivat
 
 void TrackPrivateBaseGStreamer::setPad(GRefPtr<GstPad>&& pad)
 {
+    ASSERT(isMainThread()); // because this code writes to AtomString members.
+
     if (m_bestUpstreamPad && m_eventProbe)
         gst_pad_remove_probe(m_bestUpstreamPad.get(), m_eventProbe);
 
     m_pad = WTFMove(pad);
     m_bestUpstreamPad = findBestUpstreamPad(m_pad);
-    m_stringId = AtomString(trackIdFromPadStreamStartOrUniqueID(m_type, m_index, m_pad));
-    m_id = trackIdFromStringIdOrIndex(m_type, m_stringId, m_index);
+    m_gstStreamId = AtomString::fromLatin1(gst_pad_get_stream_id(m_pad.get()));
+
+    if (m_shouldUsePadStreamId)
+        m_id = parseStreamId(m_gstStreamId).value_or(m_index);
 
     if (!m_bestUpstreamPad)
         return;
@@ -144,16 +133,12 @@ void TrackPrivateBaseGStreamer::setPad(GRefPtr<GstPad>&& pad)
                 track->streamChanged();
             break;
         case GST_EVENT_CAPS: {
-            String streamId = track->m_stringId;
-            if (!streamId)
-                break;
-
-            track->m_taskQueue.enqueueTask([track, streamId = WTFMove(streamId), event = GRefPtr<GstEvent>(event)]() {
+            track->m_taskQueue.enqueueTask([track, event = GRefPtr<GstEvent>(event)]() {
                 GstCaps* caps;
                 gst_event_parse_caps(event.get(), &caps);
                 if (!caps)
                     return;
-                track->capsChanged(streamId, GRefPtr<GstCaps>(caps));
+                track->capsChanged(track->m_id, GRefPtr<GstCaps>(caps));
             });
             break;
         }
@@ -202,6 +187,7 @@ void TrackPrivateBaseGStreamer::disconnect()
 
 void TrackPrivateBaseGStreamer::tagsChanged()
 {
+    // May be called by any thread, including the streaming thread.
     GRefPtr<GstTagList> tags;
     if (m_bestUpstreamPad) {
         GRefPtr<GstEvent> tagEvent;
@@ -264,6 +250,7 @@ bool TrackPrivateBaseGStreamer::getTag(GstTagList* tags, const gchar* tagName, S
 
 void TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged()
 {
+    ASSERT(isMainThread()); // because this code writes to AtomString members.
     GRefPtr<GstTagList> tags;
     {
         Locker locker { m_tagMutex };
@@ -299,12 +286,15 @@ void TrackPrivateBaseGStreamer::notifyTrackOfStreamChanged()
     if (!m_pad)
         return;
 
-    GUniquePtr<char> streamId(gst_pad_get_stream_id(m_pad.get()));
+    auto gstStreamId = AtomString::fromLatin1(gst_pad_get_stream_id(m_pad.get()));
+    auto streamId = parseStreamId(gstStreamId);
     if (!streamId)
         return;
 
-    GST_INFO("Track %d got stream start for stream %s.", m_index, streamId.get());
-    m_stringId = trimStreamId(StringView::fromLatin1(streamId.get()));
+    ASSERT(isMainThread()); // because this code writes to AtomString members.
+    GST_INFO("Track %d got stream start for stream %" PRIu64 ". GStreamer stream-id: %s", m_index, streamId.value(), gstStreamId.string().utf8().data());
+    m_gstStreamId = gstStreamId;
+    m_id = streamId.value();
 }
 
 void TrackPrivateBaseGStreamer::streamChanged()
@@ -326,7 +316,7 @@ void TrackPrivateBaseGStreamer::installUpdateConfigurationHandlers()
                 return;
 
             track->m_taskQueue.enqueueTask([track, caps = WTFMove(caps)]() mutable {
-                track->capsChanged(String::fromLatin1(GUniquePtr<char>(gst_pad_get_stream_id(track->m_pad.get())).get()), WTFMove(caps));
+                track->capsChanged(getStreamIdFromPad(track->m_pad.get()).value_or(track->m_index), WTFMove(caps));
             });
         }), this);
         g_signal_connect_swapped(m_pad.get(), "notify::tags", G_CALLBACK(+[](TrackPrivateBaseGStreamer* track) {
@@ -340,11 +330,19 @@ void TrackPrivateBaseGStreamer::installUpdateConfigurationHandlers()
         g_signal_connect_swapped(m_stream.get(), "notify::caps", G_CALLBACK(+[](TrackPrivateBaseGStreamer* track) {
             track->m_taskQueue.enqueueTask([track]() {
                 auto caps = adoptGRef(gst_stream_get_caps(track->m_stream.get()));
-                track->capsChanged(String::fromLatin1(gst_stream_get_stream_id(track->m_stream.get())), WTFMove(caps));
+                track->capsChanged(getStreamIdFromStream(track->m_stream.get()).value_or(track->m_index), WTFMove(caps));
             });
         }), this);
 
+        // This signal can be triggered from the main thread
+        // (CanvasCaptureMediaStreamTrack::Source::captureCanvas() triggering the mediastreamsrc
+        // InternalSource::videoFrameAvailable() which can update the stream tags.)
         g_signal_connect_swapped(m_stream.get(), "notify::tags", G_CALLBACK(+[](TrackPrivateBaseGStreamer* track) {
+            if (isMainThread()) {
+                auto tags = adoptGRef(gst_stream_get_tags(track->m_stream.get()));
+                track->updateConfigurationFromTags(WTFMove(tags));
+                return;
+            }
             track->m_taskQueue.enqueueTask([track]() {
                 auto tags = adoptGRef(gst_stream_get_tags(track->m_stream.get()));
                 track->updateConfigurationFromTags(WTFMove(tags));
@@ -353,38 +351,6 @@ void TrackPrivateBaseGStreamer::installUpdateConfigurationHandlers()
     }
 }
 
-String TrackPrivateBaseGStreamer::trackIdFromPadStreamStartOrUniqueID(TrackType type, unsigned index, const GRefPtr<GstPad>& pad)
-{
-    String streamId = nullString();
-    if (!pad)
-        return generateUniquePlaybin2StreamID(type, index);
-
-    auto streamStart = adoptGRef(gst_pad_get_sticky_event(pad.get(), GST_EVENT_STREAM_START, 0));
-    if (!streamStart)
-        return generateUniquePlaybin2StreamID(type, index);
-
-    const gchar* streamIdAsCharacters;
-    gst_event_parse_stream_start(streamStart.get(), &streamIdAsCharacters);
-
-    if (!streamIdAsCharacters)
-        return generateUniquePlaybin2StreamID(type, index);
-
-    StringView streamIdView = StringView::fromLatin1(streamIdAsCharacters);
-    size_t position = streamIdView.find('/');
-    if (position == notFound || position + 1 == streamIdView.length())
-        return generateUniquePlaybin2StreamID(type, index);
-
-    return trimStreamId(streamIdView.substring(position + 1));
-}
-
-TrackID TrackPrivateBaseGStreamer::trackIdFromStringIdOrIndex(TrackType type, const AtomString& stringId, unsigned index)
-{
-    if (!stringId.startsWith(prefixForType(type)))
-        return index;
-    auto stringView = StringView { stringId }.substring(1);
-    return parseIntegerAllowingTrailingJunk<TrackID>(stringView).value_or(index);
-}
-
 GRefPtr<GstTagList> TrackPrivateBaseGStreamer::getAllTags(const GRefPtr<GstPad>& pad)
 {
     auto allTags = adoptGRef(gst_tag_list_new_empty());
@@ -401,6 +367,7 @@ GRefPtr<GstTagList> TrackPrivateBaseGStreamer::getAllTags(const GRefPtr<GstPad>&
 
 bool TrackPrivateBaseGStreamer::updateTrackIDFromTags(const GRefPtr<GstTagList>& tags)
 {
+    ASSERT(isMainThread()); // because this code writes to AtomString members.
     GUniqueOutPtr<char> trackIDString;
     if (!gst_tag_list_get_string(tags.get(), "container-specific-track-id", &trackIDString.outPtr()))
         return false;
@@ -408,7 +375,6 @@ bool TrackPrivateBaseGStreamer::updateTrackIDFromTags(const GRefPtr<GstTagList>&
     auto trackID = WTF::parseInteger<TrackID>(StringView { std::span { trackIDString.get(), strlen(trackIDString.get()) } });
     if (trackID && *trackID != m_trackID.value_or(0)) {
         m_trackID = *trackID;
-        m_stringId = AtomString::number(static_cast<unsigned long long>(*m_trackID));
         ASSERT(m_trackID);
         return true;
     }
diff --git a/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h
index 6327c7505b..37d64b97ec 100644
--- a/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/TrackPrivateBaseGStreamer.h
@@ -67,13 +67,14 @@ public:
     void setInitialCaps(GRefPtr<GstCaps>&& caps) { m_initialCaps = WTFMove(caps); }
     const GRefPtr<GstCaps>& initialCaps() { return m_initialCaps; }
 
-    static String trackIdFromPadStreamStartOrUniqueID(TrackType, unsigned index, const GRefPtr<GstPad>&);
-    const AtomString& stringId() const { return m_stringId; };
+    TrackID streamId() const { return m_id; }
+    const AtomString& gstStreamId() const { return m_gstStreamId; }
 
     virtual void updateConfigurationFromCaps(GRefPtr<GstCaps>&&) { }
 
 protected:
     TrackPrivateBaseGStreamer(TrackType, TrackPrivateBase*, unsigned index, GRefPtr<GstPad>&&, bool shouldHandleStreamStartEvent);
+    TrackPrivateBaseGStreamer(TrackType, TrackPrivateBase*, unsigned index, GRefPtr<GstPad>&&, TrackID);
     TrackPrivateBaseGStreamer(TrackType, TrackPrivateBase*, unsigned index, GstStream*);
 
     void notifyTrackOfTagsChanged();
@@ -82,7 +83,7 @@ protected:
     GstObject* objectForLogging() const;
 
     virtual void tagsChanged(GRefPtr<GstTagList>&&) { }
-    virtual void capsChanged(const String&, GRefPtr<GstCaps>&&) { }
+    virtual void capsChanged(TrackID, GRefPtr<GstCaps>&&) { }
     void installUpdateConfigurationHandlers();
     virtual void updateConfigurationFromTags(GRefPtr<GstTagList>&&) { }
 
@@ -98,7 +99,8 @@ protected:
     unsigned m_index;
     AtomString m_label;
     AtomString m_language;
-    AtomString m_stringId;
+    AtomString m_gstStreamId;
+    // Track ID parsed from stream-id.
     TrackID m_id;
     GRefPtr<GstPad> m_pad;
     GRefPtr<GstPad> m_bestUpstreamPad;
@@ -114,7 +116,6 @@ protected:
 private:
     bool getLanguageCode(GstTagList* tags, AtomString& value);
     static AtomString generateUniquePlaybin2StreamID(TrackType, unsigned index);
-    static TrackID trackIdFromStringIdOrIndex(TrackType, const AtomString&, unsigned);
     static char prefixForType(TrackType);
     template<class StringType>
     bool getTag(GstTagList* tags, const gchar* tagName, StringType& value);
@@ -126,6 +127,7 @@ private:
     TrackPrivateBase* m_owner;
     Lock m_tagMutex;
     GRefPtr<GstTagList> m_tags;
+    bool m_shouldUsePadStreamId { true };
     bool m_shouldHandleStreamStartEvent { true };
 };
 
diff --git a/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp
index e92629fe96..a5d1d2618b 100644
--- a/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/VideoFrameMetadataGStreamer.cpp
@@ -161,8 +161,6 @@ VideoFrameMetadata webkitGstBufferGetVideoFrameMetadata(GstBuffer* buffer)
         return { };
 
     VideoFrameMetadata videoFrameMetadata;
-    if (GST_BUFFER_PTS_IS_VALID(buffer))
-        videoFrameMetadata.mediaTime = fromGstClockTime(GST_BUFFER_PTS(buffer)).toDouble();
 
     auto* meta = getInternalVideoFrameMetadata(buffer);
     if (!meta)
diff --git a/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp
index 2cdb2b33af..4390946c65 100644
--- a/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.cpp
@@ -57,6 +57,14 @@ VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPl
     installUpdateConfigurationHandlers();
 }
 
+VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&& player, unsigned index, GRefPtr<GstPad>&& pad, TrackID trackId)
+    : TrackPrivateBaseGStreamer(TrackPrivateBaseGStreamer::TrackType::Video, this, index, WTFMove(pad), trackId)
+    , m_player(WTFMove(player))
+{
+    ensureVideoTrackDebugCategoryInitialized();
+    installUpdateConfigurationHandlers();
+}
+
 VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&& player, unsigned index, GstStream* stream)
     : TrackPrivateBaseGStreamer(TrackPrivateBaseGStreamer::TrackType::Video, this, index, stream)
     , m_player(WTFMove(player))
@@ -71,7 +79,7 @@ VideoTrackPrivateGStreamer::VideoTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPl
     updateConfigurationFromTags(WTFMove(tags));
 }
 
-void VideoTrackPrivateGStreamer::capsChanged(const String& streamId, GRefPtr<GstCaps>&& caps)
+void VideoTrackPrivateGStreamer::capsChanged(TrackID streamId, GRefPtr<GstCaps>&& caps)
 {
     ASSERT(isMainThread());
     updateConfigurationFromCaps(WTFMove(caps));
diff --git a/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h
index 4727c77408..63be6b2ada 100644
--- a/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/VideoTrackPrivateGStreamer.h
@@ -28,6 +28,7 @@
 #if ENABLE(VIDEO) && USE(GSTREAMER)
 
 #include "GStreamerCommon.h"
+#include "MediaPlayerPrivateGStreamer.h"
 #include "TrackPrivateBaseGStreamer.h"
 #include "VideoTrackPrivate.h"
 
@@ -43,6 +44,11 @@ public:
         return adoptRef(*new VideoTrackPrivateGStreamer(WTFMove(player), index, WTFMove(pad), shouldHandleStreamStartEvent));
     }
 
+    static Ref<VideoTrackPrivateGStreamer> create(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&& player, unsigned index, GRefPtr<GstPad>&& pad, TrackID trackId)
+    {
+        return adoptRef(*new VideoTrackPrivateGStreamer(WTFMove(player), index, WTFMove(pad), trackId));
+    }
+
     static Ref<VideoTrackPrivateGStreamer> create(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&& player, unsigned index, GstStream* stream)
     {
         return adoptRef(*new VideoTrackPrivateGStreamer(WTFMove(player), index, stream));
@@ -57,8 +63,17 @@ public:
 
     int trackIndex() const final { return m_index; }
 
-    TrackID id() const final { return m_trackID.value_or(m_index); }
-    std::optional<AtomString> trackUID() const final { return m_stringId; }
+    TrackID id() const final { return m_trackID.value_or(m_id); }
+    std::optional<AtomString> trackUID() const final
+    {
+        auto player = m_player.get();
+
+        if (player && player->isMediaStreamPlayer())
+            return m_gstStreamId;
+
+        return std::nullopt;
+    }
+
     AtomString label() const final { return m_label; }
     AtomString language() const final { return m_language; }
 
@@ -68,10 +83,11 @@ protected:
     void updateConfigurationFromTags(GRefPtr<GstTagList>&&) final;
 
     void tagsChanged(GRefPtr<GstTagList>&& tags) final { updateConfigurationFromTags(WTFMove(tags)); }
-    void capsChanged(const String&, GRefPtr<GstCaps>&&) final;
+    void capsChanged(TrackID, GRefPtr<GstCaps>&&) final;
 
 private:
     VideoTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&&, unsigned index, GRefPtr<GstPad>&&, bool shouldHandleStreamStartEvent);
+    VideoTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&&, unsigned index, GRefPtr<GstPad>&&, TrackID);
     VideoTrackPrivateGStreamer(ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer>&&, unsigned index, GstStream*);
 
     ThreadSafeWeakPtr<MediaPlayerPrivateGStreamer> m_player;
diff --git a/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
index e0946652d8..484f02590f 100644
--- a/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp
@@ -572,7 +572,7 @@ static GstFlowReturn webKitWebSrcCreate(GstPushSrc* pushSrc, GstBuffer** buffer)
     return GST_FLOW_EOS;
 }
 
-static bool webKitWebSrcSetExtraHeader(GQuark fieldId, const GValue* value, gpointer userData)
+static bool webKitWebSrcSetExtraHeader(StringView fieldId, const GValue* value, ResourceRequest& request)
 {
     GUniquePtr<gchar> fieldContent;
 
@@ -586,43 +586,12 @@ static bool webKitWebSrcSetExtraHeader(GQuark fieldId, const GValue* value, gpoi
             fieldContent.reset(g_value_dup_string(&dest));
     }
 
-    const gchar* fieldName = g_quark_to_string(fieldId);
-    if (!fieldContent.get()) {
-        GST_ERROR("extra-headers field '%s' contains no value or can't be converted to a string", fieldName);
-        return false;
-    }
-
-    GST_DEBUG("Appending extra header: \"%s: %s\"", fieldName, fieldContent.get());
-    ResourceRequest* request = static_cast<ResourceRequest*>(userData);
-    request->setHTTPHeaderField(String::fromLatin1(fieldName), String::fromLatin1(fieldContent.get()));
+    auto field = fieldId.toStringWithoutCopying();
+    GST_DEBUG("Appending extra header: \"%s: %s\"", field.ascii().data(), fieldContent.get());
+    request.setHTTPHeaderField(field, String::fromLatin1(fieldContent.get()));
     return true;
 }
 
-static gboolean webKitWebSrcProcessExtraHeaders(GQuark fieldId, const GValue* value, gpointer userData)
-{
-    if (G_VALUE_TYPE(value) == GST_TYPE_ARRAY) {
-        unsigned size = gst_value_array_get_size(value);
-
-        for (unsigned i = 0; i < size; i++) {
-            if (!webKitWebSrcSetExtraHeader(fieldId, gst_value_array_get_value(value, i), userData))
-                return FALSE;
-        }
-        return TRUE;
-    }
-
-    if (G_VALUE_TYPE(value) == GST_TYPE_LIST) {
-        unsigned size = gst_value_list_get_size(value);
-
-        for (unsigned i = 0; i < size; i++) {
-            if (!webKitWebSrcSetExtraHeader(fieldId, gst_value_list_get_value(value, i), userData))
-                return FALSE;
-        }
-        return TRUE;
-    }
-
-    return webKitWebSrcSetExtraHeader(fieldId, value, userData);
-}
-
 static gboolean webKitWebSrcStart(GstBaseSrc* baseSrc)
 {
     WebKitWebSrc* src = WEBKIT_WEB_SRC(baseSrc);
@@ -685,8 +654,32 @@ static void webKitWebSrcMakeRequest(WebKitWebSrc* src, DataMutexLocker<WebKitWeb
     if (!priv->keepAlive)
         request.setHTTPHeaderField(HTTPHeaderName::Connection, "close"_s);
 
-    if (priv->extraHeaders)
-        gst_structure_foreach(priv->extraHeaders.get(), webKitWebSrcProcessExtraHeaders, &request);
+    if (priv->extraHeaders) {
+        gstStructureForeach(priv->extraHeaders.get(), [&](auto id, auto value) -> bool {
+            auto fieldId = gstIdToString(id);
+            if (G_VALUE_TYPE(value) == GST_TYPE_ARRAY) {
+                unsigned size = gst_value_array_get_size(value);
+
+                for (unsigned i = 0; i < size; i++) {
+                    if (!webKitWebSrcSetExtraHeader(fieldId, gst_value_array_get_value(value, i), request))
+                        return FALSE;
+                }
+                return TRUE;
+            }
+
+            if (G_VALUE_TYPE(value) == GST_TYPE_LIST) {
+                unsigned size = gst_value_list_get_size(value);
+
+                for (unsigned i = 0; i < size; i++) {
+                    if (!webKitWebSrcSetExtraHeader(fieldId, gst_value_list_get_value(value, i), request))
+                        return FALSE;
+                }
+                return TRUE;
+            }
+
+            return webKitWebSrcSetExtraHeader(fieldId, value, request);
+        });
+    }
 
     // We always request Icecast/Shoutcast metadata, just in case ...
     request.setHTTPHeaderField(HTTPHeaderName::IcyMetadata, "1"_s);
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp b/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp
index 885b190fca..fc4af6da45 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.cpp
@@ -79,7 +79,7 @@ static GstPadProbeReturn appendPipelineAppsinkPadEventProbe(GstPad*, GstPadProbe
 #endif
 static GstPadProbeReturn appendPipelineDemuxerBlackHolePadProbe(GstPad*, GstPadProbeInfo*, gpointer);
 static GstPadProbeReturn matroskademuxForceSegmentStartToEqualZero(GstPad*, GstPadProbeInfo*, void*);
-static GRefPtr<GstElement> createOptionalParserForFormat(GstBin*, const AtomString&, const GstCaps*);
+static GRefPtr<GstElement> createOptionalParserForFormat(GstBin*, TrackID, const GstCaps*);
 
 // Wrapper for gst_element_set_state() that emits a critical if the state change fails or is not synchronous.
 static void assertedElementSetState(GstElement* element, GstState desiredState)
@@ -233,6 +233,7 @@ AppendPipeline::~AppendPipeline()
 #if ENABLE(ENCRYPTED_MEDIA)
         gst_pad_remove_probe(appsinkPad.get(), track->appsinkPadEventProbeInformation.probeId);
 #endif
+        m_sourceBufferPrivate.tryUnregisterTrackId(track->trackId);
     }
 
     // We can tear down the pipeline safely now.
@@ -422,9 +423,8 @@ void AppendPipeline::didReceiveInitializationSegment()
 
     if (isFirstInitializationSegment) {
         // Create a Track object per pad.
-        int trackIndex = 0;
         for (GstPad* pad : GstIteratorAdaptor<GstPad>(GUniquePtr<GstIterator>(gst_element_iterate_src_pads(m_demux.get())))) {
-            auto [createTrackResult, track] = tryCreateTrackFromPad(pad, trackIndex);
+            auto [createTrackResult, track] = tryCreateTrackFromPad(pad);
             if (createTrackResult == CreateTrackResult::AppendParsingFailed) {
                 // appendParsingFailed() will immediately cause a resetParserState() which will stop demuxing, then the
                 // AppendPipeline will be destroyed.
@@ -433,7 +433,6 @@ void AppendPipeline::didReceiveInitializationSegment()
             }
             if (track)
                 linkPadWithTrack(pad, *track);
-            trackIndex++;
         }
     } else {
         HashSet<String> videoPadStreamIDs;
@@ -506,7 +505,7 @@ void AppendPipeline::didReceiveInitializationSegment()
 
     for (std::unique_ptr<Track>& track : m_tracks) {
 #ifndef GST_DISABLE_GST_DEBUG
-        GST_DEBUG_OBJECT(pipeline(), "Adding track to initialization with segment type %s, id %s.", streamTypeToString(track->streamType), track->trackStringId.string().utf8().data());
+        GST_DEBUG_OBJECT(pipeline(), "Adding track to initialization with segment type %s, id %" PRIu64 ".", streamTypeToString(track->streamType), track->trackId);
 #endif // GST_DISABLE_GST_DEBUG
         switch (track->streamType) {
         case Audio: {
@@ -534,8 +533,8 @@ void AppendPipeline::didReceiveInitializationSegment()
     if (isFirstInitializationSegment) {
         for (std::unique_ptr<Track>& track : m_tracks) {
             if (track->streamType == StreamType::Video) {
-                GST_DEBUG_OBJECT(pipeline(), "Setting initial video size to that of track with id '%s', %gx%g.",
-                    track->trackStringId.string().utf8().data(), static_cast<double>(track->presentationSize.width()), static_cast<double>(track->presentationSize.height()));
+                GST_DEBUG_OBJECT(pipeline(), "Setting initial video size to that of track with id '%" PRIu64 "', %gx%g.",
+                    track->trackId, static_cast<double>(track->presentationSize.width()), static_cast<double>(track->presentationSize.height()));
                 m_playerPrivate->setInitialVideoSize(track->presentationSize);
                 break;
             }
@@ -680,7 +679,7 @@ void AppendPipeline::handleAppsinkNewSampleFromStreamingThread(GstElement*)
     }
 }
 
-GRefPtr<GstElement> createOptionalParserForFormat([[maybe_unused]] GstBin* bin, const AtomString& trackStringId, const GstCaps* caps)
+GRefPtr<GstElement> createOptionalParserForFormat([[maybe_unused]] GstBin* bin, TrackID trackId, const GstCaps* caps)
 {
     // Parser elements have either or both of two functions:
     //
@@ -700,7 +699,7 @@ GRefPtr<GstElement> createOptionalParserForFormat([[maybe_unused]] GstBin* bin,
 
     GstStructure* structure = gst_caps_get_structure(caps, 0);
     auto mediaType = gstStructureGetName(structure);
-    auto parserName = makeString(trackStringId, "_parser"_s);
+    auto parserName = makeString(trackId, "_parser"_s);
     // Since parsers are not needed in every case, we can use an identity element as pass-through
     // parser for cases where a parser is not needed, making the management of elements and pads
     // more orthogonal.
@@ -765,21 +764,7 @@ GRefPtr<GstElement> createOptionalParserForFormat([[maybe_unused]] GstBin* bin,
     return result;
 }
 
-AtomString AppendPipeline::generateTrackId(StreamType streamType, int padIndex)
-{
-    switch (streamType) {
-    case Audio:
-        return makeAtomString('A', padIndex);
-    case Video:
-        return makeAtomString('V', padIndex);
-    case Text:
-        return makeAtomString('T', padIndex);
-    default:
-        return makeAtomString('O', padIndex);
-    }
-}
-
-std::pair<AppendPipeline::CreateTrackResult, AppendPipeline::Track*> AppendPipeline::tryCreateTrackFromPad(GstPad* demuxerSrcPad, int trackIndex)
+std::pair<AppendPipeline::CreateTrackResult, AppendPipeline::Track*> AppendPipeline::tryCreateTrackFromPad(GstPad* demuxerSrcPad)
 {
     ASSERT(isMainThread());
     ASSERT(!m_hasReceivedFirstInitializationSegment);
@@ -804,14 +789,20 @@ std::pair<AppendPipeline::CreateTrackResult, AppendPipeline::Track*> AppendPipel
         gst_pad_add_probe(demuxerSrcPad, GST_PAD_PROBE_TYPE_BUFFER, reinterpret_cast<GstPadProbeCallback>(appendPipelineDemuxerBlackHolePadProbe), nullptr, nullptr);
         return { CreateTrackResult::TrackIgnored, nullptr };
     }
-    AtomString trackStringId = generateTrackId(streamType, trackIndex);
 
-    GST_DEBUG_OBJECT(pipeline(), "Creating new AppendPipeline::Track with id '%s'", trackStringId.string().utf8().data());
     size_t newTrackIndex = m_tracks.size();
-    m_tracks.append(makeUnique<Track>(trackIndex, trackStringId, streamType, parsedCaps, presentationSize));
+    TrackID preferredTrackId = getStreamIdFromPad(demuxerSrcPad).value_or((static_cast<TrackID>(newTrackIndex)));
+    auto assignedTrackId = m_sourceBufferPrivate.tryRegisterTrackId(preferredTrackId);
+    TrackID trackId = assignedTrackId.value_or(preferredTrackId);
+
+    if (!assignedTrackId)
+        GST_WARNING_OBJECT(pipeline(), "Failed to register track ID %" PRIu64 ", this could cause ID collisions", preferredTrackId);
+
+    GST_DEBUG_OBJECT(pipeline(), "Creating new AppendPipeline::Track with id '%" PRIu64 "'", trackId);
+    m_tracks.append(makeUnique<Track>(trackId, streamType, parsedCaps, presentationSize));
     Track& track = *m_tracks.at(newTrackIndex);
     track.initializeElements(this, GST_BIN(m_pipeline.get()));
-    track.webKitTrack = makeWebKitTrack(newTrackIndex);
+    track.webKitTrack = makeWebKitTrack(newTrackIndex, trackId);
     hookTrackEvents(track);
     return { CreateTrackResult::TrackCreated, &track };
 }
@@ -832,9 +823,6 @@ bool AppendPipeline::recycleTrackForPad(GstPad* demuxerSrcPad)
         if (track->streamType != streamType)
             continue;
         matchingTrack = &*track;
-        // FIXME: This test will never match, comparing track ID from demuxerSrcPad name
-        if (track->trackStringId == trackId)
-            break;
     }
 
     if (!matchingTrack) {
@@ -863,7 +851,7 @@ bool AppendPipeline::recycleTrackForPad(GstPad* demuxerSrcPad)
         auto peer = adoptGRef(gst_pad_get_peer(matchingTrack->entryPad.get()));
         if (peer.get() != demuxerSrcPad) {
             if (peer) {
-                GST_DEBUG_OBJECT(peer.get(), "Unlinking from track %s", matchingTrack->trackStringId.string().ascii().data());
+                GST_DEBUG_OBJECT(peer.get(), "Unlinking from track %" PRIu64 "", matchingTrack->trackId);
                 gst_pad_unlink(peer.get(), matchingTrack->entryPad.get());
             }
 
@@ -876,7 +864,7 @@ bool AppendPipeline::recycleTrackForPad(GstPad* demuxerSrcPad)
             matchingTrack->caps = WTFMove(parsedCaps);
             matchingTrack->presentationSize = presentationSize;
         } else
-            GST_DEBUG_OBJECT(pipeline(), "%s track pads match, nothing to re-link", matchingTrack->trackStringId.string().ascii().data());
+            GST_DEBUG_OBJECT(pipeline(), "%" PRIu64 " track pads match, nothing to re-link", matchingTrack->trackId);
 
     }
 
@@ -889,7 +877,7 @@ bool AppendPipeline::recycleTrackForPad(GstPad* demuxerSrcPad)
 
 void AppendPipeline::linkPadWithTrack(GstPad* demuxerSrcPad, Track& track)
 {
-    GST_DEBUG_OBJECT(demuxerSrcPad, "Linking to track %s", track.trackStringId.string().ascii().data());
+    GST_DEBUG_OBJECT(demuxerSrcPad, "Linking to track %" PRIu64 "", track.trackId);
     GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_pipeline.get()), GST_DEBUG_GRAPH_SHOW_ALL, "append-pipeline-before-link");
     ASSERT(!GST_PAD_IS_LINKED(track.entryPad.get()));
     gst_pad_link(demuxerSrcPad, track.entryPad.get());
@@ -897,7 +885,7 @@ void AppendPipeline::linkPadWithTrack(GstPad* demuxerSrcPad, Track& track)
     GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN(m_pipeline.get()), GST_DEBUG_GRAPH_SHOW_ALL, "append-pipeline-after-link");
 }
 
-Ref<WebCore::TrackPrivateBase> AppendPipeline::makeWebKitTrack(int trackIndex)
+Ref<WebCore::TrackPrivateBase> AppendPipeline::makeWebKitTrack(int trackIndex, TrackID trackId)
 {
     Track& appendPipelineTrack = *m_tracks.at(trackIndex);
 
@@ -907,19 +895,19 @@ Ref<WebCore::TrackPrivateBase> AppendPipeline::makeWebKitTrack(int trackIndex)
     GRefPtr<GstPad> pad(appendPipelineTrack.appsinkPad);
     switch (appendPipelineTrack.streamType) {
     case StreamType::Audio: {
-        auto specificTrack = AudioTrackPrivateGStreamer::create(m_playerPrivate, trackIndex, WTFMove(pad), false);
+        auto specificTrack = AudioTrackPrivateGStreamer::create(m_playerPrivate, trackIndex, WTFMove(pad), trackId);
         gstreamerTrack = specificTrack.ptr();
         track = static_cast<TrackPrivateBase*>(specificTrack.ptr());
         break;
     }
     case StreamType::Video: {
-        auto specificTrack = VideoTrackPrivateGStreamer::create(m_playerPrivate, trackIndex, WTFMove(pad), false);
+        auto specificTrack = VideoTrackPrivateGStreamer::create(m_playerPrivate, trackIndex, WTFMove(pad), trackId);
         gstreamerTrack = specificTrack.ptr();
         track = static_cast<TrackPrivateBase*>(specificTrack.ptr());
         break;
     }
     case StreamType::Text: {
-        auto specificTrack = InbandTextTrackPrivateGStreamer::create(trackIndex, WTFMove(pad), false);
+        auto specificTrack = InbandTextTrackPrivateGStreamer::create(trackIndex, WTFMove(pad), trackId);
         gstreamerTrack = specificTrack.ptr();
         track = static_cast<TrackPrivateBase*>(specificTrack.ptr());
         break;
@@ -954,7 +942,7 @@ void AppendPipeline::Track::emplaceOptionalParserForFormat(GstBin* bin, const GR
         gst_bin_remove(bin, parser.get());
     }
 
-    parser = createOptionalParserForFormat(bin, trackStringId, newCaps.get());
+    parser = createOptionalParserForFormat(bin, trackId, newCaps.get());
     gst_bin_add(bin, parser.get());
     gst_element_sync_state_with_parent(parser.get());
     gst_element_link(parser.get(), appsink.get());
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.h b/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.h
index 95847b2687..890316aa7c 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.h
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/AppendPipeline.h
@@ -70,16 +70,14 @@ private:
         WTF_MAKE_FAST_ALLOCATED;
     public:
 
-        Track(TrackID trackId, const AtomString& trackStringId, StreamType streamType, const GRefPtr<GstCaps>& caps, const FloatSize& presentationSize)
+        Track(TrackID trackId, StreamType streamType, const GRefPtr<GstCaps>& caps, const FloatSize& presentationSize)
             : trackId(trackId)
-            , trackStringId(trackStringId)
             , streamType(streamType)
             , caps(caps)
             , presentationSize(presentationSize)
         { }
 
         TrackID trackId;
-        const AtomString trackStringId;
         StreamType streamType;
         GRefPtr<GstCaps> caps;
         FloatSize presentationSize;
@@ -115,7 +113,7 @@ private:
 
     void hookTrackEvents(Track&);
     static std::tuple<GRefPtr<GstCaps>, AppendPipeline::StreamType, FloatSize> parseDemuxerSrcPadCaps(GstCaps*);
-    Ref<WebCore::TrackPrivateBase> makeWebKitTrack(int trackIndex);
+    Ref<WebCore::TrackPrivateBase> makeWebKitTrack(int trackIndex, TrackID);
     void appsinkCapsChanged(Track&);
     void appsinkNewSample(const Track&, GRefPtr<GstSample>&&);
     void handleEndOfAppend();
@@ -126,7 +124,7 @@ private:
 
     static AtomString generateTrackId(StreamType, int padIndex);
     enum class CreateTrackResult { TrackCreated, TrackIgnored, AppendParsingFailed };
-    std::pair<CreateTrackResult, AppendPipeline::Track*> tryCreateTrackFromPad(GstPad* demuxerSrcPad, int padIndex);
+    std::pair<CreateTrackResult, AppendPipeline::Track*> tryCreateTrackFromPad(GstPad* demuxerSrcPad);
 
     bool recycleTrackForPad(GstPad*);
     void linkPadWithTrack(GstPad* demuxerSrcPad, Track&);
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp b/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
index d4a69d3191..cd616ed47e 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp
@@ -109,7 +109,7 @@ static Vector<RefPtr<MediaSourceTrackGStreamer>> filterOutRepeatingTracks(const
     uniqueTracks.reserveInitialCapacity(tracks.size());
 
     for (const auto& track : tracks) {
-        if (!uniqueTracks.containsIf([&track](const auto& current) { return track->stringId() == current->stringId(); }))
+        if (!uniqueTracks.containsIf([&track](const auto& current) { return track->id() == current->id(); }))
             uniqueTracks.append(track);
     }
 
@@ -165,6 +165,11 @@ void MediaPlayerPrivateGStreamerMSE::play()
 void MediaPlayerPrivateGStreamerMSE::pause()
 {
     GST_DEBUG_OBJECT(pipeline(), "Pause requested");
+    if (m_playbackRatePausedState == PlaybackRatePausedState::ManuallyPaused) {
+        GST_DEBUG_OBJECT(pipeline(), "Player is paused already.");
+        return;
+    }
+
     m_isPaused = true;
     m_playbackRatePausedState = PlaybackRatePausedState::ManuallyPaused;
     updateStates();
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.cpp
index 112403c567..c9b2b19e25 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.cpp
@@ -170,6 +170,40 @@ void MediaSourcePrivateGStreamer::startPlaybackIfHasAllTracks()
     m_playerPrivate.startSource(tracks);
 }
 
+TrackID MediaSourcePrivateGStreamer::registerTrackId(TrackID preferredId)
+{
+    ASSERT(isMainThread());
+
+    if (m_trackIdRegistry.add(preferredId).isNewEntry) {
+        GST_DEBUG_OBJECT(m_playerPrivate.pipeline(), "Registered new Track ID: %" PRIu64 "", preferredId);
+        return preferredId;
+    }
+
+    // If the ID is already known, assign one starting at 100 - this helps avoid a snowball effect
+    // where each following ID would now need to be offset by 1.
+    auto maxRegisteredId = std::max_element(m_trackIdRegistry.begin(), m_trackIdRegistry.end());
+    auto assignedId = std::max((TrackID) 100, *maxRegisteredId + 1);
+
+    ASSERT(m_trackIdRegistry.add(assignedId).isNewEntry);
+    GST_DEBUG_OBJECT(m_playerPrivate.pipeline(), "Registered new Track ID: %" PRIu64 " (preferred ID would have been %" PRIu64 ")", assignedId, preferredId);
+
+    return assignedId;
+}
+
+bool MediaSourcePrivateGStreamer::unregisterTrackId(TrackID trackId)
+{
+    ASSERT(isMainThread());
+
+    bool res = m_trackIdRegistry.remove(trackId);
+
+    if (res)
+        GST_DEBUG_OBJECT(m_playerPrivate.pipeline(), "Unregistered Track ID: %" PRIu64 "", trackId);
+    else
+        GST_WARNING_OBJECT(m_playerPrivate.pipeline(), "Failed to unregister unknown Track ID: %" PRIu64 "", trackId);
+
+    return res;
+}
+
 void MediaSourcePrivateGStreamer::notifyActiveSourceBuffersChanged()
 {
     m_playerPrivate.notifyActiveSourceBuffersChanged();
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.h
index 9610f60d1b..701a300ddb 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourcePrivateGStreamer.h
@@ -73,6 +73,9 @@ public:
     void startPlaybackIfHasAllTracks();
     bool hasAllTracks() const { return m_hasAllTracks; }
 
+    TrackID registerTrackId(TrackID);
+    bool unregisterTrackId(TrackID);
+
 #if !RELEASE_LOG_DISABLED
     const Logger& logger() const final { return m_logger; }
     ASCIILiteral logClassName() const override { return "MediaSourcePrivateGStreamer"_s; }
@@ -91,6 +94,11 @@ private:
     Ref<const Logger> m_logger;
     const void* m_logIdentifier;
     uint64_t m_nextSourceBufferID { 0 };
+
+    // Stores known track IDs, so we can work around ID collisions between multiple source buffers.
+    // The registry is placed here to enforce ID uniqueness specifically by player, not by process,
+    // since its not an issue if multiple players use the same ID, and we want to preserve IDs as much as possible.
+    HashSet<TrackID, WTF::IntHash<TrackID>, WTF::UnsignedWithZeroKeyHashTraits<TrackID>> m_trackIdRegistry;
 #endif
 };
 
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.cpp
index 62bfd6b8f9..e426063fce 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.cpp
@@ -39,12 +39,11 @@ GST_DEBUG_CATEGORY_EXTERN(webkit_mse_debug);
 
 namespace WebCore {
 
-MediaSourceTrackGStreamer::MediaSourceTrackGStreamer(TrackPrivateBaseGStreamer::TrackType type, TrackID trackId, const AtomString& trackStringId, GRefPtr<GstCaps>&& initialCaps)
+MediaSourceTrackGStreamer::MediaSourceTrackGStreamer(TrackPrivateBaseGStreamer::TrackType type, TrackID trackId, GRefPtr<GstCaps>&& initialCaps)
     : m_type(type)
     , m_id(trackId)
-    , m_stringId(trackStringId)
     , m_initialCaps(WTFMove(initialCaps))
-    , m_queueDataMutex(trackStringId)
+    , m_queueDataMutex(trackId)
 { }
 
 MediaSourceTrackGStreamer::~MediaSourceTrackGStreamer()
@@ -52,9 +51,9 @@ MediaSourceTrackGStreamer::~MediaSourceTrackGStreamer()
     ASSERT(m_isRemoved);
 }
 
-Ref<MediaSourceTrackGStreamer> MediaSourceTrackGStreamer::create(TrackPrivateBaseGStreamer::TrackType type, TrackID trackId, const AtomString& trackStringId, GRefPtr<GstCaps>&& initialCaps)
+Ref<MediaSourceTrackGStreamer> MediaSourceTrackGStreamer::create(TrackPrivateBaseGStreamer::TrackType type, TrackID trackId, GRefPtr<GstCaps>&& initialCaps)
 {
-    return adoptRef(*new MediaSourceTrackGStreamer(type, trackId, trackStringId, WTFMove(initialCaps)));
+    return adoptRef(*new MediaSourceTrackGStreamer(type, trackId, WTFMove(initialCaps)));
 }
 
 bool MediaSourceTrackGStreamer::isReadyForMoreSamples()
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.h
index 4e8891b080..4703afabbc 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.h
@@ -41,12 +41,11 @@ namespace WebCore {
 
 class MediaSourceTrackGStreamer final: public ThreadSafeRefCounted<MediaSourceTrackGStreamer> {
 public:
-    static Ref<MediaSourceTrackGStreamer> create(TrackPrivateBaseGStreamer::TrackType, TrackID, const AtomString&, GRefPtr<GstCaps>&& initialCaps);
+    static Ref<MediaSourceTrackGStreamer> create(TrackPrivateBaseGStreamer::TrackType, TrackID, GRefPtr<GstCaps>&& initialCaps);
     virtual ~MediaSourceTrackGStreamer();
 
     TrackPrivateBaseGStreamer::TrackType type() const { return m_type; }
     TrackID id() const { return m_id; }
-    const AtomString& stringId() const { return m_stringId; }
     GRefPtr<GstCaps>& initialCaps() { return m_initialCaps; }
     DataMutex<TrackQueue>& queueDataMutex() { return m_queueDataMutex; }
 
@@ -65,11 +64,10 @@ public:
     void remove();
 
 private:
-    explicit MediaSourceTrackGStreamer(TrackPrivateBaseGStreamer::TrackType, TrackID, const AtomString&, GRefPtr<GstCaps>&& initialCaps);
+    explicit MediaSourceTrackGStreamer(TrackPrivateBaseGStreamer::TrackType, TrackID, GRefPtr<GstCaps>&& initialCaps);
 
     TrackPrivateBaseGStreamer::TrackType m_type;
     TrackID m_id;
-    const AtomString m_stringId;
     GRefPtr<GstCaps> m_initialCaps;
     DataMutex<TrackQueue> m_queueDataMutex;
 
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp
index 017e886e28..9ba00d6ad3 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.cpp
@@ -152,13 +152,13 @@ void SourceBufferPrivateGStreamer::flush(TrackID trackId)
     ASSERT(m_tracks.contains(trackId));
     auto track = m_tracks[trackId];
     if (!downcast<MediaSourcePrivateGStreamer>(mediaSource)->hasAllTracks()) {
-        GST_DEBUG_OBJECT(m_playerPrivate.pipeline(), "Source element has not emitted tracks yet, so we only need to clear the queue. trackId = '%s'", track->stringId().string().utf8().data());
+        GST_DEBUG_OBJECT(m_playerPrivate.pipeline(), "Source element has not emitted tracks yet, so we only need to clear the queue. trackId = '%" PRIu64 "'", track->id());
         track->clearQueue();
         return;
     }
 
-    GST_DEBUG_OBJECT(m_playerPrivate.pipeline(), "Source element has emitted tracks, let it handle the flush, which may cause a pipeline flush as well. trackId = '%s'", track->stringId().string().utf8().data());
-    webKitMediaSrcFlush(m_playerPrivate.webKitMediaSrc(), track->stringId());
+    GST_DEBUG_OBJECT(m_playerPrivate.pipeline(), "Source element has emitted tracks, let it handle the flush, which may cause a pipeline flush as well. trackId = '%" PRIu64 "'", track->id());
+    webKitMediaSrcFlush(m_playerPrivate.webKitMediaSrc(), track->id());
 }
 
 void SourceBufferPrivateGStreamer::enqueueSample(Ref<MediaSample>&& sample, TrackID trackId)
@@ -209,7 +209,7 @@ void SourceBufferPrivateGStreamer::allSamplesInTrackEnqueued(TrackID trackId)
     ASSERT(isMainThread());
     ASSERT(m_tracks.contains(trackId));
     auto track = m_tracks[trackId];
-    GST_DEBUG_OBJECT(m_playerPrivate.pipeline(), "Enqueueing EOS for track '%s'", track->stringId().string().utf8().data());
+    GST_DEBUG_OBJECT(m_playerPrivate.pipeline(), "Enqueueing EOS for track '%" PRIu64 "'", track->id());
     track->enqueueObject(adoptGRef(GST_MINI_OBJECT(gst_event_new_eos())));
 }
 
@@ -219,22 +219,22 @@ bool SourceBufferPrivateGStreamer::precheckInitializationSegment(const Initializ
         auto* videoTrackInfo = static_cast<VideoTrackPrivateGStreamer*>(trackInfo.track.get());
         GRefPtr<GstCaps> initialCaps = videoTrackInfo->initialCaps();
         ASSERT(initialCaps);
-        if (!m_tracks.contains(trackInfo.track->id()))
-            m_tracks.try_emplace(trackInfo.track->id(), MediaSourceTrackGStreamer::create(TrackPrivateBaseGStreamer::TrackType::Video, trackInfo.track->id(), videoTrackInfo->stringId(), WTFMove(initialCaps)));
+        if (!m_tracks.contains(videoTrackInfo->id()))
+            m_tracks.try_emplace(videoTrackInfo->id(), MediaSourceTrackGStreamer::create(TrackPrivateBaseGStreamer::TrackType::Video, videoTrackInfo->id(), WTFMove(initialCaps)));
     }
     for (auto& trackInfo : segment.audioTracks) {
         auto* audioTrackInfo = static_cast<AudioTrackPrivateGStreamer*>(trackInfo.track.get());
         GRefPtr<GstCaps> initialCaps = audioTrackInfo->initialCaps();
         ASSERT(initialCaps);
-        if (!m_tracks.contains(trackInfo.track->id()))
-            m_tracks.try_emplace(trackInfo.track->id(), MediaSourceTrackGStreamer::create(TrackPrivateBaseGStreamer::TrackType::Audio, trackInfo.track->id(), audioTrackInfo->stringId(), WTFMove(initialCaps)));
+        if (!m_tracks.contains(audioTrackInfo->id()))
+            m_tracks.try_emplace(audioTrackInfo->id(), MediaSourceTrackGStreamer::create(TrackPrivateBaseGStreamer::TrackType::Audio, audioTrackInfo->id(), WTFMove(initialCaps)));
     }
     for (auto& trackInfo : segment.textTracks) {
         auto* textTrackInfo = static_cast<InbandTextTrackPrivateGStreamer*>(trackInfo.track.get());
         GRefPtr<GstCaps> initialCaps = textTrackInfo->initialCaps();
         ASSERT(initialCaps);
-        if (!m_tracks.contains(trackInfo.track->id()))
-            m_tracks.try_emplace(trackInfo.track->id(), MediaSourceTrackGStreamer::create(TrackPrivateBaseGStreamer::TrackType::Text, trackInfo.track->id(), textTrackInfo->stringId(), WTFMove(initialCaps)));
+        if (!m_tracks.contains(textTrackInfo->id()))
+            m_tracks.try_emplace(textTrackInfo->id(), MediaSourceTrackGStreamer::create(TrackPrivateBaseGStreamer::TrackType::Text, textTrackInfo->id(), WTFMove(initialCaps)));
     }
 
     return true;
@@ -270,6 +270,28 @@ WTFLogChannel& SourceBufferPrivateGStreamer::logChannel() const
 }
 #endif
 
+std::optional<TrackID> SourceBufferPrivateGStreamer::tryRegisterTrackId(TrackID preferredId)
+{
+    ASSERT(isMainThread());
+
+    RefPtr mediaSource = m_mediaSource.get();
+    if (!mediaSource)
+        return std::nullopt;
+
+    return downcast<MediaSourcePrivateGStreamer>(mediaSource)->registerTrackId(preferredId);
+}
+
+bool SourceBufferPrivateGStreamer::tryUnregisterTrackId(TrackID trackId)
+{
+    ASSERT(isMainThread());
+
+    RefPtr mediaSource = m_mediaSource.get();
+    if (!mediaSource)
+        return false;
+
+    return downcast<MediaSourcePrivateGStreamer>(mediaSource)->unregisterTrackId(trackId);
+}
+
 size_t SourceBufferPrivateGStreamer::platformMaximumBufferSize() const
 {
 #if PLATFORM(WPE)
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h
index 23362d90fe..f6cf62245d 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/SourceBufferPrivateGStreamer.h
@@ -81,6 +81,9 @@ public:
 
     ContentType type() const { return m_type; }
 
+    std::optional<TrackID> tryRegisterTrackId(TrackID);
+    bool tryUnregisterTrackId(TrackID);
+
 #if !RELEASE_LOG_DISABLED
     const Logger& logger() const final { return m_logger.get(); }
     ASCIILiteral logClassName() const override { return "SourceBufferPrivateGStreamer"_s; }
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/TrackQueue.cpp b/Source/WebCore/platform/graphics/gstreamer/mse/TrackQueue.cpp
index 3b3869e9c5..893115e117 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/TrackQueue.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/TrackQueue.cpp
@@ -39,7 +39,7 @@ GST_DEBUG_CATEGORY_EXTERN(webkit_mse_debug);
 
 namespace WebCore {
 
-TrackQueue::TrackQueue(AtomString trackId)
+TrackQueue::TrackQueue(TrackID trackId)
     : m_trackId(trackId)
 { }
 
@@ -49,12 +49,12 @@ void TrackQueue::enqueueObject(GRefPtr<GstMiniObject>&& object)
     ASSERT(GST_IS_SAMPLE(object.get()) || GST_IS_EVENT(object.get()));
 
     if (GST_IS_SAMPLE(object.get())) {
-        GST_TRACE("TrackQueue for '%s': Putting object sample in the queue: %" GST_PTR_FORMAT " Buffer: %" GST_PTR_FORMAT ". notEmptyCallback currently %s.",
-            m_trackId.string().utf8().data(), object.get(), gst_sample_get_buffer(GST_SAMPLE(object.get())),
+        GST_TRACE("TrackQueue for '%" PRIu64 "': Putting object sample in the queue: %" GST_PTR_FORMAT " Buffer: %" GST_PTR_FORMAT ". notEmptyCallback currently %s.",
+            m_trackId, object.get(), gst_sample_get_buffer(GST_SAMPLE(object.get())),
             m_notEmptyCallback ? "set, will be called" : "unset");
     } else {
-        GST_DEBUG("TrackQueue for '%s': Putting object event in the queue: %" GST_PTR_FORMAT ". notEmptyCallback currently %s.",
-            m_trackId.string().utf8().data(), object.get(),
+        GST_DEBUG("TrackQueue for '%" PRIu64 "': Putting object event in the queue: %" GST_PTR_FORMAT ". notEmptyCallback currently %s.",
+            m_trackId, object.get(),
             m_notEmptyCallback ? "set, will be called" : "unset");
     }
     if (!m_notEmptyCallback)
@@ -73,7 +73,7 @@ void TrackQueue::clear()
 {
     ASSERT(isMainThread());
     m_queue.clear();
-    GST_DEBUG("TrackQueue for '%s': Emptied.", m_trackId.string().utf8().data());
+    GST_DEBUG("TrackQueue for '%" PRIu64 "': Emptied.", m_trackId);
     // Notify main thread of low level reached if it proceeds.
     checkLowLevel();
 }
@@ -84,14 +84,14 @@ void TrackQueue::flush()
     // If there was a callback in the streaming thread waiting for a sample to be added, cancel it.
     if (m_notEmptyCallback) {
         m_notEmptyCallback = nullptr;
-        GST_DEBUG("TrackQueue for '%s': notEmptyCallback unset.", m_trackId.string().utf8().data());
+        GST_DEBUG("TrackQueue for '%" PRIu64 "': notEmptyCallback unset.", m_trackId);
     }
 }
 
 void TrackQueue::notifyWhenLowLevel(LowLevelHandler&& lowLevelCallback)
 {
     ASSERT(isMainThread());
-    GST_TRACE("TrackQueue for '%s': Setting lowLevelCallback%s.", m_trackId.string().utf8().data(),
+    GST_TRACE("TrackQueue for '%" PRIu64 "': Setting lowLevelCallback%s.", m_trackId,
         m_lowLevelCallback ? " (previous callback will be discarded)" : "");
     m_lowLevelCallback = WTFMove(lowLevelCallback);
     checkLowLevel();
@@ -102,11 +102,11 @@ GRefPtr<GstMiniObject> TrackQueue::pop()
     ASSERT(!isEmpty());
     GRefPtr<GstMiniObject> object = m_queue.takeFirst();
     if (GST_IS_SAMPLE(object.get())) {
-        GST_TRACE("TrackQueue for '%s': Popped object sample from the queue: %" GST_PTR_FORMAT " Buffer: %" GST_PTR_FORMAT,
-            m_trackId.string().utf8().data(), object.get(), gst_sample_get_buffer(GST_SAMPLE(object.get())));
+        GST_TRACE("TrackQueue for '%" PRIu64 "': Popped object sample from the queue: %" GST_PTR_FORMAT " Buffer: %" GST_PTR_FORMAT,
+            m_trackId, object.get(), gst_sample_get_buffer(GST_SAMPLE(object.get())));
     } else {
-        GST_DEBUG("TrackQueue for '%s': Popped object event from the queue: %" GST_PTR_FORMAT,
-            m_trackId.string().utf8().data(), object.get());
+        GST_DEBUG("TrackQueue for '%" PRIu64 "': Popped object event from the queue: %" GST_PTR_FORMAT,
+            m_trackId, object.get());
     }
     checkLowLevel();
     return object;
@@ -117,7 +117,7 @@ void TrackQueue::notifyWhenNotEmpty(NotEmptyHandler&& notEmptyCallback)
     ASSERT(!isMainThread());
     ASSERT(!m_notEmptyCallback);
     m_notEmptyCallback = WTFMove(notEmptyCallback);
-    GST_TRACE("TrackQueue for '%s': notEmptyCallback set.", m_trackId.string().utf8().data());
+    GST_TRACE("TrackQueue for '%" PRIu64 "': notEmptyCallback set.", m_trackId);
 }
 
 void TrackQueue::resetNotEmptyHandler()
@@ -126,7 +126,7 @@ void TrackQueue::resetNotEmptyHandler()
     if (!m_notEmptyCallback)
         return;
     m_notEmptyCallback = nullptr;
-    GST_TRACE("TrackQueue for '%s': notEmptyCallback reset.", m_trackId.string().utf8().data());
+    GST_TRACE("TrackQueue for '%" PRIu64 "': notEmptyCallback reset.", m_trackId);
 }
 
 void TrackQueue::checkLowLevel()
@@ -136,7 +136,7 @@ void TrackQueue::checkLowLevel()
 
     LowLevelHandler lowLevelCallback;
     std::swap(lowLevelCallback, m_lowLevelCallback);
-    GST_TRACE("TrackQueue for '%s': lowLevelCallback called.", m_trackId.string().utf8().data());
+    GST_TRACE("TrackQueue for '%" PRIu64 "': lowLevelCallback called.", m_trackId);
     lowLevelCallback();
 }
 
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/TrackQueue.h b/Source/WebCore/platform/graphics/gstreamer/mse/TrackQueue.h
index 436b66a083..4af830b6af 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/TrackQueue.h
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/TrackQueue.h
@@ -41,7 +41,7 @@ namespace WebCore {
 
 class TrackQueue {
 public:
-    TrackQueue(AtomString trackId);
+    TrackQueue(TrackID);
 
     typedef std::function<void(GRefPtr<GstMiniObject>&&)> NotEmptyHandler;
     typedef std::function<void()> LowLevelHandler;
@@ -79,7 +79,7 @@ private:
     GstClockTime durationEnqueued() const;
     void checkLowLevel();
 
-    AtomString m_trackId;
+    TrackID m_trackId;
     Deque<GRefPtr<GstMiniObject>> m_queue;
     LowLevelHandler m_lowLevelCallback;
     NotEmptyHandler m_notEmptyCallback;
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp
index 7d2259f049..30da5cb84a 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp
@@ -67,11 +67,11 @@ enum {
 struct Stream;
 
 struct WebKitMediaSrcPrivate {
-    HashMap<AtomString, RefPtr<Stream>> streams;
-    Stream* streamByName(const AtomString& name)
+    TrackIDHashMap<RefPtr<Stream>> streams;
+    Stream* streamById(TrackID id)
     {
         ASSERT(isMainThread());
-        Stream* stream = streams.get(name);
+        Stream* stream = streams.get(id);
         ASSERT(stream);
         return stream;
     }
@@ -98,7 +98,7 @@ static void webKitMediaSrcConstructed(GObject*);
 static GstStateChangeReturn webKitMediaSrcChangeState(GstElement*, GstStateChange);
 static gboolean webKitMediaSrcActivateMode(GstPad*, GstObject*, GstPadMode, gboolean activate);
 static void webKitMediaSrcLoop(void*);
-static void webKitMediaSrcTearDownStream(WebKitMediaSrc* source, const AtomString& name);
+static void webKitMediaSrcTearDownStream(WebKitMediaSrc* source, TrackID);
 static void webKitMediaSrcGetProperty(GObject*, unsigned propId, GValue*, GParamSpec*);
 static void webKitMediaSrcStreamFlush(Stream*, bool isSeekingFlush);
 static gboolean webKitMediaSrcSendEvent(GstElement*, GstEvent*);
@@ -216,7 +216,7 @@ static void dumpPipeline([[maybe_unused]] ASCIILiteral description, [[maybe_unus
 {
 #ifndef GST_DISABLE_GST_DEBUG
     auto pipeline = findPipeline(GRefPtr<GstElement>(GST_ELEMENT(stream->source)));
-    auto fileName = makeString(span(GST_OBJECT_NAME(pipeline.get())), '-', stream->track->stringId(), '-', description);
+    auto fileName = makeString(span(GST_OBJECT_NAME(pipeline.get())), '-', stream->track->id(), '-', description);
     GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN_CAST(pipeline.get()), GST_DEBUG_GRAPH_SHOW_ALL, fileName.utf8().data());
 #endif
 }
@@ -255,6 +255,13 @@ static const char* streamTypeToString(TrackPrivateBaseGStreamer::TrackType type)
 
 static gboolean webKitMediaSrcQuery(GstElement* element, GstQuery* query)
 {
+#if GST_CHECK_VERSION(1, 22, 0)
+    if (GST_QUERY_TYPE(query) == GST_QUERY_SELECTABLE) {
+        gst_query_set_selectable(query, TRUE);
+        return TRUE;
+    }
+#endif
+
     gboolean result = GST_ELEMENT_CLASS(parent_class)->query(element, query);
 
     if (GST_QUERY_TYPE(query) != GST_QUERY_SCHEDULING)
@@ -319,24 +326,24 @@ void webKitMediaSrcEmitStreams(WebKitMediaSrc* source, const Vector<RefPtr<Media
     source->priv->collection = adoptGRef(gst_stream_collection_new("WebKitMediaSrc"));
     for (const auto& track : tracks) {
 #ifndef GST_DISABLE_GST_DEBUG
-        GST_DEBUG_OBJECT(source, "Adding stream with trackId '%s' of type %s with caps %" GST_PTR_FORMAT, track->stringId().string().utf8().data(), streamTypeToString(track->type()), track->initialCaps().get());
+        GST_DEBUG_OBJECT(source, "Adding stream with trackId '%" PRIu64 "' of type %s with caps %" GST_PTR_FORMAT, track->id(), streamTypeToString(track->type()), track->initialCaps().get());
 #endif // GST_DISABLE_GST_DEBUG
-        if (source->priv->streams.contains(track->stringId())) {
-            GST_ERROR_OBJECT(source, "stream with trackId '%s' already exists", track->stringId().string().utf8().data());
+        if (source->priv->streams.contains(track->id())) {
+            GST_ERROR_OBJECT(source, "stream with trackId '%" PRIu64 "' already exists", track->id());
             ASSERT_NOT_REACHED();
             continue;
         }
 
-        GRefPtr<WebKitMediaSrcPad> pad = WEBKIT_MEDIA_SRC_PAD(g_object_new(webkit_media_src_pad_get_type(), "name", makeString("src_"_s, track->stringId()).utf8().data(), "direction", GST_PAD_SRC, NULL));
+        GRefPtr<WebKitMediaSrcPad> pad = WEBKIT_MEDIA_SRC_PAD(g_object_new(webkit_media_src_pad_get_type(), "name", makeString("src_"_s, String::number(track->id())).utf8().data(), "direction", GST_PAD_SRC, NULL));
         gst_pad_set_activatemode_function(GST_PAD(pad.get()), webKitMediaSrcActivateMode);
 
         ASSERT(track->initialCaps());
         auto stream = adoptRef(new Stream(source, GRefPtr<GstPad>(GST_PAD(pad.get())), *track,
-            adoptGRef(gst_stream_new(track->stringId().string().utf8().data(), track->initialCaps().get(), gstStreamType(track->type()), GST_STREAM_FLAG_SELECT))));
+            adoptGRef(gst_stream_new(makeString(track->id()).utf8().data(), track->initialCaps().get(), gstStreamType(track->type()), GST_STREAM_FLAG_SELECT))));
         pad->priv->stream = ThreadSafeWeakPtr { *stream.get() };
 
         gst_stream_collection_add_stream(source->priv->collection.get(), GRefPtr<GstStream>(stream->streamInfo.get()).leakRef());
-        source->priv->streams.set(track->stringId(), WTFMove(stream));
+        source->priv->streams.set(track->id(), WTFMove(stream));
     }
 
     gst_element_post_message(GST_ELEMENT(source), gst_message_new_stream_collection(GST_OBJECT(source), source->priv->collection.get()));
@@ -360,7 +367,7 @@ void webKitMediaSrcEmitStreams(WebKitMediaSrc* source, const Vector<RefPtr<Media
             if (state > GST_STATE_READY)
                 gst_pad_set_active(GST_PAD(stream->pad.get()), true);
         }
-        GST_DEBUG_OBJECT(source, "Adding pad '%s' for stream with name '%s'", GST_OBJECT_NAME(stream->pad.get()), stream->track->stringId().string().utf8().data());
+        GST_DEBUG_OBJECT(source, "Adding pad '%s' for stream with id '%" PRIu64 "'", GST_OBJECT_NAME(stream->pad.get()), stream->track->id());
         gst_element_add_pad(GST_ELEMENT(source), GST_PAD(stream->pad.get()));
         gst_pad_remove_probe(GST_PAD(stream->pad.get()), blockId);
     }
@@ -377,11 +384,11 @@ void webKitMediaSrcSetPlayer(WebKitMediaSrc* source, ThreadSafeWeakPtr<MediaPlay
     source->priv->player = WTFMove(player);
 }
 
-static void webKitMediaSrcTearDownStream(WebKitMediaSrc* source, const AtomString& name)
+static void webKitMediaSrcTearDownStream(WebKitMediaSrc* source, TrackID id)
 {
     ASSERT(isMainThread());
-    Stream* stream = source->priv->streamByName(name);
-    GST_DEBUG_OBJECT(source, "Tearing down stream '%s'", name.string().utf8().data());
+    Stream* stream = source->priv->streamById(id);
+    GST_DEBUG_OBJECT(source, "Tearing down stream '%" PRIu64 "'", id);
 
     // Flush the source element **and** downstream. We want to stop the streaming thread and for that we need all elements downstream to be idle.
     webKitMediaSrcStreamFlush(stream, false);
@@ -393,7 +400,7 @@ static void webKitMediaSrcTearDownStream(WebKitMediaSrc* source, const AtomStrin
         gst_element_remove_pad(GST_ELEMENT(source), GST_PAD(pad));
         pad->priv->stream = nullptr;
     }
-    source->priv->streams.remove(name);
+    source->priv->streams.remove(id);
 }
 
 static gboolean webKitMediaSrcActivateMode(GstPad* pad, [[maybe_unused]] GstObject* source, GstPadMode mode, gboolean active)
@@ -499,7 +506,7 @@ static void webKitMediaSrcLoop(void* userData)
     }
 
     if (!streamingMembers->wasStreamStartSent) {
-        GUniquePtr<char> streamId { g_strdup_printf("mse/%s", stream->track->stringId().string().utf8().data()) };
+        GUniquePtr<char> streamId { g_strdup_printf("mse/%" PRIu64 "", stream->track->id()) };
         GRefPtr<GstEvent> event = adoptGRef(gst_event_new_stream_start(streamId.get()));
         gst_event_set_group_id(event.get(), stream->source->priv->groupId);
         gst_event_set_stream(event.get(), stream->streamInfo.get());
@@ -630,14 +637,14 @@ static void webKitMediaSrcStreamFlush(Stream* stream, bool isSeekingFlush)
 {
     ASSERT(isMainThread());
     bool skipFlush = false;
-    GST_DEBUG_OBJECT(stream->source, "Flush requested for stream '%s'. isSeekingFlush = %s",
-        stream->track->stringId().string().utf8().data(), boolForPrinting(isSeekingFlush));
+    GST_DEBUG_OBJECT(stream->source, "Flush requested for stream '%" PRIu64 "'. isSeekingFlush = %s",
+        stream->track->id(), boolForPrinting(isSeekingFlush));
 
     {
         DataMutexLocker streamingMembers { stream->streamingMembersDataMutex };
 
         if (!streamingMembers->hasPoppedFirstObject) {
-            GST_DEBUG_OBJECT(stream->source, "Flush request for stream '%s' occurred before hasPoppedFirstObject, just clearing the queue and readjusting the segment.", stream->track->stringId().string().utf8().data());
+            GST_DEBUG_OBJECT(stream->source, "Flush request for stream '%" PRIu64 "' occurred before hasPoppedFirstObject, just clearing the queue and readjusting the segment.", stream->track->id());
             DataMutexLocker queue { stream->track->queueDataMutex() };
             // We use clear() instead of flush() because the WebKitMediaSrc streaming thread could be waiting
             // for the queue. flush() would cancel the notEmptyCallback therefore leaving the streaming thread
@@ -740,15 +747,15 @@ static void webKitMediaSrcStreamFlush(Stream* stream, bool isSeekingFlush)
         gst_pad_start_task(stream->pad.get(), webKitMediaSrcLoop, stream->pad.get(), nullptr);
     }
 
-    GST_DEBUG_OBJECT(stream->source, "Flush request for stream '%s' (isSeekingFlush = %s) satisfied.",
-        stream->track->stringId().string().utf8().data(), boolForPrinting(isSeekingFlush));
+    GST_DEBUG_OBJECT(stream->source, "Flush request for stream '%" PRIu64 "' (isSeekingFlush = %s) satisfied.",
+        stream->track->id(), boolForPrinting(isSeekingFlush));
 }
 
-void webKitMediaSrcFlush(WebKitMediaSrc* source, const AtomString& streamName)
+void webKitMediaSrcFlush(WebKitMediaSrc* source, TrackID streamId)
 {
     ASSERT(isMainThread());
-    GST_DEBUG_OBJECT(source, "Received non-seek flush request for stream '%s'.", streamName.string().utf8().data());
-    Stream* stream = source->priv->streamByName(streamName);
+    GST_DEBUG_OBJECT(source, "Received non-seek flush request for stream '%" PRIu64 "'.", streamId);
+    Stream* stream = source->priv->streamById(streamId);
 
     webKitMediaSrcStreamFlush(stream, false);
 }
diff --git a/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.h
index b60bd4f9e1..a24412b2c5 100644
--- a/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.h
@@ -63,7 +63,7 @@ GType webkit_media_src_get_type(void);
 
 void webKitMediaSrcEmitStreams(WebKitMediaSrc* source, const Vector<RefPtr<WebCore::MediaSourceTrackGStreamer>>& tracks);
 
-void webKitMediaSrcFlush(WebKitMediaSrc*, const AtomString& streamName);
+void webKitMediaSrcFlush(WebKitMediaSrc*, TrackID streamId);
 
 void webKitMediaSrcSetPlayer(WebKitMediaSrc*, ThreadSafeWeakPtr<WebCore::MediaPlayerPrivateGStreamerMSE>&&);
 
diff --git a/Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.cpp b/Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.cpp
index 6f8f807569..8503582520 100644
--- a/Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.cpp
+++ b/Source/WebCore/platform/graphics/skia/ImageBufferSkiaAcceleratedBackend.cpp
@@ -139,15 +139,33 @@ void ImageBufferSkiaAcceleratedBackend::getPixelBuffer(const IntRect& srcRect, P
     if (!PlatformDisplay::sharedDisplay().skiaGLContext()->makeContextCurrent())
         return;
 
-    auto info = m_surface->imageInfo();
-    auto data = SkData::MakeUninitialized(info.computeMinByteSize());
-    auto* pixels = static_cast<uint8_t*>(data->writable_data());
-    size_t rowBytes = static_cast<size_t>(info.minRowBytes64());
-
-    // Create a SkImageInfo so the readPixels call will convert the RGBA pixels from the surface into BGRA.
-    SkImageInfo imageInfo = SkImageInfo::Make(info.width(), info.height(), SkColorType::kBGRA_8888_SkColorType, SkAlphaType::kPremul_SkAlphaType, colorSpace().platformColorSpace());
-    if (m_surface->readPixels(imageInfo, pixels, rowBytes, 0, 0))
-        ImageBufferBackend::getPixelBuffer(srcRect, pixels, destination);
+    const IntRect backendRect { { }, size() };
+    const auto sourceRectClipped = intersection(backendRect, srcRect);
+    IntRect destinationRect { IntPoint::zero(), sourceRectClipped.size() };
+
+    if (srcRect.x() < 0)
+        destinationRect.setX(destinationRect.x() - srcRect.x());
+    if (srcRect.y() < 0)
+        destinationRect.setY(destinationRect.y() - srcRect.y());
+
+    if (destination.size() != sourceRectClipped.size())
+        destination.zeroFill();
+
+    const auto destinationColorType = (destination.format().pixelFormat == PixelFormat::RGBA8)
+        ? SkColorType::kRGBA_8888_SkColorType : SkColorType::kBGRA_8888_SkColorType;
+
+    const auto destinationAlphaType = (destination.format().alphaFormat == AlphaPremultiplication::Premultiplied)
+        ? SkAlphaType::kPremul_SkAlphaType : SkAlphaType::kUnpremul_SkAlphaType;
+
+    auto destinationInfo = SkImageInfo::Make(destination.size().width(), destination.size().height(),
+        destinationColorType, destinationAlphaType, destination.format().colorSpace.platformColorSpace());
+    SkPixmap pixmap(destinationInfo, destination.bytes().data(), destination.size().width() * 4);
+
+    SkPixmap dstPixmap;
+    if (UNLIKELY(!pixmap.extractSubset(&dstPixmap, destinationRect)))
+        return;
+
+    m_surface->readPixels(dstPixmap, sourceRectClipped.x(), sourceRectClipped.y());
 }
 
 void ImageBufferSkiaAcceleratedBackend::putPixelBuffer(const PixelBuffer& pixelBuffer, const IntRect& srcRect, const IntPoint& destPoint, AlphaPremultiplication destFormat)
diff --git a/Source/WebCore/platform/graphics/texmap/FloatPlane3D.cpp b/Source/WebCore/platform/graphics/texmap/FloatPlane3D.cpp
new file mode 100644
index 0000000000..b54e64bd6e
--- /dev/null
+++ b/Source/WebCore/platform/graphics/texmap/FloatPlane3D.cpp
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2024 Jani Hautakangas <jani@kodegood.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above
+ *    copyright notice, this list of conditions and the following
+ *    disclaimer in the documentation and/or other materials provided
+ *    with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "FloatPlane3D.h"
+
+#include <wtf/TZoneMallocInlines.h>
+
+namespace WebCore {
+
+WTF_MAKE_TZONE_ALLOCATED_IMPL(FloatPlane3D);
+
+FloatPlane3D::FloatPlane3D(const FloatPoint3D& normal, const FloatPoint3D& point)
+    : m_normal(normal)
+    , m_distanceConstant(m_normal.dot(point))
+{
+}
+
+} // namespace WebCore
diff --git a/Source/WebCore/platform/graphics/texmap/FloatPlane3D.h b/Source/WebCore/platform/graphics/texmap/FloatPlane3D.h
new file mode 100644
index 0000000000..db640d7a4b
--- /dev/null
+++ b/Source/WebCore/platform/graphics/texmap/FloatPlane3D.h
@@ -0,0 +1,58 @@
+/*
+ * Copyright (C) 2024 Jani Hautakangas <jani@kodegood.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above
+ *    copyright notice, this list of conditions and the following
+ *    disclaimer in the documentation and/or other materials provided
+ *    with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#include "FloatPoint3D.h"
+#include <wtf/TZoneMalloc.h>
+
+namespace WebCore {
+
+class FloatPlane3D {
+    WTF_MAKE_TZONE_ALLOCATED(FloatPlane3D);
+public:
+    FloatPlane3D(const FloatPoint3D&, const FloatPoint3D&);
+
+    const FloatPoint3D& normal() const { return m_normal; }
+
+    // Getter for the distance from the origin (plane constant d)
+    float distanceConstant() const { return m_distanceConstant; }
+
+    // Signed distance. The sign of the return value is positive
+    // if the point is on the front side of the plane, negative if the
+    // point is on the back side, and zero if the point is on the plane.
+    float distanceToPoint(const FloatPoint3D& point) const
+    {
+        return m_normal.dot(point) - m_distanceConstant;
+    }
+
+private:
+    FloatPoint3D m_normal;
+    float m_distanceConstant;
+};
+
+} // namespace WebCore
diff --git a/Source/WebCore/platform/graphics/texmap/FloatPolygon3D.cpp b/Source/WebCore/platform/graphics/texmap/FloatPolygon3D.cpp
new file mode 100644
index 0000000000..852a370f02
--- /dev/null
+++ b/Source/WebCore/platform/graphics/texmap/FloatPolygon3D.cpp
@@ -0,0 +1,119 @@
+/*
+ * Copyright (C) 2024 Jani Hautakangas <jani@kodegood.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above
+ *    copyright notice, this list of conditions and the following
+ *    disclaimer in the documentation and/or other materials provided
+ *    with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "FloatPolygon3D.h"
+
+#include <wtf/TZoneMallocInlines.h>
+
+namespace WebCore {
+
+WTF_MAKE_TZONE_ALLOCATED_IMPL(FloatPolygon3D);
+
+FloatPolygon3D::FloatPolygon3D(const FloatRect& rect, const TransformationMatrix& transform)
+{
+    m_vertices.append(transform.mapPoint(FloatPoint3D(rect.minXMinYCorner())));
+    m_vertices.append(transform.mapPoint(FloatPoint3D(rect.maxXMinYCorner())));
+    m_vertices.append(transform.mapPoint(FloatPoint3D(rect.maxXMaxYCorner())));
+    m_vertices.append(transform.mapPoint(FloatPoint3D(rect.minXMaxYCorner())));
+
+    if (auto inverse = transform.inverse())
+        m_normal = inverse->transpose().mapPoint(m_normal);
+    else {
+        FloatPoint3D edge1(m_vertices[1].x() - m_vertices[0].x(), m_vertices[1].y() - m_vertices[0].y(), m_vertices[1].z() - m_vertices[0].z());
+        FloatPoint3D edge2(m_vertices[2].x() - m_vertices[0].x(), m_vertices[2].y() - m_vertices[0].y(), m_vertices[2].z() - m_vertices[0].z());
+        m_normal = edge1.cross(edge2);
+    }
+    m_normal.normalize();
+}
+
+FloatPolygon3D::FloatPolygon3D(Vector<FloatPoint3D>&& vertices, const FloatPoint3D& normal)
+    : m_vertices(WTFMove(vertices))
+    , m_normal(normal)
+{
+}
+
+// Splits the polygon into two parts relative to the given plane.
+// Algorithm:
+// - For each edge of the polygon:
+//   - Compute the signed distances of the edge's vertices from the plane.
+//   - If both vertices are on the same side of the plane, add the starting vertex to the corresponding side's list.
+//   - If the edge crosses the plane, compute the intersection point:
+//     - t = di / (di - dj)
+//     - intersectionPoint = vi + t * (vj - vi)
+//     - Add the starting vertex and the intersection point to the appropriate lists.
+// - Construct two new polygons from the collected vertices.
+std::pair<FloatPolygon3D, FloatPolygon3D> FloatPolygon3D::split(const FloatPlane3D& plane) const
+{
+    Vector<FloatPoint3D> positiveVertices;
+    Vector<FloatPoint3D> negativeVertices;
+
+    const float epsilon = std::numeric_limits<float>::epsilon(); // Tolerance for floating point comparisons
+
+    unsigned numberOfVertices = m_vertices.size();
+    for (unsigned i = 0; i < numberOfVertices; ++i) {
+        const FloatPoint3D& vi = m_vertices[i];
+        const FloatPoint3D& vj = m_vertices[(i + 1) % numberOfVertices];
+        float di = plane.distanceToPoint(vi);
+        float dj = plane.distanceToPoint(vj);
+
+        bool viPos = di > epsilon;
+        bool viNeg = di < -epsilon;
+
+        if (viPos) {
+            positiveVertices.append(vi);
+
+            if (dj < -epsilon) {
+                // Edge crosses from positive to negative
+                float t = di / (di - dj);
+                FloatPoint3D intersectionPoint = vi + (vj - vi) * t;
+                positiveVertices.append(intersectionPoint);
+                negativeVertices.append(intersectionPoint);
+            }
+
+        } else if (viNeg) {
+            negativeVertices.append(vi);
+
+            if (dj > epsilon) {
+                // Edge crosses from negative to positive
+                float t = di / (di - dj);
+                FloatPoint3D intersectionPoint = vi + (vj - vi) * t;
+                negativeVertices.append(intersectionPoint);
+                positiveVertices.append(intersectionPoint);
+            }
+
+        } else { // vi is approximately on the plane
+            positiveVertices.append(vi);
+            negativeVertices.append(vi);
+        }
+    }
+
+    // Create new polygons for each side
+    return { { WTFMove(negativeVertices), m_normal }, { WTFMove(positiveVertices), m_normal } };
+}
+
+} // namespace WebCore
diff --git a/Source/WebCore/platform/graphics/texmap/FloatPolygon3D.h b/Source/WebCore/platform/graphics/texmap/FloatPolygon3D.h
new file mode 100644
index 0000000000..d7cc789e40
--- /dev/null
+++ b/Source/WebCore/platform/graphics/texmap/FloatPolygon3D.h
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2024 Jani Hautakangas <jani@kodegood.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above
+ *    copyright notice, this list of conditions and the following
+ *    disclaimer in the documentation and/or other materials provided
+ *    with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#include "FloatPlane3D.h"
+#include "FloatPoint3D.h"
+#include "FloatRect.h"
+#include "TransformationMatrix.h"
+#include <wtf/TZoneMalloc.h>
+#include <wtf/Vector.h>
+
+namespace WebCore {
+
+// FloatPolygon3D represents planar polygon in 3D space
+
+class FloatPolygon3D {
+    WTF_MAKE_TZONE_ALLOCATED(FloatPolygon3D);
+public:
+    FloatPolygon3D() = default;
+    FloatPolygon3D(const FloatRect&, const TransformationMatrix&);
+
+    const FloatPoint3D& vertexAt(unsigned index) const { return m_vertices[index]; }
+    unsigned numberOfVertices() const { return m_vertices.size(); }
+
+    const FloatPoint3D& normal() const { return m_normal; }
+
+    std::pair<FloatPolygon3D, FloatPolygon3D> split(const FloatPlane3D&) const;
+
+private:
+    FloatPolygon3D(Vector<FloatPoint3D>&&, const FloatPoint3D&);
+
+    Vector<FloatPoint3D> m_vertices;
+    FloatPoint3D m_normal = { 0, 0, 1 };
+};
+
+} // namespace WebCore
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapper.cpp b/Source/WebCore/platform/graphics/texmap/TextureMapper.cpp
index e1a50c7057..0974d5142a 100644
--- a/Source/WebCore/platform/graphics/texmap/TextureMapper.cpp
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapper.cpp
@@ -26,6 +26,7 @@
 
 #include "BitmapTexture.h"
 #include "FilterOperations.h"
+#include "FloatPolygon.h"
 #include "FloatQuad.h"
 #include "FloatRoundedRect.h"
 #include "GLContext.h"
@@ -1317,6 +1318,68 @@ void TextureMapper::beginClip(const TransformationMatrix& modelViewMatrix, const
     clipStack().applyIfNeeded();
 }
 
+void TextureMapper::beginClip(const TransformationMatrix& modelViewMatrix, const FloatPolygon& polygon)
+{
+    clipStack().push();
+    data().initializeStencil();
+
+    Ref<TextureMapperShaderProgram> program = data().getShaderProgram(TextureMapperShaderProgram::SolidColor);
+
+    glUseProgram(program->programID());
+    glEnableVertexAttribArray(program->vertexLocation());
+
+    unsigned numberOfVertices = polygon.numberOfVertices();
+    Vector<GLfloat> polygonVertices;
+    polygonVertices.reserveCapacity(numberOfVertices * 2);
+    for (unsigned i = 0; i < numberOfVertices; i++) {
+        auto v = polygon.vertexAt(i);
+        polygonVertices.append(v.x());
+        polygonVertices.append(v.y());
+    }
+
+    int stencilIndex = clipStack().getStencilIndex();
+
+    glEnable(GL_STENCIL_TEST);
+
+    // Make sure we don't do any actual drawing.
+    glStencilFunc(GL_NEVER, stencilIndex, stencilIndex);
+
+    // Operate only on the stencilIndex and above.
+    glStencilMask(0xff & ~(stencilIndex - 1));
+
+    // First clear the entire buffer at the current index.
+    static const TransformationMatrix fullProjectionMatrix = TransformationMatrix::rectToRect(FloatRect(0, 0, 1, 1), FloatRect(-1, -1, 2, 2));
+    const GLfloat unitRect[] = { 0, 0, 1, 0, 1, 1, 0, 1 };
+    GLuint vbo = data().getStaticVBO(GL_ARRAY_BUFFER, sizeof(GLfloat) * 8, unitRect);
+    glBindBuffer(GL_ARRAY_BUFFER, vbo);
+    glVertexAttribPointer(program->vertexLocation(), 2, GL_FLOAT, false, 0, 0);
+    program->setMatrix(program->projectionMatrixLocation(), fullProjectionMatrix);
+    program->setMatrix(program->modelViewMatrixLocation(), TransformationMatrix());
+    glStencilOp(GL_ZERO, GL_ZERO, GL_ZERO);
+    glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
+
+    // Now apply the current index to the new polygon.
+    GLuint polygonVBO;
+    glGenBuffers(1, &polygonVBO);
+    glBindBuffer(GL_ARRAY_BUFFER, polygonVBO);
+    glBufferData(GL_ARRAY_BUFFER, polygonVertices.size() * sizeof(GLfloat), polygonVertices.data(), GL_STATIC_DRAW);
+    glVertexAttribPointer(program->vertexLocation(), 2, GL_FLOAT, false, 0, 0);
+    glStencilOp(GL_REPLACE, GL_REPLACE, GL_REPLACE);
+    program->setMatrix(program->projectionMatrixLocation(), data().projectionMatrix);
+    program->setMatrix(program->modelViewMatrixLocation(), modelViewMatrix);
+    glDrawArrays(GL_TRIANGLE_FAN, 0, polygonVertices.size() / 2);
+    glDeleteBuffers(1, &polygonVBO);
+
+    // Clear the state.
+    glBindBuffer(GL_ARRAY_BUFFER, 0);
+    glDisableVertexAttribArray(program->vertexLocation());
+    glStencilMask(0);
+
+    // Increase stencilIndex and apply stencil testing.
+    clipStack().setStencilIndex(stencilIndex * 2);
+    clipStack().applyIfNeeded();
+}
+
 void TextureMapper::endClip()
 {
     clipStack().pop();
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapper.h b/Source/WebCore/platform/graphics/texmap/TextureMapper.h
index 0252a50ff4..7f92105117 100644
--- a/Source/WebCore/platform/graphics/texmap/TextureMapper.h
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapper.h
@@ -41,6 +41,7 @@ namespace WebCore {
 class TextureMapperGLData;
 class TextureMapperShaderProgram;
 class FilterOperations;
+class FloatPolygon;
 class FloatRoundedRect;
 enum class TextureMapperFlags : uint16_t;
 
@@ -76,6 +77,7 @@ public:
     void bindSurface(BitmapTexture* surface);
     BitmapTexture* currentSurface();
     void beginClip(const TransformationMatrix&, const FloatRoundedRect&);
+    void beginClip(const TransformationMatrix&, const FloatPolygon&);
     WEBCORE_EXPORT void beginPainting(FlipY = FlipY::No, BitmapTexture* = nullptr);
     WEBCORE_EXPORT void endPainting();
     void endClip();
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
index f2b9aa4435..27949d7922 100644
--- a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.cpp
@@ -25,6 +25,7 @@
 #include "FloatQuad.h"
 #include "Region.h"
 #include "TextureMapper.h"
+#include "TextureMapperLayer3DRenderingContext.h"
 #include <wtf/MathExtras.h>
 #include <wtf/SetForScope.h>
 
@@ -43,8 +44,6 @@ public:
     IntSize offset;
     TextureMapperLayer* backdropLayer { nullptr };
     TextureMapperLayer* replicaLayer { nullptr };
-    bool preserves3D { false };
-    Vector<IntRect> holePunchRects;
 };
 
 struct TextureMapperLayer::ComputeTransformData {
@@ -310,9 +309,6 @@ void TextureMapperLayer::computeTransformsRecursive(ComputeTransformData& data)
     data.updateDepthRange(calculateZ(rect.x(), rect.y() + rect.height()));
     data.updateDepthRange(calculateZ(rect.x() + rect.width(), rect.y() + rect.height()));
 
-    if (m_parent && m_parent->m_state.preserves3D)
-        m_centerZ = calculateZ(rect.x() + rect.width() / 2, rect.y() + rect.height() / 2);
-
     if (m_state.backdropLayer)
         m_state.backdropLayer->computeTransformsRecursive(data);
 
@@ -327,10 +323,6 @@ void TextureMapperLayer::computeTransformsRecursive(ComputeTransformData& data)
         }
     }
 
-    // Reorder children if needed on the way back up.
-    if (m_state.preserves3D)
-        sortByZOrder(m_children);
-
 #if USE(COORDINATED_GRAPHICS)
     if (m_backingStore && m_animatedBackingStoreClient)
         m_animatedBackingStoreClient->requestBackingStoreUpdateIfNeeded(m_layerTransforms.futureCombined);
@@ -434,28 +426,8 @@ void TextureMapperLayer::paintSelf(TextureMapperPaintOptions& options)
         options.textureMapper.beginClip(transform, m_state.contentsClippingRect);
     }
 
-    bool isHolePunchInPreserve3D = options.preserves3D && contentsLayer->isHolePunchBuffer();
-    if (isHolePunchInPreserve3D) {
-        // If we're in preserve3D mode, then we're painting into an intermediate surface. This means that the
-        // elements are not painted into their final position, as it depends on the offset applied when painting the
-        // intermediate surface. But holepunch buffers need to know the final position in order to position the video
-        // sink and draw the transparent rectangle in the main framebuffer. Options.offset was applied to remove the
-        // offset from the elements that is instead applied to the intermediate surface, so we undo that. That way the
-        // transform shows the final position, and paintToTextureMapper can properly notify the video sink.
-        transform.translate(-options.offset.width(), -options.offset.height());
-    }
-
     contentsLayer->paintToTextureMapper(options.textureMapper, m_state.contentsRect, transform, options.opacity);
 
-    if (isHolePunchInPreserve3D) {
-        // Once the video sink was notified of the position, store the rect in the list of rects that need to be
-        // painted into the main framebuffer and reapply options.offset.
-        // The holepunch rects stored will be painted transparent into the main framebuffer before blending the
-        // intermediate surface.
-        options.holePunchRects.append(enclosingIntRect(transform.mapRect(m_state.contentsRect)));
-        transform.translate(options.offset.width(), options.offset.height());
-    }
-
     if (shouldClip)
         options.textureMapper.endClip();
 
@@ -463,14 +435,6 @@ void TextureMapperLayer::paintSelf(TextureMapperPaintOptions& options)
         contentsLayer->drawBorder(options.textureMapper, m_state.debugBorderColor, m_state.debugBorderWidth, m_state.contentsRect, transform);
 }
 
-void TextureMapperLayer::sortByZOrder(Vector<TextureMapperLayer* >& array)
-{
-    std::sort(array.begin(), array.end(),
-        [](TextureMapperLayer* a, TextureMapperLayer* b) {
-            return a->m_centerZ < b->m_centerZ;
-        });
-}
-
 void TextureMapperLayer::paintBackdrop(TextureMapperPaintOptions& options)
 {
     TransformationMatrix clipTransform;
@@ -1030,63 +994,38 @@ void TextureMapperLayer::paintFlattened(TextureMapperPaintOptions& options)
 
 void TextureMapperLayer::paintWith3DRenderingContext(TextureMapperPaintOptions& options)
 {
-    if (options.preserves3D) {
-        paintSelfAndChildrenWithReplica(options);
-        return;
-    }
-    SetForScope scopedPreserves3D(options.preserves3D, true);
+    Vector<TextureMapperLayer*> layers;
+    collect3DSceneLayers(layers);
 
-    Region overlapRegion;
-    Region nonOverlapRegion;
-    ComputeOverlapRegionData data {
-        ComputeOverlapRegionMode::Union,
-        options.textureMapper.clipBounds(),
-        overlapRegion,
-        nonOverlapRegion
-    };
-    data.clipBounds.move(-options.offset);
-    computeOverlapRegions(data, options.transform, false);
-    ASSERT(nonOverlapRegion.isEmpty());
+    TextureMapperLayer3DRenderingContext context;
+    context.paint(layers, [&](TextureMapperLayer* layer, const FloatPolygon& clipArea) {
+        if (!clipArea.isEmpty())
+            options.textureMapper.beginClip(layer->toSurfaceTransform(), clipArea);
 
-    auto rects = overlapRegion.rects();
-    static const size_t OverlapRegionConsolidationThreshold = 4;
-    if (rects.size() > OverlapRegionConsolidationThreshold) {
-        rects.clear();
-        rects.append(overlapRegion.bounds());
-    }
+        if (layer->preserves3D())
+            layer->paintSelf(options);
+        else
+            layer->paintRecursive(options);
 
-    IntSize maxTextureSize = options.textureMapper.maxTextureSize();
-    for (auto& rect : rects) {
-        for (int x = rect.x(); x < rect.maxX(); x += maxTextureSize.width()) {
-            for (int y = rect.y(); y < rect.maxY(); y += maxTextureSize.height()) {
-                IntRect tileRect(IntPoint(x, y), maxTextureSize);
-                tileRect.intersect(rect);
-                auto surface = options.textureMapper.acquireTextureFromPool(tileRect.size(), { BitmapTexture::Flags::SupportsAlpha, BitmapTexture::Flags::DepthBuffer });
-                {
-                    SetForScope scopedSurface(options.surface, surface);
-                    SetForScope scopedOffset(options.offset, -toIntSize(tileRect.location()));
-                    SetForScope scopedOpacity(options.opacity, 1);
-
-                    options.textureMapper.bindSurface(options.surface.get());
-                    paintSelfAndChildrenWithReplica(options);
-                }
-
-                // Once the subtree is painted into the intermediate surface, we need to blend it into the main framebuffer.
-                tileRect.move(options.offset);
-                options.textureMapper.bindSurface(options.surface.get());
+        if (!clipArea.isEmpty())
+            options.textureMapper.endClip();
+    });
+}
 
-                // There can't be nested preserves3D contexts, so the previous bindSurface always puts us on the
-                // main framebuffer. Draw the holepunch rectangles that we got from the subtree before blending
-                // the intermediate texture.
-                for (auto rect : options.holePunchRects)
-                    options.textureMapper.drawSolidColor(rect, { }, Color::transparentBlack, false);
-                options.holePunchRects.clear();
+void TextureMapperLayer::collect3DSceneLayers(Vector<TextureMapperLayer*>& layers)
+{
+    bool isLeafOf3DScene = !m_state.preserves3D && (m_parent && m_parent->preserves3D());
+    if (preserves3D() || isLeafOf3DScene) {
+        if (m_state.visible)
+            layers.append(this);
 
-                // And finally, blend the intermediate surface.
-                options.textureMapper.drawTexture(*surface, tileRect, { }, options.opacity);
-            }
-        }
+        // Stop recursion on scene leaf
+        if (isLeafOf3DScene)
+            return;
     }
+
+    for (auto* child : m_children)
+        child->collect3DSceneLayers(layers);
 }
 
 void TextureMapperLayer::setChildren(const Vector<TextureMapperLayer*>& newChildren)
@@ -1374,4 +1313,11 @@ void TextureMapperLayer::recordDamage(const FloatRect& rect, const Transformatio
     m_visitor->recordDamage(transformedRect);
 }
 
+FloatRect TextureMapperLayer::effectiveLayerRect() const
+{
+    if (isFlattened())
+        return m_flattenedLayer->layerRect();
+    return layerRect();
+}
+
 }
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
index e7b51d4f7f..7ad89565cf 100644
--- a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
@@ -84,6 +84,7 @@ public:
     FloatSize size() const { return m_state.size; }
     float opacity() const { return m_state.opacity; }
     TransformationMatrix transform() const { return m_state.transform; }
+    const TransformationMatrix& toSurfaceTransform() const { return m_layerTransforms.combined; }
     void setContentsVisible(bool);
     void setContentsOpaque(bool);
     void setBackfaceVisibility(bool);
@@ -131,6 +132,8 @@ public:
     ALWAYS_INLINE void addDamage(const Damage&);
     ALWAYS_INLINE void addDamage(const FloatRect&);
 
+    FloatRect effectiveLayerRect() const;
+
 private:
     TextureMapperLayer& rootLayer() const
     {
@@ -152,8 +155,6 @@ private:
     struct ComputeTransformData;
     void computeTransformsRecursive(ComputeTransformData&);
 
-    static void sortByZOrder(Vector<TextureMapperLayer* >& array);
-
     TransformationMatrix replicaTransform();
     void removeFromParent();
     void removeAllChildren();
@@ -186,6 +187,7 @@ private:
     void paintBackdrop(TextureMapperPaintOptions&);
     void applyMask(TextureMapperPaintOptions&);
     void recordDamage(const FloatRect&, const TransformationMatrix&, const TextureMapperPaintOptions&);
+    void collect3DSceneLayers(Vector<TextureMapperLayer*>&);
 
     bool isVisible() const;
 
@@ -209,7 +211,6 @@ private:
     std::unique_ptr<TextureMapperFlattenedLayer> m_flattenedLayer;
     float m_currentOpacity { 1.0 };
     FilterOperations m_currentFilters;
-    float m_centerZ { 0 };
 
     struct State {
         FloatPoint pos;
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.cpp b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.cpp
new file mode 100644
index 0000000000..a60e9b208a
--- /dev/null
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.cpp
@@ -0,0 +1,144 @@
+/*
+ * Copyright (C) 2024 Jani Hautakangas <jani@kodegood.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above
+ *    copyright notice, this list of conditions and the following
+ *    disclaimer in the documentation and/or other materials provided
+ *    with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "TextureMapperLayer3DRenderingContext.h"
+
+#include "TextureMapperLayer.h"
+#include <wtf/TZoneMallocInlines.h>
+
+namespace WebCore {
+
+WTF_MAKE_TZONE_ALLOCATED_IMPL(TextureMapperLayer3DRenderingContext);
+
+void TextureMapperLayer3DRenderingContext::paint(const Vector<TextureMapperLayer*>& layers, const std::function<void(TextureMapperLayer*, const FloatPolygon&)>& paintLayerFunction)
+{
+    if (layers.isEmpty())
+        return;
+
+    Deque<TextureMapperLayerPolygon> layerList;
+    for (auto* layer : layers)
+        layerList.append({ { layer->effectiveLayerRect(), layer->toSurfaceTransform() }, layer, false });
+
+    auto root = makeUnique<TextureMapperLayerNode>(layerList.takeFirst());
+    buildTree(*root, layerList);
+    traverseTreeAndPaint(*root, paintLayerFunction);
+}
+
+// Build BSP tree for rendering polygons with painter's algorithm.
+// For more information:
+// https://en.wikipedia.org/wiki/Binary_space_partitioning
+void TextureMapperLayer3DRenderingContext::buildTree(TextureMapperLayerNode& root, Deque<TextureMapperLayerPolygon>& polygons)
+{
+    if (polygons.isEmpty())
+        return;
+
+    auto& rootGeometry = root.firstPolygon().geometry;
+    FloatPlane3D rootPlane(rootGeometry.normal(), rootGeometry.vertexAt(0));
+
+    Deque<TextureMapperLayerPolygon> backList, frontList;
+    for (auto& polygon : polygons) {
+        switch (classifyPolygon(polygon, rootPlane)) {
+        case PolygonPosition::InFront:
+            frontList.append(WTFMove(polygon));
+            break;
+        case PolygonPosition::Behind:
+            backList.append(WTFMove(polygon));
+            break;
+        case PolygonPosition::Coplanar:
+            root.polygons.append(WTFMove(polygon));
+            break;
+        case PolygonPosition::Intersecting:
+            auto [backGeometry, frontGeometry] = polygon.geometry.split(rootPlane);
+            if (backGeometry.numberOfVertices() > 2)
+                backList.append({ backGeometry, polygon.layer, true });
+            if (frontGeometry.numberOfVertices() > 2)
+                frontList.append({ frontGeometry, polygon.layer, true });
+            break;
+        }
+    }
+
+    if (!frontList.isEmpty()) {
+        root.frontNode = makeUnique<TextureMapperLayerNode>(frontList.takeFirst());
+        buildTree(*root.frontNode, frontList);
+    }
+
+    if (!backList.isEmpty()) {
+        root.backNode = makeUnique<TextureMapperLayerNode>(backList.takeFirst());
+        buildTree(*root.backNode, backList);
+    }
+}
+
+void TextureMapperLayer3DRenderingContext::traverseTreeAndPaint(TextureMapperLayerNode& node, const std::function<void(TextureMapperLayer*, const FloatPolygon&)>& paintLayerFunction)
+{
+    auto& geometry = node.firstPolygon().geometry;
+    FloatPlane3D plane(geometry.normal(), geometry.vertexAt(0));
+
+    auto* frontNode = node.frontNode.get();
+    auto* backNode = node.backNode.get();
+
+    // if polygon is facing away from camera then swap nodes to reverse
+    // the traversal order
+    if (plane.normal().z() < 0)
+        std::swap(frontNode, backNode);
+
+    if (backNode)
+        traverseTreeAndPaint(*backNode, paintLayerFunction);
+
+    for (auto& polygon : node.polygons)
+        paintLayerFunction(polygon.layer, polygon.layerClipArea());
+
+    if (frontNode)
+        traverseTreeAndPaint(*frontNode, paintLayerFunction);
+}
+
+TextureMapperLayer3DRenderingContext::PolygonPosition TextureMapperLayer3DRenderingContext::classifyPolygon(const TextureMapperLayerPolygon& polygon, const FloatPlane3D& plane)
+{
+    const float epsilon = 0.05f; // Tolerance for intersection check
+
+    int inFrontCount = 0;
+    int behindCount = 0;
+    for (unsigned i = 0; i < polygon.geometry.numberOfVertices(); i++) {
+        const auto& vertex = polygon.geometry.vertexAt(i);
+        float distance = plane.distanceToPoint(vertex);
+
+        if (distance > epsilon)
+            inFrontCount++;
+        else if (distance < -epsilon)
+            behindCount++;
+    }
+
+    if (inFrontCount > 0 && behindCount > 0)
+        return PolygonPosition::Intersecting;
+    if (inFrontCount > 0)
+        return PolygonPosition::InFront;
+    if (behindCount > 0)
+        return PolygonPosition::Behind;
+    return PolygonPosition::Coplanar;
+}
+
+} // namespace WebCore
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.h b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.h
new file mode 100644
index 0000000000..9ba4083ac4
--- /dev/null
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.h
@@ -0,0 +1,96 @@
+/*
+ * Copyright (C) 2024 Jani Hautakangas <jani@kodegood.com>
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above
+ *    copyright notice, this list of conditions and the following
+ *    disclaimer in the documentation and/or other materials provided
+ *    with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+ * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+ * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+ * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+ * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+ * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#pragma once
+
+#include "FloatPlane3D.h"
+#include "FloatPolygon.h"
+#include "FloatPolygon3D.h"
+#include "TextureMapperLayer.h"
+#include <wtf/Deque.h>
+#include <wtf/TZoneMalloc.h>
+
+namespace WebCore {
+
+class TextureMapperLayer;
+
+class TextureMapperLayer3DRenderingContext final {
+    WTF_MAKE_TZONE_ALLOCATED(TextureMapperLayerPreserves3DContext);
+public:
+    void paint(const Vector<TextureMapperLayer*>&, const std::function<void(TextureMapperLayer*, const FloatPolygon&)>&);
+
+private:
+    enum class PolygonPosition {
+        InFront,
+        Behind,
+        Coplanar,
+        Intersecting
+    };
+
+    struct TextureMapperLayerPolygon final {
+        FloatPolygon layerClipArea() const
+        {
+            unsigned numVertices = geometry.numberOfVertices();
+            Vector<FloatPoint> vertices;
+            vertices.reserveCapacity(numVertices);
+            auto toLayerTransform = layer->toSurfaceTransform().inverse();
+            if (isSplitted && toLayerTransform) {
+                for (unsigned i = 0; i < numVertices; i++) {
+                    auto v = toLayerTransform->mapPoint(geometry.vertexAt(i));
+                    vertices.append(FloatPoint(v.x(), v.y()));
+                }
+            }
+
+            return { WTFMove(vertices), WindRule::NonZero };
+        }
+
+        FloatPolygon3D geometry;
+        TextureMapperLayer* layer = { nullptr };
+        bool isSplitted = { false };
+    };
+
+    struct TextureMapperLayerNode final {
+        WTF_MAKE_STRUCT_FAST_ALLOCATED;
+
+        explicit TextureMapperLayerNode(TextureMapperLayerPolygon&& polygon)
+        {
+            polygons.append(WTFMove(polygon));
+        }
+
+        const TextureMapperLayerPolygon& firstPolygon() const  { return polygons[0]; }
+
+        Vector<TextureMapperLayerPolygon> polygons;
+        std::unique_ptr<TextureMapperLayerNode> frontNode;
+        std::unique_ptr<TextureMapperLayerNode> backNode;
+    };
+
+    void buildTree(TextureMapperLayerNode&, Deque<TextureMapperLayerPolygon>&);
+    void traverseTreeAndPaint(TextureMapperLayerNode&, const std::function<void(TextureMapperLayer*, const FloatPolygon&)>&);
+    static PolygonPosition classifyPolygon(const TextureMapperLayerPolygon&, const FloatPlane3D&);
+};
+
+} // namespace WebCore
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h b/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h
index 8079362b90..6d48c6cd20 100644
--- a/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperPlatformLayer.h
@@ -47,6 +47,8 @@ public:
     void setClient(TextureMapperPlatformLayer::Client* client) { m_client = client; }
 
     virtual bool isHolePunchBuffer() const { return false; }
+    virtual void notifyVideoPosition(const FloatRect&, const TransformationMatrix&) { };
+    virtual void paintTransparentRectangle(TextureMapper&, const FloatRect&, const TransformationMatrix&) { };
 
 protected:
     TextureMapperPlatformLayer::Client* client() { return m_client; }
diff --git a/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp b/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
index 01fb1d20b4..bb57e0978a 100644
--- a/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
+++ b/Source/WebCore/platform/graphics/transforms/TransformationMatrix.cpp
@@ -1925,6 +1925,13 @@ bool TransformationMatrix::isBackFaceVisible() const
     return zComponentOfTransformedNormal < 0;
 }
 
+TransformationMatrix TransformationMatrix::transpose() const
+{
+    TransformationMatrix transpose;
+    transposeMatrix4(m_matrix, transpose.m_matrix);
+    return transpose;
+}
+
 TextStream& operator<<(TextStream& ts, const TransformationMatrix& transform)
 {
     TextStream::IndentScope indentScope(ts);
diff --git a/Source/WebCore/platform/graphics/transforms/TransformationMatrix.h b/Source/WebCore/platform/graphics/transforms/TransformationMatrix.h
index 2267dd78b0..164d6e9d22 100644
--- a/Source/WebCore/platform/graphics/transforms/TransformationMatrix.h
+++ b/Source/WebCore/platform/graphics/transforms/TransformationMatrix.h
@@ -440,6 +440,8 @@ public:
     // face would be visible to a camera looking along the negative z-axis in the target space.
     bool isBackFaceVisible() const;
 
+    TransformationMatrix transpose() const;
+
 private:
     // multiply passed 2D point by matrix (assume z=0)
     void multVecMatrix(double x, double y, double& dstX, double& dstY) const;
diff --git a/Source/WebCore/platform/gstreamer/GStreamerElementHarness.cpp b/Source/WebCore/platform/gstreamer/GStreamerElementHarness.cpp
index 80cb0db673..064eb9fdc5 100644
--- a/Source/WebCore/platform/gstreamer/GStreamerElementHarness.cpp
+++ b/Source/WebCore/platform/gstreamer/GStreamerElementHarness.cpp
@@ -652,19 +652,18 @@ String MermaidBuilder::describeCaps(const GRefPtr<GstCaps>& caps)
             builder.append('(', WTF::span(serializedFeature.get()), ')');
         }
 
-        gst_structure_foreach(structure, [](GQuark field, const GValue* value, gpointer builderPointer) -> gboolean {
-            auto* builder = reinterpret_cast<StringBuilder*>(builderPointer);
-            builder->append(WTF::span(g_quark_to_string(field)), ": "_s);
+        gstStructureForeach(structure, [&](auto id, const auto value) -> bool {
+            builder.append(gstIdToString(id), ": "_s);
 
             GUniquePtr<char> serializedValue(gst_value_serialize(value));
             String valueString = WTF::span(serializedValue.get());
             if (valueString.length() > 25)
-                builder->append(valueString.substring(0, 25), WTF::span("…"));
+                builder.append(valueString.substring(0, 25), WTF::span("…"));
             else
-                builder->append(valueString);
-            builder->append("<br/>"_s);
+                builder.append(valueString);
+            builder.append("<br/>"_s);
             return TRUE;
-        }, &builder);
+        });
     }
     return builder.toString();
 }
diff --git a/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.cpp b/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.cpp
index 0ce99017fb..e15f465fa7 100644
--- a/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.cpp
+++ b/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.cpp
@@ -103,13 +103,44 @@ const String& MediaRecorderPrivateGStreamer::mimeType() const
 bool MediaRecorderPrivateGStreamer::isTypeSupported(const ContentType& contentType)
 {
     auto& scanner = GStreamerRegistryScanner::singleton();
-    return scanner.isContentTypeSupported(GStreamerRegistryScanner::Configuration::Encoding, contentType, { }) > MediaPlayerEnums::SupportsType::IsNotSupported;
+    bool isSupported = scanner.isContentTypeSupported(GStreamerRegistryScanner::Configuration::Encoding, contentType, { }, GStreamerRegistryScanner::CaseSensitiveCodecName::No) > MediaPlayerEnums::SupportsType::IsNotSupported;
+
+    // https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7670
+    if (isSupported && !contentType.containerType().endsWith("mp4"_s) && !webkitGstCheckVersion(1, 24, 9))
+        isSupported = false;
+    return isSupported;
 }
 
 MediaRecorderPrivateBackend::MediaRecorderPrivateBackend(MediaStreamPrivate& stream, const MediaRecorderPrivateOptions& options)
     : m_stream(stream)
     , m_options(options)
+    , m_mimeType(options.mimeType)
 {
+    auto selectedTracks = MediaRecorderPrivate::selectTracks(stream);
+    auto contentType = ContentType(options.mimeType);
+    auto containerType = contentType.containerType();
+    auto codecs = contentType.codecs();
+    if (containerType.endsWith("webm"_s)) {
+        containerType = selectedTracks.videoTrack ? "video/webm"_s : "audio/webm"_s;
+        if (codecs.isEmpty()) {
+            if (selectedTracks.videoTrack)
+                codecs.append("vp8"_s);
+            else
+                codecs.append("opus"_s);
+        }
+    } else {
+        containerType = selectedTracks.videoTrack ? "video/mp4"_s : "audio/mp4"_s;
+        if (codecs.isEmpty() && selectedTracks.audioTrack && !selectedTracks.videoTrack)
+            codecs.append("mp4a"_s);
+    }
+
+    StringBuilder builder;
+    builder.append(containerType);
+    if (!codecs.isEmpty()) {
+        builder.append("; codecs="_s);
+        builder.append(interleave(codecs, ","_s));
+    }
+    m_mimeType = builder.toString();
 }
 
 MediaRecorderPrivateBackend::~MediaRecorderPrivateBackend()
@@ -145,7 +176,7 @@ void MediaRecorderPrivateBackend::stopRecording(CompletionHandler<void()>&& comp
         completionHandler();
     });
 
-    if (!m_position) {
+    if (m_position.isInvalid()) {
         GST_DEBUG_OBJECT(m_transcoder.get(), "Transcoder has not started yet, no need for EOS event");
         m_eos = true;
         return;
@@ -166,16 +197,26 @@ void MediaRecorderPrivateBackend::stopRecording(CompletionHandler<void()>&& comp
 
 void MediaRecorderPrivateBackend::fetchData(MediaRecorderPrivate::FetchDataCallback&& completionHandler)
 {
-    callOnMainThread([this, weakThis = ThreadSafeWeakPtr { *this }, completionHandler = WTFMove(completionHandler)]() mutable {
+    callOnMainThread([this, weakThis = ThreadSafeWeakPtr { *this }, completionHandler = WTFMove(completionHandler), mimeType = this->mimeType()]() mutable {
         auto protectedThis = weakThis.get();
         if (!protectedThis) {
-            completionHandler(nullptr, mimeType(), 0);
+            completionHandler(nullptr, mimeType, 0);
             return;
         }
-        Locker locker { m_dataLock };
-        GST_DEBUG_OBJECT(m_transcoder.get(), "Transfering %zu encoded bytes", m_data.size());
-        auto buffer = m_data.take();
-        completionHandler(WTFMove(buffer), mimeType(), m_position);
+        double timeCode = 0;
+        RefPtr<FragmentedSharedBuffer> buffer;
+        {
+            Locker locker { m_dataLock };
+            GST_DEBUG_OBJECT(m_transcoder.get(), "Transfering %zu encoded bytes, mimeType: %s", m_data.size(), mimeType.ascii().data());
+            buffer = m_data.take();
+            timeCode = m_timeCode;
+        }
+        completionHandler(WTFMove(buffer), mimeType, timeCode);
+        {
+            Locker locker { m_dataLock };
+            if (m_position.isValid())
+                m_timeCode = m_position.toDouble();
+        }
     });
 }
 
@@ -206,15 +247,6 @@ void MediaRecorderPrivateBackend::resumeRecording(CompletionHandler<void()>&& co
     completionHandler();
 }
 
-const String& MediaRecorderPrivateBackend::mimeType() const
-{
-    static NeverDestroyed<const String> MP4AUDIOMIMETYPE(MAKE_STATIC_STRING_IMPL("audio/mp4"));
-    static NeverDestroyed<const String> MP4VIDEOMIMETYPE(MAKE_STATIC_STRING_IMPL("video/mp4"));
-
-    auto selectedTracks = MediaRecorderPrivate::selectTracks(m_stream);
-    return selectedTracks.videoTrack ? MP4VIDEOMIMETYPE : MP4AUDIOMIMETYPE;
-}
-
 GRefPtr<GstEncodingContainerProfile> MediaRecorderPrivateBackend::containerProfile()
 {
     auto selectedTracks = MediaRecorderPrivate::selectTracks(m_stream);
@@ -228,24 +260,47 @@ GRefPtr<GstEncodingContainerProfile> MediaRecorderPrivateBackend::containerProfi
     if (scanner.isContentTypeSupported(GStreamerRegistryScanner::Configuration::Encoding, contentType, { }) == MediaPlayerEnums::SupportsType::IsNotSupported)
         return nullptr;
 
-    const char* containerCapsDescription = "";
+    auto mp4Variant = isGStreamerPluginAvailable("fmp4") ? "iso-fragmented"_s : "iso"_s;
+    StringBuilder containerCapsDescriptionBuilder;
     auto containerType = contentType.containerType();
     if (containerType.endsWith("mp4"_s))
-        containerCapsDescription = "video/quicktime, variant=iso";
+        containerCapsDescriptionBuilder.append("video/quicktime, variant="_s, mp4Variant);
+    else if (containerType.endsWith("webm"_s))
+        containerCapsDescriptionBuilder.append(selectedTracks.videoTrack ? "video/webm"_s : "audio/webm"_s);
     else
-        containerCapsDescription = containerType.utf8().data();
+        containerCapsDescriptionBuilder.append(containerType);
 
-    auto containerCaps = adoptGRef(gst_caps_from_string(containerCapsDescription));
+    auto containerCapsDescription = containerCapsDescriptionBuilder.toString();
+    auto containerCaps = adoptGRef(gst_caps_from_string(containerCapsDescription.ascii().data()));
+    GST_DEBUG("Creating container profile for caps %" GST_PTR_FORMAT, containerCaps.get());
     auto profile = adoptGRef(gst_encoding_container_profile_new(nullptr, nullptr, containerCaps.get(), nullptr));
 
-    if (containerType.endsWith("mp4"_s))
-        gst_encoding_profile_set_element_properties(GST_ENCODING_PROFILE(profile.get()), gst_structure_from_string("element-properties-map, map={[mp4mux,fragment-duration=1000,fragment-mode=0,streamable=0,force-create-timecode-trak=1]}", nullptr));
+    if (containerType.endsWith("mp4"_s)) {
+        StringBuilder propertiesBuilder;
+        propertiesBuilder.append("element-properties-map, map={["_s);
+        if (mp4Variant == "iso-fragmented"_s)
+            propertiesBuilder.append("isofmp4mux,fragment-duration=1000000000,write-mfra=1"_s);
+        else {
+            GST_WARNING("isofmp4mux (shipped by gst-plugins-rs) is not available, falling back to mp4mux, duration on resulting file will be invalid");
+            propertiesBuilder.append("mp4mux,fragment-duration=1000,fragment-mode=0,streamable=0,force-create-timecode-trak=1"_s);
+        }
+        propertiesBuilder.append("]}"_s);
+        auto properties = propertiesBuilder.toString();
+        gst_encoding_profile_set_element_properties(GST_ENCODING_PROFILE(profile.get()), gst_structure_from_string(properties.ascii().data(), nullptr));
+    }
 
     auto codecs = contentType.codecs();
     if (selectedTracks.videoTrack) {
-        if (codecs.isEmpty())
-            m_videoCodec = "avc1.4d002a"_s;
-        else
+        if (codecs.isEmpty()) {
+            if (containerType.endsWith("mp4"_s))
+                m_videoCodec = "avc1.4d002a"_s;
+            else if (containerType.endsWith("webm"_s))
+                m_videoCodec = "vp8"_s;
+            else {
+                GST_ERROR("Unsupported container: %s", containerType.ascii().data());
+                return nullptr;
+            }
+        } else
             m_videoCodec = codecs.first();
         auto [_, videoCaps] = GStreamerCodecUtilities::capsFromCodecString(m_videoCodec);
         GST_DEBUG("Creating video encoding profile for caps %" GST_PTR_FORMAT, videoCaps.get());
@@ -274,6 +329,19 @@ GRefPtr<GstEncodingContainerProfile> MediaRecorderPrivateBackend::containerProfi
         auto audioCaps = adoptGRef(gst_caps_from_string(audioCapsName.utf8().data()));
         GST_DEBUG("Creating audio encoding profile for caps %" GST_PTR_FORMAT, audioCaps.get());
         m_audioEncodingProfile = adoptGRef(GST_ENCODING_PROFILE(gst_encoding_audio_profile_new(audioCaps.get(), nullptr, nullptr, 1)));
+
+        auto& settings = selectedTracks.audioTrack->settings();
+        if (settings.supportsSampleRate()) {
+            // opusenc doesn't support the default 44.1 kHz sample rate, so fallback to 48 kHz. This
+            // appears to be an unexpected behaviour from the encoding profile "restriction" API.
+            // https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/4054
+            auto sampleRate = audioCapsName == "audio/x-opus"_s ? 48000 : settings.sampleRate();
+
+            auto restrictionCaps = adoptGRef(gst_caps_new_simple("audio/x-raw", "rate", G_TYPE_INT, sampleRate, nullptr));
+            GST_DEBUG("Setting audio restriction caps to %" GST_PTR_FORMAT, restrictionCaps.get());
+            gst_encoding_profile_set_restriction(m_audioEncodingProfile.get(), restrictionCaps.leakRef());
+        }
+
         gst_encoding_container_profile_add_profile(profile.get(), m_audioEncodingProfile.get());
     }
 
@@ -324,6 +392,23 @@ void MediaRecorderPrivateBackend::setSink(GstElement* element)
     m_sink = element;
 }
 
+void MediaRecorderPrivateBackend::configureAudioEncoder(GstElement* element)
+{
+    if (!gstObjectHasProperty(element, "bitrate")) {
+        GST_WARNING_OBJECT(m_pipeline.get(), "Audio encoder %" GST_PTR_FORMAT " has no bitrate property, skipping configuration", element);
+        return;
+    }
+
+    int bitRate = 0;
+    if (m_options.audioBitsPerSecond)
+        bitRate = *m_options.audioBitsPerSecond;
+    else if (m_options.bitsPerSecond)
+        bitRate = *m_options.bitsPerSecond;
+
+    if (bitRate)
+        g_object_set(element, "bitrate", bitRate, nullptr);
+}
+
 void MediaRecorderPrivateBackend::configureVideoEncoder(GstElement* element)
 {
     videoEncoderSetCodec(WEBKIT_VIDEO_ENCODER(element), m_videoCodec);
@@ -349,6 +434,12 @@ bool MediaRecorderPrivateBackend::preparePipeline()
     m_transcoder = adoptGRef(gst_transcoder_new_full("mediastream://", "appsink://", GST_ENCODING_PROFILE(profile.get())));
     gst_transcoder_set_avoid_reencoding(m_transcoder.get(), true);
     m_pipeline = gst_transcoder_get_pipeline(m_transcoder.get());
+
+    auto clock = adoptGRef(gst_system_clock_obtain());
+    gst_pipeline_use_clock(GST_PIPELINE(m_pipeline.get()), clock.get());
+    gst_element_set_base_time(m_pipeline.get(), 0);
+    gst_element_set_start_time(m_pipeline.get(), GST_CLOCK_TIME_NONE);
+
     registerActivePipeline(m_pipeline);
 
     g_signal_connect_swapped(m_pipeline.get(), "source-setup", G_CALLBACK(+[](MediaRecorderPrivateBackend* recorder, GstElement* sourceElement) {
@@ -361,10 +452,15 @@ bool MediaRecorderPrivateBackend::preparePipeline()
             return;
         }
 
-        if (!GST_IS_APP_SINK(element))
+        if (GST_IS_APP_SINK(element)) {
+            recorder->setSink(element);
             return;
+        }
 
-        recorder->setSink(element);
+        String elementClass = WTF::span(gst_element_get_metadata(element, GST_ELEMENT_METADATA_KLASS));
+        auto classifiers = elementClass.split('/');
+        if (classifiers.contains("Audio"_s) && classifiers.contains("Codec"_s) && classifiers.contains("Encoder"_s))
+            recorder->configureAudioEncoder(element);
     }), this);
 
     m_signalAdapter = adoptGRef(gst_transcoder_get_sync_signal_adapter(m_transcoder.get()));
@@ -393,6 +489,12 @@ void MediaRecorderPrivateBackend::processSample(GRefPtr<GstSample>&& sample)
     m_data.append(std::span<const uint8_t> { buffer.data(), buffer.size() });
 }
 
+void MediaRecorderPrivateBackend::notifyPosition(GstClockTime position)
+{
+    Locker locker { m_dataLock };
+    m_position = fromGstClockTime(position);
+}
+
 void MediaRecorderPrivateBackend::notifyEOS()
 {
     GST_DEBUG("EOS received");
diff --git a/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.h b/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.h
index 30562ff9c8..51bfe4d61b 100644
--- a/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.h
+++ b/Source/WebCore/platform/mediarecorder/MediaRecorderPrivateGStreamer.h
@@ -54,7 +54,7 @@ public:
     void stopRecording(CompletionHandler<void()>&&);
     void pauseRecording(CompletionHandler<void()>&&);
     void resumeRecording(CompletionHandler<void()>&&);
-    const String& mimeType() const;
+    const String& mimeType() const { return m_mimeType; }
 
     void setSelectTracksCallback(SelectTracksCallback&& callback) { m_selectTracksCallback = WTFMove(callback); }
 
@@ -63,12 +63,13 @@ private:
 
     void setSource(GstElement*);
     void setSink(GstElement*);
+    void configureAudioEncoder(GstElement*);
     void configureVideoEncoder(GstElement*);
 
     GRefPtr<GstEncodingContainerProfile> containerProfile();
     MediaStreamPrivate& stream() const { return m_stream; }
     void processSample(GRefPtr<GstSample>&&);
-    void notifyPosition(GstClockTime position) { m_position = GST_TIME_AS_SECONDS(position); }
+    void notifyPosition(GstClockTime);
     void notifyEOS();
 
     GRefPtr<GstEncodingProfile> m_audioEncodingProfile;
@@ -82,13 +83,15 @@ private:
     Condition m_eosCondition;
     Lock m_eosLock;
     bool m_eos WTF_GUARDED_BY_LOCK(m_eosLock);
-    double m_position { 0 };
 
     Lock m_dataLock;
     SharedBufferBuilder m_data WTF_GUARDED_BY_LOCK(m_dataLock);
+    MediaTime m_position WTF_GUARDED_BY_LOCK(m_dataLock) { MediaTime::invalidTime() };
+    double m_timeCode WTF_GUARDED_BY_LOCK(m_dataLock) { 0 };
 
     MediaStreamPrivate& m_stream;
     const MediaRecorderPrivateOptions& m_options;
+    String m_mimeType;
     std::optional<SelectTracksCallback> m_selectTracksCallback;
 };
 
diff --git a/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp b/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
index aec08e6519..f894fef450 100644
--- a/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
+++ b/Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
@@ -1484,6 +1484,13 @@ auto RealtimeMediaSource::getPhotoSettings() -> Ref<PhotoSettingsNativePromise>
     return PhotoSettingsNativePromise::createAndReject("Not supported"_s);
 }
 
+#if USE(GSTREAMER)
+std::pair<GstClockTime, GstClockTime> RealtimeMediaSource::queryCaptureLatency() const
+{
+    return { GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE };
+}
+#endif
+
 #if !RELEASE_LOG_DISABLED
 void RealtimeMediaSource::setLogger(const Logger& newLogger, const void* newLogIdentifier)
 {
diff --git a/Source/WebCore/platform/mediastream/RealtimeMediaSource.h b/Source/WebCore/platform/mediastream/RealtimeMediaSource.h
index 1b27c8ad67..d5fbb8b487 100644
--- a/Source/WebCore/platform/mediastream/RealtimeMediaSource.h
+++ b/Source/WebCore/platform/mediastream/RealtimeMediaSource.h
@@ -303,6 +303,10 @@ public:
 
     virtual bool isPowerEfficient() const { return false; }
 
+#if USE(GSTREAMER)
+    virtual std::pair<GstClockTime, GstClockTime> queryCaptureLatency() const;
+#endif
+
 protected:
     RealtimeMediaSource(const CaptureDevice&, MediaDeviceHashSalts&& hashSalts = { }, PageIdentifier = { });
 
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp
index 8320b4215c..b3f464bfd8 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp
@@ -98,7 +98,7 @@ GStreamerAudioCaptureSource::GStreamerAudioCaptureSource(GStreamerCaptureDevice&
     });
 
     auto& singleton = GStreamerAudioCaptureDeviceManager::singleton();
-    singleton.registerCapturer(m_capturer);
+    singleton.registerCapturer(m_capturer.copyRef());
 }
 
 GStreamerAudioCaptureSource::~GStreamerAudioCaptureSource()
@@ -113,6 +113,14 @@ void GStreamerAudioCaptureSource::captureEnded()
     captureFailed();
 }
 
+std::pair<GstClockTime, GstClockTime> GStreamerAudioCaptureSource::queryCaptureLatency() const
+{
+    if (!m_capturer)
+        return { GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE };
+
+    return m_capturer->queryLatency();
+}
+
 void GStreamerAudioCaptureSource::startProducingData()
 {
     m_capturer->setupPipeline();
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h b/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h
index a0b1cbff75..64ef24a0d1 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h
@@ -41,6 +41,8 @@ public:
     GstElement* pipeline() { return m_capturer->pipeline(); }
     GStreamerCapturer* capturer() { return m_capturer.get(); }
 
+    std::pair<GstClockTime, GstClockTime> queryCaptureLatency() const final;
+
     void ref() const final { ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr<GStreamerAudioCaptureSource>::ref(); }
     void deref() const final { ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr<GStreamerAudioCaptureSource>::deref(); }
     ThreadSafeWeakPtrControlBlock& controlBlock() const final { return ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr<GStreamerAudioCaptureSource>::controlBlock(); }
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioRTPPacketizer.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioRTPPacketizer.cpp
new file mode 100644
index 0000000000..8e22e5bb38
--- /dev/null
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioRTPPacketizer.cpp
@@ -0,0 +1,165 @@
+/*
+ *  Copyright (C) 2024 Igalia S.L. All rights reserved.
+ *  Copyright (C) 2024 Metrological Group B.V.
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser 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
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#include "config.h"
+#include "GStreamerAudioRTPPacketizer.h"
+
+#if USE(GSTREAMER_WEBRTC)
+
+#include "GStreamerCommon.h"
+#include "GStreamerRegistryScanner.h"
+#include <gst/rtp/rtp.h>
+#include <wtf/text/MakeString.h>
+#include <wtf/text/StringToIntegerConversion.h>
+
+namespace WebCore {
+
+GST_DEBUG_CATEGORY(webkit_webrtc_audio_rtp_packetizer_debug);
+#define GST_CAT_DEFAULT webkit_webrtc_audio_rtp_packetizer_debug
+
+RefPtr<GStreamerAudioRTPPacketizer> GStreamerAudioRTPPacketizer::create(RefPtr<UniqueSSRCGenerator> ssrcGenerator, const GstStructure* codecParameters, GUniquePtr<GstStructure>&& encodingParameters)
+{
+    static std::once_flag debugRegisteredFlag;
+    std::call_once(debugRegisteredFlag, [] {
+        GST_DEBUG_CATEGORY_INIT(webkit_webrtc_audio_rtp_packetizer_debug, "webkitwebrtcrtppacketizeraudio", 0, "WebKit WebRTC Audio RTP Packetizer");
+    });
+
+    GST_DEBUG("Creating packetizer for codec: %" GST_PTR_FORMAT " and encoding parameters %" GST_PTR_FORMAT, codecParameters, encodingParameters.get());
+    String encoding;
+    if (auto encodingName = gstStructureGetString(codecParameters, "encoding-name"_s))
+        encoding = encodingName.convertToASCIILowercase();
+    else {
+        GST_ERROR("encoding-name not found");
+        return nullptr;
+    }
+
+    auto& registryScanner = GStreamerRegistryScanner::singleton();
+    auto lookupResult = registryScanner.isRtpPacketizerSupported(encoding);
+    if (!lookupResult) {
+        GST_ERROR("RTP payloader not found for encoding %s", encoding.ascii().data());
+        return nullptr;
+    }
+    GRefPtr<GstElement> payloader = gst_element_factory_create(lookupResult.factory.get(), nullptr);
+    GST_DEBUG("Using %" GST_PTR_FORMAT " for %s RTP packetizing", payloader.get(), encoding.ascii().data());
+
+    auto inputCaps = adoptGRef(gst_caps_new_any());
+    GUniquePtr<GstStructure> structure(gst_structure_copy(codecParameters));
+
+    auto ssrc = ssrcGenerator->generateSSRC();
+    if (ssrc != std::numeric_limits<uint32_t>::max())
+        gst_structure_set(structure.get(), "ssrc", G_TYPE_UINT, ssrc, nullptr);
+
+    GRefPtr<GstElement> encoder;
+    if (encoding == "opus"_s) {
+        encoder = makeGStreamerElement("opusenc", nullptr);
+        if (!encoder)
+            return nullptr;
+
+        gst_structure_set(structure.get(), "encoding-name", G_TYPE_STRING, "OPUS", nullptr);
+
+        // FIXME: Enable dtx too?
+        gst_util_set_object_arg(G_OBJECT(encoder.get()), "audio-type", "voice");
+        g_object_set(encoder.get(), "perfect-timestamp", TRUE, nullptr);
+
+        if (auto useInbandFec = gstStructureGetString(structure.get(), "useinbandfec"_s)) {
+            if (useInbandFec == "1"_s)
+                g_object_set(encoder.get(), "inband-fec", TRUE, nullptr);
+            gst_structure_remove_field(structure.get(), "useinbandfec");
+        }
+
+        if (auto isStereo = gstStructureGetString(structure.get(), "stereo"_s)) {
+            if (isStereo == "1"_s)
+                inputCaps = adoptGRef(gst_caps_new_simple("audio/x-raw", "channels", G_TYPE_INT, 2, nullptr));
+            gst_structure_remove_field(structure.get(), "stereo");
+        }
+
+        if (gst_caps_is_any(inputCaps.get())) {
+            if (auto encodingParameters = gstStructureGetString(structure.get(), "encoding-params"_s)) {
+                if (auto channels = parseIntegerAllowingTrailingJunk<int>(encodingParameters))
+                    inputCaps = adoptGRef(gst_caps_new_simple("audio/x-raw", "channels", G_TYPE_INT, *channels, nullptr));
+            }
+        }
+    } else if (encoding == "g722"_s)
+        encoder = makeGStreamerElement("avenc_g722", nullptr);
+    else if (encoding == "pcma"_s)
+        encoder = makeGStreamerElement("alawenc", nullptr);
+    else if (encoding == "pcmu"_s)
+        encoder = makeGStreamerElement("mulawenc", nullptr);
+    else {
+        GST_ERROR("Unsupported outgoing audio encoding: %s", encoding.ascii().data());
+        return nullptr;
+    }
+
+    if (!encoder) {
+        GST_ERROR("Encoder not found for encoding %s", encoding.ascii().data());
+        return nullptr;
+    }
+
+    // Align MTU with libwebrtc implementation, also helping to reduce packet fragmentation.
+    g_object_set(payloader.get(), "auto-header-extension", TRUE, "mtu", 1200, nullptr);
+
+    if (auto minPTime = gstStructureGetString(structure.get(), "minptime"_s)) {
+        if (auto value = parseIntegerAllowingTrailingJunk<int64_t>(minPTime)) {
+            if (gstObjectHasProperty(payloader.get(), "min-ptime"))
+                g_object_set(payloader.get(), "min-ptime", *value * GST_MSECOND, nullptr);
+            else
+                GST_WARNING_OBJECT(payloader.get(), "min-ptime property not supported");
+        }
+        gst_structure_remove_field(structure.get(), "minptime");
+    }
+
+    auto payloadType = gstStructureGet<int>(codecParameters, "payload"_s);
+    if (payloadType)
+        g_object_set(payloader.get(), "pt", *payloadType, nullptr);
+    else {
+        payloadType = gstStructureGet<int>(encodingParameters.get(), "payload"_s);
+        if (payloadType)
+            g_object_set(payloader.get(), "pt", *payloadType, nullptr);
+    }
+
+    auto rtpCaps = adoptGRef(gst_caps_new_empty());
+
+    // When not present in caps, the vad support of the ssrc-audio-level extension should be
+    // enabled. In order to prevent caps negotiation issues with downstream, explicitely set it.
+    setSsrcAudioLevelVadOn(structure.get());
+
+    gst_caps_append_structure(rtpCaps.get(), structure.release());
+    return adoptRef(*new GStreamerAudioRTPPacketizer(WTFMove(inputCaps), WTFMove(encoder), WTFMove(payloader), WTFMove(encodingParameters), WTFMove(rtpCaps)));
+}
+
+GStreamerAudioRTPPacketizer::GStreamerAudioRTPPacketizer(GRefPtr<GstCaps>&& inputCaps, GRefPtr<GstElement>&& encoder, GRefPtr<GstElement>&& payloader, GUniquePtr<GstStructure>&& encodingParameters, GRefPtr<GstCaps>&& rtpCaps)
+    : GStreamerRTPPacketizer(WTFMove(encoder), WTFMove(payloader), WTFMove(encodingParameters))
+{
+    g_object_set(m_capsFilter.get(), "caps", rtpCaps.get(), nullptr);
+    GST_DEBUG_OBJECT(m_bin.get(), "RTP caps: %" GST_PTR_FORMAT, rtpCaps.get());
+
+    m_audioconvert = makeGStreamerElement("audioconvert", nullptr);
+    m_audioresample = makeGStreamerElement("audioresample", nullptr);
+    m_inputCapsFilter = gst_element_factory_make("capsfilter", nullptr);
+    g_object_set(m_inputCapsFilter.get(), "caps", inputCaps.get(), nullptr);
+
+    gst_bin_add_many(GST_BIN_CAST(m_bin.get()), m_audioconvert.get(), m_audioresample.get(), m_inputCapsFilter.get(), nullptr);
+    gst_element_link_many(m_inputQueue.get(), m_audioconvert.get(), m_audioresample.get(), m_inputCapsFilter.get(), m_encoder.get(), m_payloader.get(), m_capsFilter.get(), m_outputQueue.get(), m_valve.get(), nullptr);
+}
+
+#undef GST_CAT_DEFAULT
+
+} // namespace WebCore
+
+#endif // USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioRTPPacketizer.h b/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioRTPPacketizer.h
new file mode 100644
index 0000000000..55255fa8a8
--- /dev/null
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioRTPPacketizer.h
@@ -0,0 +1,44 @@
+/*
+ *  Copyright (C) 2024 Igalia S.L. All rights reserved.
+ *  Copyright (C) 2024 Metrological Group B.V.
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser 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
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#pragma once
+
+#if USE(GSTREAMER_WEBRTC)
+
+#include "GStreamerRTPPacketizer.h"
+#include "GStreamerWebRTCUtils.h"
+
+namespace WebCore {
+
+class GStreamerAudioRTPPacketizer final : public GStreamerRTPPacketizer {
+public:
+    static RefPtr<GStreamerAudioRTPPacketizer> create(RefPtr<UniqueSSRCGenerator>, const GstStructure* codecParameters, GUniquePtr<GstStructure>&& encodingParameters);
+
+private:
+    explicit GStreamerAudioRTPPacketizer(GRefPtr<GstCaps>&& inputCaps, GRefPtr<GstElement>&& encoder, GRefPtr<GstElement>&& payloader, GUniquePtr<GstStructure>&& encodingParameters, GRefPtr<GstCaps>&& rtpCaps);
+
+    GRefPtr<GstElement> m_audioconvert;
+    GRefPtr<GstElement> m_audioresample;
+    GRefPtr<GstElement> m_inputCapsFilter;
+    GRefPtr<GstCaps> m_inputCaps;
+};
+
+} // namespace WebCore
+
+#endif // USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp
index 8ddad79f44..247f1d9a24 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.cpp
@@ -136,10 +136,10 @@ void GStreamerCaptureDeviceManager::deviceWillBeRemoved(const String& persistent
     stopCapturing(persistentId);
 }
 
-void GStreamerCaptureDeviceManager::registerCapturer(const RefPtr<GStreamerCapturer>& capturer)
+void GStreamerCaptureDeviceManager::registerCapturer(RefPtr<GStreamerCapturer>&& capturer)
 {
     GST_DEBUG("Registering capturer for device %s", capturer->devicePersistentId().ascii().data());
-    m_capturers.append(capturer);
+    m_capturers.append(WTFMove(capturer));
 }
 
 void GStreamerCaptureDeviceManager::unregisterCapturer(const GStreamerCapturer& capturer)
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.h b/Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.h
index e9f3d2ac9f..1a72faca48 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.h
@@ -53,7 +53,7 @@ public:
     void devicesChanged() final;
     void deviceWillBeRemoved(const String& persistentId) final;
 
-    void registerCapturer(const RefPtr<GStreamerCapturer>&);
+    void registerCapturer(RefPtr<GStreamerCapturer>&&);
     void unregisterCapturer(const GStreamerCapturer&);
     void stopCapturing(const String& persistentId);
 
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp
index 4328d83189..ec1d4509f5 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp
@@ -189,6 +189,11 @@ void GStreamerCapturer::setupPipeline()
     }
 
     m_pipeline = makeElement("pipeline");
+    auto clock = adoptGRef(gst_system_clock_obtain());
+    gst_pipeline_use_clock(GST_PIPELINE(m_pipeline.get()), clock.get());
+    gst_element_set_base_time(m_pipeline.get(), 0);
+    gst_element_set_start_time(m_pipeline.get(), GST_CLOCK_TIME_NONE);
+
     registerActivePipeline(m_pipeline);
 
     GRefPtr<GstElement> source = createSource();
@@ -236,6 +241,26 @@ void GStreamerCapturer::stop()
     tearDown(false);
 }
 
+bool GStreamerCapturer::isStopped() const
+{
+    if (!m_pipeline)
+        return true;
+
+    return GST_STATE(m_pipeline.get()) == GST_STATE_NULL;
+}
+
+std::pair<GstClockTime, GstClockTime> GStreamerCapturer::queryLatency()
+{
+    if (!m_sink)
+        return { GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE };
+
+    GstClockTime minLatency, maxLatency;
+    if (gst_base_sink_query_latency(GST_BASE_SINK_CAST(m_sink.get()), nullptr, nullptr, &minLatency, &maxLatency))
+        return { minLatency, maxLatency };
+
+    return { GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE };
+}
+
 bool GStreamerCapturer::isInterrupted() const
 {
     gboolean isInterrupted;
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.h b/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.h
index 601a74de35..416618661e 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.h
@@ -64,8 +64,11 @@ public:
     void setupPipeline();
     void start();
     void stop();
+    bool isStopped() const;
     WARN_UNUSED_RETURN GRefPtr<GstCaps> caps();
 
+    std::pair<GstClockTime, GstClockTime> queryLatency();
+
     GstElement* makeElement(const char* factoryName);
     virtual GstElement* createSource();
     GstElement* source() { return m_src.get();  }
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerIncomingTrackProcessor.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerIncomingTrackProcessor.cpp
index 1c32813c93..4e45305eb8 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerIncomingTrackProcessor.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerIncomingTrackProcessor.cpp
@@ -66,6 +66,7 @@ void GStreamerIncomingTrackProcessor::configure(ThreadSafeWeakPtr<GStreamerMedia
 
     auto structure = gst_caps_get_structure(m_data.caps.get(), 0);
     if (auto ssrc = gstStructureGet<unsigned>(structure, "ssrc"_s)) {
+        m_data.ssrc = *ssrc;
         auto msIdAttributeName = makeString("ssrc-"_s, *ssrc, "-msid"_s);
         if (auto msIdAttribute = gstStructureGetString(structure, msIdAttributeName)) {
             auto components = msIdAttribute.toStringWithoutCopying().split(' ');
@@ -73,6 +74,15 @@ void GStreamerIncomingTrackProcessor::configure(ThreadSafeWeakPtr<GStreamerMedia
                 m_sdpMsIdAndTrackId = { components[0], components[1] };
         }
     }
+    if (auto msIdAttribute = gstStructureGetString(structure, "a-msid"_s)) {
+        if (msIdAttribute.startsWith(' '))
+            m_sdpMsIdAndTrackId = { emptyString(), msIdAttribute.substring(1).toString() };
+        else {
+            auto components = msIdAttribute.toStringWithoutCopying().split(' ');
+            if (components.size() == 2)
+                m_sdpMsIdAndTrackId = { components[0], components[1] };
+        }
+    }
 
     if (m_sdpMsIdAndTrackId.second.isEmpty())
         retrieveMediaStreamAndTrackIdFromSDP();
@@ -104,7 +114,7 @@ void GStreamerIncomingTrackProcessor::configure(ThreadSafeWeakPtr<GStreamerMedia
             return GST_PAD_PROBE_OK;
 
         gst_query_add_allocation_meta(query, GST_VIDEO_META_API_TYPE, nullptr);
-        return GST_PAD_PROBE_REMOVE;
+        return GST_PAD_PROBE_HANDLED;
     }), nullptr, nullptr);
 }
 
@@ -310,7 +320,7 @@ void GStreamerIncomingTrackProcessor::trackReady()
         return;
 
     m_isReady = true;
-    GST_DEBUG_OBJECT(m_bin.get(), "Track %s on pad %" GST_PTR_FORMAT " is ready", m_data.mediaStreamId.utf8().data(), m_pad.get());
+    GST_DEBUG_OBJECT(m_bin.get(), "MediaStream %s track %s on pad %" GST_PTR_FORMAT " is ready", m_data.mediaStreamId.utf8().data(), m_data.trackId.utf8().data(), m_pad.get());
     callOnMainThread([endPoint = Ref { *endPoint }, this] {
         if (endPoint->isStopped())
             return;
@@ -326,17 +336,15 @@ const GstStructure* GStreamerIncomingTrackProcessor::stats()
     if (!m_isDecoding)
         return nullptr;
 
-    m_stats.reset(gst_structure_new_empty("incoming-video-stats"));
     GUniqueOutPtr<GstStructure> stats;
     g_object_get(m_sink.get(), "stats", &stats.outPtr(), nullptr);
 
-    auto droppedVideoFrames = gstStructureGet<uint64_t>(stats.get(), "dropped"_s);
-    if (!droppedVideoFrames)
-        return m_stats.get();
+    auto droppedVideoFrames = gstStructureGet<uint64_t>(stats.get(), "dropped"_s).value_or(0);
+    m_stats.reset(gst_structure_new("incoming-video-stats", "frames-decoded", G_TYPE_UINT64, m_decodedVideoFrames, "frames-dropped", G_TYPE_UINT64, droppedVideoFrames, nullptr));
 
-    gst_structure_set(m_stats.get(), "frames-decoded", G_TYPE_UINT64, m_decodedVideoFrames, "frames-dropped", G_TYPE_UINT64, *droppedVideoFrames, nullptr);
     if (!m_videoSize.isZero())
         gst_structure_set(m_stats.get(), "frame-width", G_TYPE_UINT, static_cast<unsigned>(m_videoSize.width()), "frame-height", G_TYPE_UINT, static_cast<unsigned>(m_videoSize.height()), nullptr);
+
     return m_stats.get();
 }
 
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp
index e3c1f69c53..75e911d35a 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp
@@ -165,7 +165,7 @@ public:
         m_src = makeGStreamerElement("appsrc", elementName.ascii().data());
 
         g_object_set(m_src.get(), "is-live", TRUE, "format", GST_FORMAT_TIME, "emit-signals", TRUE, "min-percent", 100,
-            "do-timestamp", isCaptureTrack, nullptr);
+            "do-timestamp", isCaptureTrack, "handle-segment-change", TRUE, nullptr);
         g_signal_connect(m_src.get(), "enough-data", G_CALLBACK(+[](GstElement*, InternalSource* data) {
             data->m_enoughData = true;
         }), this);
@@ -175,20 +175,39 @@ public:
 
         createGstStream();
 
-#if GST_CHECK_VERSION(1, 22, 0)
+        // RealtimeMediaSource::source() is usable only from the main thread, so keep track of
+        // capture sources separately.
+        if (m_track->source().isCaptureSource())
+            m_trackSource = &(m_track->source());
+
         auto pad = adoptGRef(gst_element_get_static_pad(m_src.get(), "src"));
-        gst_pad_add_probe(pad.get(), GST_PAD_PROBE_TYPE_QUERY_UPSTREAM, reinterpret_cast<GstPadProbeCallback>(+[](GstPad*, GstPadProbeInfo* info, InternalSource*) -> GstPadProbeReturn {
-            auto* query = GST_PAD_PROBE_INFO_QUERY(info);
+        gst_pad_add_probe(pad.get(), GST_PAD_PROBE_TYPE_QUERY_UPSTREAM, reinterpret_cast<GstPadProbeCallback>(+[](GstPad*, GstPadProbeInfo* info, gpointer userData) -> GstPadProbeReturn {
+            auto self = reinterpret_cast<InternalSource*>(userData);
+            auto query = GST_PAD_PROBE_INFO_QUERY(info);
             switch (GST_QUERY_TYPE(query)) {
+#if GST_CHECK_VERSION(1, 22, 0)
             case GST_QUERY_SELECTABLE:
                 gst_query_set_selectable(query, TRUE);
                 return GST_PAD_PROBE_HANDLED;
+#endif
+            case GST_QUERY_LATENCY: {
+                std::pair<GstClockTime, GstClockTime> latency { GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE };
+                if (self->m_trackSource)
+                    latency = self->m_trackSource->queryCaptureLatency();
+
+                auto [minLatency, maxLatency] = latency;
+                GST_DEBUG_OBJECT(self->m_src.get(), "Latency from capture source is min: %" GST_TIME_FORMAT " max: %" GST_TIME_FORMAT, GST_TIME_ARGS(minLatency), GST_TIME_ARGS(maxLatency));
+                if (GST_CLOCK_TIME_IS_VALID(minLatency) && GST_CLOCK_TIME_IS_VALID(maxLatency)) {
+                    gst_query_set_latency(query, TRUE, minLatency, maxLatency);
+                    return GST_PAD_PROBE_HANDLED;
+                }
+                break;
+            }
             default:
                 break;
             }
             return GST_PAD_PROBE_OK;
-        }), nullptr, nullptr);
-#endif
+        }), this, nullptr);
     }
 
     void replaceTrack(RefPtr<MediaStreamTrackPrivate>&& newTrack)
@@ -216,7 +235,7 @@ public:
             }
             clientId = source.registerClient(WTFMove(client));
         } else {
-            RELEASE_ASSERT((trackSource.isIncomingVideoSource()));
+            RELEASE_ASSERT(trackSource.isIncomingVideoSource());
             auto& source = static_cast<RealtimeIncomingVideoSourceGStreamer&>(trackSource);
             if (source.hasClient(client)) {
                 GST_DEBUG_OBJECT(m_src.get(), "Incoming video track already registered.");
@@ -276,6 +295,9 @@ public:
         if (m_src)
             g_signal_handlers_disconnect_matched(m_src.get(), G_SIGNAL_MATCH_DATA, 0, 0, nullptr, nullptr, this);
 
+        if (m_stream)
+            g_signal_handlers_disconnect_matched(m_stream.get(), G_SIGNAL_MATCH_DATA, 0, 0, nullptr, nullptr, this);
+
 #if USE(GSTREAMER_WEBRTC)
         if (!m_webrtcSourceClientId)
             return;
@@ -372,6 +394,11 @@ public:
             m_firstBufferPts = GST_BUFFER_PTS(buffer);
             auto pad = adoptGRef(gst_element_get_static_pad(m_src.get(), "src"));
             gst_pad_set_offset(pad.get(), -m_firstBufferPts);
+
+            if (!m_hasPushedInitialTags) {
+                gst_pad_push_event(pad.get(), gst_event_new_tag(gst_stream_get_tags(m_stream.get())));
+                m_hasPushedInitialTags = true;
+            }
         }
 
         if (m_isVideoTrack && drop)
@@ -480,9 +507,10 @@ public:
             m_videoMirrored = videoMirrored;
 
             auto orientation = makeString(videoMirrored ? "flip-"_s : ""_s, "rotate-"_s, m_videoRotation);
-            GST_DEBUG_OBJECT(m_src.get(), "Pushing orientation tag: %s", orientation.utf8().data());
-            auto pad = adoptGRef(gst_element_get_static_pad(m_src.get(), "src"));
-            gst_pad_push_event(pad.get(), gst_event_new_tag(gst_tag_list_new(GST_TAG_IMAGE_ORIENTATION, orientation.utf8().data(), nullptr)));
+            GST_DEBUG_OBJECT(m_src.get(), "Setting orientation tag: %s", orientation.utf8().data());
+            auto tags = adoptGRef(gst_tag_list_make_writable(gst_stream_get_tags(m_stream.get())));
+            gst_tag_list_add(tags.get(), GST_TAG_MERGE_REPLACE, GST_TAG_IMAGE_ORIENTATION, orientation.utf8().data(), nullptr);
+            gst_stream_set_tags(m_stream.get(), tags.get());
         }
 
         if (!m_configuredSize.isEmpty() && m_lastKnownSize != m_configuredSize) {
@@ -532,12 +560,17 @@ public:
 
     GUniquePtr<GstStructure> queryAdditionalStats()
     {
+        GUniquePtr<GstStructure> stats;
         auto query = adoptGRef(gst_query_new_custom(GST_QUERY_CUSTOM, gst_structure_new_empty("webkit-video-decoder-stats")));
         auto pad = adoptGRef(gst_element_get_static_pad(m_src.get(), "src"));
         if (gst_pad_peer_query(pad.get(), query.get()))
-            return GUniquePtr<GstStructure>(gst_structure_copy(gst_query_get_structure(query.get())));
+            stats.reset(gst_structure_copy(gst_query_get_structure(query.get())));
 
-        return nullptr;
+        if (!stats)
+            stats.reset(gst_structure_new_empty("webkit-video-decoder-stats"));
+
+        gst_structure_set(stats.get(), "track-identifier", G_TYPE_STRING, m_track->id().utf8().data(), nullptr);
+        return stats;
     }
 
     bool isEnded() const { return m_isEnded; }
@@ -621,12 +654,24 @@ private:
 
     void createGstStream()
     {
+        if (m_src)
+            g_signal_handlers_disconnect_matched(m_src.get(), G_SIGNAL_MATCH_DATA, 0, 0, nullptr, nullptr, this);
+
         m_stream = adoptGRef(webkitMediaStreamNew(track()));
+
+        g_signal_connect_swapped(m_stream.get(), "notify::tags", G_CALLBACK(+[](InternalSource* self) {
+            auto pad = adoptGRef(gst_element_get_static_pad(self->m_src.get(), "src"));
+            GST_DEBUG_OBJECT(self->m_src.get(), "Pushing tags for %" GST_PTR_FORMAT, self->m_stream.get());
+            gst_pad_push_event(pad.get(), gst_event_new_tag(gst_stream_get_tags(self->m_stream.get())));
+            self->m_hasPushedInitialTags = true;
+        }), this);
     }
 
     GstElement* m_parent { nullptr };
     RefPtr<MediaStreamTrackPrivate> m_track;
+    RefPtr<RealtimeMediaSource> m_trackSource;
     GRefPtr<GstElement> m_src;
+    bool m_hasPushedInitialTags { false };
     GstClockTime m_firstBufferPts { GST_CLOCK_TIME_NONE };
     bool m_enoughData { false };
     bool m_needsDiscont { false };
@@ -992,7 +1037,6 @@ static void webkitMediaStreamSrcEnsureStreamCollectionPosted(WebKitMediaStreamSr
 
 struct ProbeData {
     GRefPtr<GstElement> element;
-    GRefPtr<GstTagList> tags;
     RealtimeMediaSource::Type sourceType;
     GRefPtr<GstEvent> streamStartEvent;
     GRefPtr<GstStreamCollection> collection;
@@ -1020,7 +1064,6 @@ static GstPadProbeReturn webkitMediaStreamSrcPadProbeCb(GstPad* pad, GstPadProbe
             auto collection = WTFMove(data->collection);
             GST_DEBUG_OBJECT(self, "Pushing stream-collection event");
             gst_pad_push_event(pad, gst_event_new_stream_collection(collection.get()));
-            gst_pad_push_event(pad, gst_event_new_tag(data->tags.leakRef()));
             if (data->sourceType == RealtimeMediaSource::Type::Video) {
                 GST_DEBUG_OBJECT(self, "Requesting a key-frame");
                 gst_pad_send_event(pad, gst_video_event_new_upstream_force_key_unit(GST_CLOCK_TIME_NONE, TRUE, 1));
@@ -1066,7 +1109,6 @@ void webkitMediaStreamSrcAddTrack(WebKitMediaStreamSrc* self, MediaStreamTrackPr
 
     auto pad = adoptGRef(gst_element_get_static_pad(element, "src"));
     auto data = createProbeData();
-    data->tags = mediaStreamTrackPrivateGetTags(RefPtr(track));
     data->element = GST_ELEMENT_CAST(self);
     data->sourceType = track->source().type();
     data->collection = webkitMediaStreamSrcCreateStreamCollection(self);
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerMockDevice.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerMockDevice.cpp
index faffdd5691..7d84047d12 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerMockDevice.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerMockDevice.cpp
@@ -42,7 +42,7 @@ static GstElement* webkitMockDeviceCreateElement([[maybe_unused]] GstDevice* dev
 {
     GST_INFO_OBJECT(device, "Creating source element for device %s", name);
     auto* element = makeGStreamerElement("appsrc", name);
-    g_object_set(element, "format", GST_FORMAT_TIME, "is-live", TRUE, nullptr);
+    g_object_set(element, "format", GST_FORMAT_TIME, "is-live", TRUE, "do-timestamp", TRUE, nullptr);
     return element;
 }
 
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerRTPPacketizer.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerRTPPacketizer.cpp
new file mode 100644
index 0000000000..30c2291a52
--- /dev/null
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerRTPPacketizer.cpp
@@ -0,0 +1,302 @@
+/*
+ *  Copyright (C) 2024 Igalia S.L. All rights reserved.
+ *  Copyright (C) 2024 Metrological Group B.V.
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser 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
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#include "config.h"
+#include "GStreamerRTPPacketizer.h"
+
+#if USE(GSTREAMER_WEBRTC)
+
+#include "GStreamerCommon.h"
+#include <gst/rtp/rtp.h>
+#include <wtf/PrintStream.h>
+#include <wtf/glib/WTFGType.h>
+#include <wtf/text/StringToIntegerConversion.h>
+#include <wtf/text/WTFString.h>
+
+namespace WebCore {
+
+GST_DEBUG_CATEGORY(webkit_webrtc_rtp_packetizer_debug);
+#define GST_CAT_DEFAULT webkit_webrtc_rtp_packetizer_debug
+
+GStreamerRTPPacketizer::GStreamerRTPPacketizer(GRefPtr<GstElement>&& encoder, GRefPtr<GstElement>&& payloader, GUniquePtr<GstStructure>&& encodingParameters)
+    : m_encoder(WTFMove(encoder))
+    , m_payloader(WTFMove(payloader))
+    , m_encodingParameters(WTFMove(encodingParameters))
+{
+    static std::once_flag debugRegisteredFlag;
+    std::call_once(debugRegisteredFlag, [] {
+        GST_DEBUG_CATEGORY_INIT(webkit_webrtc_rtp_packetizer_debug, "webkitwebrtcrtppacketizer", 0, "WebKit WebRTC RTP Packetizer");
+    });
+
+    static Atomic<uint64_t> counter = 0;
+    m_bin = gst_bin_new(makeString("rtp-packetizer-"_s, counter.exchangeAdd(1)).ascii().data());
+
+    m_inputQueue = gst_element_factory_make("queue", nullptr);
+    m_outputQueue = gst_element_factory_make("queue", nullptr);
+    m_capsFilter = gst_element_factory_make("capsfilter", nullptr);
+    m_valve = gst_element_factory_make("valve", nullptr);
+    gst_bin_add_many(GST_BIN_CAST(m_bin.get()), m_inputQueue.get(), m_encoder.get(), m_payloader.get(), m_capsFilter.get(), m_outputQueue.get(), m_valve.get(), nullptr);
+
+    auto sinkPad = adoptGRef(gst_element_get_static_pad(m_inputQueue.get(), "sink"));
+    gst_element_add_pad(m_bin.get(), gst_ghost_pad_new("sink", sinkPad.get()));
+    auto srcPad = adoptGRef(gst_element_get_static_pad(m_valve.get(), "src"));
+    gst_element_add_pad(m_bin.get(), gst_ghost_pad_new("src", srcPad.get()));
+
+    m_stats.reset(gst_structure_new_empty("stats"));
+
+    if (m_encodingParameters)
+        applyEncodingParameters(m_encodingParameters.get());
+}
+
+GStreamerRTPPacketizer::~GStreamerRTPPacketizer() = default;
+
+void GStreamerRTPPacketizer::configureExtensions()
+{
+    m_lastExtensionId = 0;
+
+    GValue extensions = G_VALUE_INIT;
+    g_object_get_property(G_OBJECT(m_payloader.get()), "extensions", &extensions);
+    m_lastExtensionId = gst_value_array_get_size(&extensions) + 1;
+    g_value_unset(&extensions);
+
+    if (!m_midExtension) {
+        m_midExtension = adoptGRef(gst_rtp_header_extension_create_from_uri(GST_RTP_HDREXT_BASE "sdes:mid"));
+        gst_rtp_header_extension_set_id(m_midExtension.get(), m_lastExtensionId);
+        GST_DEBUG_OBJECT(m_bin.get(), "Created mid extension %" GST_PTR_FORMAT, m_midExtension.get());
+        m_lastExtensionId++;
+        g_signal_emit_by_name(m_payloader.get(), "add-extension", m_midExtension.get());
+    }
+
+    auto rid = rtpStreamId();
+    if (!m_ridExtension) {
+        m_ridExtension = adoptGRef(gst_rtp_header_extension_create_from_uri(GST_RTP_HDREXT_BASE "sdes:rtp-stream-id"));
+        gst_rtp_header_extension_set_id(m_ridExtension.get(), m_lastExtensionId);
+        m_lastExtensionId++;
+        if (!rid.isEmpty())
+            g_object_set(m_ridExtension.get(), "rid", rid.utf8().data(), nullptr);
+        g_signal_emit_by_name(m_payloader.get(), "add-extension", m_ridExtension.get());
+    }
+
+    auto extension = adoptGRef(gst_rtp_header_extension_create_from_uri(GST_RTP_HDREXT_BASE "sdes:repaired-rtp-stream-id"));
+    gst_rtp_header_extension_set_id(extension.get(), m_lastExtensionId);
+    m_lastExtensionId++;
+    if (!rid.isEmpty())
+        g_object_set(extension.get(), "rid", rid.utf8().data(), nullptr);
+    g_signal_emit_by_name(m_payloader.get(), "add-extension", extension.get());
+}
+
+void GStreamerRTPPacketizer::ensureMidExtension(const String& mid)
+{
+    if (m_midExtension) {
+        g_object_set(m_midExtension.get(), "mid", mid.utf8().data(), nullptr);
+        GST_DEBUG_OBJECT(m_bin.get(), "Existing mid extension %" GST_PTR_FORMAT " updated with mid %s", m_midExtension.get(), mid.utf8().data());
+        return;
+    }
+
+    GValue extensions = G_VALUE_INIT;
+    g_object_get_property(G_OBJECT(m_payloader.get()), "extensions", &extensions);
+    auto totalExtensions = gst_value_array_get_size(&extensions);
+    auto midURI = StringView::fromLatin1(GST_RTP_HDREXT_BASE "sdes:mid");
+    for (unsigned i = 0; i < totalExtensions; i++) {
+        const auto extension = GST_RTP_HEADER_EXTENSION_CAST(g_value_get_object(gst_value_array_get_value(&extensions, i)));
+        auto uri = StringView::fromLatin1(gst_rtp_header_extension_get_uri(extension));
+        if (uri != midURI)
+            continue;
+
+        m_midExtension = extension;
+        GST_DEBUG_OBJECT(m_bin.get(), "Using mid extension %" GST_PTR_FORMAT, m_midExtension.get());
+        g_object_set(extension, "mid", mid.utf8().data(), nullptr);
+        GST_DEBUG_OBJECT(m_bin.get(), "Existing mid extension updated with mid %s", mid.utf8().data());
+        break;
+    }
+    g_value_unset(&extensions);
+    if (m_midExtension)
+        return;
+
+    GST_DEBUG_OBJECT(m_bin.get(), "Adding mid extension for mid %s", mid.ascii().data());
+    m_midExtension = adoptGRef(gst_rtp_header_extension_create_from_uri(GST_RTP_HDREXT_BASE "sdes:mid"));
+    gst_rtp_header_extension_set_id(m_midExtension.get(), totalExtensions + 1);
+    GST_DEBUG_OBJECT(m_bin.get(), "Created mid extension %" GST_PTR_FORMAT, m_midExtension.get());
+    g_object_set(m_midExtension.get(), "mid", mid.utf8().data(), nullptr);
+    g_signal_emit_by_name(m_payloader.get(), "add-extension", m_midExtension.get());
+}
+
+GUniquePtr<GstStructure> GStreamerRTPPacketizer::rtpParameters() const
+{
+    GRefPtr<GstCaps> caps;
+    g_object_get(m_capsFilter.get(), "caps", &caps.outPtr(), nullptr);
+    if (gst_caps_is_any(caps.get()) || !gst_caps_get_size(caps.get()))
+        return nullptr;
+    return GUniquePtr<GstStructure>(gst_structure_copy(gst_caps_get_structure(caps.get(), 0)));
+}
+
+String GStreamerRTPPacketizer::rtpStreamId() const
+{
+    if (!m_encodingParameters)
+        return emptyString();
+
+    if (auto rid = gstStructureGetString(m_encodingParameters.get(), "rid"_s))
+        return rid.toString();
+
+    return emptyString();
+}
+
+int GStreamerRTPPacketizer::payloadType() const
+{
+    int payloadType;
+    g_object_get(m_payloader.get(), "pt", &payloadType, nullptr);
+    return payloadType;
+}
+
+unsigned GStreamerRTPPacketizer::currentSequenceNumberOffset() const
+{
+    unsigned result;
+    g_object_get(m_payloader.get(), "seqnum-offset", &result, nullptr);
+    return result;
+}
+
+void GStreamerRTPPacketizer::setSequenceNumberOffset(unsigned number)
+{
+    g_object_set(m_payloader.get(), "seqnum-offset", G_TYPE_UINT, number, nullptr);
+}
+
+struct ExtensionIdHolder {
+    int extensionId { 0 };
+};
+WEBKIT_DEFINE_ASYNC_DATA_STRUCT(ExtensionIdHolder);
+
+int GStreamerRTPPacketizer::findLastExtensionId(const GstCaps* caps)
+{
+    auto holder = createExtensionIdHolder();
+    auto rtpStructure = gst_caps_get_structure(caps, 0);
+    gstStructureForeach(rtpStructure, [&](auto id, const auto) -> bool {
+        auto name = gstIdToString(id);
+        if (!name.startsWith("extmap-"_s))
+            return true;
+
+        auto identifier = WTF::parseInteger<int>(name.substring(7));
+        if (UNLIKELY(!identifier))
+            return true;
+
+        holder->extensionId = std::max(holder->extensionId, *identifier);
+        return true;
+    });
+    int result = holder->extensionId;
+    destroyExtensionIdHolder(holder);
+    return result;
+}
+
+std::optional<std::pair<unsigned, GstStructure*>> GStreamerRTPPacketizer::stats() const
+{
+    GRefPtr<GstCaps> caps;
+    g_object_get(m_capsFilter.get(), "caps", &caps.outPtr(), nullptr);
+    if (!caps || gst_caps_is_empty(caps.get()) || gst_caps_is_any(caps.get()))
+        return std::nullopt;
+
+    auto structure = gst_caps_get_structure(caps.get(), 0);
+    auto ssrc = gstStructureGet<unsigned>(structure, "ssrc"_s);
+    if (!ssrc)
+        return std::nullopt;
+
+    return { { *ssrc, m_stats.get() } };
+}
+
+struct RTPPacketizerHolder {
+    RefPtr<GStreamerRTPPacketizer> packetizer;
+};
+WEBKIT_DEFINE_ASYNC_DATA_STRUCT(RTPPacketizerHolder)
+
+void GStreamerRTPPacketizer::startUpdatingStats()
+{
+    GST_DEBUG_OBJECT(m_bin.get(), "Starting buffer monitoring for stats gathering");
+    auto holder = createRTPPacketizerHolder();
+    holder->packetizer = this;
+    auto pad = adoptGRef(gst_element_get_static_pad(m_encoder.get(), "src"));
+    m_statsPadProbeId = gst_pad_add_probe(pad.get(), GST_PAD_PROBE_TYPE_BUFFER, [](GstPad*, GstPadProbeInfo*, gpointer userData) -> GstPadProbeReturn {
+        auto packetizer = static_cast<RTPPacketizerHolder*>(userData)->packetizer;
+        packetizer->updateStats();
+        packetizer->updateStatsFromRTPExtensions();
+        return GST_PAD_PROBE_OK;
+    }, holder, reinterpret_cast<GDestroyNotify>(destroyRTPPacketizerHolder));
+}
+
+void GStreamerRTPPacketizer::updateStatsFromRTPExtensions()
+{
+    if (m_midExtension) {
+        GUniqueOutPtr<char> mid;
+        g_object_get(m_midExtension.get(), "mid", &mid.outPtr(), nullptr);
+        gst_structure_set(m_stats.get(), "mid", G_TYPE_STRING, mid.get(), nullptr);
+    } else if (gst_structure_has_field(m_stats.get(), "mid"))
+        gst_structure_remove_field(m_stats.get(), "mid");
+
+    if (m_ridExtension) {
+        GUniqueOutPtr<char> rid;
+        g_object_get(m_ridExtension.get(), "rid", &rid.outPtr(), nullptr);
+        gst_structure_set(m_stats.get(), "rid", G_TYPE_STRING, rid.get(), nullptr);
+    } else if (gst_structure_has_field(m_stats.get(), "rid"))
+        gst_structure_remove_field(m_stats.get(), "rid");
+}
+
+void GStreamerRTPPacketizer::stopUpdatingStats()
+{
+    if (!m_statsPadProbeId)
+        return;
+
+    GST_DEBUG_OBJECT(m_bin.get(), "Stopping buffer monitoring for stats gathering");
+    auto pad = adoptGRef(gst_element_get_static_pad(m_encoder.get(), "src"));
+    gst_pad_remove_probe(pad.get(), m_statsPadProbeId);
+    m_statsPadProbeId = 0;
+}
+
+void GStreamerRTPPacketizer::applyEncodingParameters(const GstStructure* encodingParameters) const
+{
+    ASSERT(encodingParameters);
+
+    configure(encodingParameters);
+
+    auto isActive = gstStructureGet<bool>(encodingParameters, "active"_s).value_or(true);
+    GST_DEBUG_OBJECT(m_bin.get(), "Packetizer is active: %s", boolForPrinting(isActive));
+    g_object_set(m_valve.get(), "drop", !isActive, nullptr);
+    if (isActive)
+        return;
+
+    auto srcPad = adoptGRef(gst_element_get_static_pad(m_bin.get(), "src"));
+    if (!srcPad)
+        return;
+
+    auto peer = adoptGRef(gst_pad_get_peer(srcPad.get()));
+    gst_pad_send_event(peer.get(), gst_event_new_flush_start());
+    gst_pad_send_event(peer.get(), gst_event_new_flush_stop(FALSE));
+}
+
+void GStreamerRTPPacketizer::reconfigure(GUniquePtr<GstStructure>&& encodingParameters)
+{
+    GST_DEBUG_OBJECT(m_bin.get(), "Re-configuring for encoding parameters: %" GST_PTR_FORMAT, encodingParameters.get());
+    if (!encodingParameters)
+        return;
+
+    applyEncodingParameters(encodingParameters.get());
+    m_encodingParameters = WTFMove(encodingParameters);
+}
+
+#undef GST_CAT_DEFAULT
+
+} // namespace WebCore
+
+#endif // USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerRTPPacketizer.h b/Source/WebCore/platform/mediastream/gstreamer/GStreamerRTPPacketizer.h
new file mode 100644
index 0000000000..d4f9d9adf1
--- /dev/null
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerRTPPacketizer.h
@@ -0,0 +1,88 @@
+/*
+ *  Copyright (C) 2024 Igalia S.L. All rights reserved.
+ *  Copyright (C) 2024 Metrological Group B.V.
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser 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
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#pragma once
+
+#if USE(GSTREAMER_WEBRTC)
+
+#include "GRefPtrGStreamer.h"
+#include "GUniquePtrGStreamer.h"
+#include <wtf/ThreadSafeRefCounted.h>
+
+namespace WebCore {
+
+class GStreamerRTPPacketizer : public ThreadSafeRefCounted<GStreamerRTPPacketizer> {
+    WTF_MAKE_NONCOPYABLE(GStreamerRTPPacketizer);
+    WTF_MAKE_FAST_ALLOCATED;
+public:
+    explicit GStreamerRTPPacketizer(GRefPtr<GstElement>&& encoder, GRefPtr<GstElement>&& payloader, GUniquePtr<GstStructure>&& encodingParameters);
+    virtual ~GStreamerRTPPacketizer();
+
+    GstElement* bin() const { return m_bin.get(); }
+    GstElement* payloader() const { return m_payloader.get(); }
+
+    WARN_UNUSED_RETURN GUniquePtr<GstStructure> rtpParameters() const;
+
+    void configureExtensions();
+    void ensureMidExtension(const String&);
+
+    String rtpStreamId() const;
+    int payloadType() const;
+    unsigned currentSequenceNumberOffset() const;
+    void setSequenceNumberOffset(unsigned);
+
+    std::optional<std::pair<unsigned, GstStructure*>> stats() const;
+    void startUpdatingStats();
+    void stopUpdatingStats();
+
+    virtual void updateStats() { };
+
+    void reconfigure(GUniquePtr<GstStructure>&&);
+
+protected:
+    int findLastExtensionId(const GstCaps*);
+
+    GRefPtr<GstElement> m_bin;
+    GRefPtr<GstElement> m_inputQueue;
+    GRefPtr<GstElement> m_outputQueue;
+    GRefPtr<GstElement> m_encoder;
+    GRefPtr<GstElement> m_payloader;
+    GRefPtr<GstElement> m_capsFilter;
+    GRefPtr<GstElement> m_valve;
+
+    GUniquePtr<GstStructure> m_encodingParameters;
+    int m_payloadType;
+    GUniquePtr<GstStructure> m_stats;
+
+private:
+    void updateStatsFromRTPExtensions();
+    void applyEncodingParameters(const GstStructure*) const;
+    virtual void configure(const GstStructure*) const { };
+
+    GRefPtr<GstRTPHeaderExtension> m_midExtension;
+    GRefPtr<GstRTPHeaderExtension> m_ridExtension;
+
+    unsigned m_lastExtensionId { 0 };
+
+    unsigned long m_statsPadProbeId { 0 };
+};
+
+} // namespace WebCore
+
+#endif // USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp
index 58a3ed1908..d6e42711be 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp
@@ -115,7 +115,7 @@ GStreamerVideoCaptureSource::GStreamerVideoCaptureSource(String&& deviceID, Atom
     m_capturer->addObserver(*this);
 
     auto& singleton = GStreamerVideoCaptureDeviceManager::singleton();
-    singleton.registerCapturer(m_capturer);
+    singleton.registerCapturer(m_capturer.copyRef());
 }
 
 GStreamerVideoCaptureSource::GStreamerVideoCaptureSource(GStreamerCaptureDevice&& device, MediaDeviceHashSalts&& hashSalts)
@@ -127,7 +127,7 @@ GStreamerVideoCaptureSource::GStreamerVideoCaptureSource(GStreamerCaptureDevice&
     m_capturer->addObserver(*this);
 
     auto& singleton = GStreamerVideoCaptureDeviceManager::singleton();
-    singleton.registerCapturer(m_capturer);
+    singleton.registerCapturer(m_capturer.copyRef());
 }
 
 GStreamerVideoCaptureSource::~GStreamerVideoCaptureSource()
@@ -181,6 +181,14 @@ void GStreamerVideoCaptureSource::captureEnded()
     m_capturer->stop();
 }
 
+std::pair<GstClockTime, GstClockTime> GStreamerVideoCaptureSource::queryCaptureLatency() const
+{
+    if (!m_capturer)
+        return { GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE };
+
+    return m_capturer->queryLatency();
+}
+
 void GStreamerVideoCaptureSource::startProducingData()
 {
     m_capturer->setupPipeline();
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h
index e7d85cfcbe..35e5bec76d 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h
@@ -50,6 +50,8 @@ public:
     void sourceCapsChanged(const GstCaps*) final;
     void captureEnded() final;
 
+    std::pair<GstClockTime, GstClockTime> queryCaptureLatency() const final;
+
 protected:
     GStreamerVideoCaptureSource(String&& deviceID, AtomString&& name, MediaDeviceHashSalts&&, const gchar* source_factory, CaptureDevice::DeviceType, const NodeAndFD&);
     GStreamerVideoCaptureSource(GStreamerCaptureDevice&&, MediaDeviceHashSalts&&);
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp
index d8d8580e4c..7d479eeb7c 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp
@@ -84,7 +84,9 @@ GstElement* GStreamerVideoCapturer::createSource()
 GstElement* GStreamerVideoCapturer::createConverter()
 {
     if (isCapturingDisplay()) {
-        gst_caps_set_features(m_caps.get(), 0, gst_caps_features_new("memory:DMABuf", nullptr));
+#if USE(GBM)
+        m_caps = buildDMABufCaps();
+#endif
         return makeGStreamerElement("identity", nullptr);
     }
 
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoRTPPacketizer.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoRTPPacketizer.cpp
new file mode 100644
index 0000000000..3b5698d021
--- /dev/null
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoRTPPacketizer.cpp
@@ -0,0 +1,248 @@
+/*
+ *  Copyright (C) 2024 Igalia S.L. All rights reserved.
+ *  Copyright (C) 2024 Metrological Group B.V.
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser 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
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#include "config.h"
+#include "GStreamerVideoRTPPacketizer.h"
+
+#if USE(GSTREAMER_WEBRTC)
+
+#include "AV1Utilities.h"
+#include "GStreamerCommon.h"
+#include "GStreamerRegistryScanner.h"
+#include "HEVCUtilities.h"
+#include "VP9Utilities.h"
+#include "VideoEncoderPrivateGStreamer.h"
+#include <gst/rtp/rtp.h>
+#include <wtf/text/MakeString.h>
+#include <wtf/text/StringToIntegerConversion.h>
+
+namespace WebCore {
+
+GST_DEBUG_CATEGORY(webkit_webrtc_video_rtp_packetizer_debug);
+#define GST_CAT_DEFAULT webkit_webrtc_video_rtp_packetizer_debug
+
+RefPtr<GStreamerVideoRTPPacketizer> GStreamerVideoRTPPacketizer::create(RefPtr<UniqueSSRCGenerator> ssrcGenerator, const GstStructure* codecParameters, GUniquePtr<GstStructure>&& encodingParameters)
+{
+    static std::once_flag debugRegisteredFlag;
+    std::call_once(debugRegisteredFlag, [] {
+        GST_DEBUG_CATEGORY_INIT(webkit_webrtc_video_rtp_packetizer_debug, "webkitwebrtcrtppacketizervideo", 0, "WebKit WebRTC Video RTP Packetizer");
+    });
+
+    GST_DEBUG("Creating packetizer for codec: %" GST_PTR_FORMAT " and encoding parameters %" GST_PTR_FORMAT, codecParameters, encodingParameters.get());
+    String encoding;
+    if (auto encodingName = gstStructureGetString(codecParameters, "encoding-name"_s))
+        encoding = encodingName.convertToASCIILowercase();
+    else {
+        GST_ERROR("encoding-name not found");
+        return nullptr;
+    }
+
+    auto& registryScanner = GStreamerRegistryScanner::singleton();
+    auto lookupResult = registryScanner.isRtpPacketizerSupported(encoding);
+    if (!lookupResult) {
+        GST_ERROR("RTP payloader not found for encoding %s", encoding.ascii().data());
+        return nullptr;
+    }
+    GRefPtr<GstElement> payloader = gst_element_factory_create(lookupResult.factory.get(), nullptr);
+    GST_DEBUG("Using %" GST_PTR_FORMAT " for %s RTP packetizing", payloader.get(), encoding.ascii().data());
+
+    auto codec = emptyString();
+    if (encoding == "vp8"_s) {
+        if (gstObjectHasProperty(payloader.get(), "picture-id-mode"))
+            gst_util_set_object_arg(G_OBJECT(payloader.get()), "picture-id-mode", "15-bit");
+
+        codec = "vp8"_s;
+    } else if (encoding == "vp9"_s) {
+        if (gstObjectHasProperty(payloader.get(), "picture-id-mode"))
+            gst_util_set_object_arg(G_OBJECT(payloader.get()), "picture-id-mode", "15-bit");
+
+        VPCodecConfigurationRecord record;
+        record.codecName = "vp09"_s;
+        if (auto vp9Profile = gstStructureGetString(codecParameters, "profile-id"_s)) {
+            if (auto profile = parseInteger<uint8_t>(vp9Profile))
+                record.profile = *profile;
+        }
+        codec = createVPCodecParametersString(record);
+    } else if (encoding == "h264"_s) {
+        gst_util_set_object_arg(G_OBJECT(payloader.get()), "aggregate-mode", "zero-latency");
+        g_object_set(payloader.get(), "config-interval", -1, nullptr);
+
+        auto profileValue = gstStructureGetString(codecParameters, "profile"_s);
+        auto profile = profileValue ? profileValue : "constrained-baseline"_s;
+
+        AVCParameters parameters;
+        if (profile == "baseline"_s)
+            parameters.profileIDC = 66;
+        else if (profile == "constrained-baseline"_s) {
+            parameters.profileIDC = 66;
+            parameters.constraintsFlags |= 1 << 6;
+        } else if (profile == "main"_s)
+            parameters.profileIDC = 77;
+
+        codec = createAVCCodecParametersString(parameters);
+    } else if (encoding == "h265"_s) {
+        gst_util_set_object_arg(G_OBJECT(payloader.get()), "aggregate-mode", "zero-latency");
+        g_object_set(payloader.get(), "config-interval", -1, nullptr);
+        // FIXME: profile tier level?
+        codec = createHEVCCodecParametersString({ });
+    } else if (encoding == "av1"_s)
+        codec = createAV1CodecParametersString({ });
+    else {
+        GST_ERROR("Unsupported outgoing video encoding: %s", encoding.ascii().data());
+        return nullptr;
+    }
+
+    // Align MTU with libwebrtc implementation, also helping to reduce packet fragmentation.
+    g_object_set(payloader.get(), "auto-header-extension", TRUE, "mtu", 1200, nullptr);
+
+    auto payloadType = gstStructureGet<int>(codecParameters, "payload"_s);
+    if (payloadType)
+        g_object_set(payloader.get(), "pt", *payloadType, nullptr);
+    else {
+        payloadType = gstStructureGet<int>(encodingParameters.get(), "payload"_s);
+        if (payloadType)
+            g_object_set(payloader.get(), "pt", *payloadType, nullptr);
+    }
+
+    GRefPtr<GstElement> encoder = gst_element_factory_make("webkitvideoencoder", nullptr);
+    if (!videoEncoderSetCodec(WEBKIT_VIDEO_ENCODER(encoder.get()), WTFMove(codec))) {
+        GST_ERROR("Unable to set encoder format");
+        return nullptr;
+    }
+
+    GUniquePtr<GstStructure> structure(gst_structure_copy(codecParameters));
+
+    auto ssrc = ssrcGenerator->generateSSRC();
+    if (ssrc != std::numeric_limits<uint32_t>::max())
+        gst_structure_set(structure.get(), "ssrc", G_TYPE_UINT, ssrc, nullptr);
+
+    auto rtpCaps = adoptGRef(gst_caps_new_empty());
+    gst_caps_append_structure(rtpCaps.get(), structure.release());
+    return adoptRef(*new GStreamerVideoRTPPacketizer(WTFMove(encoder), WTFMove(payloader), WTFMove(encodingParameters), WTFMove(rtpCaps)));
+}
+
+GStreamerVideoRTPPacketizer::GStreamerVideoRTPPacketizer(GRefPtr<GstElement>&& encoder, GRefPtr<GstElement>&& payloader, GUniquePtr<GstStructure>&& encodingParameters, GRefPtr<GstCaps>&& rtpCaps)
+    : GStreamerRTPPacketizer(WTFMove(encoder), WTFMove(payloader), WTFMove(encodingParameters))
+{
+    GST_DEBUG_OBJECT(m_bin.get(), "RTP caps: %" GST_PTR_FORMAT, rtpCaps.get());
+    g_object_set(m_capsFilter.get(), "caps", rtpCaps.get(), nullptr);
+
+    GST_DEBUG_OBJECT(m_bin.get(), "RTP encoding parameters: %" GST_PTR_FORMAT, m_encodingParameters.get());
+
+    m_videoRate = makeGStreamerElement("videorate", nullptr);
+    // https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/97#note_56575
+    g_object_set(m_videoRate.get(), "skip-to-first", TRUE, "drop-only", TRUE, "average-period", UINT64_C(1), nullptr);
+    m_frameRateCapsFilter = makeGStreamerElement("capsfilter", nullptr);
+    gst_bin_add_many(GST_BIN_CAST(m_bin.get()), m_videoRate.get(), m_frameRateCapsFilter.get(), nullptr);
+
+    auto lastIdentifier = findLastExtensionId(rtpCaps.get());
+    auto rtpStreamId = this->rtpStreamId();
+    if (!rtpStreamId.isEmpty()) {
+        GST_DEBUG_OBJECT(m_bin.get(), "Configuring rtp-stream-id extension for rid: %s", rtpStreamId.ascii().data());
+        auto extension = adoptGRef(gst_rtp_header_extension_create_from_uri(GST_RTP_HDREXT_BASE "sdes:rtp-stream-id"));
+        lastIdentifier++;
+        gst_rtp_header_extension_set_id(extension.get(), lastIdentifier);
+        g_object_set(extension.get(), "rid", rtpStreamId.ascii().data(), nullptr);
+        g_signal_emit_by_name(m_payloader.get(), "add-extension", extension.get());
+    }
+
+    auto extension = adoptGRef(gst_rtp_header_extension_create_from_uri(GST_RTP_HDREXT_BASE "sdes:mid"));
+    lastIdentifier++;
+    gst_rtp_header_extension_set_id(extension.get(), lastIdentifier);
+    g_signal_emit_by_name(m_payloader.get(), "add-extension", extension.get());
+
+    // TODO: Repaired stream-id extension?
+
+    if (m_encodingParameters)
+        configure(m_encodingParameters.get());
+
+    gst_element_link_many(m_inputQueue.get(), m_videoRate.get(), m_frameRateCapsFilter.get(), m_encoder.get(), m_payloader.get(), m_capsFilter.get(), m_outputQueue.get(), m_valve.get(), nullptr);
+}
+
+void GStreamerVideoRTPPacketizer::configure(const GstStructure* encodingParameters) const
+{
+    ASSERT(encodingParameters);
+    GST_DEBUG_OBJECT(m_bin.get(), "Configuring with encoding parameters: %" GST_PTR_FORMAT, encodingParameters);
+
+    auto maxFrameRate = gstStructureGet<unsigned>(encodingParameters, "max-framerate"_s).value_or(0);
+    if (maxFrameRate) {
+        if (!m_videoRate)
+            GST_WARNING_OBJECT(m_bin.get(), "Unable to configure max-framerate");
+        else {
+            // Some decoder(s), like FFMpeg don't handle 1 FPS framerate, so set a minimum more likely to be accepted.
+            if (maxFrameRate < 2)
+                maxFrameRate = 2;
+
+            int numerator, denominator;
+            gst_util_double_to_fraction(static_cast<double>(maxFrameRate), &numerator, &denominator);
+
+            auto caps = adoptGRef(gst_caps_new_simple("video/x-raw", "framerate", GST_TYPE_FRACTION, numerator, denominator, nullptr));
+            g_object_set(m_frameRateCapsFilter.get(), "caps", caps.get(), nullptr);
+        }
+    }
+
+    if (auto maxBitrate = gstStructureGet<unsigned>(encodingParameters, "max-bitrate"_s)) {
+        // maxBitrate is expessed in bits/s but the encoder property is in Kbit/s.
+        if (*maxBitrate >= 1000) {
+            if (*maxBitrate / 1000 < UINT_MAX)
+                g_object_set(m_encoder.get(), "bitrate", static_cast<uint32_t>(*maxBitrate / 1000), nullptr);
+        }
+    }
+
+    if (auto scaleResolutionDownBy = gstStructureGet<double>(encodingParameters, "scale-resolution-down-by"_s))
+        g_object_set(m_encoder.get(), "scale-resolution-down-by", *scaleResolutionDownBy, nullptr);
+}
+
+void GStreamerVideoRTPPacketizer::updateStats()
+{
+    if (UNLIKELY(!m_encoder))
+        return;
+
+    auto framesSent = gstStructureGet<uint64_t>(m_stats.get(), "frames-sent"_s).value_or(0);
+    framesSent++;
+
+    uint32_t bitrate;
+    g_object_get(m_encoder.get(), "bitrate", &bitrate, nullptr);
+    gst_structure_set(m_stats.get(), "bitrate", G_TYPE_DOUBLE, static_cast<double>(bitrate * 1000), nullptr);
+
+    auto pad = adoptGRef(gst_element_get_static_pad(m_encoder.get(), "src"));
+    auto caps = adoptGRef(gst_pad_get_current_caps(pad.get()));
+    if (caps && !gst_caps_is_empty(caps.get())) {
+        auto structure = gst_caps_get_structure(caps.get(), 0);
+        if (auto width = gstStructureGet<int>(structure, "width"_s))
+            gst_structure_set(m_stats.get(), "frame-width", G_TYPE_UINT, *width, nullptr);
+        if (auto height = gstStructureGet<int>(structure, "height"_s))
+            gst_structure_set(m_stats.get(), "frame-height", G_TYPE_UINT, *height, nullptr);
+
+        int numerator, denominator;
+        if (gst_structure_get_fraction(structure, "framerate", &numerator, &denominator)) {
+            double framerate;
+            gst_util_fraction_to_double(numerator, denominator, &framerate);
+            gst_structure_set(m_stats.get(), "frames-per-second", G_TYPE_DOUBLE, framerate, nullptr);
+        }
+    }
+
+    gst_structure_set(m_stats.get(), "frames-sent", G_TYPE_UINT64, framesSent, "frames-encoded", G_TYPE_UINT64, framesSent, nullptr);
+}
+
+#undef GST_CAT_DEFAULT
+
+} // namespace WebCore
+
+#endif // USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoRTPPacketizer.h b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoRTPPacketizer.h
new file mode 100644
index 0000000000..a1c68f9e0f
--- /dev/null
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoRTPPacketizer.h
@@ -0,0 +1,46 @@
+/*
+ *  Copyright (C) 2024 Igalia S.L. All rights reserved.
+ *  Copyright (C) 2024 Metrological Group B.V.
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser 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
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#pragma once
+
+#if USE(GSTREAMER_WEBRTC)
+
+#include "GStreamerRTPPacketizer.h"
+#include "GStreamerWebRTCUtils.h"
+
+namespace WebCore {
+
+class GStreamerVideoRTPPacketizer final : public GStreamerRTPPacketizer {
+public:
+    static RefPtr<GStreamerVideoRTPPacketizer> create(RefPtr<UniqueSSRCGenerator>, const GstStructure* codecParameters, GUniquePtr<GstStructure>&& encodingParameters);
+
+    void updateStats() final;
+
+private:
+    explicit GStreamerVideoRTPPacketizer(GRefPtr<GstElement>&& encoder, GRefPtr<GstElement>&& payloader, GUniquePtr<GstStructure>&& encodingParameters, GRefPtr<GstCaps>&& rtpCaps);
+
+    void configure(const GstStructure*) const final;
+
+    GRefPtr<GstElement> m_videoRate;
+    GRefPtr<GstElement> m_frameRateCapsFilter;
+};
+
+} // namespace WebCore
+
+#endif // USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCCommon.h b/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCCommon.h
index 2dbe952a8d..54732dc974 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCCommon.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCCommon.h
@@ -29,6 +29,7 @@ using WebRTCTrackData = struct _WebRTCTrackData {
     GRefPtr<GstWebRTCRTPTransceiver> transceiver;
     RealtimeMediaSource::Type type;
     GRefPtr<GstCaps> caps;
+    unsigned ssrc;
 };
 
 } // namespace WebCore
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.cpp b/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.cpp
new file mode 100644
index 0000000000..1e742a949c
--- /dev/null
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.cpp
@@ -0,0 +1,93 @@
+/*
+ *  Copyright (C) 2024 Igalia S.L.
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser 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
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#include "config.h"
+
+#if USE(GSTREAMER_WEBRTC)
+#include "GStreamerWebRTCLogSink.h"
+
+namespace WebCore {
+
+GStreamerWebRTCLogSink::GStreamerWebRTCLogSink(LogCallback&& callback)
+    : m_callback(WTFMove(callback))
+    , m_isGstDebugActive(gst_debug_is_active())
+{
+}
+
+GStreamerWebRTCLogSink::~GStreamerWebRTCLogSink() = default;
+
+static String toWebRTCLogLevel(GstDebugLevel level)
+{
+    switch (level) {
+    case GST_LEVEL_NONE:
+        return "none"_s;
+    case GST_LEVEL_ERROR:
+        return "error"_s;
+    case GST_LEVEL_WARNING:
+        return "warning"_s;
+    case GST_LEVEL_FIXME:
+        return "fixme"_s;
+    case GST_LEVEL_INFO:
+        return "info"_s;
+    case GST_LEVEL_DEBUG:
+        return "debug"_s;
+    case GST_LEVEL_LOG:
+        return "log"_s;
+    case GST_LEVEL_TRACE:
+        return "trace"_s;
+    case GST_LEVEL_MEMDUMP:
+        return "memdump"_s;
+    default:
+        break;
+    }
+    ASSERT_NOT_REACHED();
+    return ""_s;
+}
+
+void GStreamerWebRTCLogSink::start()
+{
+#ifdef GST_DISABLE_GST_DEBUG
+    static std::once_flag onceFlag;
+    std::call_once(onceFlag, [] {
+        WTFLogAlways("GST_DEBUG is disabled in this build. gatherLogs() will report only WebRTC stats logs.");
+    });
+#else
+    if (!m_isGstDebugActive)
+        gst_debug_remove_log_function(gst_debug_log_default);
+    gst_debug_add_log_function(static_cast<GstLogFunction>(+[](GstDebugCategory*, GstDebugLevel level, const char*, const char*, int, GObject*, GstDebugMessage* message, gpointer userData) G_GNUC_NO_INSTRUMENT {
+        auto self = reinterpret_cast<GStreamerWebRTCLogSink*>(userData);
+        self->m_callback(toWebRTCLogLevel(level), String::fromUTF8(gst_debug_message_get(message)));
+    }), this, nullptr);
+
+    // Do not include webrtcstats in the list, because stats are logged using a different code path by the endpoint.
+    gst_debug_set_threshold_from_string("webrtcbin:5,webrtcdatachannel:5,webrtctransport*:5,webrtcsctp*:5,nice*:6", FALSE);
+#endif
+}
+
+void GStreamerWebRTCLogSink::stop()
+{
+#ifndef GST_DISABLE_GST_DEBUG
+    gst_debug_remove_log_function_by_data(this);
+    if (!m_isGstDebugActive)
+        gst_debug_add_log_function(gst_debug_log_default, nullptr, nullptr);
+#endif
+}
+
+} // namespace WebCore
+
+#endif // USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.h b/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.h
new file mode 100644
index 0000000000..160d50243b
--- /dev/null
+++ b/Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.h
@@ -0,0 +1,50 @@
+/*
+ *  Copyright (C) 2024 Igalia S.L.
+ *
+ *  This library is free software; you can redistribute it and/or
+ *  modify it under the terms of the GNU Lesser 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
+ *  Lesser General Public License for more details.
+ *
+ *  You should have received a copy of the GNU Lesser General Public
+ *  License along with this library; if not, write to the Free Software
+ *  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+ */
+
+#pragma once
+
+#if USE(GSTREAMER_WEBRTC)
+
+#include <gst/gstinfo.h>
+#include <wtf/Forward.h>
+#include <wtf/Function.h>
+#include <wtf/TZoneMalloc.h>
+#include <wtf/text/WTFString.h>
+
+namespace WebCore {
+
+class GStreamerWebRTCLogSink {
+    WTF_MAKE_TZONE_ALLOCATED(GStreamerWebRTCLogSink);
+
+public:
+    using LogCallback = Function<void(const String&, const String&)>;
+    explicit GStreamerWebRTCLogSink(LogCallback&&);
+
+    ~GStreamerWebRTCLogSink();
+
+    void start();
+    void stop();
+
+private:
+    LogCallback m_callback;
+    bool m_isGstDebugActive { false };
+};
+
+} // namespace WebCore
+
+#endif // USE(GSTREAMER_WEBRTC)
diff --git a/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp b/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp
index bbb0fd2403..d0de1c9ae3 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp
@@ -131,9 +131,17 @@ void MockRealtimeAudioSourceGStreamer::captureEnded()
     captureFailed();
 }
 
+std::pair<GstClockTime, GstClockTime> MockRealtimeAudioSourceGStreamer::queryCaptureLatency() const
+{
+    if (!m_capturer)
+        return { GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE };
+
+    return m_capturer->queryLatency();
+}
+
 void MockRealtimeAudioSourceGStreamer::render(Seconds delta)
 {
-    if (!m_bipBopBuffer.size())
+    if (!m_bipBopBuffer.size() || !m_streamFormat)
         reconfigure();
 
     uint32_t totalFrameCount = GST_ROUND_UP_16(static_cast<size_t>(delta.seconds() * sampleRate()));
@@ -145,7 +153,7 @@ void MockRealtimeAudioSourceGStreamer::render(Seconds delta)
         uint32_t bipBopCount = std::min(frameCount, bipBopRemain);
 
         // We might have stopped producing data. Break out of the loop earlier if that happens.
-        if (!m_caps)
+        if (!isProducingData())
             break;
 
         ASSERT(m_streamFormat);
@@ -177,6 +185,12 @@ void MockRealtimeAudioSourceGStreamer::render(Seconds delta)
     }
 }
 
+void MockRealtimeAudioSourceGStreamer::settingsDidChange(OptionSet<RealtimeMediaSourceSettings::Flag> flags)
+{
+    MockRealtimeAudioSource::settingsDidChange(flags);
+    reconfigure();
+}
+
 void MockRealtimeAudioSourceGStreamer::addHum(float amplitude, float frequency, float sampleRate, uint64_t start, float *p, uint64_t count)
 {
     float humPeriod = sampleRate / frequency;
diff --git a/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h b/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h
index 5b44e4beb7..77d954fb1b 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h
@@ -42,8 +42,11 @@ public:
     // GStreamerCapturerObserver
     void captureEnded() final;
 
+    std::pair<GstClockTime, GstClockTime> queryCaptureLatency() const final;
+
 protected:
     void render(Seconds) final;
+    void settingsDidChange(OptionSet<RealtimeMediaSourceSettings::Flag>) final;
 
 private:
     friend class MockRealtimeAudioSource;
diff --git a/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp b/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp
index daf2f53e6f..8faab9a950 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.cpp
@@ -106,6 +106,14 @@ void MockRealtimeVideoSourceGStreamer::captureEnded()
     // devices removal.
 }
 
+std::pair<GstClockTime, GstClockTime> MockRealtimeVideoSourceGStreamer::queryCaptureLatency() const
+{
+    if (!m_capturer)
+        return { GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE };
+
+    return m_capturer->queryLatency();
+}
+
 void MockRealtimeVideoSourceGStreamer::updateSampleBuffer()
 {
     RefPtr imageBuffer = this->imageBufferInternal();
diff --git a/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h b/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h
index 0d92b198c7..3aee61a804 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h
@@ -37,6 +37,8 @@ public:
     // GStreamerCapturerObserver
     void captureEnded() final;
 
+    std::pair<GstClockTime, GstClockTime> queryCaptureLatency() const final;
+
 private:
     friend class MockRealtimeVideoSource;
 
diff --git a/Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingVideoSourceGStreamer.cpp b/Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingVideoSourceGStreamer.cpp
index ac2ae01498..e6bb8676e7 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingVideoSourceGStreamer.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingVideoSourceGStreamer.cpp
@@ -113,11 +113,10 @@ const GstStructure* RealtimeIncomingVideoSourceGStreamer::stats()
         if (!stats)
             return;
 
-        gst_structure_foreach(stats.get(), reinterpret_cast<GstStructureForeachFunc>(+[](GQuark fieldId, const GValue* value, gpointer userData) -> gboolean {
-            auto* source = reinterpret_cast<RealtimeIncomingVideoSourceGStreamer*>(userData);
-            gst_structure_set_value(source->m_stats.get(), g_quark_to_string(fieldId), value);
+        gstStructureForeach(stats.get(), [&](auto id, auto value) -> bool {
+            gstStructureIdSetValue(m_stats.get(), id, value);
             return TRUE;
-        }), this);
+        });
     });
     return m_stats.get();
 }
diff --git a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.cpp b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.cpp
index 8274a5a02e..36911729fe 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.cpp
@@ -22,11 +22,12 @@
 
 #if USE(GSTREAMER_WEBRTC)
 
+#include "GStreamerAudioRTPPacketizer.h"
 #include "GStreamerCommon.h"
+#include "GStreamerMediaStreamSource.h"
 #include "GStreamerRegistryScanner.h"
 #include "MediaStreamTrack.h"
 #include <wtf/text/MakeString.h>
-#include <wtf/text/StringToIntegerConversion.h>
 
 GST_DEBUG_CATEGORY(webkit_webrtc_outgoing_audio_debug);
 #define GST_CAT_DEFAULT webkit_webrtc_outgoing_audio_debug
@@ -35,6 +36,24 @@ namespace WebCore {
 
 RealtimeOutgoingAudioSourceGStreamer::RealtimeOutgoingAudioSourceGStreamer(const RefPtr<UniqueSSRCGenerator>& ssrcGenerator, const String& mediaStreamId, MediaStreamTrack& track)
     : RealtimeOutgoingMediaSourceGStreamer(RealtimeOutgoingMediaSourceGStreamer::Type::Audio, ssrcGenerator, mediaStreamId, track)
+{
+    initialize();
+}
+
+RealtimeOutgoingAudioSourceGStreamer::RealtimeOutgoingAudioSourceGStreamer(const RefPtr<UniqueSSRCGenerator>& ssrcGenerator)
+    : RealtimeOutgoingMediaSourceGStreamer(RealtimeOutgoingMediaSourceGStreamer::Type::Audio, ssrcGenerator)
+{
+    initialize();
+
+    m_outgoingSource = gst_element_factory_make("audiotestsrc", nullptr);
+    gst_util_set_object_arg(G_OBJECT(m_outgoingSource.get()), "wave", "silence");
+    g_object_set(m_outgoingSource.get(), "is-live", TRUE, "do-timestamp", TRUE, nullptr);
+    gst_bin_add(GST_BIN_CAST(m_bin.get()), m_outgoingSource.get());
+}
+
+RealtimeOutgoingAudioSourceGStreamer::~RealtimeOutgoingAudioSourceGStreamer() = default;
+
+void RealtimeOutgoingAudioSourceGStreamer::initialize()
 {
     static std::once_flag debugRegisteredFlag;
     std::call_once(debugRegisteredFlag, [] {
@@ -42,10 +61,6 @@ RealtimeOutgoingAudioSourceGStreamer::RealtimeOutgoingAudioSourceGStreamer(const
     });
     static Atomic<uint64_t> sourceCounter = 0;
     gst_element_set_name(m_bin.get(), makeString("outgoing-audio-source-"_s, sourceCounter.exchangeAdd(1)).ascii().data());
-    m_audioconvert = makeGStreamerElement("audioconvert", nullptr);
-    m_audioresample = makeGStreamerElement("audioresample", nullptr);
-    m_inputCapsFilter = gst_element_factory_make("capsfilter", nullptr);
-    gst_bin_add_many(GST_BIN_CAST(m_bin.get()), m_audioconvert.get(), m_audioresample.get(), m_inputCapsFilter.get(), nullptr);
 }
 
 RTCRtpCapabilities RealtimeOutgoingAudioSourceGStreamer::rtpCapabilities() const
@@ -54,137 +69,16 @@ RTCRtpCapabilities RealtimeOutgoingAudioSourceGStreamer::rtpCapabilities() const
     return registryScanner.audioRtpCapabilities(GStreamerRegistryScanner::Configuration::Encoding);
 }
 
-bool RealtimeOutgoingAudioSourceGStreamer::setPayloadType(const GRefPtr<GstCaps>& codecPreferences)
-{
-    auto caps = adoptGRef(gst_caps_copy(codecPreferences.get()));
-    GST_DEBUG_OBJECT(m_bin.get(), "Setting payload caps: %" GST_PTR_FORMAT, caps.get());
-    // FIXME: We use only the first structure of the caps. This not be the right approach specially
-    // we don't have a payloader or encoder for that format.
-    GUniquePtr<GstStructure> structure(gst_structure_copy(gst_caps_get_structure(caps.get(), 0)));
-    String encoding;
-    if (auto encodingName = gstStructureGetString(structure.get(), "encoding-name"_s))
-        encoding = encodingName.convertToASCIILowercase();
-    else {
-        GST_ERROR_OBJECT(m_bin.get(), "encoding-name not found");
-        return false;
-    }
-
-    auto& registryScanner = GStreamerRegistryScanner::singleton();
-    auto lookupResult = registryScanner.isRtpPacketizerSupported(encoding);
-    if (!lookupResult) {
-        GST_ERROR_OBJECT(m_bin.get(), "RTP payloader not found for encoding %s", encoding.ascii().data());
-        return false;
-    }
-    m_payloader = gst_element_factory_create(lookupResult.factory.get(), nullptr);
-    GST_DEBUG_OBJECT(m_bin.get(), "Using %" GST_PTR_FORMAT " for %s RTP packetizing", m_payloader.get(), encoding.ascii().data());
-
-    m_inputCaps = adoptGRef(gst_caps_new_any());
-
-    if (encoding == "opus"_s) {
-        m_encoder = makeGStreamerElement("opusenc", nullptr);
-        if (!m_encoder)
-            return false;
-
-        gst_structure_set(structure.get(), "encoding-name", G_TYPE_STRING, "OPUS", nullptr);
-
-        // FIXME: Enable dtx too?
-        gst_util_set_object_arg(G_OBJECT(m_encoder.get()), "audio-type", "voice");
-        g_object_set(m_encoder.get(), "perfect-timestamp", TRUE, nullptr);
-
-        if (auto useInbandFec = gstStructureGetString(structure.get(), "useinbandfec"_s)) {
-            if (useInbandFec == "1"_s)
-                g_object_set(m_encoder.get(), "inband-fec", true, nullptr);
-            gst_structure_remove_field(structure.get(), "useinbandfec");
-        }
-
-        if (auto isStereo = gstStructureGetString(structure.get(), "stereo"_s)) {
-            if (isStereo == "1"_s)
-                m_inputCaps = adoptGRef(gst_caps_new_simple("audio/x-raw", "channels", G_TYPE_INT, 2, nullptr));
-            gst_structure_remove_field(structure.get(), "stereo");
-        }
-
-        if (gst_caps_is_any(m_inputCaps.get())) {
-            if (auto encodingParameters = gstStructureGetString(structure.get(), "encoding-params"_s)) {
-                if (auto channels = parseIntegerAllowingTrailingJunk<int>(encodingParameters))
-                    m_inputCaps = adoptGRef(gst_caps_new_simple("audio/x-raw", "channels", G_TYPE_INT, *channels, nullptr));
-            }
-        }
-    } else if (encoding == "g722"_s)
-        m_encoder = makeGStreamerElement("avenc_g722", nullptr);
-    else if (encoding == "pcma"_s)
-        m_encoder = makeGStreamerElement("alawenc", nullptr);
-    else if (encoding == "pcmu"_s)
-        m_encoder = makeGStreamerElement("mulawenc", nullptr);
-    else {
-        GST_ERROR_OBJECT(m_bin.get(), "Unsupported outgoing audio encoding: %s", encoding.ascii().data());
-        return false;
-    }
-
-    if (!m_encoder) {
-        GST_ERROR_OBJECT(m_bin.get(), "Encoder not found for encoding %s", encoding.ascii().data());
-        return false;
-    }
-
-    // Align MTU with libwebrtc implementation, also helping to reduce packet fragmentation.
-    g_object_set(m_payloader.get(), "auto-header-extension", TRUE, "mtu", 1200, nullptr);
-
-    if (auto minPTime = gstStructureGetString(structure.get(), "minptime"_s)) {
-        if (auto value = parseIntegerAllowingTrailingJunk<int64_t>(minPTime)) {
-            if (gstObjectHasProperty(m_payloader.get(), "min-ptime"))
-                g_object_set(m_payloader.get(), "min-ptime", *value * GST_MSECOND, nullptr);
-            else
-                GST_WARNING_OBJECT(m_payloader.get(), "min-ptime property not supported");
-        }
-        gst_structure_remove_field(structure.get(), "minptime");
-    }
-
-    if (auto payloadType = gstStructureGet<int>(structure.get(), "payload"_s)) {
-        g_object_set(m_payloader.get(), "pt", *payloadType, nullptr);
-        gst_structure_remove_field(structure.get(), "payload");
-    }
-
-    if (m_payloaderState) {
-        g_object_set(m_payloader.get(), "seqnum-offset", m_payloaderState->seqnum, nullptr);
-        m_payloaderState.reset();
-    }
-
-    auto rtpCaps = adoptGRef(gst_caps_new_empty());
-
-    // When not present in caps, the vad support of the ssrc-audio-level extension should be
-    // enabled. In order to prevent caps negotiation issues with downstream, explicitely set it.
-    setSsrcAudioLevelVadOn(structure.get());
-
-    gst_caps_append_structure(rtpCaps.get(), structure.release());
-
-    g_object_set(m_inputCapsFilter.get(), "caps", m_inputCaps.get(), nullptr);
-    g_object_set(m_capsFilter.get(), "caps", rtpCaps.get(), nullptr);
-    GST_DEBUG_OBJECT(m_bin.get(), "RTP caps: %" GST_PTR_FORMAT, rtpCaps.get());
-
-    gst_bin_add_many(GST_BIN_CAST(m_bin.get()), m_payloader.get(), m_encoder.get(), nullptr);
-
-    auto preEncoderSinkPad = adoptGRef(gst_element_get_static_pad(m_preEncoderQueue.get(), "sink"));
-    if (!gst_pad_is_linked(preEncoderSinkPad.get())) {
-        if (!gst_element_link_many(m_outgoingSource.get(), m_liveSync.get(), m_audioconvert.get(), m_audioresample.get(), m_inputCapsFilter.get(), m_preEncoderQueue.get(), nullptr)) {
-            GST_ERROR_OBJECT(m_bin.get(), "Unable to link outgoing source to pre-encoder queue");
-            return false;
-        }
-    }
-
-    return gst_element_link_many(m_preEncoderQueue.get(), m_encoder.get(), m_payloader.get(), m_postEncoderQueue.get(), nullptr);
-}
-
-void RealtimeOutgoingAudioSourceGStreamer::setParameters(GUniquePtr<GstStructure>&& parameters)
+GRefPtr<GstPad> RealtimeOutgoingAudioSourceGStreamer::outgoingSourcePad() const
 {
-    m_parameters = WTFMove(parameters);
+    if (WEBKIT_IS_MEDIA_STREAM_SRC(m_outgoingSource.get()))
+        return adoptGRef(gst_element_get_static_pad(m_outgoingSource.get(), "audio_src0"));
+    return adoptGRef(gst_element_get_static_pad(m_outgoingSource.get(), "src"));
 }
 
-void RealtimeOutgoingAudioSourceGStreamer::teardown()
+RefPtr<GStreamerRTPPacketizer> RealtimeOutgoingAudioSourceGStreamer::createPacketizer(RefPtr<UniqueSSRCGenerator> ssrcGenerator, const GstStructure* codecParameters, GUniquePtr<GstStructure>&& encodingParameters)
 {
-    RealtimeOutgoingMediaSourceGStreamer::teardown();
-    m_audioconvert.clear();
-    m_audioresample.clear();
-    m_inputCaps.clear();
-    m_inputCaps.clear();
+    return GStreamerAudioRTPPacketizer::create(ssrcGenerator, codecParameters, WTFMove(encodingParameters));
 }
 
 #undef GST_CAT_DEFAULT
diff --git a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.h b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.h
index ce6c9a8997..4656742261 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.h
@@ -27,22 +27,27 @@ namespace WebCore {
 
 class RealtimeOutgoingAudioSourceGStreamer final : public RealtimeOutgoingMediaSourceGStreamer {
 public:
-    static Ref<RealtimeOutgoingAudioSourceGStreamer> create(const RefPtr<UniqueSSRCGenerator>& ssrcGenerator, const String& mediaStreamId, MediaStreamTrack& track) { return adoptRef(*new RealtimeOutgoingAudioSourceGStreamer(ssrcGenerator, mediaStreamId, track)); }
-
-    bool setPayloadType(const GRefPtr<GstCaps>&) final;
-    void setParameters(GUniquePtr<GstStructure>&&) final;
-    void teardown() final;
+    static Ref<RealtimeOutgoingAudioSourceGStreamer> create(const RefPtr<UniqueSSRCGenerator>& ssrcGenerator, const String& mediaStreamId, MediaStreamTrack& track)
+    {
+        return adoptRef(*new RealtimeOutgoingAudioSourceGStreamer(ssrcGenerator, mediaStreamId, track));
+    }
+    static Ref<RealtimeOutgoingAudioSourceGStreamer> createMuted(const RefPtr<UniqueSSRCGenerator>& ssrcGenerator)
+    {
+        return adoptRef(*new RealtimeOutgoingAudioSourceGStreamer(ssrcGenerator));
+    }
+    ~RealtimeOutgoingAudioSourceGStreamer();
+
+    WARN_UNUSED_RETURN GRefPtr<GstPad> outgoingSourcePad() const final;
+    RefPtr<GStreamerRTPPacketizer> createPacketizer(RefPtr<UniqueSSRCGenerator>, const GstStructure*, GUniquePtr<GstStructure>&&) final;
 
 protected:
     explicit RealtimeOutgoingAudioSourceGStreamer(const RefPtr<UniqueSSRCGenerator>&, const String& mediaStreamId, MediaStreamTrack&);
+    explicit RealtimeOutgoingAudioSourceGStreamer(const RefPtr<UniqueSSRCGenerator>&);
 
 private:
-    RTCRtpCapabilities rtpCapabilities() const final;
+    void initialize();
 
-    GRefPtr<GstElement> m_audioconvert;
-    GRefPtr<GstElement> m_audioresample;
-    GRefPtr<GstElement> m_inputCapsFilter;
-    GRefPtr<GstCaps> m_inputCaps;
+    RTCRtpCapabilities rtpCapabilities() const final;
 };
 
 } // namespace WebCore
diff --git a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp
index 7802b619eb..7a35d185b0 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp
@@ -31,7 +31,9 @@
 #undef GST_USE_UNSTABLE_API
 
 #include <wtf/UUID.h>
+#include <wtf/glib/WTFGType.h>
 #include <wtf/text/MakeString.h>
+#include <wtf/text/StringToIntegerConversion.h>
 
 GST_DEBUG_CATEGORY(webkit_webrtc_outgoing_media_debug);
 #define GST_CAT_DEFAULT webkit_webrtc_outgoing_media_debug
@@ -43,6 +45,36 @@ RealtimeOutgoingMediaSourceGStreamer::RealtimeOutgoingMediaSourceGStreamer(Type
     , m_mediaStreamId(mediaStreamId)
     , m_trackId(track.id())
     , m_ssrcGenerator(ssrcGenerator)
+{
+    initialize();
+
+    m_track = &track.privateTrack();
+    m_outgoingSource = webkitMediaStreamSrcNew();
+    GST_DEBUG_OBJECT(m_bin.get(), "Created outgoing source %" GST_PTR_FORMAT, m_outgoingSource.get());
+    gst_bin_add(GST_BIN_CAST(m_bin.get()), m_outgoingSource.get());
+    webkitMediaStreamSrcAddTrack(WEBKIT_MEDIA_STREAM_SRC(m_outgoingSource.get()), m_track.get());
+}
+
+RealtimeOutgoingMediaSourceGStreamer::RealtimeOutgoingMediaSourceGStreamer(Type type, const RefPtr<UniqueSSRCGenerator>& ssrcGenerator)
+    : m_type(type)
+    , m_mediaStreamId(createVersion4UUIDString())
+    , m_trackId(emptyString())
+    , m_ssrcGenerator(ssrcGenerator)
+{
+    initialize();
+}
+
+RealtimeOutgoingMediaSourceGStreamer::~RealtimeOutgoingMediaSourceGStreamer()
+{
+    stopUpdatingStats();
+    if (m_transceiver)
+        g_signal_handlers_disconnect_by_data(m_transceiver.get(), this);
+
+    if (m_track)
+        m_track->removeObserver(*this);
+}
+
+void RealtimeOutgoingMediaSourceGStreamer::initialize()
 {
     static std::once_flag debugRegisteredFlag;
     std::call_once(debugRegisteredFlag, [] {
@@ -51,34 +83,18 @@ RealtimeOutgoingMediaSourceGStreamer::RealtimeOutgoingMediaSourceGStreamer(Type
 
     m_bin = gst_bin_new(nullptr);
 
-    if (track.isCanvas()) {
-        m_liveSync = makeGStreamerElement("livesync", nullptr);
-        if (!m_liveSync) {
-            GST_WARNING_OBJECT(m_bin.get(), "GStreamer element livesync not found. Canvas streaming to PeerConnection will not work as expected, falling back to identity element.");
-            m_liveSync = gst_element_factory_make("identity", nullptr);
-        }
-    } else
-        m_liveSync = gst_element_factory_make("identity", nullptr);
-
-    // Both livesync and identity have a single-segment property, so no need for checks here.
-    g_object_set(m_liveSync.get(), "single-segment", TRUE, nullptr);
+    m_tee = gst_element_factory_make("tee", nullptr);
 
-    m_preEncoderQueue = gst_element_factory_make("queue", nullptr);
-    m_postEncoderQueue = gst_element_factory_make("queue", nullptr);
-    m_capsFilter = gst_element_factory_make("capsfilter", nullptr);
+    m_rtpFunnel = gst_element_factory_make("rtpfunnel", nullptr);
+    if (gstObjectHasProperty(m_rtpFunnel.get(), "forward-unknown-ssrc"))
+        g_object_set(m_rtpFunnel.get(), "forward-unknown-ssrc", TRUE, nullptr);
 
-    gst_bin_add_many(GST_BIN_CAST(m_bin.get()), m_liveSync.get(), m_preEncoderQueue.get(), m_postEncoderQueue.get(), m_capsFilter.get(), nullptr);
+    m_rtpCapsfilter = gst_element_factory_make("capsfilter", nullptr);
+    gst_bin_add_many(GST_BIN_CAST(m_bin.get()), m_tee.get(), m_rtpFunnel.get(), m_rtpCapsfilter.get(), nullptr);
+    gst_element_link(m_rtpFunnel.get(), m_rtpCapsfilter.get());
 
-    auto srcPad = adoptGRef(gst_element_get_static_pad(m_capsFilter.get(), "src"));
+    auto srcPad = adoptGRef(gst_element_get_static_pad(m_rtpCapsfilter.get(), "src"));
     gst_element_add_pad(m_bin.get(), gst_ghost_pad_new("src", srcPad.get()));
-
-    m_track = &track.privateTrack();
-    initializeFromTrack();
-}
-
-RealtimeOutgoingMediaSourceGStreamer::~RealtimeOutgoingMediaSourceGStreamer()
-{
-    teardown();
 }
 
 const GRefPtr<GstCaps>& RealtimeOutgoingMediaSourceGStreamer::allowedCaps() const
@@ -87,7 +103,7 @@ const GRefPtr<GstCaps>& RealtimeOutgoingMediaSourceGStreamer::allowedCaps() cons
         return m_allowedCaps;
 
     auto sdpMsIdLine = makeString(m_mediaStreamId, ' ', m_trackId);
-    m_allowedCaps = capsFromRtpCapabilities(m_ssrcGenerator, rtpCapabilities(), [&sdpMsIdLine](GstStructure* structure) {
+    m_allowedCaps = capsFromRtpCapabilities(rtpCapabilities(), [&sdpMsIdLine](GstStructure* structure) {
         gst_structure_set(structure, "a-msid", G_TYPE_STRING, sdpMsIdLine.utf8().data(), nullptr);
     });
 
@@ -95,6 +111,13 @@ const GRefPtr<GstCaps>& RealtimeOutgoingMediaSourceGStreamer::allowedCaps() cons
     return m_allowedCaps;
 }
 
+GRefPtr<GstCaps> RealtimeOutgoingMediaSourceGStreamer::rtpCaps() const
+{
+    GRefPtr<GstCaps> caps;
+    g_object_get(m_rtpCapsfilter.get(), "caps", &caps.outPtr(), nullptr);
+    return caps;
+}
+
 void RealtimeOutgoingMediaSourceGStreamer::start()
 {
     if (!m_isStopped) {
@@ -107,15 +130,16 @@ void RealtimeOutgoingMediaSourceGStreamer::start()
     m_isStopped = false;
 
     if (m_transceiver) {
-        auto pad = adoptGRef(gst_element_get_static_pad(m_liveSync.get(), "src"));
+        auto pad = outgoingSourcePad();
         if (!gst_pad_is_linked(pad.get())) {
             GST_DEBUG_OBJECT(m_bin.get(), "Codec preferences haven't changed before startup, ensuring source is linked");
             codecPreferencesChanged();
         }
     }
 
-    gst_element_link(m_outgoingSource.get(), m_liveSync.get());
     gst_element_sync_state_with_parent(m_bin.get());
+
+    startUpdatingStats();
 }
 
 void RealtimeOutgoingMediaSourceGStreamer::stop()
@@ -126,12 +150,6 @@ void RealtimeOutgoingMediaSourceGStreamer::stop()
     m_track = nullptr;
 }
 
-void RealtimeOutgoingMediaSourceGStreamer::flush()
-{
-    gst_element_send_event(m_outgoingSource.get(), gst_event_new_flush_start());
-    gst_element_send_event(m_outgoingSource.get(), gst_event_new_flush_stop(FALSE));
-}
-
 void RealtimeOutgoingMediaSourceGStreamer::stopOutgoingSource()
 {
     if (!m_track)
@@ -143,11 +161,17 @@ void RealtimeOutgoingMediaSourceGStreamer::stopOutgoingSource()
     if (!m_outgoingSource)
         return;
 
-    webkitMediaStreamSrcSignalEndOfStream(WEBKIT_MEDIA_STREAM_SRC(m_outgoingSource.get()));
+    if (WEBKIT_IS_MEDIA_STREAM_SRC(m_outgoingSource.get()))
+        webkitMediaStreamSrcSignalEndOfStream(WEBKIT_MEDIA_STREAM_SRC_CAST(m_outgoingSource.get()));
+    else
+        gst_element_send_event(m_outgoingSource.get(), gst_event_new_eos());
 
     gst_element_set_locked_state(m_outgoingSource.get(), TRUE);
 
-    gst_element_unlink(m_outgoingSource.get(), m_liveSync.get());
+    if (m_preProcessor)
+        gst_element_unlink_many(m_outgoingSource.get(), m_preProcessor.get(), m_tee.get(), nullptr);
+    else
+        gst_element_unlink(m_outgoingSource.get(), m_tee.get());
 
     gst_element_set_state(m_outgoingSource.get(), GST_STATE_NULL);
     gst_bin_remove(GST_BIN_CAST(m_bin.get()), m_outgoingSource.get());
@@ -171,30 +195,24 @@ void RealtimeOutgoingMediaSourceGStreamer::sourceEnabledChanged()
 
     m_enabled = m_track->enabled();
     GST_DEBUG_OBJECT(m_bin.get(), "Enabled state changed to %s", boolForPrinting(m_enabled));
+    if (m_enabled)
+        startUpdatingStats();
+    else
+        stopUpdatingStats();
 }
 
-void RealtimeOutgoingMediaSourceGStreamer::initializeFromTrack()
+void RealtimeOutgoingMediaSourceGStreamer::initializeSourceFromTrackPrivate()
 {
     if (!m_track)
         return;
     m_muted = m_track->muted();
     m_enabled = m_track->enabled();
     GST_DEBUG_OBJECT(m_bin.get(), "Initializing from track, muted: %s, enabled: %s", boolForPrinting(m_muted), boolForPrinting(m_enabled));
-
-    if (m_outgoingSource)
-        return;
-
-    m_outgoingSource = webkitMediaStreamSrcNew();
-    GST_DEBUG_OBJECT(m_bin.get(), "Created outgoing source %" GST_PTR_FORMAT, m_outgoingSource.get());
-    gst_bin_add(GST_BIN_CAST(m_bin.get()), m_outgoingSource.get());
-    webkitMediaStreamSrcAddTrack(WEBKIT_MEDIA_STREAM_SRC(m_outgoingSource.get()), m_track.get());
-    GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN_CAST(m_bin.get()), GST_DEBUG_GRAPH_SHOW_ALL, "outgoing-media-track-initialized");
 }
 
 void RealtimeOutgoingMediaSourceGStreamer::link()
 {
     GST_DEBUG_OBJECT(m_bin.get(), "Linking webrtcbin pad %" GST_PTR_FORMAT, m_webrtcSinkPad.get());
-    gst_element_link(m_postEncoderQueue.get(), m_capsFilter.get());
 
     auto srcPad = adoptGRef(gst_element_get_static_pad(m_bin.get(), "src"));
     gst_pad_link(srcPad.get(), m_webrtcSinkPad.get());
@@ -209,147 +227,101 @@ void RealtimeOutgoingMediaSourceGStreamer::setSinkPad(GRefPtr<GstPad>&& pad)
         g_signal_handlers_disconnect_by_data(m_transceiver.get(), this);
 
     g_object_get(m_webrtcSinkPad.get(), "transceiver", &m_transceiver.outPtr(), nullptr);
+
     g_signal_connect_swapped(m_transceiver.get(), "notify::codec-preferences", G_CALLBACK(+[](RealtimeOutgoingMediaSourceGStreamer* source) {
         source->codecPreferencesChanged();
     }), this);
     g_object_get(m_transceiver.get(), "sender", &m_sender.outPtr(), nullptr);
+
+    checkMid();
+    g_signal_connect_swapped(m_transceiver.get(), "notify::mid", G_CALLBACK(+[](RealtimeOutgoingMediaSourceGStreamer* source) {
+        source->checkMid();
+    }), this);
 }
 
-GUniquePtr<GstStructure> RealtimeOutgoingMediaSourceGStreamer::parameters()
+void RealtimeOutgoingMediaSourceGStreamer::checkMid()
 {
-    if (!m_parameters) {
-        auto transactionId = createVersion4UUIDString();
-        m_parameters.reset(gst_structure_new("send-parameters", "transaction-id", G_TYPE_STRING, transactionId.ascii().data(), nullptr));
+    GUniqueOutPtr<char> mid;
+    g_object_get(m_transceiver.get(), "mid", &mid.outPtr(), nullptr);
+    if (!mid)
+        return;
 
-        GUniquePtr<GstStructure> encodingParameters(gst_structure_new("encoding-parameters", "active", G_TYPE_BOOLEAN, TRUE, nullptr));
+    auto newMid = makeString(span(mid.get()));
+    if (newMid == m_mid)
+        return;
 
-        if (m_payloader) {
-            uint32_t ssrc;
-            g_object_get(m_payloader.get(), "ssrc", &ssrc, nullptr);
-            gst_structure_set(encodingParameters.get(), "ssrc", G_TYPE_UINT, ssrc, nullptr);
-        }
-        fillEncodingParameters(encodingParameters);
-
-        GValue encodingsValue = G_VALUE_INIT;
-        g_value_init(&encodingsValue, GST_TYPE_LIST);
-        GValue value = G_VALUE_INIT;
-        g_value_init(&value, GST_TYPE_STRUCTURE);
-        gst_value_set_structure(&value, encodingParameters.get());
-        gst_value_list_append_value(&encodingsValue, &value);
-        g_value_unset(&value);
-        gst_structure_take_value(m_parameters.get(), "encodings", &encodingsValue);
-    }
-    return GUniquePtr<GstStructure>(gst_structure_copy(m_parameters.get()));
-}
+    m_mid = WTFMove(newMid);
+    for (auto& packetizer : m_packetizers)
+        packetizer->ensureMidExtension(m_mid);
 
-void RealtimeOutgoingMediaSourceGStreamer::teardown()
-{
-    if (m_transceiver)
-        g_signal_handlers_disconnect_by_data(m_transceiver.get(), this);
+    GRefPtr<GstCaps> rtpCaps;
+    g_object_get(m_rtpCapsfilter.get(), "caps", &rtpCaps.outPtr(), nullptr);
+    if (gst_caps_is_any(rtpCaps.get()) || !gst_caps_get_size(rtpCaps.get()))
+        return;
 
-    stopOutgoingSource();
+    GUniquePtr<GstStructure> structure(gst_structure_copy(gst_caps_get_structure(rtpCaps.get(), 0)));
+    auto lookupResults = lookupRtpExtensions(structure.get());
+    if (lookupResults.hasMidExtension)
+        return;
 
-    if (GST_IS_PAD(m_webrtcSinkPad.get())) {
-        auto srcPad = adoptGRef(gst_element_get_static_pad(m_bin.get(), "src"));
-        if (gst_pad_unlink(srcPad.get(), m_webrtcSinkPad.get())) {
-            GST_DEBUG_OBJECT(m_bin.get(), "Removing webrtcbin pad %" GST_PTR_FORMAT, m_webrtcSinkPad.get());
-            if (auto parent = adoptGRef(gst_pad_get_parent_element(m_webrtcSinkPad.get())))
-                gst_element_release_request_pad(parent.get(), m_webrtcSinkPad.get());
-        }
-    }
+    lookupResults.lastIdentifier++;
+    auto extensionIdentifier = makeString("extmap-"_s, lookupResults.lastIdentifier);
+    gst_structure_set(structure.get(), extensionIdentifier.ascii().data(), G_TYPE_STRING, GST_RTP_HDREXT_BASE "sdes:mid", nullptr);
 
-    gst_element_set_locked_state(m_bin.get(), TRUE);
-    gst_element_set_state(m_bin.get(), GST_STATE_NULL);
-    if (auto pipeline = adoptGRef(gst_element_get_parent(m_bin.get())))
-        gst_bin_remove(GST_BIN_CAST(pipeline.get()), m_bin.get());
-    gst_element_set_locked_state(m_bin.get(), FALSE);
-
-    m_bin.clear();
-    m_liveSync.clear();
-    m_valve.clear();
-    m_preEncoderQueue.clear();
-    m_encoder.clear();
-    m_payloader.clear();
-    m_postEncoderQueue.clear();
-    m_capsFilter.clear();
-    m_allowedCaps.clear();
-    m_transceiver.clear();
-    m_sender.clear();
-    m_webrtcSinkPad.clear();
-    m_parameters.reset();
+    auto newCaps = adoptGRef(gst_caps_new_full(structure.release(), nullptr));
+    GST_DEBUG_OBJECT(m_bin.get(), "Setting RTP funnel caps to %" GST_PTR_FORMAT, newCaps.get());
+    g_object_set(m_rtpCapsfilter.get(), "caps", newCaps.get(), nullptr);
 }
 
-void RealtimeOutgoingMediaSourceGStreamer::unlinkPayloader()
+GUniquePtr<GstStructure> RealtimeOutgoingMediaSourceGStreamer::parameters()
 {
-    PayloaderState state;
-    g_object_get(m_payloader.get(), "seqnum", &state.seqnum, nullptr);
-    if (state.seqnum < 65535)
-        state.seqnum++;
-    m_payloaderState = state;
-
-    if (m_type == RealtimeOutgoingMediaSourceGStreamer::Type::Audio)
-        gst_element_set_state(m_encoder.get(), GST_STATE_NULL);
-    gst_element_set_state(m_payloader.get(), GST_STATE_NULL);
-    if (m_type == RealtimeOutgoingMediaSourceGStreamer::Type::Audio) {
-        gst_element_unlink_many(m_preEncoderQueue.get(), m_encoder.get(), m_payloader.get(), m_postEncoderQueue.get(), nullptr);
-        gst_bin_remove_many(GST_BIN_CAST(m_bin.get()), m_payloader.get(), m_encoder.get(), nullptr);
-        m_encoder.clear();
-    } else {
-        gst_element_unlink_many(m_encoder.get(), m_payloader.get(), m_postEncoderQueue.get(), nullptr);
-        gst_bin_remove(GST_BIN_CAST(m_bin.get()), m_payloader.get());
-    }
-    m_payloader.clear();
+    if (!m_parameters)
+        return nullptr;
+    return GUniquePtr<GstStructure>(gst_structure_copy(m_parameters.get()));
 }
 
 void RealtimeOutgoingMediaSourceGStreamer::codecPreferencesChanged()
 {
-    if (m_padBlockedProbe)
+    if (GST_STATE(m_bin.get()) > GST_STATE_READY) {
+        GST_WARNING_OBJECT(m_bin.get(), "Changing codec preferences on an ongoing connection is not supported");
         return;
+    }
 
     GRefPtr<GstCaps> codecPreferences;
     g_object_get(m_transceiver.get(), "codec-preferences", &codecPreferences.outPtr(), nullptr);
     GST_DEBUG_OBJECT(m_bin.get(), "Codec preferences changed on transceiver %" GST_PTR_FORMAT " to: %" GST_PTR_FORMAT, m_transceiver.get(), codecPreferences.get());
 
-    if (m_payloader) {
-        // We have a linked encoder/payloader, so to replace the audio encoder and audio/video
-        // payloader we need to block upstream data flow, send an EOS event to the first element we
-        // want to remove (encoder for audio, payloader for video) and wait it reaches the payloader
-        // source pad. Then we can unlink/clean-up elements.
-        auto srcPad = adoptGRef(gst_element_get_static_pad(m_preEncoderQueue.get(), "src"));
-        m_padBlockedProbe = gst_pad_add_probe(srcPad.get(), GST_PAD_PROBE_TYPE_BLOCK_DOWNSTREAM, reinterpret_cast<GstPadProbeCallback>(+[](GstPad* pad, GstPadProbeInfo* info, gpointer userData) -> GstPadProbeReturn {
-            gst_pad_remove_probe(pad, GST_PAD_PROBE_INFO_ID(info));
-
-            auto self = reinterpret_cast<RealtimeOutgoingMediaSourceGStreamer*>(userData);
-            auto srcPad = adoptGRef(gst_element_get_static_pad(self->m_payloader.get(), "src"));
-            gst_pad_add_probe(srcPad.get(), static_cast<GstPadProbeType>(GST_PAD_PROBE_TYPE_BLOCK | GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM), reinterpret_cast<GstPadProbeCallback>(+[](GstPad* pad, GstPadProbeInfo* info, gpointer userData) -> GstPadProbeReturn {
-                if (GST_EVENT_TYPE(GST_PAD_PROBE_INFO_DATA(info)) != GST_EVENT_EOS)
-                    return GST_PAD_PROBE_OK;
-
-                gst_pad_remove_probe(pad, GST_PAD_PROBE_INFO_ID(info));
-
-                auto self = reinterpret_cast<RealtimeOutgoingMediaSourceGStreamer*>(userData);
-                self->unlinkPayloader();
-                self->m_padBlockedProbe = 0;
-                self->codecPreferencesChanged();
-                return GST_PAD_PROBE_DROP;
-            }), userData, nullptr);
-
-            auto head = self->m_encoder.get();
-            if (self->m_type == RealtimeOutgoingMediaSourceGStreamer::Type::Video)
-                head = self->m_payloader.get();
-            auto sinkPad = adoptGRef(gst_element_get_static_pad(head, "sink"));
-            gst_pad_send_event(sinkPad.get(), gst_event_new_eos());
-
-            return GST_PAD_PROBE_OK;
-        }), this, nullptr);
-        return;
+    HashMap<int, unsigned> payloaderStates;
+    while (!m_packetizers.isEmpty()) {
+        RefPtr packetizer = m_packetizers.takeLast();
+
+        int payloadType = packetizer->payloadType();
+        unsigned sequenceNumber = packetizer->currentSequenceNumberOffset();
+        payloaderStates.add(payloadType, sequenceNumber);
+
+        auto bin = packetizer->bin();
+        auto binSinkPad = adoptGRef(gst_element_get_static_pad(bin, "sink"));
+        auto teeSrcPad = adoptGRef(gst_pad_get_peer(binSinkPad.get()));
+        auto binSrcPad = adoptGRef(gst_element_get_static_pad(bin, "src"));
+        auto funnelSinkPad = adoptGRef(gst_pad_get_peer(binSrcPad.get()));
+        gst_element_set_state(bin, GST_STATE_NULL);
+        gst_bin_remove(GST_BIN_CAST(m_bin.get()), bin);
+        gst_element_release_request_pad(m_tee.get(), teeSrcPad.get());
+        gst_element_release_request_pad(m_rtpFunnel.get(), funnelSinkPad.get());
     }
 
-    if (!setPayloadType(codecPreferences)) {
+    if (!configurePacketizers(WTFMove(codecPreferences))) {
         GST_ERROR_OBJECT(m_bin.get(), "Unable to link encoder to webrtcbin");
         return;
     }
 
+    for (auto& packetizer : m_packetizers) {
+        int payloadType = packetizer->payloadType();
+        if (!payloaderStates.contains(payloadType))
+            continue;
+        packetizer->setSequenceNumberOffset(payloaderStates.get(payloadType));
+    }
+
     gst_bin_sync_children_states(GST_BIN_CAST(m_bin.get()));
     gst_element_sync_state_with_parent(m_bin.get());
     GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN_CAST(m_bin.get()), GST_DEBUG_GRAPH_SHOW_ALL, "outgoing-media-new-codec-prefs");
@@ -358,12 +330,323 @@ void RealtimeOutgoingMediaSourceGStreamer::codecPreferencesChanged()
 
 void RealtimeOutgoingMediaSourceGStreamer::replaceTrack(RefPtr<MediaStreamTrackPrivate>&& newTrack)
 {
+    if (!m_track)
+        return;
+
     m_track->removeObserver(*this);
-    webkitMediaStreamSrcReplaceTrack(WEBKIT_MEDIA_STREAM_SRC(m_outgoingSource.get()), RefPtr(newTrack));
+    webkitMediaStreamSrcReplaceTrack(WEBKIT_MEDIA_STREAM_SRC_CAST(m_outgoingSource.get()), RefPtr(newTrack));
     m_track = WTFMove(newTrack);
     m_track->addObserver(*this);
-    flush();
-    GST_DEBUG_BIN_TO_DOT_FILE_WITH_TS(GST_BIN_CAST(m_bin.get()), GST_DEBUG_GRAPH_SHOW_ALL, "outgoing-media-replaced-track");
+}
+
+void RealtimeOutgoingMediaSourceGStreamer::setInitialParameters(GUniquePtr<GstStructure>&& parameters)
+{
+    m_parameters = WTFMove(parameters);
+    GST_DEBUG_OBJECT(m_bin.get(), "Initial encoding parameters: %" GST_PTR_FORMAT, m_parameters.get());
+}
+
+void RealtimeOutgoingMediaSourceGStreamer::configure(GRefPtr<GstCaps>&& allowedCaps)
+{
+    const auto encodingsValue = gst_structure_get_value(m_parameters.get(), "encodings");
+    RELEASE_ASSERT(GST_VALUE_HOLDS_LIST(encodingsValue));
+    unsigned encodingsSize = gst_value_list_get_size(encodingsValue);
+    if (UNLIKELY(!encodingsSize)) {
+        GST_WARNING_OBJECT(m_bin.get(), "Encodings list is empty, cancelling configuration");
+        return;
+    }
+
+    configurePacketizers(WTFMove(allowedCaps));
+}
+
+void RealtimeOutgoingMediaSourceGStreamer::setParameters(GUniquePtr<GstStructure>&& parameters)
+{
+    GST_DEBUG_OBJECT(m_bin.get(), "New encoding parameters: %" GST_PTR_FORMAT, parameters.get());
+    const auto encodingsValue = gst_structure_get_value(parameters.get(), "encodings");
+    RELEASE_ASSERT(GST_VALUE_HOLDS_LIST(encodingsValue));
+    unsigned encodingsSize = gst_value_list_get_size(encodingsValue);
+    if (UNLIKELY(!encodingsSize)) {
+        GST_WARNING_OBJECT(m_bin.get(), "Encodings list is empty, cancelling re-configuration");
+        return;
+    }
+
+    for (unsigned j = 0; j < encodingsSize; j++) {
+        auto encoding = gst_value_list_get_value(encodingsValue, j);
+        RELEASE_ASSERT(GST_VALUE_HOLDS_STRUCTURE(encoding));
+        GUniquePtr<GstStructure> encodingParameters(gst_structure_copy(gst_value_get_structure(encoding)));
+        auto rid = gstStructureGetString(encodingParameters.get(), "rid"_s);
+        if (!rid)
+            continue;
+
+        auto packetizer = getPacketizerForRid(rid);
+        if (!packetizer)
+            continue;
+
+        packetizer->reconfigure(WTFMove(encodingParameters));
+    }
+    m_parameters = WTFMove(parameters);
+}
+
+RefPtr<GStreamerRTPPacketizer> RealtimeOutgoingMediaSourceGStreamer::getPacketizerForRid(StringView rid)
+{
+    for (auto& packetizer : m_packetizers) {
+        if (packetizer->rtpStreamId() == rid)
+            return packetizer;
+    }
+    return nullptr;
+}
+
+bool RealtimeOutgoingMediaSourceGStreamer::linkPacketizer(RefPtr<GStreamerRTPPacketizer>&& packetizer)
+{
+    auto packetizerBin = packetizer->bin();
+    gst_bin_add(GST_BIN_CAST(m_bin.get()), packetizerBin);
+
+    GST_DEBUG_OBJECT(m_bin.get(), "Linking packetizer %" GST_PTR_FORMAT " to RTP funnel", packetizerBin);
+    if (!gst_element_link_many(m_tee.get(), packetizerBin, m_rtpFunnel.get(), nullptr)) {
+        GST_ERROR_OBJECT(m_bin.get(), "Unable to link packetizer to RTP funnel");
+        gst_bin_remove(GST_BIN_CAST(m_bin.get()), packetizerBin);
+        return false;
+    }
+    m_packetizers.append(WTFMove(packetizer));
+    return true;
+}
+
+bool RealtimeOutgoingMediaSourceGStreamer::linkSource()
+{
+    if (m_preProcessor)
+        return gst_element_link_many(m_outgoingSource.get(), m_preProcessor.get(), m_tee.get(), nullptr);
+
+    return gst_element_link(m_outgoingSource.get(), m_tee.get());
+}
+
+bool RealtimeOutgoingMediaSourceGStreamer::configurePacketizers(GRefPtr<GstCaps>&& codecPreferences)
+{
+    GST_DEBUG_OBJECT(m_bin.get(), "Configuring packetizers for caps %" GST_PTR_FORMAT, codecPreferences.get());
+    if (UNLIKELY(gst_caps_is_empty(codecPreferences.get()) || gst_caps_is_any(codecPreferences.get())))
+        return false;
+
+    if (m_outgoingSource) {
+        auto srcPad = outgoingSourcePad();
+        if (!gst_pad_is_linked(srcPad.get()))
+            linkSource();
+    }
+
+    auto rtpCaps = adoptGRef(gst_caps_new_empty());
+    unsigned totalCodecs = gst_caps_get_size(codecPreferences.get());
+    for (unsigned i = 0; i < totalCodecs; i++) {
+        const auto codecParameters = gst_caps_get_structure(codecPreferences.get(), i);
+
+        if (m_parameters) {
+            const auto encodingsValue = gst_structure_get_value(m_parameters.get(), "encodings");
+            RELEASE_ASSERT(GST_VALUE_HOLDS_LIST(encodingsValue));
+            auto totalEncodings = gst_value_list_get_size(encodingsValue);
+            if (UNLIKELY(!totalEncodings)) {
+                auto packetizer = createPacketizer(m_ssrcGenerator, codecParameters, nullptr);
+                if (!packetizer)
+                    continue;
+
+                if (linkPacketizer(WTFMove(packetizer))) {
+                    gst_caps_append_structure(rtpCaps.get(), gst_structure_copy(codecParameters));
+                    break;
+                }
+            }
+
+            bool codecIsValid = false;
+            for (unsigned j = 0; j < totalEncodings; j++) {
+                auto encoding = gst_value_list_get_value(encodingsValue, j);
+                RELEASE_ASSERT(GST_VALUE_HOLDS_STRUCTURE(encoding));
+                GUniquePtr<GstStructure> encodingParameters(gst_structure_copy(gst_value_get_structure(encoding)));
+                auto packetizer = createPacketizer(m_ssrcGenerator, codecParameters, WTFMove(encodingParameters));
+                if (!packetizer)
+                    continue;
+
+                auto rtpParameters = packetizer->rtpParameters();
+                if (UNLIKELY(!rtpParameters))
+                    continue;
+
+                codecIsValid = linkPacketizer(WTFMove(packetizer));
+                if (!codecIsValid)
+                    break;
+
+                gst_caps_append_structure(rtpCaps.get(), rtpParameters.release());
+            }
+
+            // TODO: Check optional "codecs" field.
+
+            if (codecIsValid)
+                break;
+
+        } else {
+            auto packetizer = createPacketizer(m_ssrcGenerator, codecParameters, nullptr);
+            if (!packetizer)
+                continue;
+
+            auto rtpParameters = packetizer->rtpParameters();
+            if (UNLIKELY(!rtpParameters))
+                continue;
+            if (linkPacketizer(WTFMove(packetizer))) {
+                gst_caps_append_structure(rtpCaps.get(), rtpParameters.release());
+                break;
+            }
+        }
+    }
+    if (m_packetizers.isEmpty()) {
+        GST_ERROR_OBJECT(m_bin.get(), "Unable to link any packetizer");
+        return false;
+    }
+
+    auto structure = gst_caps_get_structure(rtpCaps.get(), 0);
+
+    auto payloadType = gstStructureGet<int>(structure, "payload"_s);
+    if (!payloadType) {
+        auto& firstPacketizer = m_packetizers.first();
+        gst_structure_set(structure, "payload", G_TYPE_INT, firstPacketizer->payloadType(), nullptr);
+    }
+
+    StringBuilder simulcastBuilder;
+    const char* direction = "send";
+    simulcastBuilder.append(span(direction));
+    simulcastBuilder.append(' ');
+    unsigned totalStreams = 0;
+    for (auto& packetizer : m_packetizers) {
+        auto rtpStreamId = packetizer->rtpStreamId();
+        if (rtpStreamId.isEmpty())
+            continue;
+
+        if (totalStreams > 0)
+            simulcastBuilder.append(';');
+        simulcastBuilder.append(rtpStreamId);
+        gst_structure_set(structure, makeString("rid-"_s, rtpStreamId).ascii().data(), G_TYPE_STRING, direction, nullptr);
+        packetizer->configureExtensions();
+        totalStreams++;
+    }
+
+    auto lookupResults = lookupRtpExtensions(structure);
+    if (totalStreams) {
+        if (!lookupResults.hasRtpStreamIdExtension) {
+            lookupResults.lastIdentifier++;
+            auto extensionIdentifier = makeString("extmap-"_s, lookupResults.lastIdentifier);
+            gst_structure_set(structure, extensionIdentifier.ascii().data(), G_TYPE_STRING, GST_RTP_HDREXT_BASE "sdes:rtp-stream-id", nullptr);
+        }
+        if (!lookupResults.hasRtpRepairedStreamIdExtension) {
+            lookupResults.lastIdentifier++;
+            auto extensionIdentifier = makeString("extmap-"_s, lookupResults.lastIdentifier);
+            gst_structure_set(structure, extensionIdentifier.ascii().data(), G_TYPE_STRING, GST_RTP_HDREXT_BASE "sdes:repaired-rtp-stream-id", nullptr);
+        }
+
+        gst_structure_set(structure, "a-simulcast", G_TYPE_STRING, simulcastBuilder.toString().ascii().data(), nullptr);
+        GST_DEBUG_OBJECT(m_bin.get(), "Simulcast parameters: %" GST_PTR_FORMAT, structure);
+    }
+    if (!lookupResults.hasMidExtension) {
+        lookupResults.lastIdentifier++;
+        auto extensionIdentifier = makeString("extmap-"_s, lookupResults.lastIdentifier);
+        gst_structure_set(structure, extensionIdentifier.ascii().data(), G_TYPE_STRING, GST_RTP_HDREXT_BASE "sdes:mid", nullptr);
+    }
+
+    GST_DEBUG_OBJECT(m_bin.get(), "Setting RTP funnel caps to %" GST_PTR_FORMAT, rtpCaps.get());
+    g_object_set(m_rtpCapsfilter.get(), "caps", rtpCaps.get(), nullptr);
+    return true;
+}
+
+RealtimeOutgoingMediaSourceGStreamer::ExtensionLookupResults RealtimeOutgoingMediaSourceGStreamer::lookupRtpExtensions(const GstStructure* structure)
+{
+    ExtensionLookupResults lookupResults;
+    gstStructureForeach(structure, [&](auto id, const auto value) -> bool {
+        auto name = gstIdToString(id);
+        if (!name.startsWith("extmap-"_s))
+            return true;
+
+        auto identifier = WTF::parseInteger<int>(name.substring(7)).value_or(0);
+        if (UNLIKELY(!identifier))
+            return true;
+
+        lookupResults.lastIdentifier = std::max(lookupResults.lastIdentifier, identifier);
+
+        StringView uri;
+        if (G_VALUE_HOLDS_STRING(value))
+            uri = StringView::fromLatin1(g_value_get_string(value));
+        else if (GST_VALUE_HOLDS_ARRAY(value)) {
+            const auto uriValue = gst_value_array_get_value(value, 1);
+            uri = StringView::fromLatin1(g_value_get_string(uriValue));
+        } else
+            return true;
+
+        if (uri == GST_RTP_HDREXT_BASE "sdes:rtp-stream-id"_s)
+            lookupResults.hasRtpStreamIdExtension = true;
+        if (uri == GST_RTP_HDREXT_BASE "sdes:repaired-rtp-stream-id"_s)
+            lookupResults.hasRtpRepairedStreamIdExtension = true;
+        if (uri == GST_RTP_HDREXT_BASE "sdes:mid"_s)
+            lookupResults.hasMidExtension = true;
+
+        return true;
+    });
+    return lookupResults;
+}
+
+GUniquePtr<GstStructure> RealtimeOutgoingMediaSourceGStreamer::stats()
+{
+    GUniquePtr<GstStructure> stats(gst_structure_new_empty("outgoing-media-stats"));
+    for (auto& packetizer : m_packetizers) {
+        auto packetizerStats = packetizer->stats();
+        if (!packetizerStats)
+            continue;
+
+        auto [ssrc, structure] = *packetizerStats;
+        auto ssrcString = makeString(ssrc);
+        gst_structure_set(stats.get(), ssrcString.ascii().data(), GST_TYPE_STRUCTURE, structure, nullptr);
+    }
+    return stats;
+}
+
+void RealtimeOutgoingMediaSourceGStreamer::startUpdatingStats()
+{
+    GST_DEBUG_OBJECT(m_bin.get(), "Starting buffer monitoring for stats gathering");
+    forEach(m_packetizers, [](auto& packetizer) {
+        packetizer->startUpdatingStats();
+    });
+}
+
+void RealtimeOutgoingMediaSourceGStreamer::stopUpdatingStats()
+{
+    GST_DEBUG_OBJECT(m_bin.get(), "Stopping buffer monitoring for stats gathering");
+    forEach(m_packetizers, [](auto& packetizer) {
+        packetizer->stopUpdatingStats();
+    });
+}
+
+void RealtimeOutgoingMediaSourceGStreamer::teardown()
+{
+    if (m_transceiver)
+        g_signal_handlers_disconnect_by_data(m_transceiver.get(), this);
+
+    stopOutgoingSource();
+    stopUpdatingStats();
+
+    if (GST_IS_PAD(m_webrtcSinkPad.get())) {
+        auto srcPad = adoptGRef(gst_element_get_static_pad(m_bin.get(), "src"));
+        if (gst_pad_unlink(srcPad.get(), m_webrtcSinkPad.get())) {
+            GST_DEBUG_OBJECT(m_bin.get(), "Removing webrtcbin pad %" GST_PTR_FORMAT, m_webrtcSinkPad.get());
+            if (auto parent = adoptGRef(gst_pad_get_parent_element(m_webrtcSinkPad.get())))
+                gst_element_release_request_pad(parent.get(), m_webrtcSinkPad.get());
+        }
+    }
+
+    gst_element_set_locked_state(m_bin.get(), TRUE);
+    gst_element_set_state(m_bin.get(), GST_STATE_NULL);
+    if (auto pipeline = adoptGRef(gst_element_get_parent(m_bin.get())))
+        gst_bin_remove(GST_BIN_CAST(pipeline.get()), m_bin.get());
+    gst_element_set_locked_state(m_bin.get(), FALSE);
+
+    m_packetizers.clear();
+
+    m_bin.clear();
+    m_preProcessor.clear();
+    m_tee.clear();
+    m_rtpFunnel.clear();
+    m_allowedCaps.clear();
+    m_transceiver.clear();
+    m_sender.clear();
+    m_webrtcSinkPad.clear();
+    m_parameters.reset();
 }
 
 #undef GST_CAT_DEFAULT
diff --git a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h
index 9df02392ce..c00e3e811f 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h
@@ -22,6 +22,7 @@
 #if USE(GSTREAMER_WEBRTC)
 
 #include "GRefPtrGStreamer.h"
+#include "GStreamerRTPPacketizer.h"
 #include "GStreamerWebRTCUtils.h"
 #include "MediaStreamTrackPrivate.h"
 #include "RTCRtpCapabilities.h"
@@ -32,17 +33,17 @@ namespace WebCore {
 
 class MediaStreamTrack;
 
-class RealtimeOutgoingMediaSourceGStreamer : public ThreadSafeRefCounted<RealtimeOutgoingMediaSourceGStreamer>, public MediaStreamTrackPrivateObserver {
+class RealtimeOutgoingMediaSourceGStreamer : public ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr<RealtimeOutgoingMediaSourceGStreamer, WTF::DestructionThread::Main>, public MediaStreamTrackPrivateObserver {
 public:
     ~RealtimeOutgoingMediaSourceGStreamer();
-
     void start();
     void stop();
-    virtual void flush();
+
     const RefPtr<MediaStreamTrackPrivate>& track() const { return m_track; }
 
     const String& mediaStreamID() const { return m_mediaStreamId; }
     const GRefPtr<GstCaps>& allowedCaps() const;
+    WARN_UNUSED_RETURN GRefPtr<GstCaps> rtpCaps() const;
 
     void link();
     const GRefPtr<GstPad>& pad() const { return m_webrtcSinkPad; }
@@ -51,30 +52,42 @@ public:
     GRefPtr<GstWebRTCRTPSender> sender() const { return m_sender; }
     GRefPtr<GstElement> bin() const { return m_bin; }
 
-    virtual bool setPayloadType(const GRefPtr<GstCaps>&) { return false; }
-    virtual void teardown();
+    bool configurePacketizers(GRefPtr<GstCaps>&&);
 
     GUniquePtr<GstStructure> parameters();
-    virtual void fillEncodingParameters(const GUniquePtr<GstStructure>&) { }
-    virtual void setParameters(GUniquePtr<GstStructure>&&) { }
+    void setInitialParameters(GUniquePtr<GstStructure>&&);
+    void setParameters(GUniquePtr<GstStructure>&&);
+
+    void configure(GRefPtr<GstCaps>&&);
+
+    WARN_UNUSED_RETURN GUniquePtr<GstStructure> stats();
+
+    virtual WARN_UNUSED_RETURN GRefPtr<GstPad> outgoingSourcePad() const = 0;
+    virtual RefPtr<GStreamerRTPPacketizer> createPacketizer(RefPtr<UniqueSSRCGenerator>, const GstStructure*, GUniquePtr<GstStructure>&&) = 0;
 
     void replaceTrack(RefPtr<MediaStreamTrackPrivate>&&);
 
+    virtual void teardown();
+
 protected:
     enum Type {
         Audio,
         Video
     };
     explicit RealtimeOutgoingMediaSourceGStreamer(Type, const RefPtr<UniqueSSRCGenerator>&, const String& mediaStreamId, MediaStreamTrack&);
+    explicit RealtimeOutgoingMediaSourceGStreamer(Type, const RefPtr<UniqueSSRCGenerator>&);
 
-    void initializeFromTrack();
+    void initializeSourceFromTrackPrivate();
     virtual void sourceEnabledChanged();
 
     bool isStopped() const { return m_isStopped; }
 
+    bool linkPacketizer(RefPtr<GStreamerRTPPacketizer>&&);
+
     Type m_type;
     String m_mediaStreamId;
     String m_trackId;
+    String m_mid;
 
     bool m_enabled { true };
     bool m_muted { false };
@@ -83,13 +96,10 @@ protected:
     std::optional<RealtimeMediaSourceSettings> m_initialSettings;
     GRefPtr<GstElement> m_bin;
     GRefPtr<GstElement> m_outgoingSource;
-    GRefPtr<GstElement> m_liveSync;
-    GRefPtr<GstElement> m_valve;
-    GRefPtr<GstElement> m_preEncoderQueue;
-    GRefPtr<GstElement> m_encoder;
-    GRefPtr<GstElement> m_payloader;
-    GRefPtr<GstElement> m_postEncoderQueue;
-    GRefPtr<GstElement> m_capsFilter;
+    GRefPtr<GstElement> m_preProcessor;
+    GRefPtr<GstElement> m_tee;
+    GRefPtr<GstElement> m_rtpFunnel;
+    GRefPtr<GstElement> m_rtpCapsfilter;
     mutable GRefPtr<GstCaps> m_allowedCaps;
     GRefPtr<GstWebRTCRTPTransceiver> m_transceiver;
     GRefPtr<GstWebRTCRTPSender> m_sender;
@@ -97,28 +107,39 @@ protected:
     RefPtr<UniqueSSRCGenerator> m_ssrcGenerator;
     GUniquePtr<GstStructure> m_parameters;
 
-    struct PayloaderState {
-        unsigned seqnum;
-    };
-    std::optional<PayloaderState> m_payloaderState;
+    Vector<RefPtr<GStreamerRTPPacketizer>> m_packetizers;
 
 private:
+    void initialize();
+
     void sourceMutedChanged();
 
     void stopOutgoingSource();
 
+    bool linkSource();
     virtual RTCRtpCapabilities rtpCapabilities() const = 0;
     void codecPreferencesChanged();
 
     // MediaStreamTrackPrivateObserver API
     void trackMutedChanged(MediaStreamTrackPrivate&) override { sourceMutedChanged(); }
     void trackEnabledChanged(MediaStreamTrackPrivate&) override { sourceEnabledChanged(); }
-    void trackSettingsChanged(MediaStreamTrackPrivate&) override { initializeFromTrack(); }
+    void trackSettingsChanged(MediaStreamTrackPrivate&) override { initializeSourceFromTrackPrivate(); }
     void trackEnded(MediaStreamTrackPrivate&) override { }
 
-    void unlinkPayloader();
+    void checkMid();
+
+    struct ExtensionLookupResults {
+        bool hasRtpStreamIdExtension { false };
+        bool hasRtpRepairedStreamIdExtension { false };
+        bool hasMidExtension { false };
+        int lastIdentifier { 0 };
+    };
+    ExtensionLookupResults lookupRtpExtensions(const GstStructure*);
+
+    void startUpdatingStats();
+    void stopUpdatingStats();
 
-    unsigned long m_padBlockedProbe { 0 };
+    RefPtr<GStreamerRTPPacketizer> getPacketizerForRid(StringView);
 };
 
 } // namespace WebCore
diff --git a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp
index 22a25972db..b246b082e4 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp
+++ b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp
@@ -22,30 +22,38 @@
 
 #if USE(GSTREAMER_WEBRTC)
 
-#include "AV1Utilities.h"
 #include "GStreamerCommon.h"
+#include "GStreamerMediaStreamSource.h"
 #include "GStreamerRegistryScanner.h"
-#include "HEVCUtilities.h"
+#include "GStreamerVideoRTPPacketizer.h"
 #include "MediaStreamTrack.h"
-#include "VP9Utilities.h"
-#include "VideoEncoderPrivateGStreamer.h"
-#include <wtf/glib/WTFGType.h>
 #include <wtf/text/MakeString.h>
-#include <wtf/text/StringToIntegerConversion.h>
 
 GST_DEBUG_CATEGORY(webkit_webrtc_outgoing_video_debug);
 #define GST_CAT_DEFAULT webkit_webrtc_outgoing_video_debug
 
 namespace WebCore {
 
-struct RealtimeOutgoingVideoSourceHolder {
-    RefPtr<RealtimeOutgoingVideoSourceGStreamer> source;
-};
-WEBKIT_DEFINE_ASYNC_DATA_STRUCT(RealtimeOutgoingVideoSourceHolder)
-
-
 RealtimeOutgoingVideoSourceGStreamer::RealtimeOutgoingVideoSourceGStreamer(const RefPtr<UniqueSSRCGenerator>& ssrcGenerator, const String& mediaStreamId, MediaStreamTrack& track)
     : RealtimeOutgoingMediaSourceGStreamer(RealtimeOutgoingMediaSourceGStreamer::Type::Video, ssrcGenerator, mediaStreamId, track)
+{
+    initializePreProcessor();
+}
+
+RealtimeOutgoingVideoSourceGStreamer::RealtimeOutgoingVideoSourceGStreamer(const RefPtr<UniqueSSRCGenerator>& ssrcGenerator)
+    : RealtimeOutgoingMediaSourceGStreamer(RealtimeOutgoingMediaSourceGStreamer::Type::Video, ssrcGenerator)
+{
+    initializePreProcessor();
+
+    m_outgoingSource = gst_element_factory_make("videotestsrc", nullptr);
+    gst_util_set_object_arg(G_OBJECT(m_outgoingSource.get()), "pattern", "black");
+    g_object_set(m_outgoingSource.get(), "is-live", TRUE, "do-timestamp", TRUE, nullptr);
+    gst_bin_add(GST_BIN_CAST(m_bin.get()), m_outgoingSource.get());
+}
+
+RealtimeOutgoingVideoSourceGStreamer::~RealtimeOutgoingVideoSourceGStreamer() = default;
+
+void RealtimeOutgoingVideoSourceGStreamer::initializePreProcessor()
 {
     static std::once_flag debugRegisteredFlag;
     std::call_once(debugRegisteredFlag, [] {
@@ -56,284 +64,50 @@ RealtimeOutgoingVideoSourceGStreamer::RealtimeOutgoingVideoSourceGStreamer(const
     static Atomic<uint64_t> sourceCounter = 0;
     gst_element_set_name(m_bin.get(), makeString("outgoing-video-source-"_s, sourceCounter.exchangeAdd(1)).ascii().data());
 
-    m_stats.reset(gst_structure_new_empty("webrtc-outgoing-video-stats"));
+    m_preProcessor = gst_bin_new(nullptr);
 
-    m_videoConvert = makeGStreamerElement("videoconvert", nullptr);
+    auto videoConvert = makeGStreamerElement("videoconvert", nullptr);
 
-    m_videoFlip = makeGStreamerElement("videoflip", nullptr);
-    gst_util_set_object_arg(G_OBJECT(m_videoFlip.get()), "method", "automatic");
-
-    m_videoRate = makeGStreamerElement("videorate", nullptr);
-    m_frameRateCapsFilter = makeGStreamerElement("capsfilter", nullptr);
-
-    // https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/97#note_56575
-    g_object_set(m_videoRate.get(), "skip-to-first", TRUE, "drop-only", TRUE, "average-period", UINT64_C(1), nullptr);
-
-    m_encoder = gst_element_factory_make("webkitvideoencoder", nullptr);
-    gst_bin_add_many(GST_BIN_CAST(m_bin.get()), m_videoRate.get(), m_frameRateCapsFilter.get(), m_videoFlip.get(), m_videoConvert.get(), m_encoder.get(), nullptr);
-    startUpdatingStats();
-}
-
-RTCRtpCapabilities RealtimeOutgoingVideoSourceGStreamer::rtpCapabilities() const
-{
-    auto& registryScanner = GStreamerRegistryScanner::singleton();
-    return registryScanner.videoRtpCapabilities(GStreamerRegistryScanner::Configuration::Encoding);
-}
+    auto videoFlip = makeGStreamerElement("autovideoflip", nullptr);
+    if (!videoFlip) {
+        GST_DEBUG("autovideoflip element not available, falling back to videoflip");
+        videoFlip = makeGStreamerElement("videoflip", nullptr);
+    }
+    gst_util_set_object_arg(G_OBJECT(videoFlip), "video-direction", "auto");
 
-void RealtimeOutgoingVideoSourceGStreamer::updateStats(GstBuffer*)
-{
-    uint64_t framesSent = 0;
-    gst_structure_get_uint64(m_stats.get(), "frames-sent", &framesSent);
-    framesSent++;
+    gst_bin_add_many(GST_BIN_CAST(m_preProcessor.get()), videoFlip, videoConvert, nullptr);
+    gst_element_link(videoFlip, videoConvert);
 
-    if (m_encoder) {
-        uint32_t bitrate;
-        g_object_get(m_encoder.get(), "bitrate", &bitrate, nullptr);
-        gst_structure_set(m_stats.get(), "bitrate", G_TYPE_DOUBLE, static_cast<double>(bitrate * 1000), nullptr);
-    }
+    if (auto pad = adoptGRef(gst_bin_find_unlinked_pad(GST_BIN_CAST(m_preProcessor.get()), GST_PAD_SRC)))
+        gst_element_add_pad(GST_ELEMENT_CAST(m_preProcessor.get()), gst_ghost_pad_new("src", pad.get()));
+    if (auto pad = adoptGRef(gst_bin_find_unlinked_pad(GST_BIN_CAST(m_preProcessor.get()), GST_PAD_SINK)))
+        gst_element_add_pad(GST_ELEMENT_CAST(m_preProcessor.get()), gst_ghost_pad_new("sink", pad.get()));
 
-    gst_structure_set(m_stats.get(), "frames-sent", G_TYPE_UINT64, framesSent, "frames-encoded", G_TYPE_UINT64, framesSent, nullptr);
+    gst_bin_add(GST_BIN_CAST(m_bin.get()), m_preProcessor.get());
 }
 
 void RealtimeOutgoingVideoSourceGStreamer::teardown()
 {
     RealtimeOutgoingMediaSourceGStreamer::teardown();
-    m_videoConvert.clear();
-    m_videoFlip.clear();
-    m_videoRate.clear();
-    m_frameRateCapsFilter.clear();
-    stopUpdatingStats();
-    m_stats.reset();
+    m_preProcessor.clear();
 }
 
-bool RealtimeOutgoingVideoSourceGStreamer::setPayloadType(const GRefPtr<GstCaps>& caps)
+RTCRtpCapabilities RealtimeOutgoingVideoSourceGStreamer::rtpCapabilities() const
 {
-    GST_DEBUG_OBJECT(m_bin.get(), "Setting payload caps: %" GST_PTR_FORMAT, caps.get());
-    // FIXME: We use only the first structure of the caps. This not be the right approach specially
-    // we don't have a payloader or encoder for that format.
-    GUniquePtr<GstStructure> structure(gst_structure_copy(gst_caps_get_structure(caps.get(), 0)));
-    String encoding;
-    if (auto encodingName = gstStructureGetString(structure.get(), "encoding-name"_s))
-        encoding = encodingName.convertToASCIILowercase();
-    else {
-        GST_ERROR_OBJECT(m_bin.get(), "encoding-name not found");
-        return false;
-    }
-
     auto& registryScanner = GStreamerRegistryScanner::singleton();
-    auto lookupResult = registryScanner.isRtpPacketizerSupported(encoding);
-    if (!lookupResult) {
-        GST_ERROR_OBJECT(m_bin.get(), "RTP payloader not found for encoding %s", encoding.ascii().data());
-        return false;
-    }
-    m_payloader = gst_element_factory_create(lookupResult.factory.get(), nullptr);
-    GST_DEBUG_OBJECT(m_bin.get(), "Using %" GST_PTR_FORMAT " for %s RTP packetizing", m_payloader.get(), encoding.ascii().data());
-
-    auto codec = emptyString();
-    if (encoding == "vp8"_s) {
-        if (gstObjectHasProperty(m_payloader.get(), "picture-id-mode"))
-            gst_util_set_object_arg(G_OBJECT(m_payloader.get()), "picture-id-mode", "15-bit");
-
-        codec = "vp8"_s;
-    } else if (encoding == "vp9"_s) {
-        if (gstObjectHasProperty(m_payloader.get(), "picture-id-mode"))
-            gst_util_set_object_arg(G_OBJECT(m_payloader.get()), "picture-id-mode", "15-bit");
-
-        VPCodecConfigurationRecord record;
-        record.codecName = "vp09"_s;
-        if (auto vp9Profile = gstStructureGetString(structure.get(), "profile-id"_s)) {
-            if (auto profile = parseInteger<uint8_t>(vp9Profile))
-                record.profile = *profile;
-        }
-        codec = createVPCodecParametersString(record);
-    } else if (encoding == "h264"_s) {
-        gst_util_set_object_arg(G_OBJECT(m_payloader.get()), "aggregate-mode", "zero-latency");
-        g_object_set(m_payloader.get(), "config-interval", -1, nullptr);
-
-        auto profileValue = gstStructureGetString(structure.get(), "profile"_s);
-        auto profile = profileValue ? profileValue : "baseline"_s;
-
-        AVCParameters parameters;
-        if (profile == "baseline"_s)
-            parameters.profileIDC = 66;
-        else if (profile == "constrained-baseline"_s) {
-            parameters.profileIDC = 66;
-            parameters.constraintsFlags |= 0x40 << 6;
-        } else if (profile == "main"_s)
-            parameters.profileIDC = 77;
-
-        codec = createAVCCodecParametersString(parameters);
-    } else if (encoding == "h265"_s) {
-        gst_util_set_object_arg(G_OBJECT(m_payloader.get()), "aggregate-mode", "zero-latency");
-        g_object_set(m_payloader.get(), "config-interval", -1, nullptr);
-        // FIXME: profile tier level?
-        codec = createHEVCCodecParametersString({ });
-    } else if (encoding == "av1"_s)
-        codec = createAV1CodecParametersString({ });
-    else {
-        GST_ERROR_OBJECT(m_bin.get(), "Unsupported outgoing video encoding: %s", encoding.ascii().data());
-        return false;
-    }
-
-    // Align MTU with libwebrtc implementation, also helping to reduce packet fragmentation.
-    g_object_set(m_payloader.get(), "auto-header-extension", TRUE, "mtu", 1200, nullptr);
-
-    if (!videoEncoderSetCodec(WEBKIT_VIDEO_ENCODER(m_encoder.get()), WTFMove(codec))) {
-        GST_ERROR_OBJECT(m_bin.get(), "Unable to set encoder format");
-        return false;
-    }
-
-    if (auto payloadType = gstStructureGet<int>(structure.get(), "payload"_s))
-        g_object_set(m_payloader.get(), "pt", *payloadType, nullptr);
-
-    if (m_payloaderState) {
-        g_object_set(m_payloader.get(), "seqnum-offset", m_payloaderState->seqnum, nullptr);
-        m_payloaderState.reset();
-    }
-
-    auto rtpCaps = adoptGRef(gst_caps_new_empty());
-    gst_caps_append_structure(rtpCaps.get(), structure.release());
-
-    g_object_set(m_capsFilter.get(), "caps", rtpCaps.get(), nullptr);
-    GST_DEBUG_OBJECT(m_bin.get(), "RTP caps: %" GST_PTR_FORMAT, rtpCaps.get());
-
-    gst_bin_add(GST_BIN_CAST(m_bin.get()), m_payloader.get());
-
-    auto encoderSinkPad = adoptGRef(gst_element_get_static_pad(m_encoder.get(), "sink"));
-    if (!gst_pad_is_linked(encoderSinkPad.get())) {
-        if (!gst_element_link_many(m_outgoingSource.get(), m_liveSync.get(), m_videoFlip.get(), nullptr)) {
-            GST_ERROR_OBJECT(m_bin.get(), "Unable to link outgoing source to videoflip");
-            return false;
-        }
-
-        GstElement* tail = m_videoFlip.get();
-        if (m_videoRate) {
-            if (!gst_element_link_many(m_videoFlip.get(), m_videoRate.get(), m_frameRateCapsFilter.get(), nullptr)) {
-                GST_ERROR_OBJECT(m_bin.get(), "Unable to link outgoing source to videorate");
-                return false;
-            }
-            tail = m_frameRateCapsFilter.get();
-        }
-        if (!gst_element_link_many(tail, m_videoConvert.get(), m_preEncoderQueue.get(), m_encoder.get(), nullptr)) {
-            GST_ERROR_OBJECT(m_bin.get(), "Unable to link outgoing source to encoder");
-            return false;
-        }
-    }
-
-    return gst_element_link_many(m_encoder.get(), m_payloader.get(), m_postEncoderQueue.get(), nullptr);
-}
-
-void RealtimeOutgoingVideoSourceGStreamer::startUpdatingStats()
-{
-    GST_DEBUG_OBJECT(m_bin.get(), "Starting buffer monitoring for stats gathering");
-    auto holder = createRealtimeOutgoingVideoSourceHolder();
-    holder->source = this;
-    auto pad = adoptGRef(gst_element_get_static_pad(m_encoder.get(), "src"));
-    m_statsPadProbeId = gst_pad_add_probe(pad.get(), GST_PAD_PROBE_TYPE_BUFFER, [](GstPad*, GstPadProbeInfo* info, gpointer userData) -> GstPadProbeReturn {
-        auto* holder = static_cast<RealtimeOutgoingVideoSourceHolder*>(userData);
-        auto* buffer = GST_PAD_PROBE_INFO_BUFFER(info);
-        holder->source->updateStats(buffer);
-        return GST_PAD_PROBE_OK;
-    }, holder, reinterpret_cast<GDestroyNotify>(destroyRealtimeOutgoingVideoSourceHolder));
-}
-
-void RealtimeOutgoingVideoSourceGStreamer::stopUpdatingStats()
-{
-    if (!m_statsPadProbeId)
-        return;
-
-    GST_DEBUG_OBJECT(m_bin.get(), "Stopping buffer monitoring for stats gathering");
-    auto pad = adoptGRef(gst_element_get_static_pad(m_encoder.get(), "src"));
-    gst_pad_remove_probe(pad.get(), m_statsPadProbeId);
-    m_statsPadProbeId = 0;
-}
-
-void RealtimeOutgoingVideoSourceGStreamer::sourceEnabledChanged()
-{
-    RealtimeOutgoingMediaSourceGStreamer::sourceEnabledChanged();
-    if (m_enabled)
-        startUpdatingStats();
-    else
-        stopUpdatingStats();
-}
-
-void RealtimeOutgoingVideoSourceGStreamer::flush()
-{
-    GST_DEBUG_OBJECT(m_bin.get(), "Requesting key-frame");
-    gst_element_send_event(m_outgoingSource.get(), gst_video_event_new_downstream_force_key_unit(GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE, GST_CLOCK_TIME_NONE, FALSE, 1));
+    return registryScanner.videoRtpCapabilities(GStreamerRegistryScanner::Configuration::Encoding);
 }
 
-void RealtimeOutgoingVideoSourceGStreamer::setParameters(GUniquePtr<GstStructure>&& parameters)
+GRefPtr<GstPad> RealtimeOutgoingVideoSourceGStreamer::outgoingSourcePad() const
 {
-    m_parameters = WTFMove(parameters);
-    GST_DEBUG_OBJECT(m_bin.get(), "New encoding parameters: %" GST_PTR_FORMAT, m_parameters.get());
-
-    auto* encodingsValue = gst_structure_get_value(m_parameters.get(), "encodings");
-    RELEASE_ASSERT(GST_VALUE_HOLDS_LIST(encodingsValue));
-    if (UNLIKELY(!gst_value_list_get_size(encodingsValue))) {
-        GST_WARNING_OBJECT(m_bin.get(), "Encodings list is empty, cancelling configuration");
-        return;
-    }
-
-    auto* firstEncoding = gst_value_list_get_value(encodingsValue, 0);
-    RELEASE_ASSERT(GST_VALUE_HOLDS_STRUCTURE(firstEncoding));
-    auto* structure = gst_value_get_structure(firstEncoding);
-
-    if (gst_structure_has_field(structure, "max-framerate")) {
-        if (!m_videoRate)
-            GST_WARNING_OBJECT(m_bin.get(), "Unable to configure max-framerate");
-        else {
-            unsigned long maxFrameRate;
-            gst_structure_get(structure, "max-framerate", G_TYPE_ULONG, &maxFrameRate, nullptr);
-
-            // Some decoder(s), like FFMpeg don't handle 1 FPS framerate, so set a minimum more likely to be accepted.
-            if (maxFrameRate < 2)
-                maxFrameRate = 2;
-
-            int numerator, denominator;
-            gst_util_double_to_fraction(static_cast<double>(maxFrameRate), &numerator, &denominator);
-
-            auto caps = adoptGRef(gst_caps_new_simple("video/x-raw", "framerate", GST_TYPE_FRACTION, numerator, denominator, nullptr));
-            g_object_set(m_frameRateCapsFilter.get(), "caps", caps.get(), nullptr);
-        }
-    }
-
-    if (UNLIKELY(!m_encoder) || !gst_structure_has_field(structure, "max-bitrate"))
-        return;
-
-    unsigned long maxBitrate;
-    gst_structure_get(structure, "max-bitrate", G_TYPE_ULONG, &maxBitrate, nullptr);
-
-    // maxBitrate is expessed in bits/s but the encoder property is in Kbit/s.
-    if (maxBitrate >= 1000)
-        g_object_set(m_encoder.get(), "bitrate", static_cast<uint32_t>(maxBitrate / 1000), nullptr);
+    if (WEBKIT_IS_MEDIA_STREAM_SRC(m_outgoingSource.get()))
+        return adoptGRef(gst_element_get_static_pad(m_outgoingSource.get(), "video_src0"));
+    return adoptGRef(gst_element_get_static_pad(m_outgoingSource.get(), "src"));
 }
 
-void RealtimeOutgoingVideoSourceGStreamer::fillEncodingParameters(const GUniquePtr<GstStructure>& encodingParameters)
+RefPtr<GStreamerRTPPacketizer> RealtimeOutgoingVideoSourceGStreamer::createPacketizer(RefPtr<UniqueSSRCGenerator> ssrcGenerator, const GstStructure* codecParameters, GUniquePtr<GstStructure>&& encodingParameters)
 {
-    if (m_videoRate) {
-        GRefPtr<GstCaps> caps;
-        g_object_get(m_frameRateCapsFilter.get(), "caps", &caps.outPtr(), nullptr);
-        double maxFrameRate = 30.0;
-        if (!gst_caps_is_any(caps.get())) {
-            if (auto* structure = gst_caps_get_structure(caps.get(), 0)) {
-                int numerator, denominator;
-                if (gst_structure_get_fraction(structure, "framerate", &numerator, &denominator))
-                    gst_util_fraction_to_double(numerator, denominator, &maxFrameRate);
-            }
-        }
-
-        gst_structure_set(encodingParameters.get(), "max-framerate", G_TYPE_DOUBLE, maxFrameRate, nullptr);
-    }
-
-    unsigned long maxBitrate = 2048 * 1000;
-    if (m_encoder) {
-        uint32_t bitrate;
-        g_object_get(m_encoder.get(), "bitrate", &bitrate, nullptr);
-        maxBitrate = bitrate * 1000;
-    }
-
-    gst_structure_set(encodingParameters.get(), "max-bitrate", G_TYPE_ULONG, maxBitrate, nullptr);
+    return GStreamerVideoRTPPacketizer::create(ssrcGenerator, codecParameters, WTFMove(encodingParameters));
 }
 
 #undef GST_CAT_DEFAULT
diff --git a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.h b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.h
index d3e2304f5a..05102cb97e 100644
--- a/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.h
+++ b/Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.h
@@ -29,41 +29,26 @@ namespace WebCore {
 class RealtimeOutgoingVideoSourceGStreamer final : public RealtimeOutgoingMediaSourceGStreamer {
 public:
     static Ref<RealtimeOutgoingVideoSourceGStreamer> create(const RefPtr<UniqueSSRCGenerator>& ssrcGenerator, const String& mediaStreamId, MediaStreamTrack& track) { return adoptRef(*new RealtimeOutgoingVideoSourceGStreamer(ssrcGenerator, mediaStreamId, track)); }
+    static Ref<RealtimeOutgoingVideoSourceGStreamer> createMuted(const RefPtr<UniqueSSRCGenerator>& ssrcGenerator) { return adoptRef(*new RealtimeOutgoingVideoSourceGStreamer(ssrcGenerator)); }
+    ~RealtimeOutgoingVideoSourceGStreamer();
 
     void setApplyRotation(bool shouldApplyRotation) { m_shouldApplyRotation = shouldApplyRotation; }
 
-    bool setPayloadType(const GRefPtr<GstCaps>&) final;
-    void teardown() final;
-    void flush() final;
+    WARN_UNUSED_RETURN GRefPtr<GstPad> outgoingSourcePad() const final;
+    RefPtr<GStreamerRTPPacketizer> createPacketizer(RefPtr<UniqueSSRCGenerator>, const GstStructure*, GUniquePtr<GstStructure>&&) final;
 
-    void setParameters(GUniquePtr<GstStructure>&&) final;
-    void fillEncodingParameters(const GUniquePtr<GstStructure>&) final;
-
-    const GstStructure* stats() const { return m_stats.get(); }
+    void teardown() override;
 
 protected:
     explicit RealtimeOutgoingVideoSourceGStreamer(const RefPtr<UniqueSSRCGenerator>&, const String& mediaStreamId, MediaStreamTrack&);
-
-    void sourceEnabledChanged() final;
+    explicit RealtimeOutgoingVideoSourceGStreamer(const RefPtr<UniqueSSRCGenerator>&);
 
     bool m_shouldApplyRotation { false };
 
 private:
-    RTCRtpCapabilities rtpCapabilities() const final;
-
-    void startUpdatingStats();
-    void stopUpdatingStats();
+    void initializePreProcessor();
 
-    void updateStats(GstBuffer*);
-
-    GRefPtr<GstElement> m_videoConvert;
-    GRefPtr<GstElement> m_videoFlip;
-    GRefPtr<GstElement> m_videoRate;
-    GRefPtr<GstElement> m_frameRateCapsFilter;
-
-    GUniquePtr<GstStructure> m_stats;
-
-    unsigned long m_statsPadProbeId { 0 };
+    RTCRtpCapabilities rtpCapabilities() const final;
 };
 
 } // namespace WebCore
diff --git a/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/GStreamerVideoDecoderFactory.cpp b/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/GStreamerVideoDecoderFactory.cpp
index b3b008cb2a..3c0f76a17e 100644
--- a/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/GStreamerVideoDecoderFactory.cpp
+++ b/Source/WebCore/platform/mediastream/libwebrtc/gstreamer/GStreamerVideoDecoderFactory.cpp
@@ -24,6 +24,7 @@
 #include "GStreamerVideoDecoderFactory.h"
 
 #include "GStreamerQuirks.h"
+#include "GStreamerRegistryScanner.h"
 #include "GStreamerVideoCommon.h"
 #include "GStreamerVideoFrameLibWebRTC.h"
 #include "webrtc/modules/video_coding/codecs/h264/include/h264.h"
@@ -274,19 +275,7 @@ public:
 
     static GRefPtr<GstElementFactory> GstDecoderFactory(const char* capsStr)
     {
-        auto allDecoders = gst_element_factory_list_get_elements(GST_ELEMENT_FACTORY_TYPE_DECODER,
-            GST_RANK_MARGINAL);
-        auto caps = adoptGRef(gst_caps_from_string(capsStr));
-        auto decoders = gst_element_factory_list_filter(allDecoders,
-            caps.get(), GST_PAD_SINK, FALSE);
-
-        gst_plugin_feature_list_free(allDecoders);
-        GRefPtr<GstElementFactory> res;
-        if (decoders)
-            res = GST_ELEMENT_FACTORY(decoders->data);
-        gst_plugin_feature_list_free(decoders);
-
-        return res;
+        return GStreamerRegistryScanner::singleton().isCodecSupported(GStreamerRegistryScanner::Configuration::Decoding, String::fromUTF8(capsStr), false).factory;
     }
 
     bool HasGstDecoder()
diff --git a/Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp b/Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp
index 62231aef06..6cbcbaa9a0 100644
--- a/Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp
+++ b/Source/WebCore/rendering/GridTrackSizingAlgorithm.cpp
@@ -950,7 +950,10 @@ LayoutUnit GridTrackSizingAlgorithmStrategy::minSizeForGridItem(RenderBox& gridI
     bool overflowIsVisible = isRowAxis ? gridItem.effectiveOverflowInlineDirection() == Overflow::Visible : gridItem.effectiveOverflowBlockDirection() == Overflow::Visible;
     LayoutUnit baselineShim = m_algorithm.baselineOffsetForGridItem(gridItem, gridAxisForDirection(direction()));
 
-    if (gridItemMinSize.isAuto() && overflowIsVisible) {
+    if (gridItemMinSize.isAuto()) {
+        if (!overflowIsVisible)
+            return { };
+
         auto minSize = minContentForGridItem(gridItem, gridLayoutState);
         const GridSpan& span = m_algorithm.m_renderGrid->gridSpanForGridItem(gridItem, direction());
 
diff --git a/Source/WebCore/rendering/RenderBox.cpp b/Source/WebCore/rendering/RenderBox.cpp
index 2bd3a6afe6..e9368cda2e 100644
--- a/Source/WebCore/rendering/RenderBox.cpp
+++ b/Source/WebCore/rendering/RenderBox.cpp
@@ -68,6 +68,7 @@
 #include "RenderFragmentContainer.h"
 #include "RenderGeometryMap.h"
 #include "RenderGrid.h"
+#include "RenderImage.h"
 #include "RenderInline.h"
 #include "RenderIterator.h"
 #include "RenderLayerCompositor.h"
@@ -3318,6 +3319,14 @@ std::optional<LayoutUnit> RenderBox::computeIntrinsicLogicalContentHeightUsing(L
     // FIXME: The CSS sizing spec is considering changing what min-content/max-content should resolve to.
     // If that happens, this code will have to change.
     if (logicalHeightLength.isMinContent() || logicalHeightLength.isMaxContent() || logicalHeightLength.isFitContent() || logicalHeightLength.isLegacyIntrinsic()) {
+        if (auto* renderImage = dynamicDowncast<RenderImage>(this)) {
+            auto computedLogicalWidth = style().logicalWidth();
+            if ((logicalHeightLength.isMinContent() || logicalHeightLength.isMaxContent()) && computedLogicalWidth.isFixed() && !style().hasAspectRatio()) {
+                auto intrinsicRatio = renderImage->intrinsicRatio();
+                return resolveHeightForRatio(borderAndPaddingLogicalWidth(), borderAndPaddingLogicalHeight(), LayoutUnit(computedLogicalWidth.value()), intrinsicRatio.transposedSize().aspectRatio(), BoxSizing::ContentBox);
+            }
+        }
+
         if (intrinsicContentHeight)
             return adjustIntrinsicLogicalHeightForBoxSizing(intrinsicContentHeight.value());
         return { };
diff --git a/Source/WebCore/rendering/RenderBoxInlines.h b/Source/WebCore/rendering/RenderBoxInlines.h
index af2caf7e46..ac5e010a12 100644
--- a/Source/WebCore/rendering/RenderBoxInlines.h
+++ b/Source/WebCore/rendering/RenderBoxInlines.h
@@ -152,4 +152,11 @@ inline void RenderBox::setLogicalWidth(LayoutUnit size)
         setHeight(size);
 }
 
+inline LayoutUnit resolveHeightForRatio(LayoutUnit borderAndPaddingLogicalWidth, LayoutUnit borderAndPaddingLogicalHeight, LayoutUnit logicalWidth, double aspectRatio, BoxSizing boxSizing)
+{
+    if (boxSizing == BoxSizing::BorderBox)
+        return LayoutUnit((logicalWidth + borderAndPaddingLogicalWidth) * aspectRatio) - borderAndPaddingLogicalHeight;
+    return LayoutUnit(logicalWidth * aspectRatio);
+}
+
 } // namespace WebCore
diff --git a/Source/WebCore/rendering/RenderReplaced.cpp b/Source/WebCore/rendering/RenderReplaced.cpp
index 14ef1b77eb..82a9f3a411 100644
--- a/Source/WebCore/rendering/RenderReplaced.cpp
+++ b/Source/WebCore/rendering/RenderReplaced.cpp
@@ -653,13 +653,6 @@ LayoutUnit RenderReplaced::computeReplacedLogicalWidth(ShouldComputePreferred sh
     return computeReplacedLogicalWidthRespectingMinMaxWidth(intrinsicLogicalWidth(), shouldComputePreferred);
 }
 
-static inline LayoutUnit resolveHeightForRatio(LayoutUnit borderAndPaddingLogicalWidth, LayoutUnit borderAndPaddingLogicalHeight, LayoutUnit logicalWidth, double aspectRatio, BoxSizing boxSizing)
-{
-    if (boxSizing == BoxSizing::BorderBox)
-        return LayoutUnit((logicalWidth + borderAndPaddingLogicalWidth) * aspectRatio) - borderAndPaddingLogicalHeight;
-    return LayoutUnit(logicalWidth * aspectRatio);
-}
-
 LayoutUnit RenderReplaced::computeReplacedLogicalHeight(std::optional<LayoutUnit> estimatedUsedWidth) const
 {
     // 10.5 Content height: the 'height' property: http://www.w3.org/TR/CSS21/visudet.html#propdef-height
@@ -870,4 +863,12 @@ LayoutSize RenderReplaced::intrinsicSize() const
     return size;
 }
 
+FloatSize RenderReplaced::intrinsicRatio() const
+{
+    FloatSize intrinsicRatio;
+    FloatSize constrainedSize;
+    computeAspectRatioInformationForRenderBox(embeddedContentBox(), constrainedSize, intrinsicRatio);
+    return intrinsicRatio;
+}
+
 }
diff --git a/Source/WebCore/rendering/RenderReplaced.h b/Source/WebCore/rendering/RenderReplaced.h
index e26fb1a7cb..ece6cb65c8 100644
--- a/Source/WebCore/rendering/RenderReplaced.h
+++ b/Source/WebCore/rendering/RenderReplaced.h
@@ -40,6 +40,7 @@ public:
     bool setNeedsLayoutIfNeededAfterIntrinsicSizeChange();
 
     LayoutSize intrinsicSize() const final;
+    FloatSize intrinsicRatio() const;
     
     bool isContentLikelyVisibleInViewport();
     bool needsPreferredWidthsRecalculation() const override;
diff --git a/Source/WebInspectorUI/UserInterface/Base/Utilities.js b/Source/WebInspectorUI/UserInterface/Base/Utilities.js
index 6636f4a391..ad61a17343 100644
--- a/Source/WebInspectorUI/UserInterface/Base/Utilities.js
+++ b/Source/WebInspectorUI/UserInterface/Base/Utilities.js
@@ -633,7 +633,7 @@ Object.defineProperty(Array, "isTypedArray",
             || constructor === Uint8ClampedArray
             || constructor === Uint16Array
             || constructor === Uint32Array
-            || constructor === Float16Array
+            || constructor === window.Float16Array
             || constructor === Float32Array
             || constructor === Float64Array;
     }
diff --git a/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp b/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp
index a0ad3c628e..c13a96f0e7 100644
--- a/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp
+++ b/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp
@@ -502,7 +502,7 @@ void NetworkConnectionToWebProcess::didReceiveInvalidMessage(IPC::Connection&, I
 
 void NetworkConnectionToWebProcess::createSocketChannel(const ResourceRequest& request, const String& protocol, WebSocketIdentifier identifier, WebPageProxyIdentifier webPageProxyID, std::optional<FrameIdentifier> frameID, std::optional<PageIdentifier> pageID, const ClientOrigin& clientOrigin, bool hadMainFrameMainResourcePrivateRelayed, bool allowPrivacyProxy, OptionSet<AdvancedPrivacyProtections> advancedPrivacyProtections, ShouldRelaxThirdPartyCookieBlocking shouldRelaxThirdPartyCookieBlocking, WebCore::StoredCredentialsPolicy storedCredentialsPolicy)
 {
-    MESSAGE_CHECK(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, request.firstPartyForCookies()));
+    MESSAGE_CHECK(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, request.firstPartyForCookies()) != NetworkProcess::AllowCookieAccess::Terminate);
 
     ASSERT(!m_networkSocketChannels.contains(identifier));
     if (auto channel = NetworkSocketChannel::create(*this, m_sessionID, request, protocol, identifier, webPageProxyID, frameID, pageID, clientOrigin, hadMainFrameMainResourcePrivateRelayed, allowPrivacyProxy, advancedPrivacyProtections, shouldRelaxThirdPartyCookieBlocking, storedCredentialsPolicy))
@@ -552,11 +552,11 @@ RefPtr<ServiceWorkerFetchTask> NetworkConnectionToWebProcess::createFetchTask(Ne
 
 void NetworkConnectionToWebProcess::scheduleResourceLoad(NetworkResourceLoadParameters&& loadParameters, std::optional<NetworkResourceLoadIdentifier> existingLoaderToResume)
 {
-    bool hasCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, loadParameters.request.firstPartyForCookies());
-    if (UNLIKELY(!hasCookieAccess))
+    auto allowCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, loadParameters.request.firstPartyForCookies());
+    if (UNLIKELY(allowCookieAccess != NetworkProcess::AllowCookieAccess::Allow))
         RELEASE_LOG_ERROR(Loading, "scheduleResourceLoad: Web process does not have cookie access to url %" SENSITIVE_LOG_STRING " for request %" SENSITIVE_LOG_STRING, loadParameters.request.firstPartyForCookies().string().utf8().data(), loadParameters.request.url().string().utf8().data());
 
-    MESSAGE_CHECK(hasCookieAccess);
+    MESSAGE_CHECK(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate);
 
     CONNECTION_RELEASE_LOG(Loading, "scheduleResourceLoad: (parentPID=%d, pageProxyID=%" PRIu64 ", webPageID=%" PRIu64 ", frameID=%" PRIu64 ", resourceID=%" PRIu64 ", existingLoaderToResume=%" PRIu64 ")", loadParameters.parentPID, loadParameters.webPageProxyID.toUInt64(), loadParameters.webPageID.toUInt64(), loadParameters.webFrameID.object().toUInt64(), loadParameters.identifier.toUInt64(), valueOrDefault(existingLoaderToResume).toUInt64());
 
@@ -785,7 +785,10 @@ void NetworkConnectionToWebProcess::registerURLSchemesAsCORSEnabled(Vector<Strin
 
 void NetworkConnectionToWebProcess::cookiesForDOM(const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, FrameIdentifier frameID, PageIdentifier pageID, IncludeSecureCookies includeSecureCookies, ApplyTrackingPrevention applyTrackingPrevention, ShouldRelaxThirdPartyCookieBlocking shouldRelaxThirdPartyCookieBlocking, CompletionHandler<void(String cookieString, bool secureCookiesAccessed)>&& completionHandler)
 {
-    MESSAGE_CHECK_COMPLETION(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty), completionHandler({ }, false));
+    auto allowCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty);
+    MESSAGE_CHECK_COMPLETION(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate, completionHandler({ }, false));
+    if (allowCookieAccess != NetworkProcess::AllowCookieAccess::Allow)
+        return completionHandler({ }, false);
 
     auto* networkStorageSession = storageSession();
     if (!networkStorageSession)
@@ -802,7 +805,10 @@ void NetworkConnectionToWebProcess::cookiesForDOM(const URL& firstParty, const S
 
 void NetworkConnectionToWebProcess::setCookiesFromDOM(const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, WebCore::FrameIdentifier frameID, PageIdentifier pageID, ApplyTrackingPrevention applyTrackingPrevention, const String& cookieString, ShouldRelaxThirdPartyCookieBlocking shouldRelaxThirdPartyCookieBlocking)
 {
-    MESSAGE_CHECK(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty));
+    auto allowCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty);
+    MESSAGE_CHECK(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate);
+    if (allowCookieAccess != NetworkProcess::AllowCookieAccess::Allow)
+        return;
 
     auto* networkStorageSession = storageSession();
     if (!networkStorageSession)
@@ -823,7 +829,10 @@ void NetworkConnectionToWebProcess::cookiesEnabledSync(const URL& firstParty, co
 
 void NetworkConnectionToWebProcess::cookiesEnabled(const URL& firstParty, const URL& url, std::optional<FrameIdentifier> frameID, std::optional<PageIdentifier> pageID, ShouldRelaxThirdPartyCookieBlocking shouldRelaxThirdPartyCookieBlocking, CompletionHandler<void(bool)>&& completionHandler)
 {
-    MESSAGE_CHECK_COMPLETION(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty), completionHandler(false));
+    auto allowCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty);
+    MESSAGE_CHECK_COMPLETION(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate, completionHandler(false));
+    if (allowCookieAccess != NetworkProcess::AllowCookieAccess::Allow)
+        return completionHandler(false);
 
     auto* networkStorageSession = storageSession();
     if (!networkStorageSession) {
@@ -837,7 +846,10 @@ void NetworkConnectionToWebProcess::cookiesEnabled(const URL& firstParty, const
 
 void NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue(const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, std::optional<FrameIdentifier> frameID, std::optional<PageIdentifier> pageID, IncludeSecureCookies includeSecureCookies, ApplyTrackingPrevention applyTrackingPrevention, ShouldRelaxThirdPartyCookieBlocking shouldRelaxThirdPartyCookieBlocking, CompletionHandler<void(String, bool)>&& completionHandler)
 {
-    MESSAGE_CHECK_COMPLETION(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty), completionHandler({ }, false));
+    auto allowCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty);
+    MESSAGE_CHECK_COMPLETION(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate, completionHandler({ }, false));
+    if (allowCookieAccess != NetworkProcess::AllowCookieAccess::Allow)
+        return completionHandler({ }, false);
 
     auto* networkStorageSession = storageSession();
     if (!networkStorageSession)
@@ -848,7 +860,10 @@ void NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue(const URL& fir
 
 void NetworkConnectionToWebProcess::getRawCookies(const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, std::optional<FrameIdentifier> frameID, std::optional<PageIdentifier> pageID, ApplyTrackingPrevention applyTrackingPrevention, ShouldRelaxThirdPartyCookieBlocking shouldRelaxThirdPartyCookieBlocking, CompletionHandler<void(Vector<WebCore::Cookie>&&)>&& completionHandler)
 {
-    MESSAGE_CHECK_COMPLETION(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty), completionHandler({ }));
+    auto allowCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty);
+    MESSAGE_CHECK_COMPLETION(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate, completionHandler({ }));
+    if (allowCookieAccess != NetworkProcess::AllowCookieAccess::Allow)
+        return completionHandler({ });
 
     auto* networkStorageSession = storageSession();
     if (!networkStorageSession)
@@ -877,7 +892,10 @@ void NetworkConnectionToWebProcess::deleteCookie(const URL& url, const String& c
 
 void NetworkConnectionToWebProcess::cookiesForDOMAsync(const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, std::optional<WebCore::FrameIdentifier> frameID, std::optional<WebCore::PageIdentifier> pageID, IncludeSecureCookies includeSecureCookies, ApplyTrackingPrevention applyTrackingPrevention, ShouldRelaxThirdPartyCookieBlocking shouldRelaxThirdPartyCookieBlocking, WebCore::CookieStoreGetOptions&& options, CompletionHandler<void(std::optional<Vector<WebCore::Cookie>>&&)>&& completionHandler)
 {
-    MESSAGE_CHECK_COMPLETION(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty), completionHandler(std::nullopt));
+    auto allowCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty);
+    MESSAGE_CHECK_COMPLETION(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate, completionHandler(std::nullopt));
+    if (allowCookieAccess != NetworkProcess::AllowCookieAccess::Allow)
+        return completionHandler(std::nullopt);
 
     auto* networkStorageSession = storageSession();
     if (!networkStorageSession)
@@ -894,7 +912,10 @@ void NetworkConnectionToWebProcess::cookiesForDOMAsync(const URL& firstParty, co
 
 void NetworkConnectionToWebProcess::setCookieFromDOMAsync(const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, std::optional<WebCore::FrameIdentifier> frameID, std::optional<WebCore::PageIdentifier> pageID, ApplyTrackingPrevention applyTrackingPrevention, WebCore::Cookie&& cookie, ShouldRelaxThirdPartyCookieBlocking shouldRelaxThirdPartyCookieBlocking, CompletionHandler<void(bool)>&& completionHandler)
 {
-    MESSAGE_CHECK(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty));
+    auto allowCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, firstParty);
+    MESSAGE_CHECK_COMPLETION(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate, completionHandler(false));
+    if (allowCookieAccess != NetworkProcess::AllowCookieAccess::Allow)
+        return completionHandler(false);
 
     auto* networkStorageSession = storageSession();
     if (!networkStorageSession)
@@ -914,7 +935,10 @@ void NetworkConnectionToWebProcess::domCookiesForHost(const URL& url, Completion
 {
     auto host = url.host().toString();
     MESSAGE_CHECK_COMPLETION(HashSet<String>::isValidValue(host), completionHandler({ }));
-    MESSAGE_CHECK_COMPLETION(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, url), completionHandler({ }));
+    auto allowCookieAccess = m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, url);
+    MESSAGE_CHECK_COMPLETION(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate, completionHandler({ }));
+    if (allowCookieAccess != NetworkProcess::AllowCookieAccess::Allow)
+        return completionHandler({ });
 
     auto* networkStorageSession = storageSession();
     if (!networkStorageSession)
@@ -1423,7 +1447,8 @@ void NetworkConnectionToWebProcess::establishSWContextConnection(WebPageProxyIde
 {
     auto* session = networkSession();
     if (auto* swServer = session ? session->swServer() : nullptr) {
-        MESSAGE_CHECK(session->networkProcess().allowsFirstPartyForCookies(webProcessIdentifier(), registrableDomain));
+        auto allowCookieAccess = session->networkProcess().allowsFirstPartyForCookies(webProcessIdentifier(), registrableDomain);
+        MESSAGE_CHECK(allowCookieAccess != NetworkProcess::AllowCookieAccess::Terminate);
         m_swContextConnection = makeUnique<WebSWServerToContextConnection>(*this, webPageProxyID, WTFMove(registrableDomain), serviceWorkerPageIdentifier, *swServer);
     }
     completionHandler();
diff --git a/Source/WebKit/NetworkProcess/NetworkProcess.cpp b/Source/WebKit/NetworkProcess/NetworkProcess.cpp
index db0437d3b7..8f637e6c85 100644
--- a/Source/WebKit/NetworkProcess/NetworkProcess.cpp
+++ b/Source/WebKit/NetworkProcess/NetworkProcess.cpp
@@ -458,48 +458,49 @@ void NetworkProcess::webProcessWillLoadWebArchive(WebCore::ProcessIdentifier pro
     }).iterator->value.first = LoadedWebArchive::Yes;
 }
 
-bool NetworkProcess::allowsFirstPartyForCookies(WebCore::ProcessIdentifier processIdentifier, const URL& firstParty)
+auto NetworkProcess::allowsFirstPartyForCookies(WebCore::ProcessIdentifier processIdentifier, const URL& firstParty) -> AllowCookieAccess
 {
-    // FIXME: This should probably not be necessary. If about:blank is the first party for cookies,
-    // we should set it to be the inherited origin then remove this exception.
-    if (firstParty.isAboutBlank())
-        return true;
+    auto allowCookieAccess = allowsFirstPartyForCookies(processIdentifier, RegistrableDomain { firstParty });
+    if (allowCookieAccess == NetworkProcess::AllowCookieAccess::Terminate) {
+        // FIXME: This should probably not be necessary. If about:blank is the first party for cookies,
+        // we should set it to be the inherited origin then remove this exception.
+        if (firstParty.isAboutBlank())
+            return AllowCookieAccess::Disallow;
 
-    if (firstParty.isNull())
-        return true; // FIXME: This shouldn't be allowed.
+        if (firstParty.isNull())
+            return AllowCookieAccess::Disallow; // FIXME: This shouldn't be allowed.
+    }
 
-    return allowsFirstPartyForCookies(processIdentifier, RegistrableDomain { firstParty });
+    return allowCookieAccess;
 }
 
-bool NetworkProcess::allowsFirstPartyForCookies(WebCore::ProcessIdentifier processIdentifier, const RegistrableDomain& firstPartyDomain)
+auto NetworkProcess::allowsFirstPartyForCookies(WebCore::ProcessIdentifier processIdentifier, const RegistrableDomain& firstPartyDomain) -> AllowCookieAccess
 {
     // FIXME: This shouldn't be needed but it is hit sometimes at least with PDFs.
-    if (firstPartyDomain.isEmpty())
-        return true;
-
+    auto terminateOrDisallow = firstPartyDomain.isEmpty() ? AllowCookieAccess::Disallow : AllowCookieAccess::Terminate;
     if (!decltype(m_allowedFirstPartiesForCookies)::isValidKey(processIdentifier)) {
         ASSERT_NOT_REACHED();
-        return false;
+        return terminateOrDisallow;
     }
 
     auto iterator = m_allowedFirstPartiesForCookies.find(processIdentifier);
     if (iterator == m_allowedFirstPartiesForCookies.end()) {
         ASSERT_NOT_REACHED();
-        return false;
+        return terminateOrDisallow;
     }
 
     if (iterator->value.first == LoadedWebArchive::Yes)
-        return true;
+        return AllowCookieAccess::Allow;
 
     auto& set = iterator->value.second;
     if (!std::remove_reference_t<decltype(set)>::isValidValue(firstPartyDomain)) {
         ASSERT_NOT_REACHED();
-        return false;
+        return terminateOrDisallow;
     }
 
     auto result = set.contains(firstPartyDomain);
-    ASSERT(result);
-    return result;
+    ASSERT(result || terminateOrDisallow == AllowCookieAccess::Disallow);
+    return result ? AllowCookieAccess::Allow : terminateOrDisallow;
 }
 
 void NetworkProcess::addStorageSession(PAL::SessionID sessionID, const WebsiteDataStoreParameters& parameters)
diff --git a/Source/WebKit/NetworkProcess/NetworkProcess.h b/Source/WebKit/NetworkProcess/NetworkProcess.h
index 0897537e58..54f19ab96c 100644
--- a/Source/WebKit/NetworkProcess/NetworkProcess.h
+++ b/Source/WebKit/NetworkProcess/NetworkProcess.h
@@ -417,8 +417,9 @@ public:
     void deleteWebsiteDataForOrigin(PAL::SessionID, OptionSet<WebsiteDataType>, const WebCore::ClientOrigin&, CompletionHandler<void()>&&);
     void deleteWebsiteDataForOrigins(PAL::SessionID, OptionSet<WebsiteDataType>, const Vector<WebCore::SecurityOriginData>& origins, const Vector<String>& cookieHostNames, const Vector<String>& HSTSCacheHostnames, const Vector<RegistrableDomain>&, CompletionHandler<void()>&&);
 
-    bool allowsFirstPartyForCookies(WebCore::ProcessIdentifier, const URL&);
-    bool allowsFirstPartyForCookies(WebCore::ProcessIdentifier, const RegistrableDomain&);
+    enum class AllowCookieAccess : uint8_t { Disallow, Allow, Terminate };
+    AllowCookieAccess allowsFirstPartyForCookies(WebCore::ProcessIdentifier, const URL&);
+    AllowCookieAccess allowsFirstPartyForCookies(WebCore::ProcessIdentifier, const RegistrableDomain&);
     void addAllowedFirstPartyForCookies(WebCore::ProcessIdentifier, WebCore::RegistrableDomain&&, LoadedWebArchive, CompletionHandler<void()>&&);
     void webProcessWillLoadWebArchive(WebCore::ProcessIdentifier);
 
diff --git a/Source/WebKit/NetworkProcess/NetworkSession.cpp b/Source/WebKit/NetworkProcess/NetworkSession.cpp
index d3e9e8b4b6..2c5fb9ad67 100644
--- a/Source/WebKit/NetworkProcess/NetworkSession.cpp
+++ b/Source/WebKit/NetworkProcess/NetworkSession.cpp
@@ -728,7 +728,7 @@ void NetworkSession::appBoundDomains(CompletionHandler<void(HashSet<WebCore::Reg
 
 void NetworkSession::addAllowedFirstPartyForCookies(WebCore::ProcessIdentifier webProcessIdentifier, std::optional<WebCore::ProcessIdentifier> requestingProcessIdentifier, WebCore::RegistrableDomain&& firstPartyForCookies)
 {
-    if (requestingProcessIdentifier && (requestingProcessIdentifier != webProcessIdentifier) && !m_networkProcess->allowsFirstPartyForCookies(requestingProcessIdentifier.value(), firstPartyForCookies)) {
+    if (requestingProcessIdentifier && (requestingProcessIdentifier != webProcessIdentifier) && m_networkProcess->allowsFirstPartyForCookies(requestingProcessIdentifier.value(), firstPartyForCookies) != NetworkProcess::AllowCookieAccess::Allow) {
         ASSERT_NOT_REACHED();
         return;
     }
diff --git a/Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp b/Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp
index 72d67d9f98..515f4597cf 100644
--- a/Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp
+++ b/Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.cpp
@@ -344,7 +344,7 @@ void WebSWServerConnection::postMessageToServiceWorker(ServiceWorkerIdentifier d
 
 void WebSWServerConnection::scheduleJobInServer(ServiceWorkerJobData&& jobData)
 {
-    MESSAGE_CHECK(networkProcess().allowsFirstPartyForCookies(identifier(), WebCore::RegistrableDomain::uncheckedCreateFromHost(jobData.topOrigin.host())));
+    MESSAGE_CHECK(networkProcess().allowsFirstPartyForCookies(identifier(), WebCore::RegistrableDomain::uncheckedCreateFromHost(jobData.topOrigin.host())) != NetworkProcess::AllowCookieAccess::Terminate);
 
     ASSERT(!jobData.scopeURL.isNull());
     if (jobData.scopeURL.isNull()) {
diff --git a/Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.cpp b/Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.cpp
index 83affaaded..084bbdf8f8 100644
--- a/Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.cpp
+++ b/Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.cpp
@@ -79,7 +79,7 @@ NetworkSession* WebSharedWorkerServerConnection::session()
 
 void WebSharedWorkerServerConnection::requestSharedWorker(WebCore::SharedWorkerKey&& sharedWorkerKey, WebCore::SharedWorkerObjectIdentifier sharedWorkerObjectIdentifier, WebCore::TransferredMessagePort&& port, WebCore::WorkerOptions&& workerOptions)
 {
-    MESSAGE_CHECK(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, WebCore::RegistrableDomain::uncheckedCreateFromHost(sharedWorkerKey.origin.topOrigin.host())));
+    MESSAGE_CHECK(m_networkProcess->allowsFirstPartyForCookies(m_webProcessIdentifier, WebCore::RegistrableDomain::uncheckedCreateFromHost(sharedWorkerKey.origin.topOrigin.host())) != NetworkProcess::AllowCookieAccess::Terminate);
     MESSAGE_CHECK(sharedWorkerObjectIdentifier.processIdentifier() == m_webProcessIdentifier);
     MESSAGE_CHECK(sharedWorkerKey.name == workerOptions.name);
     CONNECTION_RELEASE_LOG("requestSharedWorker: sharedWorkerObjectIdentifier=%" PUBLIC_LOG_STRING, sharedWorkerObjectIdentifier.toString().utf8().data());
diff --git a/Source/WebKit/NetworkProcess/glib/WebKitCachedResolver.cpp b/Source/WebKit/NetworkProcess/glib/WebKitCachedResolver.cpp
index 2d17c22c9e..216dadcd43 100644
--- a/Source/WebKit/NetworkProcess/glib/WebKitCachedResolver.cpp
+++ b/Source/WebKit/NetworkProcess/glib/WebKitCachedResolver.cpp
@@ -32,10 +32,10 @@
 
 using namespace WebKit;
 
-typedef struct {
+struct WebKitCachedResolverPrivate {
     GRefPtr<GResolver> wrappedResolver;
     DNSCache cache;
-} WebKitCachedResolverPrivate;
+};
 
 struct _WebKitCachedResolver {
     GResolver parentInstance;
diff --git a/Source/WebKit/NetworkProcess/soup/WebSocketTaskSoup.cpp b/Source/WebKit/NetworkProcess/soup/WebSocketTaskSoup.cpp
index 1a0cd1de50..8c4e0e378f 100644
--- a/Source/WebKit/NetworkProcess/soup/WebSocketTaskSoup.cpp
+++ b/Source/WebKit/NetworkProcess/soup/WebSocketTaskSoup.cpp
@@ -246,7 +246,7 @@ void WebSocketTask::sendString(std::span<const uint8_t> utf8, CompletionHandler<
         GRefPtr<GBytes> bytes = adoptGRef(g_bytes_new_static(utf8.data(), utf8.size()));
         soup_websocket_connection_send_message(m_connection.get(), SOUP_WEBSOCKET_DATA_TEXT, bytes.get());
 #else
-        soup_websocket_connection_send_text(m_connection.get(), CString(reinterpret_cast<const char*>(utf8.data()), utf8.size()).data());
+        soup_websocket_connection_send_text(m_connection.get(), CString(utf8).data());
 #endif
     }
     callback();
diff --git a/Source/WebKit/UIProcess/Downloads/DownloadProxy.cpp b/Source/WebKit/UIProcess/Downloads/DownloadProxy.cpp
index fb5b67beda..bbfd0d3fae 100644
--- a/Source/WebKit/UIProcess/Downloads/DownloadProxy.cpp
+++ b/Source/WebKit/UIProcess/Downloads/DownloadProxy.cpp
@@ -81,10 +81,13 @@ static RefPtr<API::Data> createData(std::span<const uint8_t> data)
 void DownloadProxy::cancel(CompletionHandler<void(API::Data*)>&& completionHandler)
 {
     if (m_dataStore) {
-        m_dataStore->networkProcess().sendWithAsyncReply(Messages::NetworkProcess::CancelDownload(m_downloadID), [this, protectedThis = Ref { *this }, completionHandler = WTFMove(completionHandler)] (std::span<const uint8_t> resumeData) mutable {
-            m_legacyResumeData = createData(resumeData);
-            completionHandler(m_legacyResumeData.get());
-            m_downloadProxyMap.downloadFinished(*this);
+        m_dataStore->networkProcess().sendWithAsyncReply(Messages::NetworkProcess::CancelDownload(m_downloadID), [weakThis = WeakPtr { *this }, completionHandler = WTFMove(completionHandler)] (std::span<const uint8_t> resumeData) mutable {
+            RefPtr protectedThis = weakThis.get();
+            if (!protectedThis)
+                return completionHandler(nullptr);
+            protectedThis->m_legacyResumeData = createData(resumeData);
+            completionHandler(protectedThis->m_legacyResumeData.get());
+            protectedThis->m_downloadProxyMap.downloadFinished(*protectedThis);
         });
     } else
         completionHandler(nullptr);
diff --git a/Source/WebKit/UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp b/Source/WebKit/UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp
index 89382a72d9..60f5fdedf0 100644
--- a/Source/WebKit/UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp
+++ b/Source/WebKit/UIProcess/Inspector/glib/RemoteInspectorHTTPServer.cpp
@@ -156,7 +156,7 @@ void RemoteInspectorHTTPServer::sendMessageToFrontend(uint64_t connectionID, uin
     GRefPtr<GBytes> bytes = adoptGRef(g_bytes_new_static(utf8.data(), utf8.length()));
     soup_websocket_connection_send_message(webSocketConnection, SOUP_WEBSOCKET_DATA_TEXT, bytes.get());
 #else
-    soup_websocket_connection_send_text(webSocketConnection, CString(reinterpret_cast<const char*>(utf8.data()), utf8.length()).data());
+    soup_websocket_connection_send_text(webSocketConnection, CString(utf8).data());
 #endif
 }
 
diff --git a/Source/WebKit/UIProcess/linux/MemoryPressureMonitor.cpp b/Source/WebKit/UIProcess/linux/MemoryPressureMonitor.cpp
index de2d1dfa7a..b72a5ee078 100644
--- a/Source/WebKit/UIProcess/linux/MemoryPressureMonitor.cpp
+++ b/Source/WebKit/UIProcess/linux/MemoryPressureMonitor.cpp
@@ -283,18 +283,18 @@ static int systemMemoryUsedAsPercentage(FILE* memInfoFile, FILE* zoneInfoFile, C
         return -1;
 
     int memoryUsagePercentage = ((memoryTotal - memoryAvailable) * 100) / memoryTotal;
-    LOG_VERBOSE(MemoryPressure, "MemoryPressureMonitor::memory: real (memory total=%zu MB) (memory available=%zu MB) (memory usage percentage=%d MB)", memoryTotal, memoryAvailable, memoryUsagePercentage);
+    LOG(MemoryPressure, "MemoryPressureMonitor::memory: real (total: %zu kB) (available: %zu kB) (usage: %d%%)", memoryTotal, memoryAvailable, memoryUsagePercentage);
     if (memoryController->isActive()) {
         memoryTotal = memoryController->getMemoryTotalWithCgroup();
         size_t memoryUsage = memoryController->getMemoryUsageWithCgroup();
         if (memoryTotal != notSet && memoryUsage != notSet) {
             int memoryUsagePercentageWithCgroup = 100 * ((float) memoryUsage / (float) memoryTotal);
-            LOG_VERBOSE(MemoryPressure, "MemoryPressureMonitor::memory: cgroup (memory total=%zu bytes) (memory usage=%zu bytes) (memory usage percentage=%d bytes)", memoryTotal, memoryUsage, memoryUsagePercentageWithCgroup);
+            LOG(MemoryPressure, "MemoryPressureMonitor::memory: cgroup (total: %zu bytes) (in use: %zu bytes) (usage: %d%%)", memoryTotal, memoryUsage, memoryUsagePercentageWithCgroup);
             if (memoryUsagePercentageWithCgroup > memoryUsagePercentage)
                 memoryUsagePercentage = memoryUsagePercentageWithCgroup;
         }
     }
-    LOG_VERBOSE(MemoryPressure, "MemoryPressureMonitor::memory: memoryUsagePercentage (%d)", memoryUsagePercentage);
+    LOG(MemoryPressure, "MemoryPressureMonitor::memory: (memoryUsagePercentage: %d%%)", memoryUsagePercentage);
     return memoryUsagePercentage;
 }
 
diff --git a/Source/WebKit/gtk/NEWS b/Source/WebKit/gtk/NEWS
index 9789ad8d87..da08515412 100644
--- a/Source/WebKit/gtk/NEWS
+++ b/Source/WebKit/gtk/NEWS
@@ -1,3 +1,16 @@
+================
+WebKitGTK 2.46.4
+================
+
+What's new in WebKitGTK 2.46.4?
+
+  - Improve memory consumption and performance of Canvas getImageData.
+  - Fix preserve-3D intersection rendering.
+  - Fix video dimensions since GStreamer 1.24.9.
+  - Fix the HTTP-based remote Web Inspector not loading in Chromium.
+  - Fix content filters not working on about:blank iframes.
+  - Fix several crashes and rendering issues.
+
 ================
 WebKitGTK 2.46.3
 ================
diff --git a/Source/bmalloc/CMakeLists.txt b/Source/bmalloc/CMakeLists.txt
index ee871463da..1cc241cf78 100644
--- a/Source/bmalloc/CMakeLists.txt
+++ b/Source/bmalloc/CMakeLists.txt
@@ -700,7 +700,7 @@ set_source_files_properties(
     libpas/src/libpas/bmalloc_heap_config.c
     libpas/src/libpas/pas_heap_config_kind.c
     libpas/src/libpas/pas_segregated_page_config_kind.c
-    PROPERTIES COMPILE_OPTIONS "${COMPILE_C_AS_CXX}"
+    PROPERTIES LANGUAGE CXX
 )
 
 WEBKIT_FRAMEWORK_DECLARE(bmalloc)
diff --git a/Source/cmake/OptionsGTK.cmake b/Source/cmake/OptionsGTK.cmake
index 5231777373..4092eae80b 100644
--- a/Source/cmake/OptionsGTK.cmake
+++ b/Source/cmake/OptionsGTK.cmake
@@ -3,7 +3,7 @@ include(VersioningUtils)
 
 WEBKIT_OPTION_BEGIN()
 
-SET_PROJECT_VERSION(2 46 3)
+SET_PROJECT_VERSION(2 46 4)
 
 set(USER_AGENT_BRANDING "" CACHE STRING "Branding to add to user agent string")
 
@@ -221,14 +221,14 @@ EXPOSE_STRING_VARIABLE_TO_BUILD(WEBKITGTK_API_INFIX)
 EXPOSE_STRING_VARIABLE_TO_BUILD(WEBKITGTK_API_VERSION)
 
 if (WEBKITGTK_API_VERSION VERSION_EQUAL "4.0")
-    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(WEBKIT 108 5 71)
-    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(JAVASCRIPTCORE 43 12 25)
+    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(WEBKIT 108 6 71)
+    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(JAVASCRIPTCORE 43 13 25)
 elseif (WEBKITGTK_API_VERSION VERSION_EQUAL "4.1")
-    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(WEBKIT 16 5 16)
-    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(JAVASCRIPTCORE 6 12 6)
+    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(WEBKIT 16 6 16)
+    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(JAVASCRIPTCORE 6 13 6)
 elseif (WEBKITGTK_API_VERSION VERSION_EQUAL "6.0")
-    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(WEBKIT 14 5 10)
-    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(JAVASCRIPTCORE 4 12 3)
+    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(WEBKIT 14 6 10)
+    CALCULATE_LIBRARY_VERSIONS_FROM_LIBTOOL_TRIPLE(JAVASCRIPTCORE 4 13 3)
 else ()
     message(FATAL_ERROR "Unhandled API version")
 endif ()
diff --git a/Source/cmake/WebKitCompilerFlags.cmake b/Source/cmake/WebKitCompilerFlags.cmake
index 0cf5c5d333..f5ec0a5591 100644
--- a/Source/cmake/WebKitCompilerFlags.cmake
+++ b/Source/cmake/WebKitCompilerFlags.cmake
@@ -490,9 +490,5 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" AND WTF_CPU_MIPS)
     WEBKIT_PREPEND_GLOBAL_COMPILER_FLAGS(-mno-lxc1-sxc1)
 endif ()
 
-if (COMPILER_IS_GCC_OR_CLANG)
-    set(COMPILE_C_AS_CXX "-xc++;-std=c++2b")
-endif ()
-
 # FIXME: Enable pre-compiled headers for all ports <https://webkit.org/b/139438>
 set(CMAKE_DISABLE_PRECOMPILE_HEADERS ON)
diff --git a/Tools/TestWebKitAPI/PlatformJSCOnly.cmake b/Tools/TestWebKitAPI/PlatformJSCOnly.cmake
index d188686b7c..7594f58c98 100644
--- a/Tools/TestWebKitAPI/PlatformJSCOnly.cmake
+++ b/Tools/TestWebKitAPI/PlatformJSCOnly.cmake
@@ -6,4 +6,7 @@ if (LOWERCASE_EVENT_LOOP_TYPE STREQUAL "glib")
     list(APPEND TestWTF_PRIVATE_INCLUDE_DIRECTORIES
         ${GLIB_INCLUDE_DIRS}
     )
+    list(APPEND TestJavaScriptCore_PRIVATE_INCLUDE_DIRECTORIES
+        ${GLIB_INCLUDE_DIRS}
+    )
 endif ()
diff --git a/Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp b/Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp
index cf84571bd4..33073d5556 100644
--- a/Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp
+++ b/Tools/TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp
@@ -104,6 +104,7 @@ TEST(UserAgentTest, Quirks)
     assertUserAgentForURLHasMacPlatformQuirk("http://www.chase.com/");
     assertUserAgentForURLHasMacPlatformQuirk("http://paypal.com/");
     assertUserAgentForURLHasMacPlatformQuirk("http://outlook.office.com/");
+    assertUserAgentForURLHasMacPlatformQuirk("http://outlook.office365.com/");
     assertUserAgentForURLHasMacPlatformQuirk("http://mail.ntu.edu.tw/");
     assertUserAgentForURLHasMacPlatformQuirk("http://exchange.tu-berlin.de/");
     assertUserAgentForURLHasMacPlatformQuirk("http://www.sspa.juntadeandalucia.es/");
-- 
GitLab


From 8198723b32c559cb6a1d8719f32bc2b062e0bdd2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dylan=20A=C3=AFssi?= <devel@lists.apertis.org>
Date: Tue, 3 Dec 2024 08:21:44 +0000
Subject: [PATCH 2/3] Release webkit2gtk version 2.46.4-1~deb12u1+apertis1
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Dylan Aïssi <dylan.aissi@collabora.com>
---
 debian/changelog | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/debian/changelog b/debian/changelog
index e81dcf2af1..f61f1787dc 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+webkit2gtk (2.46.4-1~deb12u1+apertis1) apertis; urgency=medium
+
+  * Sync from debian/bookworm-security.
+  * Remaining Apertis specific changes:
+    + Disable spellchecking (T2412).
+    + d/control: Remove libenchant-2-dev dependency
+    + d/control: Remove libmanette-0.2-dev dependency
+    + d/rules: Set gamepad support to off to avoid libmanette dependency
+
+ -- Apertis CI <devel@lists.apertis.org>  Tue, 03 Dec 2024 08:21:43 +0000
+
 webkit2gtk (2.46.4-1~deb12u1) bookworm-security; urgency=medium
 
   * Rebuild for bookworm-security.
-- 
GitLab


From ca355869927f5db2e856e3d486b51a2f2679df55 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Dylan=20A=C3=AFssi?= <dylan.aissi@collabora.com>
Date: Tue, 3 Dec 2024 08:52:22 +0000
Subject: [PATCH 3/3] Refresh the automatically detected licensing information
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Signed-off-by: Dylan Aïssi <dylan.aissi@collabora.com>
---
 debian/apertis/copyright | 65 ++++++++++++++++++++++++----------------
 1 file changed, 39 insertions(+), 26 deletions(-)

diff --git a/debian/apertis/copyright b/debian/apertis/copyright
index 59c6a2b32e..834d2239b7 100644
--- a/debian/apertis/copyright
+++ b/debian/apertis/copyright
@@ -9178,8 +9178,8 @@ Copyright: 2013-2016, Apple Inc.
 License: BSD-3-clause
 
 Files: Source/WebCore/Modules/mediastream/gstreamer/*
-Copyright: 2018-2020, 2022, Metrological Group B.V.
- 2017-2022, Igalia S.L.
+Copyright: 2018-2020, 2022, 2024, Metrological Group B.V.
+ 2017-2022, 2024, Igalia S.L.
 License: LGPL-2+
 
 Files: Source/WebCore/Modules/mediastream/libwebrtc/*
@@ -19010,8 +19010,8 @@ Copyright: 2018, 2022, 2023, Metrological Group B.V.
 License: LGPL-2+
 
 Files: Source/WebCore/platform/audio/gstreamer/GStreamerAudioStreamDescription.h
-Copyright: 2018-2020, 2022, Metrological Group B.V.
- 2017-2022, Igalia S.L.
+Copyright: 2018-2020, 2022, 2024, Metrological Group B.V.
+ 2017-2022, 2024, Igalia S.L.
 License: LGPL-2+
 
 Files: Source/WebCore/platform/calc/*
@@ -21154,6 +21154,15 @@ Copyright: 2015, 2016, Igalia S.L.
  2010, Nokia Corporation and/or its subsidiary(-ies)
 License: LGPL-2+
 
+Files: Source/WebCore/platform/graphics/texmap/FloatPlane3D.cpp
+ Source/WebCore/platform/graphics/texmap/FloatPlane3D.h
+ Source/WebCore/platform/graphics/texmap/FloatPolygon3D.cpp
+ Source/WebCore/platform/graphics/texmap/FloatPolygon3D.h
+ Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.cpp
+ Source/WebCore/platform/graphics/texmap/TextureMapperLayer3DRenderingContext.h
+Copyright: 2024, Jani Hautakangas <jani@kodegood.com>
+License: BSD-2-clause
+
 Files: Source/WebCore/platform/graphics/texmap/GraphicsContextGLTextureMapperANGLE.cpp
 Copyright: 2005-2024, Apple Inc.
  2005, 2007, 2009-2015, 2017-2021, Google Inc.
@@ -21342,8 +21351,8 @@ License: BSD-2-clause
 
 Files: Source/WebCore/platform/gstreamer/VideoEncoderPrivateGStreamer.cpp
  Source/WebCore/platform/gstreamer/VideoEncoderPrivateGStreamer.h
-Copyright: 2018-2020, 2022, Metrological Group B.V.
- 2017-2022, Igalia S.L.
+Copyright: 2018-2020, 2022, 2024, Metrological Group B.V.
+ 2017-2022, 2024, Igalia S.L.
 License: LGPL-2+
 
 Files: Source/WebCore/platform/gstreamer/WebKitFliteSourceGStreamer.cpp
@@ -21720,6 +21729,26 @@ Copyright: 2018-2024, Apple Inc.
 License: BSD-2-clause
 
 Files: Source/WebCore/platform/mediastream/gstreamer/*
+Copyright: 2018-2020, 2022, 2024, Metrological Group B.V.
+ 2017-2022, 2024, Igalia S.L.
+License: LGPL-2+
+
+Files: Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.cpp
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCapturer.cpp
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCapturer.h
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.h
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.cpp
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.cpp
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCapturer.h
+ Source/WebCore/platform/mediastream/gstreamer/MockDisplayCaptureSourceGStreamer.h
+ Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.cpp
+ Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h
+ Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h
+ Source/WebCore/platform/mediastream/gstreamer/RealtimeMediaSourceCenterGStreamer.cpp
 Copyright: 2020, Igalia S.L.
  2018, Metrological Group B.V.
 License: LGPL-2+
@@ -21738,27 +21767,11 @@ Files: Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDevice.h
 Copyright: 2018, 2022, 2023, Metrological Group B.V.
 License: LGPL-2+
 
-Files: Source/WebCore/platform/mediastream/gstreamer/GStreamerDTMFSenderBackend.cpp
- Source/WebCore/platform/mediastream/gstreamer/GStreamerDTMFSenderBackend.h
- Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingAudioSourceGStreamer.cpp
- Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingAudioSourceGStreamer.h
- Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingSourceGStreamer.cpp
- Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingSourceGStreamer.h
- Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingVideoSourceGStreamer.cpp
- Source/WebCore/platform/mediastream/gstreamer/RealtimeIncomingVideoSourceGStreamer.h
- Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.cpp
- Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceGStreamer.h
- Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.cpp
- Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h
- Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.cpp
- Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceGStreamer.h
-Copyright: 2018-2020, 2022, Metrological Group B.V.
- 2017-2022, Igalia S.L.
-License: LGPL-2+
-
 Files: Source/WebCore/platform/mediastream/gstreamer/GStreamerIncomingTrackProcessor.cpp
  Source/WebCore/platform/mediastream/gstreamer/GStreamerIncomingTrackProcessor.h
  Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCCommon.h
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.cpp
+ Source/WebCore/platform/mediastream/gstreamer/GStreamerWebRTCLogSink.h
 Copyright: 2010-2024, Igalia S.L.
 License: LGPL-2+
 
@@ -21797,8 +21810,8 @@ Copyright: 2003-2024, Apple Inc.
 License: BSD-3-clause
 
 Files: Source/WebCore/platform/mediastream/libwebrtc/gstreamer/*
-Copyright: 2018-2020, 2022, Metrological Group B.V.
- 2017-2022, Igalia S.L.
+Copyright: 2018-2020, 2022, 2024, Metrological Group B.V.
+ 2017-2022, 2024, Igalia S.L.
 License: LGPL-2+
 
 Files: Source/WebCore/platform/mediastream/libwebrtc/gstreamer/GStreamerVideoFrameLibWebRTC.cpp
-- 
GitLab