Skip to content

Commit 943efd6

Browse files
committed
Merge pull request openlayers#370 from pagameba/overviewmap
OverviewMap custom div bug.
2 parents e35dfe1 + 30af95d commit 943efd6

File tree

2 files changed

+37
-2
lines changed

2 files changed

+37
-2
lines changed

lib/OpenLayers/Control/OverviewMap.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -398,8 +398,12 @@ OpenLayers.Control.OverviewMap = OpenLayers.Class(OpenLayers.Control, {
398398
* minimize - {Boolean}
399399
*/
400400
showToggle: function(minimize) {
401-
this.maximizeDiv.style.display = minimize ? '' : 'none';
402-
this.minimizeDiv.style.display = minimize ? 'none' : '';
401+
if (this.maximizeDiv) {
402+
this.maximizeDiv.style.display = minimize ? '' : 'none';
403+
}
404+
if (this.minimizeDiv) {
405+
this.minimizeDiv.style.display = minimize ? 'none' : '';
406+
}
403407
},
404408

405409
/**

tests/Control/OverviewMap.html

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,6 +209,37 @@
209209

210210
map.destroy();
211211
}
212+
213+
function test_custom_div(t) {
214+
t.plan(3);
215+
var div = document.createElement('div');
216+
217+
control = new OpenLayers.Control.OverviewMap({
218+
div: div
219+
});
220+
221+
map = new OpenLayers.Map('map', {
222+
layers : [new OpenLayers.Layer("layer", {isBaseLayer: true})],
223+
controls: [control]
224+
});
225+
226+
t.eq(control.maximizeDiv, null,
227+
"OverviewMap does not create maximize div");
228+
t.eq(control.minimizeDiv, null,
229+
"OverviewMap does not create minimize div");
230+
231+
var exc;
232+
try {
233+
control.maximizeControl();
234+
control.minimizeControl();
235+
} catch(e) {
236+
exc = e;
237+
}
238+
239+
t.eq(exc, undefined, 'maximize and minimize do not trigger an exception');
240+
241+
map.destroy();
242+
}
212243

213244
</script>
214245
</head>

0 commit comments

Comments
 (0)