chrome-devtools-frontend 1.0.938678 → 1.0.939473

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 (135) hide show
  1. package/.stylelintrc.json +8 -10
  2. package/config/gni/all_devtools_files.gni +0 -1
  3. package/config/gni/devtools_grd_files.gni +2 -0
  4. package/docs/triage_guidelines.md +13 -11
  5. package/front_end/Tests.js +63 -29
  6. package/front_end/core/host/InspectorFrontendHost.ts +16 -30
  7. package/front_end/core/host/UserMetrics.ts +1 -0
  8. package/front_end/core/i18n/locales/en-US.json +19 -1
  9. package/front_end/core/i18n/locales/en-XL.json +19 -1
  10. package/front_end/core/protocol_client/InspectorBackend.ts +4 -0
  11. package/front_end/core/root/Runtime.ts +4 -0
  12. package/front_end/core/sdk/CSSModel.ts +64 -50
  13. package/front_end/core/sdk/CategorizedBreakpoint.ts +35 -0
  14. package/front_end/core/sdk/DOMDebuggerModel.ts +10 -41
  15. package/front_end/core/sdk/EmulationModel.ts +11 -0
  16. package/front_end/core/sdk/EventBreakpointsModel.ts +178 -0
  17. package/front_end/core/sdk/Target.ts +2 -1
  18. package/front_end/core/sdk/sdk-meta.ts +30 -1
  19. package/front_end/core/sdk/sdk.ts +4 -0
  20. package/front_end/entrypoints/inspector_main/RenderingOptions.ts +9 -2
  21. package/front_end/entrypoints/inspector_main/renderingOptions.css +2 -2
  22. package/front_end/entrypoints/main/main-meta.ts +0 -4
  23. package/front_end/entrypoints/node_main/nodeConnectionsPanel.css +2 -2
  24. package/front_end/entrypoints/shell/shell.js +1 -0
  25. package/front_end/entrypoints/shell/shell.json +0 -1
  26. package/front_end/models/persistence/editFileSystemView.css +1 -1
  27. package/front_end/models/persistence/workspaceSettingsTab.css +1 -1
  28. package/front_end/panels/accessibility/accessibilityNode.css +2 -2
  29. package/front_end/panels/accessibility/axBreadcrumbs.css +1 -1
  30. package/front_end/panels/animation/animationTimeline.css +5 -5
  31. package/front_end/panels/application/components/frameDetailsReportView.css +1 -1
  32. package/front_end/panels/application/resourcesPanel.css +1 -1
  33. package/front_end/panels/application/resourcesSidebar.css +1 -1
  34. package/front_end/panels/browser_debugger/CSPViolationBreakpointsSidebarPane.ts +2 -2
  35. package/front_end/panels/browser_debugger/CategorizedBreakpointsSidebarPane.ts +7 -7
  36. package/front_end/panels/browser_debugger/EventListenerBreakpointsSidebarPane.ts +14 -6
  37. package/front_end/panels/browser_debugger/xhrBreakpointsSidebarPane.css +2 -5
  38. package/front_end/panels/changes/changesSidebar.css +1 -1
  39. package/front_end/panels/changes/changesView.css +2 -2
  40. package/front_end/panels/console/consolePrompt.css +1 -1
  41. package/front_end/panels/console/consoleSidebar.css +4 -4
  42. package/front_end/panels/console/consoleView.css +2 -2
  43. package/front_end/panels/css_overview/components/cssOverviewStartView.css +1 -1
  44. package/front_end/panels/css_overview/cssOverviewCompletedView.css +8 -8
  45. package/front_end/panels/elements/classesPaneWidget.css +1 -1
  46. package/front_end/panels/elements/components/adornerSettingsPane.css +1 -1
  47. package/front_end/panels/elements/computedStyleWidgetTree.css +1 -1
  48. package/front_end/panels/elements/elementsPanel.css +1 -1
  49. package/front_end/panels/elements/elementsTreeOutline.css +1 -1
  50. package/front_end/panels/elements/layoutPane.css +1 -1
  51. package/front_end/panels/elements/platformFontsWidget.css +1 -1
  52. package/front_end/panels/elements/stylesSectionTree.css +1 -1
  53. package/front_end/panels/event_listeners/EventListenersView.ts +5 -4
  54. package/front_end/panels/event_listeners/eventListenersView.css +3 -2
  55. package/front_end/panels/issues/IssueKindView.ts +0 -6
  56. package/front_end/panels/issues/IssueView.ts +19 -27
  57. package/front_end/panels/issues/components/HideIssuesMenu.ts +7 -11
  58. package/front_end/panels/issues/components/hideIssuesMenu.css +8 -0
  59. package/front_end/panels/issues/issuesTree.css +17 -5
  60. package/front_end/panels/lighthouse/lighthouseStartView.css +2 -2
  61. package/front_end/panels/media/playerListView.css +1 -1
  62. package/front_end/panels/mobile_throttling/throttlingSettingsTab.css +1 -1
  63. package/front_end/panels/network/NetworkLogView.ts +13 -0
  64. package/front_end/panels/network/NetworkSearchScope.ts +3 -1
  65. package/front_end/panels/network/RequestPayloadView.ts +2 -0
  66. package/front_end/panels/network/blockedURLsPane.css +1 -1
  67. package/front_end/panels/network/networkConfigView.css +1 -1
  68. package/front_end/panels/network/networkLogView.css +3 -3
  69. package/front_end/panels/network/requestPayloadTree.css +5 -0
  70. package/front_end/panels/profiler/profileLauncherView.css +3 -3
  71. package/front_end/panels/protocol_monitor/ProtocolMonitor.ts +1 -0
  72. package/front_end/panels/security/mainView.css +2 -2
  73. package/front_end/panels/security/originView.css +1 -1
  74. package/front_end/panels/sensors/sensors.css +2 -2
  75. package/front_end/panels/settings/emulation/components/userAgentClientHintsForm.css +1 -1
  76. package/front_end/panels/settings/emulation/devicesSettingsTab.css +4 -4
  77. package/front_end/panels/settings/frameworkIgnoreListSettingsTab.css +1 -1
  78. package/front_end/panels/settings/settingsScreen.css +2 -2
  79. package/front_end/panels/sources/CoveragePlugin.ts +7 -2
  80. package/front_end/panels/sources/DebuggerPausedMessage.ts +14 -7
  81. package/front_end/panels/sources/callStackSidebarPane.css +1 -1
  82. package/front_end/panels/sources/dialog.css +1 -1
  83. package/front_end/panels/sources/javaScriptBreakpointsSidebarPane.css +1 -1
  84. package/front_end/panels/sources/navigatorTree.css +4 -4
  85. package/front_end/panels/sources/sourcesPanel.css +2 -2
  86. package/front_end/panels/sources/threadsSidebarPane.css +1 -1
  87. package/front_end/panels/timeline/components/WebVitalsTooltip.css +1 -1
  88. package/front_end/panels/timeline/historyToolbarButton.css +1 -1
  89. package/front_end/panels/timeline/timelineStatusDialog.css +1 -1
  90. package/front_end/panels/webauthn/webauthnPane.css +2 -2
  91. package/front_end/ui/components/adorners/adorner.css +1 -1
  92. package/front_end/ui/components/expandable_list/expandableList.css +1 -1
  93. package/front_end/ui/components/linear_memory_inspector/valueInterpreterDisplay.css +1 -2
  94. package/front_end/ui/components/linear_memory_inspector/valueInterpreterSettings.css +1 -1
  95. package/front_end/ui/components/report_view/reportKey.css +1 -1
  96. package/front_end/ui/components/report_view/reportValue.css +1 -1
  97. package/front_end/ui/legacy/ContextMenu.ts +5 -1
  98. package/front_end/ui/legacy/SoftContextMenu.ts +5 -1
  99. package/front_end/ui/legacy/checkboxTextLabel.css +1 -1
  100. package/front_end/ui/legacy/components/color_picker/spectrum.css +9 -9
  101. package/front_end/ui/legacy/components/data_grid/dataGrid.css +2 -2
  102. package/front_end/ui/legacy/components/inline_editor/cssAngleEditor.css +3 -3
  103. package/front_end/ui/legacy/components/inline_editor/cssLength.css +1 -1
  104. package/front_end/ui/legacy/components/inline_editor/cssShadowEditor.css +1 -1
  105. package/front_end/ui/legacy/components/inline_editor/fontEditor.css +1 -1
  106. package/front_end/ui/legacy/components/object_ui/objectPropertiesSection.css +2 -2
  107. package/front_end/ui/legacy/components/quick_open/FilteredListWidget.ts +13 -7
  108. package/front_end/ui/legacy/components/quick_open/filteredListWidget.css +2 -2
  109. package/front_end/ui/legacy/components/source_frame/imageView.css +1 -1
  110. package/front_end/ui/legacy/components/text_editor/cmdevtools.css +6 -14
  111. package/front_end/ui/legacy/emptyWidget.css +1 -1
  112. package/front_end/ui/legacy/filter.css +1 -1
  113. package/front_end/ui/legacy/infobar.css +2 -2
  114. package/front_end/ui/legacy/inspectorCommon.css +45 -45
  115. package/front_end/ui/legacy/inspectorSyntaxHighlight.css +3 -3
  116. package/front_end/ui/legacy/inspectorViewTabbedPane.css +1 -1
  117. package/front_end/ui/legacy/searchableView.css +1 -1
  118. package/front_end/ui/legacy/softContextMenu.css +1 -1
  119. package/front_end/ui/legacy/textPrompt.css +1 -1
  120. package/front_end/ui/legacy/toolbar.css +8 -8
  121. package/front_end/ui/legacy/treeoutline.css +4 -4
  122. package/inspector_overlay/common.css +2 -2
  123. package/inspector_overlay/tool_highlight.css +1 -1
  124. package/inspector_overlay/tool_paused.css +2 -2
  125. package/package.json +1 -1
  126. package/scripts/eslint_rules/lib/check_component_naming.js +1 -1
  127. package/scripts/eslint_rules/lib/enforce_custom_event_names.js +1 -1
  128. package/scripts/eslint_rules/lib/es_modules_import.js +21 -20
  129. package/scripts/eslint_rules/lib/l10n_filename_matches.js +4 -3
  130. package/scripts/eslint_rules/lib/l10n_no_i18nString_calls_module_instantiation.js +1 -1
  131. package/scripts/eslint_rules/lib/migrate_create_shadow_root_with_styles.js +2 -2
  132. package/scripts/eslint_rules/lib/migrate_register_required_css.js +1 -1
  133. package/scripts/eslint_rules/lib/no_underscored_properties.js +1 -1
  134. package/scripts/eslint_rules/tests/es_modules_import_test.js +3 -2
  135. package/front_end/entrypoints/main/module.json +0 -5
@@ -33,7 +33,7 @@
33
33
 
34
34
  .icon,
35
35
  .icon-badge {
36
- margin: -3px -5px -3px -5px;
36
+ margin: -3px -5px;
37
37
  }
38
38
 
39
39
  .icon-stack {
@@ -41,7 +41,7 @@
41
41
  display: inline-flex;
42
42
  }
43
43
 
44
- .icon-stack > [is=ui-icon]:not(:first-child) {
44
+ .icon-stack > [is="ui-icon"]:not(:first-child) {
45
45
  position: absolute;
46
46
  left: 0;
47
47
  top: 0;
@@ -124,7 +124,7 @@
124
124
  }
125
125
 
126
126
  @media (forced-colors: active) {
127
- .tree-outline li .leading-icons [is=ui-icon].icon-mask {
127
+ .tree-outline li .leading-icons [is="ui-icon"].icon-mask {
128
128
  background: ButtonText;
129
129
  }
130
130
 
@@ -134,7 +134,7 @@
134
134
  }
135
135
 
136
136
  .tree-outline:not(.hide-selection-when-blurred) li.parent:hover:not(.selected)::before,
137
- .tree-outline:not(.hide-selection-when-blurred) li:hover:not(.selected) [is=ui-icon].icon-mask {
137
+ .tree-outline:not(.hide-selection-when-blurred) li:hover:not(.selected) [is="ui-icon"].icon-mask {
138
138
  background-color: HighlightText;
139
139
  }
140
140
 
@@ -51,13 +51,13 @@
51
51
  margin-top: 0;
52
52
  }
53
53
 
54
- .scripts-debug-toolbar-drawer > [is=dt-checkbox] {
54
+ .scripts-debug-toolbar-drawer > [is="dt-checkbox"] {
55
55
  display: none;
56
56
  padding-left: 3px;
57
57
  height: 28px;
58
58
  }
59
59
 
60
- .scripts-debug-toolbar-drawer.expanded > [is=dt-checkbox] {
60
+ .scripts-debug-toolbar-drawer.expanded > [is="dt-checkbox"] {
61
61
  display: flex;
62
62
  }
63
63
 
@@ -35,7 +35,7 @@
35
35
  .thread-item-paused-state {
36
36
  color: var(--color-text-disabled);
37
37
  margin-left: auto;
38
- padding: 0 10px 0 10px;
38
+ padding: 0 10px;
39
39
  }
40
40
 
41
41
  .selected-thread-icon {
@@ -59,7 +59,7 @@
59
59
  .bad {
60
60
  display: block;
61
61
  border: 1px solid transparent;
62
- border-width: 0 6px 12px 6px;
62
+ border-width: 0 6px 12px;
63
63
  border-bottom-color: var(--lighthouse-red);
64
64
  width: 0;
65
65
  }
@@ -45,7 +45,7 @@
45
45
  opacity: 100%;
46
46
  }
47
47
 
48
- .history-dropdown-button[disabled] [is=ui-icon].icon-mask {
48
+ .history-dropdown-button[disabled] [is="ui-icon"].icon-mask {
49
49
  background-color: GrayText;
50
50
  }
51
51
  }
@@ -7,7 +7,7 @@
7
7
  .timeline-status-dialog {
8
8
  display: flex;
9
9
  flex-direction: column;
10
- padding: 16px 16px 12px 16px;
10
+ padding: 16px 16px 12px;
11
11
  align-self: center;
12
12
  background-color: var(--color-background);
13
13
  box-shadow: var(--drop-shadow);
@@ -39,7 +39,7 @@
39
39
 
40
40
  .new-authenticator-container {
41
41
  display: none;
42
- margin: 10px 10px;
42
+ margin: 10px;
43
43
  }
44
44
 
45
45
  .webauthn-pane.enabled .new-authenticator-container {
@@ -97,7 +97,7 @@
97
97
  }
98
98
 
99
99
  .authenticator-field-value {
100
- padding: 5px 0 5px 0;
100
+ padding: 5px 0;
101
101
  display: inline-block;
102
102
  font-family: monospace;
103
103
  }
@@ -33,7 +33,7 @@ slot {
33
33
  border-color: var(--override-adorner-focus-border-color, var(--color-primary));
34
34
  }
35
35
 
36
- :host([aria-pressed=true]) slot {
36
+ :host([aria-pressed="true"]) slot {
37
37
  color: var(--override-adorner-active-text-color, var(--color-background));
38
38
  background-color: var(--override-adorner-active-background-color, var(--color-primary));
39
39
  border: 1px solid var(--override-adorner-active-background-color, var(--color-primary));
@@ -17,7 +17,7 @@ div {
17
17
 
18
18
  .arrow-icon {
19
19
  display: inline-block;
20
- -webkit-mask-image: url(Images/treeoutlineTriangles.svg);
20
+ -webkit-mask-image: url("Images/treeoutlineTriangles.svg");
21
21
  -webkit-mask-size: 32px 24px;
22
22
  -webkit-mask-position: 0 0;
23
23
  background-color: var(--color-text-primary);
@@ -17,8 +17,7 @@
17
17
  width: 100%;
18
18
  display: grid;
19
19
  grid-template-columns: auto auto 1fr;
20
- grid-column-gap: 24px;
21
- grid-row-gap: 4px;
20
+ gap: 4px 24px;
22
21
  min-height: 24px;
23
22
  overflow: hidden;
24
23
  padding: 2px 12px;
@@ -13,7 +13,7 @@
13
13
  .settings {
14
14
  display: flex;
15
15
  flex-wrap: wrap;
16
- margin: 0 12px 12px 12px;
16
+ margin: 0 12px 12px;
17
17
  column-gap: 45px;
18
18
  row-gap: 15px;
19
19
  }
@@ -6,7 +6,7 @@
6
6
 
7
7
  :host {
8
8
  line-height: 28px;
9
- margin: 0 0 8px 0;
9
+ margin: 0 0 8px;
10
10
  }
11
11
 
12
12
  .key {
@@ -6,7 +6,7 @@
6
6
 
7
7
  :host {
8
8
  line-height: 28px;
9
- margin: 0 0 8px 0;
9
+ margin: 0 0 8px;
10
10
  min-width: 150px;
11
11
  }
12
12
 
@@ -334,6 +334,7 @@ export class SubMenu extends Item {
334
334
 
335
335
  export interface ContextMenuOptions {
336
336
  useSoftMenu?: boolean;
337
+ onSoftMenuClosed?: () => void;
337
338
  x?: number;
338
339
  y?: number;
339
340
  }
@@ -347,6 +348,7 @@ export class ContextMenu extends SubMenu {
347
348
  private readonly useSoftMenu: boolean;
348
349
  private x: number;
349
350
  private y: number;
351
+ private onSoftMenuClosed?: () => void;
350
352
  private readonly handlers: Map<number, () => void>;
351
353
  idInternal: number;
352
354
  private softMenu?: SoftContextMenu;
@@ -363,6 +365,7 @@ export class ContextMenu extends SubMenu {
363
365
  this.useSoftMenu = Boolean(options.useSoftMenu);
364
366
  this.x = options.x === undefined ? mouseEvent.x : options.x;
365
367
  this.y = options.y === undefined ? mouseEvent.y : options.y;
368
+ this.onSoftMenuClosed = options.onSoftMenuClosed;
366
369
  this.handlers = new Map();
367
370
  this.idInternal = 0;
368
371
 
@@ -434,7 +437,8 @@ export class ContextMenu extends SubMenu {
434
437
  const ownerDocument = (eventTarget as HTMLElement).ownerDocument;
435
438
  if (this.useSoftMenu || ContextMenu.useSoftMenu ||
436
439
  Host.InspectorFrontendHost.InspectorFrontendHostInstance.isHostedMode()) {
437
- this.softMenu = new SoftContextMenu((menuObject as SoftContextMenuDescriptor[]), this.itemSelected.bind(this));
440
+ this.softMenu = new SoftContextMenu(
441
+ (menuObject as SoftContextMenuDescriptor[]), this.itemSelected.bind(this), undefined, this.onSoftMenuClosed);
438
442
  this.softMenu.show((ownerDocument as Document), new AnchorBox(this.x, this.y, 0, 0));
439
443
  } else {
440
444
  Host.InspectorFrontendHost.InspectorFrontendHostInstance.showContextMenuAtPoint(
@@ -77,15 +77,18 @@ export class SoftContextMenu {
77
77
  private hideOnUserGesture?: ((event: Event) => void);
78
78
  private activeSubMenuElement?: HTMLElement;
79
79
  private subMenu?: SoftContextMenu;
80
+ private onMenuClosed?: () => void;
80
81
 
81
82
  constructor(
82
- items: SoftContextMenuDescriptor[], itemSelectedCallback: (arg0: number) => void, parentMenu?: SoftContextMenu) {
83
+ items: SoftContextMenuDescriptor[], itemSelectedCallback: (arg0: number) => void, parentMenu?: SoftContextMenu,
84
+ onMenuClosed?: () => void) {
83
85
  this.items = items;
84
86
  this.itemSelectedCallback = itemSelectedCallback;
85
87
  this.parentMenu = parentMenu;
86
88
  this.highlightedMenuItemElement = null;
87
89
 
88
90
  this.detailsForElementMap = new WeakMap();
91
+ this.onMenuClosed = onMenuClosed;
89
92
  }
90
93
 
91
94
  show(document: Document, anchorBox: AnchorBox): void {
@@ -165,6 +168,7 @@ export class SoftContextMenu {
165
168
  delete this.parentMenu.activeSubMenuElement;
166
169
  }
167
170
  }
171
+ this.onMenuClosed?.();
168
172
  }
169
173
 
170
174
  private createMenuItem(item: SoftContextMenuDescriptor): HTMLElement {
@@ -44,7 +44,7 @@ input.dt-checkbox-themed {
44
44
  }
45
45
 
46
46
  input.dt-checkbox-themed::after {
47
- content: '';
47
+ content: "";
48
48
  line-height: 10px;
49
49
  position: absolute;
50
50
  cursor: pointer;
@@ -242,26 +242,26 @@
242
242
  user-select: text;
243
243
  }
244
244
 
245
- .contrast-details-value [is=ui-icon] {
245
+ .contrast-details-value [is="ui-icon"] {
246
246
  display: none;
247
247
  margin-left: 5px;
248
248
  background-color: var(--color-text-primary);
249
249
  }
250
250
 
251
- .spectrum-contrast-details .toolbar-state-on [is=ui-icon] {
251
+ .spectrum-contrast-details .toolbar-state-on [is="ui-icon"] {
252
252
  background-color: var(--color-text-secondary);
253
253
  }
254
254
 
255
- [is=ui-icon].smallicon-no {
255
+ [is="ui-icon"].smallicon-no {
256
256
  background-color: var(--color-accent-red);
257
257
  }
258
258
 
259
- .contrast-pass-fail span[is=ui-icon] {
259
+ .contrast-pass-fail span[is="ui-icon"] {
260
260
  margin-left: 5px;
261
261
  }
262
262
 
263
- [is=ui-icon].smallicon-checkmark-square,
264
- [is=ui-icon].smallicon-checkmark-behind {
263
+ [is="ui-icon"].smallicon-checkmark-square,
264
+ [is="ui-icon"].smallicon-checkmark-behind {
265
265
  background-color: var(--color-accent-green);
266
266
  }
267
267
 
@@ -328,7 +328,7 @@
328
328
  background-color: var(--color-background-inverted-opacity-50);
329
329
  }
330
330
 
331
- [is=ui-icon].icon-mask.copy-color-icon {
331
+ [is="ui-icon"].icon-mask.copy-color-icon {
332
332
  background-color: var(--color-background);
333
333
  }
334
334
 
@@ -461,7 +461,7 @@
461
461
  }
462
462
 
463
463
  .palette-color-shades > .spectrum-palette-color {
464
- margin: 8px 0 0 0;
464
+ margin: 8px 0 0;
465
465
  margin-left: 8px;
466
466
  width: 12px;
467
467
  }
@@ -644,7 +644,7 @@ div.palette-preview {
644
644
  padding-bottom: 2px;
645
645
  }
646
646
 
647
- .swatch.contrast [is=ui-icon] {
647
+ .swatch.contrast [is="ui-icon"] {
648
648
  margin: -2px;
649
649
  }
650
650
 
@@ -292,7 +292,7 @@
292
292
  }
293
293
 
294
294
  @media (forced-colors: active) {
295
- .sort-order-icon-container [is=ui-icon].icon-mask,
295
+ .sort-order-icon-container [is="ui-icon"].icon-mask,
296
296
  .data-grid td.disclosure::before {
297
297
  forced-color-adjust: none;
298
298
  background-color: ButtonText;
@@ -303,7 +303,7 @@
303
303
  }
304
304
 
305
305
  .data-grid th.sortable:hover *,
306
- .data-grid th.sortable:hover .sort-order-icon-container [is=ui-icon].icon-mask,
306
+ .data-grid th.sortable:hover .sort-order-icon-container [is="ui-icon"].icon-mask,
307
307
  .data-grid tr.parent.selected td.disclosure::before,
308
308
  .data-grid:focus tr.parent.selected td.disclosure::before,
309
309
  .data-grid table.data tr.parent.revealed:hover td.disclosure::before {
@@ -5,7 +5,7 @@
5
5
  */
6
6
 
7
7
  .editor.interacting::before {
8
- content: '';
8
+ content: "";
9
9
  position: fixed;
10
10
  inset: 0;
11
11
  }
@@ -42,7 +42,7 @@
42
42
  width: 0;
43
43
  height: 0;
44
44
  border-style: solid;
45
- border-width: 0 0.9em 0.9em 0.9em;
45
+ border-width: 0 0.9em 0.9em;
46
46
  border-color: transparent transparent var(--color-background-elevation-1) transparent;
47
47
  }
48
48
 
@@ -76,7 +76,7 @@
76
76
  }
77
77
 
78
78
  .hand::before {
79
- content: '';
79
+ content: "";
80
80
  display: inline-block;
81
81
  position: absolute;
82
82
  top: -0.6em;
@@ -33,7 +33,7 @@
33
33
  -webkit-mask-size: 19px 6px;
34
34
  -webkit-mask-repeat: no-repeat;
35
35
  background-color: var(--color-text-primary);
36
- content: '';
36
+ content: "";
37
37
  height: 1em;
38
38
  width: 1em;
39
39
  }
@@ -6,7 +6,7 @@
6
6
 
7
7
  :host {
8
8
  user-select: none;
9
- padding: 4px 12px 12px 12px;
9
+ padding: 4px 12px 12px;
10
10
  border: 1px solid transparent;
11
11
  }
12
12
 
@@ -6,7 +6,7 @@
6
6
 
7
7
  :host {
8
8
  user-select: none;
9
- padding: 4px 12px 12px 12px;
9
+ padding: 4px 12px 12px;
10
10
  }
11
11
 
12
12
  .error-input {
@@ -9,7 +9,7 @@
9
9
  }
10
10
 
11
11
  .object-properties-section {
12
- padding: 0 0 0 0;
12
+ padding: 0;
13
13
  color: var(--color-text-primary);
14
14
  display: flex;
15
15
  flex-direction: column;
@@ -25,7 +25,7 @@
25
25
 
26
26
  .object-properties-section li.editing-sub-part {
27
27
  padding: 3px 12px 8px 6px;
28
- margin: -1px -6px -8px -6px;
28
+ margin: -1px -6px -8px;
29
29
  text-overflow: clip;
30
30
  }
31
31
 
@@ -334,14 +334,20 @@ export class FilteredListWidget extends Common.ObjectWrapper.eventMixin<EventTyp
334
334
  break;
335
335
  }
336
336
  }
337
- if (!completion) {
338
- return false;
337
+ // If there is an auto-completion, press 'tab' first time will show the auto-completion, second time will rewrite
338
+ // the query. Otherwise it will select the next item.
339
+ if (completion) {
340
+ const selection = this.inputBoxElement.getComponentSelection();
341
+ if (selection && selection.toString().trim() !== '') {
342
+ this.setQuery(completion);
343
+ return true;
344
+ }
345
+ this.inputBoxElement.focus();
346
+ this.inputBoxElement.setText(completion);
347
+ this.setQuerySelectedRange(userEnteredText.length, completion.length);
348
+ return true;
339
349
  }
340
- this.inputBoxElement.focus();
341
- this.inputBoxElement.setText(completion);
342
- this.inputBoxElement.setSelectedRange(userEnteredText.length, completion.length);
343
- this.scheduleFilter();
344
- return true;
350
+ return this.list.selectNextItem(true, false);
345
351
  }
346
352
 
347
353
  private itemsFilteredForTest(): void {
@@ -30,7 +30,7 @@
30
30
  devtools-text-prompt {
31
31
  flex: 0 0 40px;
32
32
  font-size: 14px;
33
- font-family: '.SFNSDisplay-Regular', 'Helvetica Neue', 'Lucida Grande', sans-serif;
33
+ font-family: ".SFNSDisplay-Regular", "Helvetica Neue", "Lucida Grande", sans-serif;
34
34
  line-height: 16px;
35
35
  padding: 12px;
36
36
  }
@@ -80,7 +80,7 @@ devtools-text-prompt {
80
80
  color: var(--color-text-primary);
81
81
  display: flex;
82
82
  border-bottom: 1px solid var(--color-details-hairline-light);
83
- font-family: '.SFNSDisplay-Regular', 'Helvetica Neue', 'Lucida Grande', sans-serif;
83
+ font-family: ".SFNSDisplay-Regular", "Helvetica Neue", "Lucida Grande", sans-serif;
84
84
  padding-left: 8px;
85
85
  padding-right: 8px;
86
86
  }
@@ -9,7 +9,7 @@
9
9
  }
10
10
 
11
11
  .image-view > .image {
12
- padding: 20px 20px 10px 20px;
12
+ padding: 20px 20px 10px;
13
13
  text-align: center;
14
14
  }
15
15
 
@@ -650,12 +650,8 @@ div.CodeMirror:focus-within span.CodeMirror-nonmatchingbracket {
650
650
 
651
651
  .cm-search-highlight::before {
652
652
  position: absolute;
653
- border-top-style: solid;
654
- border-bottom-style: solid;
655
- border-top-color: var(--override-search-highlight-border-color);
656
- border-bottom-color: var(--override-search-highlight-border-color);
657
- border-top-width: 1px;
658
- border-bottom-width: 1px;
653
+ border-top: 1px solid var(--override-search-highlight-border-color);
654
+ border-bottom: 1px solid var(--override-search-highlight-border-color);
659
655
  top: -1px;
660
656
  bottom: 0;
661
657
  left: 0;
@@ -669,19 +665,15 @@ div.CodeMirror:focus-within span.CodeMirror-nonmatchingbracket {
669
665
  }
670
666
 
671
667
  .cm-search-highlight-start::before {
672
- border-left-width: 1px;
668
+ border-left: 1px solid var(--override-search-highlight-border-color);
673
669
  border-top-left-radius: 2px;
674
670
  border-bottom-left-radius: 2px;
675
- border-left-style: solid;
676
- border-left-color: var(--override-search-highlight-border-color);
677
671
  }
678
672
 
679
673
  .cm-search-highlight-end::before {
680
- border-right-width: 1px;
674
+ border-right: 1px solid var(--override-search-highlight-border-color);
681
675
  border-top-right-radius: 2px;
682
676
  border-bottom-right-radius: 2px;
683
- border-right-style: solid;
684
- border-right-color: var(--override-search-highlight-border-color);
685
677
  }
686
678
 
687
679
  .cm-line-with-selection .cm-column-with-selection.cm-search-highlight-full::before {
@@ -701,7 +693,7 @@ div.CodeMirror:focus-within span.CodeMirror-nonmatchingbracket {
701
693
  .cm-line-with-selection .cm-column-with-selection.cm-search-highlight::before {
702
694
  --override-auto-gen-cmlinewithselectioncmcolumnwithselectioncmsearchhighlightbefore-backgroundcolor: rgb(241 234 0);
703
695
 
704
- margin: -1px -1px -1px -1px;
696
+ margin: -1px;
705
697
  background-color: var(--override-auto-gen-cmlinewithselectioncmcolumnwithselectioncmsearchhighlightbefore-backgroundcolor);
706
698
  z-index: -1;
707
699
  }
@@ -933,7 +925,7 @@ div.CodeMirror:focus-within span.CodeMirror-nonmatchingbracket {
933
925
  }
934
926
 
935
927
  .CodeMirror-foldmarker::before {
936
- content: '\2026';
928
+ content: "\2026";
937
929
  font-size: 13px;
938
930
  color: var(--color-text-secondary);
939
931
  }
@@ -7,7 +7,7 @@
7
7
  .empty-bold-text {
8
8
  display: block;
9
9
  font-size: 1.5em;
10
- margin: 0.83em 0 0.83em;
10
+ margin: 0.83em 0;
11
11
  font-weight: bold;
12
12
  }
13
13
 
@@ -100,7 +100,7 @@
100
100
  position: relative;
101
101
  }
102
102
 
103
- .filter-checkbox-filter > [is=dt-checkbox] {
103
+ .filter-checkbox-filter > [is="dt-checkbox"] {
104
104
  display: flex;
105
105
  margin: auto 0;
106
106
  }
@@ -11,7 +11,7 @@
11
11
  border-bottom: 1px solid var(--color-details-hairline);
12
12
  flex-direction: column;
13
13
  position: relative;
14
- padding: 1px 6px 1px;
14
+ padding: 1px 6px;
15
15
  }
16
16
 
17
17
  .infobar:focus {
@@ -55,7 +55,7 @@
55
55
  }
56
56
 
57
57
  .infobar-details-rows {
58
- padding: 5px 5px 0 5px;
58
+ padding: 5px 5px 0;
59
59
  }
60
60
 
61
61
  .infobar-details-row {