epiphany r8645 - in branches/gnome-2-24: embed/mozilla m4



Author: chpe
Date: Sat Dec 27 12:06:02 2008
New Revision: 8645
URL: http://svn.gnome.org/viewvc/epiphany?rev=8645&view=rev

Log:
More gecko 1.9.1 fixes.

Modified:
   branches/gnome-2-24/embed/mozilla/EventContext.cpp
   branches/gnome-2-24/m4/gecko.m4

Modified: branches/gnome-2-24/embed/mozilla/EventContext.cpp
==============================================================================
--- branches/gnome-2-24/embed/mozilla/EventContext.cpp	(original)
+++ branches/gnome-2-24/embed/mozilla/EventContext.cpp	Sat Dec 27 12:06:02 2008
@@ -67,11 +67,14 @@
 
 #ifdef ALLOW_PRIVATE_API
 #include <nsIDOMNSEvent.h>
-#include <nsIDOMNSHTMLElement.h>
 #include <nsIDOMViewCSS.h>
 #include <nsIDOMViewCSS.h>
 #include <nsIDOMXULDocument.h>
 #include <nsITextToSubURI.h>
+#include <nsIDOMNSHTMLElement.h>
+#ifdef HAVE_GECKO_1_9_1
+#include <nsIDOMNSElement.h>
+#endif
 #endif
 
 #include "ephy-debug.h"
@@ -666,20 +669,34 @@
 nsresult EventContext::GetTargetCoords (nsIDOMEventTarget *aTarget, PRInt32 *aX, PRInt32 *aY)
 {
 	/* Calculate the node coordinates relative to the widget origin */
-	nsCOMPtr<nsIDOMNSHTMLElement> elem (do_QueryInterface(aTarget));
+
+	nsCOMPtr<nsIDOMNSHTMLElement> htmlElem (do_QueryInterface(aTarget));
+#ifdef HAVE_GECKO_1_9_1
+	nsCOMPtr<nsIDOMNSElement> elem (do_QueryInterface(htmlElem));
+#endif
 
 	PRInt32 x = 0, y = 0;
-	while (elem)
+	while (htmlElem)
 	{
 		PRInt32 val;
+#ifdef HAVE_GECKO_1_9_1
 		elem->GetOffsetTop(&val);	y += val;
 		elem->GetScrollTop(&val);	y -= val;
 		elem->GetOffsetLeft(&val);	x += val;
 		elem->GetScrollLeft(&val);	x -= val;
+#else
+		htmlElem->GetOffsetTop(&val);	y += val;
+		htmlElem->GetScrollTop(&val);	y -= val;
+		htmlElem->GetOffsetLeft(&val);	x += val;
+		htmlElem->GetScrollLeft(&val);	x -= val;
+#endif
 
 		nsCOMPtr<nsIDOMElement> parent;
-		elem->GetOffsetParent (getter_AddRefs (parent));
-		elem = do_QueryInterface(parent);
+		htmlElem->GetOffsetParent (getter_AddRefs (parent));
+		htmlElem = do_QueryInterface(parent);
+#ifdef HAVE_GECKO_1_9_1
+                elem = do_QueryInterface (parent);
+#endif
 	}
 
 	*aX = x;

Modified: branches/gnome-2-24/m4/gecko.m4
==============================================================================
--- branches/gnome-2-24/m4/gecko.m4	(original)
+++ branches/gnome-2-24/m4/gecko.m4	Sat Dec 27 12:06:02 2008
@@ -346,6 +346,16 @@
 	gecko_cv_have_gecko_1_9=yes
 fi
 
+if test "${gecko_cv_gecko}" = "libxul-embedding" -o "${gecko_cv_gecko}" = "libxul"; then
+	PKG_CHECK_EXISTS([${gecko_cv_gecko} >= 1.9.1],[gecko_cv_have_gecko_1_9_1=yes],[gecko_cv_have_gecko_1_9_1=no])
+else
+	gecko_cv_have_gecko_1_9_1=no
+fi
+
+if test "gecko_cv_have_gecko_1_9_1" = "yes"; then
+        AC_DEFINE([HAVE_GECKO_1_9_1],[1],[Define if we have gecko 1.9.1])
+fi
+
 fi # if gecko_cv_have_gecko
 
 $1[]_VERSION=$gecko_cv_gecko_version
@@ -393,6 +403,7 @@
 AM_CONDITIONAL([HAVE_GECKO_1_8],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_gecko_version_int" -ge "1008000"])
 AM_CONDITIONAL([HAVE_GECKO_1_8_1],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_gecko_version_int" -ge "1008001"])
 AM_CONDITIONAL([HAVE_GECKO_1_9],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_gecko_version_int" -ge "1009000"])
+AM_CONDITIONAL([HAVE_GECKO_1_9_1],[test "$gecko_cv_have_gecko" = "yes" -a "$gecko_cv_have_gecko_1_9_1" = "yes"])
 AM_CONDITIONAL([HAVE_GECKO_HOME],[test "x$_GECKO_HOME" != "x"])
 AM_CONDITIONAL([HAVE_GECKO_DEBUG],[test "$gecko_cv_have_debug" = "yes"])
 AM_CONDITIONAL([HAVE_GECKO_XPCOM_GLUE],[test "$gecko_cv_have_xpcom_glue" = "yes"])



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]