FontoXML 6.8.0 (December 23, 2016)

Resolved issues

  1. The replace field in the find and replace form does not trim whitespace anymore.
  2. The paste from html functionality used to remove all whitespace between elements. It now only removes whitespace known to be erroneously inserted by the origin of the html on the clipboard.
  3. The attributes editor now always validates the correct value for an autocomplete input field.
  4. Loading and error placeholders are no longer shown for DITA topicrefs with the processing-role attribute set to “resource-only”. Previously, the placeholders for these documents would show up, but the document would appear to disappear after being loaded.
  5. The DITA anchorrefkeydef and topicsetref elements are not yet supported and are now ignored. Previous versions would incorrectly interpret these as normal topicref elements, and attempt to load the referenced topic. Additionally, topicrefs with a scope attribute value other than “local” are now ignored. A missing scope attribute is still interpreted as “local”.
  6. XPath predicates that depend on the length of the context sequence (such as [1][last()][. > 3]) now correctly propagate this length, yielding the expected results.
  7. Moving nodes into a gap of an aligned stencil now correctly moves positions within those nodes.
  8. Using the XPath name() function on processing instructions now correctly returns the PI’s target.
  9. The context menu no longer generates an error if it is opened for nodes that are not present in any document. This could occur briefly in some cases where the menu does not close immediately after the element is removed.
  10. The arrow up button used to return from a footnote under the sheet frame to its location in the text now also works correctly for elements configured as the inline anchor to structure with block or line families.
  11. The inline anchor to structure with block or line families no longer place the configured start and end delimiters around their content as well as their anchor. These properties now only apply to the anchor.
  12. Custom XPath tests can now return an empty sequence if their XPath type allows it (e.g, xs:integer?).
  13. The fonto:dita-class XPath function now correctly identifies elements without a DITA class attribute defined as not belonging to any DITA class.
  14. An issue caused the namespace information for MathML equations to become invalid in some configurations after editing. This has been resolved.
  15. A bug caused hotkeys to trigger the browser’s native behavior while a save operation was in progress. This has been resolved.
  16. Maps containing topicrefs which have a format attribute set to a value other than “dita” or “ditamap” are no longer loaded. Previously, FontoXML incorrectly assumed that these refer to DITA topics, and attempted to load them. Now, a warning is shown instead, informing the author that the targeted document can not be loaded.
  17. When inserting structures consisting of multiple nodes, normalization could fail to remove nodes that would be removed if the nodes were inserted one by one. This has been resolved.
  18. Using a number input in the attributes editor no longer results in the value always being marked as invalid.
  19. The development server no longer causes an error when browsing documents if the dev-cms/files folder does not contain any subfolders.
  20. DITA conrefs now work consistently in previews, not just when the relevant documents have already been loaded for editing.
  21. The releaseAllDocumentLocks action no longer corrupts the state of the operation using it.

New functionality

  1. Family configuration now supports an ignoredForNavigationNextToSelectorOrNodeSpec option, which can be used to control valid cursor positions in more detail.
  2. It is now possible to localize most user-facing text in a FontoXML application. Please refer to the documentation for further details on both creating localizations as well as enabling localization in your own packages.
  3. FontoXML now supports loading schema data on demand instead of always loading all schemas as startup. To take advantage of this, existing packages require some restructuring. Please refer to the upgrade instructions for details. The SDK portal will now generate all schema packages using the new structure.
  4. The cut and copy toolbar buttons can now be used to cut and copy directly, and no longer show the instruction modal. Unfortunately, due to browser limitations, pasting content still requires using the keyboard shortcut.
  5. The XPath functions starts-with and ends-with have been implemented.
  6. Table borders and the table (row) header can now be set individually of one another on tables that support them by using the following operations (and their contextual-counterparts): add-table-bordersremove-table-bordersadd-table-headerremove-table-headeradd-table-borders-and-table-headerremove-table-borders-and-table-headeradd-table-borders-remove-table-header and remove-table-borders-add-table-header.
  7. The new convert-element operation can be used to replace an element with a different nodeName, preserving its children.
  8. The XPath function fonto:get-column-index has been added to retrieve the table column index of a given table cell, taking column spans into account.
  9. The new transformReferenceToTargetSpec transform can be used to transform a reference to its target as part of an operation.
  10. The is operator is now available in XPath expressions.

Other improvements

  1. Any elements that are fully enclosed in the selection are now consistently highlighted in the document. This includes elements rendered out of order w.r.t. the XML, such as footnotes.
  2. XPath dynamic function calls have been implemented. This paves the way for XPath maps and arrays, to be added in a future release.
  3. The popovers for DITA cross-references have been improved to show more information about their target.
  4. Non-standard syntax for invoking xpath functions (fonto-*() and axisName::fonto:*()) has been deprecated, as well as the match* JavaScript helper functions for constructing selectors. We recommend always using standard XPath expressions where a selector is required. Using these deprecated features will cause warnings to be displayed in the browser console. Support for these constructions and API will be removed completely in the next release.
  5. The DITA image reference type now also recognizes elements specialized from the “topic/image” DITA class.
  6. The experiment controlled by the enable-experiment/ignore-positions-where-text-input-is-not-allowed configuration value has been enabled by default. The configuration value to control this experiment will be removed in a future release.

Online services

  1. The SDK portal now generates a message bundle template for localization with each new application or platform upgrade. Please refer to the documentation on how to use this file to create localizations for your application.