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

Reply via email to