Commit graph

512 commits

Author SHA1 Message Date
Frederic Massart
5ce4583a46 MDL-44834 editor_atto: Delegate change event to one editor 2014-03-27 19:48:37 +08:00
Marina Glancy
6474439d55 NOBUG: Fixed file access permissions 2014-03-27 16:52:07 +08:00
Marina Glancy
a13c2addee NOBUG: Fixed SVG browser compatibility 2014-03-27 16:52:06 +08:00
Frederic Massart
2f0a1236a7 MDL-44772 editor_atto: Initial height of editor matches textarea's
We set a min-height and a height in JavaScript to force the editor
to start at a certain height, but then it can be expanded thanks
to the CSS property resize. Though as IE does not support the resize
property we ignore we do not set a height so that the editor expands
as we type.
2014-03-27 15:17:49 +08:00
Frederic Massart
125cf72361 MDL-44762 editor_atto: Closing dropdowns when item is clicked 2014-03-27 12:17:00 +08:00
Frederic Massart
6cb48e0424 MDL-44804 editor_atto: JS error when filepicker is disabled 2014-03-26 17:20:31 +08:00
Marina Glancy
205c6db50d MDL-44084 atto: correct standard plugins list and namespace bug fix 2014-03-26 10:01:49 +08:00
Damyon Wiese
9f07f05a48 MDL-43883 Behat: Make Atto the default text editor and adjust behat to use it. 2014-03-26 10:01:49 +08:00
Damyon Wiese
da00661d1f MDL-44487 Atto: Restrict size of image preview in popup.
Instead of only restricting the width, we set a max-width and max-height in css.
We also make the dialog a bit wider so it looks better in clean.
2014-03-26 10:01:49 +08:00
Andrew Nicols
6246779510 MDL-44164 atto: Refactor the world 2014-03-26 10:01:48 +08:00
Jerome Mouneyrac
8951d61411 MDL-44128 Atto: fix keyboard navigation for the dropdowns 2014-03-26 10:01:48 +08:00
Damyon Wiese
d321f68b3d MDL-44219 Atto: Convert selection logic to use Rangy JS Library
This removes alot of complex, hard to test, hard to debug code from the editor so
we can focus on the things we want to spend time on. Rangy seems a good choice for
browser support, stability and features.
2014-03-26 10:01:48 +08:00
Sam Hemelryk
67d3fe45bb MDL-44219 editor_atto: reinvent the event wheel for the atto editor 2014-03-26 10:01:48 +08:00
Damyon Wiese
86a83e3a9f MDL-44063 Atto: Set the default block element to p (if the browser supports it)
Also insert an empty paragraph by default and remove it on save.
2014-03-26 10:01:46 +08:00
Jason Fowler
b5a83da1cf MDL-44215 Atto: Setting toolbar to break at predetermined point 2014-03-26 10:01:46 +08:00
Andrew Nicols
9ee8a359c9 MDL-44225 atto_equation: Set focus after adding equation from toolbar 2014-03-26 10:01:45 +08:00
Andrew Davis
a279604330 MDL-44226 editor_atto: refactored the accessibility checker to make it usable by users who don't know html 2014-03-26 10:01:45 +08:00
Andrew Nicols
117f9f04dc MDL-44475 editor_atto: Stop using deprecating functionality 2014-03-26 10:01:45 +08:00
Sam Hemelryk
c9292b18a3 MDL-44220 atto_image: added image alignment control 2014-03-26 10:01:44 +08:00
Andrew Davis
bed1abbc89 MDL-43864 editor_atto: added a prevent autolink button to atto 2014-03-26 10:01:44 +08:00
Jason Fowler
18ce3fe4ee MDL-44223 Atto: Setting images to display a place holder when src is broken 2014-03-26 10:01:44 +08:00
Sam Hemelryk
bdfbdeeb64 MDL-44040 editor: implemented shortcuts for bold, italic, underline and undo 2014-03-26 10:01:44 +08:00
Andrew Davis
f331980308 MDL-44218 editor_atto: prevent atto getting massive and allow the user to resize it 2014-03-26 10:01:44 +08:00
Sam Hemelryk
a30a40cbf4 MDL-44221 editor_atto: convert plugins to use insert_html_at_focus_point 2014-03-26 10:01:44 +08:00
Sam Hemelryk
2faf4c4584 MDL-44221 editor_atto: fixed bug creating table in IE <= 10
This involved introducing a insert_html_at_focus_point method for
the editor and using that instead of insertHTML
2014-03-26 10:01:44 +08:00
Sam Hemelryk
9d535d04c2 MDL-44228 editor_atto: added missing outdent icon 2014-03-26 10:01:44 +08:00
Jerome Mouneyrac
6f0a16002a MDL-44228 add Atto sub-plugins admin table 2014-03-26 10:01:43 +08:00
Jerome Mouneyrac
7ca3ad91a0 MDL-44227 Atto: the screenreader helper now displays some texts when alt or title don\'t exist 2014-03-26 10:01:43 +08:00
Jason Fowler
e7109b5949 MDL-44216 Atto: Reversing the indent outdent buttons 2014-03-26 10:01:43 +08:00
Damyon Wiese
3ee53a425f MDL-44092 Atto: Add selectionchanged event and listeners in the buttons.
This means the buttons can indicate the state of the text under the cursor.
2014-03-26 10:01:43 +08:00
Jerome Mouneyrac
99061b7ad1 MDL-43863 Add Undo/Redo plugins to Atto 2014-03-26 10:01:43 +08:00
Frederic Massart
f6bef145bd MDL-44125 atto_align: Style with CSS whenever possible 2014-03-26 10:01:43 +08:00
Frederic Massart
acc94f70c8 MDL-44125 atto_align: New plugin for text alignment 2014-03-26 10:01:43 +08:00
Damyon Wiese
8bf5ad67ea MDL-43855 Atto: Add an equation editor
This equation editor relies on whatever the currently configured filter is to do the rendering.
If there is no filter that handles latex ($$ blah $$) - this plugin will not show up.

This will not work with the solutions on the forums of adding MathJax in the header of the page,
but it will work with a real mathjax filter written for Moodle (work in progress). It works with
the existing tex filter.
2014-03-26 10:01:42 +08:00
Damyon Wiese
05843fd3ee MDL-44067 Atto: Improve table editing controls.
Remove flaky inline menu icons - instead clicking on the table button, when
you are in a table shows the context menu for the current cell.

I removed all the special code for 'atto_control' - because it did not work very well. Having non-contenteditable
nodes inside a contenteditable region seems in expose bugs in different browsers.
2014-03-26 10:01:42 +08:00
Damyon Wiese
5ec54dd125 MDL-44127 Atto: Improve Atto API to allow plugins with multiple buttons/menus 2014-03-26 10:01:42 +08:00
Damyon Wiese
8095505e3c MDL-44126 Atto: List of minor fixes from review.
toolbar order (base it on tinymce)
change plain to paragraph
default for collapse plugin should be 5 groups
fix alignment of table dialogue form
insert newlines in html generated by table plugin
rename accessibility helper to screenreader helper
remove accessibility hint for images and media files
fix some broken plugin names
style table captions
remove verbose accessibility hints
2014-03-26 10:01:42 +08:00
Jerome Mouneyrac
fe0d247796 MDL-43869 New Atto plugin switch language LTR/RTL 2014-03-26 10:00:05 +08:00
Frederic Massart
c7ef8e455e MDL-43870 atto_title: Remove quoted style 2014-03-26 10:00:05 +08:00
Frederic Massart
5a06d5d71d MDL-43870 atto_indent: Removing browser styling after execCommand 2014-03-26 10:00:05 +08:00
Damyon Wiese
b03d59821a MDL-43934 Atto: Rename shifter meta files to the correct name.
This could have caused yui to fetch extra files because the dependencies might not have been loaded.
2014-03-26 10:00:04 +08:00
Damyon Wiese
fcb5b5c473 MDL-43854 Atto: Add collapse toolbar plugin 2014-03-26 10:00:04 +08:00
Frederic Massart
4c37c1f416 MDL-43954 editor_atto: Fix styling for IE8 in clean and standard 2014-03-26 10:00:04 +08:00
Rossiani Wijaya
39e2a67a53 MDL-44032 Atto editor: add subscript and superscript plugins 2014-03-26 10:00:04 +08:00
Damyon Wiese
26f8822d5c MDL-43867 Atto: Accessibility improvements.
1/ Set the aria-labelledby attribute on the contenteditable div (find the label from
original textarea)

2/ Store/restore the selection for the contenteditable div when it is focused. This allows
you to select some text, then go to the toolbar and click a button, and the selection
will be restored before the button effect is applied.

3/ Add an accessibility helper plugin.

From testing in all screenreaders, I found that all of their support for contenteditable is not great.
They treat it like a textbox - which means you can type and edit text, but it tells you nothing about
the styles, links or images in the editor. So I added a button to the toolbar, that is only accessible
when navigating via keyboard, that opens an accesssibility helper dialogue. The dialogue shows the list
of current styles, a global list of all links, and a global list of all images. Choosing an image or link
from here, will focus on the editable region, and select the link/image.

4/ Add an accessibility checker plugin to Atto.

Checks for images with no alt, images and links with filenames as alternate text/link text, and contrast ratios
less than WCAG 2.0 AA.
2014-03-26 09:59:37 +08:00
Frederic Massart
dad09216bc MDL-43953 editor_atto: Trigger form change when editing content 2014-03-26 09:59:37 +08:00
Frederic Massart
60a051d471 MDL-44064 editor_atto: Do not die when a plugin is missing 2014-03-26 09:59:36 +08:00
Damyon Wiese
34f5867a11 MDL-43990 Atto: Add a function for changing the formatting of the selected block. 2014-03-26 09:59:36 +08:00
Damyon Wiese
0fa78b80b4 MDL-43861 Atto: Fix for toolbar menu repaint bug in chrome. 2014-03-26 09:59:36 +08:00
Rossiani Wijaya
534cf7b730 MDL-43861: Atto Plugins: create new plugin for font and background colors 2014-03-26 09:59:36 +08:00