public void LoadFrom(Uri uri, object state) { Image image = imageCache.GetImage(uri); if (image != null) { OnLoaded(new ImageLoadedEventArgs(image, uri, state)); return; } if (AddToCallersWaitingForImageLoad(uri, state)) { return; } if (dispatcher == null) { dispatcher = new BackgroundDispatcher(); dispatcher.Start("NuGet image loader"); } dispatcher.Dispatch(() => { ImageLoadedEventArgs eventArgs = LoadImage(uri, state); Runtime.RunInMainThread(() => { OnLoaded(eventArgs); eventArgs = null; }); }); }
public void LoadFrom (Uri uri, object state) { Image image = imageCache.GetImage (uri); if (image != null) { OnLoaded (new ImageLoadedEventArgs (image, uri, state)); return; } if (AddToCallersWaitingForImageLoad (uri, state)) return; if (dispatcher == null) { dispatcher = new BackgroundDispatcher (); dispatcher.Start ("NuGet image loader"); } dispatcher.Dispatch (() => { ImageLoadedEventArgs eventArgs = LoadImage (uri, state); Runtime.RunInMainThread (() => { OnLoaded (eventArgs); eventArgs = null; }); }); }