Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -31,9 +31,20 @@ public MudCodeInput()
private readonly ParameterState<T?> _theValue;
private readonly ParameterState<int> _count;

private bool _pendingSetValue;
private T? _pendingValue;
private async Task OnValueChanged()
{
await SetValueFromOutside(_theValue.Value);
_pendingValue = _theValue.Value;

if (_rendered)
{
await SetValueFromOutside(_pendingValue);
}
else
{
_pendingSetValue = true;
}
}

private async Task OnCountChanged()
Expand Down Expand Up @@ -270,15 +281,31 @@ public async Task FocusPrevious()
await _elementReferences[_lastFocusedIndex - 1].FocusAsync();
}

/// <summary>
///
/// </summary>
/// <inheritdoc />
protected override void OnInitialized()
{
base.OnInitialized();
SyncReferences();
}

private bool _rendered = false;
/// <inheritdoc />
protected override async Task OnAfterRenderAsync(bool firstRender)
{
await base.OnAfterRenderAsync(firstRender);

if (firstRender)
{
_rendered = true;
}

if (_pendingSetValue)
{
_pendingSetValue = false;
await SetValueFromOutside(_pendingValue);
}
}

private void SyncReferences()
{
_elementReferences.Clear();
Expand Down Expand Up @@ -316,6 +343,9 @@ public async Task SetValue()
/// <returns></returns>
public async Task SetValueFromOutside(T? value)
{
if (!_rendered)
return;

string? val = ConvertSet(value);
if (_count.Value < val?.Length)
{
Expand All @@ -324,6 +354,9 @@ public async Task SetValueFromOutside(T? value)
await _theValue.SetValueAsync(base.ConvertGet(val));
for (int i = 0; i < _count.Value; i++)
{
if (_elementReferences[i] == null)
continue;

if (i < val?.Length)
{
await _elementReferences[i].SetText(val[i].ToString());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

[DynamicDependency(nameof(OnStickClick))]
[DynamicDependency(nameof(SelectTimeFromStick))]
public MudDateTimePicker()

Check warning on line 21 in src/CodeBeam.MudBlazor.Extensions/Components/DateTimePicker/MudDateTimePicker.razor.cs

View workflow job for this annotation

GitHub Actions / build

Non-nullable field '_timeHourFormat' must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring the field as nullable.
{
_dotNetReferenceLazy = new Lazy<DotNetObjectReference<MudDateTimePicker<T>>>(CreateDotNetObjectReference);
}
Expand Down Expand Up @@ -339,12 +339,12 @@

if (current?.Date == day.Date)
return b.AddClass("mud-selected")
.AddClass($"mud-theme-{Color.ToStringFast(true)}")
.AddClass($"mud-theme-{Color.ToString().ToLowerInvariant()}")
.Build();

if (day.Date == TimeProvider.GetLocalNow().Date)
return b.AddClass("mud-current mud-button-outlined")
.AddClass($"mud-button-outlined-{Color.ToStringFast(true)} mud-{Color.ToStringFast(true)}-text")
.AddClass($"mud-button-outlined-{Color.ToString().ToLowerInvariant()} mud-{Color.ToString().ToLowerInvariant()}-text")
.Build();

return b.Build();
Expand Down Expand Up @@ -711,12 +711,12 @@

if (h == value)
{
return $"mud-clock-number mud-theme-{Color.ToStringFast(true)}";
return $"mud-clock-number mud-theme-{Color.ToString().ToLowerInvariant()}";
}
}
else if (CurrentView == OpenTo.Minutes && _timeSet.Minute == value)
{
return $"mud-clock-number mud-theme-{Color.ToStringFast(true)}";
return $"mud-clock-number mud-theme-{Color.ToString().ToLowerInvariant()}";
}

return "mud-clock-number";
Expand All @@ -725,21 +725,21 @@
private string GetClockPointerColor()
{
return PointerMoving
? $"mud-picker-time-clock-pointer mud-{Color.ToStringFast(true)}"
: $"mud-picker-time-clock-pointer mud-picker-time-clock-pointer-animation mud-{Color.ToStringFast(true)}";
? $"mud-picker-time-clock-pointer mud-{Color.ToString().ToLowerInvariant()}"
: $"mud-picker-time-clock-pointer mud-picker-time-clock-pointer-animation mud-{Color.ToString().ToLowerInvariant()}";
}

private string GetClockPinColor()
{
return $"mud-picker-time-clock-pin mud-{Color.ToStringFast(true)}";
return $"mud-picker-time-clock-pin mud-{Color.ToString().ToLowerInvariant()}";
}

private string GetClockPointerThumbColor()
{
var deg = GetDeg();
return deg % 30 == 0
? $"mud-picker-time-clock-pointer-thumb mud-onclock-text mud-onclock-primary mud-{Color.ToStringFast(true)}"
: $"mud-picker-time-clock-pointer-thumb mud-onclock-minute mud-{Color.ToStringFast(true)}-text";
? $"mud-picker-time-clock-pointer-thumb mud-onclock-text mud-onclock-primary mud-{Color.ToString().ToLowerInvariant()}"
: $"mud-picker-time-clock-pointer-thumb mud-onclock-minute mud-{Color.ToString().ToLowerInvariant()}-text";
}

private static string GetTransform(double angle, double radius, double offsetX, double offsetY)
Expand Down
Loading