Browse Source

Merge branch 'master' into feature/textbox-selectedtext

pull/3658/head
Steven Kirk 7 years ago
committed by GitHub
parent
commit
5115fc2847
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 8
      azure-pipelines.yml
  2. 9
      src/Avalonia.Styling/Styling/Activators/StyleClassActivator.cs

8
azure-pipelines.yml

@ -35,16 +35,16 @@ jobs:
vmImage: 'macOS-10.14'
steps:
- task: UseDotNet@2
displayName: 'Use .NET Core SDK 3.1.x'
displayName: 'Use .NET Core SDK 3.1.101'
inputs:
packageType: sdk
version: 3.1.x
version: 3.1.101
- task: UseDotNet@2
displayName: 'Use .NET Core Runtime 3.1.x'
displayName: 'Use .NET Core Runtime 3.1.1'
inputs:
packageType: runtime
version: 3.1.x
version: 3.1.1
- task: CmdLine@2
displayName: 'Install Mono 5.18'

9
src/Avalonia.Styling/Styling/Activators/StyleClassActivator.cs

@ -14,6 +14,7 @@ namespace Avalonia.Styling.Activators
{
private readonly IList<string> _match;
private readonly IAvaloniaReadOnlyList<string> _classes;
private NotifyCollectionChangedEventHandler? _classesChangedHandler;
public StyleClassActivator(IAvaloniaReadOnlyList<string> classes, IList<string> match)
{
@ -21,6 +22,9 @@ namespace Avalonia.Styling.Activators
_match = match;
}
private NotifyCollectionChangedEventHandler ClassesChangedHandler =>
_classesChangedHandler ??= ClassesChanged;
public static bool AreClassesMatching(IReadOnlyList<string> classes, IList<string> toMatch)
{
int remainingMatches = toMatch.Count;
@ -51,16 +55,15 @@ namespace Avalonia.Styling.Activators
return remainingMatches == 0;
}
protected override void Initialize()
{
PublishNext(IsMatching());
_classes.CollectionChanged += ClassesChanged;
_classes.CollectionChanged += ClassesChangedHandler;
}
protected override void Deinitialize()
{
_classes.CollectionChanged -= ClassesChanged;
_classes.CollectionChanged -= ClassesChangedHandler;
}
private void ClassesChanged(object sender, NotifyCollectionChangedEventArgs e)

Loading…
Cancel
Save