Commit Graph

369 Commits

Author SHA1 Message Date
Thiago Marcos P. Santos
d229cbb031 [qt] Add an interface for Static rendering 2018-02-09 20:28:54 +02:00
Thiago Marcos P. Santos
36a0c98713 [qt] Refresh the docs 2018-02-09 20:28:54 +02:00
Thiago Marcos P. Santos
6542e6ee37 [qt] Make sure that methods are being called on the right thread 2018-02-09 20:28:54 +02:00
Thiago Marcos P. Santos
673730ccd4 [qt] Implement FBO handling
Needed for rendering 3D extrusions properly.
2018-02-09 20:28:54 +02:00
Thiago Marcos P. Santos
a4e95c3da3 [qt] Only use the MapRenderer as scheduler if there is no other
Optimization of when running on the Main Thread that has a RunLoop.
2018-02-09 20:28:54 +02:00
Thiago Marcos P. Santos
4f8a23cd8f [qt] Expose an interface to create a renderer on a separated thread
If not called, it will render on the main thread as usual.
2018-02-09 20:28:54 +02:00
Thiago Marcos P. Santos
bb00f558fb [qt] Make MapboxGLMapRenderer a scheduler to receive messages when rendering 2018-02-09 20:28:54 +02:00
Thiago Marcos P. Santos
a062f3e17b [qt] Update map rendering via RendererObserver 2018-02-09 20:28:54 +02:00
Thiago Marcos P. Santos
e7e8cb4547 [qt] Render asynchronously 2018-02-09 20:28:54 +02:00
Thiago Marcos P. Santos
18cf796b52 [qt] Removed unused call 2018-02-09 20:28:54 +02:00
Konstantin Käfer
78f8fd88b4 [core] factor out RunLoop::wake() 2018-02-06 18:49:06 +01:00
Thiago Marcos P. Santos
ecbb0baf60 [qt][build] Use ninja for compiling Qt for Windows
Faster builds.
2018-01-10 21:42:20 +02:00
Thiago Marcos P. Santos
c5be54bf43 [qt] Make example app build on Windows 2018-01-10 21:42:20 +02:00
Thiago Marcos P. Santos
0a7b4e3eb8 [qt] Fix import/export symbols declarations
Fixes #10875
2018-01-10 21:42:20 +02:00
Thiago Marcos P. Santos
c94e53d72b [qt] Refreshed build documentation 2018-01-08 22:58:20 +02:00
Thiago Marcos P. Santos
5786286f9c [windows][qt] Add build defines to build Mapbox GL + Qt on Windows 2018-01-08 22:58:20 +02:00
Thiago Marcos P. Santos
f391271532 [windows][build] Make nodejs/npm optional 2018-01-08 22:58:20 +02:00
Thiago Marcos P. Santos
f880baaeb7 [windows][qt] Remove std:: namespace of some functions
Not available on Windows.
2018-01-08 22:58:20 +02:00
Thiago Marcos P. Santos
39decb822d [qt] Removed unused headers 2018-01-08 22:58:20 +02:00
Thiago Marcos P. Santos
417909e93d [qt] Use add_definitions instead of resetting CXXFLAGS 2018-01-08 22:58:20 +02:00
Bruno de Oliveira Abinader
f86c1b7d0f [test] Only use our SQLite3 wrapper in tests 2018-01-08 19:13:47 +02:00
Konstantin Käfer
1dd5e405c1 [build] Remove unused files, and cleanup directories 2018-01-03 01:07:41 +01:00
Chris Loer
1661af1cb4 [core] Enable local glyph generation using TinySDF.
- 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
2017-12-11 10:43:00 -08:00
Konstantin Käfer
8757164ac8 [build] standardize on -fvisibility=hidden for all targets
Enables -fvisibility=hidden for iOS and Linux, and adds a workaround for GCC 6.3-7.1
Adds a GCC 6 build
Enables diagnostics for C files
Fixes a shadow warning in parsedate.c
2017-11-29 17:31:33 +01:00
Konstantin Käfer
2eec5a1980 [core] move HeadlessBackend extension initialization code into Impl 2017-11-29 15:48:51 +01:00
Konstantin Käfer
335f04f7e1 [core] fold HeadlessDisplay into the headless RenderBackend implementation 2017-11-29 15:48:51 +01:00
Chris Loer
5da5ba7706 [core, ios, qt, android] Close race condition in RunLoop (issue #9620)
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.
2017-11-27 14:42:44 -08:00
Bruno de Oliveira Abinader
02166a1802 [core] Fix Qt4 on macOS 2017-11-27 15:54:01 -02:00
Thiago Marcos P. Santos
cf3357ea45 [qt] Use qWarning() for logging
This is the Qt default and it is thread-safe.
2017-11-24 01:30:39 -02:00
Bruno de Oliveira Abinader
43aefbffd0 [Qt] Update documentation 2017-11-23 15:36:26 +02:00
Bruno de Oliveira Abinader
aaffe3c0e3 [build] Added CircleCI macos-debug-qt5 job 2017-11-20 19:45:18 +02:00
Bruno de Oliveira Abinader
10a9b25928 [Qt] Fix deprecation warnings in Qt 5.10 2017-11-13 11:47:31 -02:00
Bruno de Oliveira Abinader
6b5afaab76 [Qt] Explicit QVariant type as string when binding text 2017-11-09 19:17:10 +02:00
Bruno de Oliveira Abinader
a339dcc6cc [Qt] Do not assume viewport size == fbo size in Qt4 2017-11-09 16:13:05 +02:00
Bruno de Oliveira Abinader
12f69ae14a [Qt] Call QNetworkReply::readAll() only once 2017-11-09 16:13:05 +02:00
Bruno de Oliveira Abinader
7936c138fe [Qt] Call QSqlQuery::finish() when inactive 2017-11-09 16:13:05 +02:00
Bruno de Oliveira Abinader
ca73bbc9be [Qt] Do not store QSqlDatabase 2017-11-09 16:13:05 +02:00
Bruno de Oliveira Abinader
2b03d6e805 [Qt] Qt SQLite driver has no setForwardOnly support 2017-11-09 16:13:05 +02:00
Thiago Marcos P. Santos
a815c16ab3 [qt] Fix build on some archs
When building for certain platforms, don't redefine OpenGL constants
we use.
2017-10-31 15:58:59 +02:00
Thiago Marcos P. Santos
f7426a4253 [Qt] Use QOpenGLFunctions for Qt5
Do not link directly with OpenGL, so we load it using Qt5. Also,
always build for OpenGL ES2 which is the compatibilty mode that
should work on all platforms supported by Qt5.
2017-10-25 18:08:28 +03:00
Thiago Marcos P. Santos
9d87dc8cf1 [core] Make the OpenGL implementation platform specific
Split the headers, so each platform includes the most appropriated
header.
2017-10-25 18:08:28 +03:00
John Firebaugh
4b2e1cddb4 Replace compile-time polymorphism with runtime polymorphism in the conversion system 2017-10-23 09:56:43 -07:00
Rinigus
1cf8ef0437 [qt] use const for setting ResourceTransform 2017-10-09 13:22:58 +03:00
Rinigus
965bfcfaac [qt] add ResourceTransform API 2017-10-09 13:22:58 +03:00
Konstantin Käfer
64c75b442c [build] split out DefaultFileSource and dependents to a separate target
We don't want to link it into the node bindings, so keep it in a separate target
2017-09-28 13:48:36 -04:00
Lauren Budorick
a9ddf5b7fd Preserve depth buffer between 3D layers + optimize render order (#9931)
Port of https://github.com/mapbox/mapbox-gl-js/pull/5101: adds a new render pass `Pass3D` before any other rendering wherein we render layers with 3D passes (fill-extrusion layers) to offscreen framebuffers, sharing a depth renderbuffer between those layers in order to render 3D space correctly. Those framebuffers are saved on the RenderLayers and copied back to the map during the translucent pass. Rendering to offscreen framebuffers before we do any clear + draw means we can avoid expensive framebuffer restores.
2017-09-21 14:26:48 -07:00
Ivo van Dongen
f4f4d13b70 [all] ensure runloop is the current scheduler 2017-08-09 12:08:21 +03:00
Konstantin Käfer
f0a7c45064 [core] finish must-revalidate support 2017-08-08 12:40:38 +02:00
Thiago Marcos P. Santos
2108763010 [core] Remove std:: namespace for some functions
They are not available on Android + GCC (needed by Qt)
2017-08-07 17:20:33 +03:00
John Firebaugh
d4cb498d7a [all] Merge View into RendererBackend 2017-07-26 09:50:38 -07:00