Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 4c4e32ead41f905d6e3b0742b99775e38b0cf1dd
https://github.com/WebKit/WebKit/commit/4c4e32ead41f905d6e3b0742b99775e38b0cf1dd
Author: Devin Rousso <[email protected]>
Date: 2026-07-24 (Fri, 24 Jul 2026)
Changed paths:
M Source/WebCore/CMakeLists.txt
M Source/WebCore/DerivedSources-output.xcfilelist
M Source/WebCore/DerivedSources.make
M Source/WebCore/WebCoreMacros.cmake
M Source/WebCore/bindings/scripts/CodeGenerator.pm
A
Source/WebCore/bindings/scripts/combine-inspector-native-function-parameters.pl
A
Source/WebCore/bindings/scripts/test/JS/TestCallTracer.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestCallbackInterface.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestConditionalIncludes.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestDOMJIT.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestDomainSecurity.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestEnabledBySetting.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestEventTarget.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestGlobalObject.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestIndexedSetterWithIdentifier.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestInterface.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestLegacyOverrideBuiltIns.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestNamedAndIndexedSetterWithIdentifier.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestNamedDeleterWithIdentifier.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestNamedGetterWithIdentifier.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestNamedSetterWithIdentifier.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestNamedSetterWithIndexedGetter.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestNamedSetterWithIndexedGetterAndSetter.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestNamespaceObject.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestObj.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestScheduledAction.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestSerializedScriptValueInterface.inspector-native-function-parameters.json
A
Source/WebCore/bindings/scripts/test/JS/TestTypedefs.inspector-native-function-parameters.json
M Source/WebInspectorUI/CMakeLists.txt
M Source/WebInspectorUI/Scripts/copy-user-interface-resources.pl
A Source/WebInspectorUI/Scripts/update-NativeFunctionParameters.py
A
Source/WebInspectorUI/UserInterface/Models/NativeFunctionParameters-overrides.json
R Source/WebInspectorUI/UserInterface/Models/NativeFunctionParameters.js
M Source/WebInspectorUI/UserInterface/Views/ObjectTreePropertyTreeElement.js
M Source/WebInspectorUI/WebInspectorUI.xcodeproj/project.pbxproj
Log Message:
-----------
Web Inspector: Show Parameter Lists for Native DOM methods
https://bugs.webkit.org/show_bug.cgi?id=142657
<rdar://problem/20149674>
Reviewed by Yusuke Suzuki.
Rather than trying to keep a manual list, leverage the pretty format of
IDL to autogenerate `WI.NativeConstructorFunctionParameters` and
`WI.NativePrototypeFunctionParameters`.
* Source/WebCore/bindings/scripts/CodeGenerator.pm:
(ProcessInterfaces):
(WriteInspectorNativeFunctionParameters): Added.
Modify the IDL parser to output `*.inspector-native-function-parameters.json`
files containing a pretty string of the arguments for any class-level and
instance-level methods.
*
Source/WebCore/bindings/scripts/combine-inspector-native-function-parameters.pl:
Added.
Combine all `*.inspector-native-function-parameters.json` into a single
`InspectorNativeFunctionParameters.json`.
* Source/WebInspectorUI/UserInterface/Models/NativeFunctionParameters.js:
Removed.
*
Source/WebInspectorUI/UserInterface/Models/NativeFunctionParameters-overrides.json:
Added.
Pure JS APIs do not have anything like pretty formatted IDL to draw from like
other web APIs.
Instead, have these be handwritten in a JSON file until a solution can be found
for them.
This also
allows for Web Inspector to override anything that is automatic if needed.
* Source/WebInspectorUI/Scripts/update-NativeFunctionParameters.py: Added.
Merge the `InspectorNativeFunctionParameters.json` with the overrides file and
generate `NativeFunctionParameters.js`.
* Source/WebInspectorUI/Scripts/copy-user-interface-resources.pl:
Copy `NativeFunctionParameters.js` alongside all other resources.
* Source/WebInspectorUI/UserInterface/Views/ObjectTreePropertyTreeElement.js:
(WI.ObjectTreePropertyTreeElement.prototype._functionParameterString):
Drive-by: also handle `Atomics`, `Intl`, and `WebAssembly` namespace objects.
* Source/WebCore/CMakeLists.txt:
* Source/WebCore/DerivedSources.make:
* Source/WebCore/DerivedSources-output.xcfilelist:
* Source/WebCore/WebCoreMacros.cmake:
* Source/WebInspectorUI/CMakeLists.txt:
* Source/WebInspectorUI/WebInspectorUI.xcodeproj/project.pbxproj:
*
Source/WebCore/bindings/scripts/test/JS/TestCallTracer.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestCallbackInterface.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestConditionalIncludes.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestDOMJIT.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestDomainSecurity.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestEnabledBySetting.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestEventTarget.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestGlobalObject.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestIndexedSetterWithIdentifier.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestInterface.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestLegacyOverrideBuiltIns.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestNamedAndIndexedSetterWithIdentifier.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestNamedDeleterWithIdentifier.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestNamedGetterWithIdentifier.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestNamedSetterWithIdentifier.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestNamedSetterWithIndexedGetter.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestNamedSetterWithIndexedGetterAndSetter.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestNamespaceObject.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestObj.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestScheduledAction.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestSerializedScriptValueInterface.inspector-native-function-parameters.json:
Added.
*
Source/WebCore/bindings/scripts/test/JS/TestTypedefs.inspector-native-function-parameters.json:
Added.
Canonical link:
https://flagged.apple.com:443/proxy?t2=DA6X8i9EJ5&o=aHR0cHM6Ly9jb21taXRzLndlYmtpdC5vcmcvMzE3ODU3QG1haW4=&emid=96bb61c3-6486-4f88-9022-59c9cb6f8bce&c=11
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications