You are viewing a plain text version of this content. The canonical link for it is here.
Posted to adffaces-commits@incubator.apache.org by aw...@apache.org on 2007/04/29 02:48:09 UTC

svn commit: r533458 - in /incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs: Core.js Window.js

Author: awiner
Date: Sat Apr 28 19:48:08 2007
New Revision: 533458

URL: http://svn.apache.org/viewvc?view=rev&rev=533458
Log:
ADFFACES-474: Safari: dialog windows do not size correctly, and errors show in Javascript console
- The basic problem was that _getWindowForDocument() did not work on Safari,
  as neither document.defaultView or document.parentWindow will return a Window object
- Tweaked the JS to make that function unnecessary (and deleted it)

Modified:
    incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js
    incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Window.js

Modified: incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js
URL: http://svn.apache.org/viewvc/incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js?view=diff&rev=533458&r1=533457&r2=533458
==============================================================================
--- incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js (original)
+++ incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Core.js Sat Apr 28 19:48:08 2007
@@ -505,11 +505,11 @@
   var children = element.childNodes;
 
   // XXXSafari: what to do here?
-  var isGecko = _agent.isGecko;
+  var isIE = _agent.isIE;
 
-  var hasContentProp = (isGecko)
-                         ? "tagName"
-                         : "canHaveHTML"
+  var hasContentProp = (isIE)
+                         ? "canHaveHTML"
+                         : "tagName";
   var maxWidth = 0;
 
   for (var i = 0; i < children.length; i++)
@@ -521,7 +521,7 @@
       var currWidth = 0;
       var currOffsetWidth = currChild["offsetWidth"];
 
-      if (isGecko)
+      if (!isIE)
       {
         if ((currOffsetWidth == offsetWidth) ||
             (currOffsetWidth <= 1))
@@ -597,37 +597,13 @@
 }
 
 /**
- * Returns the window for the document
- */
-function _getWindowForDocument(document)
-{
-  if (_agent.isIE)
-  {
-    return document.parentWindow;
-  }
-  else
-  {
-    return document.defaultView;
-  }
-}
-
-/**
  * Safely retrieve the top accessible window
  */
-function _getTop(element)
+function _getTop(currWindow)
 {
-	
-var initialDocument = (element)
-                      ? element.ownerDocument
-                        ? element.ownerDocument
-                          // ownerDocument null if element is Document
-                        : element
-                      : document;
-  
   // since top might be in another domain, crawl up as high as possible manually
-  var currWindow = _getWindowForDocument(initialDocument);
   var currParentWindow = _getParentWindow(currWindow);
-  
+
   while (currParentWindow && (currParentWindow != currWindow))
   {
     currWindow = currParentWindow;
@@ -832,7 +808,7 @@
 
   _pprUnloaded = true;
 
-  var topWindow = _getTop();
+  var topWindow = _getTop(self);
 
   if (!topWindow)
     return;
@@ -1003,7 +979,7 @@
   // the actual contents of the LOV window which are nested
   // within a frame.  So, we check for the _abandoned property
   // on the "top" window.
-  var topWindow = _getTop();
+  var topWindow = _getTop(self);
   
   return topWindow._abandoned;
 }
@@ -4674,7 +4650,7 @@
   // If we're inside a frameset, and the top frame wants
   // reloads blocked, install a _noReload handler.
   // chain _monitor also if that is already set.
-  var topWindow = _getTop();
+  var topWindow = _getTop(self);
   
   if ((self != topWindow) && topWindow["_blockReload"])
   {

Modified: incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Window.js
URL: http://svn.apache.org/viewvc/incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Window.js?view=diff&rev=533458&r1=533457&r2=533458
==============================================================================
--- incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Window.js (original)
+++ incubator/adffaces/trunk/trinidad/trinidad-impl/src/main/javascript/META-INF/adf/jsLibs/Window.js Sat Apr 28 19:48:08 2007
@@ -613,7 +613,7 @@
       }
     }
 
-    var newWin = _getTop(theWindow.document);
+    var newWin = _getTop(theWindow);
 
     // keep a bottom/right pad of at least 5% of the available screen
     var avLeft = isIE ? 0 : newWin.screen.availLeft;