When the tag \sl (line spacing) has value 0, according to the specification it should be calculated according to the highest character in the line, which corresponds to the LineSpacingType single. Instead, in RTB this text disappears. Workaround: private void RadRichTextBox_DocumentChanged(object sender, EventArgs e) { foreach (var paragraph in this.radRichTextBox.Document.EnumerateChildrenOfType<Paragraph>()) { if (paragraph.LineSpacing == 0) { paragraph.LineSpacing = 1; } } } Fix available in LIB Version 2017.3.1211.
In Word and WordPad when hitting Ctrl+Down Arrow the cursor moves to the start of the next paragraph, until the last paragraph in the document where it moves to the end of the document. In Telerik editor it moves to the end of the paragraph. Steps to reproduce: - Load a document with multiple lines of text - Click near the top of the document and hit Ctrl+Down repeatedly Expected: The cursor moves down one paragraph at a time with the cursor at the start of the paragraph Actual: The cursor moves down one paragraph at a time with the cursor at the end of the paragraph Fix available in LIB Version 2017.3.1218.
When a document with NumPages field in header or footer is exported to PDF, NumPages field is evaluated wrongly - 1 for the first page, 2 for the second page, etc. The bug is regression, introduced with R3 2017 SP1 (2017_3_1018). Fix available in LIB Version 2017.3.1211.
Permission's range bracket disappears when it is positioned on the last line of the page.
Focus events (GotFocus, LostFocus) are raised inconsistently for RadRichTextBox, due to the internal translation of the focus to the Caret. Scenarios: 1. Clicking inside the control, when the focus is already inside the control, triggers LostFocus, GotFocus, LostFocus, GotFocus events. 2. Switching internal editors (headers/footers) raises GotFocus and LostFocus. 3. If the control is inherited and OnGotFocus/OnLostFocus are overriden, they are never called (despite OnGotFocus one time in the beginning The behavior is problematic, as this events are useful for custom validation scenarios.
Hyphenated words (like "good-looking", "dry-clean", "twenty-seven") should be passed to the spellchecker as a whole word. The current mechanism works well enough for English, however, for some languages and dictionaries it is necessary to pass the whole hyphenated word to the spellchecker.
When the first table row of each table (main as well as nested) has RepeatOnEveryPage set, the table header of the nested table overlaps the row on the new page.
Applying a list does not follow the specified indention of texts. When a paragraph has previously applied indentation, it should be preserved and added to the indentation of the bullet. In RadRichTextBox, the indentation of the paragraphs is not respected when applying a list style to it - only the setting of the list is applied.
Workaround is to use the Classes StylesExportMode.
Importing a document containing non-printable characters and other invalid for XML characters is possible. However, trying to export the same to XAML or DOCX causes System.ArgumentException raised by the XmlWriter. Workaround: Preprocess the input file and remove any characters not allowed in XML. Fix available in LIB Version 2018.3.1029.
When RadRichTextBox.DocumentInheritsDefaultStyleSettings is set to true, lists in the document are exported to HTML with Verdana font, instead of with the font applied in the UI. Workaround: Use modification of the document default styles ("Normal") instead of setting DocumentInheritsDefaultStyleSettings to true, e.g.: this.radRichTextBox.Document.StyleRepository["Normal"].SpanProperties.FontFamily = new FontFamily("Segoe UI");
When deleting all content (e.g. Select All [CTRL+A] + Delete [Del]) in the document, it would be convenient for the user to preserve all formatting (local span formatting + local paragraph formatting + style) applied on the last paragraph. This will ensure that the user will continue edit the document with last current font, font family, etc. If this operation is applied on an empty document, though, the styling of the single paragraph should be reset to the defaults for the document.
When a table is selected, the SelectionMiniToolbar should have a borders drop down menu which allows setting and editing of borders without entering the table borders dialog.
Case 1: Deleting selected part from the beginning of a comment range causes the caret to appear on the next document position than the expected one. Steps to reproduce: - Load a document with annotation ranges - Select from the start of the annotation ranges into the first word in the range - Hit delete/backspace or call Delete() on the API - The cursor will end up one position too far to the right after the content is removed Case 2: Annotation Ranges where SkipPositionBefore is set to false on the AnnotationRangeEnd cause caret position to jump when deleting content to the right of the Annotation Range. Steps to reproduce: - Open a document with Annotation Ranges where SkipPositionBefore is set to false on the AnnotationRangeEnd (the Document Protection sample in the demo app can be used) - Move the caret to the end of the range. - Hit the delete key Expected: The caret remains at the end of the AnnotationRange and content to the right is deleted. Actual: Content to the right is deleted but eventually the caret will jump to the right by one position and end up outside the Annotation Range.
List items with <li style="list-style-type:disc"> are not imported from HTML. The style works fine when it is added in the parent <ul> element. This behavior also breaks the copy/paste functionality when user copies bullet lists from a Google Document.
The crash is reproduced with a document with an image in the header and two columns in the body of the document.
When the content after the current caret position consists only of whitespaces, double-pressing the enter key should break out of the list because spaces after the caret should not be considered content in the current list item. Steps to reproduce: 1. Create a list 2. Type some text in the first line with a space after it 3. Move the cursor to the left before the space 4. Press enter twice The current paragraph is still in a list.
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
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.
The bullet should be aligned next to the paragraph unless another setting is explicitly applied.