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

Side by Side Diff: third_party/WebKit/Source/platform/fonts/win/FontCacheSkiaWin.cpp

Issue 2050123002: Remove OwnPtr from Blink. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: First attempt to land. Created 4 years, 6 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 unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007 Apple Computer, Inc. 2 * Copyright (C) 2006, 2007 Apple Computer, Inc.
3 * Copyright (c) 2006, 2007, 2008, 2009, 2012 Google Inc. All rights reserved. 3 * Copyright (c) 2006, 2007, 2008, 2009, 2012 Google Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are 6 * modification, are permitted provided that the following conditions are
7 * met: 7 * met:
8 * 8 *
9 * * Redistributions of source code must retain the above copyright 9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 22 matching lines...) Expand all
33 33
34 #include "SkFontMgr.h" 34 #include "SkFontMgr.h"
35 #include "SkTypeface_win.h" 35 #include "SkTypeface_win.h"
36 #include "platform/Language.h" 36 #include "platform/Language.h"
37 #include "platform/RuntimeEnabledFeatures.h" 37 #include "platform/RuntimeEnabledFeatures.h"
38 #include "platform/fonts/FontDescription.h" 38 #include "platform/fonts/FontDescription.h"
39 #include "platform/fonts/FontFaceCreationParams.h" 39 #include "platform/fonts/FontFaceCreationParams.h"
40 #include "platform/fonts/FontPlatformData.h" 40 #include "platform/fonts/FontPlatformData.h"
41 #include "platform/fonts/SimpleFontData.h" 41 #include "platform/fonts/SimpleFontData.h"
42 #include "platform/fonts/win/FontFallbackWin.h" 42 #include "platform/fonts/win/FontFallbackWin.h"
43 #include "wtf/PtrUtil.h"
44 #include <memory>
43 45
44 namespace blink { 46 namespace blink {
45 47
46 HashMap<String, RefPtr<SkTypeface>>* FontCache::s_sideloadedFonts = 0; 48 HashMap<String, RefPtr<SkTypeface>>* FontCache::s_sideloadedFonts = 0;
47 49
48 // Cached system font metrics. 50 // Cached system font metrics.
49 AtomicString* FontCache::s_menuFontFamilyName = 0; 51 AtomicString* FontCache::s_menuFontFamilyName = 0;
50 int32_t FontCache::s_menuFontHeight = 0; 52 int32_t FontCache::s_menuFontHeight = 0;
51 AtomicString* FontCache::s_smallCaptionFontFamilyName = 0; 53 AtomicString* FontCache::s_smallCaptionFontFamilyName = 0;
52 int32_t FontCache::s_smallCaptionFontHeight = 0; 54 int32_t FontCache::s_smallCaptionFontHeight = 0;
(...skipping 295 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 familyName.truncate(family.length() - entry.length); 350 familyName.truncate(family.length() - entry.length);
349 adjustedName = AtomicString(familyName); 351 adjustedName = AtomicString(familyName);
350 variantStretch = entry.stretch; 352 variantStretch = entry.stretch;
351 return true; 353 return true;
352 } 354 }
353 } 355 }
354 356
355 return false; 357 return false;
356 } 358 }
357 359
358 PassOwnPtr<FontPlatformData> FontCache::createFontPlatformData(const FontDescrip tion& fontDescription, 360 std::unique_ptr<FontPlatformData> FontCache::createFontPlatformData(const FontDe scription& fontDescription,
359 const FontFaceCreationParams& creationParams, float fontSize) 361 const FontFaceCreationParams& creationParams, float fontSize)
360 { 362 {
361 ASSERT(creationParams.creationType() == CreateFontByFamily); 363 ASSERT(creationParams.creationType() == CreateFontByFamily);
362 364
363 CString name; 365 CString name;
364 RefPtr<SkTypeface> tf = createTypeface(fontDescription, creationParams, name ); 366 RefPtr<SkTypeface> tf = createTypeface(fontDescription, creationParams, name );
365 // Windows will always give us a valid pointer here, even if the face name 367 // Windows will always give us a valid pointer here, even if the face name
366 // is non-existent. We have to double-check and see if the family name was 368 // is non-existent. We have to double-check and see if the family name was
367 // really used. 369 // really used.
368 if (!tf || !typefacesMatchesFamily(tf.get(), creationParams.family())) { 370 if (!tf || !typefacesMatchesFamily(tf.get(), creationParams.family())) {
(...skipping 17 matching lines...) Expand all
386 adjustedFontDescription.setStretch(variantStretch); 388 adjustedFontDescription.setStretch(variantStretch);
387 tf = createTypeface(adjustedFontDescription, adjustedParams, name); 389 tf = createTypeface(adjustedFontDescription, adjustedParams, name);
388 if (!tf || !typefacesMatchesFamily(tf.get(), adjustedName)) 390 if (!tf || !typefacesMatchesFamily(tf.get(), adjustedName))
389 return nullptr; 391 return nullptr;
390 392
391 } else { 393 } else {
392 return nullptr; 394 return nullptr;
393 } 395 }
394 } 396 }
395 397
396 OwnPtr<FontPlatformData> result = adoptPtr(new FontPlatformData(tf, 398 std::unique_ptr<FontPlatformData> result = wrapUnique(new FontPlatformData(t f,
397 name.data(), 399 name.data(),
398 fontSize, 400 fontSize,
399 (fontDescription.weight() >= FontWeight600 && !tf->isBold()) || fontDesc ription.isSyntheticBold(), 401 (fontDescription.weight() >= FontWeight600 && !tf->isBold()) || fontDesc ription.isSyntheticBold(),
400 ((fontDescription.style() == FontStyleItalic || fontDescription.style() == FontStyleOblique) && !tf->isItalic()) || fontDescription.isSyntheticItalic(), 402 ((fontDescription.style() == FontStyleItalic || fontDescription.style() == FontStyleOblique) && !tf->isItalic()) || fontDescription.isSyntheticItalic(),
401 fontDescription.orientation())); 403 fontDescription.orientation()));
402 404
403 struct FamilyMinSize { 405 struct FamilyMinSize {
404 const wchar_t* family; 406 const wchar_t* family;
405 unsigned minSize; 407 unsigned minSize;
406 }; 408 };
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
445 if (typefacesMatchesFamily(tf.get(), family)) { 447 if (typefacesMatchesFamily(tf.get(), family)) {
446 result->setMinSizeForSubpixel(minSizeForSubpixelForFont); 448 result->setMinSizeForSubpixel(minSizeForSubpixelForFont);
447 break; 449 break;
448 } 450 }
449 } 451 }
450 452
451 return result; 453 return result;
452 } 454 }
453 455
454 } // namespace blink 456 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698