final
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(
true
);
webSettings.setJavaScriptCanOpenWindowsAutomatically(
true
);
webSettings.setSupportMultipleWindows(
true
);
mWebView.setWebViewClient(
new
WebViewClient() {
@Override
public
boolean
shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return
true
;
}
});
mWebView.setWebChromeClient(
new
WebChromeClient() {
@Override
public
boolean
onCreateWindow(WebView view,
boolean
isDialog,
boolean
isUserGesture, Message resultMsg) {
WebView newWebView =
new
WebView(MainActivity.
this
);
WebSettings webSettings = newWebView.getSettings();
webSettings.setJavaScriptEnabled(
true
);
final
Dialog dialog =
new
Dialog(MainActivity.
this
);
dialog.setContentView(newWebView);
dialog.show();
newWebView.setWebChromeClient(
new
WebChromeClient() {
@Override
public
void
onCloseWindow(WebView window) {
dialog.dismiss();
}
});
((WebView.WebViewTransport)resultMsg.obj).setWebView(newWebView);
resultMsg.sendToTarget();
return
true
;
}