diff --git a/modules/images/toolbar/button-sprite.png b/modules/images/toolbar/button-sprite.png index 60544992..bd8989ff 100644 Binary files a/modules/images/toolbar/button-sprite.png and b/modules/images/toolbar/button-sprite.png differ diff --git a/modules/images/toolbar/format-indent-rtl.png b/modules/images/toolbar/format-indent-rtl.png new file mode 100644 index 00000000..3cc6c945 Binary files /dev/null and b/modules/images/toolbar/format-indent-rtl.png differ diff --git a/modules/images/toolbar/format-olist-rtl.png b/modules/images/toolbar/format-olist-rtl.png new file mode 100644 index 00000000..1f065399 Binary files /dev/null and b/modules/images/toolbar/format-olist-rtl.png differ diff --git a/modules/images/toolbar/format-ulist-rtl.png b/modules/images/toolbar/format-ulist-rtl.png new file mode 100644 index 00000000..51510157 Binary files /dev/null and b/modules/images/toolbar/format-ulist-rtl.png differ diff --git a/modules/images/toolbar/insert-redirect-rtl.png b/modules/images/toolbar/insert-redirect-rtl.png new file mode 100644 index 00000000..d0200f6e Binary files /dev/null and b/modules/images/toolbar/insert-redirect-rtl.png differ diff --git a/modules/jquery.wikiEditor.js b/modules/jquery.wikiEditor.js index fc2ca1ad..9d66b434 100644 --- a/modules/jquery.wikiEditor.js +++ b/modules/jquery.wikiEditor.js @@ -149,14 +149,16 @@ $.wikiEditor = { }, /** * Provides a way to extract a property of an object in a certain language, falling back on the property keyed as - * 'default'. If such key doesn't exist, the object itself is considered the actual value, which should ideally - * be the case so that you may use a string or object of any number of strings keyed by language with a default. + * 'default' or 'default-rtl'. If such key doesn't exist, the object itself is considered the actual value, which + * should ideally be the case so that you may use a string or object of any number of strings keyed by language + * with a default. * * @param object Object to extract property from * @param lang Language code, defaults to wgUserLanguage */ 'autoLang': function( object, lang ) { - return object[lang || wgUserLanguage] || object['default'] || object; + var defaultKey = $( 'body' ).hasClass( 'rtl' ) ? 'default-rtl' : 'default'; + return object[lang || wgUserLanguage] || object[defaultKey] || object['default'] || object; }, /** * Provides a way to extract the path of an icon in a certain language, automatically appending a version number for diff --git a/modules/jquery.wikiEditor.toolbar.config.js b/modules/jquery.wikiEditor.toolbar.config.js index d30e7f70..c6e23e04 100644 --- a/modules/jquery.wikiEditor.toolbar.config.js +++ b/modules/jquery.wikiEditor.toolbar.config.js @@ -261,8 +261,14 @@ getDefaultConfig: function() { 'ulist': { 'labelMsg': 'wikieditor-toolbar-tool-ulist', 'type': 'button', - 'icon': 'format-ulist.png', - 'offset': [2, -1366], + 'icon': { + 'default': 'format-ulist.png', + 'default-rtl': 'format-ulist-rtl.png' + }, + 'offset': { + 'default': [2, -1366], + 'default-rtl': [-70, -286] + }, 'action': { 'type': 'encapsulate', 'options': { @@ -277,8 +283,14 @@ getDefaultConfig: function() { 'olist': { 'labelMsg': 'wikieditor-toolbar-tool-olist', 'type': 'button', - 'icon': 'format-olist.png', - 'offset': [2, -1078], + 'icon': { + 'default': 'format-olist.png', + 'default-rtl': 'format-olist-rtl.png' + }, + 'offset': { + 'default': [2, -1078], + 'default-rtl': [-70, -358] + }, 'action': { 'type': 'encapsulate', 'options': { @@ -293,8 +305,14 @@ getDefaultConfig: function() { 'indent': { 'labelMsg': 'wikieditor-toolbar-tool-indent', 'type': 'button', - 'icon': 'format-indent.png', - 'offset': [2, -646], + 'icon': { + 'default': 'format-indent.png', + 'default-rtl': 'format-indent-rtl.png' + }, + 'offset': { + 'default': [2, -646], + 'default-rtl': [-70, -430] + }, 'action': { 'type': 'encapsulate', 'options': { @@ -433,8 +451,14 @@ getDefaultConfig: function() { 'redirect': { 'labelMsg': 'wikieditor-toolbar-tool-redirect', 'type': 'button', - 'icon': 'insert-redirect.png', - 'offset': [-70, -142], + 'icon': { + 'default': 'insert-redirect.png', + 'default-rtl': 'insert-redirect-rtl.png' + }, + 'offset': { + 'default': [-70, -142], + 'default-rtl': [-70, -502], + }, 'action': { 'type': 'encapsulate', 'options': {