summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-09-29 20:40:26 +0200
committerGeorgios Andreadis <g.andreadis@student.tudelft.nl>2017-09-29 20:40:26 +0200
commitfb2091a8f0a1c17c5f9e70e908d71eea0d14ac89 (patch)
treeace8753116b651ade02bd4b9316a8424354f9557
parentfe563d05ae387f5f5231ca348410685c9ab9367d (diff)
Fix map position bug on empty DC
-rw-r--r--src/store/middlewares/viewport-adjustment.js16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/store/middlewares/viewport-adjustment.js b/src/store/middlewares/viewport-adjustment.js
index fddbf038..a0056ee5 100644
--- a/src/store/middlewares/viewport-adjustment.js
+++ b/src/store/middlewares/viewport-adjustment.js
@@ -27,9 +27,19 @@ export const viewportAdjustmentMiddleware = store => next => action => {
const rooms = roomIds.map(id => Object.assign({}, state.objects.room[id]));
rooms.forEach(room => room.tiles = room.tileIds.map(tileId => state.objects.tile[tileId]));
- const viewportParams = calculateParametersToZoomInOnRooms(rooms, mapDimensions.width, mapDimensions.height);
- store.dispatch(setMapPosition(viewportParams.newX, viewportParams.newY));
- store.dispatch(setMapScale(viewportParams.newScale));
+ let hasNoTiles = true;
+ for (let i in rooms) {
+ if (rooms[i].tiles.length > 0) {
+ hasNoTiles = false;
+ break;
+ }
+ }
+
+ if (!hasNoTiles) {
+ const viewportParams = calculateParametersToZoomInOnRooms(rooms, mapDimensions.width, mapDimensions.height);
+ store.dispatch(setMapPosition(viewportParams.newX, viewportParams.newY));
+ store.dispatch(setMapScale(viewportParams.newScale));
+ }
}
next(action);