chrome-devtools-frontend 1.0.922470 → 1.0.922924

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.
Files changed (47) hide show
  1. package/front_end/core/common/Console.ts +5 -1
  2. package/front_end/core/host/InspectorFrontendHost.ts +6 -5
  3. package/front_end/core/host/InspectorFrontendHostAPI.ts +102 -0
  4. package/front_end/core/sdk/CSSModel.ts +8 -4
  5. package/front_end/core/sdk/Connections.ts +5 -5
  6. package/front_end/core/sdk/DebuggerModel.ts +8 -5
  7. package/front_end/entrypoints/inspector_main/InspectorMain.ts +2 -3
  8. package/front_end/entrypoints/js_app/JsMain.ts +1 -1
  9. package/front_end/entrypoints/main/MainImpl.ts +4 -7
  10. package/front_end/entrypoints/node_main/NodeConnectionsPanel.ts +2 -2
  11. package/front_end/entrypoints/node_main/NodeMain.ts +2 -3
  12. package/front_end/entrypoints/worker_app/WorkerMain.ts +1 -1
  13. package/front_end/models/bindings/BreakpointManager.ts +3 -2
  14. package/front_end/models/extensions/ExtensionServer.ts +2 -2
  15. package/front_end/models/issues_manager/DeprecationIssue.ts +1 -1
  16. package/front_end/models/issues_manager/descriptions/CoepCorpNotSameOriginAfterDefaultedToSameOriginByCoep.md +15 -5
  17. package/front_end/models/issues_manager/descriptions/CoepFrameResourceNeedsCoepHeader.md +7 -3
  18. package/front_end/models/issues_manager/descriptions/deprecationNavigatorUserAgent.md +1 -1
  19. package/front_end/models/persistence/IsolatedFileSystemManager.ts +26 -31
  20. package/front_end/models/persistence/NetworkPersistenceManager.ts +11 -1
  21. package/front_end/models/workspace/FileManager.ts +5 -7
  22. package/front_end/panels/console/ConsoleView.ts +3 -5
  23. package/front_end/panels/coverage/CoverageView.ts +5 -4
  24. package/front_end/panels/css_overview/CSSOverviewCompletedView.ts +47 -44
  25. package/front_end/panels/css_overview/CSSOverviewController.ts +48 -8
  26. package/front_end/panels/css_overview/CSSOverviewModel.ts +5 -5
  27. package/front_end/panels/css_overview/CSSOverviewPanel.ts +22 -21
  28. package/front_end/panels/css_overview/CSSOverviewUnusedDeclarations.ts +12 -9
  29. package/front_end/panels/elements/ElementsPanel.ts +2 -3
  30. package/front_end/panels/layer_viewer/Layers3DView.ts +1 -1
  31. package/front_end/panels/lighthouse/LighthouseProtocolService.ts +1 -2
  32. package/front_end/panels/mobile_throttling/throttlingSettingsTab.css +4 -0
  33. package/front_end/panels/profiler/CPUProfileFlameChart.ts +26 -9
  34. package/front_end/panels/sources/DebuggerPlugin.ts +4 -5
  35. package/front_end/panels/sources/EditingLocationHistoryManager.ts +7 -5
  36. package/front_end/panels/sources/TabbedEditorContainer.ts +2 -4
  37. package/front_end/ui/components/docs/toggle_fonts.ts +21 -0
  38. package/front_end/ui/legacy/ContextMenu.ts +4 -4
  39. package/front_end/ui/legacy/ForwardedInputEventHandler.ts +3 -7
  40. package/front_end/ui/legacy/InspectorView.ts +1 -2
  41. package/front_end/ui/legacy/Widget.ts +1 -3
  42. package/front_end/ui/legacy/components/color_picker/ContrastDetails.ts +5 -8
  43. package/front_end/ui/legacy/components/color_picker/Spectrum.ts +5 -8
  44. package/front_end/ui/legacy/components/perf_ui/OverviewGrid.ts +13 -3
  45. package/front_end/ui/legacy/components/perf_ui/TimelineOverviewPane.ts +3 -2
  46. package/front_end/ui/legacy/components/source_frame/SourcesTextEditor.ts +18 -2
  47. package/package.json +1 -1
@@ -236,11 +236,10 @@ export class TabbedEditorContainer extends Common.ObjectWrapper.ObjectWrapper<Ev
236
236
  SourceFrame.SourcesTextEditor.Events.SelectionChanged, this.selectionChanged, this);
237
237
  }
238
238
 
239
- private scrollChanged(event: Common.EventTarget.EventTargetEvent): void {
239
+ private scrollChanged({data: lineNumber}: Common.EventTarget.EventTargetEvent<number>): void {
240
240
  if (this.scrollTimer) {
241
241
  clearTimeout(this.scrollTimer);
242
242
  }
243
- const lineNumber = (event.data as number);
244
243
  this.scrollTimer = window.setTimeout(saveHistory.bind(this), 100);
245
244
  if (this.currentFileInternal) {
246
245
  this.history.updateScrollLineNumber(this.currentFileInternal.url(), lineNumber);
@@ -251,8 +250,7 @@ export class TabbedEditorContainer extends Common.ObjectWrapper.ObjectWrapper<Ev
251
250
  }
252
251
  }
253
252
 
254
- private selectionChanged(event: Common.EventTarget.EventTargetEvent): void {
255
- const range = (event.data as TextUtils.TextRange.TextRange);
253
+ private selectionChanged({data: range}: Common.EventTarget.EventTargetEvent<TextUtils.TextRange.TextRange>): void {
256
254
  if (this.currentFileInternal) {
257
255
  this.history.updateSelectionRange(this.currentFileInternal.url(), range);
258
256
  }
@@ -6,7 +6,28 @@ const PLATFORM_MAC_CLASS = 'platform-mac';
6
6
  const PLATFORM_LINUX_CLASS = 'platform-linux';
7
7
  const PLATFORM_WINDOWS_CLASS = 'platform-windows';
8
8
 
9
+ const urlParams = new URLSearchParams(window.location.search);
10
+
9
11
  export function init(): void {
12
+ // fontFamily is provided by the interaction tests.
13
+ // While platform-specific class names define multiple font-families,
14
+ // we want a single font-family to be used by the tests.
15
+ if (urlParams.has('fontFamily')) {
16
+ const div = document.createElement('div');
17
+ div.style.position = 'fixed';
18
+ div.style.bottom = '10px';
19
+ div.style.right = '230px';
20
+ div.style.width = '250px';
21
+ div.style.fontSize = '16px';
22
+ div.style.padding = '5px';
23
+ div.innerText = `font-family: ${urlParams.get('fontFamily')}`;
24
+ window.addEventListener('load', () => {
25
+ document.body.appendChild(div);
26
+ });
27
+ document.body.style.fontFamily = `${urlParams.get('fontFamily')}`;
28
+ return;
29
+ }
30
+
10
31
  document.body.classList.add(PLATFORM_LINUX_CLASS);
11
32
  const button = document.createElement('button');
12
33
 
@@ -372,8 +372,8 @@ export class ContextMenu extends SubMenu {
372
372
  static initialize(): void {
373
373
  Host.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(
374
374
  Host.InspectorFrontendHostAPI.Events.SetUseSoftMenu, setUseSoftMenu);
375
- function setUseSoftMenu(event: Common.EventTarget.EventTargetEvent): void {
376
- ContextMenu.useSoftMenu = (event.data as boolean);
375
+ function setUseSoftMenu(event: Common.EventTarget.EventTargetEvent<boolean>): void {
376
+ ContextMenu.useSoftMenu = event.data;
377
377
  }
378
378
  }
379
379
 
@@ -470,8 +470,8 @@ export class ContextMenu extends SubMenu {
470
470
  .subItems as (SoftContextMenuDescriptor | Host.InspectorFrontendHostAPI.ContextMenuDescriptor)[];
471
471
  }
472
472
 
473
- private onItemSelected(event: Common.EventTarget.EventTargetEvent): void {
474
- this.itemSelected((event.data as number));
473
+ private onItemSelected(event: Common.EventTarget.EventTargetEvent<number>): void {
474
+ this.itemSelected(event.data);
475
475
  }
476
476
 
477
477
  private itemSelected(id: number): void {
@@ -15,13 +15,9 @@ export class ForwardedInputEventHandler {
15
15
  Host.InspectorFrontendHostAPI.Events.KeyEventUnhandled, this.onKeyEventUnhandled, this);
16
16
  }
17
17
 
18
- private onKeyEventUnhandled(event: Common.EventTarget.EventTargetEvent): void {
19
- const data = event.data;
20
- const type = (data.type as string);
21
- const key = (data.key as string);
22
- const keyCode = (data.keyCode as number);
23
- const modifiers = (data.modifiers as number);
24
-
18
+ private onKeyEventUnhandled(
19
+ event: Common.EventTarget.EventTargetEvent<Host.InspectorFrontendHostAPI.KeyEventUnhandledEvent>): void {
20
+ const {type, key, keyCode, modifiers} = event.data;
25
21
  if (type !== 'keydown') {
26
22
  return;
27
23
  }
@@ -188,8 +188,7 @@ export class InspectorView extends VBox implements ViewLocationResolver {
188
188
  Host.InspectorFrontendHost.InspectorFrontendHostInstance.events.addEventListener(
189
189
  Host.InspectorFrontendHostAPI.Events.ShowPanel, showPanel.bind(this));
190
190
 
191
- function showPanel(this: InspectorView, event: Common.EventTarget.EventTargetEvent): void {
192
- const panelName = (event.data as string);
191
+ function showPanel(this: InspectorView, {data: panelName}: Common.EventTarget.EventTargetEvent<string>): void {
193
192
  this.showPanel(panelName);
194
193
  }
195
194
 
@@ -28,7 +28,6 @@
28
28
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29
29
  */
30
30
 
31
- import * as Common from '../../core/common/common.js';
32
31
  import * as DOMExtension from '../../core/dom_extension/dom_extension.js';
33
32
  import * as Helpers from '../components/helpers/helpers.js';
34
33
 
@@ -48,7 +47,7 @@ export class WidgetElement extends HTMLDivElement {
48
47
  }
49
48
  }
50
49
 
51
- export class Widget extends Common.ObjectWrapper.ObjectWrapper {
50
+ export class Widget {
52
51
  element!: WidgetElement;
53
52
  contentElement: HTMLDivElement;
54
53
  private shadowRoot: ShadowRoot|undefined;
@@ -69,7 +68,6 @@ export class Widget extends Common.ObjectWrapper.ObjectWrapper {
69
68
  private invalidationsRequested?: boolean;
70
69
  private externallyManaged?: boolean;
71
70
  constructor(isWebComponent?: boolean, delegatesFocus?: boolean) {
72
- super();
73
71
  this.contentElement = document.createElement('div');
74
72
  this.contentElement.classList.add('widget');
75
73
  if (isWebComponent) {
@@ -88,7 +88,8 @@ export class ContrastDetails extends Common.ObjectWrapper.ObjectWrapper<EventTyp
88
88
  private contrastPassFailAPCA: HTMLElement;
89
89
  private readonly chooseBgColor: HTMLElement;
90
90
  private bgColorPickerButton: UI.Toolbar.ToolbarToggle;
91
- private readonly bgColorPickedBound: (event: Common.EventTarget.EventTargetEvent) => void;
91
+ private readonly bgColorPickedBound:
92
+ (event: Common.EventTarget.EventTargetEvent<Host.InspectorFrontendHostAPI.EyeDropperPickedColorEvent>) => void;
92
93
  private readonly bgColorSwatch: Swatch;
93
94
  constructor(
94
95
  contrastInfo: ContrastInfo, contentElement: Element,
@@ -449,13 +450,9 @@ export class ContrastDetails extends Common.ObjectWrapper.ObjectWrapper<EventTyp
449
450
  }
450
451
  }
451
452
 
452
- private bgColorPicked(event: Common.EventTarget.EventTargetEvent): void {
453
- const rgbColor = event.data as {
454
- r: number,
455
- g: number,
456
- b: number,
457
- a: number,
458
- };
453
+ private bgColorPicked({
454
+ data: rgbColor,
455
+ }: Common.EventTarget.EventTargetEvent<Host.InspectorFrontendHostAPI.EyeDropperPickedColorEvent>): void {
459
456
  const rgba = [rgbColor.r, rgbColor.g, rgbColor.b, (rgbColor.a / 2.55 | 0) / 100];
460
457
  const color = Common.Color.Color.fromRGBA(rgba);
461
458
  this.contrastInfo.setBgColor(color);
@@ -156,7 +156,8 @@ export class Spectrum extends Common.ObjectWrapper.eventMixin<EventTypes, typeof
156
156
  private readonly deleteIconToolbar: UI.Toolbar.Toolbar;
157
157
  private readonly deleteButton: UI.Toolbar.ToolbarButton;
158
158
  private readonly addColorToolbar: UI.Toolbar.Toolbar;
159
- private readonly colorPickedBound: (event: Common.EventTarget.EventTargetEvent) => void;
159
+ private readonly colorPickedBound:
160
+ (event: Common.EventTarget.EventTargetEvent<Host.InspectorFrontendHostAPI.EyeDropperPickedColorEvent>) => void;
160
161
  private hsv!: number[];
161
162
  private hueAlphaWidth!: number;
162
163
  dragWidth!: number;
@@ -1185,13 +1186,9 @@ export class Spectrum extends Common.ObjectWrapper.eventMixin<EventTypes, typeof
1185
1186
  }
1186
1187
  }
1187
1188
 
1188
- private colorPicked(event: Common.EventTarget.EventTargetEvent): void {
1189
- const rgbColor = event.data as {
1190
- r: number,
1191
- g: number,
1192
- b: number,
1193
- a: number,
1194
- };
1189
+ private colorPicked({
1190
+ data: rgbColor,
1191
+ }: Common.EventTarget.EventTargetEvent<Host.InspectorFrontendHostAPI.EyeDropperPickedColorEvent>): void {
1195
1192
  const rgba = [rgbColor.r, rgbColor.g, rgbColor.b, (rgbColor.a / 2.55 | 0) / 100];
1196
1193
  const color = Common.Color.Color.fromRGBA(rgba);
1197
1194
  this.innerSetColor(color.hsva(), '', undefined /* colorName */, undefined, ChangeSource.Other);
@@ -417,11 +417,10 @@ export class Window extends Common.ObjectWrapper.ObjectWrapper {
417
417
  this.windowLeft = windowLeft;
418
418
  this.windowRight = windowRight;
419
419
  this.updateCurtains();
420
- let windowPosition;
421
420
  if (this.calculator) {
422
- windowPosition = this.calculateWindowPosition();
421
+ this.dispatchEventToListeners(Events.WindowChangedWithPosition, this.calculateWindowPosition());
423
422
  }
424
- this.dispatchEventToListeners(Events.WindowChanged, windowPosition);
423
+ this.dispatchEventToListeners(Events.WindowChanged);
425
424
  }
426
425
 
427
426
  private updateCurtains(): void {
@@ -523,8 +522,19 @@ export class Window extends Common.ObjectWrapper.ObjectWrapper {
523
522
  // eslint-disable-next-line rulesdir/const_enum
524
523
  export enum Events {
525
524
  WindowChanged = 'WindowChanged',
525
+ WindowChangedWithPosition = 'WindowChangedWithPosition',
526
526
  }
527
527
 
528
+ export interface WindowChangedWithPositionEvent {
529
+ rawStartValue: number;
530
+ rawEndValue: number;
531
+ }
532
+
533
+ export type EventTypes = {
534
+ [Events.WindowChanged]: void,
535
+ [Events.WindowChangedWithPosition]: WindowChangedWithPositionEvent,
536
+ };
537
+
528
538
  export class WindowSelector {
529
539
  private startPosition: number;
530
540
  private width: number;
@@ -33,6 +33,7 @@ import type * as SDK from '../../../../core/sdk/sdk.js';
33
33
  import * as UI from '../../legacy.js';
34
34
  import * as i18n from '../../../../core/i18n/i18n.js';
35
35
 
36
+ import type {WindowChangedWithPositionEvent} from './OverviewGrid.js';
36
37
  import {Events as OverviewGridEvents, OverviewGrid} from './OverviewGrid.js';
37
38
  import type {Calculator} from './TimelineGrid.js';
38
39
 
@@ -66,7 +67,7 @@ export class TimelineOverviewPane extends Common.ObjectWrapper.eventMixin<EventT
66
67
  this.cursorArea.addEventListener('mouseleave', this.hideCursor.bind(this), true);
67
68
 
68
69
  this.overviewGrid.setResizeEnabled(false);
69
- this.overviewGrid.addEventListener(OverviewGridEvents.WindowChanged, this.onWindowChanged, this);
70
+ this.overviewGrid.addEventListener(OverviewGridEvents.WindowChangedWithPosition, this.onWindowChanged, this);
70
71
  this.overviewGrid.setClickHandler(this.onClick.bind(this));
71
72
  this.overviewControls = [];
72
73
  this.markers = new Map();
@@ -209,7 +210,7 @@ export class TimelineOverviewPane extends Common.ObjectWrapper.eventMixin<EventT
209
210
  return this.overviewControls.some(control => control.onClick(event));
210
211
  }
211
212
 
212
- private onWindowChanged(event: Common.EventTarget.EventTargetEvent): void {
213
+ private onWindowChanged(event: Common.EventTarget.EventTargetEvent<WindowChangedWithPositionEvent>): void {
213
214
  if (this.muteOnWindowChanged) {
214
215
  return;
215
216
  }
@@ -9,7 +9,9 @@ import * as TextEditor from '../text_editor/text_editor.js';
9
9
 
10
10
  const whitespaceStyleInjectedSet = new WeakSet<Document>();
11
11
 
12
- export class SourcesTextEditor extends TextEditor.CodeMirrorTextEditor.CodeMirrorTextEditor {
12
+ export class SourcesTextEditor extends
13
+ Common.ObjectWrapper.eventMixin<EventTypes, typeof TextEditor.CodeMirrorTextEditor.CodeMirrorTextEditor>(
14
+ TextEditor.CodeMirrorTextEditor.CodeMirrorTextEditor) {
13
15
  private readonly delegate: SourcesTextEditorDelegate;
14
16
  private readonly gutterMouseMove: (event: Event) => void;
15
17
  private readonly gutterMouseOut: () => void;
@@ -486,7 +488,7 @@ export class SourcesTextEditor extends TextEditor.CodeMirrorTextEditor.CodeMirro
486
488
  if (from && to && from.equal(to)) {
487
489
  return;
488
490
  }
489
- this.dispatchEventToListeners(Events.JumpHappened, {from: from, to: to});
491
+ this.dispatchEventToListeners(Events.JumpHappened, {from, to});
490
492
  }
491
493
 
492
494
  private scroll(): void {
@@ -696,6 +698,20 @@ export enum Events {
696
698
  JumpHappened = 'JumpHappened',
697
699
  }
698
700
 
701
+ export interface JumpHappenedEvent {
702
+ from: TextUtils.TextRange.TextRange|null;
703
+ to: TextUtils.TextRange.TextRange|null;
704
+ }
705
+
706
+ export type EventTypes = {
707
+ [Events.GutterClick]: GutterClickEventData,
708
+ [Events.SelectionChanged]: TextUtils.TextRange.TextRange,
709
+ [Events.ScrollChanged]: number,
710
+ [Events.EditorFocused]: void,
711
+ [Events.EditorBlurred]: void,
712
+ [Events.JumpHappened]: JumpHappenedEvent,
713
+ };
714
+
699
715
  export class SourcesTextEditorDelegate {
700
716
  populateLineGutterContextMenu(_contextMenu: UI.ContextMenu.ContextMenu, _lineNumber: number): Promise<void> {
701
717
  throw new Error('Not implemented');
package/package.json CHANGED
@@ -55,5 +55,5 @@
55
55
  "unittest": "scripts/test/run_unittests.py --no-text-coverage",
56
56
  "watch": "third_party/node/node.py --output scripts/watch_build.js"
57
57
  },
58
- "version": "1.0.922470"
58
+ "version": "1.0.922924"
59
59
  }