mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/CodeMirror
synced 2024-11-23 22:03:28 +00:00
Do not load module 'ext.CodeMirror' when CodeEditor is active
Change-Id: I8fd0de727f2ebb1bf9f23981438d6cafa962ad17
This commit is contained in:
parent
f6c86b9867
commit
f0757cb0dc
|
@ -5,10 +5,16 @@ class CodeMirrorHooks {
|
||||||
/**
|
/**
|
||||||
* Checks if CodeMirror for textarea wikitext editor should be loaded on this page or not.
|
* Checks if CodeMirror for textarea wikitext editor should be loaded on this page or not.
|
||||||
*
|
*
|
||||||
* @param IContextSource $context The current ContextSource object
|
* @param OutputPage $out
|
||||||
* @return bool
|
* @return bool
|
||||||
*/
|
*/
|
||||||
private static function isCodeMirrorOnPage( IContextSource $context ) {
|
private static function isCodeMirrorOnPage( OutputPage $out ) {
|
||||||
|
// Disable CodeMirror when CodeEditor is active on this page
|
||||||
|
// Depends on ext.codeEditor being added by EditPage::showEditForm:initial
|
||||||
|
if ( in_array( 'ext.codeEditor', $out->getModules() ) ) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
$context = $out->getContext();
|
||||||
return in_array( Action::getActionName( $context ), [ 'edit', 'submit' ] ) &&
|
return in_array( Action::getActionName( $context ), [ 'edit', 'submit' ] ) &&
|
||||||
// CodeMirror on textarea wikitext editors doesn't support RTL (T170001)
|
// CodeMirror on textarea wikitext editors doesn't support RTL (T170001)
|
||||||
!$context->getTitle()->getPageLanguage()->isRTL();
|
!$context->getTitle()->getPageLanguage()->isRTL();
|
||||||
|
@ -23,7 +29,7 @@ class CodeMirrorHooks {
|
||||||
* @param Skin &$skin
|
* @param Skin &$skin
|
||||||
*/
|
*/
|
||||||
public static function onBeforePageDisplay( OutputPage &$out, Skin &$skin ) {
|
public static function onBeforePageDisplay( OutputPage &$out, Skin &$skin ) {
|
||||||
if ( self::isCodeMirrorOnPage( $out->getContext() ) ) {
|
if ( self::isCodeMirrorOnPage( $out ) ) {
|
||||||
$out->addModules( 'ext.CodeMirror' );
|
$out->addModules( 'ext.CodeMirror' );
|
||||||
}
|
}
|
||||||
// TODO: for backwards compatibility. Remove in 2019.
|
// TODO: for backwards compatibility. Remove in 2019.
|
||||||
|
|
|
@ -3,10 +3,6 @@
|
||||||
$textbox1,
|
$textbox1,
|
||||||
enableContentEditable = true;
|
enableContentEditable = true;
|
||||||
|
|
||||||
if ( mw.config.get( 'wgCodeEditorCurrentLanguage' ) ) { // If the CodeEditor is used then just exit;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Exit if WikiEditor is disabled
|
// Exit if WikiEditor is disabled
|
||||||
// usebetatoolbar can be the string "0" if the user disabled the preference - Bug T54542#555387
|
// usebetatoolbar can be the string "0" if the user disabled the preference - Bug T54542#555387
|
||||||
if ( !( mw.loader.getState( 'ext.wikiEditor' ) && mw.user.options.get( 'usebetatoolbar' ) > 0 ) ) {
|
if ( !( mw.loader.getState( 'ext.wikiEditor' ) && mw.user.options.get( 'usebetatoolbar' ) > 0 ) ) {
|
||||||
|
|
Loading…
Reference in a new issue