diff --git a/drape_frontend/gui/country_status.cpp b/drape_frontend/gui/country_status.cpp index d12eecc836..daea647abf 100644 --- a/drape_frontend/gui/country_status.cpp +++ b/drape_frontend/gui/country_status.cpp @@ -176,6 +176,16 @@ drape_ptr CountryStatus::Draw(ref_ptr tex, drape_ptr renderer = make_unique_dp(); dp::Batcher::TFlushFn flushFn = bind(&ShapeRenderer::AddShape, renderer.get(), _1, _2); + // Precache progress symbols. + { + CountryStatusHelper & helper = DrapeGui::GetCountryStatusHelper(); + string alphabet; + size_t maxLength; + helper.GetProgressInfo(alphabet, maxLength); + dp::TextureManager::TGlyphsBuffer buffer; + tex->GetGlyphRegions(strings::MakeUniString(alphabet), buffer); + } + // Create labels. ForEachComponent(helper, CountryStatusHelper::CONTROL_TYPE_LABEL, [this, &tex, &flushFn, &state](CountryStatusHelper::Control const & control)