Browse Source

Merge branch 'master' into feature/ImageScaleMode

pull/1762/head
Benedikt Schroeder 8 years ago
committed by GitHub
parent
commit
7af874fbab
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 2
      src/Avalonia.Base/AvaloniaObject.cs
  2. 25
      src/Avalonia.Base/Diagnostics/AvaloniaObjectExtensions.cs
  3. 2
      src/Avalonia.Base/ValueStore.cs
  4. 1
      src/Avalonia.Diagnostics/ViewModels/DevToolsViewModel.cs
  5. 4
      src/OSX/Avalonia.MonoMac/SystemDialogsImpl.cs

2
src/Avalonia.Base/AvaloniaObject.cs

@ -436,7 +436,7 @@ namespace Avalonia
/// Gets all priority values set on the object.
/// </summary>
/// <returns>A collection of property/value tuples.</returns>
internal IDictionary<AvaloniaProperty, PriorityValue> GetSetValues() => Values?.GetSetValues();
internal IDictionary<AvaloniaProperty, object> GetSetValues() => Values?.GetSetValues();
/// <summary>
/// Forces revalidation of properties when a property value changes.

25
src/Avalonia.Base/Diagnostics/AvaloniaObjectExtensions.cs

@ -23,15 +23,24 @@ namespace Avalonia.Diagnostics
{
var set = o.GetSetValues();
PriorityValue value;
if (set.TryGetValue(property, out value))
if (set.TryGetValue(property, out var obj))
{
return new AvaloniaPropertyValue(
property,
o.GetValue(property),
(BindingPriority)value.ValuePriority,
value.GetDiagnostic());
if (obj is PriorityValue value)
{
return new AvaloniaPropertyValue(
property,
o.GetValue(property),
(BindingPriority)value.ValuePriority,
value.GetDiagnostic());
}
else
{
return new AvaloniaPropertyValue(
property,
obj,
BindingPriority.LocalValue,
"Local value");
}
}
else
{

2
src/Avalonia.Base/ValueStore.cs

@ -100,7 +100,7 @@ namespace Avalonia
_owner.PriorityValueChanged(property, priority, oldValue, newValue);
}
public IDictionary<AvaloniaProperty, PriorityValue> GetSetValues() => throw new NotImplementedException();
public IDictionary<AvaloniaProperty, object> GetSetValues() => _values;
public object GetValue(AvaloniaProperty property)
{

1
src/Avalonia.Diagnostics/ViewModels/DevToolsViewModel.cs

@ -31,6 +31,7 @@ namespace Avalonia.Diagnostics.ViewModels
}
};
SelectedTab = 0;
root.GetObservable(TopLevel.PointerOverElementProperty)
.Subscribe(x => PointerOverElement = x?.GetType().Name);
}

4
src/OSX/Avalonia.MonoMac/SystemDialogsImpl.cs

@ -25,9 +25,9 @@ namespace Avalonia.MonoMac
else
{
if (panel is NSOpenPanel openPanel)
tcs.SetResult(openPanel.Urls.Select(url => url.AbsoluteString).ToArray());
tcs.SetResult(openPanel.Urls.Select(url => url.AbsoluteString.Replace("file://", "")).ToArray());
else
tcs.SetResult(new[] { panel.Url.AbsoluteString });
tcs.SetResult(new[] { panel.Url.AbsoluteString.Replace("file://", "") });
}
panel.OrderOut(panel);
keyWindow?.MakeKeyAndOrderFront(keyWindow);

Loading…
Cancel
Save