mirror of
https://github.com/openseadragon/openseadragon.git
synced 2024-11-21 20:56:09 +03:00
fix for #1172 (ReferenceStrip not freeing resources)
This commit is contained in:
parent
80611e999a
commit
85e60b759b
@ -178,6 +178,7 @@ $.ReferenceStrip = function ( options ) {
|
||||
this.panelWidth = ( viewerSize.x * this.sizeRatio ) + 8;
|
||||
this.panelHeight = ( viewerSize.y * this.sizeRatio ) + 8;
|
||||
this.panels = [];
|
||||
this.miniViewers = {};
|
||||
|
||||
/*jshint loopfunc:true*/
|
||||
for ( i = 0; i < viewer.tileSources.length; i++ ) {
|
||||
@ -293,6 +294,12 @@ $.extend( $.ReferenceStrip.prototype, $.EventSource.prototype, $.Viewer.prototyp
|
||||
|
||||
// Overrides Viewer.destroy
|
||||
destroy: function() {
|
||||
if (this.miniViewers) {
|
||||
for (var key in this.miniViewers) {
|
||||
this.miniViewers[key].destroy();
|
||||
}
|
||||
}
|
||||
|
||||
if (this.element) {
|
||||
this.element.parentNode.removeChild(this.element);
|
||||
}
|
||||
@ -463,6 +470,8 @@ function loadPanels( strip, viewerSize, scroll ) {
|
||||
miniViewer.displayRegion
|
||||
);
|
||||
|
||||
strip.miniViewers[element.id] = miniViewer;
|
||||
|
||||
element.activePanel = true;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user