Skip to content

Commit

Permalink
Fix OnFirstRender early invoked issue
Browse files Browse the repository at this point in the history
  • Loading branch information
BattlefieldDuck committed Mar 22, 2023
1 parent e45cdf5 commit f4aa83b
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 6 deletions.
4 changes: 1 addition & 3 deletions XtermBlazor/Xterm.razor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -168,8 +168,6 @@ protected override async Task OnAfterRenderAsync(bool firstRender)
await JSRuntime.InvokeVoidAsync($"{NAMESPACE_PREFIX}.registerTerminal", Id, ElementReference, Options, AddonIds);

IsRendered = true;

await OnFirstRender.InvokeAsync();
}
}

Expand Down Expand Up @@ -281,7 +279,7 @@ public ValueTask Resize(int columns, int rows)
/// <returns></returns>
public ValueTask<bool> HasSelection()
{
return JSRuntime.InvokeAsync<bool>($"{NAMESPACE_PREFIX}.hasSelection", Id);
return JSRuntime.InvokeAsync<bool>($"{NAMESPACE_PREFIX}.hasSelection", Id);
}

/// <summary>
Expand Down
2 changes: 1 addition & 1 deletion XtermBlazor/XtermBlazor.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
<PackageLicenseFile>LICENSE</PackageLicenseFile>
<Description>Brings xterm.js to Blazor</Description>
<PackageIcon>icon.png</PackageIcon>
<Version>1.8.0</Version>
<Version>1.8.1</Version>
<PackageTags>xterm, xterm-js, blazor, blazor-server, blazor-webassembly, blazor-wasm, xtermblazor</PackageTags>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
Expand Down
11 changes: 11 additions & 0 deletions XtermBlazor/XtermHandler.cs
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,17 @@ public static void DisposeTerminal(string id)
}
}

/// <summary>
/// Adds an event listener for when the terminal is rendered.
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[JSInvokable]
public static Task OnFirstRender(string id)
{
return GetTerminalById(id)?.OnFirstRender.InvokeAsync() ?? Task.CompletedTask;
}

/// <summary>
/// Adds an event listener for when a binary event fires. This is used to
/// enable non UTF-8 conformant binary messages to be sent to the backend.
Expand Down
3 changes: 3 additions & 0 deletions XtermBlazor/scripts/XtermBlazor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,9 @@ class XtermBlazor {
addons: addons,
customKeyEventHandler: undefined,
});

// Invoke OnFirstRender
DotNet.invokeMethodAsync(this._ASSEMBLY_NAME, 'OnFirstRender', id);
}

/**
Expand Down
4 changes: 2 additions & 2 deletions XtermBlazor/wwwroot/XtermBlazor.min.js

Large diffs are not rendered by default.

0 comments on commit f4aa83b

Please sign in to comment.