The following commit has been merged in the master branch:
commit 5d51afd2debe48ada3b3dc8c4a6aa45a9d214b12
Author: أحمد المحمودي (Ahmed El-Mahmoudy) <aelmahmo...@sabily.org>
Date:   Mon Feb 27 18:39:54 2012 +0200

    Imported Upstream version 3.7.2

diff --git a/make_common.mak b/make_common.mak
index c1721a4..e381522 100644
--- a/make_common.mak
+++ b/make_common.mak
@@ -10,5 +10,5 @@
 
#*******************************************************************************
 
 maj_ver=3
-min_ver=738
-comma_ver=3,7,3,8
+min_ver=740
+comma_ver=3,7,4,0
diff --git a/org/eclipse/swt/browser/MozillaDelegate.java 
b/org/eclipse/swt/browser/MozillaDelegate.java
index d5de1b3..230aacb 100644
--- a/org/eclipse/swt/browser/MozillaDelegate.java
+++ b/org/eclipse/swt/browser/MozillaDelegate.java
@@ -19,6 +19,7 @@ import org.eclipse.swt.widgets.*;
 
 class MozillaDelegate {
        Browser browser;
+       Shell eventShell;
        int /*long*/ mozillaHandle, embedHandle;
        boolean hasFocus;
        Listener listener;
@@ -138,15 +139,21 @@ void handleFocus () {
        listener = new Listener () {
                public void handleEvent (Event event) {
                        if (event.widget == browser) return;
-                       ((Mozilla)browser.webBrowser).Deactivate ();
-                       hasFocus = false;
-                       browser.getDisplay ().removeFilter (SWT.FocusIn, this);
-                       browser.getShell ().removeListener (SWT.Deactivate, 
this);
+                       if (event.type != SWT.Dispose) {
+                               ((Mozilla)browser.webBrowser).Deactivate ();
+                               hasFocus = false;
+                       }
+                       eventShell.getDisplay ().removeFilter (SWT.FocusIn, 
this);
+                       eventShell.removeListener (SWT.Deactivate, this);
+                       eventShell.removeListener (SWT.Dispose, this);
+                       eventShell = null;
                        listener = null;
                }
        };
-       browser.getDisplay ().addFilter (SWT.FocusIn, listener);
-       browser.getShell ().addListener (SWT.Deactivate, listener);
+       eventShell = browser.getShell ();
+       eventShell.getDisplay ().addFilter (SWT.FocusIn, listener);
+       eventShell.addListener (SWT.Deactivate, listener);
+       eventShell.addListener (SWT.Dispose, listener);
 }
 
 void handleMouseDown () {
@@ -211,8 +218,10 @@ boolean needsSpinup () {
 
 void onDispose (int /*long*/ embedHandle) {
        if (listener != null) {
-               browser.getDisplay ().removeFilter (SWT.FocusIn, listener);
-               browser.getShell ().removeListener (SWT.Deactivate, listener);
+               eventShell.getDisplay ().removeFilter (SWT.FocusIn, listener);
+               eventShell.removeListener (SWT.Deactivate, listener);
+               eventShell.removeListener (SWT.Dispose, listener);
+               eventShell = null;
                listener = null;
        }
        browser = null;
diff --git a/org/eclipse/swt/browser/WebKit.java 
b/org/eclipse/swt/browser/WebKit.java
index 727a9ed..2c464bf 100644
--- a/org/eclipse/swt/browser/WebKit.java
+++ b/org/eclipse/swt/browser/WebKit.java
@@ -140,9 +140,10 @@ class WebKit extends WebBrowser {
                                                        /* indicates a session 
cookie */
                                                        
WebKitGTK.soup_cookie_jar_delete_cookie (jar, cookie);
                                                }
-                                               OS.g_free (cookie);
+                                               // WebKitGTK.soup_cookie_free 
(cookie);
                                                current = OS.g_slist_next 
(current);
                                        }
+                                       OS.g_slist_free (cookies);
                                }
                        };
 
@@ -1823,7 +1824,7 @@ Object convertToJava (int /*long*/ ctx, int /*long*/ 
value) {
        int type = WebKitGTK.JSValueGetType (ctx, value);
        switch (type) {
                case WebKitGTK.kJSTypeBoolean: {
-                       int result = WebKitGTK.JSValueToBoolean (ctx, value);
+                       int result = (int)WebKitGTK.JSValueToNumber (ctx, 
value, null);
                        return new Boolean (result != 0);
                }
                case WebKitGTK.kJSTypeNumber: {
diff --git a/org/eclipse/swt/custom/CTabFolder.java 
b/org/eclipse/swt/custom/CTabFolder.java
index f9f31b7..36875e2 100644
--- a/org/eclipse/swt/custom/CTabFolder.java
+++ b/org/eclipse/swt/custom/CTabFolder.java
@@ -1064,6 +1064,7 @@ void initAccessible() {
                                        childID = items.length + 
MAXIMIZE_CHILD_ID;
                                } else {
                                        Rectangle location = getBounds();
+                                       location.x = location.y = 0;
                                        location.height = location.height - 
getClientArea().height;
                                        if (location.contains(testPoint)) {
                                                childID = ACC.CHILDID_SELF;
diff --git a/org/eclipse/swt/graphics/GC.java b/org/eclipse/swt/graphics/GC.java
index cd51b3b..08e999a 100644
--- a/org/eclipse/swt/graphics/GC.java
+++ b/org/eclipse/swt/graphics/GC.java
@@ -2792,6 +2792,9 @@ double[] identity() {
        } else {
                Cairo.cairo_matrix_init_identity(identity);
        }
+       if (data.identity != null) {
+               Cairo.cairo_matrix_multiply(identity, data.identity, identity);
+       }
        return identity;
 }
 
diff --git a/org/eclipse/swt/graphics/GCData.java 
b/org/eclipse/swt/graphics/GCData.java
index d507acb..b42a96d 100644
--- a/org/eclipse/swt/graphics/GCData.java
+++ b/org/eclipse/swt/graphics/GCData.java
@@ -54,7 +54,7 @@ public final class GCData {
        public int /*long*/ cairo;
        public double cairoXoffset, cairoYoffset;
        public boolean disposeCairo;
-       public double[] clippingTransform;
+       public double[] identity, clippingTransform;
        public String string;
        public int stringWidth = -1;
        public int stringHeight = -1;
diff --git a/org/eclipse/swt/internal/Library.java 
b/org/eclipse/swt/internal/Library.java
index f9882d6..4be84aa 100644
--- a/org/eclipse/swt/internal/Library.java
+++ b/org/eclipse/swt/internal/Library.java
@@ -24,7 +24,7 @@ public class Library {
        /**
         * SWT Minor version number (must be in the range 0..999)
         */
-    static int MINOR_VERSION = 738;
+    static int MINOR_VERSION = 740;
        
        /**
         * SWT revision number (must be >= 0)
diff --git a/org/eclipse/swt/internal/webkit/WebKitGTK.java 
b/org/eclipse/swt/internal/webkit/WebKitGTK.java
index 01bbe98..792bccb 100644
--- a/org/eclipse/swt/internal/webkit/WebKitGTK.java
+++ b/org/eclipse/swt/internal/webkit/WebKitGTK.java
@@ -483,6 +483,19 @@ public static final int /*long*/ soup_auth_get_scheme_name 
(int /*long*/ auth) {
        }
 }
 
+///**
+// * @param cookie cast=(SoupCookie *)
+// */
+//public static final native void _soup_cookie_free (int /*long*/ cookie);
+//public static final void soup_cookie_free (int /*long*/ cookie) {
+//     lock.lock();
+//     try {
+//             _soup_cookie_free (cookie);
+//     } finally {
+//             lock.unlock();
+//     }
+//}
+
 /**
  * @param jar cast=(SoupCookieJar *)
  * @param cookie cast=(SoupCookie *)
diff --git a/org/eclipse/swt/printing/Printer.java 
b/org/eclipse/swt/printing/Printer.java
index 0b79f2d..b43afa6 100644
--- a/org/eclipse/swt/printing/Printer.java
+++ b/org/eclipse/swt/printing/Printer.java
@@ -457,6 +457,9 @@ public int /*long*/ internal_new_GC(GCData data) {
                double printY = OS.gtk_page_setup_get_top_margin(pageSetup, 
OS.GTK_UNIT_POINTS);
                Cairo.cairo_translate(cairo, printX, printY);
                Cairo.cairo_scale(cairo, screenDPI.x / (float)dpi.x, 
screenDPI.y / (float)dpi.y);
+               double[] matrix = new double[6];
+               Cairo.cairo_get_matrix(cairo, matrix);
+               data.identity = matrix;
                data.cairo = cairo;
                isGCCreated = true;
        }
diff --git a/org/eclipse/swt/widgets/MenuItem.java 
b/org/eclipse/swt/widgets/MenuItem.java
index d0a81f5..116cba6 100644
--- a/org/eclipse/swt/widgets/MenuItem.java
+++ b/org/eclipse/swt/widgets/MenuItem.java
@@ -313,6 +313,7 @@ int /*long*/ getAccelGroup () {
        }
        if (menu == null) return 0;
        Decorations shell = menu.parent;
+       if (shell == null) return 0;
        return shell.menuBar == menu ? shell.accelGroup : 0;
 }
 
diff --git a/os_custom.h b/os_custom.h
index 68ba6cb..5feec34 100644
--- a/os_custom.h
+++ b/os_custom.h
@@ -30,7 +30,7 @@
 #define LIB_GTK "libgtk-x11-2.0.a(libgtk-x11-2.0.so.0)"
 #define LIB_GDK "libgdk-x11-2.0.a(libgdk-x11-2.0.so.0)"
 #define LIB_ATK "libatk-1.0.a(libatk-1.0.so.0)"
-#define LIB_PANGO "libpango-1.0.a(libpango-1.0.so.0"
+#define LIB_PANGO "libpango-1.0.a(libpango-1.0.so.0)"
 #define LIB_PANGOCAIRO "libpangocairo-1.0.a(libpangocairo-1.0.so.0)"
 #define LIB_GIO "libgio-2.0.a(libgio-2.0.so.0)"
 #define LIB_FONTCONFIG "libfontconfig.a(libfontconfig.so.1)"
diff --git a/version.txt b/version.txt
index 6c8d319..1520a85 100644
--- a/version.txt
+++ b/version.txt
@@ -1 +1 @@
-version 3.738
\ No newline at end of file
+version 3.740
\ No newline at end of file
diff --git a/webkitgtk.c b/webkitgtk.c
index 3ce68d9..daa6b59 100644
--- a/webkitgtk.c
+++ b/webkitgtk.c
@@ -1,5 +1,5 @@
 
/*******************************************************************************
- * Copyright (c) 2009, 2010 IBM Corporation and others. All rights reserved.
+ * Copyright (c) 2009, 2011 IBM Corporation and others. All rights reserved.
  * The contents of this file are made available under the terms
  * of the GNU Lesser General Public License (LGPL) Version 2.1 that
  * accompanies this distribution (lgpl-v21.txt).  The LGPL is also
diff --git a/webkitgtk_stats.c b/webkitgtk_stats.c
index 31b101d..fb90489 100644
--- a/webkitgtk_stats.c
+++ b/webkitgtk_stats.c
@@ -1,5 +1,5 @@
 
/*******************************************************************************
- * Copyright (c) 2009, 2010 IBM Corporation and others. All rights reserved.
+ * Copyright (c) 2009, 2011 IBM Corporation and others. All rights reserved.
  * The contents of this file are made available under the terms
  * of the GNU Lesser General Public License (LGPL) Version 2.1 that
  * accompanies this distribution (lgpl-v21.txt).  The LGPL is also
diff --git a/webkitgtk_stats.h b/webkitgtk_stats.h
index 69398a9..8839532 100644
--- a/webkitgtk_stats.h
+++ b/webkitgtk_stats.h
@@ -1,5 +1,5 @@
 
/*******************************************************************************
- * Copyright (c) 2009, 2010 IBM Corporation and others. All rights reserved.
+ * Copyright (c) 2009, 2011 IBM Corporation and others. All rights reserved.
  * The contents of this file are made available under the terms
  * of the GNU Lesser General Public License (LGPL) Version 2.1 that
  * accompanies this distribution (lgpl-v21.txt).  The LGPL is also

-- 
Debian packaging for swt-gtk.

_______________________________________________
pkg-java-commits mailing list
pkg-java-comm...@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-java-commits

Reply via email to