Remove the Spellchecker button from TinyMCE.

It appears Google has finally shut off the old private API it used. Spellcheckers built-in to browsers (and operating systems) seem to be the best alternative.

A WordPress plugin could still re-enable this TinyMCE plugin if they wanted.

props ryanduff for initial patch.
fixes #24789.



git-svn-id: http://core.svn.wordpress.org/trunk@24745 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Andrew Nacin 2013-07-18 22:44:40 +00:00
parent 14fc685a56
commit bd5554f06a
1 changed files with 21 additions and 16 deletions

View File

@ -192,7 +192,7 @@ final class _WP_Editors {
self::$baseurl = includes_url('js/tinymce'); self::$baseurl = includes_url('js/tinymce');
self::$mce_locale = $mce_locale = ( '' == get_locale() ) ? 'en' : strtolower( substr(get_locale(), 0, 2) ); // only ISO 639-1 self::$mce_locale = $mce_locale = ( '' == get_locale() ) ? 'en' : strtolower( substr(get_locale(), 0, 2) ); // only ISO 639-1
$no_captions = (bool) apply_filters( 'disable_captions', '' ); $no_captions = (bool) apply_filters( 'disable_captions', '' );
$plugins = array( 'inlinepopups', 'spellchecker', 'tabfocus', 'paste', 'media', 'fullscreen', 'wordpress', 'wpeditimage', 'wpgallery', 'wplink', 'wpdialogs' ); $plugins = array( 'inlinepopups', 'tabfocus', 'paste', 'media', 'fullscreen', 'wordpress', 'wpeditimage', 'wpgallery', 'wplink', 'wpdialogs' );
$first_run = true; $first_run = true;
$ext_plugins = ''; $ext_plugins = '';
@ -285,20 +285,22 @@ final class _WP_Editors {
self::$plugins = $plugins; self::$plugins = $plugins;
self::$ext_plugins = $ext_plugins; self::$ext_plugins = $ext_plugins;
/* if ( in_array( 'spellchecker', $plugins ) ) {
translators: These languages show up in the spellchecker drop-down menu, in the order specified, and with the first /*
language listed being the default language. They must be comma-separated and take the format of name=code, where name translators: These languages show up in the spellchecker drop-down menu, in the order specified, and with the first
is the language name (which you may internationalize), and code is a valid ISO 639 language code. Please test the language listed being the default language. They must be comma-separated and take the format of name=code, where name
spellchecker with your values. is the language name (which you may internationalize), and code is a valid ISO 639 language code. Please test the
*/ spellchecker with your values.
$mce_spellchecker_languages = __( 'English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv' ); */
$mce_spellchecker_languages = __( 'English=en,Danish=da,Dutch=nl,Finnish=fi,French=fr,German=de,Italian=it,Polish=pl,Portuguese=pt,Spanish=es,Swedish=sv' );
/* /*
The following filter allows localization scripts to change the languages displayed in the spellchecker's drop-down menu. The following filter allows localization scripts to change the languages displayed in the spellchecker's drop-down menu.
By default it uses Google's spellchecker API, but can be configured to use PSpell/ASpell if installed on the server. By default it uses Google's spellchecker API, but can be configured to use PSpell/ASpell if installed on the server.
The + sign marks the default language. More: http://www.tinymce.com/wiki.php/Plugin:spellchecker. The + sign marks the default language. More: http://www.tinymce.com/wiki.php/Plugin:spellchecker.
*/ */
$mce_spellchecker_languages = apply_filters( 'mce_spellchecker_languages', '+' . $mce_spellchecker_languages ); $mce_spellchecker_languages = apply_filters( 'mce_spellchecker_languages', '+' . $mce_spellchecker_languages );
}
self::$first_init = array( self::$first_init = array(
'mode' => 'exact', 'mode' => 'exact',
@ -306,7 +308,6 @@ final class _WP_Editors {
'theme' => 'advanced', 'theme' => 'advanced',
'skin' => 'wp_theme', 'skin' => 'wp_theme',
'language' => self::$mce_locale, 'language' => self::$mce_locale,
'spellchecker_languages' => $mce_spellchecker_languages,
'theme_advanced_toolbar_location' => 'top', 'theme_advanced_toolbar_location' => 'top',
'theme_advanced_toolbar_align' => 'left', 'theme_advanced_toolbar_align' => 'left',
'theme_advanced_statusbar_location' => 'bottom', 'theme_advanced_statusbar_location' => 'bottom',
@ -344,13 +345,17 @@ final class _WP_Editors {
'paste_text_use_dialog' => true, 'paste_text_use_dialog' => true,
'webkit_fake_resize' => false, 'webkit_fake_resize' => false,
'preview_styles' => 'font-family font-weight text-decoration text-transform', 'preview_styles' => 'font-family font-weight text-decoration text-transform',
'spellchecker_rpc_url' => self::$baseurl . '/plugins/spellchecker/rpc.php',
'schema' => 'html5', 'schema' => 'html5',
'wpeditimage_disable_captions' => $no_captions, 'wpeditimage_disable_captions' => $no_captions,
'wp_fullscreen_content_css' => self::$baseurl . '/plugins/wpfullscreen/css/wp-fullscreen.css', 'wp_fullscreen_content_css' => self::$baseurl . '/plugins/wpfullscreen/css/wp-fullscreen.css',
'plugins' => implode( ',', $plugins ) 'plugins' => implode( ',', $plugins )
); );
if ( in_array( 'spellchecker', $plugins ) ) {
self::$first_init['spellchecker_rpc_url'] = self::$baseurl . '/plugins/spellchecker/rpc.php';
self::$first_init['spellchecker_languages'] = $mce_spellchecker_languages;
}
// load editor_style.css if the current theme supports it // load editor_style.css if the current theme supports it
if ( ! empty( $GLOBALS['editor_styles'] ) && is_array( $GLOBALS['editor_styles'] ) ) { if ( ! empty( $GLOBALS['editor_styles'] ) && is_array( $GLOBALS['editor_styles'] ) ) {
$editor_styles = $GLOBALS['editor_styles']; $editor_styles = $GLOBALS['editor_styles'];