summaryrefslogtreecommitdiff
path: root/src/mbgl/text/glyph.hpp
Commit message (Collapse)AuthorAgeFilesLines
* [core] Per-bucket glyph atlasesJohn Firebaugh2017-06-131-4/+16
|
* [tidy] modernize-use-default-member-initBruno de Oliveira Abinader2017-05-121-5/+5
|
* [tidy] modernize-use-usingBruno de Oliveira Abinader2017-05-121-7/+6
|
* [core] Replace GlyphRangeSet in onGlyphsAvailable with optionals in the mapJohn Firebaugh2017-04-141-18/+5
| | | | GlyphRangeSet isn't keyed by FontStack, so using it to indicate that a particular range was loaded could have produced false positives.
* [core] Inline GlyphPBF into GlyphAtlasJohn Firebaugh2017-04-061-16/+0
|
* [core] De-mutex GlyphAtlas and SpriteAtlasChris Loer2017-04-041-5/+14
| | | | | | | | | | | | - Expose glyph and icon information to workers via message interface. - Glyph/SpriteAtlas track which tiles have outstanding requests and send messages to them when glyphs/icons become available. - Remove obsolete "updateSymbolDependentTiles" pathway - Symbol preparation for a tile now depends on all glyphs becoming available before it can start. - Start tracking individual icons needed for a tile, although we don't do anything with the information yet. - Introduce typedef for GlyphID
* [core] Eliminate Shaping::textJohn Firebaugh2017-02-281-3/+2
| | | | This was already accessible via SymbolFeature::text.
* [core] Make Image saferJohn Firebaugh2017-02-141-1/+2
| | | | | | Provide Image::copy, which handles copying rectangles from a source to a destination, with thorough bounds checking. Also fixes an indexing error in SpriteAtlas, where the top row of pixels in a wrapped image was copied from the wrong source row.
* Upright CJK characters in vertically-oriented labels (#7114)Minh Nguyễn2017-02-101-4/+35
| | | | | CJK characters and adjacent punctuation now remain upright in vertically oriented labels that have line placement. Fixes #1682.
* [core] harden Glyph PBF parsingKonstantin Käfer2017-01-171-1/+5
|
* [core] Use UTF-16 instead of UTF-32 for label features to avoid extra ↵Chris Loer2016-11-171-3/+3
| | | | | | | 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] operator bool() must always be explicitJohn Firebaugh2016-10-281-3/+11
| | | | 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==.
* [core] Avoid redundant 'inline' usageBruno de Oliveira Abinader2016-06-181-5/+5
|
* [tidy] Check modernize-pass-by-valueBruno de Oliveira Abinader2016-06-131-3/+2
| | | | Ref: http://clang.llvm.org/extra/clang-tidy/checks/modernize-pass-by-value.html
* [core] use #pragma once instead of ifdef include guardsKonstantin Käfer2016-05-251-4/+1
|
* [core] move RenderItem and GlyphRange to their own headersKonstantin Käfer2016-05-231-3/+1
|
* [core] add std::move to constructorsKonstantin Käfer2015-12-031-1/+2
|
* Replace size() with empty() whenever possibleBruno de Oliveira Abinader2015-07-291-1/+1
| | | | | | Before C++11, std::list's implementation of size was O(n). It should be all O(1) now, but it is probably still a good idea to use empty() to emphasize the intend.
* Updates to labels along linesNicki Dlugash2015-07-091-2/+3
| | | | | | | | | | | | Added a filter to remove anchors with the same text that are too close to each other. Updates to spacing and offset of anchor placement along lines: Takes into account icon size for calculating label length. Recalculates spacing for long labels. Adjusts offsets to first anchors if line is continued from outside the tile boundary.
* Merge remote-tracking branch 'origin/master' into new-labellingAnsis Brammanis2015-05-281-1/+13
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mbgl/map/source.cpp src/mbgl/map/source.hpp src/mbgl/map/tile_data.cpp src/mbgl/map/tile_parser.cpp src/mbgl/map/vector_tile_data.cpp src/mbgl/renderer/painter.cpp src/mbgl/renderer/symbol_bucket.cpp src/mbgl/text/glyph.hpp src/mbgl/text/glyph_store.cpp src/mbgl/text/placement.cpp test/suite
| * split up glyph_store.cpp into multiple filesKonstantin Käfer2015-05-221-1/+14
| |
* | Merge branch 'master' into new-labellingAnsis Brammanis2015-05-191-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mbgl/map/tile_parser.cpp src/mbgl/map/tile_parser.hpp src/mbgl/renderer/painter.hpp src/mbgl/renderer/painter_symbol.cpp src/mbgl/renderer/symbol_bucket.cpp src/mbgl/renderer/symbol_bucket.hpp src/mbgl/text/collision.cpp src/mbgl/text/collision.hpp src/mbgl/text/placement.cpp
| * don't implicitly cast to bool since this will make comparisons failsKonstantin Käfer2015-05-121-1/+1
| |
* | port getAnchors from -jsAnsis Brammanis2015-04-011-1/+1
| |
* | start porting symbol bucket changesAnsis Brammanis2015-04-011-0/+2
| |
* | port some of the text shaping changesAnsis Brammanis2015-03-301-1/+12
|/
* make most headers privateKonstantin Käfer2014-12-041-0/+60