Changes Report
Ability to exclude some locations from the Location Picker
![]()
The Location Picker Macro exposes an additional parameter exclusions allowing to exclude some locations (nested pages) from the list of locations that can be picked.
HTML 5 support in the WYSIWYG editor
![]()
The WYSIWYG Editor Module now uses HTML 5. See below for additional notes on backwards-compatibility. Not all HTML 5 features are supported, yet, the main new feature is support for parsing figures with captions. There should be a closer match between the HTML code in the editor and the HTML code in view mode but this might require adaptations for WYSIWYG editors and extensions extending them. This has also consequences for renderers that should handle figure and figure caption events not just in macro contexts (due to the figure macro).
(X)HTML 5 parsers added
![]()
Two new parsers for HTML 5 and XHTML 5 have been added to the XWiki rendering framework. They are largely based on the existing parser for XHTML 1.0 but support <figure> and <figcaption> tags. The former is based on the latter, but passes the given HTML code to the HTML cleaner first to obtain valid XML. These parsers are the basis for the new HTML 5 support in the WYSIWYG editor but can also be used in other contexts to convert HTML 5 to XDOM, e.g., in the context of an importer.
HTML 5 support in the rendered differences
![]()
The rendered differences between different revisions of a page now correctly display HTML 5 tags like figures and captions for changed content. This is in particular relevant with the new figure caption support but can also be good for custom HTML that includes tags not supported by HTML 4.
Localization API
![]()
We added two methods to the LocalizationManager:
- a helper method to search for a given translation key in the specified locale and to render it as plain text:
String getTranslationPlain(String key, Locale locale, Object... parameters) - a method to get the configured default locale:
Locale getDefaultLocale()
The first one was already available in the script service (under a different name: $services.localization.render()), so we exposed the second one too:
$services.localization.defaultLocaleCheckout the Localization Module documentation for more information.
Changes to "Own Event" and "System Event" notification filters
![]()
The "Own Event" and "System Event" notification filters are not blocking anymore the notifications that target explicitly the user. See the Notification Application documentation for more information about these filters.
Disabling lightbox for specific content
![]()
The image lightbox feature can now be disabled for an element and its children by adding xwiki-lightbox=false to the parent of the excluded content. This can be used by macros or extensions rendering images as part of the page content so that these images don't appear in the lightbox view.
Automatically generated anchors for images
![]()
XWiki now automatically generates anchors (ids) for images as it does for heading. This makes it easier to, e.g., reference images using the Reference Macro. Automatically generated ids can be overridden by manually setting the image's id parameter.
Display image popover at cursor location

The image popover will be now displayed at cursor location, to make it more visible and accessible.
Change the default font size used by the Formula macro
![]()
It is now possible to set the default font size to be used by the formula macro using the configuration key macro.formula.defaultFontSize. See the formula macro documentation to learn more.
Display image ids in the Lightbox

Users can now copy to the image ID (which is either manually added using the Id Macro, or automatically generated) to clipboard from the lightbox menu or from the image toolbar, without the need to open the lightbox. From the image toolbar, users can also get the direct link to the image, which can then be shared easily.
Contains queries for events
![]()
The SimpleEventQuery in the Event Stream Module now also support querying for text that is contained anywhere in a field.
Live Data events
![]()
While Live Data always triggered some events in the browser, they were so far only usable internally as they were triggered on a detached element. This has been fixed and a new instanceCreated event has been added that is triggered just after a new instance has been created.
Live Data extensions
![]()
A new JavaScript API has been added to Live Data that allows adding custom panels to extend to functionality of the Live Data Macro.
Propose not yet installed macros


It's now possible for an admin to install and use a macro directly in the WYSIWYG macros picker. A list of not yet installed compatible macros is proposed at the end to improve discoverability. Note that in the future it'll be proposed to all users (even non-admins) for increased discoverability. Non-admins users will see a message asking them to contact an administrator to install the needed macro.
Block not allowed macro install
![]()
The Install button is disabled for user who don't have the right to install a macro in the WYSIWYG macro picker.
Temporary Resource Script Service
![]()
A new script service is available to check if a temporary resource exists and to get its URL:
{{velocity}}
#set ($tempResourceReference = ...)
#if ($services.resource.temporary.exists($tempResourceReference))
[[Download>>path:$services.resource.temporary.getURL($tempResourceReference)]]
#end
{{/velocity}}Global Job Runner JavaScript Module
![]()
The xwiki-job-runner JavaScript module has been published in the global RequireJS configuration which means it can now be used directly without specifying its path:
require(['xwiki-job-runner'], function(JobRunner) {
...
}See the Job Module documentation for more information.
Block not allowed macro install
![]()
The Install button is disabled for user who don't have the right to install a macro in the WYSIWYG macro picker.
Mimetype provided for attachments in Document Tree response
![]()
The mimetype is now provided for attachments when calling XWiki.Document to retrieve the document tree hierarchy.