load static method

dynamic load(
  1. String? url,
  2. String? body, {
  3. WebViewController? tourWebViewController,
})

Implementation

static load(String? url, String? body,
    {WebViewController? tourWebViewController}) {
  if (url != null) {
    WebviewUtil.loadUrl(url);
  }
  if (body.toString().startsWith(bodyStartsWithHtmlString)) {
    WebviewUtil.loadHtml(body, tourWebViewController: tourWebViewController);
    // adjustWebviewZoom(scale: scale ?? 2);
    WebViewController? c;
    if (tourWebViewController != null) {
      c = tourWebViewController;
    } else {
      c = controller;
    }
    c!.addJavaScriptChannel(
      'FlutterChannel',
      onMessageReceived: (JavaScriptMessage message) {
        final data = jsonDecode(message.message);
        switch (data['action']) {
          case 'onNextStepClicked':
            print("NEXTTTT");
            TourUtil.next();
            break;
          case 'onPrevStepClicked':
            TourUtil.previous();
            break;
          case 'openLink':
            final url = data['url'] as String;
            Util.launchInBrowser(url);
            break;
          case 'onCloseStepClicked':
            TourUtil.finish();
            break;
        }
      },
    );
  }
}