Index: wysiwyg.module =================================================================== --- wysiwyg.module (revision 4) +++ wysiwyg.module (revision 459) @@ -170,6 +170,10 @@ // Check editor theme (and reset it if not/no longer available). $theme = wysiwyg_get_editor_themes($profile, (isset($profile->settings['theme']) ? $profile->settings['theme'] : '')); + // Rough estimate of textarea height in pixels + // 40 for the toolbar, 29 for the first row, and 15 for the rest. + $profile->settings['height'] = $field['#rows'] ? 40 + 29 + 15*($field['#rows'] - 1) : 400; + // Add plugin settings (first) for this input format. wysiwyg_add_plugin_settings($profile); // Add profile settings for this input format. Index: editors/tinymce.inc =================================================================== --- editors/tinymce.inc (revision 4) +++ editors/tinymce.inc (revision 459) @@ -149,6 +149,7 @@ 'plugins' => array(), 'theme' => $theme, 'width' => '100%', + 'height' => $config['height'] ? $config['height'] : '400', // Strict loading mode must be enabled; otherwise TinyMCE would use // document.write() in IE and Chrome. 'strict_loading_mode' => TRUE, Index: editors/fckeditor.inc =================================================================== --- editors/fckeditor.inc (revision 4) +++ editors/fckeditor.inc (revision 459) @@ -103,7 +103,7 @@ 'SkinPath' => base_path() . $editor['library path'] . '/editor/skins/' . $theme . '/', 'CustomConfigurationsPath' => base_path() . drupal_get_path('module', 'wysiwyg') . '/editors/js/fckeditor.config.js', 'Width' => '100%', - 'Height' => 420, + 'Height' => $config['height'] ? $config['height'] : '400', 'LinkBrowser' => FALSE, 'LinkUpload' => FALSE, 'ImageBrowser' => FALSE,