Merge branch 'MDL-46497_master' of https://github.com/nadavkav/moodle

This commit is contained in:
Andrew Nicols 2015-10-12 13:35:24 +08:00
commit 56b62992fa
4 changed files with 19 additions and 7 deletions

View File

@ -65,7 +65,9 @@ Y.namespace('M.atto_rtl').Button = Y.Base.create('button', Y.M.editor_atto.Edito
*/
_toggleRTL: function(e, direction) {
var host = this.get('host'),
selection = host.getSelection();
sourceSelection = rangy.saveSelection(),
selection = host.getSelection(),
newDirection = { rtl: 'ltr', ltr: 'rtl' };
if (selection) {
// Format the selection to be sure it has a tag parent (not the contenteditable).
var parentNode = host.formatSelectionBlock(),
@ -73,11 +75,13 @@ Y.namespace('M.atto_rtl').Button = Y.Base.create('button', Y.M.editor_atto.Edito
var currentDirection = parentDOMNode.getAttribute('dir');
if (currentDirection === direction) {
parentDOMNode.removeAttribute("dir");
parentDOMNode.setAttribute("dir", newDirection[direction]);
} else {
parentDOMNode.setAttribute("dir", direction);
}
// Change selection from the containing paragraph to the original one.
rangy.restoreSelection(sourceSelection);
// Mark the text as having been updated.
this.markUpdated();
}

View File

@ -1 +1 @@
YUI.add("moodle-atto_rtl-button",function(e,t){e.namespace("M.atto_rtl").Button=e.Base.create("button",e.M.editor_atto.EditorPlugin,[],{initializer:function(){var e;e="ltr",this.addButton({icon:"e/left_to_right",title:e,buttonName:e,callback:this._toggleRTL,callbackArgs:e}),e="rtl",this.addButton({icon:"e/right_to_left",title:e,buttonName:e,callback:this._toggleRTL,callbackArgs:e})},_toggleRTL:function(e,t){var n=this.get("host"),r=n.getSelection();if(r){var i=n.formatSelectionBlock(),s=i.getDOMNode(),o=s.getAttribute("dir");o===t?s.removeAttribute("dir"):s.setAttribute("dir",t),this.markUpdated()}}})},"@VERSION@",{requires:["moodle-editor_atto-plugin"]});
YUI.add("moodle-atto_rtl-button",function(e,t){e.namespace("M.atto_rtl").Button=e.Base.create("button",e.M.editor_atto.EditorPlugin,[],{initializer:function(){var e;e="ltr",this.addButton({icon:"e/left_to_right",title:e,buttonName:e,callback:this._toggleRTL,callbackArgs:e}),e="rtl",this.addButton({icon:"e/right_to_left",title:e,buttonName:e,callback:this._toggleRTL,callbackArgs:e})},_toggleRTL:function(e,t){var n=this.get("host"),r=rangy.saveSelection(),i=n.getSelection(),s={rtl:"ltr",ltr:"rtl"};if(i){var o=n.formatSelectionBlock(),u=o.getDOMNode(),a=u.getAttribute("dir");a===t?u.setAttribute("dir",s[t]):u.setAttribute("dir",t),rangy.restoreSelection(r),this.markUpdated()}}})},"@VERSION@",{requires:["moodle-editor_atto-plugin"]});

View File

@ -65,7 +65,9 @@ Y.namespace('M.atto_rtl').Button = Y.Base.create('button', Y.M.editor_atto.Edito
*/
_toggleRTL: function(e, direction) {
var host = this.get('host'),
selection = host.getSelection();
sourceSelection = rangy.saveSelection(),
selection = host.getSelection(),
newDirection = { rtl: 'ltr', ltr: 'rtl' };
if (selection) {
// Format the selection to be sure it has a tag parent (not the contenteditable).
var parentNode = host.formatSelectionBlock(),
@ -73,11 +75,13 @@ Y.namespace('M.atto_rtl').Button = Y.Base.create('button', Y.M.editor_atto.Edito
var currentDirection = parentDOMNode.getAttribute('dir');
if (currentDirection === direction) {
parentDOMNode.removeAttribute("dir");
parentDOMNode.setAttribute("dir", newDirection[direction]);
} else {
parentDOMNode.setAttribute("dir", direction);
}
// Change selection from the containing paragraph to the original one.
rangy.restoreSelection(sourceSelection);
// Mark the text as having been updated.
this.markUpdated();
}

View File

@ -63,7 +63,9 @@ Y.namespace('M.atto_rtl').Button = Y.Base.create('button', Y.M.editor_atto.Edito
*/
_toggleRTL: function(e, direction) {
var host = this.get('host'),
selection = host.getSelection();
sourceSelection = rangy.saveSelection(),
selection = host.getSelection(),
newDirection = { rtl: 'ltr', ltr: 'rtl' };
if (selection) {
// Format the selection to be sure it has a tag parent (not the contenteditable).
var parentNode = host.formatSelectionBlock(),
@ -71,11 +73,13 @@ Y.namespace('M.atto_rtl').Button = Y.Base.create('button', Y.M.editor_atto.Edito
var currentDirection = parentDOMNode.getAttribute('dir');
if (currentDirection === direction) {
parentDOMNode.removeAttribute("dir");
parentDOMNode.setAttribute("dir", newDirection[direction]);
} else {
parentDOMNode.setAttribute("dir", direction);
}
// Change selection from the containing paragraph to the original one.
rangy.restoreSelection(sourceSelection);
// Mark the text as having been updated.
this.markUpdated();
}