Skip to content

Commit af53aca

Browse files
authored
Disable inapplicable commands for React Native targets (#251)
1 parent 571dc30 commit af53aca

11 files changed

Lines changed: 54 additions & 1 deletion

File tree

front_end/core/common/SettingRegistration.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,10 @@ export function getRegisteredSettings(): SettingRegistration[] {
101101
return registeredSettings.filter(setting => Root.Runtime.Runtime.isDescriptorEnabled(setting));
102102
}
103103

104+
export function getAllRegisteredSettings(): SettingRegistration[] {
105+
return registeredSettings;
106+
}
107+
104108
export function registerSettingsForTest(settings: SettingRegistration[], forceReset = false): void {
105109
if (registeredSettings.length === 0 || forceReset) {
106110
registeredSettings = settings;

front_end/core/common/Settings.ts

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ import type {EventDescriptor, EventTargetEvent, GenericEvents} from './EventTarg
3636
import {ObjectWrapper} from './Object.js';
3737
import {
3838
getLocalizedSettingsCategory,
39+
getAllRegisteredSettings,
3940
getRegisteredSettings as getRegisteredSettingsInternal,
4041
type LearnMore,
4142
maybeRemoveSettingExtension,
@@ -68,7 +69,9 @@ export class Settings {
6869
) {
6970
this.#logSettingAccess = logSettingAccess;
7071

71-
for (const registration of this.getRegisteredSettings()) {
72+
// [RN] Register all settings unconditionally so moduleSetting() lookups
73+
// succeed at runtime. Experiment gating only affects command menu visibility.
74+
for (const registration of getAllRegisteredSettings()) {
7275
const {settingName, defaultValue, storageType} = registration;
7376
const isRegex = registration.settingType === SettingType.REGEX;
7477

front_end/core/sdk/sdk-meta.ts

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
import * as Common from '../common/common.js';
66
import * as i18n from '../i18n/i18n.js';
7+
import * as Root from '../root/root.js';
78

89
const UIStrings = {
910
/**
@@ -409,6 +410,7 @@ Common.Settings.registerSettingExtension({
409410

410411
Common.Settings.registerSettingExtension({
411412
category: Common.Settings.SettingCategory.DEBUGGER,
413+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
412414
title: i18nLazyString(UIStrings.disableJavascript),
413415
settingName: 'java-script-disabled',
414416
settingType: Common.Settings.SettingType.BOOLEAN,
@@ -456,6 +458,7 @@ Common.Settings.registerSettingExtension({
456458

457459
Common.Settings.registerSettingExtension({
458460
category: Common.Settings.SettingCategory.ELEMENTS,
461+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
459462
storageType: Common.Settings.SettingStorageType.SYNCED,
460463
title: i18nLazyString(UIStrings.showRulersOnHover),
461464
settingName: 'show-metrics-rulers',
@@ -475,6 +478,7 @@ Common.Settings.registerSettingExtension({
475478

476479
Common.Settings.registerSettingExtension({
477480
category: Common.Settings.SettingCategory.GRID,
481+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
478482
storageType: Common.Settings.SettingStorageType.SYNCED,
479483
title: i18nLazyString(UIStrings.showAreaNames),
480484
settingName: 'show-grid-areas',
@@ -494,6 +498,7 @@ Common.Settings.registerSettingExtension({
494498

495499
Common.Settings.registerSettingExtension({
496500
category: Common.Settings.SettingCategory.GRID,
501+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
497502
storageType: Common.Settings.SettingStorageType.SYNCED,
498503
title: i18nLazyString(UIStrings.showTrackSizes),
499504
settingName: 'show-grid-track-sizes',
@@ -513,6 +518,7 @@ Common.Settings.registerSettingExtension({
513518

514519
Common.Settings.registerSettingExtension({
515520
category: Common.Settings.SettingCategory.GRID,
521+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
516522
storageType: Common.Settings.SettingStorageType.SYNCED,
517523
title: i18nLazyString(UIStrings.extendGridLines),
518524
settingName: 'extend-grid-lines',
@@ -532,6 +538,7 @@ Common.Settings.registerSettingExtension({
532538

533539
Common.Settings.registerSettingExtension({
534540
category: Common.Settings.SettingCategory.GRID,
541+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
535542
storageType: Common.Settings.SettingStorageType.SYNCED,
536543
title: i18nLazyString(UIStrings.showLineLabels),
537544
settingName: 'show-grid-line-labels',
@@ -558,6 +565,7 @@ Common.Settings.registerSettingExtension({
558565

559566
Common.Settings.registerSettingExtension({
560567
category: Common.Settings.SettingCategory.RENDERING,
568+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
561569
settingName: 'show-paint-rects',
562570
settingType: Common.Settings.SettingType.BOOLEAN,
563571
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -576,6 +584,7 @@ Common.Settings.registerSettingExtension({
576584

577585
Common.Settings.registerSettingExtension({
578586
category: Common.Settings.SettingCategory.RENDERING,
587+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
579588
settingName: 'show-layout-shift-regions',
580589
settingType: Common.Settings.SettingType.BOOLEAN,
581590
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -594,6 +603,7 @@ Common.Settings.registerSettingExtension({
594603

595604
Common.Settings.registerSettingExtension({
596605
category: Common.Settings.SettingCategory.RENDERING,
606+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
597607
settingName: 'show-ad-highlights',
598608
settingType: Common.Settings.SettingType.BOOLEAN,
599609
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -612,6 +622,7 @@ Common.Settings.registerSettingExtension({
612622

613623
Common.Settings.registerSettingExtension({
614624
category: Common.Settings.SettingCategory.RENDERING,
625+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
615626
settingName: 'show-debug-borders',
616627
settingType: Common.Settings.SettingType.BOOLEAN,
617628
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -630,6 +641,7 @@ Common.Settings.registerSettingExtension({
630641

631642
Common.Settings.registerSettingExtension({
632643
category: Common.Settings.SettingCategory.RENDERING,
644+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
633645
settingName: 'show-fps-counter',
634646
settingType: Common.Settings.SettingType.BOOLEAN,
635647
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -648,6 +660,7 @@ Common.Settings.registerSettingExtension({
648660

649661
Common.Settings.registerSettingExtension({
650662
category: Common.Settings.SettingCategory.RENDERING,
663+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
651664
settingName: 'show-scroll-bottleneck-rects',
652665
settingType: Common.Settings.SettingType.BOOLEAN,
653666
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -666,6 +679,7 @@ Common.Settings.registerSettingExtension({
666679

667680
Common.Settings.registerSettingExtension({
668681
category: Common.Settings.SettingCategory.RENDERING,
682+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
669683
title: i18nLazyString(UIStrings.emulateAFocusedPage),
670684
settingName: 'emulate-page-focus',
671685
settingType: Common.Settings.SettingType.BOOLEAN,
@@ -685,6 +699,7 @@ Common.Settings.registerSettingExtension({
685699

686700
Common.Settings.registerSettingExtension({
687701
category: Common.Settings.SettingCategory.RENDERING,
702+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
688703
settingName: 'emulated-css-media',
689704
settingType: Common.Settings.SettingType.ENUM,
690705
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -714,6 +729,7 @@ Common.Settings.registerSettingExtension({
714729

715730
Common.Settings.registerSettingExtension({
716731
category: Common.Settings.SettingCategory.RENDERING,
732+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
717733
settingName: 'emulated-css-media-feature-prefers-color-scheme',
718734
settingType: Common.Settings.SettingType.ENUM,
719735
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -743,6 +759,7 @@ Common.Settings.registerSettingExtension({
743759

744760
Common.Settings.registerSettingExtension({
745761
category: Common.Settings.SettingCategory.RENDERING,
762+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
746763
settingName: 'emulated-css-media-feature-forced-colors',
747764
settingType: Common.Settings.SettingType.ENUM,
748765
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -772,6 +789,7 @@ Common.Settings.registerSettingExtension({
772789

773790
Common.Settings.registerSettingExtension({
774791
category: Common.Settings.SettingCategory.RENDERING,
792+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
775793
settingName: 'emulated-css-media-feature-prefers-reduced-motion',
776794
settingType: Common.Settings.SettingType.ENUM,
777795
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -899,6 +917,7 @@ Common.Settings.registerSettingExtension({
899917

900918
Common.Settings.registerSettingExtension({
901919
category: Common.Settings.SettingCategory.RENDERING,
920+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
902921
settingName: 'emulated-vision-deficiency',
903922
settingType: Common.Settings.SettingType.ENUM,
904923
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -948,6 +967,7 @@ Common.Settings.registerSettingExtension({
948967

949968
Common.Settings.registerSettingExtension({
950969
category: Common.Settings.SettingCategory.RENDERING,
970+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
951971
settingName: 'local-fonts-disabled',
952972
settingType: Common.Settings.SettingType.BOOLEAN,
953973
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -966,6 +986,7 @@ Common.Settings.registerSettingExtension({
966986

967987
Common.Settings.registerSettingExtension({
968988
category: Common.Settings.SettingCategory.RENDERING,
989+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
969990
settingName: 'avif-format-disabled',
970991
settingType: Common.Settings.SettingType.BOOLEAN,
971992
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -984,6 +1005,7 @@ Common.Settings.registerSettingExtension({
9841005

9851006
Common.Settings.registerSettingExtension({
9861007
category: Common.Settings.SettingCategory.RENDERING,
1008+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
9871009
settingName: 'webp-format-disabled',
9881010
settingType: Common.Settings.SettingType.BOOLEAN,
9891011
storageType: Common.Settings.SettingStorageType.SESSION,
@@ -1029,6 +1051,7 @@ Common.Settings.registerSettingExtension({
10291051

10301052
Common.Settings.registerSettingExtension({
10311053
category: Common.Settings.SettingCategory.NETWORK,
1054+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
10321055
title: i18nLazyString(UIStrings.disableCache),
10331056
settingName: 'cache-disabled',
10341057
settingType: Common.Settings.SettingType.BOOLEAN,
@@ -1052,6 +1075,7 @@ Common.Settings.registerSettingExtension({
10521075

10531076
Common.Settings.registerSettingExtension({
10541077
category: Common.Settings.SettingCategory.RENDERING,
1078+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
10551079
title: i18nLazyString(UIStrings.emulateAutoDarkMode),
10561080
settingName: 'emulate-auto-dark-mode',
10571081
settingType: Common.Settings.SettingType.BOOLEAN,

front_end/entrypoints/inspector_main/inspector_main-meta.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44

55
import * as Common from '../../core/common/common.js';
66
import * as i18n from '../../core/i18n/i18n.js';
7+
import * as Root from '../../core/root/root.js';
78
import * as UI from '../../ui/legacy/legacy.js';
89

910
import type * as InspectorMain from './inspector_main.js';
@@ -123,6 +124,7 @@ UI.ViewManager.registerViewExtension({
123124
title: i18nLazyString(UIStrings.rendering),
124125
commandPrompt: i18nLazyString(UIStrings.showRendering),
125126
persistence: UI.ViewManager.ViewPersistence.CLOSEABLE,
127+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
126128
order: 50,
127129
async loadView() {
128130
const InspectorMain = await loadInspectorMainModule();
@@ -199,6 +201,7 @@ UI.ActionRegistration.registerActionExtension({
199201
UI.ActionRegistration.registerActionExtension({
200202
actionId: 'rendering.toggle-prefers-color-scheme',
201203
category: UI.ActionRegistration.ActionCategory.RENDERING,
204+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
202205
title: i18nLazyString(UIStrings.toggleCssPrefersColorSchemeMedia),
203206
async loadActionDelegate() {
204207
const InspectorMain = await loadInspectorMainModule();

front_end/entrypoints/main/BUILD.gn

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ devtools_entrypoint("meta") {
7070
":bundle",
7171
"../../core/common:bundle",
7272
"../../core/i18n:bundle",
73+
"../../core/root:bundle",
7374
"../../core/sdk:bundle",
7475
"../../entrypoints/inspector_main:bundle",
7576
"../../models/workspace:bundle",

front_end/entrypoints/main/main-meta.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import * as Common from '../../core/common/common.js';
66
import * as Host from '../../core/host/host.js';
77
import * as i18n from '../../core/i18n/i18n.js';
88
import type * as Platform from '../../core/platform/platform.js';
9+
import * as Root from '../../core/root/root.js';
910
import * as SDK from '../../core/sdk/sdk.js';
1011
import * as Workspace from '../../models/workspace/workspace.js';
1112
import * as Components from '../../ui/legacy/components/utils/utils.js';
@@ -329,6 +330,7 @@ UI.ActionRegistration.registerActionExtension({
329330

330331
UI.ActionRegistration.registerActionExtension({
331332
category: UI.ActionRegistration.ActionCategory.GLOBAL,
333+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
332334
title: i18nLazyString(UIStrings.restoreLastDockPosition),
333335
actionId: 'main.toggle-dock',
334336
async loadActionDelegate() {
@@ -711,6 +713,7 @@ Common.Settings.registerSettingExtension({
711713

712714
Common.Settings.registerSettingExtension({
713715
category: Common.Settings.SettingCategory.GLOBAL,
716+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
714717
settingName: 'currentDockState',
715718
settingType: Common.Settings.SettingType.ENUM,
716719
defaultValue: 'right',

front_end/panels/coverage/BUILD.gn

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ devtools_entrypoint("meta") {
6262
deps = [
6363
":bundle",
6464
"../../core/i18n:bundle",
65+
"../../core/root:bundle",
6566
"../../ui/legacy:bundle",
6667
]
6768

front_end/panels/coverage/coverage-meta.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
// found in the LICENSE file.
44

55
import * as i18n from '../../core/i18n/i18n.js';
6+
import * as Root from '../../core/root/root.js';
67
import * as UI from '../../ui/legacy/legacy.js';
78

89
import type * as Coverage from './coverage.js';
@@ -100,6 +101,7 @@ UI.ActionRegistration.registerActionExtension({
100101
return new Coverage.CoverageView.ActionDelegate();
101102
},
102103
category: UI.ActionRegistration.ActionCategory.PERFORMANCE,
104+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
103105
title: i18nLazyString(UIStrings.startInstrumentingCoverageAnd),
104106
});
105107

front_end/panels/emulation/emulation-meta.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,7 @@ async function loadEmulationModule(): Promise<typeof Emulation> {
7575

7676
UI.ActionRegistration.registerActionExtension({
7777
category: UI.ActionRegistration.ActionCategory.MOBILE,
78+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
7879
actionId: 'emulation.toggle-device-mode',
7980
toggleable: true,
8081
async loadActionDelegate() {
@@ -110,6 +111,7 @@ UI.ActionRegistration.registerActionExtension({
110111
UI.ActionRegistration.registerActionExtension({
111112
actionId: 'emulation.capture-full-height-screenshot',
112113
category: UI.ActionRegistration.ActionCategory.SCREENSHOT,
114+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
113115
async loadActionDelegate() {
114116
const Emulation = await loadEmulationModule();
115117
return new Emulation.DeviceModeWrapper.ActionDelegate();
@@ -121,6 +123,7 @@ UI.ActionRegistration.registerActionExtension({
121123
UI.ActionRegistration.registerActionExtension({
122124
actionId: 'emulation.capture-node-screenshot',
123125
category: UI.ActionRegistration.ActionCategory.SCREENSHOT,
126+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
124127
async loadActionDelegate() {
125128
const Emulation = await loadEmulationModule();
126129
return new Emulation.DeviceModeWrapper.ActionDelegate();
@@ -131,6 +134,7 @@ UI.ActionRegistration.registerActionExtension({
131134

132135
Common.Settings.registerSettingExtension({
133136
category: Common.Settings.SettingCategory.MOBILE,
137+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
134138
settingName: 'show-media-query-inspector',
135139
settingType: Common.Settings.SettingType.BOOLEAN,
136140
defaultValue: false,
@@ -149,6 +153,7 @@ Common.Settings.registerSettingExtension({
149153

150154
Common.Settings.registerSettingExtension({
151155
category: Common.Settings.SettingCategory.MOBILE,
156+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
152157
settingName: 'emulation.show-rulers',
153158
settingType: Common.Settings.SettingType.BOOLEAN,
154159
defaultValue: false,
@@ -167,6 +172,7 @@ Common.Settings.registerSettingExtension({
167172

168173
Common.Settings.registerSettingExtension({
169174
category: Common.Settings.SettingCategory.MOBILE,
175+
experiment: Root.Runtime.ExperimentName.NOT_REACT_NATIVE_SPECIFIC_UI,
170176
settingName: 'emulation.show-device-outline',
171177
settingType: Common.Settings.SettingType.BOOLEAN,
172178
defaultValue: false,

front_end/panels/mobile_throttling/BUILD.gn

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ devtools_entrypoint("meta") {
6464
":bundle",
6565
"../../core/common:bundle",
6666
"../../core/i18n:bundle",
67+
"../../core/root:bundle",
6768
"../../ui/legacy:bundle",
6869
]
6970

0 commit comments

Comments
 (0)