Index: formslib.php
===================================================================
RCS file: /cvsroot/moodle/moodle/lib/formslib.php,v
retrieving revision 1.147
diff -c -r1.147 formslib.php
*** formslib.php	9 Jul 2008 10:26:13 -0000	1.147
--- formslib.php	23 Jul 2008 00:28:45 -0000
***************
*** 1302,1312 ****
    return qf_errorHandler(element, _qfMsg);
  }
  ';
              $validateJS .= '
    ret = validate_' . $this->_formName . '_' . $elementName.'(frm.elements[\''.$elementName.'\']) && ret;
    if (!ret && !first_focus) {
!     first_focus = true;
!     frm.elements[\''.$elementName.'\'].focus();
    }
  ';
  
--- 1302,1324 ----
    return qf_errorHandler(element, _qfMsg);
  }
  ';
+             // suppress focus() event for textareas if the htmleditor is being used as the
+             // htmleditor hides the textarea and kills the focus() event.
+             if (can_use_html_editor()) {
+                 $focusJS = '
+     if (frm.elements[\''.$elementName.'\'].nodeName != \'TEXTAREA\') {
+       frm.elements[\''.$elementName.'\'].focus();
+     }';
+             }
+             else {
+                 $focusJS = '
+     frm.elements[\''.$elementName.'\'].focus();';
+             }
              $validateJS .= '
    ret = validate_' . $this->_formName . '_' . $elementName.'(frm.elements[\''.$elementName.'\']) && ret;
    if (!ret && !first_focus) {
!     first_focus = true; '.
!     $focusJS .'
    }
  ';
  

