Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/xamarin/Xamarin.PropertyEditing.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Maupin <ermaup@microsoft.com>2019-01-26 00:40:49 +0300
committerEric Maupin <ermaup@microsoft.com>2019-01-26 00:40:49 +0300
commit488124c7dd20b85c7b65dcd8f70852c3d32aaeda (patch)
treee5c57196a73ca5a290532b20dab77d84934378aa
parent81e19296f6232b9b3793ce5c2b1399861fa2e325 (diff)
[mac] Manual theme image handling
-rw-r--r--Xamarin.PropertyEditing.Mac.Standalone/ViewController.cs4
-rw-r--r--Xamarin.PropertyEditing.Mac/HostResourceProvider.cs9
2 files changed, 12 insertions, 1 deletions
diff --git a/Xamarin.PropertyEditing.Mac.Standalone/ViewController.cs b/Xamarin.PropertyEditing.Mac.Standalone/ViewController.cs
index eb5718c..5b1b2b7 100644
--- a/Xamarin.PropertyEditing.Mac.Standalone/ViewController.cs
+++ b/Xamarin.PropertyEditing.Mac.Standalone/ViewController.cs
@@ -93,7 +93,9 @@ namespace Xamarin.PropertyEditing.Mac.Standalone
appearance = NSAppearance.NameVibrantDark;
}
- View.Appearance = NSAppearance.GetAppearance (appearance);
+ var realAppearance = NSAppearance.GetAppearance (appearance);
+ ((HostResourceProvider)PropertyPanel.HostResourceProvider).CurrentAppearance = realAppearance;
+ View.Appearance = realAppearance;
}
}
}
diff --git a/Xamarin.PropertyEditing.Mac/HostResourceProvider.cs b/Xamarin.PropertyEditing.Mac/HostResourceProvider.cs
index 591c46d..09a8390 100644
--- a/Xamarin.PropertyEditing.Mac/HostResourceProvider.cs
+++ b/Xamarin.PropertyEditing.Mac/HostResourceProvider.cs
@@ -7,6 +7,12 @@ namespace Xamarin.PropertyEditing.Mac
public class HostResourceProvider
: IHostResourceProvider
{
+ public NSAppearance CurrentAppearance
+ {
+ get;
+ set;
+ }
+
public virtual NSAppearance GetVibrantAppearance (NSAppearance appearance)
{
if (appearance == null)
@@ -25,6 +31,9 @@ namespace Xamarin.PropertyEditing.Mac
public virtual NSImage GetNamedImage (string name)
{
+ if ((CurrentAppearance ?? NSAppearance.CurrentAppearance).Name.ToLower ().Contains ("dark"))
+ name += "~dark";
+
return NSImage.ImageNamed (name);
}