No Description
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

GetAvatar.cs 1.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. using System;
  2. using UnityEngine;
  3. using PlasticGui;
  4. using CodiceApp.Gravatar;
  5. namespace Unity.PlasticSCM.Editor.UI.Avatar
  6. {
  7. internal static class GetAvatar
  8. {
  9. internal static Texture2D ForEmail(
  10. string email,
  11. Action avatarLoadedAction)
  12. {
  13. if (string.IsNullOrEmpty(email))
  14. return Images.GetEmptyGravatar();
  15. if (AvatarImages.HasGravatar(email))
  16. return AvatarImages.GetAvatar(email);
  17. Texture2D defaultImage =
  18. Images.GetEmptyGravatar();
  19. AvatarImages.AddGravatar(email, defaultImage);
  20. LoadAvatar.ForEmail(
  21. email, avatarLoadedAction,
  22. AfterDownloadSucceed);
  23. return defaultImage;
  24. }
  25. static void AfterDownloadSucceed(
  26. string email,
  27. GravatarImagesProvider.Result result,
  28. Action avatarLoadedAction)
  29. {
  30. if (result.ResultCode == GravatarImagesProvider.Result.OperationResult.OK)
  31. {
  32. AvatarImages.UpdateGravatar(email, result.RawGravatar);
  33. avatarLoadedAction();
  34. }
  35. }
  36. }
  37. }