Mercurial > projects > dwt-linux
diff dwt/browser/Mozilla.d @ 340:3f4a5c7d138f
Fixes
author | John Reimer <terminal.node@gmail.com> |
---|---|
date | Sun, 26 Oct 2008 08:09:00 -0700 |
parents | c317081df76f |
children | 942da4b6558a |
line wrap: on
line diff
--- a/dwt/browser/Mozilla.d Sat Oct 25 21:01:54 2008 -0700 +++ b/dwt/browser/Mozilla.d Sun Oct 26 08:09:00 2008 -0700 @@ -23,6 +23,7 @@ //import java.util.Vector; import tango.text.locale.Core; // Necessary for Region/Culture/Locale code +import dwt.internal.c.gtk; import dwt.DWT; import dwt.DWTError; @@ -30,12 +31,17 @@ import dwt.graphics.Point; import dwt.graphics.Rectangle; +import dwt.browser.MozillaDelegate; +import dwt.browser.AppFileLocProvider; +import dwt.browser.WindowCreator2; + import dwt.internal.Compatibility; import dwt.internal.LONG; import dwt.internal.Library; import dwt.internal.mozilla.XPCOM; import dwt.internal.mozilla.XPCOMInit; +import dwt.internal.mozilla.Common; import dwt.internal.mozilla.nsEmbedString; import dwt.internal.mozilla.nsIAppShell; @@ -48,6 +54,7 @@ import dwt.internal.mozilla.nsICookieManager; import dwt.internal.mozilla.nsID; import dwt.internal.mozilla.nsIDOMEvent; +import dwt.internal.mozilla.nsIDOMEventListener; import dwt.internal.mozilla.nsIDOMEventTarget; import dwt.internal.mozilla.nsIDOMKeyEvent; import dwt.internal.mozilla.nsIDOMMouseEvent; @@ -57,8 +64,8 @@ import dwt.internal.mozilla.nsIDOMWindowCollection; import dwt.internal.mozilla.nsIDirectoryService; import dwt.internal.mozilla.nsIDocShell; -import dwt.internal.mozilla.nsIDocShell_1_8; -import dwt.internal.mozilla.nsIDocShell_1_9; +//import dwt.internal.mozilla.nsIDocShell_1_8; +//import dwt.internal.mozilla.nsIDocShell_1_9; import dwt.internal.mozilla.nsIEmbeddingSiteWindow; import dwt.internal.mozilla.nsIFile; import dwt.internal.mozilla.nsIIOService; @@ -74,7 +81,7 @@ import dwt.internal.mozilla.nsIServiceManager; import dwt.internal.mozilla.nsISimpleEnumerator; import dwt.internal.mozilla.nsISupports; -import dwt.internal.mozilla.nsISupportsWeakReference; +//import dwt.internal.mozilla.nsISupportsWeakReference; import dwt.internal.mozilla.nsITooltipListener; import dwt.internal.mozilla.nsIURI; import dwt.internal.mozilla.nsIURIContentListener; @@ -96,6 +103,7 @@ import dwt.widgets.Listener; import dwt.widgets.Menu; import dwt.widgets.Shell; +import dwt.browser.WebBrowser; class Mozilla : WebBrowser, nsIWeakReference, @@ -106,9 +114,9 @@ nsIInterfaceRequestor, nsISupportsWeakReference, nsIContextMenuListener, - nsIUriContextListener, + nsIURIContentListener, nsITooltipListener, - nsIDomEventListener { + nsIDOMEventListener { GtkWidget* embedHandle; nsIWebBrowser webBrowser; @@ -183,7 +191,7 @@ static final String GRE_INITIALIZED = "dwt.browser.XULRunnerInitialized"; //$NON-NLS-1$ static this () { - MozillaClearSessions = new Runnable () { + MozillaClearSessions = new class() Runnable { public void run () { if (!Initialized) return; nsIServiceManager serviceManager; @@ -251,7 +259,7 @@ bool IsXULRunner = false; String greInitialized = System.getProperty (GRE_INITIALIZED); - if ("true" == greInitialized)) { //$NON-NLS-1$ + if ("true" == greInitialized) { //$NON-NLS-1$ /* * Another browser has already initialized xulrunner in this process, * so just bind to it instead of trying to initialize a new one. @@ -888,7 +896,7 @@ //byte[] contractID = MozillaDelegate.wcsToMbcs (null, XPCOM.NS_PREFLOCALIZEDSTRING_CONTRACTID, true); rc = componentManager.CreateInstanceByContractID (XPCOM.NS_PREFLOCALIZEDSTRING_CONTRACTID, null, &nsIPrefLocalizedString.IID, cast(void**)&localizedString); if (rc !is XPCOM.NS_OK) error (rc); - if (localizedString] is null) error (XPCOM.NS_NOINTERFACE); + if (localizedString is null) error (XPCOM.NS_NOINTERFACE); //localizedString = new nsIPrefLocalizedString (result[0]); //result[0] = 0; @@ -1030,7 +1038,7 @@ if (display.getData (DISPOSE_LISTENER_HOOKED) is null) { display.setData (DISPOSE_LISTENER_HOOKED, DISPOSE_LISTENER_HOOKED); - display.addListener (DWT.Dispose, new Listener () { + display.addListener (DWT.Dispose, new class() Listener { public void handleEvent (Event event) { if (BrowserCount > 0) return; /* another display is still active */ @@ -1159,7 +1167,7 @@ browser.dispose (); error (rc); } - if (baseWindow] is null) { + if (baseWindow is null) { browser.dispose (); error (XPCOM.NS_ERROR_NO_INTERFACE); } @@ -1313,9 +1321,9 @@ this.QueryInterface(&nsIUriContentListener.IID, cast(void**)&uriContentListener); if (rc !is XPCOM.NS_OK) { browser.dispose(); - error(rc) + error(rc); } - if (uriContentListener is null) + if (uriContentListener is null) { browser.dispose(); error(XPCOM.NS_ERROR_NO_INTERFACE); } @@ -1328,7 +1336,7 @@ mozDelegate.init (); - listener = new Listener () { + listener = new class () Listener { public void handleEvent (Event event) { switch (event.type) { case DWT.Dispose: { @@ -1348,7 +1356,7 @@ case DWT.Activate: Activate (); break; case DWT.Deactivate: { Display display = event.display; - if (Mozilla.this.browser is display.getFocusControl ()) Deactivate (); + if (this.browser is display.getFocusControl ()) Deactivate (); break; } case DWT.Show: { @@ -1359,7 +1367,7 @@ * its size after the container has been made visible. */ Display display = event.display; - display.asyncExec(new Runnable () { + display.asyncExec(new class () Runnable { public void run() { if (browser.isDisposed ()) return; onResize (); @@ -1369,8 +1377,8 @@ } } } - }; - int[] folderEvents = new int[] { + }; + int[] folderEvents = [ DWT.Dispose, DWT.Resize, DWT.FocusIn, @@ -1378,7 +1386,7 @@ DWT.Deactivate, DWT.Show, DWT.KeyDown // needed to make browser traversable - }; + ]; for (int i = 0; i < folderEvents.length; i++) { browser.addListener (folderEvents[i], listener); } @@ -2028,7 +2036,7 @@ target.RemoveEventListener (cast(nsAString*)string, domEventListener, 0); //string.dispose (); string = new nsEmbedString (XPCOM.DOMEVENT_KEYUP); - target.RemoveEventListener (cast(nsAString*)string, domEventListener., 0); + target.RemoveEventListener (cast(nsAString*)string, domEventListener, 0); //string.dispose (); } @@ -2087,7 +2095,7 @@ AddRef (); return XPCOM.NS_OK; } - if (*riid == nsITooltipListener.IID)) { + if (*riid == nsITooltipListener.IID) { *ppvObject = cast(void*)cast(nsITooltipListener)this; AddRef (); return XPCOM.NS_OK; @@ -2251,9 +2259,9 @@ //LONG ptrObject = new LONG (result[0]); //result[0] = 0; - int index = unhookedDOMWindows.arrayIndexOf (domWindow); + int index = unhookedDOMWindows.arrayIndexOf ( domWindow); if (index !is -1) { - nsIDOMWindow contentWindow + nsIDOMWindow contentWindow; rc = webBrowser.GetContentDOMWindow (&contentWindow); if (rc !is XPCOM.NS_OK) error (rc); if (contentWindow is null) error (XPCOM.NS_ERROR_NO_INTERFACE); @@ -2274,7 +2282,7 @@ * Remove and unreference the nsIDOMWindow from the collection of windows * that are waiting to have DOM listeners hooked on them. */ - unhookedDOMWindows = unhookedDOMWindows.arrayIndexRemove (domWindow); + unhookedDOMWindows = unhookedDOMWindows.arrayIndexRemove( domWindow); domWIndow.Release (); } domWindow.Release (); @@ -2645,7 +2653,7 @@ * with the Mozilla application TestGtkEmbed. The workaround is to * send the traversal notification after this callback returns. */ - browser.getDisplay ().asyncExec (new Runnable () { + browser.getDisplay ().asyncExec (new class() Runnable { public void run () { if (browser.isDisposed ()) return; browser.traverse (DWT.TRAVERSE_TAB_NEXT); @@ -2661,7 +2669,7 @@ * with the Mozilla application TestGtkEmbed. The workaround is to * send the traversal notification after this callback returns. */ - browser.getDisplay ().asyncExec (new Runnable () { + browser.getDisplay ().asyncExec (new class() Runnable { public void run () { if (browser.isDisposed ()) return; browser.traverse (DWT.TRAVERSE_TAB_PREVIOUS);