diff --git a/Aerochat/Windows/Home.xaml.cs b/Aerochat/Windows/Home.xaml.cs index 01a9f3a5..f49fdc47 100644 --- a/Aerochat/Windows/Home.xaml.cs +++ b/Aerochat/Windows/Home.xaml.cs @@ -6,6 +6,7 @@ using DSharpPlus.Entities; using System; using System.Collections.Concurrent; +using System.ComponentModel; using System.Diagnostics; using System.Drawing; using System.IO; @@ -53,6 +54,9 @@ public Home() // Set visibility of the ad based on settings UpdateAdVisibility(); + + // Subscribe to changes in the DisplayAds property + SettingsManager.Instance.PropertyChanged += OnSettingsChange; }); } @@ -61,6 +65,14 @@ private void UpdateAdVisibility() AdImage.Visibility = SettingsManager.Instance.DisplayAds ? Visibility.Visible : Visibility.Collapsed; } + private void OnSettingsChange(object? sender, PropertyChangedEventArgs e) + { + if (e.PropertyName == nameof(SettingsManager.Instance.DisplayAds)) + { + Dispatcher.Invoke(UpdateAdVisibility); + } + } + public void UpdateUnreadMessages() { foreach (var category in ViewModel.Categories)