diff options
Diffstat (limited to 'ui/gfx')
-rw-r--r-- | ui/gfx/DEPS | 1 | ||||
-rw-r--r-- | ui/gfx/gfx.gyp | 3 | ||||
-rw-r--r-- | ui/gfx/platform_font_ios.mm | 8 | ||||
-rw-r--r-- | ui/gfx/text_utils_ios.mm | 6 |
4 files changed, 8 insertions, 10 deletions
diff --git a/ui/gfx/DEPS b/ui/gfx/DEPS index 758e42a..a1bf2f7 100644 --- a/ui/gfx/DEPS +++ b/ui/gfx/DEPS @@ -3,4 +3,5 @@ include_rules = [ "+skia/ext", "+third_party/harfbuzz-ng", "+third_party/skia", + "+ui/ios", ] diff --git a/ui/gfx/gfx.gyp b/ui/gfx/gfx.gyp index 99835fc..85ea553 100644 --- a/ui/gfx/gfx.gyp +++ b/ui/gfx/gfx.gyp @@ -309,6 +309,9 @@ ], 'conditions': [ ['OS=="ios"', { + 'dependencies': [ + '<(DEPTH)/ui/ios/ui_ios.gyp:ui_ios', + ], # iOS only uses a subset of UI. 'sources/': [ ['exclude', '^codec/jpeg_codec\\.cc$'], diff --git a/ui/gfx/platform_font_ios.mm b/ui/gfx/platform_font_ios.mm index 0fd824f..502f1a4 100644 --- a/ui/gfx/platform_font_ios.mm +++ b/ui/gfx/platform_font_ios.mm @@ -13,6 +13,7 @@ #include "base/strings/utf_string_conversions.h" #include "ui/gfx/font.h" #include "ui/gfx/font_render_params.h" +#include "ui/ios/NSString+CrStringDrawing.h" namespace gfx { @@ -112,12 +113,7 @@ void PlatformFontIOS::CalculateMetrics() { height_ = font.lineHeight; ascent_ = font.ascender; cap_height_ = font.capHeight; - if (font) { - NSDictionary* attributes = @{ NSFontAttributeName : font }; - average_width_ = std::ceil([@"x" sizeWithAttributes:attributes].width); - } else { - average_width_ = 0; - } + average_width_ = [@"x" cr_sizeWithFont:font].width; } //////////////////////////////////////////////////////////////////////////////// diff --git a/ui/gfx/text_utils_ios.mm b/ui/gfx/text_utils_ios.mm index e687f35..c6b8570 100644 --- a/ui/gfx/text_utils_ios.mm +++ b/ui/gfx/text_utils_ios.mm @@ -10,6 +10,7 @@ #include "base/strings/sys_string_conversions.h" #include "ui/gfx/font_list.h" +#include "ui/ios/NSString+CrStringDrawing.h" namespace gfx { @@ -20,10 +21,7 @@ int GetStringWidth(const base::string16& text, const FontList& font_list) { float GetStringWidthF(const base::string16& text, const FontList& font_list) { NSString* ns_text = base::SysUTF16ToNSString(text); NativeFont native_font = font_list.GetPrimaryFont().GetNativeFont(); - if (!native_font) - return 0; - NSDictionary* attributes = @{ NSFontAttributeName : native_font }; - return std::ceil([ns_text sizeWithAttributes:attributes].width); + return [ns_text cr_sizeWithFont:native_font].width; } } // namespace gfx |