diff --git a/packages/react-devtools-shared/src/backend/agent.js b/packages/react-devtools-shared/src/backend/agent.js index a7c237be721..a1731badbd3 100644 --- a/packages/react-devtools-shared/src/backend/agent.js +++ b/packages/react-devtools-shared/src/backend/agent.js @@ -20,6 +20,9 @@ import { } from './views/TraceUpdates'; import {currentBridgeProtocol} from 'react-devtools-shared/src/bridge'; +import type { + TouchedViewDataAtPoint, +} from './ReactNativeTypes'; import type {BackendBridge} from 'react-devtools-shared/src/bridge'; import type { InstanceAndStyle, @@ -953,6 +956,12 @@ export default class Agent extends EventEmitter<{ ); } + selectNodeWithViewData(viewData?: TouchedViewDataAtPoint): void { + if (viewData) { + this._bridge.send('selectElementWithViewData', viewData); + } + } + registerRendererInterface( rendererID: RendererID, rendererInterface: RendererInterface, diff --git a/packages/react-devtools-shared/src/bridge.js b/packages/react-devtools-shared/src/bridge.js index af3a87b5968..a4037a824c8 100644 --- a/packages/react-devtools-shared/src/bridge.js +++ b/packages/react-devtools-shared/src/bridge.js @@ -9,6 +9,9 @@ import EventEmitter from './events'; +import type { + TouchedViewDataAtPoint, +} from './ReactNativeTypes'; import type {ComponentFilter, Wall} from './frontend/types'; import type { InspectedElementPayload, @@ -215,6 +218,7 @@ export type BackendEvents = { reloadAppForProfiling: [], saveToClipboard: [string], selectElement: [number | null], + selectElementWithViewData: [TouchedViewDataAtPoint | null], shutdown: [], stopInspectingHost: [boolean], scrollTo: [{left: number, top: number, right: number, bottom: number}],