@Override
 public void onHideCustomView() {
   TraceEvent.begin();
   if (mWebChromeClient != null) {
     if (TRACE) Log.d(TAG, "onHideCustomView");
     mWebChromeClient.onHideCustomView();
   }
   TraceEvent.end();
 }
    @Override
    public void onHideCustomView() {
      super.onHideCustomView(); // To change body of overridden methods
      // use File | Settings | File Templates.
      if (mCustomView == null) return;
      mWebContent.setVisibility(View.VISIBLE);
      customViewContainer.setVisibility(View.GONE);

      // Hide the custom view.
      mCustomView.setVisibility(View.GONE);

      // Remove the custom view from its container.
      customViewContainer.removeView(mCustomView);
      customViewCallback.onCustomViewHidden();

      mCustomView = null;
    }
  @Override
  public void onHideCustomView() {
    super.onHideCustomView();
    if (mCustomView == null) return;

    webView.loadUrl("javascript:(function() { window.scrollTo(0, 0); })();");
    webView.loadUrl("javascript:(function() { document.body.style.overflowX = 'scroll'; })();");
    drawerLayout.setVisibility(View.VISIBLE);
    customViewContainer.setVisibility(View.GONE);

    mCustomView.setVisibility(View.GONE);
    customViewContainer.removeView(mCustomView);
    mCustomView = null;

    // Show the status bar.
    decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE);
  }
 @Override
 public void goBack() {
   if (mCustomView != null) mWebChromeClient.onHideCustomView();
   else if (getDisplayController().isExpanded()) getDisplayController().close();
   else super.goBack();
 }
 @Override
 public void onHideCustomView() {
   if (originalWebChromeClient != null) {
     originalWebChromeClient.onHideCustomView();
   }
 }
 @Override
 public void onHideCustomView() {
   super.onHideCustomView();
 }