private void UnsubscribeFromDownloadProgress(IPackageDetails packageDetails)
{
Argument.IsNotNull(() => packageDetails);
IWeakEventListener weakEventListener;
if (_packageEvents.TryGetValue(packageDetails, out weakEventListener))
{
weakEventListener.Detach();
_packageEvents.Remove(packageDetails);
}
}