From fb2091a8f0a1c17c5f9e70e908d71eea0d14ac89 Mon Sep 17 00:00:00 2001 From: Georgios Andreadis Date: Fri, 29 Sep 2017 20:40:26 +0200 Subject: Fix map position bug on empty DC --- src/store/middlewares/viewport-adjustment.js | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) (limited to 'src/store/middlewares') 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); -- cgit v1.2.3