Completed
Last Updated: 26 Oct 2018 11:32 by ADMIN
Created by: Rick
Comments: 4
Category: RichTextBox
Type: Bug Report
2
Add the following code to an application with a RadRichTextBox in it:

for (var i = 0; i < 1000; i++)
{
    var doc = radRichTextBox.Document.CreateDeepCopy();
}

If your document does not contain any lists it behaves as expected: memory usage increases until the next GC when it is collected. If there are lists in your document the RadDocument instances created by CreateDeepCopy are never collected and your app will run out of memory.

Fix available in LIB Version 2018.3.1029.
Completed
Last Updated: 25 Oct 2018 14:24 by ADMIN
When a separate file for setting the xaml styles is used and then this file is merged in App.xaml the style cannot be found. 
As a workaround merge the resources directly in the App.xaml.

Fix available in LIB Version 2018.3.1029.
Completed
Last Updated: 16 Oct 2018 08:18 by ADMIN
In Material theme, RadRichTextBox should be enclosed by border.
In Fluent theme, RadRichTextBox should have shadow.

The problems are more visible when RadRichTextBox.LayoutMode is Flow, but the border/shadow should also be present in Paged layout mode.

Fix available in R3 2018 SP1 release.
Completed
Last Updated: 26 Sep 2018 06:02 by ADMIN
When spell checking dialog is used for spell checking, and the user proceeds to the next word (either by changing with a suggestion, ignoring, etc.), the view port is not scrolled to include the next currently spell checked word.

Fix available in R3 2018 Official Release.
Completed
Last Updated: 25 Sep 2018 13:29 by ADMIN
When the first table cell for a table row is vertically merged, the height of the row is exported improperly - instead the height of the row containing the beginning of the merged cell is exported.
Completed
Last Updated: 24 Sep 2018 13:53 by ADMIN
When RTF documents are imported simultaneously in different threads, sometimes ArgumentException with message "An item with the same key has already been added" is thrown with the following call stack:

at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
   at System.Collections.Generic.Dictionary`2.Add(TKey key, TValue value)
   at Telerik.Windows.Documents.FormatProviders.ReplaceStyleNameHandler.Add(String displayName, String name)
   at Telerik.Windows.Documents.FormatProviders.ReplaceStyleNameHandler.InitializeStyleDisplayNameToStyleNameDictionary()
   at Telerik.Windows.Documents.FormatProviders.ReplaceStyleNameHandler.get_StyleDisplayNameToStyleName()
   at Telerik.Windows.Documents.FormatProviders.ReplaceStyleNameHandler.TryGetStyleNamesByStyleName(String displayName, RadDocumentDefaultStyleInfo& defaultStyleInfo)
   at Telerik.Windows.Documents.FormatProviders.ReplaceStyleNameHandler.Replace(ReplaceStyleNameContext context)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfStyleImporter.DoVisitText(RtfText text)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfElementIteratorBase.VisitElement(RtfElement element, Boolean recursive)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfElementIteratorBase.VisitGroupChildren(RtfGroup group, Boolean recursive)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfStyleImporter.ImportStyleGroup(RtfGroup group)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfStylesTable.FillStyle(RtfGroup group, StyleType type, Boolean isDefault)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfStylesTable.DoVisitGroup(RtfGroup group)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfElementIteratorBase.VisitElement(RtfElement element, Boolean recursive)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfElementIteratorBase.VisitGroupChildren(RtfGroup group, Boolean recursive)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfStylesTable.ReadTable(RtfGroup group, RtfImportContext context)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfHandlers.RtfGroupHandlers.StylesTableHandler(RtfGroup group, RtfImportContext context)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfDocumentImporter.DoVisitGroup(RtfGroup group)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfElementIteratorBase.VisitElement(RtfElement element, Boolean recursive)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfElementIteratorBase.VisitGroupChildren(RtfGroup group, Boolean recursive)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfDocumentImporter.ImportRoot(RtfGroup rtfGroup)
   at Telerik.Windows.Documents.FormatProviders.Rtf.Import.RtfDocumentImporter.Import(Stream input, RtfImportSettings settings)
   at Telerik.Windows.Documents.FormatProviders.Rtf.RtfFormatProvider.Import(Stream input)
   at Telerik.Windows.Documents.FormatProviders.Rtf.RtfFormatProvider.Import(String input)

Fix available in LIB Version 2018.3.924.
Completed
Last Updated: 21 Sep 2018 12:40 by ADMIN
When the rtf document contains a table as the one below and the empty declaration is used in the following structure, the document cannot be imported:

{\fonttbl
{\f0 Verdana;}
{\f1 Times New Roman;}
{\f2 ;}
{\f3 Segoe UI;}}
Completed
Last Updated: 20 Aug 2018 11:49 by ADMIN
The exception is reproduced only with specific custom fonts and is thrown by the ComputeSubset() method of the GlyphTypeface class with the following message: "file does not conform to the expected file format specification". However, we can handle the exception and export the font data using the base class.

Available in LIB Version 2018.2.820.
Completed
Last Updated: 20 Aug 2018 08:16 by ADMIN
After performance investigation related to feedback item http://feedback.telerik.com/Project/143/Feedback/Details/171108 , one bottleneck was identified as redundant calls to internal methods for getting parent of a document element.

Available in LIB Version 2018.2.820.
Completed
Last Updated: 16 Aug 2018 13:17 by ADMIN
The pgMar element might be present but the margin information might be missing as shown below:
<w:pgMar w:header="720" w:footer="720" />
At the moment this overwrites the section margin information with 0. Instead the margins should remain as is.

Fix available in LIB Version 2018.2.820.
Completed
Last Updated: 02 Aug 2018 06:50 by ADMIN
A document contains a field in result mode different that the one specified in the export settings in the format providers (i.e. a field that need to be updated during the export), and this field is in a header/footer, and another header/footer contains a table with AutoFit to Window size. When this document is exported to docx or RTF, the table is exported with 0 width. The table is visualized splashed in RadRichTextBox, and MS Word behaves strangely and/or doesn't visualize the table at all.

The bug is regression in 2018 R1.

Workaround 1: Change the result mode of all fields in the headers/footers to match the one set in format provider export settings (Result by default) just prior the export.

Workaround 2: Set DocxFormatProvider.ExportSettings.FieldResultMode to null. For the default format provider used from the default Save command, use the following:
((DocxFormatProvider)DocumentFormatProvidersManager.GetProviderByExtension("docx")).ExportSettings = new DocxExportSettings() { FieldResultMode = null };

Fix available in LIB Version 2018.2.723.
Completed
Last Updated: 16 Jul 2018 13:40 by ADMIN
RadParagraphPropertiesDialog throws NullReferenceException when paragraphs with different type of indent (hanging + first line) are selected, and then alignment is applied through the dialog.

Steps to reproduce:
Variant 1:
- Insert three paragraphs (press Enter two times in a blank document).
- Using the document ruler (do not use the RadParagraphProperties dialog), modify first line indent on the first paragraph to some value, and handing indent of the second to some value.
- Select the two paragraphs and open Paragraph Properties dialog. (Note: can be reproduced more easily on first opening of the dialog).
- Change Indentation -> Left: value to 6 pt.
- Press OK.

NullReferenceException is thrown. 

Available in LIB Version 2017.3.1023.
Completed
Last Updated: 16 Jul 2018 12:34 by ADMIN
Characters like 🙋🏻 are not imported correctly and instead result in a series of question marks.

Fix available in LIB Version 2018.2.716.
Completed
Last Updated: 16 Jul 2018 10:39 by ADMIN
The RadNumericUpDown buttons are too small and the selected value is not visible. The issue is not reproducible in NoXaml.

Fix is available in LIB Version 2018.2.716.
Completed
Last Updated: 10 Jul 2018 08:23 by ADMIN
When a table in HTML document has width set to 0 (through an attribute or CSS style),  the table is imported with 0 width in the document model. This makes the content unreadable. 

Instead, such width should be treated as if width is not set at all - this way the layout will use only the widths set to the cells.

Workaround: Clear the PreferredWidth property if it is 0.
var tables = this.radRichTextBox.Document.EnumerateChildrenOfType<Table>();
foreach (var table in tables)
{
    if (table.PreferredWidth.Value == 0)
    {
        table.PreferredWidth = null;
    }
}

Fix available in LIB Version 2018.1.326.
Completed
Last Updated: 19 Jun 2018 13:51 by ADMIN
When selection is applied quick after format painter is clicked formatting is not applied.
Completed
Last Updated: 19 Jun 2018 13:49 by ADMIN
When copying the formatting using span to span selection, any formatting applied with a character style is lost. 
Completed
Last Updated: 15 Jun 2018 15:24 by Marc
If the empty run is defined with start-tag and end-tag the import is correct:

<w:p>
  <w:r></w:r>
</w:p>

However, if it is defined with empty-element tag, its parent Paragraph is not imported:

<w:p>
 <w:r/>
</w:p>

Fix available in R2 2018 SP1 release version.
Completed
Last Updated: 27 Apr 2018 12:24 by ADMIN
Undoing changes to words wrapped in annotation ranges throw InvalidCastExceptions as AnnotationRangeStarts are casted to AnnotationRangeEnd.

Steps to reproduce:
1. Add a bookmark to a word
2. Add a bookmark to the following word in the document
3. Use the find dialog to highlight those two words
4. Bold the text
5. Press Ctrl+Z to undo
Observed: Repeated InvalidCastException dialogs

Fix available in LIB Version 2018.1.430.
Completed
Last Updated: 16 Apr 2018 06:05 by ADMIN
The "Text Wrapping" string, used in the FloatingBlockPropertiesDialog lacks translations in Spanish and French. In the English and Turkish values, a space is missing between the words.

Fix available in LIB Version 2018.1.416.