summaryrefslogtreecommitdiff
path: root/platform/default
Commit message (Collapse)AuthorAgeFilesLines
* [core] offline region definition - add support for arbitrary geometriesIvo van Dongen2018-08-202-69/+149
|
* [core] recreate offline database when it is deleted out from under our feetKonstantin Käfer2018-08-143-14/+22
|
* WIP: use expected<T, E> for passing on errorsKonstantin Käfer2018-08-143-60/+49
|
* [core] harden OfflineDatabaseKonstantin Käfer2018-08-145-152/+292
|
* [core] Fix out of range exception for string compareVladimir Kondrashov2018-08-142-2/+2
|
* [windows] Fix build on WindowsThiago Marcos P. Santos2018-08-141-0/+1
| | | | Include what you use.
* [core] make the offline DB schema a regular include fileKonstantin Käfer2018-07-163-25/+30
|
* [core] - add LatLng for screencoordinate to mapsnapshottertobrun2018-07-052-2/+13
|
* [core] Avoid blocking in Thread<Object> constructor (#12151)Anand Thakker2018-07-033-19/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Introduce AspiringActor, EstablishedActor This pair of objects represents the two-phase (parent-thread / child-thread) construction that's needed to support constructing Thread<Object> without blocking until the child thread is up and running. An `AspiringActor<O>` is responsible for: - ownership of the actor's `Mailbox` - allocating the memory for (but *not* constructing) the target object `O` Using these two pieces--the mailbox and a stable address for `O`--an `AspiringActor<O>` can accept messages for the target object, or provide `ActorRef<O>`s that do so, before the object has actually been constructed by the corresponding `EstablishedActor<O>`. (Such messages are queued in the mailbox until after the object is constructed.) This allows for an `AspiringActor<O>` to be created and safely used by a thread other than the one on which the target object will (eventually) live. An `EstablishedActor<O>` is responsible for managing the lifetime of the target object `O` and the open/closed state of the parent's `mailbox`. The `O` object's lifetime is contained by that of its owning `EstablishedActor<O>`: the `EstablishedActor` constructor executes the `O` constructor via "placement new", constructing it at the address provided by the parent `AspiringActor`, and the `~EstablishedActor` destructor similarly executes the `~O` destructor (after closing the mailbox). `EstablishedActor` should therefore live entirely on the thread intended to own `O`. * Remove Actor#{invoke,ask}
* [core] Default "collator" implementationChris Loer2018-07-033-0/+135
| | | | | | - Based on nunicode - Not locale-aware - Used by linux and Qt builds
* [core, vendor] Create vendored nunicode 1.8.Chris Loer2018-07-031-4/+1
| | | | | - Version bump to 1.8 necessary for "unaccent" functionality - Qt now depends on nunicode, ruling out use of precompiled binaries
* [core] Fix GCC8's new -Wcatch-value warningsZsolt Bölöny2018-06-252-2/+2
| | | Polymorphic types shouldn't be caught by value, as the warning message says. Catch them by constant reference instead.
* [core] Measuring tiles requesting/parsing time using logging (#12152)Lloyd Sheng2018-06-211-0/+10
| | | | | | | | | | | | * Tile timing * Refactor logging code * Keep the scope of `messageStream` constrained * Make log message more clear * Fix crash issue if onlineResponse.data is null
* [core] consolidate database opening workflowKonstantin Käfer2018-06-123-57/+65
| | | | | | | | Before this change, we've tried to open the database in read/write, but not create mode. In situations where the database didn't exist yet, this logged an error to the console, and we proceeded to opening it again in read/write/create mode, which actually created the file. The reason we did this is so that we could detect really old caching databases from January 2016 in case a developer upgraded from an older SDK (iOS v3.1 and earlier, Android v3.2 and earlier) that didn't have https://github.com/mapbox/mapbox-gl-native/pull/3715 yet. However, these error messages, while innocent, look scary in the console and some users suspect that it's a bug. This change opens the file directly in read/write/create mode, omitting the first failed attempt. To handle old cache databases, we're now deleting the `http_cache` table, which was the only table in those old databases, and create the new schema, rather than deleting the entire file and recreating the Database object. In most scenarios, this will lead to one fewer opening attempt, while the database migration will continue to work for the few users who upgrade all the way from a January 2016 SDK. Additionally, this fixes a mismatch between the Qt and non-Qt implementation: Qt doesn't support opening a file in read/write mode without the create flag. This means that we've seen a different control flow on Qt compared to the non-Qt implementation when opening a database.
* [core] remove unused flags from SQLite headerKonstantin Käfer2018-06-121-4/+0
|
* [core] support moving Database object during a TransactionKonstantin Käfer2018-06-122-11/+24
|
* [test] verify log messages of OfflineDatabase testsKonstantin Käfer2018-06-121-1/+1
|
* [core] send all SQLite log messages to the Info bucket and add error codesKonstantin Käfer2018-06-121-77/+1
|
* [core] offline database - batch region resource insertsIvo van Dongen2018-06-044-20/+77
|
* [core] offline database - move transaction scope to public api levelIvo van Dongen2018-06-041-14/+4
|
* [linux] load cURL dynamically for wider compatibilityKonstantin Käfer2018-06-041-43/+122
|
* [core] [android] - optional map snapshotter camera positiontobrun2018-05-312-5/+8
|
* [core] [android] - add style json setter/getter to map snapshottertobrun2018-05-302-0/+22
|
* Style JSON configuration on map snapshotter (#11976)Tobrun2018-05-232-7/+10
| | | * [core, android, darwin] - add style JSON configuration on MapSnapshotter
* Avoid exceptions for flow control during database creationJohn Firebaugh2018-05-094-48/+77
| | | | Unfortuntely, it's difficult to avoid all exceptions, because sqlite3_open_v2 does not reliably return SQLITE_NOTADB if the file is not a database. However, this should avoid cases where developers misinterpret the SQLITE_CANTOPEN exception as a crash, which is the common case.
* [ios, macos] Update minimum deployment versions to iOS 9, macOS 10.11 (#11776)Jason Wray2018-04-271-5/+6
| | | | | | | | | | | | | | | | | | | * [ios] Remove iOS 8 conditionals * [ios, macos] Bump pod deployment targets * [ios, macos] Add changelog entries * [ios, macos] Update docs * Remove unnecessary selector-based version checks * Update SQLite note * [ios, macos] Replace lightweight generics macros with direct use Lightweight generics for Foundation collections are available everywhere with the bump to iOS 9 and macOS 10.11. * Update deprecated macOS method
* [core] Streaming TileCover for polygonal regions (#11267)Asheem Mamoowala2018-04-261-1/+1
| | | A per-tile streaming algorithm for tile cover on points, lines, and polygons. Works for individual zoom levels, and not zoom ranges.
* Merge branch 'release-boba' into masterupstream/fabian-merge-v4.0.0Fabian Guerra2018-04-231-3/+0
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # Conflicts: # circle.yml # include/mbgl/style/expression/let.hpp # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/geometry/LatLngBounds.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapGestureDetector.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapKeyListener.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapboxMap.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Projection.java # platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/Transform.java # platform/android/MapboxGLAndroidSDK/src/test/java/com/mapbox/mapboxsdk/geometry/LatLngBoundsTest.java # platform/android/MapboxGLAndroidSDKTestApp/src/main/AndroidManifest.xml # platform/android/gradle/dependencies.gradle # platform/android/src/example_custom_layer.cpp # platform/android/src/geojson/point.cpp # platform/darwin/src/NSPredicate+MGLAdditions.mm # platform/darwin/test/MGLExpressionTests.mm # platform/ios/Mapbox-iOS-SDK-nightly-dynamic.podspec # platform/ios/Mapbox-iOS-SDK-symbols.podspec # platform/ios/Mapbox-iOS-SDK.podspec # platform/ios/app/MBXViewController.m # src/mbgl/renderer/layers/render_custom_layer.cpp # src/mbgl/style/conversion/filter.cpp # src/mbgl/style/expression/interpolate.cpp # src/mbgl/style/expression/value.cpp # test/style/filter.test.cpp
| * [ios, macos] Mark deprecated methods as unavailable (#11205)Jordan Kiley2018-02-161-3/+0
| | | | | | Fixes #10735
* | [core, qt] move self-resetting Statement/Query object to shared headerKonstantin Käfer2018-03-024-403/+405
| |
* | [core] refactor SQLite error/status codesKonstantin Käfer2018-03-022-12/+45
| |
* | [core] improve SQLite error loggingKonstantin Käfer2018-03-021-6/+76
| |
* | [core] Add space in OfflineDatabase::updateMetadata SQL queryBruno de Oliveira Abinader2018-02-271-1/+1
|/
* [core] factor out RunLoop::wake()Konstantin Käfer2018-02-061-5/+2
|
* [core] align implementations of local and asset file sourceKonstantin Käfer2018-01-253-26/+30
|
* [core] add raster-dem source type and hillshade layer type (#10642)Molly Lloyd2018-01-231-0/+13
|
* [windows][core] Define S_ISDIR when not definedThiago Marcos P. Santos2018-01-081-1/+4
|
* [core, macos, ios] Unit tests for LocalGlyphRasterizerChris Loer2017-12-112-6/+6
| | | | | | Core test uses stubbed "glyph.pbf" without Chinese glyphs Darwin test relies on locally available "PingFang" font. Android test relies on locally available "Droid" font. 'expected.png' is NOT correct b/c I haven't figured out how to run unit tests on Android yet.
* [ios,macos] Darwin implementation of a CoreText-based LocalGlyphRasterizer.Chris Loer2017-12-111-0/+9
| | | | | - Changing font weight does not currently appear to be working. - Glyph metric extraction code not working; currently unused.
* [core] Enable local glyph generation using TinySDF.Chris Loer2017-12-111-0/+13
| | | | | | | - Platform-specific LocalGlyphRasterizer is responsible for deciding which glyphs to rasterize locally and for implementing the rasterization. - Default platform implementation doesn't locally generate any glyphs -> no behavior change - Unit test uses StubLocalGlyphRasterizer, which returns a single fixed bitmap for all CJK glyphs - Rename glyph_loader.test to glyph_manager.test
* [core] move HeadlessBackend extension initialization code into ImplKonstantin Käfer2017-11-293-19/+26
|
* [core] fold HeadlessDisplay into the headless RenderBackend implementationKonstantin Käfer2017-11-295-74/+12
|
* [core, ios, qt, android] Close race condition in RunLoop (issue #9620)Chris Loer2017-11-271-2/+4
| | | | | Because a message we queue from the foreground may cause the background to complete, exit, and tear down the AsyncTask, we have to block queue processing until we've finished our call to AsyncTask::send(). Broadening the scope of a mutex is scary, but I audited the code of our four implementations of AsyncTask and I don't see any way this could cause a deadlock.
* [core] Custom Geometry SourcesAsheem Mamoowala2017-11-221-0/+2
|
* [core] Split MapMode::Still into Static and TileAnsis Brammanis2017-11-171-1/+1
| | | | | `Tile` makes sure the symbols in the resulting tile are tileable while symbols in `Still` match rendering in `Continuous` mode.
* [core] Expose GLContextMode in HeadlessFrontendBruno de Oliveira Abinader2017-11-012-6/+7
|
* [core] map snapshotter - add attributions to snapshotter callbackIvo van Dongen2017-10-312-1/+14
|
* [default] map snapshotter - add function to get screen coordinate from ↵Ivo van Dongen2017-10-312-2/+23
| | | | | | latlng for snapshot - Wraps the TransformState for the snapshot so that the snapshotter itself is free to be re-used or destroyed
* [default] headless frontend - allow access to the transform stateIvo van Dongen2017-10-312-0/+13
|
* [android] map snapshotter - add mutatorsIvo van Dongen2017-10-311-0/+1
|