chrome-devtools-frontend 1.0.1376716 → 1.0.1380117
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/config/gni/devtools_grd_files.gni +15 -7
- package/config/gni/devtools_image_files.gni +2 -0
- package/front_end/Images/src/animation.svg +3 -0
- package/front_end/Images/src/brush-2.svg +3 -0
- package/front_end/core/common/SettingRegistration.ts +1 -1
- package/front_end/core/host/AidaClient.ts +1 -0
- package/front_end/core/host/InspectorFrontendHost.ts +4 -0
- package/front_end/core/i18n/ByteUtilities.test.ts +34 -0
- package/front_end/core/i18n/ByteUtilities.ts +65 -0
- package/front_end/core/i18n/NumberFormatter.ts +75 -0
- package/front_end/core/i18n/i18n.ts +4 -0
- package/front_end/core/i18n/time-utilities.test.ts +20 -2
- package/front_end/core/i18n/time-utilities.ts +125 -86
- package/front_end/core/platform/NumberUtilities.test.ts +3 -26
- package/front_end/core/platform/NumberUtilities.ts +0 -20
- package/front_end/core/root/Runtime.ts +6 -3
- package/front_end/core/sdk/CPUThrottlingManager.ts +4 -0
- package/front_end/core/sdk/CSSContainerQuery.test.ts +10 -16
- package/front_end/core/sdk/CSSContainerQuery.ts +3 -15
- package/front_end/core/sdk/CSSMatchedStyles.test.ts +4 -0
- package/front_end/core/sdk/CSSMatchedStyles.ts +5 -5
- package/front_end/core/sdk/CSSModel.ts +18 -0
- package/front_end/core/sdk/CSSPropertyParser.test.ts +16 -1
- package/front_end/core/sdk/CSSPropertyParser.ts +2 -2
- package/front_end/core/sdk/sdk-meta.ts +8 -0
- package/front_end/entrypoints/heap_snapshot_worker/HeapSnapshot.ts +3 -3
- package/front_end/generated/ARIAProperties.js +4 -0
- package/front_end/generated/InspectorBackendCommands.js +8 -6
- package/front_end/generated/SupportedCSSProperties.js +17 -4
- package/front_end/generated/protocol-mapping.d.ts +15 -1
- package/front_end/generated/protocol-proxy-api.d.ts +14 -1
- package/front_end/generated/protocol.ts +26 -2
- package/front_end/models/extensions/ExtensionAPI.ts +9 -1
- package/front_end/models/heap_snapshot_model/HeapSnapshotModel.ts +2 -0
- package/front_end/models/javascript_metadata/NativeFunctions.js +8 -21
- package/front_end/models/live-metrics/web-vitals-injected/{rollup.config.js → rollup.config.mjs} +1 -1
- package/front_end/models/persistence/EditFileSystemView.ts +19 -9
- package/front_end/models/persistence/WorkspaceSettingsTab.ts +50 -54
- package/front_end/models/persistence/editFileSystemView.css +35 -15
- package/front_end/models/persistence/workspaceSettingsTab.css +21 -87
- package/front_end/models/timeline_model/timeline_model.ts +0 -6
- package/front_end/models/trace/Processor.test.ts +18 -17
- package/front_end/models/trace/Processor.ts +10 -14
- package/front_end/models/trace/README.md +0 -1
- package/front_end/models/{timeline_model → trace/extras}/TimelineJSProfile.ts +19 -29
- package/front_end/models/{timeline_model/TimelineModelFilter.test.ts → trace/extras/TraceFilter.test.ts} +15 -17
- package/front_end/models/trace/extras/TraceFilter.ts +62 -0
- package/front_end/models/{timeline_model/TimelineProfileTree.test.ts → trace/extras/TraceTree.test.ts} +44 -43
- package/front_end/models/{timeline_model/TimelineProfileTree.ts → trace/extras/TraceTree.ts} +65 -59
- package/front_end/models/trace/extras/extras.ts +3 -0
- package/front_end/models/trace/handlers/AnimationHandler.ts +0 -8
- package/front_end/models/trace/handlers/ExtensionTraceDataHandler.ts +1 -11
- package/front_end/models/trace/handlers/FramesHandler.test.ts +1 -6
- package/front_end/models/trace/handlers/FramesHandler.ts +1 -14
- package/front_end/models/trace/handlers/GPUHandler.test.ts +0 -2
- package/front_end/models/trace/handlers/GPUHandler.ts +1 -25
- package/front_end/models/trace/handlers/ImagePaintingHandler.ts +3 -0
- package/front_end/models/trace/handlers/InitiatorsHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/InitiatorsHandler.ts +0 -20
- package/front_end/models/trace/handlers/InvalidationsHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/InvalidationsHandler.ts +0 -18
- package/front_end/models/trace/handlers/LargestImagePaintHandler.test.ts +2 -2
- package/front_end/models/trace/handlers/LargestImagePaintHandler.ts +63 -3
- package/front_end/models/trace/handlers/LargestTextPaintHandler.ts +3 -0
- package/front_end/models/trace/handlers/LayerTreeHandler.test.ts +0 -2
- package/front_end/models/trace/handlers/LayerTreeHandler.ts +1 -18
- package/front_end/models/trace/handlers/LayoutShiftsHandler.test.ts +0 -3
- package/front_end/models/trace/handlers/LayoutShiftsHandler.ts +1 -20
- package/front_end/models/trace/handlers/MemoryHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/MemoryHandler.ts +3 -0
- package/front_end/models/trace/handlers/MetaHandler.test.ts +1 -32
- package/front_end/models/trace/handlers/MetaHandler.ts +2 -30
- package/front_end/models/trace/handlers/NetworkRequestsHandler.test.ts +0 -26
- package/front_end/models/trace/handlers/NetworkRequestsHandler.ts +4 -23
- package/front_end/models/trace/handlers/PageFramesHandler.ts +3 -0
- package/front_end/models/trace/handlers/RendererHandler.test.ts +0 -4
- package/front_end/models/trace/handlers/RendererHandler.ts +1 -24
- package/front_end/models/trace/handlers/SamplesHandler.test.ts +0 -5
- package/front_end/models/trace/handlers/SamplesHandler.ts +0 -26
- package/front_end/models/trace/handlers/ScreenshotsHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/SelectorStatsHandler.ts +3 -0
- package/front_end/models/trace/handlers/ServerTimingsHandler.ts +1 -16
- package/front_end/models/trace/handlers/Threads.test.ts +1 -2
- package/front_end/models/trace/handlers/UserInteractionsHandler.test.ts +4 -27
- package/front_end/models/trace/handlers/UserInteractionsHandler.ts +16 -25
- package/front_end/models/trace/handlers/UserTimingsHandler.ts +0 -17
- package/front_end/models/trace/handlers/WorkersHandler.test.ts +0 -1
- package/front_end/models/trace/handlers/WorkersHandler.ts +0 -23
- package/front_end/models/trace/handlers/types.ts +1 -8
- package/front_end/models/trace/insights/{CumulativeLayoutShift.test.ts → CLSCulprits.test.ts} +21 -21
- package/front_end/models/trace/insights/{CumulativeLayoutShift.ts → CLSCulprits.ts} +24 -5
- package/front_end/models/trace/insights/Common.ts +5 -55
- package/front_end/models/trace/insights/DocumentLatency.test.ts +2 -2
- package/front_end/models/trace/insights/DocumentLatency.ts +26 -6
- package/front_end/models/trace/insights/FontDisplay.ts +24 -5
- package/front_end/models/trace/insights/InteractionToNextPaint.test.ts +1 -1
- package/front_end/models/trace/insights/InteractionToNextPaint.ts +26 -6
- package/front_end/models/trace/insights/LCPDiscovery.test.ts +58 -0
- package/front_end/models/trace/insights/LCPDiscovery.ts +101 -0
- package/front_end/models/trace/insights/{LargestContentfulPaint.test.ts → LCPPhases.test.ts} +6 -28
- package/front_end/models/trace/insights/{LargestContentfulPaint.ts → LCPPhases.ts} +37 -38
- package/front_end/models/trace/insights/{InsightRunners.ts → Models.ts} +4 -3
- package/front_end/models/trace/insights/RenderBlocking.test.ts +1 -1
- package/front_end/models/trace/insights/RenderBlocking.ts +33 -28
- package/front_end/models/trace/insights/SlowCSSSelector.ts +26 -5
- package/front_end/models/trace/insights/{ThirdPartyWeb.test.ts → ThirdParties.test.ts} +3 -3
- package/front_end/models/trace/insights/{ThirdPartyWeb.ts → ThirdParties.ts} +24 -5
- package/front_end/models/trace/insights/Viewport.test.ts +1 -1
- package/front_end/models/trace/insights/Viewport.ts +27 -9
- package/front_end/models/trace/insights/insights.ts +1 -1
- package/front_end/models/trace/insights/types.ts +11 -9
- package/front_end/models/trace/types/TraceEvents.ts +51 -22
- package/front_end/panels/application/SharedStorageItemsView.test.ts +3 -3
- package/front_end/panels/application/SharedStorageItemsView.ts +5 -3
- package/front_end/panels/application/StorageView.ts +3 -3
- package/front_end/panels/application/components/StorageMetadataView.ts +1 -2
- package/front_end/panels/browser_debugger/XHRBreakpointsSidebarPane.ts +34 -31
- package/front_end/panels/coverage/CoverageView.ts +3 -3
- package/front_end/panels/elements/ComputedStyleModel.ts +9 -2
- package/front_end/panels/elements/ComputedStyleWidget.test.ts +72 -0
- package/front_end/panels/elements/ComputedStyleWidget.ts +12 -0
- package/front_end/panels/elements/ElementStatePaneWidget.test.ts +84 -30
- package/front_end/panels/elements/ElementStatePaneWidget.ts +42 -24
- package/front_end/panels/elements/ElementsTreeElement.ts +24 -11
- package/front_end/panels/elements/MetricsSidebarPane.ts +12 -7
- package/front_end/panels/elements/PropertyMatchers.ts +3 -0
- package/front_end/panels/elements/StylePropertiesSection.ts +15 -6
- package/front_end/panels/elements/StylePropertyTreeElement.test.ts +3 -1
- package/front_end/panels/elements/StylePropertyTreeElement.ts +8 -3
- package/front_end/panels/elements/stylePropertiesTreeOutline.css +2 -2
- package/front_end/panels/explain/components/ConsoleInsight.ts +8 -18
- package/front_end/panels/freestyler/AiAgent.test.ts +58 -1
- package/front_end/panels/freestyler/AiAgent.ts +58 -3
- package/front_end/panels/freestyler/DrJonesFileAgent.test.ts +99 -23
- package/front_end/panels/freestyler/DrJonesFileAgent.ts +53 -20
- package/front_end/panels/freestyler/DrJonesNetworkAgent.test.ts +15 -7
- package/front_end/panels/freestyler/DrJonesNetworkAgent.ts +36 -15
- package/front_end/panels/freestyler/DrJonesPerformanceAgent.test.ts +6 -6
- package/front_end/panels/freestyler/DrJonesPerformanceAgent.ts +48 -8
- package/front_end/panels/freestyler/FreestylerAgent.test.ts +15 -14
- package/front_end/panels/freestyler/FreestylerAgent.ts +52 -8
- package/front_end/panels/freestyler/FreestylerPanel.test.ts +539 -39
- package/front_end/panels/freestyler/FreestylerPanel.ts +349 -215
- package/front_end/panels/freestyler/components/FreestylerChatUi.test.ts +126 -34
- package/front_end/panels/freestyler/components/FreestylerChatUi.ts +320 -268
- package/front_end/panels/freestyler/components/UserActionRow.ts +156 -47
- package/front_end/panels/freestyler/components/freestylerChatUi.css +69 -34
- package/front_end/panels/freestyler/components/userActionRow.css +40 -67
- package/front_end/panels/freestyler/freestyler-meta.ts +3 -11
- package/front_end/panels/issues/components/HideIssuesMenu.ts +2 -11
- package/front_end/panels/layer_viewer/LayerDetailsView.ts +1 -2
- package/front_end/panels/layer_viewer/PaintProfilerView.ts +5 -5
- package/front_end/panels/lighthouse/LighthouseReportRenderer.ts +46 -0
- package/front_end/panels/mobile_throttling/ThrottlingSettingsTab.ts +26 -17
- package/front_end/panels/mobile_throttling/throttlingSettingsTab.css +25 -19
- package/front_end/panels/network/BinaryResourceView.ts +6 -7
- package/front_end/panels/network/EventSourceMessagesView.ts +1 -1
- package/front_end/panels/network/NetworkDataGridNode.ts +3 -3
- package/front_end/panels/network/NetworkLogView.ts +7 -8
- package/front_end/panels/network/RequestTimingView.test.ts +35 -1
- package/front_end/panels/network/RequestTimingView.ts +96 -0
- package/front_end/panels/network/ResourceWebSocketFrameView.ts +2 -2
- package/front_end/panels/network/networkTimingTable.css +2 -1
- package/front_end/panels/performance_monitor/PerformanceMonitor.ts +1 -1
- package/front_end/panels/profiler/HeapProfileView.ts +3 -3
- package/front_end/panels/profiler/HeapSnapshotView.ts +2 -2
- package/front_end/panels/profiler/HeapTimelineOverview.ts +12 -12
- package/front_end/panels/profiler/IsolateSelector.ts +3 -4
- package/front_end/panels/profiler/ProfileFlameChartDataProvider.ts +1 -1
- package/front_end/panels/profiler/ProfileSidebarTreeElement.ts +7 -6
- package/front_end/panels/profiler/ProfileView.ts +1 -1
- package/front_end/panels/recorder/components/RecordingView.ts +2 -2
- package/front_end/panels/recorder/injected/{rollup.config.js → rollup.config.mjs} +1 -1
- package/front_end/panels/recorder/recorderController.css +0 -4
- package/front_end/panels/security/CookieReportTreeElement.ts +1 -9
- package/front_end/panels/security/CookieReportView.ts +120 -0
- package/front_end/panels/security/SecurityPanel.ts +8 -2
- package/front_end/panels/security/cookieReportView.css +46 -0
- package/front_end/panels/security/sidebar.css +1 -2
- package/front_end/panels/sensors/LocationsSettingsTab.ts +26 -11
- package/front_end/panels/sensors/locationsSettingsTab.css +18 -18
- package/front_end/panels/settings/AISettingsTab.ts +6 -15
- package/front_end/panels/settings/KeybindsSettingsTab.ts +1 -1
- package/front_end/panels/settings/SettingsScreen.ts +61 -56
- package/front_end/panels/settings/aiSettingsTab.css +3 -14
- package/front_end/panels/settings/components/SyncSection.ts +1 -2
- package/front_end/panels/settings/components/syncSection.css +0 -10
- package/front_end/panels/settings/frameworkIgnoreListSettingsTab.css +3 -1
- package/front_end/panels/settings/keybindsSettingsTab.css +7 -10
- package/front_end/panels/settings/settingsScreen.css +27 -125
- package/front_end/panels/sources/DebuggerPlugin.ts +9 -4
- package/front_end/panels/sources/NavigatorView.ts +11 -13
- package/front_end/panels/timeline/ActiveFilters.ts +3 -4
- package/front_end/panels/timeline/AnimationsTrackAppender.ts +1 -2
- package/front_end/panels/timeline/CountersGraph.ts +2 -4
- package/front_end/panels/timeline/EventsTimelineTreeView.ts +7 -8
- package/front_end/panels/timeline/README.md +2 -1
- package/front_end/panels/timeline/TimelineController.ts +14 -4
- package/front_end/panels/timeline/TimelineEventOverview.ts +3 -4
- package/front_end/panels/timeline/TimelineFilters.ts +3 -4
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.test.ts +1 -1
- package/front_end/panels/timeline/TimelineFlameChartDataProvider.ts +3 -10
- package/front_end/panels/timeline/TimelineFlameChartNetworkDataProvider.ts +1 -2
- package/front_end/panels/timeline/TimelineFlameChartView.ts +21 -12
- package/front_end/panels/timeline/TimelineLoader.test.ts +1 -2
- package/front_end/panels/timeline/TimelineLoader.ts +3 -4
- package/front_end/panels/timeline/TimelineMiniMap.ts +10 -0
- package/front_end/panels/timeline/TimelinePanel.ts +20 -8
- package/front_end/panels/timeline/TimelineTreeView.test.ts +12 -13
- package/front_end/panels/timeline/TimelineTreeView.ts +35 -40
- package/front_end/panels/timeline/TimelineUIUtils.test.ts +2 -2
- package/front_end/panels/timeline/TimelineUIUtils.ts +12 -14
- package/front_end/panels/timeline/components/LayoutShiftDetails.ts +6 -7
- package/front_end/panels/timeline/components/LiveMetricsView.test.ts +3 -3
- package/front_end/panels/timeline/components/LiveMetricsView.ts +14 -26
- package/front_end/panels/timeline/components/MetricCard.test.ts +1 -1
- package/front_end/panels/timeline/components/MetricCard.ts +46 -0
- package/front_end/panels/timeline/components/NetworkRequestDetails.ts +3 -4
- package/front_end/panels/timeline/components/SidebarSingleInsightSet.test.ts +2 -0
- package/front_end/panels/timeline/components/SidebarSingleInsightSet.ts +41 -36
- package/front_end/panels/timeline/components/insights/CLSCulprits.ts +19 -33
- package/front_end/panels/timeline/components/insights/DocumentLatency.ts +29 -40
- package/front_end/panels/timeline/components/insights/FontDisplay.ts +17 -23
- package/front_end/panels/timeline/components/insights/Helpers.ts +12 -16
- package/front_end/panels/timeline/components/insights/InteractionToNextPaint.ts +14 -26
- package/front_end/panels/timeline/components/insights/LCPDiscovery.ts +25 -37
- package/front_end/panels/timeline/components/insights/LCPPhases.ts +20 -47
- package/front_end/panels/timeline/components/insights/RenderBlocking.ts +19 -28
- package/front_end/panels/timeline/components/insights/SidebarInsight.ts +1 -2
- package/front_end/panels/timeline/components/insights/SlowCSSSelector.ts +18 -31
- package/front_end/panels/timeline/components/insights/Table.ts +5 -3
- package/front_end/panels/timeline/components/insights/ThirdParties.ts +18 -25
- package/front_end/panels/timeline/components/insights/Viewport.ts +14 -25
- package/front_end/panels/timeline/components/liveMetricsView.css +5 -13
- package/front_end/panels/timeline/components/metricCard.css +11 -0
- package/front_end/panels/timeline/components/sidebarInsightsTab.css +1 -1
- package/front_end/panels/timeline/overlays/OverlaysImpl.test.ts +5 -5
- package/front_end/panels/timeline/overlays/OverlaysImpl.ts +13 -12
- package/front_end/panels/timeline/timelineFlameChartView.css +1 -1
- package/front_end/panels/timeline/utils/AICallTree.test.ts +105 -0
- package/front_end/panels/timeline/utils/AICallTree.ts +25 -24
- package/front_end/testing/EnvironmentHelpers.ts +5 -18
- package/front_end/testing/InsightHelpers.ts +4 -4
- package/front_end/testing/TraceHelpers.ts +1 -1
- package/front_end/third_party/puppeteer/README.chromium +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts +2 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.d.ts +14 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.js +16 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.d.ts +34 -5
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.js +51 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/api/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/ElementHandle.js +10 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Frame.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.d.ts +14 -4
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.js +57 -23
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/bidi/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.js +13 -10
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.d.ts +15 -4
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.js +55 -26
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/cdp/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.d.ts +0 -8
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.js +2 -11
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/CallbackRegistry.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.js +5 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/ConsoleMessage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.d.ts +7 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.js +9 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/Errors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WaitTask.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WaitTask.js +5 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/common/WaitTask.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.js +0 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/environment.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/injected.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/generated/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/injected/injected.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.d.ts +3 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js +3 -3
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/revisions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/Mutex.d.ts +2 -2
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.d.ts +14 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.js +18 -0
- package/front_end/third_party/puppeteer/package/lib/cjs/puppeteer/util/incremental-id-generator.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.d.ts +51 -10
- package/front_end/third_party/puppeteer/package/lib/es5-iife/puppeteer-core-browser.js +215 -97
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts +2 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Browser.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.d.ts +14 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.js +16 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.d.ts +34 -5
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.js +51 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/api/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/ElementHandle.js +10 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Frame.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.d.ts +14 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.js +57 -23
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/bidi/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.js +13 -10
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/ElementHandle.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.d.ts +15 -4
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.js +55 -26
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/cdp/Input.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.d.ts +0 -8
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.js +1 -9
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/CallbackRegistry.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.d.ts +2 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.js +5 -2
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/ConsoleMessage.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts +7 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.js +7 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/Errors.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WaitTask.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WaitTask.js +5 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/common/WaitTask.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.d.ts.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.js +0 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/environment.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/injected.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.d.ts +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/generated/version.js +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.d.ts +3 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js +3 -3
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/revisions.js.map +1 -1
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.d.ts +14 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.d.ts.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.js +15 -0
- package/front_end/third_party/puppeteer/package/lib/esm/puppeteer/util/incremental-id-generator.js.map +1 -0
- package/front_end/third_party/puppeteer/package/lib/types.d.ts +51 -10
- package/front_end/third_party/puppeteer/package/package.json +4 -4
- package/front_end/third_party/puppeteer/package/src/api/Browser.ts +2 -3
- package/front_end/third_party/puppeteer/package/src/api/ElementHandle.ts +21 -3
- package/front_end/third_party/puppeteer/package/src/api/Input.ts +57 -8
- package/front_end/third_party/puppeteer/package/src/bidi/ElementHandle.ts +9 -7
- package/front_end/third_party/puppeteer/package/src/bidi/Frame.ts +1 -0
- package/front_end/third_party/puppeteer/package/src/bidi/Input.ts +72 -31
- package/front_end/third_party/puppeteer/package/src/cdp/ElementHandle.ts +14 -9
- package/front_end/third_party/puppeteer/package/src/cdp/Input.ts +71 -26
- package/front_end/third_party/puppeteer/package/src/common/CallbackRegistry.ts +1 -15
- package/front_end/third_party/puppeteer/package/src/common/ConsoleMessage.ts +8 -1
- package/front_end/third_party/puppeteer/package/src/common/Errors.ts +7 -0
- package/front_end/third_party/puppeteer/package/src/common/WaitTask.ts +9 -9
- package/front_end/third_party/puppeteer/package/src/environment.ts +1 -4
- package/front_end/third_party/puppeteer/package/src/generated/injected.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/generated/version.ts +1 -1
- package/front_end/third_party/puppeteer/package/src/revisions.ts +3 -3
- package/front_end/third_party/puppeteer/package/src/util/incremental-id-generator.ts +20 -0
- package/front_end/third_party/puppeteer/puppeteer-tsconfig.json +1 -0
- package/front_end/ui/components/buttons/Button.test.ts +14 -0
- package/front_end/ui/components/buttons/Button.ts +27 -4
- package/front_end/ui/components/cards/card.css +7 -4
- package/front_end/ui/components/dialogs/Dialog.ts +2 -4
- package/front_end/ui/components/dialogs/ShortcutDialog.ts +15 -13
- package/front_end/ui/components/dialogs/dialog.css +2 -6
- package/front_end/ui/components/dialogs/shortcutDialog.css +33 -41
- package/front_end/ui/components/docs/freestyler/basic.ts +6 -8
- package/front_end/ui/components/docs/freestyler/empty_state.ts +6 -8
- package/front_end/ui/components/docs/performance_panel/track_example.html +1 -1
- package/front_end/ui/components/markdown_view/MarkdownView.test.ts +39 -17
- package/front_end/ui/components/markdown_view/MarkdownView.ts +77 -14
- package/front_end/ui/components/markdown_view/markdownView.css +15 -0
- package/front_end/ui/components/settings/SettingCheckbox.ts +3 -2
- package/front_end/ui/legacy/ContextMenu.ts +2 -2
- package/front_end/ui/legacy/InplaceEditor.ts +18 -14
- package/front_end/ui/legacy/TabbedPane.ts +0 -14
- package/front_end/ui/legacy/UIUtils.ts +0 -7
- package/front_end/ui/legacy/components/cookie_table/CookiesTable.ts +7 -2
- package/front_end/ui/legacy/components/data_grid/DataGrid.ts +8 -4
- package/front_end/ui/legacy/components/data_grid/ViewportDataGrid.ts +20 -11
- package/front_end/ui/legacy/components/inline_editor/LinkSwatch.test.ts +19 -0
- package/front_end/ui/legacy/components/inline_editor/LinkSwatch.ts +1 -1
- package/front_end/ui/legacy/components/object_ui/ObjectPropertiesSection.ts +1 -1
- package/front_end/ui/legacy/components/perf_ui/FlameChart.ts +5 -22
- package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +129 -100
- package/front_end/ui/legacy/components/perf_ui/TimelineGrid.ts +4 -2
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.test.ts +9 -4
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewCalculator.ts +6 -6
- package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +22 -4
- package/front_end/ui/legacy/components/perf_ui/flameChart.css +0 -2
- package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.test.ts +49 -0
- package/front_end/ui/legacy/components/source_frame/BinaryResourceViewFactory.ts +23 -46
- package/front_end/ui/legacy/components/source_frame/ImageView.ts +1 -1
- package/front_end/ui/legacy/components/utils/ImagePreview.ts +1 -1
- package/front_end/ui/legacy/textPrompt.css +1 -1
- package/front_end/ui/legacy/toolbar.css +4 -5
- package/front_end/ui/visual_logging/KnownContextValues.ts +174 -0
- package/front_end/ui/visual_logging/LoggingConfig.ts +6 -2
- package/package.json +7 -6
- package/scripts/build/ninja/bundle.gni +3 -3
- package/scripts/build/{rollup.config.js → rollup.config.mjs} +4 -4
- package/scripts/devtools_paths.py +8 -4
- package/scripts/eslint_rules/tests/check_test_definitions_test.js +8 -3
- package/scripts/tools/update_goldens_v2.py +1 -1
- package/front_end/models/timeline_model/TimelineModelFilter.ts +0 -61
- /package/front_end/Images/{rollup.config.js → rollup.config.mjs} +0 -0
@@ -1766,7 +1766,7 @@ export class NavigatorUISourceCodeTreeNode extends NavigatorTreeNode {
|
|
1766
1766
|
}
|
1767
1767
|
}
|
1768
1768
|
|
1769
|
-
rename(callback?: ((
|
1769
|
+
rename(callback?: ((committed: boolean) => void)): void {
|
1770
1770
|
if (!this.treeElement) {
|
1771
1771
|
return;
|
1772
1772
|
}
|
@@ -1781,21 +1781,19 @@ export class NavigatorUISourceCodeTreeNode extends NavigatorTreeNode {
|
|
1781
1781
|
const treeOutlineElement = this.treeElement.treeOutline.element;
|
1782
1782
|
UI.UIUtils.markBeingEdited(treeOutlineElement, true);
|
1783
1783
|
|
1784
|
-
|
1785
|
-
this: NavigatorUISourceCodeTreeNode, element: Element, newTitle: string, oldTitle: string): void {
|
1784
|
+
const commitHandler = (_element: Element, newTitle: string, oldTitle: string|null): void => {
|
1786
1785
|
if (newTitle !== oldTitle) {
|
1787
1786
|
if (this.treeElement) {
|
1788
1787
|
this.treeElement.title = newTitle;
|
1789
1788
|
}
|
1790
1789
|
// necessary cast to RawPathString as alternative would be altering type of Config<T>
|
1791
|
-
void this.uiSourceCodeInternal.rename(newTitle as Platform.DevToolsPath.RawPathString)
|
1792
|
-
.then(renameCallback.bind(this));
|
1790
|
+
void this.uiSourceCodeInternal.rename(newTitle as Platform.DevToolsPath.RawPathString).then(renameCallback);
|
1793
1791
|
return;
|
1794
1792
|
}
|
1795
|
-
afterEditing
|
1796
|
-
}
|
1793
|
+
afterEditing(true);
|
1794
|
+
};
|
1797
1795
|
|
1798
|
-
|
1796
|
+
const renameCallback = (success: boolean): void => {
|
1799
1797
|
if (!success) {
|
1800
1798
|
UI.UIUtils.markBeingEdited(treeOutlineElement, false);
|
1801
1799
|
this.updateTitle();
|
@@ -1810,20 +1808,20 @@ export class NavigatorUISourceCodeTreeNode extends NavigatorTreeNode {
|
|
1810
1808
|
this.treeElement.select();
|
1811
1809
|
}
|
1812
1810
|
}
|
1813
|
-
afterEditing
|
1814
|
-
}
|
1811
|
+
afterEditing(true);
|
1812
|
+
};
|
1815
1813
|
|
1816
|
-
|
1814
|
+
const afterEditing = (committed: boolean): void => {
|
1817
1815
|
UI.UIUtils.markBeingEdited(treeOutlineElement, false);
|
1818
1816
|
this.updateTitle();
|
1819
1817
|
if (callback) {
|
1820
1818
|
callback(committed);
|
1821
1819
|
}
|
1822
|
-
}
|
1820
|
+
};
|
1823
1821
|
|
1824
1822
|
this.updateTitle(true);
|
1825
1823
|
this.treeElement.startEditingTitle(
|
1826
|
-
new UI.InplaceEditor.Config(commitHandler
|
1824
|
+
new UI.InplaceEditor.Config(commitHandler, () => afterEditing(false), undefined));
|
1827
1825
|
}
|
1828
1826
|
}
|
1829
1827
|
|
@@ -1,7 +1,6 @@
|
|
1
1
|
// Copyright 2023 The Chromium Authors. All rights reserved.
|
2
2
|
// Use of this source code is governed by a BSD-style license that can be
|
3
3
|
// found in the LICENSE file.
|
4
|
-
import type * as TimelineModel from '../../models/timeline_model/timeline_model.js';
|
5
4
|
import type * as Trace from '../../models/trace/trace.js';
|
6
5
|
|
7
6
|
let instance: ActiveFilters|null = null;
|
@@ -23,13 +22,13 @@ export class ActiveFilters {
|
|
23
22
|
instance = null;
|
24
23
|
}
|
25
24
|
|
26
|
-
#activeFilters:
|
25
|
+
#activeFilters: Trace.Extras.TraceFilter.TraceFilter[] = [];
|
27
26
|
|
28
|
-
activeFilters(): readonly
|
27
|
+
activeFilters(): readonly Trace.Extras.TraceFilter.TraceFilter[] {
|
29
28
|
return this.#activeFilters;
|
30
29
|
}
|
31
30
|
|
32
|
-
setFilters(newFilters:
|
31
|
+
setFilters(newFilters: Trace.Extras.TraceFilter.TraceFilter[]): void {
|
33
32
|
this.#activeFilters = newFilters;
|
34
33
|
}
|
35
34
|
|
@@ -58,8 +58,7 @@ export class AnimationsTrackAppender implements TrackAppender {
|
|
58
58
|
|
59
59
|
#eventAppendedCallbackFunction(event: Trace.Types.Events.Event, index: number): void {
|
60
60
|
if (event && Trace.Types.Events.isSyntheticAnimation(event)) {
|
61
|
-
const
|
62
|
-
const failures = CLSInsight.getNonCompositedFailure(event);
|
61
|
+
const failures = Trace.Insights.Models.CLSCulprits.getNonCompositedFailure(event);
|
63
62
|
if (failures.length) {
|
64
63
|
addDecorationToEvent(this.#compatibilityBuilder.getFlameChartTimelineData(), index, {
|
65
64
|
type: PerfUI.FlameChart.FlameChartDecorationType.WARNING_TRIANGLE,
|
@@ -141,8 +141,7 @@ export class CountersGraph extends UI.Widget.VBox {
|
|
141
141
|
this.countersByName.set(
|
142
142
|
'jsHeapSizeUsed',
|
143
143
|
this.createCounter(
|
144
|
-
i18nString(UIStrings.jsHeap), 'js-heap-size-used', 'hsl(220, 90%, 43%)',
|
145
|
-
Platform.NumberUtilities.bytesToString));
|
144
|
+
i18nString(UIStrings.jsHeap), 'js-heap-size-used', 'hsl(220, 90%, 43%)', i18n.ByteUtilities.bytesToString));
|
146
145
|
this.countersByName.set(
|
147
146
|
'documents', this.createCounter(i18nString(UIStrings.documents), 'documents', 'hsl(0, 90%, 43%)'));
|
148
147
|
this.countersByName.set('nodes', this.createCounter(i18nString(UIStrings.nodes), 'nodes', 'hsl(120, 90%, 43%)'));
|
@@ -151,8 +150,7 @@ export class CountersGraph extends UI.Widget.VBox {
|
|
151
150
|
this.createCounter(i18nString(UIStrings.listeners), 'js-event-listeners', 'hsl(38, 90%, 43%)'));
|
152
151
|
|
153
152
|
this.gpuMemoryCounter = this.createCounter(
|
154
|
-
i18nString(UIStrings.gpuMemory), 'gpu-memory-used-kb', 'hsl(300, 90%, 43%)',
|
155
|
-
Platform.NumberUtilities.bytesToString);
|
153
|
+
i18nString(UIStrings.gpuMemory), 'gpu-memory-used-kb', 'hsl(300, 90%, 43%)', i18n.ByteUtilities.bytesToString);
|
156
154
|
this.countersByName.set('gpuMemoryUsedKB', this.gpuMemoryCounter);
|
157
155
|
|
158
156
|
TraceBounds.TraceBounds.onChange(this.#onTraceBoundsChangeBound);
|
@@ -4,7 +4,6 @@
|
|
4
4
|
|
5
5
|
import * as Common from '../../core/common/common.js';
|
6
6
|
import * as i18n from '../../core/i18n/i18n.js';
|
7
|
-
import type * as TimelineModel from '../../models/timeline_model/timeline_model.js';
|
8
7
|
import * as Trace from '../../models/trace/trace.js';
|
9
8
|
import * as DataGrid from '../../ui/legacy/components/data_grid/data_grid.js';
|
10
9
|
import * as UI from '../../ui/legacy/legacy.js';
|
@@ -41,7 +40,7 @@ const i18nString = i18n.i18n.getLocalizedString.bind(undefined, str_);
|
|
41
40
|
export class EventsTimelineTreeView extends TimelineTreeView {
|
42
41
|
private readonly filtersControl: Filters;
|
43
42
|
private readonly delegate: TimelineModeViewDelegate;
|
44
|
-
private currentTree!:
|
43
|
+
private currentTree!: Trace.Extras.TraceTree.Node;
|
45
44
|
constructor(delegate: TimelineModeViewDelegate) {
|
46
45
|
super();
|
47
46
|
this.element.setAttribute('jslog', `${VisualLogging.pane('event-log').track({resize: true})}`);
|
@@ -53,7 +52,7 @@ export class EventsTimelineTreeView extends TimelineTreeView {
|
|
53
52
|
this.splitWidget.showBoth();
|
54
53
|
}
|
55
54
|
|
56
|
-
override filters():
|
55
|
+
override filters(): Trace.Extras.TraceFilter.TraceFilter[] {
|
57
56
|
return [...super.filters(), ...this.filtersControl.filters()];
|
58
57
|
}
|
59
58
|
|
@@ -64,7 +63,7 @@ export class EventsTimelineTreeView extends TimelineTreeView {
|
|
64
63
|
}
|
65
64
|
}
|
66
65
|
|
67
|
-
override buildTree():
|
66
|
+
override buildTree(): Trace.Extras.TraceTree.Node {
|
68
67
|
this.currentTree = this.buildTopDownTree(true, null);
|
69
68
|
return this.currentTree;
|
70
69
|
}
|
@@ -78,7 +77,7 @@ export class EventsTimelineTreeView extends TimelineTreeView {
|
|
78
77
|
}
|
79
78
|
}
|
80
79
|
|
81
|
-
private findNodeWithEvent(event: Trace.Types.Events.Event):
|
80
|
+
private findNodeWithEvent(event: Trace.Types.Events.Event): Trace.Extras.TraceTree.Node|null {
|
82
81
|
if (event.name === Trace.Types.Events.Name.RUN_TASK) {
|
83
82
|
// No node is ever created for the top level RunTask event, so
|
84
83
|
// bail out preemptively
|
@@ -132,7 +131,7 @@ export class EventsTimelineTreeView extends TimelineTreeView {
|
|
132
131
|
this.filtersControl.populateToolbar(toolbar);
|
133
132
|
}
|
134
133
|
|
135
|
-
override showDetailsForNode(node:
|
134
|
+
override showDetailsForNode(node: Trace.Extras.TraceTree.Node): boolean {
|
136
135
|
const parsedTrace = this.parsedTrace();
|
137
136
|
if (!parsedTrace) {
|
138
137
|
return false;
|
@@ -146,7 +145,7 @@ export class EventsTimelineTreeView extends TimelineTreeView {
|
|
146
145
|
return true;
|
147
146
|
}
|
148
147
|
|
149
|
-
override onHover(node:
|
148
|
+
override onHover(node: Trace.Extras.TraceTree.Node|null): void {
|
150
149
|
this.delegate.highlightEvent(node && node.event);
|
151
150
|
}
|
152
151
|
}
|
@@ -162,7 +161,7 @@ export class Filters extends Common.ObjectWrapper.ObjectWrapper<EventTypes> {
|
|
162
161
|
this.filtersInternal = [this.categoryFilter, this.durationFilter];
|
163
162
|
}
|
164
163
|
|
165
|
-
filters():
|
164
|
+
filters(): Trace.Extras.TraceFilter.TraceFilter[] {
|
166
165
|
return this.filtersInternal;
|
167
166
|
}
|
168
167
|
|
@@ -100,7 +100,7 @@ To remove one or some overlays, check out the `remove()` or `removeOverlaysOfTyp
|
|
100
100
|
|
101
101
|
### Creating a new overlay
|
102
102
|
|
103
|
-
To create a new overlay, first define its type. This is done as an interface, and must contain a `type` field.
|
103
|
+
To create a new overlay, add it in the `OverlaysImpl.ts` file, first define its type. This is done as an interface, and must contain a `type` field.
|
104
104
|
|
105
105
|
All other fields are completely custom and depend on the specifics of the overlay.
|
106
106
|
|
@@ -115,6 +115,7 @@ export interface EntrySelected {
|
|
115
115
|
```
|
116
116
|
|
117
117
|
Once you have done this, add the interface to the union type `TimelineOverlay`. This will likely trigger some TypeScript errors because there are some places in the code where we check we have exhaustively dealt with every possible overlay type.
|
118
|
+
Also if you want to make this overlay a singleton, add the interface to the union type `SingletonOverlay`.
|
118
119
|
|
119
120
|
When you create an overlay by default it will be created as a `div` with a class, and no contents. Sometimes this is all you need (for example, the `ENTRY_SELECTED` outline has no other HTML), but if you need more you can tell the Overlays class what DOM to create for your overlay. To do this, modify the `#createElementForNewOverlay` method. You will see examples there of how we use custom elements to build out overlays.
|
120
121
|
|
@@ -8,7 +8,6 @@ import * as SDK from '../../core/sdk/sdk.js';
|
|
8
8
|
import type * as Protocol from '../../generated/protocol.js';
|
9
9
|
import * as Extensions from '../../models/extensions/extensions.js';
|
10
10
|
import * as LiveMetrics from '../../models/live-metrics/live-metrics.js';
|
11
|
-
import type * as TimelineModel from '../../models/timeline_model/timeline_model.js';
|
12
11
|
import * as Trace from '../../models/trace/trace.js';
|
13
12
|
|
14
13
|
const UIStrings = {
|
@@ -144,11 +143,23 @@ export class TimelineController implements Trace.TracingManager.TracingManagerCl
|
|
144
143
|
if (this.tracingManager) {
|
145
144
|
this.tracingManager.stop();
|
146
145
|
}
|
146
|
+
// When throttling is applied to the main renderer, it can slow down the
|
147
|
+
// collection of trace events once tracing has completed. Therefore we
|
148
|
+
// temporarily disable throttling whilst the final trace event collection
|
149
|
+
// takes place. Once it is done, we re-enable it (this is the existing
|
150
|
+
// behaviour within DevTools; the throttling settling is sticky + global).
|
151
|
+
const throttlingManager = SDK.CPUThrottlingManager.CPUThrottlingManager.instance();
|
152
|
+
const rateDuringRecording = throttlingManager.cpuThrottlingRate();
|
153
|
+
// 1 = no throttling (CPU is 1x'd)
|
154
|
+
throttlingManager.setCPUThrottlingRate(1);
|
147
155
|
|
148
156
|
this.client.loadingStarted();
|
149
157
|
await this.waitForTracingToStop();
|
150
158
|
await this.allSourcesFinished();
|
151
159
|
|
160
|
+
// Now we re-enable throttling again to maintain the setting being persistent.
|
161
|
+
throttlingManager.setCPUThrottlingRate(rateDuringRecording);
|
162
|
+
|
152
163
|
await LiveMetrics.LiveMetrics.instance().enable();
|
153
164
|
}
|
154
165
|
|
@@ -228,9 +239,8 @@ export interface Client {
|
|
228
239
|
processingStarted(): void;
|
229
240
|
loadingProgress(progress?: number): void;
|
230
241
|
loadingComplete(
|
231
|
-
collectedEvents: Trace.Types.Events.Event[],
|
232
|
-
|
233
|
-
recordingStartTime: number|null, metadata: Trace.Types.File.MetaData|null): Promise<void>;
|
242
|
+
collectedEvents: Trace.Types.Events.Event[], exclusiveFilter: Trace.Extras.TraceFilter.TraceFilter|null,
|
243
|
+
isCpuProfile: boolean, recordingStartTime: number|null, metadata: Trace.Types.File.MetaData|null): Promise<void>;
|
234
244
|
loadingCompleteForTest(): void;
|
235
245
|
}
|
236
246
|
export interface RecordingOptions {
|
@@ -29,7 +29,6 @@
|
|
29
29
|
*/
|
30
30
|
|
31
31
|
import * as i18n from '../../core/i18n/i18n.js';
|
32
|
-
import * as Platform from '../../core/platform/platform.js';
|
33
32
|
import * as Protocol from '../../generated/protocol.js';
|
34
33
|
import * as Trace from '../../models/trace/trace.js';
|
35
34
|
import * as TraceBounds from '../../services/trace_bounds/trace_bounds.js';
|
@@ -516,7 +515,7 @@ export class TimelineFilmStripOverview extends TimelineEventOverview {
|
|
516
515
|
if (!calculator) {
|
517
516
|
return null;
|
518
517
|
}
|
519
|
-
const timeMilliSeconds =
|
518
|
+
const timeMilliSeconds = calculator.positionToTime(x);
|
520
519
|
const timeMicroSeconds = Trace.Helpers.Timing.millisecondsToMicroseconds(timeMilliSeconds);
|
521
520
|
const frame = Trace.Extras.FilmStrip.frameClosestToTimestamp(this.#filmStrip, timeMicroSeconds);
|
522
521
|
if (frame === this.lastFrame) {
|
@@ -660,8 +659,8 @@ export class TimelineEventOverviewMemory extends TimelineEventOverview {
|
|
660
659
|
ctx.stroke();
|
661
660
|
|
662
661
|
this.heapSizeLabel.textContent = i18nString(UIStrings.sSDash, {
|
663
|
-
PH1:
|
664
|
-
PH2:
|
662
|
+
PH1: i18n.ByteUtilities.bytesToString(minUsedHeapSize),
|
663
|
+
PH2: i18n.ByteUtilities.bytesToString(maxUsedHeapSize),
|
665
664
|
});
|
666
665
|
}
|
667
666
|
}
|
@@ -2,12 +2,11 @@
|
|
2
2
|
// Use of this source code is governed by a BSD-style license that can be
|
3
3
|
// found in the LICENSE file.
|
4
4
|
|
5
|
-
import * as TimelineModel from '../../models/timeline_model/timeline_model.js';
|
6
5
|
import * as Trace from '../../models/trace/trace.js';
|
7
6
|
|
8
7
|
import {TimelineUIUtils} from './TimelineUIUtils.js';
|
9
8
|
|
10
|
-
export class IsLong extends
|
9
|
+
export class IsLong extends Trace.Extras.TraceFilter.TraceFilter {
|
11
10
|
#minimumRecordDurationMilli = Trace.Types.Timing.MilliSeconds(0);
|
12
11
|
constructor() {
|
13
12
|
super();
|
@@ -23,7 +22,7 @@ export class IsLong extends TimelineModel.TimelineModelFilter.TimelineModelFilte
|
|
23
22
|
}
|
24
23
|
}
|
25
24
|
|
26
|
-
export class Category extends
|
25
|
+
export class Category extends Trace.Extras.TraceFilter.TraceFilter {
|
27
26
|
constructor() {
|
28
27
|
super();
|
29
28
|
}
|
@@ -33,7 +32,7 @@ export class Category extends TimelineModel.TimelineModelFilter.TimelineModelFil
|
|
33
32
|
}
|
34
33
|
}
|
35
34
|
|
36
|
-
export class TimelineRegExp extends
|
35
|
+
export class TimelineRegExp extends Trace.Extras.TraceFilter.TraceFilter {
|
37
36
|
private regExpInternal!: RegExp|null;
|
38
37
|
constructor(regExp?: RegExp) {
|
39
38
|
super();
|
@@ -214,7 +214,7 @@ describeWithEnvironment('TimelineFlameChartDataProvider', function() {
|
|
214
214
|
const filter = new Timeline.TimelineFilters.TimelineRegExp(/Evaluate script/);
|
215
215
|
const results = dataProvider.search(bounds, filter);
|
216
216
|
assert.lengthOf(results, 12);
|
217
|
-
assert.deepEqual(results[0], {index:
|
217
|
+
assert.deepEqual(results[0], {index: 153, startTimeMilli: 122411041.395, provider: 'main'});
|
218
218
|
});
|
219
219
|
|
220
220
|
it('delete annotations associated with an event', async function() {
|
@@ -32,7 +32,6 @@ import * as Common from '../../core/common/common.js';
|
|
32
32
|
import * as i18n from '../../core/i18n/i18n.js';
|
33
33
|
import * as Root from '../../core/root/root.js';
|
34
34
|
import * as Bindings from '../../models/bindings/bindings.js';
|
35
|
-
import type * as TimelineModel from '../../models/timeline_model/timeline_model.js';
|
36
35
|
import * as Trace from '../../models/trace/trace.js';
|
37
36
|
import * as PerfUI from '../../ui/legacy/components/perf_ui/perf_ui.js';
|
38
37
|
import * as UI from '../../ui/legacy/legacy.js';
|
@@ -218,8 +217,7 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
|
|
218
217
|
return;
|
219
218
|
}
|
220
219
|
|
221
|
-
|
222
|
-
const contextMenu = new UI.ContextMenu.ContextMenu(event, {useSoftMenu: true});
|
220
|
+
const contextMenu = new UI.ContextMenu.ContextMenu(event);
|
223
221
|
|
224
222
|
// This action and its 'execute' is defined in `freestyler-meta`
|
225
223
|
const actionIdDrJ = 'drjones.performance-panel-context';
|
@@ -245,7 +243,6 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
|
|
245
243
|
disabled: !possibleActions?.[PerfUI.FlameChart.FilterAction.MERGE_FUNCTION],
|
246
244
|
jslogContext: 'hide-function',
|
247
245
|
});
|
248
|
-
hideEntryOption.setShortcut('H');
|
249
246
|
hideEntryOption.setAccelerator(UI.KeyboardShortcut.Keys.H, [UI.KeyboardShortcut.Modifiers.None]);
|
250
247
|
hideEntryOption.setIsDevToolsPerformanceMenuItem(true);
|
251
248
|
|
@@ -255,7 +252,6 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
|
|
255
252
|
disabled: !possibleActions?.[PerfUI.FlameChart.FilterAction.COLLAPSE_FUNCTION],
|
256
253
|
jslogContext: 'hide-children',
|
257
254
|
});
|
258
|
-
hideChildrenOption.setShortcut('C');
|
259
255
|
hideChildrenOption.setAccelerator(UI.KeyboardShortcut.Keys.C, [UI.KeyboardShortcut.Modifiers.None]);
|
260
256
|
hideChildrenOption.setIsDevToolsPerformanceMenuItem(true);
|
261
257
|
|
@@ -266,7 +262,6 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
|
|
266
262
|
disabled: !possibleActions?.[PerfUI.FlameChart.FilterAction.COLLAPSE_REPEATING_DESCENDANTS],
|
267
263
|
jslogContext: 'hide-repeating-children',
|
268
264
|
});
|
269
|
-
hideRepeatingChildrenOption.setShortcut('R');
|
270
265
|
hideRepeatingChildrenOption.setAccelerator(UI.KeyboardShortcut.Keys.R, [UI.KeyboardShortcut.Modifiers.None]);
|
271
266
|
hideRepeatingChildrenOption.setIsDevToolsPerformanceMenuItem(true);
|
272
267
|
|
@@ -276,7 +271,6 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
|
|
276
271
|
disabled: !possibleActions?.[PerfUI.FlameChart.FilterAction.RESET_CHILDREN],
|
277
272
|
jslogContext: 'reset-children',
|
278
273
|
});
|
279
|
-
resetChildrenOption.setShortcut('U');
|
280
274
|
resetChildrenOption.setAccelerator(UI.KeyboardShortcut.Keys.U, [UI.KeyboardShortcut.Modifiers.None]);
|
281
275
|
resetChildrenOption.setIsDevToolsPerformanceMenuItem(true);
|
282
276
|
|
@@ -643,9 +637,8 @@ export class TimelineFlameChartDataProvider extends Common.ObjectWrapper.ObjectW
|
|
643
637
|
return this.timeSpan;
|
644
638
|
}
|
645
639
|
|
646
|
-
search(
|
647
|
-
|
648
|
-
filter?: TimelineModel.TimelineModelFilter.TimelineModelFilter): PerfUI.FlameChart.DataProviderSearchResult[] {
|
640
|
+
search(visibleWindow: Trace.Types.Timing.TraceWindowMicroSeconds, filter?: Trace.Extras.TraceFilter.TraceFilter):
|
641
|
+
PerfUI.FlameChart.DataProviderSearchResult[] {
|
649
642
|
const results: PerfUI.FlameChart.DataProviderSearchResult[] = [];
|
650
643
|
this.timelineData();
|
651
644
|
for (let i = 0; i < this.entryData.length; ++i) {
|
@@ -4,7 +4,6 @@
|
|
4
4
|
|
5
5
|
import * as i18n from '../../core/i18n/i18n.js';
|
6
6
|
import * as Platform from '../../core/platform/platform.js';
|
7
|
-
import type * as TimelineModel from '../../models/timeline_model/timeline_model.js';
|
8
7
|
import * as Trace from '../../models/trace/trace.js';
|
9
8
|
import * as PerfUI from '../../ui/legacy/components/perf_ui/perf_ui.js';
|
10
9
|
import * as UI from '../../ui/legacy/legacy.js';
|
@@ -489,7 +488,7 @@ export class TimelineFlameChartNetworkDataProvider implements PerfUI.FlameChart.
|
|
489
488
|
*/
|
490
489
|
search(
|
491
490
|
visibleWindow: Trace.Types.Timing.TraceWindowMicroSeconds,
|
492
|
-
filter?:
|
491
|
+
filter?: Trace.Extras.TraceFilter.TraceFilter,
|
493
492
|
): PerfUI.FlameChart.DataProviderSearchResult[] {
|
494
493
|
const results: PerfUI.FlameChart.DataProviderSearchResult[] = [];
|
495
494
|
for (let i = 0; i < this.#events.length; i++) {
|
@@ -524,25 +524,33 @@ export class TimelineFlameChartView extends UI.Widget.VBox implements PerfUI.Fla
|
|
524
524
|
}
|
525
525
|
}
|
526
526
|
|
527
|
+
addTimestampMarkerOverlay(timestamp: Trace.Types.Timing.MicroSeconds): void {
|
528
|
+
// TIMESTAMP_MARKER is a singleton. If one already exists, it will
|
529
|
+
// be updated instead of creating a new one.
|
530
|
+
this.addOverlay({
|
531
|
+
type: 'TIMESTAMP_MARKER',
|
532
|
+
timestamp,
|
533
|
+
});
|
534
|
+
}
|
535
|
+
|
536
|
+
async removeTimestampMarkerOverlay(): Promise<void> {
|
537
|
+
const removedCount = this.#overlays.removeOverlaysOfType('TIMESTAMP_MARKER');
|
538
|
+
if (removedCount > 0) {
|
539
|
+
// Don't trigger lots of updates on a mouse move if we didn't actually
|
540
|
+
// remove any overlays.
|
541
|
+
await this.#overlays.update();
|
542
|
+
}
|
543
|
+
}
|
544
|
+
|
527
545
|
async #processFlameChartMouseMoveEvent(data: PerfUI.FlameChart.EventTypes['MouseMove']): Promise<void> {
|
528
546
|
const {mouseEvent, timeInMicroSeconds} = data;
|
529
547
|
// If the user is no longer holding shift, remove any existing marker.
|
530
548
|
if (!mouseEvent.shiftKey) {
|
531
|
-
|
532
|
-
if (removedCount > 0) {
|
533
|
-
// Don't trigger lots of updates on a mouse move if we didn't actually
|
534
|
-
// remove any overlays.
|
535
|
-
await this.#overlays.update();
|
536
|
-
}
|
549
|
+
await this.removeTimestampMarkerOverlay();
|
537
550
|
}
|
538
551
|
|
539
552
|
if (!mouseEvent.metaKey && mouseEvent.shiftKey) {
|
540
|
-
|
541
|
-
// be updated rather than create an entirely new one.
|
542
|
-
this.addOverlay({
|
543
|
-
type: 'CURSOR_TIMESTAMP_MARKER',
|
544
|
-
timestamp: timeInMicroSeconds,
|
545
|
-
});
|
553
|
+
this.addTimestampMarkerOverlay(timeInMicroSeconds);
|
546
554
|
}
|
547
555
|
}
|
548
556
|
|
@@ -1138,6 +1146,7 @@ export class TimelineFlameChartView extends UI.Widget.VBox implements PerfUI.Fla
|
|
1138
1146
|
}
|
1139
1147
|
void this.#overlays.update();
|
1140
1148
|
}
|
1149
|
+
|
1141
1150
|
removeOverlay(removedOverlay: Overlays.Overlays.TimelineOverlay): void {
|
1142
1151
|
this.#overlays.remove(removedOverlay);
|
1143
1152
|
void this.#overlays.update();
|
@@ -3,7 +3,6 @@
|
|
3
3
|
// found in the LICENSE file.
|
4
4
|
|
5
5
|
import type * as Protocol from '../../generated/protocol.js';
|
6
|
-
import type * as TimelineModel from '../../models/timeline_model/timeline_model.js';
|
7
6
|
import type * as Trace from '../../models/trace/trace.js';
|
8
7
|
import {describeWithEnvironment} from '../../testing/EnvironmentHelpers.js';
|
9
8
|
import {makeInstantEvent} from '../../testing/TraceHelpers.js';
|
@@ -50,7 +49,7 @@ describeWithEnvironment('TimelineLoader', () => {
|
|
50
49
|
},
|
51
50
|
async loadingComplete(
|
52
51
|
collectedEvents: Trace.Types.Events.Event[],
|
53
|
-
exclusiveFilter:
|
52
|
+
exclusiveFilter: Trace.Extras.TraceFilter.TraceFilter|null,
|
54
53
|
isCpuProfile: boolean,
|
55
54
|
) {
|
56
55
|
loadingCompleteSpy(collectedEvents, exclusiveFilter, isCpuProfile);
|
@@ -8,7 +8,6 @@ import * as i18n from '../../core/i18n/i18n.js';
|
|
8
8
|
import type * as Platform from '../../core/platform/platform.js';
|
9
9
|
import type * as Protocol from '../../generated/protocol.js';
|
10
10
|
import * as Bindings from '../../models/bindings/bindings.js';
|
11
|
-
import * as TimelineModel from '../../models/timeline_model/timeline_model.js';
|
12
11
|
import * as Trace from '../../models/trace/trace.js';
|
13
12
|
|
14
13
|
import type {Client} from './TimelineController.js';
|
@@ -36,7 +35,7 @@ export class TimelineLoader implements Common.StringOutputStream.OutputStream {
|
|
36
35
|
private buffer: string;
|
37
36
|
private firstRawChunk: boolean;
|
38
37
|
private totalSize!: number;
|
39
|
-
private filter:
|
38
|
+
private filter: Trace.Extras.TraceFilter.TraceFilter|null;
|
40
39
|
#traceIsCPUProfile: boolean;
|
41
40
|
#collectedEvents: Trace.Types.Events.Event[] = [];
|
42
41
|
#metadata: Trace.Types.File.MetaData|null;
|
@@ -88,7 +87,7 @@ export class TimelineLoader implements Common.StringOutputStream.OutputStream {
|
|
88
87
|
loader.#traceIsCPUProfile = true;
|
89
88
|
|
90
89
|
try {
|
91
|
-
const events =
|
90
|
+
const events = Trace.Extras.TimelineJSProfile.TimelineJSProfileProcessor.createFakeTraceFromCpuProfile(
|
92
91
|
profile, Trace.Types.Events.ThreadID(1));
|
93
92
|
|
94
93
|
window.setTimeout(async () => {
|
@@ -249,7 +248,7 @@ export class TimelineLoader implements Common.StringOutputStream.OutputStream {
|
|
249
248
|
}
|
250
249
|
|
251
250
|
#parseCPUProfileFormatFromFile(parsedTrace: Protocol.Profiler.Profile): void {
|
252
|
-
const traceEvents =
|
251
|
+
const traceEvents = Trace.Extras.TimelineJSProfile.TimelineJSProfileProcessor.createFakeTraceFromCpuProfile(
|
253
252
|
parsedTrace, Trace.Types.Events.ThreadID(1));
|
254
253
|
|
255
254
|
this.#collectEvents(traceEvents);
|
@@ -65,6 +65,16 @@ export class TimelineMiniMap extends
|
|
65
65
|
this.addBreadcrumb(event.data);
|
66
66
|
});
|
67
67
|
|
68
|
+
// We want to add/remove an overlay for these two events, and the overlay system is controlled by
|
69
|
+
// `TimelineFlameChartView`, so we need to dispatch them up to the `TimelinePanel` level to call
|
70
|
+
// `TimelineFlameChartView` -> `addOverlay()/removeOverlay()`.
|
71
|
+
this.#overviewComponent.addEventListener(PerfUI.TimelineOverviewPane.Events.OVERVIEW_PANE_MOUSE_MOVE, event => {
|
72
|
+
this.dispatchEventToListeners(PerfUI.TimelineOverviewPane.Events.OVERVIEW_PANE_MOUSE_MOVE, event.data);
|
73
|
+
});
|
74
|
+
this.#overviewComponent.addEventListener(PerfUI.TimelineOverviewPane.Events.OVERVIEW_PANE_MOUSE_LEAVE, () => {
|
75
|
+
this.dispatchEventToListeners(PerfUI.TimelineOverviewPane.Events.OVERVIEW_PANE_MOUSE_LEAVE);
|
76
|
+
});
|
77
|
+
|
68
78
|
this.#breadcrumbsUI.addEventListener(TimelineComponents.BreadcrumbsUI.BreadcrumbActivatedEvent.eventName, event => {
|
69
79
|
const {breadcrumb, childBreadcrumbsRemoved} =
|
70
80
|
(event as TimelineComponents.BreadcrumbsUI.BreadcrumbActivatedEvent);
|
@@ -40,12 +40,12 @@ import * as Platform from '../../core/platform/platform.js';
|
|
40
40
|
import * as Root from '../../core/root/root.js';
|
41
41
|
import * as SDK from '../../core/sdk/sdk.js';
|
42
42
|
import type * as Protocol from '../../generated/protocol.js';
|
43
|
-
import type * as TimelineModel from '../../models/timeline_model/timeline_model.js';
|
44
43
|
import * as Trace from '../../models/trace/trace.js';
|
45
44
|
import * as Workspace from '../../models/workspace/workspace.js';
|
46
45
|
import * as TraceBounds from '../../services/trace_bounds/trace_bounds.js';
|
47
46
|
import * as Adorners from '../../ui/components/adorners/adorners.js';
|
48
47
|
import type * as Buttons from '../../ui/components/buttons/buttons.js';
|
48
|
+
import * as ShortcutDialog from '../../ui/components/dialogs/dialogs.js';
|
49
49
|
import * as PerfUI from '../../ui/legacy/components/perf_ui/perf_ui.js';
|
50
50
|
import * as UI from '../../ui/legacy/legacy.js';
|
51
51
|
import * as ThemeSupport from '../../ui/legacy/theme_support/theme_support.js';
|
@@ -368,7 +368,7 @@ export class TimelinePanel extends UI.Panel.Panel implements Client, TimelineMod
|
|
368
368
|
* we store the filters by the trace index, so if the user then navigates back
|
369
369
|
* to a previous trace we can reinstate the filters from this map.
|
370
370
|
*/
|
371
|
-
#exclusiveFilterPerTrace: Map<number,
|
371
|
+
#exclusiveFilterPerTrace: Map<number, Trace.Extras.TraceFilter.TraceFilter> = new Map();
|
372
372
|
/**
|
373
373
|
* This widget holds the timeline sidebar which shows Insights & Annotations,
|
374
374
|
* and the main UI which shows the timeline
|
@@ -522,6 +522,12 @@ export class TimelinePanel extends UI.Panel.Panel implements Client, TimelineMod
|
|
522
522
|
topPaneElement.id = 'timeline-overview-panel';
|
523
523
|
|
524
524
|
this.#minimapComponent.show(topPaneElement);
|
525
|
+
this.#minimapComponent.addEventListener(PerfUI.TimelineOverviewPane.Events.OVERVIEW_PANE_MOUSE_MOVE, event => {
|
526
|
+
this.flameChart.addTimestampMarkerOverlay(event.data.timeInMicroSeconds);
|
527
|
+
});
|
528
|
+
this.#minimapComponent.addEventListener(PerfUI.TimelineOverviewPane.Events.OVERVIEW_PANE_MOUSE_LEAVE, async () => {
|
529
|
+
await this.flameChart.removeTimestampMarkerOverlay();
|
530
|
+
});
|
525
531
|
|
526
532
|
this.statusPaneContainer = this.timelinePane.element.createChild('div', 'status-pane-container fill');
|
527
533
|
|
@@ -1065,6 +1071,14 @@ export class TimelinePanel extends UI.Panel.Panel implements Client, TimelineMod
|
|
1065
1071
|
this.panelRightToolbar.appendSeparator();
|
1066
1072
|
this.panelRightToolbar.appendToolbarItem(this.showSettingsPaneButton);
|
1067
1073
|
}
|
1074
|
+
|
1075
|
+
if (Root.Runtime.experiments.isEnabled(Root.Runtime.ExperimentName.TIMELINE_ALTERNATIVE_NAVIGATION)) {
|
1076
|
+
// TODO: Fill the shortcuts dialog with shortcuts for the cuttently selected navigation option
|
1077
|
+
const shortcutDialog = new ShortcutDialog.ShortcutDialog.ShortcutDialog();
|
1078
|
+
shortcutDialog.data = {shortcuts: [{title: 'Shortcut Title', bindings: ['Ctrl+E']}]};
|
1079
|
+
const dialogToolbarItem = new UI.Toolbar.ToolbarItem(shortcutDialog);
|
1080
|
+
this.panelRightToolbar.appendToolbarItem(dialogToolbarItem);
|
1081
|
+
}
|
1068
1082
|
}
|
1069
1083
|
|
1070
1084
|
private createSettingsPane(): void {
|
@@ -1663,9 +1677,8 @@ export class TimelinePanel extends UI.Panel.Panel implements Client, TimelineMod
|
|
1663
1677
|
this.flameChart.runBrickBreakerGame();
|
1664
1678
|
}
|
1665
1679
|
|
1666
|
-
#applyActiveFilters(
|
1667
|
-
|
1668
|
-
exclusiveFilter: TimelineModel.TimelineModelFilter.TimelineModelFilter|null = null): void {
|
1680
|
+
#applyActiveFilters(traceIsGeneric: boolean, exclusiveFilter: Trace.Extras.TraceFilter.TraceFilter|null = null):
|
1681
|
+
void {
|
1669
1682
|
if (traceIsGeneric || Root.Runtime.experiments.isEnabled('timeline-show-all-events')) {
|
1670
1683
|
return;
|
1671
1684
|
}
|
@@ -2051,9 +2064,8 @@ export class TimelinePanel extends UI.Panel.Panel implements Client, TimelineMod
|
|
2051
2064
|
* code in there.
|
2052
2065
|
**/
|
2053
2066
|
async loadingComplete(
|
2054
|
-
collectedEvents: Trace.Types.Events.Event[],
|
2055
|
-
|
2056
|
-
recordingStartTime: number|null, metadata: Trace.Types.File.MetaData|null): Promise<void> {
|
2067
|
+
collectedEvents: Trace.Types.Events.Event[], exclusiveFilter: Trace.Extras.TraceFilter.TraceFilter|null = null,
|
2068
|
+
isCpuProfile: boolean, recordingStartTime: number|null, metadata: Trace.Types.File.MetaData|null): Promise<void> {
|
2057
2069
|
this.#traceEngineModel.resetProcessor();
|
2058
2070
|
|
2059
2071
|
delete this.loader;
|