|
@@ -5,7 +5,7 @@ using PixiEditor.Models.UserPreferences;
|
|
|
|
|
|
namespace PixiEditor.ViewModels.SubViewModels.Main
|
|
|
{
|
|
|
- public class DiscordViewModel : SubViewModel<ViewModelMain>
|
|
|
+ public class DiscordViewModel : SubViewModel<ViewModelMain>, IDisposable
|
|
|
{
|
|
|
private DiscordRpcClient client;
|
|
|
private string clientId;
|
|
@@ -81,12 +81,11 @@ namespace PixiEditor.ViewModels.SubViewModels.Main
|
|
|
Owner.BitmapManager.DocumentChanged += DocumentChanged;
|
|
|
this.clientId = clientId;
|
|
|
|
|
|
- Enabled = IPreferences.Current.GetPreference<bool>("EnableRichPresence");
|
|
|
+ Enabled = IPreferences.Current.GetPreference("EnableRichPresence", true);
|
|
|
IPreferences.Current.AddCallback("EnableRichPresence", x => Enabled = (bool)x);
|
|
|
IPreferences.Current.AddCallback(nameof(ShowDocumentName), x => ShowDocumentName = (bool)x);
|
|
|
IPreferences.Current.AddCallback(nameof(ShowDocumentSize), x => ShowDocumentSize = (bool)x);
|
|
|
IPreferences.Current.AddCallback(nameof(ShowLayerCount), x => ShowLayerCount = (bool)x);
|
|
|
-
|
|
|
AppDomain.CurrentDomain.ProcessExit += (_, _) => Enabled = false;
|
|
|
}
|
|
|
|
|
@@ -142,6 +141,12 @@ namespace PixiEditor.ViewModels.SubViewModels.Main
|
|
|
client.SetPresence(richPresence);
|
|
|
}
|
|
|
|
|
|
+ public void Dispose()
|
|
|
+ {
|
|
|
+ Enabled = false;
|
|
|
+ GC.SuppressFinalize(this);
|
|
|
+ }
|
|
|
+
|
|
|
private static RichPresence NewDefaultRP()
|
|
|
{
|
|
|
return new RichPresence
|