From 1a5f155e3991d7f126c2b9148484eb7905244909 Mon Sep 17 00:00:00 2001 From: Bryan Housel Date: Wed, 18 Jan 2017 23:44:03 +0530 Subject: [PATCH] Fix zoom behavior bind in map, delay removals to avoid flicker --- modules/renderer/map.js | 3 ++- modules/ui/init.js | 11 +++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/modules/renderer/map.js b/modules/renderer/map.js index fdc94c952..ec10c9201 100644 --- a/modules/renderer/map.js +++ b/modules/renderer/map.js @@ -99,7 +99,8 @@ export function rendererMap(context) { selection .on('dblclick.map', dblClick) - .call(zoom, projection.transform()); + .call(zoom) + .call(zoom.transform, projection.transform()); supersurface = selection.append('div') .attr('id', 'supersurface') diff --git a/modules/ui/init.js b/modules/ui/init.js index 7e93d9734..39e8fa15d 100644 --- a/modules/ui/init.js +++ b/modules/ui/init.js @@ -228,6 +228,7 @@ export function uiInit(context) { var mapDimensions = map.dimensions(); + function onResize() { mapDimensions = utilGetDimensions(content, true); map.dimensions(mapDimensions); @@ -247,6 +248,7 @@ export function uiInit(context) { }; } + // pan amount var pa = 10; @@ -285,7 +287,10 @@ export function uiInit(context) { } + var initCallback; + function ui(node, callback) { + initCallback = callback; var container = d3.select(node); context.container(container); context.loadLocale(function(err) { @@ -298,19 +303,21 @@ export function uiInit(context) { }); } + ui.restart = function(arg) { - context.container().selectAll('*').remove(); context.locale(arg); context.loadLocale(function(err) { if (!err) { + context.container().selectAll('*').remove(); context.history().unlock(); render(context.container()); + if (initCallback) initCallback(); } }); }; window.restart = ui.restart; - + ui.sidebar = uiSidebar(context); return ui;