# Add Atto back to core, and add the required features to make it the best thing ever

## Details

• Type: Epic
• Status: Closed
• Priority: Major
• Resolution: Fixed
• Affects Version/s: 2.7
• Fix Version/s:
• Component/s:
• Labels:
• Affected Branches:
MOODLE_27_STABLE
• Fixed Branches:
MOODLE_27_STABLE
• Epic Name:
Make Atto the default Moodle text editor

## Description

Add Atto back to Moodle core and add or improve it enough to be suitable as the default text editor in Moodle.

## Issues in Epic

Closed Sam Hemelryk MDL-44490 Atto: Its possible to make the editor completely keyboard inaccessible Closed Andrew Nicols MDL-44128 Atto: Toolbar menus should work with keyboard navigation Closed Jérôme Mouneyrac MDL-44225 Atto: Focus lost in the Equation editor after inserting a symbol Closed Andrew Nicols MDL-44226 Atto: Simplifying the 'accessibility checker' to display sensible content Closed Andrew Davis MDL-44227 Atto: The screenreader helper/accessibility checker should always display something for missing images Closed Jérôme Mouneyrac MDL-44083 Atto has wrong icons for screenreader helper and accessibility checker Closed Jason Fowler MDL-44064 Atto: Editor should not kill page when missing a plugin Closed Frédéric Massart MDL-44067 Improve Atto Table controls Closed Damyon Wiese MDL-44080 Atto: Collapse plugin icon should be improved Development in progress Damyon Wiese MDL-44084 Integrate Atto Closed Damyon Wiese MDL-44092 Add an active state to the buttons, when the text under the cursor has the style applied. Closed Damyon Wiese MDL-44116 Additional Accessibility checker sniffs Closed Damyon Wiese MDL-44122 Atto: update the toolbar order to match tinymce Closed Damyon Wiese MDL-44123 Atto: fix the alignment of the form in the table dialogue Closed Unassigned MDL-44125 Atto: New plugin to select the text alignment Closed Frédéric Massart MDL-44126 Small tweaks to Atto Closed Damyon Wiese MDL-44127 Atto Improve API when a plugin wants multiple buttons. Closed Damyon Wiese MDL-44129 Atto: Reduce the number of events delegate() for the toolbar Closed Andrew Nicols MDL-44131 Make the Atto equation editor example library into an aria toolbar. Closed Frédéric Massart MDL-44229 Atto: The 'active' state of the buttons is too subtle Open Unassigned MDL-44230 Atto: The equation button gets an active state even if the cursor is not in the equation Closed Unassigned MDL-44231 Atto: Reword the 'Manage files' plugin interface, and reduce height of content Open Unassigned MDL-44232 Atto: The media plugin is missing a preview Open Unassigned MDL-44233 Atto: The style of the equation editor is not consistent Open Unassigned MDL-44234 Atto: The 'caption' field in the table dialogue is too big Closed Frédéric Massart MDL-44235 Atto: The caption displayed in the editor overlaps its borders Closed Frédéric Massart MDL-44236 Atto: Bug when inserting a table in a
or
rather than a

Closed Andrew Nicols MDL-44826 Atto Too many image alignment options Closed Damyon Wiese MDL-44827 Atto: Insert image fails on iOS 7 Closed Jetha Chan MDL-44834 Atto: Event atto:selectionchanged is fired on each editor Closed Frédéric Massart MDL-44846 Atto font colors are broken in IE Closed Damyon Wiese MDL-44868 Atto: Toolbar can set focus on disabled elements Closed Frédéric Massart MDL-44869 Atto: Plugin prevent autolink should indicate its state Closed Frédéric Massart MDL-44870 Atto: Noautolink should not be a default plugin Closed Frédéric Massart MDL-44871 Write behat tests for Atto functionalities Closed Damyon Wiese MDL-44906 The expand/collapse toolbar plugin should not send focus to the text box Closed Andrew Nicols MDL-45040 Atto: Selection reverts to previous selection on toolbar button press in WebKit browsers Closed Jetha Chan MDL-45125 Atto tables bugs Open Unassigned MDL-18014 Automatically and periodically save WYSIWYG editor content as a draft/concept Closed Damyon Wiese MDL-44779 MathJax menus show behind dialogues Open Unassigned

## Activity

Hide
Derek Chirnside added a comment -

Where are the latest docs on this work? Is http://docs.moodle.org/dev/Editor_2.7#Atto up to date?
Has the decision been made to use Atto?
Where does the name Atto come from? (I'm a bit slow here)

I'm interested in https://tracker.moodle.org/browse/MDL-40172 being in the Atto future. What should I do? Can I ass it as an Atto request?

-Derek

Show
Derek Chirnside added a comment - Where are the latest docs on this work? Is http://docs.moodle.org/dev/Editor_2.7#Atto up to date? Has the decision been made to use Atto? Where does the name Atto come from? (I'm a bit slow here) I'm interested in https://tracker.moodle.org/browse/MDL-40172 being in the Atto future. What should I do? Can I ass it as an Atto request? -Derek
Hide
Derek Chirnside added a comment -

I have a further comment.
If we are doing this (as opposed to relying on an external project), we have some options to do something really great.
SOMEWHERE there is some comment about a really cut down editor. Like guitar hero, sort of three buttons. For instance I use insert image, bullets/numbers and H2 so much it would be good to be able to not have to use a dropdown for this with the extra clicks.

Compare to the Facebook and Google editors and see what we can do to make something really sharp. Wordpress I think has still to get this sorted. Ghost https://ghost.org/features/ has tried markdown which is very very fast.

Finally: image resizing on the fly maybe?

-Derek

Show
Derek Chirnside added a comment - I have a further comment. If we are doing this (as opposed to relying on an external project), we have some options to do something really great. SOMEWHERE there is some comment about a really cut down editor. Like guitar hero, sort of three buttons. For instance I use insert image, bullets/numbers and H2 so much it would be good to be able to not have to use a dropdown for this with the extra clicks. Compare to the Facebook and Google editors and see what we can do to make something really sharp. Wordpress I think has still to get this sorted. Ghost https://ghost.org/features/ has tried markdown which is very very fast. Finally: image resizing on the fly maybe? -Derek
Hide
Damyon Wiese added a comment -

Hi Derek - yes, the decision has been made to go with Atto for 2.7. Martin announced it in dev chat and discussed it in the recent developers meeting. We are working now on the issues in this Epic as these things are considered critical for Atto to be a replacement for tinymce. Some of these issues are features that were in tinymce and people will miss if we do not implement them, some of them are areas where we would like to do much better than tinyMCE (accessibility). There are further improvements that are now possible where it would have required too much hacking tinymce code to implement before. Drag drop images, image resizing, auto save to local storage are some that come to mind. These features will are "nice to haves" - hopefully we get some of the most popular ones done for 2.7 as it will justify our decision to go with our own editor - but there are lots of priorities, and some of these improvements will have to wait for 2.8. The name "Atto" refers to the SI prefix for 10^-18 ie really really small, which refers to the goal of Atto to be a small/clean editor.

Show
Damyon Wiese added a comment - Hi Derek - yes, the decision has been made to go with Atto for 2.7. Martin announced it in dev chat and discussed it in the recent developers meeting. We are working now on the issues in this Epic as these things are considered critical for Atto to be a replacement for tinymce. Some of these issues are features that were in tinymce and people will miss if we do not implement them, some of them are areas where we would like to do much better than tinyMCE (accessibility). There are further improvements that are now possible where it would have required too much hacking tinymce code to implement before. Drag drop images, image resizing, auto save to local storage are some that come to mind. These features will are "nice to haves" - hopefully we get some of the most popular ones done for 2.7 as it will justify our decision to go with our own editor - but there are lots of priorities, and some of these improvements will have to wait for 2.8. The name "Atto" refers to the SI prefix for 10^-18 ie really really small, which refers to the goal of Atto to be a small/clean editor.
Hide
Derek Chirnside added a comment -

Great. Message received. So am I allowed to kill off https://tracker.moodle.org/browse/MDL-40172 and add the drag and drop as a tracker item to the ATTO list, even if it is nice to have.

-Derek

Show
Derek Chirnside added a comment - Great. Message received. So am I allowed to kill off https://tracker.moodle.org/browse/MDL-40172 and add the drag and drop as a tracker item to the ATTO list, even if it is nice to have. -Derek
Hide
Damyon Wiese added a comment -

Yes please - a new issue for that would be great.

Thanks!

Show
Damyon Wiese added a comment - Yes please - a new issue for that would be great. Thanks!
Hide
Derek Chirnside added a comment -

Done. https://tracker.moodle.org/browse/MDL-43996 You probably need to see Martin or Helen about this now to make this into an announcement, shut down the Prototype site etc etc.

This kind of announcement will be easy with the new Moodle.org.

MoodleNews ven has not caught up with this yet and sent me a news item today about the editor showdown.

-Derek

Show
Derek Chirnside added a comment - Done. https://tracker.moodle.org/browse/MDL-43996 You probably need to see Martin or Helen about this now to make this into an announcement, shut down the Prototype site etc etc. This kind of announcement will be easy with the new Moodle.org. MoodleNews ven has not caught up with this yet and sent me a news item today about the editor showdown. -Derek
Hide
Derek Chirnside added a comment -

-Derek

Show
Derek Chirnside added a comment - Is the latest version of ATTO anywhere to look at? Prototype. -Derek
Hide
Damyon Wiese added a comment -

Yes - it's at

http://github.com/damyon/atto27.git

Branch: master

We are peer reviewing and testing issues before they get added to that branch, and the whole branch will be sent for integration (hopefully real soon).

Show
Damyon Wiese added a comment - Yes - it's at http://github.com/damyon/atto27.git Branch: master We are peer reviewing and testing issues before they get added to that branch, and the whole branch will be sent for integration (hopefully real soon).
Hide
Damyon Wiese added a comment -

We are looking to update the prototype site with the latest version of it - but we are waiting for php to be upgraded on that site.

Show
Damyon Wiese added a comment - We are looking to update the prototype site with the latest version of it - but we are waiting for php to be upgraded on that site.
Hide
Derek Chirnside added a comment -

Great. I meant to say "Prototype site maybe?" in in post. It will be good to be able to try it out there. Otherwise all we have is coders testing and providing feedback, and we may end up only with "a good thing" not the "Best thing ever"

-Derek

Show
Derek Chirnside added a comment - Great. I meant to say "Prototype site maybe?" in in post. It will be good to be able to try it out there. Otherwise all we have is coders testing and providing feedback, and we may end up only with "a good thing" not the "Best thing ever" -Derek
Hide
Derek Chirnside added a comment -

-Derek

Show
Derek Chirnside added a comment - @Damyon Progress on PHP upgrade? -Derek
Hide
Derek Chirnside added a comment -

@Damyon. Bump. Still keen to look at the latest version. Do you know of anyone who has an install I could look at?

Also, can I refer to your comment above: "Drag drop images, image resizing, auto save to local storage are some that come to mind. These features will are "nice to haves" - hopefully we get some of the most popular ones done for 2.7 as it will justify our decision to go with our own editor - but there are lots of priorities, and some of these improvements will have to wait for 2.8"

My 2c worth: I think the drag and drop is more than a "nice to have". It would make such a huge difference. This is my plug for when you are prioritising.

-Derek

Show
Derek Chirnside added a comment - @Damyon. Bump. Still keen to look at the latest version. Do you know of anyone who has an install I could look at? Also, can I refer to your comment above: "Drag drop images, image resizing, auto save to local storage are some that come to mind. These features will are "nice to haves" - hopefully we get some of the most popular ones done for 2.7 as it will justify our decision to go with our own editor - but there are lots of priorities, and some of these improvements will have to wait for 2.8" My 2c worth: I think the drag and drop is more than a "nice to have". It would make such a huge difference. This is my plug for when you are prioritising. -Derek
Hide
Derek Chirnside added a comment -

Just had an email from Martin. Has been updated for a few weeks. http://prototype.moodle.net/ I must have missed the announcement somewhere . . .

Show
Derek Chirnside added a comment - Just had an email from Martin. Has been updated for a few weeks. http://prototype.moodle.net/ I must have missed the announcement somewhere . . .
Hide
Damyon Wiese added a comment -

Note - Atto has been integrated now - it's not the default for upgrades yet (but will be by the end of next week).

This means you can view it at http://qa.moodle.net/ (just change your preferred text editor in your profile for now).

Show
Damyon Wiese added a comment - Note - Atto has been integrated now - it's not the default for upgrades yet (but will be by the end of next week). This means you can view it at http://qa.moodle.net/ (just change your preferred text editor in your profile for now).
Hide
Mary Evans added a comment -

I have just updated again and still getting this error...

 Missing atto plugin unlink    line 103 of \lib\editor\atto\lib.php: call to debugging()  line 2262 of \lib\adminlib.php: call to atto_texteditor->use_editor()  line 1490 of \lib\adminlib.php: call to admin_setting_confightmleditor->output_html()  line 125 of \admin\settings.php: call to admin_settingpage->output_html() 

Show
Mary Evans added a comment - I have just updated again and still getting this error... Missing atto plugin unlink   line 103 of \lib\editor\atto\lib.php: call to debugging() line 2262 of \lib\adminlib.php: call to atto_texteditor->use_editor() line 1490 of \lib\adminlib.php: call to admin_setting_confightmleditor->output_html() line 125 of \admin\settings.php: call to admin_settingpage->output_html()
Hide
Dan Poltawski added a comment -

Can this issue be closed?

Show
Dan Poltawski added a comment - Can this issue be closed?
Hide
Damyon Wiese added a comment -

is it the best thing ever ?

Show
Damyon Wiese added a comment - is it the best thing ever ?
Hide
Damyon Wiese added a comment -

Closing - it's basically done. Anything that is just a bug or new feature will be collected in the component.

Show
Damyon Wiese added a comment - Closing - it's basically done. Anything that is just a bug or new feature will be collected in the component.

## People

• Assignee:
Unassigned
Reporter:
Damyon Wiese
Participants: