onSetInspectedNode method

void onSetInspectedNode(
  1. int? id,
  2. Map<String, dynamic> params
)

Implementation

void onSetInspectedNode(int? id, Map<String, dynamic> params) {
  if (DebugFlags.enableDevToolsLogs) {
    devToolsLogger.finer('[DevTools] DOM.setInspectedNode nodeId=${params['nodeId']}');
  }
  int? nodeId = params['nodeId'];
  final ctx = dbgContext;
  if (nodeId == null || ctx == null) {
    sendToFrontend(id, null);
    return;
  }
  final targetId = ctx.getTargetIdByNodeId(nodeId);
  Node? node;
  if (targetId != null) {
    node = ctx.getBindingObject(Pointer.fromAddress(targetId)) as Node?;
  }
  if (node != null) {
    inspectedNode = node;
    // Signal CSS module that computed style for this node may need refresh
    final cssModule = devtoolsService.uiInspector?.moduleRegistrar['CSS'];
    if (cssModule is InspectCSSModule) {
      cssModule.markComputedStyleDirtyByNodeId(nodeId);
    }
  }
  sendToFrontend(id, null);
}