Commit Graph

70 Commits

Author SHA1 Message Date
Konstantin Käfer
94ceeb739d [build] fix iOS packaging 2016-08-05 11:42:22 +02:00
Konstantin Käfer
692fe1f3ff [build] switch to CMake
This is very much a work in progress.
2016-08-05 11:42:22 +02:00
Minh Nguyễn
b9702ef41a [macos] Renamed OS X SDK to macOS SDK
Also renamed as many references to OS X as possible to macOS in documentation.
2016-06-14 10:02:06 +02:00
John Firebaugh
27baa34d44 [osx] Ignore a file that Xcode keeps generating for some reason 2016-06-02 14:48:52 -07:00
Jesse Bounds
39669243b7 [ios] Introduce MGLAnnotationView and support for view annotations
Add an UIView subclass that can be used as the base class for all
client provided UIViews for annotations.

Teach MGLMapView to be able to display annotation views over the map if provided by the client delegate. For now, if the delegate provides a UIView then it will be used. If not, the map view will fall back to the old strategy of using GL annotations with an image provided by the delegate or a default image if not.
The map keeps a reuse queue and will store annotation views that are panned
offscreen in the queue if the application developer supplied a reuse queue identifer. The views in the queue are reused when more annotation
views are required. This view reuse provides a performance gain when many
annotations are shown and most of them are offscreen.

iosapp now implements the new delegate method to supply
a native view.

Add a playground to the workspace to facilitate experimentation
with new features. A playground is capable of importing frameworks if it
exists in the same workspace that builds the imported framework. The
initial playground demonstrates annotation views.

This also fixes a crash due to nullptr in annotations array If the `annotations` method is called while the user dot's callout view was showing, the userdot annotation is represented as null in the annotation context map. This
caused a crash when the null pointer was attempted to be converted
into an NSArray via C array. This protects against this bug by filtering out such a null annotation.
2016-05-13 15:51:40 -07:00
John Firebaugh
e916cc811c [tests] Rationalize test fixtures (#4834)
Place them in a directory corresponding to the test .cpp file name.
2016-04-25 14:51:27 -07:00
Minh Nguyễn
a392f972fc [ios] Use downloaded local assets in ios-bench if present
If you’ve gone through the trouble of running iso-bench’s download.sh scripts, use those assets instead of fetching them at runtime from the server.
2016-04-18 14:19:09 -07:00
John Firebaugh
d8c4dcc13b [ios, osx] gitignore xcuserdata directories 2016-04-18 11:42:43 -07:00
John Firebaugh
f964e40e7e [build] Refactor and simplify build system
* Main gyp files are now standardized as platform/<platform>/platform.gyp.
* Each platform gyp file defines appropriate loop_lib and headless_lib variables.
* Each platform gyp file includes mbgl.gypi, which defines base targets which may be useful to all platforms.
* CI targets are consistent across platforms: `make $(PLATFORM) && make test-$(PLATFORM)`.
* Renamed the "linux" test app to "glfw". It's now built in OS X CI.
* Android build flakiness is fixed.
* iOS CI builds the bench and iosapp targets.
* Mesa version is now in one place.
* CI scripts use bash "strict mode" and correct error handling.
* All build output goes to the build directory.
* Removed vestigial iOS/OS X/Android Travis scripts.
2016-04-07 18:01:02 -07:00
John Firebaugh
5130ca8843 [core] Implement a vacuum strategy for the offline database
Enable `PRAGMA auto_vacuum = INCREMENTAL`, and perform a `PRAGMA incremental_vacuum` when deleting an offline region.
2016-03-17 14:17:59 -07:00
Bruno de Oliveira Abinader
ec97264431 [osx] Enable coverage support for debug build 2016-02-18 15:01:58 +02:00
John Firebaugh
c91b44b02f Add binary for smoke-testing offline downloads 2016-02-10 15:40:20 -08:00
John Firebaugh
cdedb66387 [core] Reimplement existing caching within an offline-capable database schema 2016-02-10 15:40:20 -08:00
John Firebaugh
13d5b18eba [android] Move into platform subdirectory 2015-12-16 14:52:29 -08:00
John Firebaugh
0ff9295ca8 [core] Move linux and osx to platform subdirectory 2015-12-10 16:50:39 -08:00
John Firebaugh
ed5eb9edc1 [test] Add pixelmatch; use in annotation tests 2015-11-25 15:57:37 -08:00
Konstantin Käfer
6a78a4763d [iOS] fix benchmarking app and update to style v8 2015-10-02 14:57:26 +02:00
John Firebaugh
028abaab00 Ensure that LiveTileData can be reparsed
Annotation tiles may become partially parsed just like regular tiles,
for example if a point annotation is added to the map before the style's
sprite has been loaded. In such cases, they need to be reparsed or the
annotation will not be rendered. Previously, the code path for reparsing
would be short-circuited by a dynamic_cast<VectorTileData*> followed by
a null check. This commit removes that case and adds (back) a virtual
reparse method to the TileData interface.
2015-09-28 14:10:00 -07:00
Lucas Wojciechowski
f536db3116 Add node_modules to .gitignore 2015-09-17 15:49:54 -07:00
Mike Morris
4694c7b51a fix example, clean up duplicate files 2015-09-01 16:08:46 -04:00
Mike Morris
0e79d56b09 move package.json and binding.gyp to root, drop tiles.tilejson 2015-09-01 15:51:29 -04:00
Mike Morris
3fea9d3878 'make node' compiles! 2015-08-25 14:30:13 -04:00
Konstantin Käfer
e6053aa547 Make build system architecture agnostic to remove Android special case 2015-08-04 14:08:58 +02:00
Brad Leege
641046138c Adding extraneous settings files to gitignore 2015-06-22 13:10:45 -05:00
Thiago Marcos P. Santos
4b061a0588 Add output of RepeatedRender test to .gitignore
Also delete files that are test output but were checked in.
2015-05-15 12:34:57 +03:00
Konstantin Käfer
24083c582c [iOS] add benchmarking application 2015-05-05 11:53:20 +02:00
John Firebaugh
9e4a03fd9d Ignore test generated files 2015-04-28 14:32:23 -04:00
Konstantin Käfer
48c55af5c1 fix sprites for pixel ratios that are not 1 and 2
- OpenGL ES 2 doesn't allow NPOT textures with wrap-around
- The Sprite object reported the map's pixelRatio, even though it loaded @2x assets
- Copying icons from the sprite into the atlas now uses bilinear scaling to scale up to the actual size
2015-03-17 12:30:40 +01:00
Konstantin Käfer
47ede853c4 fixes black flicker on rotating the device
fixes #838

instead of rendering ad libitum on the map thread, we are now driving rendering from the UI thread on iOS via the map.renderSync() function. There are still white bars during the rotation, but the general content of the view is kept visible.

- upgrades GLFW to 3.1
- removes swapped/needsSwap in favor of a more explicit scheme
- View#invalidate() now replaces View#swap() and is called whenever the View needs to trigger a rerender. GLFW and Android to this right away, while iOS goes back to the main thread and does the Map redrawing as part of the GLKView update
- sets all iOS deployment targets to 7.0
- disables SQLite3 version check, since the library version changed on iOS 8.2
2015-03-12 12:16:38 +01:00
Justin R. Miller
d4d4cd4415 move iOS code from gl-cocoa to this project 2015-02-09 18:01:40 -08:00
Konstantin Käfer
da981e7825 move config files to config/ folder 2015-02-04 18:07:32 +01:00
Konstantin Käfer
f66862b422 don't use -schema for building xcode projects 2015-02-04 11:54:02 +01:00
Konstantin Käfer
69975c7094 make different abis for android 2015-02-04 10:49:09 +01:00
Konstantin Käfer
3d51e116a8 use fake linker for merging the standalone static library 2015-02-04 10:49:08 +01:00
Konstantin Käfer
8a1fce547e rearrange tests and add storage tests 2015-02-04 10:49:05 +01:00
Leith Bade
de9eb00276 Merge branch 'master' of github.com:mapbox/mapbox-gl-native into android-mason
Conflicts:
	.gitignore
	gyp/mbgl-ios.gypi
	gyp/mbgl-linux.gypi
	gyp/mbgl-osx.gypi
	include/mbgl/map/map.hpp
	src/mbgl/map/map.cpp
	src/mbgl/storage/caching_http_file_source.cpp
2014-12-05 23:16:49 +11:00
Konstantin Käfer
abafb52f37 make most headers private 2014-12-04 20:02:50 +01:00
Leith Bade
16c8b3198a Ignore *~ 2014-11-15 19:50:33 +11:00
Leith Bade
30235e5832 Ignore config-android.gypi 2014-11-04 22:36:19 +11:00
John Firebaugh
551ff954a5 Remove unused 2014-11-01 11:53:04 -04:00
Konstantin Käfer
080c185ea1 remove dependency on node 2014-10-31 16:02:41 -04:00
Dane Springmeyer
46739eb776 remove directories from ignores 2014-10-30 16:06:37 -04:00
Konstantin Käfer
2dbe9edb06 write to correct file and add to gitignore 2014-10-22 12:01:56 +02:00
John Firebaugh
a634605176 Kill config.mk (fixes #456) 2014-09-03 14:59:18 -07:00
Mike Morris
fae1c157f6 build fixes 2014-08-11 13:24:25 -04:00
Mike Morris
54a81d0f9b migrate style_parser tests to use info and style json fixtures 2014-07-18 14:09:33 -04:00
Konstantin Käfer
4ea281c750 rename llmr => mbgl 2014-07-16 18:53:56 -07:00
Konstantin Käfer
ce541a962e fuzzy image comparison + create diff images 2014-07-09 15:07:48 -07:00
Konstantin Käfer
37bd80dd9d add html result table 2014-07-09 13:10:07 -07:00
Konstantin Käfer
d0d68d08f4 fix automated headless testing on travis 2014-07-09 12:37:59 -07:00