|  |  |  | @ -117,11 +117,6 @@ void MapWindow::initLayers() { | 
			
		
	
		
			
				
					|  |  |  |  |     pin["type"] = "symbol"; | 
			
		
	
		
			
				
					|  |  |  |  |     pin["source"] = "pinSource"; | 
			
		
	
		
			
				
					|  |  |  |  |     m_map->addLayer(pin); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |     // FIXME: solve, workaround to remove animation on visibility property
 | 
			
		
	
		
			
				
					|  |  |  |  |     QVariantMap transition; | 
			
		
	
		
			
				
					|  |  |  |  |     transition["duration"] = 0;  // ms
 | 
			
		
	
		
			
				
					|  |  |  |  |     m_map->setPaintProperty("pinLayer", "icon-opacity-transition", transition); | 
			
		
	
		
			
				
					|  |  |  |  |     m_map->setLayoutProperty("pinLayer", "icon-pitch-alignment", "viewport"); | 
			
		
	
		
			
				
					|  |  |  |  |     m_map->setLayoutProperty("pinLayer", "icon-image", "default_marker"); | 
			
		
	
		
			
				
					|  |  |  |  |     m_map->setLayoutProperty("pinLayer", "icon-ignore-placement", true); | 
			
		
	
	
		
			
				
					|  |  |  | @ -305,6 +300,10 @@ void MapWindow::initializeGL() { | 
			
		
	
		
			
				
					|  |  |  |  |   m_map->setStyleUrl("mapbox://styles/commaai/clj7g5vrp007b01qzb5ro0i4j"); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   QObject::connect(m_map.data(), &QMapboxGL::mapChanged, [=](QMapboxGL::MapChange change) { | 
			
		
	
		
			
				
					|  |  |  |  |     // set global animation duration to 0 ms so visibility changes are instant
 | 
			
		
	
		
			
				
					|  |  |  |  |     if (change == QMapboxGL::MapChange::MapChangeDidFinishLoadingStyle) { | 
			
		
	
		
			
				
					|  |  |  |  |       m_map->setTransitionOptions(0, 0); | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
		
			
				
					|  |  |  |  |     if (change == QMapboxGL::MapChange::MapChangeDidFinishLoadingMap) { | 
			
		
	
		
			
				
					|  |  |  |  |       loaded_once = true; | 
			
		
	
		
			
				
					|  |  |  |  |     } | 
			
		
	
	
		
			
				
					|  |  |  | @ -411,7 +410,7 @@ void MapWindow::offroadTransition(bool offroad) { | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  | void MapWindow::updateDestinationMarker() { | 
			
		
	
		
			
				
					|  |  |  |  |   m_map->setPaintProperty("pinLayer", "icon-opacity", 0); | 
			
		
	
		
			
				
					|  |  |  |  |   m_map->setPaintProperty("pinLayer", "visibility", "none"); | 
			
		
	
		
			
				
					|  |  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |  |   auto nav_dest = coordinate_from_param("NavDestination"); | 
			
		
	
		
			
				
					|  |  |  |  |   if (nav_dest.has_value()) { | 
			
		
	
	
		
			
				
					|  |  |  | @ -421,6 +420,6 @@ void MapWindow::updateDestinationMarker() { | 
			
		
	
		
			
				
					|  |  |  |  |     pinSource["type"] = "geojson"; | 
			
		
	
		
			
				
					|  |  |  |  |     pinSource["data"] = QVariant::fromValue<QMapbox::Feature>(feature); | 
			
		
	
		
			
				
					|  |  |  |  |     m_map->updateSource("pinSource", pinSource); | 
			
		
	
		
			
				
					|  |  |  |  |     m_map->setPaintProperty("pinLayer", "icon-opacity", 1); | 
			
		
	
		
			
				
					|  |  |  |  |     m_map->setPaintProperty("pinLayer", "visibility", "visible"); | 
			
		
	
		
			
				
					|  |  |  |  |   } | 
			
		
	
		
			
				
					|  |  |  |  | } | 
			
		
	
	
		
			
				
					|  |  |  | 
 |