diff --git a/src/AtomUI.Controls/GeneratedFiles/AtomUI.Generator/AtomUI.Generator.TokenResourceKeyGenerator/TokenResourceConst.g.cs b/src/AtomUI.Controls/GeneratedFiles/AtomUI.Generator/AtomUI.Generator.TokenResourceKeyGenerator/TokenResourceConst.g.cs
index 83515aa2d..2f5ddc4ef 100644
--- a/src/AtomUI.Controls/GeneratedFiles/AtomUI.Generator/AtomUI.Generator.TokenResourceKeyGenerator/TokenResourceConst.g.cs
+++ b/src/AtomUI.Controls/GeneratedFiles/AtomUI.Generator/AtomUI.Generator.TokenResourceKeyGenerator/TokenResourceConst.g.cs
@@ -820,9 +820,9 @@ namespace AtomUI.Theme.Styling
public static readonly TokenResourceKey IndicatorLeftModeMargin = new TokenResourceKey("Timeline.IndicatorLeftModeMargin");
public static readonly TokenResourceKey IndicatorMiddleModeMargin = new TokenResourceKey("Timeline.IndicatorMiddleModeMargin");
public static readonly TokenResourceKey IndicatorRightModeMargin = new TokenResourceKey("Timeline.IndicatorRightModeMargin");
+ public static readonly TokenResourceKey IndicatorSize = new TokenResourceKey("Timeline.IndicatorSize");
public static readonly TokenResourceKey IndicatorTailColor = new TokenResourceKey("Timeline.IndicatorTailColor");
public static readonly TokenResourceKey IndicatorTailWidth = new TokenResourceKey("Timeline.IndicatorTailWidth");
- public static readonly TokenResourceKey IndicatorWidth = new TokenResourceKey("Timeline.IndicatorWidth");
public static readonly TokenResourceKey ItemPaddingBottom = new TokenResourceKey("Timeline.ItemPaddingBottom");
public static readonly TokenResourceKey ItemPaddingBottomLG = new TokenResourceKey("Timeline.ItemPaddingBottomLG");
public static readonly TokenResourceKey LastItemContentMinHeight = new TokenResourceKey("Timeline.LastItemContentMinHeight");
diff --git a/src/AtomUI.Controls/RadioButton/RadioIndicator.cs b/src/AtomUI.Controls/RadioButton/RadioIndicator.cs
index d1e6061f8..a36cd8069 100644
--- a/src/AtomUI.Controls/RadioButton/RadioIndicator.cs
+++ b/src/AtomUI.Controls/RadioButton/RadioIndicator.cs
@@ -10,6 +10,7 @@ using Avalonia.Animation;
using Avalonia.Controls;
using Avalonia.Controls.Primitives;
using Avalonia.Data;
+using Avalonia.LogicalTree;
using Avalonia.Media;
using Avalonia.VisualTree;
@@ -135,16 +136,10 @@ internal class RadioIndicator : Control,
set => SetValue(IsWaveAnimationEnabledProperty, value);
}
- CompositeDisposable? IResourceBindingManager.ResourceBindingsDisposable
- {
- get => _resourceBindingsDisposable;
- set => _resourceBindingsDisposable = value;
- }
-
+ CompositeDisposable? IResourceBindingManager.ResourceBindingsDisposable { get; set; }
#endregion
private IPen? _cachedPen;
- private CompositeDisposable? _resourceBindingsDisposable;
static RadioIndicator()
{
@@ -157,24 +152,28 @@ internal class RadioIndicator : Control,
RadioDotEffectSizeProperty);
}
- protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
+ protected override void OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs e)
{
- base.OnAttachedToVisualTree(e);
- _resourceBindingsDisposable = new CompositeDisposable();
+ base.OnAttachedToLogicalTree(e);
this.AddResourceBindingDisposable(TokenResourceBinder.CreateTokenBinding(this, RadioBorderThicknessProperty,
SharedTokenKey.BorderThickness, BindingPriority.Template,
new RenderScaleAwareThicknessConfigure(this)));
- RadioDotEffectSize = CalculateDotSize(IsEnabled, IsChecked.HasValue && IsChecked.Value);
ConfigureTransitions();
- UpdatePseudoClasses();
}
- protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
+ protected override void OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs e)
{
- base.OnDetachedFromVisualTree(e);
+ base.OnDetachedFromLogicalTree(e);
this.DisposeTokenBindings();
}
+ protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
+ {
+ base.OnAttachedToVisualTree(e);
+ RadioDotEffectSize = CalculateDotSize(IsEnabled, IsChecked.HasValue && IsChecked.Value);
+ UpdatePseudoClasses();
+ }
+
private void ConfigureTransitions()
{
if (IsMotionEnabled)
diff --git a/src/AtomUI.Controls/RadioButton/Themes/RadioButtonTheme.axaml b/src/AtomUI.Controls/RadioButton/Themes/RadioButtonTheme.axaml
index 17e7136b3..26c39f209 100644
--- a/src/AtomUI.Controls/RadioButton/Themes/RadioButtonTheme.axaml
+++ b/src/AtomUI.Controls/RadioButton/Themes/RadioButtonTheme.axaml
@@ -35,6 +35,8 @@
+