I needed to downgrade my google maps version to 3.27.13 because the version 3.28.18 is not triggering the idle event on the corresponding code below.
whenever the map is moved, it invokes the changeViewport to load geoms
google.maps.event.addListener(map, 'idle', changeViewport)