Fix floating embedding icon when voice input is hidden

This commit is contained in:
Thorsten Sommer committed 2026-09-13 15:24:21 +02:00
1 parent 358c161e7a
commit f429425a81
2 files changed
+56 -48

No files matched your search

@@ -1,22 +1,32 @@
@namespace AIStudio.Components
@inherits MSGComponentBase
@*
The toolbar belongs to this component, not to the places which use it: MudToolBar keeps its
minimum height even when empty. Left outside, it reserved space in the navigation bar while
this component rendered nothing at all, which made the neighboring items float above the
bottom edge.
*@
@if (this.ShouldRenderVoiceRecording)
{
<MudTooltip Text="@this.Tooltip">
@if (this.isTranscribing || this.isPreparing)
{
<MudProgressCircular Size="Size.Small" Indeterminate="true" Color="Color.Primary"/>
}
else
{
<MudToggleIconButton Toggled="@this.isRecording"
ToggledChanged="@this.OnRecordingToggled"
Icon="@Icons.Material.Filled.Mic"
ToggledIcon="@Icons.Material.Filled.Stop"
Disabled="@(!this.IsVoiceRecordingAvailable)"
Color="Color.Primary"
ToggledColor="Color.Error"/>
}
</MudTooltip>
<MudStack AlignItems="AlignItems.Center">
<MudToolBar WrapContent="true">
<MudTooltip Text="@this.Tooltip">
@if (this.isTranscribing || this.isPreparing)
{
<MudProgressCircular Size="Size.Small" Indeterminate="true" Color="Color.Primary"/>
}
else
{
<MudToggleIconButton Toggled="@this.isRecording"
ToggledChanged="@this.OnRecordingToggled"
Icon="@Icons.Material.Filled.Mic"
ToggledIcon="@Icons.Material.Filled.Stop"
Disabled="@(!this.IsVoiceRecordingAvailable)"
Color="Color.Primary"
ToggledColor="Color.Error"/>
}
</MudTooltip>
</MudToolBar>
</MudStack>
}
+30 -32
View File
@@ -25,20 +25,19 @@
<MudSpacer/>
@if (this.showEmbeddingStatusIcon)
{
<MudNavMenu>
<MudTooltip Text="@this.EmbeddingNavigationTooltip" Placement="Placement.Right">
<MudNavLink Href="@this.embeddingItem.Path" Match="@(this.embeddingItem.MatchAll ? NavLinkMatch.All : NavLinkMatch.Prefix)" Icon="@this.embeddingItem.Icon" Style="@this.embeddingItem.SetColorStyle(this.SettingsManager)" Class="custom-icon-color">
@T("Data sync")
</MudNavLink>
</MudTooltip>
</MudNavMenu>
}
<MudStack AlignItems="AlignItems.Center" Class="pb-2">
<MudToolBar WrapContent="true">
<VoiceRecorder />
</MudToolBar>
@* The bottom area carries the gap to the window edge once, for whichever of its items are shown: *@
<MudStack Spacing="0" Class="pb-2">
@if (this.showEmbeddingStatusIcon)
{
<MudNavMenu>
<MudTooltip Text="@this.EmbeddingNavigationTooltip" Placement="Placement.Right">
<MudNavLink Href="@this.embeddingItem.Path" Match="@(this.embeddingItem.MatchAll ? NavLinkMatch.All : NavLinkMatch.Prefix)" Icon="@this.embeddingItem.Icon" Style="@this.embeddingItem.SetColorStyle(this.SettingsManager)" Class="custom-icon-color">
@T("Data sync")
</MudNavLink>
</MudTooltip>
</MudNavMenu>
}
<VoiceRecorder />
</MudStack>
</MudDrawer>
</MudDrawerContainer>
@@ -64,25 +63,24 @@
<MudSpacer/>
@if (this.showEmbeddingStatusIcon)
{
<MudNavMenu>
@if (this.SettingsManager.ConfigurationData.App.NavigationBehavior is NavBehavior.NEVER_EXPAND_USE_TOOLTIPS)
{
<MudTooltip Text="@this.EmbeddingNavigationTooltip" Placement="Placement.Right">
@* The bottom area carries the gap to the window edge once, for whichever of its items are shown: *@
<MudStack Spacing="0" Class="pb-2">
@if (this.showEmbeddingStatusIcon)
{
<MudNavMenu>
@if (this.SettingsManager.ConfigurationData.App.NavigationBehavior is NavBehavior.NEVER_EXPAND_USE_TOOLTIPS)
{
<MudTooltip Text="@this.EmbeddingNavigationTooltip" Placement="Placement.Right">
<MudNavLink Href="@this.embeddingItem.Path" Match="@(this.embeddingItem.MatchAll ? NavLinkMatch.All : NavLinkMatch.Prefix)" Icon="@this.embeddingItem.Icon" Style="@this.embeddingItem.SetColorStyle(this.SettingsManager)" Class="custom-icon-color"/>
</MudTooltip>
}
else
{
<MudNavLink Href="@this.embeddingItem.Path" Match="@(this.embeddingItem.MatchAll ? NavLinkMatch.All : NavLinkMatch.Prefix)" Icon="@this.embeddingItem.Icon" Style="@this.embeddingItem.SetColorStyle(this.SettingsManager)" Class="custom-icon-color"/>
</MudTooltip>
}
else
{
<MudNavLink Href="@this.embeddingItem.Path" Match="@(this.embeddingItem.MatchAll ? NavLinkMatch.All : NavLinkMatch.Prefix)" Icon="@this.embeddingItem.Icon" Style="@this.embeddingItem.SetColorStyle(this.SettingsManager)" Class="custom-icon-color"/>
}
</MudNavMenu>
}
<MudStack AlignItems="AlignItems.Center" Class="pb-2">
<MudToolBar WrapContent="true">
<VoiceRecorder />
</MudToolBar>
}
</MudNavMenu>
}
<VoiceRecorder />
</MudStack>
</MudPaper>
}