summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* [core] Removed map attribution APIMinh Nguyễn2016-09-267-32/+13
| | | | Since client code can readily access the individual sources, Map doesn’t need to expose a dedicated API for iterating over them.
* [core] Extract some GlyphRange-related constantsJohn Firebaugh2016-09-261-0/+3
|
* [core] Source-driven attributionMinh Nguyễn2016-09-267-3/+54
| | | | | | Implemented observer callbacks so the style knows when the source’s attribution changes and the map knows when the style’s attribution changes. Also implemented a getter for a tile source’s attribution. Fixes #2723.
* [core] Fix initialization race on util::mapbox::isMapboxURL (#6455)Thiago Marcos P. Santos2016-09-261-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | This function can be called from different threads and was depending on a global `std::string protocol` which can do heap allocations. The first thread to use it would initialized it which is not exactly safe, so this patch moves it to a `char *` that is just a pointer to the data segment, so no races. Valgrind detected it on #6431. ``` ==9874== Conditional jump or move depends on uninitialised value(s) ==9874== at 0x4C307C2: __memcmp_sse4_1 (in /home/travis/build/mapbox/mapbox-gl-native/mason_packages/linux-x86_64/valgrind/latest/lib/valgrind/vgpreload_memcheck-amd64-linux.so) ==9874== by 0x79896E: mbgl::util::mapbox::isMapboxURL(std::string const&) (in /home/travis/build/mapbox/mapbox-gl-native/build/qt-linux-x86_64/Release/mbgl-test) ==9874== by 0x6DC756: mbgl::style::TileSourceImpl::parseTileJSON(std::string const&, std::string const&, mbgl::SourceType, unsigned short) (in /home/travis/build/mapbox/mapbox-gl-native/build/qt-linux-x86_64/Release/mbgl-test) ==9874== by 0x6DDA6A: std::_Function_handler<void (mbgl::Response), mbgl::style::TileSourceImpl::loadDescription(mbgl::FileSource&)::{lambda(mbgl::Response)#1}>::_M_invoke(std::_Any_data const&, mbgl::Response&&) (in /home/travis/build/mapbox/mapbox-gl-native/build/qt-linux-x86_64/Release/mbgl-test) ==9874== by 0x50BE80: std::_Function_handler<void (), mbgl::StubFileSource::StubFileSource()::{lambda()#1}>::_M_invoke(std::_Any_data const&) (in /home/travis/build/mapbox/mapbox-gl-native/build/qt-linux-x86_64/Release/mbgl-test) ==9874== by 0x70972A5: QMetaObject::activate(QObject*, int, int, void**) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1) ==9874== by 0x70A3621: QTimer::timerEvent(QTimerEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1) ==9874== by 0x7098053: QObject::event(QEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1) ==9874== by 0x60CCC8B: QApplicationPrivate::notify_helper(QObject*, QEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.2.1) ==9874== by 0x60D1E55: QApplication::notify(QObject*, QEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5.2.1) ==9874== by 0x706FC2C: QCoreApplication::notifyInternal(QObject*, QEvent*) (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1) ==9874== by 0x70BC1AC: QTimerInfoList::activateTimers() (in /usr/lib/x86_64-linux-gnu/libQt5Core.so.5.2.1) ==9874== ```
* [core] Trigger Update::RecalculateStyle when toggling layer visibilityBruno de Oliveira Abinader2016-09-261-1/+1
|
* [core] Reuse Map::update()Bruno de Oliveira Abinader2016-09-261-4/+2
|
* [core] track VAOs and BuffersKonstantin Käfer2016-09-2625-123/+182
|
* [core] make GL value defaults constexprKonstantin Käfer2016-09-262-32/+32
|
* [core] ensure network::Reachable is called only onceIvo van Dongen2016-09-231-3/+3
|
* [core] Don't use depth test unless text is pitch-aligned to map (#6404)Young Hahn2016-09-221-8/+4
| | | | | | | | | | | | | | | | * [core, ios, android] Use `auto` value for properties with calculated defaults * Fix render tests * [core] Don't use depth test unless text is pitch-aligned to map. * Bump mapbox-gl-test-suite * TransformState pitch is already in radians * Reduce setDepthSublayer calls * Bump test suite
* [core] Add interface to add sprites to the styleThiago Marcos P. Santos2016-09-221-0/+24
| | | | Unlike annotations, they will go away when we change the style.
* Better handling for undefined icon|text-rotation-alignment (#6253)Young Hahn2016-09-214-14/+24
| | | | | | * [core, ios, android] Use `auto` value for properties with calculated defaults * Fix render tests
* [core] check GL errors in loopMike Morris2016-09-211-15/+51
| | | | | | As recommended in https://www.opengl.org/wiki/GLAPI/glGetError char* -> std::string
* [core] add GL_CONTEXT_LOST case to checkErrorMike Morris2016-09-211-4/+7
| | | | | and reorder according to hex value https://www.opengl.org/wiki/OpenGL_Error#Testing_for_errors
* [core] - mutable geojson sources. make tiles protected for ↵Tobrun2016-09-205-19/+31
| | | | geojson_source_impl (#6347)
* [core] Fix ThreadPool race condition (#6388)John Firebaugh2016-09-202-7/+13
|
* [core] Allow queryRenderedFeatures prior to symbol placement (#6376)John Firebaugh2016-09-201-2/+5
|
* [core] do not render layers that are outside their zoom rangeKonstantin Käfer2016-09-201-4/+19
| | | | So far, we didn't properly disable layers that are outside the zoom range. This means that we rendered layers that should not have been rendered, albeit we didn't make any attempt to load tiles for those layers. However, when zooming in/out, existing tiles might already have been loaded in the source which continued to be rendered. In most cases they weren't actually visible because either the matrices weren't updated, or the clip IDs weren't set so that they would be "rendered" off-screen and clipped completely. In any case, we did way too much work.
* [core] MapChangeDidFinishLoadingStyle - Ensure style is loaded (#6392)Ivo van Dongen2016-09-201-3/+2
|
* [core] add MapChangeDidFinishLoadingStyle signal (#6371)Ivo van Dongen2016-09-204-0/+9
|
* [android] - do not update marker while creating (#6314)Tobrun2016-09-191-4/+24
| | | | | | | | * [android] - do not update marker while creating, add activity to prevent regression * [core] - add asserts to incorrect usage of update and remove annotations api * [android] - fix marker tests
* [core] Convert uses of std::set to std::unordered_set (#6325)Lucas Wojciechowski2016-09-1913-21/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | * src/mbgl/annotation/annotation_manager.hpp * src/mbgl/algorithm/update_renderables.hpp * src/mbgl/geometry/glyph_atlas.hpp * src/mbgl/renderer/painter.cpp and src/mbgl/renderer/render_item.hpp * src/mbgl/renderer/symbol_bucket.hpp and src/mbgl/text/glyph_store.hpp * src/mbgl/sprite/sprite_atlas.hpp * include/mbgl/storage/network_status.hpp * src/mbgl/text/collision_tile.cpp * src/mbgl/style/update_batch.hpp * platform/default/mbgl/storage/offline_download.hpp * Add GlyphRangeSet typedef * Fix whitespace & unused imports
* [core] Merge GlyphStore and GlyphAtlasJohn Firebaugh2016-09-1918-205/+153
|
* [core] Merge SpriteStore and SpriteAtlasJohn Firebaugh2016-09-1916-291/+232
|
* Keep query strings in source URLs (#6182)Jake Pruitt2016-09-161-6/+24
| | | | Carries over any query strings from mapbox://-prefixed styles urls, source urls and tile urls to the api.mapbox.com requests.
* [core] Document the ActorRef<O> argument passed to O's constructorJohn Firebaugh2016-09-161-6/+7
|
* [core] Use an actor model for tile worker concurrencyJohn Firebaugh2016-09-1633-784/+954
|
* [core] Correct evaluation of interval functionsclydebarrow2016-09-161-2/+2
|
* [core] Use consistent terms: "text" and "icon"John Firebaugh2016-09-163-15/+15
|
* [core] Use optional to represent possible absence, not empty stringsJohn Firebaugh2016-09-163-18/+16
|
* [core] Move SymbolInstance and SymbolFeature into their own filesJohn Firebaugh2016-09-167-59/+94
|
* [core] Move {clip,merge}_lines to layout directoryJohn Firebaugh2016-09-165-4/+4
|
* [core] [android] - public api configurable base endpoint (#6309)Tobrun2016-09-152-19/+17
| | | add runloop to test
* [core] upgrade RapidJSON to 1.1.0Konstantin Käfer2016-09-153-12/+12
|
* [core] add explicit std::hash<mbgl::style::ClassID> implementation to ↵Konstantin Käfer2016-09-151-0/+17
| | | | appease GCC
* [core] #3980 - Putting friend class SymbolLayout backBrad Leege2016-09-141-0/+1
|
* [core] #3980 - Switching Core GL instances of map to unordered_mapBrad Leege2016-09-149-23/+56
|
* [core] Avoid gratuitous SymbolBucket creationJohn Firebaugh2016-09-142-4/+5
|
* [core] Extract SymbolLayout from SymbolBucketJohn Firebaugh2016-09-1416-871/+903
| | | | | | | | | | | | | | SymbolLayout lives on the worker thread and contains the persistent data needed for repeated placement. SymbolBucket contains the data generated during placement, and is transferred to the main thread for rendering. This eliminates the risky sharing of GeometryTile::buckets between the main thread and worker thread during TileWorker::redoPlacement. While here, rationalize the names of states a SymbolLayout may be in: * Pending: Waiting for the necessary glyphs or icons to be available. * Prepared: The potential positions of text and icons have been determined. * Placed: The final positions have been determined, taking into account prior layers. In TileWorker, all SymbolLayouts are stored in a single vector. Each SymbolLayout knows what state it is in, and TileWorker can easily determine how much progress it can make toward a final result.
* [core] Another band-aid (#6322) (#6333)John Firebaugh2016-09-141-1/+1
|
* [core] Band-aid to prevent GeometryTile::redoLayout race condition from ↵John Firebaugh2016-09-131-0/+6
| | | | causing a crash (#6322)
* [core] OnlineFileSource - rate limitIvo van Dongen2016-09-136-2/+86
|
* [core] Separate transition options accessors from class APIBruno de Oliveira Abinader2016-09-133-19/+40
| | | | | Now the style class transition options have its own getter/setter, which persists for each style until a new style is set.
* [core] Check if style exists prior to accessing via Map functionsBruno de Oliveira Abinader2016-09-131-20/+58
|
* [core] Don't use std::move on forwarding referencesJohn Firebaugh2016-09-081-1/+1
|
* [core] Rework invokeWithCallback so that the callback is lastJohn Firebaugh2016-09-082-15/+18
|
* [core] change bool *AlongLine to SymbolPlacementTypeKonstantin Käfer2016-09-076-41/+44
|
* [core] change bool onRight to SideKonstantin Käfer2016-09-071-5/+10
|
* [core] change bool round to LinePatternCapKonstantin Käfer2016-09-073-10/+19
|
* [core] change bool overdraw to PaintMode::OverdrawKonstantin Käfer2016-09-0712-55/+83
|