The following improvements have been made:
* Items no longer MUST have an icon, it can now be null instead.
* You can specify the icon displayed to toggle the dropdown menu.
* You can add text in front of the aforementioned icon.
The following changes have been made:
* course_section_cm_edit_actions now allows the caller more options for the
display of the action menu.
* The site menu block now disables the JS enhancement of the actionmenu so
that it displays as it did before. After more testing this seemed like the
only option that worked in the limited space of the block when it had
several modules.
* draganddrop of resources now triggers the action menu enhancement as well.
* Fixed display of title when the menu is not being enhanced by JS.
* Fixed the alignment of the completion icon in the bootstrapbase theme.
* Tweaked the CSS for the standard theme.
* Fixed IE8 display of icons.
* Fixed blocks using course renderer.
* Fixed behat tests.
* codecheckers fixes
* Removed alt from icons with descriptive text
* Tweaked actionmenu initialisation for performance
The patch converts the dock into a YUI shifter module and at
the same time improves several aspects of its operation.
The features of this patch include:
* Dock Module conversion.
* A loader that ensures we don't include the dock JS or its
requirements unless actually required.
* We no longer include the dock JS for themes that don't
enable it.
* Blocks no longer add registration events to the page
instead a dockable attribute is added to the html and the
loader looks for that.
* The dock module is properly documented and running YUIDoc
gives good quality documentation.
* We no longer need the dock module registration or
subcomponent.
* All events that can be delegated are now delegated.
* Removed unused variables and code left over after fixes.
* Support for docking blocks renderered using the new blocks
render method. Better support for custom block regions.
- created renderable object tabtree that represents the tree of tabs, extends tabobject
- created core_renderer::tabtree(), and supporting core_renderer::render_tabtree(), core_renderer::render_tabobject()
- change print_tabs() to use renderer function, deprecate supporting not needed functions
Classes with magic properties such as context do not pass through json_encode().
The solution is to implement iterator in such classes and convert what we
feed to json_encode to array using 'foreach' before we pass it to json_encode():
- class context implements IteratorAggregate
- added function convert_to_array() that converts anything to array
- before calling json_encode we convert the argument to array
Big thanks to the developers who put effort into this improvement:
* Jonathan Robson <jonathan.robson@remote-learner.net>
* Jonathan Harker <jonathan@catalyst.net.nz>
This is a reimplementation of the multi-language support for the
custom_menu class. The menu items now accept the forth optional
parameter with the explicit list of languages the item is valid for. If
no languages are listed, the item is valid for any language. The caller
of the custom_menu constructor must provide the user's current language
or null if the multi-language should not be supported (all items are
valid for any language then, regardless the definition).
See the attached unit tests for the examples of usage.
This improves custom_menu constructor by dropping support for useless
$text parameter and replacing it with the menu definition. This makes
custom_menu instance independent on the place where the menu is defined
($CFG->custommenuitems) and can be unit-tested. Also, multiple instances
of custom_menu can be instantiated now which can be interesting in the
future.