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);