Improved single-input dialog (#665)
Build and Release / Read metadata (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-apple-darwin, osx-arm64, macos-latest, aarch64-apple-darwin, dmg updater) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-pc-windows-msvc.exe, win-arm64, windows-latest, aarch64-pc-windows-msvc, nsis updater) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-aarch64-unknown-linux-gnu, linux-arm64, ubuntu-22.04-arm, aarch64-unknown-linux-gnu, appimage deb updater) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-apple-darwin, osx-x64, macos-latest, x86_64-apple-darwin, dmg updater) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-pc-windows-msvc.exe, win-x64, windows-latest, x86_64-pc-windows-msvc, nsis updater) (push) Has been cancelled
Build and Release / Build app (${{ matrix.dotnet_runtime }}) (-x86_64-unknown-linux-gnu, linux-x64, ubuntu-22.04, x86_64-unknown-linux-gnu, appimage deb updater) (push) Has been cancelled
Build and Release / Prepare & create release (push) Has been cancelled
Build and Release / Publish release (push) Has been cancelled

This commit is contained in:
Thorsten Sommer authored and GitHub committed 2026-02-16 13:36:53 +01:00
1 parent 4562ed1c6a
commit 6e33c361dc
3 files changed
+29 -4

No files matched your search

@@ -1,11 +1,21 @@
@inherits MSGComponentBase
<MudDialog>
<MudDialog DefaultFocus="DefaultFocus.FirstChild">
<DialogContent>
<MudText Typo="Typo.body1">
@this.Message
</MudText>
<MudForm @ref="this.form" Class="mt-4">
<MudTextField T="string" @bind-Text="@this.UserInput" Variant="Variant.Outlined" AutoGrow="@false" Lines="1" Label="@this.GetInputHeaderText" AutoFocus="@true" UserAttributes="@USER_INPUT_ATTRIBUTES" Validation="@this.ValidateUserInput" />
<MudTextField T="string"
@bind-Text="@this.UserInput"
Variant="Variant.Outlined"
AutoGrow="@false"
Lines="1"
Label="@this.GetInputHeaderText"
AutoFocus="@true"
Immediate="@true"
OnKeyDown="@this.HandleUserInputKeyDown"
UserAttributes="@USER_INPUT_ATTRIBUTES"
Validation="@this.ValidateUserInput" />
</MudForm>
</DialogContent>
<DialogActions>
@@ -16,4 +26,4 @@
@this.ConfirmText
</MudButton>
</DialogActions>
</MudDialog>
</MudDialog>
@@ -1,6 +1,7 @@
using AIStudio.Components;
using Microsoft.AspNetCore.Components;
using Microsoft.AspNetCore.Components.Web;
namespace AIStudio.Dialogs;
@@ -57,6 +58,19 @@ public partial class SingleInputDialog : MSGComponentBase
private void Cancel() => this.MudDialog.Cancel();
private async Task HandleUserInputKeyDown(KeyboardEventArgs keyEvent)
{
var key = keyEvent.Key.ToLowerInvariant();
var code = keyEvent.Code.ToLowerInvariant();
if (key is not "enter" && code is not "enter" and not "numpadenter")
return;
if (keyEvent is { AltKey: true } or { CtrlKey: true } or { MetaKey: true })
return;
await this.Confirm();
}
private async Task Confirm()
{
await this.form.Validate();
@@ -65,4 +79,4 @@ public partial class SingleInputDialog : MSGComponentBase
this.MudDialog.Close(DialogResult.Ok(this.UserInput));
}
}
}