default:
jWebBrowser = new JWebBrowser();
break;
}
Object[] listeners = nativeWebBrowser.listenerList.getListenerList();
WebBrowserWindowWillOpenEvent e = null;
for(int i=listeners.length-2; i>=0 && jWebBrowser != null; i-=2) {
if(listeners[i] == WebBrowserListener.class) {
if(e == null) {
e = new WebBrowserWindowWillOpenEvent(webBrowser, jWebBrowser);
}
((WebBrowserListener)listeners[i + 1]).windowWillOpen(e);
jWebBrowser = e.isConsumed()? null: e.getNewWebBrowser();
}
}
if(jWebBrowser == null) {
return null;
}
if(!jWebBrowser.isNativePeerInitialized()) {
Window windowAncestor = SwingUtilities.getWindowAncestor(jWebBrowser);
if(windowAncestor == null) {
Window parentWindow = e.isDialogWindow()? SwingUtilities.getWindowAncestor(webBrowser): null;
windowAncestor = (Window)WebBrowserWindowFactory.create(parentWindow, jWebBrowser);
}
jWebBrowser.getNativeComponent().initializeNativePeer();
}
return ((NativeWebBrowser)jWebBrowser.getNativeComponent()).getComponentID();