internal Notification Build() { IntPtr extension = IntPtr.Zero; IntPtr extensionBundlePtr = IntPtr.Zero; NotificationBinder.BindSafeHandle(this); Interop.Notification.GetExtensionBundle(Handle, out extension, out extensionBundlePtr); if (extension != IntPtr.Zero) { Bundle bundle = new Bundle(new SafeBundleHandle(extension, false)); foreach (string key in bundle.Keys) { if (key.StartsWith("_NOTIFICATION_EXTENSION_EVENT_")) { continue; } SafeBundleHandle sbh; Interop.Notification.GetExtensionData(Handle, key, out sbh); extraDataDictionary.Add(key, new Bundle(sbh)); } } ProgressBinder.BindSafeHandle(this); AccessorySetBinder.BindSafeHandle(this); IndicatorBinder.BindSafeHandle(this); ActiveBinder.BindSafeHandle(this); LockBinder.BindSafehandle(this); return(this); }
internal override void Make(Notification notification) { ActiveBinder.BindObject(notification); }