Skip to content
Snippets Groups Projects
Commit 7f67121c authored by Piotr Gawron's avatar Piotr Gawron
Browse files

triggereing events moved to init (due to promise use)

parent a2f33a75
No related branches found
No related tags found
1 merge request!343Resolve "map resize doesn't trigger coordinates change listener"
......@@ -95,17 +95,42 @@ CustomMap.prototype.init = function () {
ids.push(mapType);
}
return Promise.each(ids, function (overlayId) {
try {
return self.openDataOverlay(overlayId);
} catch (e) {
if (e instanceof SecurityError) {
logger.debug(e.message);
sessionData.setSelectedBackgroundOverlay(self.getProject().getDataOverlays()[0].getId());
} else {
return Promise.reject(e);
}
return Promise.all([self.getMapCanvas().triggerListeners('resize'),
// noinspection SpellCheckingInspection
self.getMapCanvas().triggerListeners('maptypeid_changed'),
self.getMapCanvas().triggerListeners('projection_changed')
]).then(function() {
// center map and zoom in to fit into browser window if there is no
// information about coordinates in the session
var x = self.getModel().getDefaultCenterX();
var y = self.getModel().getDefaultCenterY();
var zoom = self.getModel().getDefaultZoomLevel();
if (self.getServerConnector().getSessionData(self.getProject()).getCenter(self.getModel()) === undefined &&
(x === undefined || y === undefined || zoom === undefined ||
x === null || y === null || zoom === null
)) {
var bounds = new Bounds();
bounds.extend(self.getTopLeft());
bounds.extend(self.getBottomRight());
self.getMapCanvas().fitBounds(bounds);
}
return Promise.each(ids, function (overlayId) {
try {
return self.openDataOverlay(overlayId);
} catch (e) {
if (e instanceof SecurityError) {
logger.debug(e.message);
sessionData.setSelectedBackgroundOverlay(self.getProject().getDataOverlays()[0].getId());
} else {
return Promise.reject(e);
}
}
});
}).then(function () {
return self.getServerConnector().getLogoImg();
}).then(function (url) {
......@@ -473,28 +498,6 @@ CustomMap.prototype.customizeGoogleMapView = function (div) {
self.createMapCanvas(div);
self.createLogo();
self.getMapCanvas().triggerListeners('resize');
// noinspection SpellCheckingInspection
self.getMapCanvas().triggerListeners('maptypeid_changed');
self.getMapCanvas().triggerListeners('projection_changed');
// center map and zoom in to fit into browser window if there is no
// information about coordinates in the session
var x = self.getModel().getDefaultCenterX();
var y = self.getModel().getDefaultCenterY();
var zoom = self.getModel().getDefaultZoomLevel();
if (self.getServerConnector().getSessionData(self.getProject()).getCenter(self.getModel()) === undefined &&
(x === undefined || y === undefined || zoom === undefined ||
x === null || y === null || zoom === null
)) {
var bounds = new Bounds();
bounds.extend(self.getTopLeft());
bounds.extend(self.getBottomRight());
self.getMapCanvas().fitBounds(bounds);
}
};
/**
......
......@@ -108,8 +108,8 @@ describe('minerva global', function () {
}).then(function (result) {
var center = ServerConnectorMock.getSessionData(options.getProject()).getCenter(options.getProject().getModels()[0]);
assert.ok(center instanceof Point);
assert.equal(center.x, 5);
assert.equal(center.y, 6);
assert.closeTo(center.x, 5, helper.EPSILON);
assert.closeTo(center.y, 6, helper.EPSILON);
return result.destroy();
});
});
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment