Or: don’t resume the map until the application has entered the foreground.
UIApplicationWillEnterForegroundNotification is posted before UIApplicationDidBecomeActiveNotification, while the application is still in the background. That caused -createGLView to bail but did not cause the rest of -wakeGL: to bail. We would create the GLKView only after attempting to bind it (a no-op), resulting in a black view.
Fixes#1855.
The Style object might have been created but the Source is not
yet available because the JSON file was not set. Can happen
specially when the style is loaded from the network.
Parsing errors will be reported to Observers. In practice this will
bubble all the way to the Map object.
This will make possible to identify possible corrupted data instead
of rendering without sprites like we do in case of semantic errors.
Added a filter to remove anchors with the same text that are too close to each other.
Updates to spacing and offset of anchor placement along lines:
Takes into account icon size for calculating label length.
Recalculates spacing for long labels.
Adjusts offsets to first anchors if line is continued from outside the tile boundary.
Defer the creation of EAGLEContext and GLKView and the loading of OpenGL ES extensions. It is GLKView that drives the background crash, and Apple documentation specifically warns not to initialize an EAGLContext in the background. All the while, it should be safe for client code to avail itself of any public methods on MGLMapView.
Fixes#1460.
Defer the creation of EAGLEContext and GLKView and the loading of OpenGL ES extensions. It is GLKView that drives the background crash, and Apple documentation specifically warns not to initialize an EAGLContext in the background. All the while, it should be safe for client code to avail itself of any public methods on MGLMapView.
Fixes#1460.
We can log for different threads (main, map, workers, etc) so
we need to lock before adding the messages on the list.
This was causing few tests to randomly crash.