| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
| |
- Put "breakable" punctuation (such as a hyphen) on the line that starts the break, not the line after the break.
- Process all characters with the line breaking algorithm, even if we don't have glyphs for them. Some fonts have glyph-less breakable characters (we end up treating them similarly to a "zero-width space").
- Don't include trailing white space in raggedness calculations
- Make the "favor short final lines" rule more aggressive (unlike the other changes, this one is purely an aesthetic choice)
|
| |
|
| |
|
|
|
|
|
|
| |
* Don't include trailing spacing (as opposed to whitespace) in lineLength
* Modify BiDi interface to require initial bidi layout and linebreaking to happen in one call.
* Code style changes suggested by @kkaefer
|
|
|
|
| |
Ports https://github.com/mapbox/mapbox-gl-js/pull/3763 and https://github.com/mapbox/mapbox-gl-js/pull/3806.
|
| |
|
| |
|
|
|
|
|
|
|
| |
functionality.
- Trim whitespace from labels before determining their max-width for alignment.
- Fix crash on labels that contain lines with only a single character of whitespace.
|
| |
|
|
|
|
|
|
|
|
| |
This converts the style property classes (CirclePaintProperties and so on) to the same tuple-based approach as gl::Attribute and gl::Uniform. The approach is outlined in https://github.com/mapbox/cpp/blob/master/C%2B%2B%20Structural%20Metaprogramming.md.
The main advantage of this approach is it allows writing algorithms that work on sets of style properties, without resorting to code generation or manually repetitive code. This lets us iterate on approaches to data-driven properties more easily.
Another advantage is that the cascading, unevaluated, and evaluated states of a set of properties exist as independent structures, instead of individual properties holding their own state. This is a more functional approach that makes data flow clearer and reduces state.
|
| |
|
|
|
|
|
| |
Apply bidi and shaping in symbol_layout.
Add utility functions for converting to and from UTF-16.
|
|
|
|
|
|
|
| |
conversions and reduce in-memory size.
Continue to use uint32 as glyph ID to maintain Glyph PBF, even though we're only using 16 bits of that uint32.
Use std::codecvt instead of boost::unicode_iterator for UTF8->UTF16 conversions.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* [core] Line-break ideographic text by character
Allow a line break to be inserted after any supported Chinese, Japanese, or Yi character in a point-placed label. Balance the lines unless non-ideographic text such as Latin letters are present.
Fixes #1223.
* [core] Moved more character classing into util::i18n
* [core] Detect character properties by Unicode block
* [test] Reenabled ideographic breaking tests
|
| |
|
|
|
|
|
|
| |
- Added util::{MIN,MAX}_ZOOM_F to avoid consecutive conversions from
double to float
- Move util::log2 to its own header (part of mbgl/math)
|
| |
|
|
|
|
| |
Otherwise, it can participate in unexpected conversions. Case in point: GlyphSet::insert was comparing the result of GlyphMetrics::operator bool() where it wanted to use operator==.
|
|
|
|
|
|
|
|
|
|
|
| |
To obtain precise results, we:
1. Round scale value to obtain same results from symbol shader.
2. Generate a boost geometry polygon to check if it intersects()
against all feature boxes.
3. Check if current scale is within each feature's minimum and maximum
placement scales.
4. De-scale feature boxes when intersecting to account for the
fractional zoom scaling.
|
|
|
|
|
|
| |
Improve findPlacementScale semantics by moving the check if the
placement scale result is bigger than minimum scale out of the function
scope.
|
|
|
|
|
| |
Make 'edges' static to avoid every instance of CollisionTile having its
own copy of it.
|
|
|
|
|
| |
- Prefer pass-by-value for primitive types.
- Use floating point precision for yStretch to match receiving type.
|
|
|
|
|
| |
Reuse reverse rotation matrix from CollisionTile when populating the
collision boxes.
|
|
|
|
| |
CollisionTile::queryRenderedSymbols
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
| |
|
| |
|
|
|
|
|
|
| |
Got fix on r12.
https://github.com/android-ndk/ndk/issues/31
|
| |
|
|
|
|
|
|
|
| |
- puts function definitions in a namespace ... {} rather than using namespace ...;
- remove trailing whitespace
- add trailing newline
- protect SQL statements from being formatted by clang-format
|
| |
|
|
|
|
|
|
|
|
|
|
| |
* Add support for icon-text-fit
* Port unit tests for getIconQuads() from js => cpp
* Add support for padding in all 4 directions.
* Update all hashes post-merge
|
|
|
|
| |
Ref: http://clang.llvm.org/extra/clang-tidy/checks/modernize-pass-by-value.html
|
|
|
|
| |
Ref: http://clang.llvm.org/extra/clang-tidy/checks/llvm-namespace-comment.html
|
|
|
|
| |
Tile is now the main base class; RasterTile, VectorTile, etc are its subclasses. GeometryTileData and its subclasses form the piece that's passed to the worker.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* First pass at port of https://github.com/mapbox/mapbox-gl-js/pull/2668
* RotationAlignmentType => AlignmentType
* Handle undefined default value for text-pitch-alignment and implement inheritance for this value from text-rotation-alignment
* Update dependencies
* Move handling fo undefined default value out of camelize functions
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
# Conflicts:
# platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/BaseMarkerViewOptions.java
# platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerView.java
# platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/annotations/MarkerViewManager.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/NativeMapView.java
# platform/android/src/jni.cpp
# src/mbgl/geometry/buffer.hpp
# src/mbgl/geometry/glyph_atlas.cpp
# src/mbgl/geometry/glyph_atlas.hpp
# src/mbgl/geometry/line_atlas.cpp
# src/mbgl/geometry/vao.cpp
# src/mbgl/gl/gl_object_store.cpp
# src/mbgl/gl/gl_object_store.hpp
# src/mbgl/renderer/frame_history.cpp
# src/mbgl/shader/shader.cpp
# src/mbgl/sprite/sprite_atlas.cpp
# src/mbgl/sprite/sprite_atlas.hpp
# src/mbgl/text/glyph_pbf.hpp
|
| |
| |
| |
| | |
Backported patches fixing ARMv5 support for issue #3985.
|
| | |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|