FontoXML 6.6.0 (October 7, 2016)

Resolved issues

  1. Inserting new topics under topichead or topicgroup elements now correctly inserts them relative to the topichead or topicgroup element.
  2. The focus border is no longer missing at the bottom of sheet frames when document view is enabled.
  3. XPath expressions now allow quotes in attribute values, following the XPath standard.
  4. Annotations which have been made invalid by making the start and end markers unbalanced can now be removed without crashing the editor.
  5. In specific situations, merging table cells could result in the content being placed in the wrong order. This has been resolved.
  6. Blocks with annotations inbetween them can be merged more easily.
  7. Clicking on text placeholders that are outside the document element no longer crashes the editor.
  8. The XPath or and union selector no longer use the sum of the specificity of their operands as their own specificity. The highest specificity among their component selectors is used instead.
  9. Attempts to lock or unlock a document which could not be loaded are now ignored. This prevents applications crashing on exit if some documents could not be loaded.
  10. Empty text nodes included in stencils are now processed correctly.
  11. The remove-default-text-container-on-exit experiment now correctly handles inserting a block before another block.
  12. FontoXML no longer removes xmlns="" namespace declarations from elements that include them, nor does it sometimes create duplicate namespace prefix declarations. Applications that previously worked around this issue by overriding the DocumentConnector can now remove these workarounds.
  13. Resolved an issue where callbacks passed to addDocumentsChangedCallback were never called.
  14. Reloading a document shown in the content view could cause errors. This has been resolved.
  15. When starting FontoXML with multiple initial documents and not using either DITA map management or the single document hierarchy, failure to load a single document will no longer show the error page, but instead show an error placeholder for the document.
  16. FontoXML no longer validates descendants of an xs:any content model with processContents="skip" if the element exists in the schema. Previously, any xs:any model was treated as processContents="lax".
  17. Converting lists containing processing instructions now correctly removes the last list item.
  18. FontoXML no longer stops with a timeout error if the configuration takes too long to load.
  19. An issue has been resolved where, when selecting the element directly after one ending with an inline object, Chrome would incorrectly mark text in the preceding element as selected.
  20. An issue was resolved where extending the selection backwards over certain element boundaries could result in a crash.
  21. The default configuration for unique id generation now correctly ignores elements that are not known in the schema.
  22. The set-cursor-before-node and set-cursor-after-node operations now place the cursor in the next valid position if the position directly next to the element is not a valid cursor position.
  23. A layout issue with placeholders for images that are being loaded or failed to load has been resolved.
  24. Structure view items with truncated titles are highlighted correctly again.
  25. The insertNodesHorizontal primitive no longer throws an error if used on nodes for which no content model is known in the schema.
  26. The unique ID generator no longer overwrites an explicitly set ID attribute if the attribute was introduced in the same operation that created the element.
  27. A bug has been resolved which under specific conditions could cause comment markers to become incorrectly ordered in the XML.
  28. A layout issue in Firefox affecting inline blocks such as conrefs has been resolved.
  29. The npm run build command no longer fails if an application’s packages folder contains files outside of its package subfolders.
  30. Validation of XML attributes containing distant dates (e.g., before 9999 BCE or after 9999CE) failed on Firefox. This has been resolved.
  31. Under some configurations, the asset browser could trigger duplicate calls to the CMS browse endpoint. This has been resolved.
  32. When opening the document browser, the initially selected element is now highlighted correctly.
  33. The toggle-inline-formatting operation will now also work if the selection is just inside the boundaries of an inline frame contained within the inline formatting element that should be removed.
  34. Selecting an element following a DITA table no longer highlights the table as part of the selection in Chrome.
  35. Closing the structure view will now correctly close any operations menu opened for its items.

New functionality

  1. It is now possible to use stencils and BlueprintRanges with the ReadOnlyBlueprint.
  2. BlueprintPosition now has fromRangeStart and fromRangeEnd named constructors to facilitate creating them from a given range.
  3. The new checkForCollapsedSelection transform can be used to disable an operation if the selection is (or is not) collapsed.
  4. Horizontal insert and all derivatives can now also insert processing instructions, comments and textnodes under elements that allow them.
  5. It is now possible to use XPath queries to restrict gaps in stencils.
  6. The simplified XPath 1.0 engine has been replaced by an XPath 3.1 engine. Not all functions are supported yet, please refer to the documentation for further details.
  7. A new transform setContextNodeIdToParentNodeOfContextNode is added to allow setting the contextNodeId property to the result of an XPath query.
  8. Schemas with local element definitions are now supported. The SDK portal’s schema converter will now correctly process such elements and FontoXML will use the appropriate definition for validation.
  9. FontoXML now has partial support for the xs:anyAttribute element in XML Schemas. If the element is present in the definition of an element, any attribute will be allowed on that element. Convert your schema using the latest release of the SDK portal to use this feature.
  10. The ui-multibutton directive now supports enabled and active attributes to override its state in the same way as a normal button.
  11. The new configureAsImageInFrame family can be used in cases where an image also contains descendants. It will appear as a frame containing the image followed by its descendants (if any).
  12. Lock management is now available for all applications instead of only DITA ones.
  13. FontoXML now highlights an exactly selected element with a yellow border. This helps to distinguish between a selection of the text inside an element and a selection containing the element itself.
  14. The new addCustomFunction API can be used to register javascript functions that can be invoked from XPath expressions. The old custom node test functionality will be deprecated in a future release.
  15. The selection set by the split-and-insert operation can now be influenced using a [{"bindTo": "selection" }] gap.
  16. The attributes editor now contains a dropdown, allowing access to the attributes of any ancestor of the element containing the selection. Additionally, the targeted element is now highlighted in the content view. The set-attributes-editor-scopeoperation can be used to temporarily override the element shown in the attributes editor.
  17. The related nodes widget now supports an appearance option, which can be set to “form” to make the widget resemble a form at the bottom of the sheet frame. This can be used together with the new configureAsOutOfOrderStructure family to show nodes in this area rather than in the main content.
  18. Toolbar components now support the new highlight-if-selector-matches-for-selection and visible-if-selector-matches-for-selectiondirectives. These can be used in place of highlight-if-cursor-in and visible-if-cursor in and support an XPath selector rather than a list of element names.
  19. XPath (tests) can now be used in the configuration file for the attributes editor (often implemented as “properties” panel) to match elements with.
  20. The name of the attribute used to determine the language used by the spell checker is now configurable.
  21. The new set-cursor-after-node operation works similar to set-cursor-before-node, but obviously places the cursor at the other side of the node.
  22. New operations are available to set the borders on any of the four sides of cells in the selection. New transforms have been added to easily expand a table selection to include every cell in the context row or column for any table standard.
  23. The new configureAsInlineImageInFrame family can be used in cases where an inline image also contains descendants. It will appear as an inline frame containing the image followed by its descendants (if any).
  24. The label of the primary button in the project browser is now configurable using the modalPrimaryButtonLabel step data property.
  25. The project browser can now be configured to automatically select a given topic in the project, and selection using the hierarchy in the project browser can now be disabled.
  26. The new set-state-to-disabled-if-image-is-not-loaded transform can be used to disable an operation if an image failed to load.
  27. The operation browser now supports maxWithForPreviewColumn and minWidthForPreviewColumn step data properties.

Other improvements

  1. Removing a reference with the popover now closes the popover.
  2. A short animation has been added to highlight replaced text when using the find and replace functionality.
  3. Using undo after replacing one or more results with the find and replace function now selects the affected text and scrolls it into view.
  4. Clicking the text highlighted by a comment would previously open the review panel, causing issues when attempting to otherwise interact with the text. The panel will now open only when a comment’s balloon icon is clicked.
  5. The default plain text clipboard configuration attempts to paste a single line of text as inline, instead of always creating a paragraph.
  6. The visualization of sheet frames has been improved to better take advantage of the available horizontal space on most screens.
  7. The spinner that appears while FontoXML is loading now appears earlier, while configuration and code are still loading.
  8. Hovering over the breadcrumbs bar now highlights the corresponding element in the document.
  9. The “insert special character” feature has been renamed to “insert symbol” to align with popular text editors.
  10. The structure view has been made faster for extremely large structures.
  11. The operation executed by the operation browser now shares its operation data with the operation that opens the operation browser.
  12. New applications created using the SDK portal included a duplicate entry for fontoxml-platform-base in the ADDONS array in schemaExperienceResolver.js. This is no longer the case for new applications. Existing applications can safely remove the duplicate entry.
  13. Performance has been improved when searching over large documents.
  14. When loading large documents, FontoXML could trigger “unresponsive script” warnings in Firefox.This release improves the loading process to help avoid these warnings in most cases.
  15. Some operations in the example configuration for the DITA task module have been improved to be more usable.
  16. The title of the operations browser no longer contains an extra ‘}’.
  17. The client requirements URL on the “FontoXML failed to load” error has been updated to point to the current version of our documentation.