Commit Graph

3142 Commits

Author SHA1 Message Date
Chris Loer
6ceecb5581 [core] Disable letter-spacing for Arabic labels (issue #9057) 2017-05-22 10:54:45 -07:00
Konstantin Käfer
d664a3e05e [core] leave Image objects in a valid state after premultiply/unpremultiply 2017-05-19 14:13:07 +02:00
Chris Loer
cd4e67968a [core] Don't unnecessarily request glyphs for verticalized punctuation.
Issue #8982.
2017-05-18 11:19:17 -07:00
Konstantin Käfer
eae2c715f1 [core] add error for non-virtual destructor deletes + add virtual dtors 2017-05-18 16:57:12 +02:00
Konstantin Käfer
5d7e54a815 [core] Make destructor virtual to avoid object splicing during destruction 2017-05-18 16:57:12 +02:00
Chris Loer
77b24bc0d3 [core] Throttle tiles to redo symbol placement at most once every 300ms.
Fixes issue #8435 and prepares for pitch-scaling changes in issue #8967.
2017-05-17 16:25:06 -07:00
John Firebaugh
e7154adac3 [core] Remove redundant SpriteAtlasElement members 2017-05-17 11:23:47 -07:00
John Firebaugh
786707649a [core] Remove ambiguous get{Width,Height} accessors from style::Image 2017-05-17 11:23:47 -07:00
John Firebaugh
63558e06ad [core] Remove obsolete modular arithmetic on atlas coordinates
We switched to 16-bit coordinates in attributes in b0cb8715ed, so there's no longer any reason to require that they are divisible by four.
2017-05-17 09:36:43 -07:00
John Firebaugh
4c26759b69 [core] Remove WorkQueue
No longer used as of 5cdf838a38.
2017-05-17 09:28:26 -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
9eba2a66d1 [core, node, darwin, qt] Remove support for paint classes 2017-05-15 09:45:55 -07:00
John Firebaugh
e473f2dcce [core] cascade ⇢ transition / cascading ⇢ transitionable 2017-05-15 09:45:55 -07:00
John Firebaugh
da4d735e2c [core] Unify {Paint,Layout,Light}Properties 2017-05-15 09:45:55 -07:00
John Firebaugh
2690a65f8d [core] *LayerImpl::cascading ⇢ paint 2017-05-15 09:45:55 -07:00
John Firebaugh
3fa9f3c9e8 [core] Merge light_properties.hpp into light_impl.hpp 2017-05-15 09:45:55 -07:00
John Firebaugh
8fb1a81c46 [core] Immutable<Impl> for Image 2017-05-15 08:20:18 -07:00
John Firebaugh
b3ec985568 [core] Trim StyleObserver interface
It doesn't need to inherit from SpriteLoaderObserver and GlyphAtlasObserver.
2017-05-13 09:28:53 -07:00
Asheem Mamoowala
84e39611a0 [core] Move renderer/* files into sub-folders (#8983)
Move renderer/* files into sub-folders
2017-05-12 17:07:48 -07:00
Ivo van Dongen
cc9f040a2d [core] Split style image collection from SpriteAtlas 2017-05-12 13:19:00 -07:00
John Firebaugh
c80f3e9d29 [linux] loop-uv depends on mbgl-core for linking 2017-05-12 11:26:27 -07:00
John Firebaugh
095dc7b167 [core] Replace createRender{Source,Layer} with Render{Source,Layer}::create
* Eliminates the need for EnableImmutableFromThis
* Eliminates the dependency of {Source,Layer}::Impl on corresponding Render class (circular dependency)
2017-05-12 11:26:27 -07:00
John Firebaugh
afead4e749 [core] Return {Source,Layer}::getID by value
Avoid dangling references in the following sequence:

    auto& id = layer->getID();
    layer->setMaxZoom(2);
    std::cout << id;

The reference would be dangling because mutating the layer allocates a new Immutable impl, and there may be no references to the prior impl, which held the id.
2017-05-12 11:26:27 -07:00
John Firebaugh
54e26b20e7 [core] Remove unused RenderLayer::clone 2017-05-12 11:26:27 -07:00
John Firebaugh
c2a5894f2d [core] Immutable Impls 2017-05-12 11:26:27 -07:00
Bruno de Oliveira Abinader
19c15ab557 [tidy] modernize-loop-convert 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
870067360f [tidy] modernize-pass-by-value 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
1e1da36123 [tidy] modernize-use-equals-default 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
12dba86fac [tidy] modernize-use-bool-literals 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
9894e58047 [tidy] modernize-use-override 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
24137c4812 [tidy] modernize-use-default-member-init 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
25b2250c32 [tidy] modernize-use-using 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
fa36110dfb [tidy] modernize-use-auto 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
f709d7b055 [tidy] llvm-namespace-comment 2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
24fa773fae [core] Removed unused namedColorCount
warning: unused variable 'namedColorCount' [clang-diagnostic-unused-const-variable]
2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
6f993230f2 [core] Make deleted members public
warning: deleted member function should be public [modernize-use-equals-delete]
2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
ba3afd5ae0 [core] Explicitly use mbgl::optional in IdentityStops::evaluate
error: call to constructor of 'optional<std::array<float, 2> >' (aka
'std::experimental::fundamentals_v1::optional<std::array<float, 2> >')
is ambiguous [clang-diagnostic-error]
2017-05-12 18:07:36 +03:00
Bruno de Oliveira Abinader
5d89f6cd92 [core] Avoid calling virtual GeometryTile::cancel() on dtor
warning: Call to virtual function during destruction will not dispatch
to derived class [clang-analyzer-optin.cplusplus.VirtualCall]
2017-05-12 18:07:36 +03:00
John Firebaugh
625c2ea527 [core] When a layer is added, reload its source's tiles 2017-05-11 08:47:32 -07: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
John Firebaugh
baaae99a03 [core, android] Factor JSON string conversions
This adds a `convertJSON` template, to be used like:

   Error error
   optional<Foo> foo = convertJSON<Foo>(string, error);

Internally, it parses the string with RapidJSON and then calls `convert<Foo>(parsed, error)`.

While here, rationalize GeoJSON converters and fix error handling for Tileset conversion in OfflineDownload.
2017-05-08 13:48:57 -07:00
Ivo van Dongen
6fd40867d6 [core] delegate light changes to render light 2017-05-08 19:39:55 +03:00
Ivo van Dongen
feae5e22ee [core] generated accessor methods on light 2017-05-08 19:39:55 +03:00
Ivo van Dongen
20810f988a [core] render light 2017-05-08 19:39:55 +03:00
Lauren Budorick
1c9af3226f [core] Reuse fill-extrusion textures between frames (#8896) 2017-05-08 09:06:07 -07:00
John Firebaugh
dd353a60d1 [core] Reset observers of removed Sources and Layers
This ensures that the observer is not an invalid reference if the removed Source/Layer is retained, but the Style is deallocated.
2017-05-05 09:23:01 -07:00
John Firebaugh
7ca8fd07e0 [core] Remove unused declaration 2017-05-05 08:57:30 -07:00
John Firebaugh
66da759426 [core] Reduce use of RecalculateStyle
* Don't use it to track zoom changes. Instead, Style::update can use the zoom history to check for a change in zoom from the previous frame.
* Don't use it to track active property transitions. Style already knows which layers/light have an active transition, and can re-evaluate only those that do.

This leaves layer property changes as the only use of RecalculateStyle.
2017-05-05 08:56:36 -07:00
Konstantin Käfer
fd104dd3c2 [core] Throw exceptions by value 2017-05-05 14:42:47 +02:00
John Firebaugh
e7d2796762 [core] Omnibus Style::update method
Combine Style::cascade, recalculate, relayout, and updateTiles into a single method. This allows multiple loops over sources and layers to be consolidated and prepares for additional Style-Map decoupling: rather than tracking pending updates via a set of Update flags held by the Map and passed to the Style, the Style can use its own data to determine what to update.
2017-05-04 09:59:56 -07:00