Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(194)

Unified Diff: Source/platform/fonts/harfbuzz/HarfBuzzShaper.h

Issue 130433006: Implement CSS Emphasis Marks for complex text (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: countGraphemesInCluster based on m_normalizedBuffer (win build fix) Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « Source/platform/fonts/harfbuzz/FontHarfBuzz.cpp ('k') | Source/platform/fonts/harfbuzz/HarfBuzzShaper.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/platform/fonts/harfbuzz/HarfBuzzShaper.h
diff --git a/Source/platform/fonts/harfbuzz/HarfBuzzShaper.h b/Source/platform/fonts/harfbuzz/HarfBuzzShaper.h
index 5996e686f6a9cfb8630d9986e17edcab76866378..916bab5a6bd9135ad73d0751e12cc1832dad1a49 100644
--- a/Source/platform/fonts/harfbuzz/HarfBuzzShaper.h
+++ b/Source/platform/fonts/harfbuzz/HarfBuzzShaper.h
@@ -45,7 +45,6 @@ namespace WebCore {
class Font;
class SimpleFontData;
-
class HarfBuzzShaper FINAL {
public:
enum NormalizeMode {
@@ -53,7 +52,12 @@ public:
NormalizeMirrorChars
};
- HarfBuzzShaper(const Font*, const TextRun&);
+ enum ForTextEmphasisOrNot {
+ NotForTextEmphasis,
+ ForTextEmphasis
+ };
+
+ HarfBuzzShaper(const Font*, const TextRun&, ForTextEmphasisOrNot = NotForTextEmphasis);
void setDrawRange(int from, int to);
bool shape(GlyphBuffer* = 0);
@@ -133,6 +137,7 @@ private:
bool shapeHarfBuzzRuns();
bool fillGlyphBuffer(GlyphBuffer*);
void fillGlyphBufferFromHarfBuzzRun(GlyphBuffer*, HarfBuzzRun*, FloatPoint& firstOffsetOfNextRun);
+ void fillGlyphBufferForTextEmphasis(GlyphBuffer*, HarfBuzzRun* currentRun);
void setGlyphPositionsForHarfBuzzRun(HarfBuzzRun*, hb_buffer_t*);
void addHarfBuzzRun(unsigned startCharacter, unsigned endCharacter, const SimpleFontData*, UScriptCode);
@@ -157,6 +162,8 @@ private:
int m_fromIndex;
int m_toIndex;
+ ForTextEmphasisOrNot m_forTextEmphasis;
+
float m_totalWidth;
friend struct CachedShapingResults;
« no previous file with comments | « Source/platform/fonts/harfbuzz/FontHarfBuzz.cpp ('k') | Source/platform/fonts/harfbuzz/HarfBuzzShaper.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698