[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    KDE/kdelibs/khtml/ecma
From:       Germain Garand <germain () ebooksfrance ! org>
Date:       2010-01-06 4:55:32
Message-ID: 1262753732.249650.1244.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1070586 by ggarand:

make sure layout is up to date before calling blur/focus.

BUG: 215791

 M  +16 -7     kjs_dom.cpp  


--- trunk/KDE/kdelibs/khtml/ecma/kjs_dom.cpp #1070585:1070586
@@ -1365,14 +1365,23 @@
       return jsBoolean(element.hasAttributeNS(args[0]->toString(exec).domString(),args[1]->toString(exec).domString()));
  case DOMElement::GetElementsByClassName: // HTML 5
       return getDOMNodeList(exec, \
                element.getElementsByClassName(args[0]->toString(exec).domString()));
-    case DOMElement::Focus:
-      element.focus();
-      return jsUndefined();
-    case DOMElement::Blur:
-      element.blur();
-      return jsUndefined();
     default:
-      return jsUndefined();
+
+      // Make sure our layout is up to date before we call these
+      DOM::DocumentImpl* docimpl = element.document();
+      if (docimpl) {
+          docimpl->updateLayout();
+      }
+      switch(id) {
+        case DOMElement::Focus:
+          element.focus();
+          return jsUndefined();
+        case DOMElement::Blur:
+          element.blur();
+          return jsUndefined();
+        default:
+          return jsUndefined();
+      }
   }
 }
 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic