getRootWidget method

Future<RPCResponse> getRootWidget()

Implementation

Future<RPCResponse> getRootWidget() async {
  try {
    final callMethodName =
        '$flutterInspectorName.'
        '${WidgetInspectorServiceExtensions.getRootWidgetTree.name}';
    final rootWidgetTree = await serviceManager
        .callServiceExtensionOnMainIsolate(
          callMethodName,
          args: {
            'groupName': 'root',
            'isSummaryTree': 'true',
            'withPreviews': 'false',
            'fullDetails': 'false',
          },
        );
    print('Root widget tree: $rootWidgetTree');
    if (rootWidgetTree.json == null) {
      return RPCResponse.error(
        'Root widget tree not available, '
        'rootWidgetTree: ${rootWidgetTree.toJson()}',
      );
    }
    return RPCResponse.successMap(rootWidgetTree.json!);
  } catch (e, stackTrace) {
    print('Error getting root widget tree: $e');
    print('Stack trace: $stackTrace');
    return RPCResponse.error(
      'Error getting root widget tree: $e',
      stackTrace,
    );
  }
}