While clicking to position the caret at the beginning of a paragraph, the caret is jumping to the previous document position and returning back to the desired one. Fix available in LIB Version 2017.2.627.
If content with DocumentLists and ListStyles respectively, is copied from Microsoft Word and then pasted in RadRichTextBox, ArgumentNullException is thrown while the lists from the DocumentFragment are fixed (FixListStyles() method). The exception is caught and thus, the content from the clipboard is not inserted during the copy/paste operation. In some cases, when the content is pasted again, the content is pasted. Workaround: Replace the fragment in the clipboard with one that is already "fixed". See the attached MainWindow.cs.txt
NullReferenceException is thrown when measuring a document with floating image as the first element on a second page. The same problem can be observed during copy/paste of content, but with slightly different call stack: System.NullReferenceException: Object reference not set to an instance of an object. at Telerik.Windows.Documents.Layout.LayoutBox.get_ValidParent() at Telerik.Windows.Documents.DocumentPosition.GetCurrentParagraphBox() at Telerik.Windows.Controls.RichTextBoxUI.RadRichTextBoxRulerController.GetCurrentParagraphBox() at Telerik.Windows.Controls.RichTextBoxUI.RadRichTextBoxRulerController.AssociatedRichTextBox_LayoutUpdated(Object sender, EventArgs e) Depending on the document structure, an InvalidOperationException with message "Removed LayoutBox should not be split. Such operation will result in invalid document structure." could be also thrown. A sample call stack is: Telerik.Windows.Documents.Layout.LayoutBox.CreateNewFragment(Telerik.Windows.Documents.Layout.LayoutBox currentLineStartNode) Telerik.Windows.Documents.Layout.TableCellLayoutBox.MeasureOverrideInternal(Telerik.Windows.Documents.Model.SizeF availableSize) Telerik.Windows.Documents.Layout.TableCellLayoutBox.Telerik.Windows.Documents.Model.IBlockContainerLayoutBox.CallMeasureOverrideInternal(Telerik.Windows.Documents.Model.SizeF availableSize) Telerik.Windows.Documents.Layout.BlockContainerLayoutHelper.CheckAllFloatingBlocksAreIncluded(Telerik.Windows.Documents.Model.SizeF availableSize) Fix available in LIB Version 2018.1.312.
If you highlight a section of text and apply styles to it like bold/italic/underline and place your cursor at the end of that text the Clear All Formatting button does not work. If you turn on those styles and then type some text and place your cursor at the end of that text it does work. The difference in the XAML is that in the first case the styles are only on the span of text itself while in the second the styles are on the span and the paragraph. I have attached a GIF of steps to reproduce and the XAML from the editor before clicking the Clear All Formatting button.
Some fonts doesn't include bold and italic font styles. Currently text formatted with such fonts and with applied bold or italic formatting is exported without the italic or bold effect. Instead, the default typeface can be exported, and additional transformation could be applied to the letters itself - e.g. skew transform for the italic.
When document with large images (the original image cannot fit on the page without resizing) are exported to PDF, the PDF document is visualized distorted by Adobe Reader. The issue is regression, introduced in 2017 R1 SP1. Workarounds: - Use images that can fit on the page. - Zoom RadRichTextBox to scale which allows the large images to fit fully on the page. The fix is available in LIB Version 2017.2.627.
The hyperlinks are not exported properly to DOCX, RTF and HTML format if the HTTP:// prefix is not added in the address when they were created. Steps to reproduce: 1. Open RadRichTextBox and click on Insert tab -> Hyperlink 2. In address field type: www.telerik.com 3. Export the file to DOCX, RTF or HTML format 4. Open the exported file and click on the hyperlink Observed result: The hyperlink is pointing to a local resource instead of opening the URL. As a workaround, the regex used to match a partial hyperlink could be further extended. If this regex succeeds in matching a partial hyperlink the HTTP:// prefix will be automatically added to the partial hyperlink. Here is example of how the regex should be accessed: (this.radRichTextBox.InsertHyperlinkDialog as RadInsertHyperlinkDialog).HyperlinkPattern
Implement hyphenation in RadRichTextBox for different languages.
Bullets of a list are exported with a character which is not proper for plain text. The indentation of the bullet is also not exported. As a workaround, the incorrect bullet character could be replaced with something more suitable. Here is an example: TxtFormatProvider textFormatProvider = new TxtFormatProvider(); exportedText = textFormatProvider.Export(this.radRichTextBox.Document); string newText = exportedText.Replace((char)61623, (char)8226);
The state of the button shows that the current paragraph is still in a list. The button state is updated after moving the caret using the mouse. Steps to reproduce: 1. Create a list 2. Enter some text in the first item 3. Hit enter twice Observed: The current paragraph is no longer part of a list but the list button remains active in the ribbon
Pasting HTML content causes RichTextBox to insert a paragraph break, even if the copied content did not include the end of the paragraph. Steps to reproduce: 1. Copy the first few words in a paragraph from Internet Explorer 2. Paste into the middle of a sentence in the RichTextBox Expected: The content is pasted inline Observed: The content is inserted, but a paragraph break is inserted after the content
In Windows 10 1709 Falls creators update there is an upgrade to Microsoft Edge, with which the copy from edge is changed: 1) no longer it is copied in "Rich Text Format" 2) the "HTML Format" data is formatted differently than before - different line separators and the whole html is placed into a single line (unlike before).
Implement built-in support for the Sogou Pinyin Input Method Editor. Sogou Pinyin is the most popular IME in China (above 80% of the users are using it). Currently RadRichTextBox doesn't support Sogou Pinyin IME out of the box, and the users have to manually implement it, as described in the "How to implement your own IME support?" ( https://docs.telerik.com/devtools/wpf/controls/radrichtextbox/ime-support#how-to-implement-your-own-ime-support ) help article and the CustomCaret (https://github.com/telerik/xaml-sdk/tree/master/RichTextBox/CustomCaret ) SDK example.
The parent of an already removed span cannot be found and a NullReferenceException is thrown while performing Undo. Also, multiple asserts are failing in Debug mode. The stack trace is: UnhandledException: Object reference not set to an instance of an object. UnhandledException: at Telerik.Windows.Documents.Layout.LayoutElement.SetParent(LayoutElement newParent) at Telerik.Windows.Documents.Layout.LayoutBox.EnsureParent() at Telerik.Windows.Documents.Layout.LayoutBox.get_Parent() at Telerik.Windows.Documents.Layout.LayoutBox.get_ValidParent() at Telerik.Windows.Documents.WordPositionHandler.GetParentHandler() at Telerik.Windows.Documents.DocumentPosition.GetCurrentSectionBox() at Telerik.Windows.Documents.UI.DocumentPrintLayoutPresenter.GetCurrentPage() at Telerik.Windows.Documents.UI.DocumentPrintLayoutPresenter.MeasureOverride(Size availableSize) at System.Windows.FrameworkElement.MeasureCore(Size availableSize)
Importing a document with block-level content controls from XAML causes them to become corrupt. If you scroll to a position in which the said control is only partially visible a NullReferenceException is thrown.
A possible workaround would be to initially save the document as a DOCX (just exporting it to DOCX will not fix the issue as the information is already corrupt).
Another way to reproduce this issue:
1. Create a new document and insert a Rich Text Content Control.
2. Save the document as a XAML file.
3. Reopen the XAML file.
4. Move the caret inside the Content Control.
5. Try to insert a new line by hitting Enter - no new line is added as the content control is marked as Inline Level after the import in step 3.
Case 2:
Create a document with TOC where the content control of the TOC contains some other inlines.
Add API for adding embedded file streams (a.k.a. file attachments) to the PDF file produced during the export to PDF.
Currently, ParagraphDefaultSpacingAfter and ParagraphDefaultSpacingBefore are not applied to paragraphs in tables. This should be changed for consistency with the rest of the document.