76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
# File 'motion-prime/elements/draw/image.rb', line 76
def load_image
return if @loading || image_data || !computed_options[:url]
@loading = true
ref_key = allocate_strong_references
BW::Reactor.schedule do
manager = SDWebImageManager.sharedManager
manager.downloadWithURL(computed_options[:url],
options: 0,
progress: lambda{ |r_size, e_size| },
completed: lambda{ |image, error, type, finished|
if !image || allocated_references_released?
@loading = false
release_strong_references(ref_key)
return
end
self.image_data = image
section.cached_draw_image = nil
if section.respond_to?(:cell_section_name)
section.pending_display!
else
self.view.performSelectorOnMainThread :setNeedsDisplay, withObject: nil, waitUntilDone: false
end
@loading = false
release_strong_references(ref_key)
}
)
end
end
|