diff --git a/src/Ursa.Themes.Semi/Controls/TagInput.axaml b/src/Ursa.Themes.Semi/Controls/TagInput.axaml index de0526c..3638c06 100644 --- a/src/Ursa.Themes.Semi/Controls/TagInput.axaml +++ b/src/Ursa.Themes.Semi/Controls/TagInput.axaml @@ -2,6 +2,9 @@ xmlns="https://github.com/avaloniaui" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:u="https://irihi.tech/ursa"> + + + @@ -115,7 +118,7 @@ + Foreground="{DynamicResource SemiColorText2}" + Cursor="Hand" /> + + - + \ No newline at end of file diff --git a/src/Ursa/Controls/TagInput/ClosableTag.cs b/src/Ursa/Controls/TagInput/ClosableTag.cs index de609f2..45980b8 100644 --- a/src/Ursa/Controls/TagInput/ClosableTag.cs +++ b/src/Ursa/Controls/TagInput/ClosableTag.cs @@ -8,10 +8,11 @@ using Avalonia.Input; namespace Ursa.Controls; [TemplatePart(PART_CloseButton, typeof(PathIcon))] -public class ClosableTag: ContentControl +public class ClosableTag : ContentControl { public const string PART_CloseButton = "PART_CloseButton"; private PathIcon? _icon; + public static readonly StyledProperty CommandProperty = AvaloniaProperty.Register( nameof(Command)); @@ -24,21 +25,21 @@ public class ClosableTag: ContentControl protected override void OnApplyTemplate(TemplateAppliedEventArgs e) { base.OnApplyTemplate(e); - if (_icon != null) + if (_icon is not null) { - _icon.PointerPressed -= OnPointerPressed; + _icon.PointerReleased -= OnPointerReleased; } + _icon = e.NameScope.Find(PART_CloseButton); - if (_icon != null) + if (_icon is not null) { - _icon.PointerPressed += OnPointerPressed; + _icon.PointerReleased += OnPointerReleased; } - } - private void OnPointerPressed(object? sender, PointerPressedEventArgs args) + private void OnPointerReleased(object? sender, PointerReleasedEventArgs args) { - if (Command != null && Command.CanExecute(null)) + if (Command is not null && Command.CanExecute(null)) { Command.Execute(this); }