diff --git a/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor b/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor
index 0d91fc61a8..584c77a62c 100644
--- a/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor
+++ b/src/Web/Avalonia.Web.Blazor/AvaloniaView.razor
@@ -1,4 +1,8 @@
? AdditionalAttributes { get; set; }
- protected override async Task OnAfterRenderAsync(bool firstRender)
+ protected override void OnAfterRender(bool firstRender)
{
if (firstRender)
{
@@ -290,8 +347,6 @@ namespace Avalonia.Web.Blazor
public void SetActive(bool active)
{
- Console.WriteLine($"focus input box. {active}");
-
_inputHelper.Clear();
if (active)
@@ -307,18 +362,14 @@ namespace Avalonia.Web.Blazor
public void SetCursorRect(Rect rect)
{
- Console.WriteLine("SetCursorRect");
}
public void SetOptions(TextInputOptionsQueryEventArgs options)
{
- Console.WriteLine("SetOptions");
}
public void Reset()
{
- Console.WriteLine("reset");
-
_inputHelper.Clear();
}
}
diff --git a/src/Web/Avalonia.Web.Blazor/Interop/InputHelperInterop.cs b/src/Web/Avalonia.Web.Blazor/Interop/InputHelperInterop.cs
index 71d76a5b17..6d71e0c48f 100644
--- a/src/Web/Avalonia.Web.Blazor/Interop/InputHelperInterop.cs
+++ b/src/Web/Avalonia.Web.Blazor/Interop/InputHelperInterop.cs
@@ -7,7 +7,6 @@ namespace Avalonia.Web.Blazor.Interop
internal class InputHelperInterop : JSModuleInterop
{
private const string JsFilename = "./_content/Avalonia.Web.Blazor/InputHelper.js";
- private const string InitSymbol = "InputHelper.init";
private const string ClearSymbol = "InputHelper.clear";
private const string FocusSymbol = "InputHelper.focus";
private const string SetCursorSymbol = "InputHelper.setCursor";
diff --git a/src/Web/Avalonia.Web.Blazor/RazorViewTopLevelImpl.cs b/src/Web/Avalonia.Web.Blazor/RazorViewTopLevelImpl.cs
index 9a264c0698..04afe150b6 100644
--- a/src/Web/Avalonia.Web.Blazor/RazorViewTopLevelImpl.cs
+++ b/src/Web/Avalonia.Web.Blazor/RazorViewTopLevelImpl.cs
@@ -18,10 +18,12 @@ namespace Avalonia.Web.Blazor
private IInputRoot? _inputRoot;
private Stopwatch _sw = Stopwatch.StartNew();
private readonly ITextInputMethodImpl _textInputMethod;
+ private readonly TouchDevice _touchDevice;
public RazorViewTopLevelImpl(ITextInputMethodImpl textInputMethod)
{
_textInputMethod = textInputMethod;
+ _touchDevice = new TouchDevice();
}
public ulong Timestamp => (ulong)_sw.ElapsedMilliseconds;
@@ -57,6 +59,14 @@ namespace Avalonia.Web.Blazor
}
}
+ public void RawTouchEvent(RawPointerEventType type, Point p, RawInputModifiers modifiers, long touchPointId)
+ {
+ if (_inputRoot is { })
+ {
+ Input.Invoke(new RawTouchEventArgs(_touchDevice, Timestamp, _inputRoot, type, p, modifiers, touchPointId));
+ }
+ }
+
public void RawMouseEvent(RawPointerEventType type, Point p, RawInputModifiers modifiers)
{
if (_inputRoot is { })