Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2ba1c7c authored by Peter Kalauskas's avatar Peter Kalauskas Committed by Android (Google) Code Review
Browse files

Merge "Revert "Cache the layout result if the font feature is specified"" into main

parents 87d3c6a1 8a389a58
Loading
Loading
Loading
Loading
+0 −7
Original line number Diff line number Diff line
@@ -75,10 +75,3 @@ flag {
  description: "A feature flag that implements line break word style auto."
  bug: "280005585"
}

flag {
  name: "inter_character_justification"
  namespace: "text"
  description: "A feature flag that implement inter character justification."
  bug: "283193133"
}
+11 −15
Original line number Diff line number Diff line
@@ -17,18 +17,18 @@
#ifndef ANDROID_GRAPHICS_PAINT_H_
#define ANDROID_GRAPHICS_PAINT_H_

#include "Typeface.h"

#include <cutils/compiler.h>

#include <SkFont.h>
#include <SkPaint.h>
#include <SkSamplingOptions.h>
#include <cutils/compiler.h>
#include <minikin/FamilyVariant.h>
#include <minikin/FontFamily.h>
#include <minikin/FontFeature.h>
#include <minikin/Hyphenator.h>

#include <string>

#include "Typeface.h"
#include <minikin/FontFamily.h>
#include <minikin/FamilyVariant.h>
#include <minikin/Hyphenator.h>

namespace android {

@@ -82,15 +82,11 @@ public:

    float getWordSpacing() const { return mWordSpacing; }

    void setFontFeatureSettings(std::string_view fontFeatures) {
        mFontFeatureSettings = minikin::FontFeature::parse(fontFeatures);
    void setFontFeatureSettings(const std::string& fontFeatureSettings) {
        mFontFeatureSettings = fontFeatureSettings;
    }

    void resetFontFeatures() { mFontFeatureSettings.clear(); }

    const std::vector<minikin::FontFeature>& getFontFeatureSettings() const {
        return mFontFeatureSettings;
    }
    std::string getFontFeatureSettings() const { return mFontFeatureSettings; }

    void setMinikinLocaleListId(uint32_t minikinLocaleListId) {
        mMinikinLocaleListId = minikinLocaleListId;
@@ -174,7 +170,7 @@ private:

    float mLetterSpacing = 0;
    float mWordSpacing = 0;
    std::vector<minikin::FontFeature> mFontFeatureSettings;
    std::string mFontFeatureSettings;
    uint32_t mMinikinLocaleListId;
    std::optional<minikin::FamilyVariant> mFamilyVariant;
    uint32_t mHyphenEdit = 0;
+2 −4
Original line number Diff line number Diff line
@@ -33,7 +33,6 @@
#include <cassert>
#include <cstring>
#include <memory>
#include <string_view>
#include <vector>

#include "ColorFilter.h"
@@ -691,11 +690,10 @@ namespace PaintGlue {
                                       jstring settings) {
        Paint* paint = reinterpret_cast<Paint*>(paintHandle);
        if (!settings) {
            paint->resetFontFeatures();
            paint->setFontFeatureSettings(std::string());
        } else {
            ScopedUtfChars settingsChars(env, settings);
            paint->setFontFeatureSettings(
                    std::string_view(settingsChars.c_str(), settingsChars.size()));
            paint->setFontFeatureSettings(std::string(settingsChars.c_str(), settingsChars.size()));
        }
    }