diff --git a/src/Avalonia.Controls/Documents/InlineUIContainer.cs b/src/Avalonia.Controls/Documents/InlineUIContainer.cs
index 5f08c23099..d632e5fea7 100644
--- a/src/Avalonia.Controls/Documents/InlineUIContainer.cs
+++ b/src/Avalonia.Controls/Documents/InlineUIContainer.cs
@@ -87,18 +87,7 @@ namespace Avalonia.Controls.Documents
public override TextRunProperties? Properties { get; }
- public override Size Size
- {
- get
- {
- if (!Control.IsMeasureValid)
- {
- Control.Measure(Size.Infinity);
- }
-
- return Control.DesiredSize;
- }
- }
+ public override Size Size => Control.DesiredSize;
public override double Baseline
{
@@ -118,7 +107,7 @@ namespace Avalonia.Controls.Documents
public override void Draw(DrawingContext drawingContext, Point origin)
{
- Control.Arrange(new Rect(origin, Size));
+ //noop
}
}
}
diff --git a/src/Avalonia.Controls/RichTextBlock.cs b/src/Avalonia.Controls/RichTextBlock.cs
index 3c902fa16a..906a038ec3 100644
--- a/src/Avalonia.Controls/RichTextBlock.cs
+++ b/src/Avalonia.Controls/RichTextBlock.cs
@@ -544,6 +544,32 @@ namespace Avalonia.Controls
}
}
+ protected override Size MeasureOverride(Size availableSize)
+ {
+ foreach (var child in VisualChildren)
+ {
+ if (child is Control control)
+ {
+ control.Measure(Size.Infinity);
+ }
+ }
+
+ return base.MeasureOverride(availableSize);
+ }
+
+ protected override Size ArrangeOverride(Size finalSize)
+ {
+ foreach (var child in VisualChildren)
+ {
+ if (child is Control control)
+ {
+ control.Arrange(new Rect(control.DesiredSize));
+ }
+ }
+
+ return base.ArrangeOverride(finalSize);
+ }
+
private string GetSelection()
{
if (!IsTextSelectionEnabled)
diff --git a/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor b/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor
index b501db16d3..4802191077 100644
--- a/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor
+++ b/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor
@@ -15,7 +15,8 @@
+ oncut="return false;"
+ autocapitalize="none"/>