|
1 | 1 | using System; |
2 | | -using System.Linq; |
3 | 2 | using System.Windows; |
4 | 3 | using System.Windows.Controls; |
5 | 4 | using System.Windows.Documents; |
@@ -287,13 +286,7 @@ private static void InitGrowlPanel(Panel panel) |
287 | 286 | var menuItem = new MenuItem(); |
288 | 287 | LangProvider.SetLang(menuItem, HeaderedItemsControl.HeaderProperty, LangKeys.Clear); |
289 | 288 |
|
290 | | - menuItem.Click += (s, e) => |
291 | | - { |
292 | | - foreach (var item in panel.Children.OfType<Growl>()) |
293 | | - { |
294 | | - item.Close(invokeParam: false, isClear: true); |
295 | | - } |
296 | | - }; |
| 289 | + menuItem.Click += (s, e) => Clear(panel); |
297 | 290 | panel.ContextMenu = new ContextMenu |
298 | 291 | { |
299 | 292 | Items = |
@@ -439,21 +432,11 @@ private static void Show(GrowlInfo growlInfo) |
439 | 432 |
|
440 | 433 | private static Panel CreateDefaultPanel() |
441 | 434 | { |
442 | | - var win = WindowHelper.GetActiveWindow(); |
443 | | - win.Closed+= (s, e) => |
444 | | - { |
445 | | - if (GrowlPanel != null) |
446 | | - { |
447 | | - foreach (var item in GrowlPanel.Children.OfType<Growl>()) |
448 | | - { |
449 | | - item.Close(false); |
450 | | - } |
451 | | - GrowlPanel = null; |
452 | | - } |
453 | | - }; |
454 | | - var decorator = VisualHelper.GetChild<AdornerDecorator>(win); |
455 | | - |
| 435 | + var window = WindowHelper.GetActiveWindow(); |
| 436 | + window.Closed += (s, e) => Clear(GrowlPanel); |
| 437 | + var decorator = VisualHelper.GetChild<AdornerDecorator>(window); |
456 | 438 | var layer = decorator?.AdornerLayer; |
| 439 | + |
457 | 440 | if (layer == null) |
458 | 441 | { |
459 | 442 | return null; |
@@ -1068,7 +1051,7 @@ TransitionMode.Top2Bottom or |
1068 | 1051 | TransitionMode.Custom) |
1069 | 1052 | { |
1070 | 1053 | return null; |
1071 | | - } |
| 1054 | + } |
1072 | 1055 |
|
1073 | 1056 | var animation = AnimationHelper.CreateAnimation(isClose ? 0 : 1); |
1074 | 1057 | animation.From = isClose ? 1 : 0; |
|
0 commit comments