Commit Graph

915 Commits

Author SHA1 Message Date
Thiago Marcos P. Santos
2b6afe6a54 Merge pull request #972 from mapbox/log_cleanup
Refactoring of the log system
2015-03-12 14:18:25 +02:00
Thiago Marcos P. Santos
79f3149d9d Update the FixtureLog
Now the FixtureLog is an Log::Observer instead of a backend. The
observer can sniff and filter log messages, that can be used
for fail a test if it emits a warning for example.
2015-03-12 13:28:41 +02:00
Thiago Marcos P. Santos
51bc265db3 Make the logging system static
No initialization is needed anymore and we can use the logging functions
safely at any point of the code (threading is not handled though, so you
might get multiplexed messages if you log from two threads
simultaneously).
2015-03-12 13:28:41 +02:00
Thiago Marcos P. Santos
2948e7d121 Simplify the logging mechanism
Move the implementation of the more specialized methods to the base
class and let the platform implement only the most generic method that
takes all the possible arguments.

These specialized methods will then map to the generic implementation
that must be provided by the platforms we support.
2015-03-12 13:28:40 +02: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
Konstantin Käfer
10d84f6be8 remove unused enum 2015-03-06 20:52:47 +01:00
Konstantin Käfer
9781785ab7 scope Requests to an Environment object for easier cancelation
we are now scoping all file requests to an environment object. The FileSource implementation treats
this as an opaque pointer, but allows canceling all Requests that are associated with that pointer.
This is necessary to abort all file requests that originated from a particular Map object. Aborting
a file request is different from canceling a file request: A canceled request doesn't have its
callback called, while an aborted request will have its callback called with an error, indicating
that the environment is going to be shut down.
2015-03-06 08:21:47 -08:00
Konstantin Käfer
8c0acecbe3 fix handling around unique_ptr releases 2015-03-06 16:17:49 +01:00
Konstantin Käfer
8408dc9e4d use a reinterpret_cast to return the correct type 2015-03-06 16:17:49 +01:00
Konstantin Käfer
2075d6bb9a fix ambiguous name (gcc) 2015-03-06 16:09:14 +01:00
Konstantin Käfer
025654a101 throw exception when shader compilation fails 2015-03-06 15:42:34 +01:00
Konstantin Käfer
e8389d82cd guard against concurrent OpenGL extension loading 2015-03-06 15:42:34 +01:00
Konstantin Käfer
c30bb1a9f8 add more locking around GlyphStore and FontStack
this is a stopgap until we have a solution that gives every worker thread their own copy
2015-03-06 15:42:34 +01:00
Konstantin Käfer
e00bae4f1c lock the StyleBucket to avoid crashing
stopgap until we have a solution that doesn't mutate the style objects while parsing a tile
2015-03-06 15:42:34 +01:00
Konstantin Käfer
cf235c6592 move readlock/writelock to uv.hpp and add movable lock/mutex 2015-03-06 15:42:33 +01:00
Konstantin Käfer
86455585ee update mapbox::variant 2015-03-06 14:40:33 +01:00
Konstantin Käfer
fb44fc81bd make Map::resize() private
they can only be called by View::resize
2015-03-06 13:52:25 +01:00
Konstantin Käfer
8e42582c52 update static image rendering executable 2015-03-06 12:41:00 +01:00
Leith Bade
5c79baedf9 Add projection functions to Java 2015-02-19 14:28:49 -08:00
Leith Bade
4daa02987b Tidy up JNI LatLng refs 2015-02-19 14:28:49 -08:00
Konstantin Käfer
fe0baffe0d update uv_zip and add tests 2015-02-16 18:30:19 -08:00
Justin R. Miller
6e41664cb0 fixes #476 & #853: pixel/meter/latlng conversion routines in core & iOS 2015-02-16 09:52:36 -08:00
Konstantin Käfer
f4e9908045 code style 2015-02-13 13:28:40 -08:00
Konstantin Käfer
aecef6da1a make sure that the async handle always gets closed 2015-02-13 13:28:40 -08:00
Leith Bade
acfeda9899 Fix #include <uv.h> mixing between C and C++ modes 2015-02-11 19:01:30 -08:00
Mike Morris
e8a2c39365 forward declare GLX typedefs to limit conflicts from glx.h 2015-02-10 13:38:45 -08: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
29baacf3a5 refactor makefile 2015-02-04 10:49:09 +01:00
Konstantin Käfer
12341ce0ee add missing headers 2015-02-04 10:49:08 +01:00
Konstantin Käfer
704b3719f5 use standard DEBUG macro rather than NDEBUG 2015-02-04 10:49:07 +01:00
Konstantin Käfer
9a549094e0 make ios compile 2015-02-04 10:49:06 +01:00
Konstantin Käfer
78376acea7 don't override std::hash 2015-02-04 10:49:06 +01:00
Konstantin Käfer
92a7f73bbe fixes for linux 2015-02-04 10:49:06 +01:00
Konstantin Käfer
8a1fce547e rearrange tests and add storage tests 2015-02-04 10:49:05 +01:00
Konstantin Käfer
31a0d18ca1 remove circular shared_ptr and a few other memory leaks 2015-02-04 10:49:05 +01:00
Konstantin Käfer
b9bf66e67e rewrite storage layer to be independent of the Map's event loop 2015-02-04 10:46:37 +01:00
Leith Bade
89bbd29278 Use std::chrono 2015-02-04 09:39:25 +11:00
Leith Bade
f65a74bbeb Remove excess semicolon in jni.hpp 2015-01-28 11:17:43 +11:00
Leith Bade
aaedd9c83b Remove program binary caching 2015-01-27 12:38:40 +11:00
Leith Bade
42d1972732 Merge branch 'master' of github.com:mapbox/mapbox-gl-native into android-mason
Conflicts:
	src/mbgl/renderer/painter_prerender.cpp
	src/mbgl/renderer/prerendered_texture.cpp
	src/mbgl/renderer/prerendered_texture.hpp
2015-01-23 11:11:04 +11:00
John Firebaugh
a8b6e3dc71 Merge remote-tracking branch 'origin/dash-3' into v7 2015-01-22 13:06:30 -08:00
Leith Bade
95e653982d Throw on egl errors 2015-01-22 23:47:09 +11:00
Leith Bade
5feba9ac07 get/setAppliedStyleClasses -> get/setClasses 2015-01-18 17:05:01 +11:00
Leith Bade
016c2948c5 Merge branch 'master' of github.com:mapbox/mapbox-gl-native into android-mason
Conflicts:
	src/mbgl/map/map.cpp
2015-01-18 16:33:39 +11:00
Ansis Brammanis
2643a0efc7 start porting dash lines from js
- switches to dash units that are scaled by line width
- adds a lineatlas to store patterns line dashed lines
- adds linesdf shader which renders line fill from the lineatlas

js: 8e83d76af3bd877eb9639c02e296363e2c0186f8
2015-01-14 20:56:18 -05:00
John Firebaugh
d24b73b1a6 Move class state to map
https://github.com/mapbox/mapbox-gl-js/pull/936
2015-01-14 17:43:44 -08:00
Leith Bade
1daf2207aa Remove coffeecatch 2015-01-13 20:31:24 +11:00
Leith Bade
e6b8c4c047 Clang-format on Android code 2015-01-02 10:14:00 +13:00
Leith Bade
ae9fb18a8d Rename View functions 2014-12-23 11:34:27 +13:00
Leith Bade
ff3ea3e20b Merge branch 'master' of github.com:mapbox/mapbox-gl-native into android-mason
Conflicts:
	platform/default/glfw_view.cpp
	platform/default/headless_view.cpp
	src/mbgl/map/map.cpp
2014-12-23 11:33:26 +13:00