[ https://issues.apache.org/jira/browse/FLEX-33409?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13584365#comment-13584365 ]
Carol Frampton commented on FLEX-33409: --------------------------------------- The textFlow above can be replaced with this simpler one. private const textFLowXML:XML = <TextFlow xmlns="http://ns.adobe.com/textLayout/2008"> <span> Second span. This text has a hypen in the next long word long word LongWordWithAHyphen. Make sure the hypen is shown and there is a 3rd line! If you can see it, then start typing here -></span> </TextFlow>; Using the above code, click at the end of the displayed text to insert text, type a "1", and you will see the text displayed already looks incorrect. Then type a left arrow which demonstrates things are messed up internally. Error: Error #2160: The TextLine is INVALID and cannot be used to access the current state of the TextBlock. at flash.text.engine::TextBlock/findPreviousAtomBoundary() at flashx.textLayout.elements::ParagraphElement/findPreviousAtomBoundary()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/elements/ParagraphElement.as:480] at flashx.textLayout.utils::NavigationUtil$/previousAtomHelper()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/utils/NavigationUtil.as:70] at flashx.textLayout.utils::NavigationUtil$/doIncrement()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/utils/NavigationUtil.as:58] at flashx.textLayout.utils::NavigationUtil$/previousAtomPosition()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/utils/NavigationUtil.as:81] at flashx.textLayout.utils::NavigationUtil$/moveBackwardHelper()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/utils/NavigationUtil.as:229] at flashx.textLayout.utils::NavigationUtil$/previousCharacter()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/utils/NavigationUtil.as:292] at flashx.textLayout.edit::SelectionManager/handleLeftArrow()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/edit/SelectionManager.as:1564] at flashx.textLayout.edit::SelectionManager/handleKeyEvent()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/edit/SelectionManager.as:1731] at flashx.textLayout.edit::SelectionManager/keyDownHandler()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/edit/SelectionManager.as:1794] at flashx.textLayout.edit::EditManager/keyDownHandler()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/edit/EditManager.as:288] at flashx.textLayout.container::ContainerController/keyDownHandler()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/container/ContainerController.as:2529] at flashx.textLayout.container::TextContainerManager/keyDownHandler()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/textLayout/3.0.33/src/flashx/textLayout/container/TextContainerManager.as:1889] at spark.components.supportClasses::RichEditableTextContainerManager/keyDownHandler()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/spark/src/spark/components/supportClasses/RichEditableTextContainerManager.as:665] at flash.events::EventDispatcher/dispatchEventFunction() at flash.events::EventDispatcher/dispatchEvent() at mx.core::UIComponent/dispatchEvent()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/framework/src/mx/core/UIComponent.as:13160] at mx.managers::SystemManager/keyDownHandler()[/Users/cframpto/dev/flex/sdk/branches/develop/frameworks/projects/framework/src/mx/managers/SystemManager.as:2889] If you start with an empty TextArea and paste this same text in it does not hyphenate and wraps LongWordWithAHyphen to the next line. > TLF crashes when hypens are shown in a multi span textFlow > ---------------------------------------------------------- > > Key: FLEX-33409 > URL: https://issues.apache.org/jira/browse/FLEX-33409 > Project: Apache Flex > Issue Type: Bug > Affects Versions: Adobe Flex SDK 4.6 (Release) > Environment: TLF editing > Reporter: Woodwing Developer > Priority: Blocker > Labels: TLF, crash, editing, hyphen, span, textflow > > When soft hyphens are used and shown, in a textFlow with 2 or more spans, TLF > crashes when typing. > Import the underlying text flow xml. Resize the text area until the hyphen is > visible. Then start typing AFTER the hypened word, also pressing the enter > key. TLF crashes. > Sample textFLow (if the soft hyphen is not show, insert a new one in the > appropriate word): > <TextFlow color="#000000" fontSize="12" lineHeight="14" paddingBottom="0" > paddingLeft="10" paddingRight="10" paddingTop="0" > whiteSpaceCollapse="preserve" version="2.0.0" > xmlns="http://ns.adobe.com/textLayout/2008"> > <p> > <span backgroundColor="#ffffff" textDecoration="underline">First > Span</span> > <span backgroundColor="#ffffff" textDecoration="none"> Second span. > This text has a hypen in the next long word LongWordWithAHyphen. Make sure > the hypen is shown! Then start typing and pressing enter till TLF crashes > (should happen fast enough)</span> > </p> > </TextFlow> > It seems that the textLine is damaged but the text engine fails to recompose > the line properly. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira