From d22a18355430203320d5ab2897f2ae95fa6eaf3f Mon Sep 17 00:00:00 2001 From: Kang Yu Date: Wed, 11 Sep 2024 22:11:47 -0700 Subject: [PATCH] remove history of oldest window first --- .../Common/PersistentWindowProcessor.cs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Ninjacrab.PersistentWindows.Solution/Common/PersistentWindowProcessor.cs b/Ninjacrab.PersistentWindows.Solution/Common/PersistentWindowProcessor.cs index 3afec1c..c3450f7 100644 --- a/Ninjacrab.PersistentWindows.Solution/Common/PersistentWindowProcessor.cs +++ b/Ninjacrab.PersistentWindows.Solution/Common/PersistentWindowProcessor.cs @@ -1625,11 +1625,18 @@ namespace PersistentWindows.Common while (deadApps[display_config].Count > 1024) { var keys = deadApps[display_config].Keys; + DateTime tm = DateTime.Now; + IntPtr oldest_window = IntPtr.Zero; foreach (var kid in keys) { - deadApps[display_config].Remove(kid); - break; + if (deadApps[display_config][kid].Last().CaptureTime < tm) + { + tm = deadApps[display_config][kid].Last().CaptureTime; + oldest_window = kid; + break; + } } + deadApps[display_config].Remove(oldest_window); } }