Commit Graph

235 Commits

Author SHA1 Message Date
Konstantin Käfer
9b961fb6f9 [core] factor out RunLoop::wake() 2018-02-07 18:21:58 +01: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
f880baaeb7 [windows][qt] Remove std:: namespace of some functions
Not available on Windows.
2018-01-08 22:58:20 +02: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
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
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
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
Thiago Marcos P. Santos
55faa23d2e [Qt] Fix database timeout not being set correctly
It was overflowing due to long to int conversion inside Qt and
never being effectively set because Qt was silently ignoring
the conversion error and discarding the new value.

Fixes #9108.
2017-07-26 15:39:03 +03:00
Ivo van Dongen
4dee3a0d8d [qt] manage backendscope in renderer frontend 2017-07-25 17:44:28 +03:00
Thiago Marcos P. Santos
15056f9654 [Qt] Use the Qt release version and Qt Framework version on the user agent 2017-07-20 17:21:14 +03:00
Thiago Marcos P. Santos
7e8fe05af0 [Qt] Avoid using brace-list init ctor in QMapboxGL 2017-07-19 16:44:30 +03:00
Thiago Marcos P. Santos
a3244421a5 [Qt] Rename files with same name
QMake is having some issues with files with same names when
building the Qt Location plugin.
2017-07-19 14:39:39 +03:00
Thiago Marcos P. Santos
964287e5a4 [Qt] Destroy the map object before the renderer frontend
The Map object will call the renderer frontend on its destructor.

Fixes #9535.
2017-07-18 17:53:08 +03:00
Ivo van Dongen
815ffb253b [android][glfw][ios][macos][node][qt] rename backend to renderer backend 2017-07-18 10:45:12 +02:00
Ivo van Dongen
ee205ca9ca [qt] rendering interface changes 2017-07-18 10:45:12 +02:00
Ivo van Dongen
39a732d7ae [android][glfw][ios][macos][node][qt] split backend from mapobserver 2017-07-18 10:45:12 +02:00
Thiago Marcos P. Santos
d9ad09ca36 [Qt] Align database creation behavior with the default implementation
Qt doesn't throw a Exception::Code::CANTOPEN when trying to open
a database that doesn't exist without the Create flag.
2017-07-17 16:47:29 +03:00
Thiago Marcos P. Santos
48ddfef89f [core] Make sure ThreadLocal will not own the pointer it is managing
ThreadLocal should not own the pointer it is managing because
the use case in Mapbox GL is to keep a pointer to a stack allocated
object, like:

```
MyObject foo;
threadLocal.set(&foo);
```

To keep consistency, it is required that we clear the managed
object before ThreadLocal gets destroyed by setting it to `nullptr`.
2017-07-14 15:18:54 +03:00
Thiago Marcos P. Santos
ee32df4687 [Qt] Fix docs warnings 2017-07-13 14:59:45 +03:00
Thiago Marcos P. Santos
bb1a209a63 [Qt] Share the DefaultFileSource for all QMapboxGL instances
Fix issues of concurrent access to the sqlite cache.

Fixes #9108.
2017-07-13 14:59:45 +03:00
Bruno de Oliveira Abinader
e99e167848 [Qt] Do not return a valid mbgl::Annotation if conversion fails 2017-07-12 20:42:29 +03:00
Bruno de Oliveira Abinader
3afbfa2de7 [core] GCC 4.9 shadow member warnings 2017-07-12 20:42:29 +03:00
Thiago Marcos P. Santos
65118296eb [Qt] Add a no-op thread helper for other platforms 2017-07-07 18:10:06 +03:00
Thiago Marcos P. Santos
a24d89d9f8 [Qt] Use QThreadStorage for thread local
Portable.
2017-07-07 18:10:06 +03:00
John Firebaugh
40e4755621 [core] Move setStyleJSON/URL to Style; add Map::setStyle 2017-06-22 08:04:39 -07:00
John Firebaugh
1520a56813 [all] Promote Style to public API 2017-06-22 08:04:39 -07:00
Bruno de Oliveira Abinader
28eb2e6354 [core] Added Backend::{assume,set}Viewport 2017-06-13 13:37:41 +03:00
Asheem Mamoowala
c0c1028dcf [core] Add toDouble Conversion method for correctly parsing Lat Lng coordinates 2017-06-01 15:38:01 -07:00
John Firebaugh
cc1ea759a6 [core, node, darwin, android, qt] Make image ID part of Image
More like Source and Layer.
2017-05-16 12:26:35 -07:00
John Firebaugh
244fdaa405 [qt] Un-deprecate QMapboxGL::setTransitionOptions
It's still relevant for runtime-styling driven paint property changes.
2017-05-15 09:45:55 -07:00
John Firebaugh
9eba2a66d1 [core, node, darwin, qt] Remove support for paint classes 2017-05-15 09:45:55 -07:00
Thiago Marcos P. Santos
c307273dae [Qt] Make it possible to add a layer before another layer 2017-05-11 20:28:18 +03:00
John Firebaugh
c130d470a1 [core] Remove StyleSourcedAnnotation support
The functionality this provided has been subsumed by the runtime styling API.
2017-05-10 14:22:01 -07:00