From 50147d3c4b2cd9bb59aac42342d30c37d060f4fa Mon Sep 17 00:00:00 2001 From: Patrick Simpson Date: Mon, 13 Feb 2017 13:03:37 +0100 Subject: [PATCH] MailEvents experiment --- .../AcaciaZPushPlugin/Stubs/Wrappers.cs | 6 ++++++ .../AcaciaZPushPlugin/Utils/MailEvents.cs | 16 +++++++++++++--- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Stubs/Wrappers.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Stubs/Wrappers.cs index 6b86ddd..cae4834 100644 --- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Stubs/Wrappers.cs +++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Stubs/Wrappers.cs @@ -14,5 +14,11 @@ namespace Acacia.Stubs { return Mapping.WrapOrDefault(obj); } + + public static WrapType Wrap(object o, bool mustRelease = true) + where WrapType : IBase + { + return Mapping.Wrap(o, mustRelease); + } } } diff --git a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/MailEvents.cs b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/MailEvents.cs index 3c7fa7d..0a9442f 100644 --- a/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/MailEvents.cs +++ b/src/AcaciaZPushPlugin/AcaciaZPushPlugin/Utils/MailEvents.cs @@ -216,11 +216,16 @@ namespace Acacia.Utils private void OnItemLoad(object item) { + using (IItem wrapped = Wrappers.Wrap(item)) + { + } + + /* NSOutlook.ItemEvents_10_Event hasEvents = item as NSOutlook.ItemEvents_10_Event; if (hasEvents != null) { new MailEventHooker(hasEvents, this); - } + }*/ } private class MailEventHooker : ComWrapper @@ -237,6 +242,11 @@ namespace Acacia.Utils HookEvents(true); } + ~MailEventHooker() + { + + } + protected override void DoRelease() { Logger.Instance.Debug(this, "DoRelease: {0}", _id); @@ -302,8 +312,8 @@ namespace Acacia.Utils { Logger.Instance.Debug(this, "HandleUnload: {0}", _id); // All events must be unhooked on unload, otherwise a resource leak is created. - HookEvents(false); - Dispose(); + //HookEvents(false); + //Dispose(); } private void HandleWrite(ref bool cancel)