In localizing your demo code for a RichTextBox I noticed some size mode-related inconsistencies in icon placements in the various sorts of buttons:
In Size=large, generally the icon appears above the button text. In the split button the icon is centered over and partially obscures the text. Unacceptable!
In Size=medium, generally the icon appears to the left of the text. In the Split button it appears below the text. Either is fine but should be consistent.
Also, when Size=medium and icon beside text, in all buttons I would like to see more spacing between the icon and the text; there seems to be virtually none.
A reference in DocumentFragment to RadDocument (CopySource property) can cause a memory after copy-paste between RadDocument.
Workaround:
public static bool ReleaseClipboardExReferences(
RadDocument document)
{
dynamic clipboardEx = new DynamicProxyObject(typeof(ClipboardEx));
if (clipboardEx.documentClipboardData?.CopySource is DynamicProxyObject copySource
&& object.ReferenceEquals(copySource.Instance, document))
{
clipboardEx.documentClipboardData = null;
return true;
}
if (clipboardEx.CopiedDocumentFragment?.Fragment?.CopySource is DynamicProxyObject fragmentCopySource
&& object.ReferenceEquals(fragmentCopySource.Instance, document))
{
clipboardEx.CopiedDocumentFragment = null;
return true;
}
return false;
}
private bool SetLocation(Point location)
{
if (this.HorizontalOffset != location.X || this.VerticalOffset != location.Y)
{
this.HorizontalOffset = location.X;
this.VerticalOffset = location.Y;
return true;
}
// added the following 5 lines to trigger the popup to recalculate it's location
else
{
this.VerticalOffset++;
this.VerticalOffset--;
}
return false;
}When the copied document fragment is replaced during paste within a single RadDocument:
ClipboardEx.SetDocument(new DocumentFragment(doc));Ordered list are not pasted correctly.
Workaround:
Bypass paste and use the InsertFragment API
this.radRichTextBox.InsertFragment(new DocumentFragment(doc)); e.Cancel = true;
Use the attached project to reproduce:
- Click the first button so the image is changed
- Click the second button and examine the exported HTML
Expected: the Uri is exported
Actual: the Uri is not exported.
Workaround:
p.Inlines.AddAfter(image, image2);
When the MEF catalog of RadRichTextBox is predefined, the PasteOptionsPopup is not automatically loaded and causes NullReferenceException in the presenter when the users press Ctrl or Esc.
Workaround: Add typeof(PasteOptionsPopup) to the catalog.
The document styles are not respected because of wrongly imported custom style name after copy-paste from MS Word and exported to HTML.
Workaround: avoid using styles with braces in their name.
To reproduce:
- Select several words by holding the control key.
- Paste some text.
Result: the first word is replaced, the other are deleted
Expected: the text should be pasted in all selected places
Workaround:
private void RadRichTextBox_CommandExecuting(object sender, Telerik.Windows.Documents.RichTextBoxCommands.CommandExecutingEventArgs e)