Commit Graph

17582 Commits

Author SHA1 Message Date
Tobrun
f95b4838ea [android] - move min/max zoom to transform class, cleanup usage of double vs float, renaming for parity (#7306) 2016-12-15 16:57:30 +01:00
Konstantin Käfer
13e7672f85 [build] use 64 bit libdir + dalvikvm when running android tests on 64 bit platforms 2016-12-15 16:11:20 +01:00
Tobrun
858854ba03 [android] - wrap mapbox map test in ViewActions (#7451) 2016-12-15 14:28:08 +01:00
Jason Wray
78efb2d451 [ios] Remove last remnants of appledoc & docsets (#7418)
These scripts are broken and no longer useful in a post-jazzy world.
2016-12-14 18:19:52 -08:00
Tobrun
05c6935556 [android] - add OnMarkerView add callback (#7429) 2016-12-14 22:09:30 +01:00
Jesse Bounds
da44db915c [ios] Updated changelog for iOS 3.4.0 beta 5 2016-12-14 12:49:32 -08:00
Jesse Bounds
b46373da8a [ios] Update podspec for release 3.4.0 beta 5 2016-12-14 12:49:32 -08:00
John Firebaugh
f74de67315 [core] Mark tile as incomplete while redoing placement 2016-12-14 12:15:29 -08:00
John Firebaugh
34fbd565b8 [core] Remove unused 2016-12-14 12:15:29 -08:00
John Firebaugh
07e58fe961 [tests] Fix variable reference in test-suite harness 2016-12-14 12:15:29 -08:00
Cameron Mace
eb42b37568 updated changelog for 4.2.0 release (#7433) 2016-12-14 15:04:11 -05:00
Jesse Bounds
e88f904464 [core] Port ensure a non-zero source tile cache size (#7438)
This ports https://github.com/mapbox/mapbox-gl-native/pull/7242/
commits/2d323211af54499d5c822b8e45d7415bf92112f0 to the iOS 3.4.0
release branch.
2016-12-14 11:39:33 -08:00
Konstantin Käfer
e182731092 [build] add -Wl,-bind_at_load to node.js bindings on macOS
this catches unbound symbols during loading of the extension, allowing us to spot potential linking errors earlier
2016-12-14 19:34:35 +01:00
Jesse Bounds
afd14cbfe5 [ios] Fix dequeue view variable scope (#7423)
Fix a bug where an annotation view variable was incorrectly
re-declared which caused annotation views to not appear
in some cases. This also refactors the guard that spot
checks that annotation view are or are not visible.
2016-12-14 10:24:06 -08:00
Jesse Bounds
0eac5ea91e [ios]] Remove transaction in callout view update (#7425) 2016-12-14 10:22:02 -08:00
John Firebaugh
e8a48a6d63 [node] Fix order of operations when setting zoom and center
Zoom must be set first, to avoid center potentially getting constrained.

Fixes #7351
2016-12-14 10:08:23 -08:00
John Firebaugh
ceeded2932 [core] Obtain shaders from gl-js monorepo 2016-12-14 10:02:30 -08:00
Cameron Mace
3d5983f6f6 Allows for setting the user location icon to transparent (#7393)
* allows for setting the user location icon to transparent

* removed color check
2016-12-14 12:51:04 -05:00
Thiago Marcos P. Santos
8f24119bd0 [Qt] Implement updateSource
It will create or update a source. Right now only GeoJSON sources are
mutable and can be updated using this method.
2016-12-14 14:21:20 -02:00
Tobrun
070a9b43e1 [android] - update gradle command line args for CI (#7426) 2016-12-14 12:48:59 +01:00
Minh Nguyễn
d34356ce39 [ios, macos] Streamlined a string format 2016-12-13 17:37:44 -08:00
Minh Nguyễn
ef71597932 [ios, macos] Simplify MGLSource and subclasses (#7377)
* [ios, macos] Audited source headers for nullability

* [macos] Made MGLTileSet public

* [ios, macos] Replaced MGLTileSet with MGLTileSource

MGLRasterSource and MGLVectorSource now share a common abstract superclass, MGLTileSource. MGLTileSet has been removed. MGLTileSource is modeled after mbgl::style::RasterSource and mbgl::style::VectorSource. It has initializers that incorporate the parameters of MGLTileSet’s initializers, but it lacks getters for everything but the attribution string. MGLTileSet’s properties have been converted into options that can be passed into MGLTileSource’s initializers in a dictionary.

Properly implement rawSource as a covariant property so that it doesn’t end up getting autosynthesized as a shadow ivar. This prevents concrete subclasses of MGLSource from setting _rawSource directly but getting a different value out of self.rawSource.

Marked -[MGLSource init] as unavailable and ensured that concrete subclasses of MGLSource have the right set of initializers marked as designated initializers.

Documentation comments for each concrete source class identify the corresponding source type in the style specification. Clarified the purpose of MGLTileSetScheme, now known as MGLTileCoordinateSystem.

* [ios, macos] Clarified tile size interpretation

Sticking to a default value of 256 for mapbox: URLs, but other URLs get the standard 512 value.

* [ios, macos] rawSource is always set

* [ios, macos] Cleaned up MGLShapeSource initialization

rawSource is never nil, so there’s no need for a -commonInit method. Extracted -geoJSONOptions from MGLShapeSource into a standalone function for easier testing.

* [ios, macos] Synchronized headers in project

Realphabetized headers in groups. Added headers missing from one project or the other.

* [ios, macos] Added MGLShape methods to (de)serialize GeoJSON data

Added a class initializer and instance method to MGLShape that deserialize and serialize the shape as GeoJSON data, respectively. The new initializer handles parsing errors gracefully.

Removed methods specific to GeoJSON data from MGLShapeSource, in an effort to reduce parallel state. Developers are now expected to go through the new MGLShape initializer to get an MGLShape representation. Alternatively, a local file URL can be passed into the other MGLShapeSource initializer.

* [ios, macos] Typo in assertion message

* [ios, macos] Simplified GeoJSON serialization

Every MGLShape now knows its most specific mbgl::GeoJSON representation.

* [ios, macos] Reremoved MGLFeaturePrivate

mbgl::GeoJSON, which is a variant, allows a single GeoJSON representation method to traffic in whatever type is needed for a particular shape class. This change removes some hidden private protocols, which are a bug waiting to happen.

* [ios, macos] Fixed covariant rawLayer property

Properly implement rawLayer as a covariant property so that it doesn’t end up getting autosynthesized as a shadow ivar. This prevents concrete subclasses of MGLStyleLayer from setting _rawLayer directly but getting a different value out of self.rawLayer.

* [ios, macos] Use MGLAttributionInfo for source attribution

Made MGLAttributionInfo public. Replaced MGLTileSource’s attribution property with an attributionInfos property set to an array of MGLAttributionInfo objects. Added an MGLTileSourceOption for specifying an array of MGLAttributionInfo objects instead of an HTML string (either is acceptable when creating an MGLTileSource).

* [ios, macos] Corrected method references in documentation
2016-12-13 17:36:15 -08:00
Cameron Mace
39b839f3dd added custom layer proguard rule (#7411) 2016-12-13 18:08:02 -05:00
Ivo van Dongen
b221b6c5fb [core] Swap order of Style::recalculate and Style::relayout
Style::relayout uses source.baseImpl->loaded, a flag which is updated by Style::recalculate. So recalculate first, then relayout.
2016-12-13 12:56:08 -08:00
Cameron Mace
833c5ca2be Fixed proguard rules (#7389)
* fixed proguard rules

* disabled proguard for debug testapp builds

* removed dontobfuscate and fixed gson issue
2016-12-13 14:40:51 -05:00
Minh Nguyễn
2d52dd8c0f [ios] Fixed crash on launch in iosapp
Use NSLocaleLanguageCode instead of -[NSLocale languageCode], which is newer than the minimum deployment target.
2016-12-13 10:30:04 -08:00
Thiago Marcos P. Santos
0f0f2c69d7 [Qt] Fix build when ICU is disabled 2016-12-13 16:16:53 -02:00
Jesse Bounds
9f4dd1c5f4 [ios] Fix iosapp runtime styling examples (#7395)
This fixes a few bugs in our iosapp examples that were exposed by
recent refinements to the APIs they use.
2016-12-13 10:09:54 -08:00
Ivo van Dongen
d3895b47ef [ios, macos] handle duplicate layer error 2016-12-13 10:03:05 -08:00
Ivo van Dongen
bb6973ae90 [core] guard against duplicate layer ids 2016-12-13 10:03:05 -08:00
Ivo van Dongen
18730d598d [core] use raii to guard backend deactivation 2016-12-13 10:03:05 -08:00
John Firebaugh
c12b52c6a7 [core] Fix debug rendering
* Off-by-one in DebugBucket indexing
* Must unbind VAO before binding index buffer in Context::createIndexBuffer
2016-12-13 09:42:46 -08:00
Minh Nguyễn
36616c7200 [android] Fixed typo in MapboxMap.addImage() 2016-12-13 09:28:42 -08:00
Tobrun
927dbb1315 [android] - update bitrise config. Create archivable path if non existent (#7385) 2016-12-13 10:50:34 +01:00
Tobrun
b1e9a3f4d6 [android] - Reenable MapboxMapTest for end-to-end API testing. Fix tests (#7367) 2016-12-13 08:08:41 +01:00
Tobrun
b43aa9d62d [android] - limit input fling gesture based on map tilt. (#7383) 2016-12-13 08:08:29 +01:00
Minh Nguyễn
1ab791c3dc [ios, macos] Override references to property names in property requirements lists (#7391)
* [ios, macos] Refer to template images in documentation

SDF icons are known as template images in AppKit and UIKit.

* [ios, macos] Override property names in requirements
2016-12-12 23:05:09 -08:00
Ivo van Dongen
28be37fcbe [core] Swap order of Style::recalculate and Style::relayout
Style::relayout uses source.baseImpl->loaded, a flag which is updated by Style::recalculate. So recalculate first, then relayout.
2016-12-12 16:49:02 -08:00
John Firebaugh
b0a928dcbc [core] Ensure a non-zero source tile cache size
Previously, for viewport sizes less than 512 pixels in either direction, the computed size was 0.
2016-12-12 16:49:02 -08:00
John Firebaugh
3718e1fa15 [tests] Implement "wait" command with Map#render
This ensures that a "wait" command will always fully flush pending update flags. This was not the case with the prior conditional map.loaded() logic.
2016-12-12 16:49:02 -08:00
Bruno de Oliveira Abinader
b65b2f1c29 [qt] Skip ICU if WITH_QT_I18N is set 2016-12-12 22:34:52 +02:00
Bruno de Oliveira Abinader
c0e18ad80c [core] Added BidiImpl to avoid ICU types exposure 2016-12-12 22:34:52 +02:00
Bruno de Oliveira Abinader
ce5ed9e649 [build] ICU is now configured per platform 2016-12-12 22:34:52 +02:00
Jesse Bounds
e38b4b590d [ios, macos] Load features into shape source if possible (#7339)
This checks the kind of MGLShape passed into the source and, if it
is a feature, it mbgl feature objects to pass to core. This keeps the
feature id and attributes data intact. If the shape is a
`MGLShapeCollectionFeature` it creates an `mbgl::FeatureCollection`
object (also to keep feature properties). If the shape is not any
sort of feature, it passes along just the geometry.

This also uses the MGLFeatureFromMBGLFeature converter for the case where
GeoJSON data passed in to a source contains a single feature. The
converter has logic to keep the id and attributes properties intact.
Before, these properties were lost because only geometry conversion
was done.

Finally, logic to handle (and associated tests) of nested shape
collection features is removed since that is not supported by
the GeoJSON spec or the core implementation.

[ios] Add test of drawing plain shape to iosapp
2016-12-12 10:38:49 -08:00
Tobrun
eff986bfc4 [android] - update gradle wrapper and gradle plugin (#7381) 2016-12-12 19:22:33 +01:00
Konstantin Käfer
6fb24b2082 [build] only build active architecture for Debug builds on iOS 2016-12-12 18:53:46 +01:00
Ivo van Dongen
e9f101a52f [ios, macos] handle duplicate layer error 2016-12-12 09:05:23 -05:00
Ivo van Dongen
a32e62cb0f [android] test duplicate layer id exception handling 2016-12-12 09:05:23 -05:00
Ivo van Dongen
028db7feba [core] guard against duplicate layer ids 2016-12-12 09:05:23 -05:00
Ivo van Dongen
c76a933514 [core] use raii to guard backend deactivation 2016-12-12 09:05:23 -05:00