[webkit-reviews] review denied: [Bug 204619] [GTK][WPE] Web Inspector: Add new tab for GStreamer pipelines inspection : [Attachment 384353] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Tue Nov 26 15:46:47 PST 2019
Devin Rousso <drousso at apple.com> has denied Philippe Normand
<pnormand at igalia.com>'s request for review:
Bug 204619: [GTK][WPE] Web Inspector: Add new tab for GStreamer pipelines
inspection
https://bugs.webkit.org/show_bug.cgi?id=204619
Attachment 384353: Patch
https://bugs.webkit.org/attachment.cgi?id=384353&action=review
--- Comment #6 from Devin Rousso <drousso at apple.com> ---
Comment on attachment 384353
--> https://bugs.webkit.org/attachment.cgi?id=384353
Patch
View in context: https://bugs.webkit.org/attachment.cgi?id=384353&action=review
r-, overall nice job on Web Inspector code :)
I think there was a lot of copy/paste of the frontend code that isn't correct.
I'd also like to see this guarded so unnecessary resources aren't being loaded
for ports that won't use them.
> Source/JavaScriptCore/inspector/protocol/Page.json:153
> + "name": "getGStreamerPipelinesNames",
Instead of adding these to the `Page` domain (which doesn't really have
anything to do with media), can we create a `GStreamer` domain (and associated
agent) and have it be guarded by `USE(GSTREAMER)` (see 'IndexedDB.json' for an
example). This way, non-GStreamer platforms don't have these commands and
don't have to worry about them (which would also make feature checking in the
frontend easier).
> Source/JavaScriptCore/inspector/protocol/Page.json:388
> + "parameters": []
No need to include this if there are no `parameters`.
> Source/WebCore/inspector/InspectorInstrumentation.cpp:1276
> + if (InspectorPageAgent* inspectorPageAgent =
instrumentingAgents.inspectorPageAgent())
`auto`
> Source/WebCore/inspector/InspectorInstrumentation.h:316
> + static void gstreamerPipelineCacheUpdated(Page*);
Can we wrap these in `USE(GSTREAMER)`?
> Source/WebCore/inspector/InspectorInstrumentation.h:1607
> +
Oops.
> Source/WebCore/inspector/InspectorInstrumentation.h:1618
> + if (InstrumentingAgents* instrumentingAgents =
instrumentingAgentsForPage(page))
`auto`
> Source/WebCore/inspector/agents/InspectorPageAgent.cpp:1018
> +void InspectorPageAgent::dumpGStreamerPipeline(ErrorString& errorString,
const String& pipeline, const String& child, String*
pipelineGraphRepresentation)
This should be `const String*`.
> Source/WebCore/platform/graphics/gstreamer/GStreamerCommon.cpp:387
> + static NeverDestroyed<HashMap<CString, GstBin*>> gstreamerPipelines;
Do you want to wrap accesses to this with a lock? We've done similar things
like this in the past. See `CanvasRenderingContext` for an example.
> Source/WebInspectorUI/Scripts/copy-user-interface-resources.pl:344
> + # Combine the svg-pan-zoom.js JavaScript files in Production builds into
a single file (SvgPanZoom.js).
Is this necessary? I'd like to avoid including this on non-GStreamer ports.
>> Source/WebInspectorUI/Scripts/copy-user-interface-resources.pl:360
>> + '--output-script-name', 'Three.js');
>
> Is this still used somewhere? It looks like you remove it above.
This is used by the Layers Tab.
> Source/WebInspectorUI/Scripts/copy-user-interface-resources.pl:362
> + # Combine the viz.js JavaScript files in Production builds into a single
file (Viz.js).
Ditto
> Source/WebInspectorUI/UserInterface/Controllers/GStreamerManager.js:21
> + // Public
We put this below the `constructor`.
> Source/WebInspectorUI/UserInterface/Images/GStreamer.svg:58
> +
Extra newlines?
> Source/WebInspectorUI/UserInterface/Models/GStreamerPipeline.js:46
> +
Unnecessary newline.
> Source/WebInspectorUI/UserInterface/Views/GStreamerSidebarPanel.css:19
> +.sidebar > .panel.navigation.debugger > .content {
I think you mean `.gstreamer` instead of `.debugger`?
Most of these styles also seem wrong.
> Source/WebInspectorUI/UserInterface/Views/GStreamerSidebarPanel.js:23
> + super("gstreamer", WI.UIString("GStreamer"), true);
Do you really need `true` for
`shouldAutoPruneStaleTopLevelResourceTreeElements`?
More information about the webkit-reviews
mailing list