• Home
  • History
  • Annotate
  • only in /external/skia/src/ports/
History log of /external/skia/src/ports/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
af1d4f84b8730781cc6dca61748cae66c237ca57 16-Oct-2014 Leon Scroggins III <scroggo@google.com> Qualify the return value of SkImageDecoder::decode

Cherry-pick of https://codereview.chromium.org/658343003/ in Skia.

Add a new enum to differentiate between a complete decode and a
partial decode (with the third value being failure). Return this
value from SkImageDecoder::onDecode (in all subclasses, plus
SkImageDecoder_empty) and ::decode.

For convenience, if the enum is treated as a boolean, success and
partial success are both considered true.

Note that the static helper functions (DecodeFile etc) still return
true and false (for one thing, this allows us to continue to use
SkImageDecoder::DecodeMemory as an SkPicture::InstallPixelRefProc in
SkPicture::CreateFromStream).

Also correctly report failure in SkASTCImageDecoder::onDecode when
SkTextureCompressor::DecompressBufferFromFormat fails.

BUG=skia:3037
BUG:17419670

Conflicts:
src/images/SkImageDecoder_astc.cpp
src/images/SkImageDecoder_ktx.cpp
src/images/SkImageDecoder_libjpeg.cpp
src/images/SkImageDecoder_pkm.cpp

Change-Id: I33e6940e247b74b20361ae041f8d36eb600df49f
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageDecoder_empty.cpp
6e623cf3ee32a90859a36cf06364af320c54f793 20-Aug-2014 Behdad Esfahbod <behdad@google.com> Merge "Use medium filtering when downscaling bitmap glyphs in FreeType host" into lmp-dev
a05f3d6ae5f6e95d881d698282601e01bbc84036 20-Aug-2014 Behdad Esfahbod <behdad@google.com> Use medium filtering when downscaling bitmap glyphs in FreeType host

This allows us to drop the 64px strike from Noto Color Emoji, which
saves a lot of space.

Bug: 15348046
Change-Id: Ifd1c9a4fbc67a4eb2596c5830644f745a1e47d8c
kFontHost_FreeType_common.cpp
11bda2c5a518b90302331a5ffe647b4d30d8093e 19-Aug-2014 Derek Sollenberger <djsollen@google.com> Revert to old autohinting behavior on Android.

This CL reverts to the NO_AUTOHINT behavior when autohinting is not
explicitly requested. This should be removed when Skia supports a
better API for selecting the correct variation.

bug: 15591234
Change-Id: I7af3973b8aa3a8ad7619c368f64e39dcddb71b6b
kFontHost_FreeType.cpp
4e4a89dab47d74874d6a79c4b34d89ffbfb386af 14-Aug-2014 Derek Sollenberger <djsollen@google.com> Merge changes from Skia's m37 branch into lmp-dev.

This merge includes the following CLs...
0d78ac2 Set maximum output size for scaled-image-cache images
0c1c911 Adding 64 bit checks
f2d87ba Get additional DW font metrics when available.

Bug: 17024392
Change-Id: I7956f50e5b95b1e012cf56614b12f1d834b423c1
kScalerContext_win_dw.cpp
kTypeface_win_dw.h
9ed58377b45739aa8f9dc1b02049ab29c137a838 25-Jul-2014 Derek Sollenberger <djsollen@google.com> Merge changes from Skia's m37 branch into lmp-dev.

This merge includes the following CLs...
20ee1ba Change SkCanvasState to use inheritance.
b572f07 DirectWrite to detect GDI only fonts
282aa1e Fix SkColorFilterImageFilter matrix optimization
e849224 Re-land "Fix external SkImageFilter caching with clips."
9b1eeeb Better rendering detection with DirectWrite.
kScalerContext_win_dw.cpp
56606065a7761a0ef05b952c02f0fef902393635 20-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "DirectWrite to not round already subpixel metrics." into master-skia

https://skia.googlesource.com/skia/+/a3530ef

Change-Id: Icc543034da116a9fb5f08eb73331460c27810be2
a3530ef268acbbbd84cd4c5465cdc29df5269390 20-Jun-2014 bungeman <bungeman@google.com> DirectWrite to not round already subpixel metrics.

In keeping with the FreeType and Mac scaler contexts, do not artificially
round already subpixel metrics.

The subpixel flag should be the 'forceSubpixel' flag when it comes to
metrics. Existing backends will give subpixel metrics when 'subpixel' is
requested, but will not round proper metrics when 'subpixel' is not
requested.

R=reed@google.com

Author: bungeman@google.com

Review URL: https://codereview.chromium.org/344253002
kScalerContext_win_dw.cpp
29806513a21685e4f83d5723fd3a32e05b756cf2 20-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "In Debug, SkMutex(pthread) crashes on re-entrant aquire from same thread." into master-skia

https://skia.googlesource.com/skia/+/e486ec4

Change-Id: Ief8aaa01c3d0dfca20ae5bd1d79c64fda7223218
e486ec48b1dbdc6e8276a765abeb8eabcbf5c22e 20-Jun-2014 halcanary <halcanary@google.com> In Debug, SkMutex(pthread) crashes on re-entrant aquire from same thread.

R=mtklein@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/338973006
kMutex_pthread.h
3a80968e9e0a0f3167e648885a65e6ad31fdcc26 19-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add needed virtual destructors." into master-skia

https://skia.googlesource.com/skia/+/d7f846b

Change-Id: I7a4debe1dd419500c813e605fe5cb8dc46a23768
d7f846bdd171e4be0c05cfe61bc4446caf5c99c6 19-Jun-2014 bungeman <bungeman@google.com> Add needed virtual destructors.

These were found by the clang on Windows build.

R=mtklein@google.com

Author: bungeman@google.com

Review URL: https://codereview.chromium.org/328303005
kFontMgr_win_dw.cpp
kRemotableFontMgr_win_dw.cpp
69cb2fbae35ceded5fb466d006ddadecee37a5d6 19-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "[PDF] Fix font embedding restrictions." into master-skia

https://skia.googlesource.com/skia/+/0f9bad0

Change-Id: I7e81fd92ca560b71eac4f047c0bab1b980b6e9e4
0f9bad01b0e7ad592ffb342dcf1d238b15329be1 19-Jun-2014 vandebo <vandebo@chromium.org> [PDF] Fix font embedding restrictions.

Stop using restricted font outlines and honor don't subset restriction.

Resubmit of r12600.

R=halcanary@google.com, bungeman@google.com, reed@google.com

Author: vandebo@chromium.org

Review URL: https://codereview.chromium.org/334443002
kFontHost_FreeType.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kTypeface_win_dw.cpp
38c9998cbcad768c8b824de23bd1b082fcf0547b 18-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Clean up DirectWrite typeface cache matching." into master-skia

https://skia.googlesource.com/skia/+/33eb30f

Change-Id: I01c253c22658b2ef295e06b4e2439624f23a5a09
33eb30fed8aa45c47a65e684e1b65da2b2e1fb91 18-Jun-2014 bungeman <bungeman@google.com> Clean up DirectWrite typeface cache matching.

The matching code was difficult to follow due to naming issues,
and performed some duplicate work which is not wanted.
This change will either fix the associated bug or make it possible
to track the cause.

CQ_EXTRA_TRYBOTS=tryserver.skia:Test-Win7-ShuttleA-HD2000-x86-Release-DirectWrite-Trybot

BUG=384529
R=reed@google.com

Author: bungeman@google.com

Review URL: https://codereview.chromium.org/338923003
kFontMgr_win_dw.cpp
d878367ffebc8515814a7e946250c8d86952c92d 17-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "DirectWrite to use PostScript name for PDF." into master-skia

https://skia.googlesource.com/skia/+/6d867d4

Change-Id: I37bd1bae39f0908188b9b2b20afedd565ea245ca
6d867d494a0e619ebf445a7c0b8e35bb65d5f027 17-Jun-2014 bungeman <bungeman@google.com> DirectWrite to use PostScript name for PDF.

The PDF backend expects info->fFontName to be the PostScript name.
Prior to this change the '<family> <sytle>' name was used instead.

R=vandebo@chromium.org, halcanary@google.com, reed@google.com, thestig@chromium.org

Author: bungeman@google.com

Review URL: https://codereview.chromium.org/324403010
kTypeface_win_dw.cpp
8edb4ec8c4ce5800f81069cd32e0b8005311a6b8 13-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "hide Config in SkImageDecoder -- use SkColorType instead" into master-skia

https://skia.googlesource.com/skia/+/bfefc7c

Change-Id: Ie0b87a9db8c6c49fa2a1d0b34846adfd27a6e16c
bfefc7c95fc0e8ebd5000c68f6d16e1a3ea0e71e 13-Jun-2014 reed <reed@chromium.org> hide Config in SkImageDecoder -- use SkColorType instead

patch from issue 334613003

TBR=scroggo

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/334793002
kImageDecoder_empty.cpp
b1832a5670dc5263452b93316e2b41fa177da982 12-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "remove GetDeviceConfig/SetDeviceConfig" into master-skia

https://skia.googlesource.com/skia/+/2f785a2

Change-Id: Iee982288ea3d7586af33adb818ec3320a1e8c942
2f785a24eba5b59da30f5ffa0c53cc731e4c3078 12-Jun-2014 reed <reed@google.com> remove GetDeviceConfig/SetDeviceConfig

BUG=skia:
R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/332453002
kImageDecoder_empty.cpp
c22fbc1093456492f47bfb8e2ae310f6d6e8cfa2 11-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "SkNEW as default Create() for SkLazyPtr macros." into master-skia

https://skia.googlesource.com/skia/+/6059f16

Change-Id: I321f184cc0e08524be549d85cd29aa3455aa701a
6059f16fd98421ef1add03f708f3fd2c21cfc4f5 11-Jun-2014 mtklein <mtklein@chromium.org> SkNEW as default Create() for SkLazyPtr macros.

BUG=skia:
R=halcanary@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/326413003
kFontConfigInterface_direct.cpp
fcbed5a62ac27f52f2bdd8620f57044e26d06191 11-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Hide chooseFromOneChoice along with Chooser." into master-skia

https://skia.googlesource.com/skia/+/f0419e9

Change-Id: I4cec5a43a6c83f5887780400d635e2820be19bd6
f0419e96b4b52b85fafd0d589c56944841dcda06 11-Jun-2014 scroggo <scroggo@google.com> Hide chooseFromOneChoice along with Chooser.

Fixes chrome canary.

R=reed@android.com
TBR=reed
NOTRY=true

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/329113003
kImageDecoder_empty.cpp
7d6c99ea21b852fbdcf758e475ac524b15eb15ec 11-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "hide SkImageDecoder::Chooser" into master-skia

https://skia.googlesource.com/skia/+/5926b86

Change-Id: I069798ba1debb8e02fe10f29a16f8d905101519c
5926b86b90c68bffefbdc8639e41b5bc9102cec6 11-Jun-2014 reed <reed@google.com> hide SkImageDecoder::Chooser

BUG=skia:
R=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/331433003
kImageDecoder_empty.cpp
7680447c5f06a39aaa1800d2d2f33f3977af4c0c 10-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "hide SkBitmap::setConfig" into master-skia

https://skia.googlesource.com/skia/+/6c22573

Change-Id: I87bdb4df6c0990b034787cb17550e862d9658573
6c22573edb234ad14df947278cfed010669a39a7 10-Jun-2014 reed <reed@chromium.org> hide SkBitmap::setConfig

patch from issue 325733002

TBR=scroggo

Author: reed@chromium.org

Review URL: https://codereview.chromium.org/322963002
kFontHost_FreeType_common.cpp
kImageDecoder_CG.cpp
kImageDecoder_empty.cpp
5996afa50ebb078526c3b904f90442347a46a7d0 09-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add assertHeld() to SkMutex." into master-skia

https://skia.googlesource.com/skia/+/b83f6c3

Change-Id: I4a16542f995a1b6d9ca47b3dfe1b88b9e90df93f
b83f6c3cbdabc14d8290b00d9f38ba59bf6719a1 09-Jun-2014 mtklein <mtklein@chromium.org> Add assertHeld() to SkMutex.

BUG=skia:
R=bungeman@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/313823004
kMutex_pthread.h
kMutex_win.h
cabee2da7c92d21f8c483101d9937c3a7c93f109 07-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "use __atomics in SkBarriers_tsan.h" into master-skia

https://skia.googlesource.com/skia/+/19cae4f

Change-Id: I54d55d4c8f74af346c3fe96d3b692adaa7005acc
19cae4fa2cf667acb05d2e5a1bf0a5dab606fe68 07-Jun-2014 mtklein <mtklein@chromium.org> use __atomics in SkBarriers_tsan.h

I am having a hard time getting TSAN's own atomic hooks to work on our bots,
but __atomic_foo work fine and are understood just fine by TSAN.

BUG=skia:
R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/320063003
kBarriers_tsan.h
0ccc8d17f1ccbe93ce0417afd7815e5cc063e483 06-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add SkBarriers_tsan.h." into master-skia

https://skia.googlesource.com/skia/+/a8928b7

Change-Id: I3ff8858a0aec1fce4ca2ef1a6ca0e89c1c8823fe
a8928b745a7158a432033a28c49fb0f0450ccf6e 06-Jun-2014 mtklein <mtklein@chromium.org> Add SkBarriers_tsan.h.

Slight counterproposal to crrev.com/310663002.

BUG=skia:

No API changes.

R=bungeman@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/306373002
kBarriers_tsan.h
c0c951d18232a2cc3f876b30f652ff308620acf8 06-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Fix SK_API for DirectWrite port." into master-skia

https://skia.googlesource.com/skia/+/b0b0feb

Change-Id: I23e8f4ff9bc3d543b8c78d49155f7c687e0026a9
b0b0feb71f0841497c041aa4aca2b10e032224e0 06-Jun-2014 Ben Wagner <bungeman@google.com> Fix SK_API for DirectWrite port.

The declaration and definition should have the same calling convention.

TBR=reed@google.com

Review URL: https://codereview.chromium.org/317993002
kFontMgr_win_dw.cpp
aa13fcae875a794795f2584ff1e1eb939ed2efd7 05-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Rename SkFontHost_win_dw.cpp SkScalerContext." into master-skia

https://skia.googlesource.com/skia/+/98875e1

Change-Id: I28c3487c8ee10d0483cd2a11411bf0af960f7a3b
98875e1abde4339ca29e0ff975f2127ac7e00049 05-Jun-2014 Ben Wagner <bungeman@google.com> Rename SkFontHost_win_dw.cpp SkScalerContext.

This is a continuation of https://codereview.chromium.org/314193002/ .

TBR=reed@google.com

Review URL: https://codereview.chromium.org/315173004
kFontHost_win_dw.cpp
kScalerContext_win_dw.cpp
4c5326fef7e9881fb02d9be1d0e4db77d3bf60bb 05-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Split SkFontHost_win_dw." into master-skia

https://skia.googlesource.com/skia/+/51daa25

Change-Id: I60814c1829e933ac05de9cd761fc43be436ea9dc
51daa25a2b16bca578e78b7ea1e5815b9abb8b0b 05-Jun-2014 bungeman <bungeman@google.com> Split SkFontHost_win_dw.

Split SkFontHost_win_dw into FontMgr, Typeface, and ScalerContext.
This makes working on these files easier, and moves away from the legacy
FontHost naming.

R=reed@google.com

Author: bungeman@google.com

Review URL: https://codereview.chromium.org/314193002
kFontHost_win_dw.cpp
kFontMgr_win_dw.cpp
kScalerContext_win_dw.h
kTypeface_win_dw.cpp
kTypeface_win_dw.h
949040ae00c62dc20bab37484243434c16329ddf 05-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "remove ashmem from skia" into master-skia

https://skia.googlesource.com/skia/+/5ec3d21

Change-Id: I59b5672b2441b1baf8024a9ef48c5222c6ae13e4
5ec3d217146dfd12bd4d0cde2fe25832fed5cad9 05-Jun-2014 halcanary <halcanary@google.com> remove ashmem from skia

R=scroggo@google.com, djsollen@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/319533004
kDiscardableMemory_ashmem.cpp
ccc060838f4f68cbba43261113016d9de05a12df 05-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Remove SK_IGNORE_DWRITE_BITMAP_FIX." into master-skia

https://skia.googlesource.com/skia/+/df1640d

Change-Id: I8adf34294ae3ca7d9e3d9843158797b7b8c51422
df1640d413c16abf4527960642aca41581808699 05-Jun-2014 bungeman <bungeman@google.com> Remove SK_IGNORE_DWRITE_BITMAP_FIX.

This define has been removed from Blink and is no longer used anywhere.

R=reed@google.com
TBR=reed1

Author: bungeman@google.com

Review URL: https://codereview.chromium.org/319513006
kFontHost_win_dw.cpp
a0bca752bcab8ccabf9eefa065b267874b6d4563 04-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Remove SkImageRef and related functionality." into master-skia

https://skia.googlesource.com/skia/+/479bb60

Change-Id: Ia454d17e23a7597b5099b8712edd34234e430f6d
479bb6062229a6ed5ed590cd6d727fa4b1ae6b9d 04-Jun-2014 Hal Canary <halcanary@google.com> Remove SkImageRef and related functionality.

From here on out, use SkDecodingImageGenerator+SkDiscardablePixelRef.

R=scroggo@google.com

Review URL: https://codereview.chromium.org/100183002
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
kImageDecoder_empty.cpp
185544517fd40b9892d39e8c54cb382bb5b83c4a 02-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Update TSAN suppressions." into master-skia

https://skia.googlesource.com/skia/+/832cb66

Change-Id: Ib4ee3fd51ee8d0052b5b41b6798086ecb0653562
832cb667498407401a7b508a331a65524736c072 02-Jun-2014 mtklein <mtklein@chromium.org> Update TSAN suppressions.

TSAN suppressions need to be on their own line, even free of comments.

Also, temporarily add SK_ANNOTATE_UNPROTECTED_READ to sk_acquire_load.
Will remove this when we're done iterating on SkBarriers_tsan.h: TSAN
has an atomic load that makes the annotation moot.

BUG=skia:

Committed: https://skia.googlesource.com/skia/+/be7de4fc4229b70b0954f3ea5e3b053dae4c1a9d

R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/308073013
kBarriers_x86.h
07682036265c58c7c31603506f8f54bf5489bdd7 02-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Update TSAN suppressions." into master-skia

https://skia.googlesource.com/skia/+/be7de4f

Change-Id: I0b80402541c249680b507babaebb7748b84e09c7
be7de4fc4229b70b0954f3ea5e3b053dae4c1a9d 02-Jun-2014 mtklein <mtklein@chromium.org> Update TSAN suppressions.

TSAN suppressions need to be on their own line, even free of comments.

Also, temporarily add SK_ANNOTATE_UNPROTECTED_READ to sk_acquire_load.
Will remove this when we're done iterating on SkBarriers_tsan.h: TSAN
has an atomic load that makes the annotation moot.

BUG=skia:
R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/308073013
kBarriers_x86.h
2d30d2a75c6fae5e441140c1f931f20dbaebf27d 02-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Clean up SkOnce:" into master-skia

https://skia.googlesource.com/skia/+/1b81877

Change-Id: Idf01cbb38333107ddd2d3c6c639da60c0cc2f58c
603fb10dd0f2f04dcc551334884334aa177eb271 02-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Port most uses of SkOnce to SkLazyPtr." into master-skia

https://skia.googlesource.com/skia/+/78358bf

Change-Id: Iac1965081c11e51e68dec2a992fe2756538880a8
1b81877880253c75f835eede9a8ee21b9e7b584a 02-Jun-2014 mtklein <mtklein@chromium.org> Clean up SkOnce:

1 Remove atExit feature: clients can do it just as well as SkOnce can.
2 Remove support for functors: no one but the unit test did that.
3 Remove support for unused non-static SkOnceFlag (no SK_ONCE_INIT).
4 Add SkOnce variants for no-arg functions so we're not forced to pass dummy values all the time.
5 Merge SkSpinlock and SkOnceFlag, making all members private.
6 More notes about memory barriers, adding an acquire load after acquiring the spinlock.

BUG=skia:
R=bungeman@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/302083003
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
079a53ce0d75acd2e23564b8062d80ede478e38f 02-Jun-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert of Port most uses of SkOnce to SkLazyPtr. (https://codereview.chromium.org/304383005/)" into master-skia

https://skia.googlesource.com/skia/+/f71e8fd

Change-Id: Ib8de77db3e9c844da95a1156cfc8d6f112b71862
78358bf624c7e7c09ffccf638c50870808d884d6 02-Jun-2014 mtklein <mtklein@chromium.org> Port most uses of SkOnce to SkLazyPtr.

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=15006

Committed: http://code.google.com/p/skia/source/detail?r=15014

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/304383005
kFontConfigInterface_direct.cpp
959fdce7c922787ca429c48399b87ecc36867f61 31-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Port most uses of SkOnce to SkLazyPtr.

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=15006

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/304383005

git-svn-id: http://skia.googlecode.com/svn/trunk@15014 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
b68ade9dbcdd6c2b1439613c847677eb77c48d0b 31-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert of Port most uses of SkOnce to SkLazyPtr. (https://codereview.chromium.org/304383005/)" into master-skia

https://skia.googlesource.com/skia/+/f6351a0

Change-Id: I42e2edb8db22c97c408417556d2d1f55dbfeab35
ada8fc8e0e4b28ae239c38100c819b2881298af3 31-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Port most uses of SkOnce to SkLazyPtr." into master-skia

https://skia.googlesource.com/skia/+/5a70945

Change-Id: Iefbb469dbde5a372db8428252361f33986722674
f71e8fd0c5d2da9795d00a5b81b716ae585be14a 31-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Port most uses of SkOnce to SkLazyPtr. (https://codereview.chromium.org/304383005/)

Reason for revert:
linux x86-64 release segfault in src/ports/SkFontHost_fontconfig.cpp:107

http://108.170.220.120:10117/builders/Test-Ubuntu12-ShuttleA-GTX660-x86_64-Release/builds/905/steps/RunTests/logs/stdio

Original issue's description:
> Port most uses of SkOnce to SkLazyPtr.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=15006
>
> Committed: http://code.google.com/p/skia/source/detail?r=15014

R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/306063004

git-svn-id: http://skia.googlecode.com/svn/trunk@15015 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
56f7cca144c539ec01f00d6382fded362ff193a3 31-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Port most uses of SkOnce to SkLazyPtr.

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=15006

R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/304383005

git-svn-id: http://skia.googlecode.com/svn/trunk@15014 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
f6351a071810b3a848a5002a0c0ba7e1490fd0db 30-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Port most uses of SkOnce to SkLazyPtr. (https://codereview.chromium.org/304383005/)

Reason for revert:
Leaking refs on SkTypeface on Macs.

Original issue's description:
> Port most uses of SkOnce to SkLazyPtr.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=15006

R=reed@google.com, mtklein@chromium.org
TBR=mtklein@chromium.org, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/304283007

git-svn-id: http://skia.googlecode.com/svn/trunk@15009 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
5a70945ddd036b8079987954123ff8f382c285af 30-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Port most uses of SkOnce to SkLazyPtr.

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/304383005

git-svn-id: http://skia.googlecode.com/svn/trunk@15006 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
fc2e97d9056663f04e3ce976115e4ab60446b140 30-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert "Revert of setConfig -> setInfo (https://codereview.chromium.org/308683005/)"" into master-skia

https://skia.googlesource.com/skia/+/a3264e5

Change-Id: I311131f47d0d8ed9ba5a90397307bc07cffdbce2
a3264e53ee3f3c5d6a2c813df7e44b5b96d207f2 30-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert of setConfig -> setInfo (https://codereview.chromium.org/308683005/)"

This reverts commit eecaea4148805834f223681f70b6488ceba12d09.

R=robertphillips@google.com, scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/301283003

git-svn-id: http://skia.googlecode.com/svn/trunk@14989 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
f5160b2d8b3e4e36277492ca09242843c92add73 29-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Revert of setConfig -> setInfo (https://codereview.chromium.org/308683005/)" into master-skia

https://skia.googlesource.com/skia/+/d0f824c

Change-Id: I76fecc0c9822d61101cbd18c26213f9562ed33fd
d0f824cfbd8951bb948b19d7ff5dce028ce557a5 29-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of setConfig -> setInfo (https://codereview.chromium.org/308683005/)

Reason for revert:
broke all Windows bots

Original issue's description:
> setConfig -> setInfo
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14978

R=robertphillips@google.com, reed@google.com
TBR=reed@google.com, robertphillips@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: epoger@google.com

Review URL: https://codereview.chromium.org/302053002

git-svn-id: http://skia.googlecode.com/svn/trunk@14979 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
b3bfccd820781fe64ab38e7acc8373cd4712d05f 29-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "setConfig -> setInfo" into master-skia

https://skia.googlesource.com/skia/+/986d681

Change-Id: Iab2edfe4c31ee7e2df490dd9055cda2ffbce6de2
986d681f3e7a7eb6febd9df9fe21a8d277ba2296 29-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> setConfig -> setInfo

BUG=skia:
R=robertphillips@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/308683005

git-svn-id: http://skia.googlecode.com/svn/trunk@14978 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
3c5c905222b9fddacce1dd5f3e71eb7cbd103e05 29-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Add SkBarriers to ports." into master-skia

https://skia.googlesource.com/skia/+/448e2a3

Change-Id: I8e568c95c8648db4aa1b307cfd5ca0ff5230ae4d
448e2a3b3935d91e7bf84dc5b0367b92d2e2a518 29-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkBarriers to ports.

This completes a TODO we've had to move our memory-barrier code out of
SkOnce. I also want to start using sk_acquire_load elsewhere.

BUG=skia:
R=bungeman@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/304593003

git-svn-id: http://skia.googlecode.com/svn/trunk@14970 2bbb7eff-a529-9590-31e7-b0007b416f81
kBarriers_arm.h
kBarriers_x86.h
76be8eb483b9d5b604b5c39260dbc1a80d651c60 29-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge "Put DirectWrite bitmap fix behind the SK_IGNORE_DWRITE_BITMAP_FIX flag." into master-skia

https://skia.googlesource.com/skia/+/8de5b7b

Change-Id: I3fa18d7773a5cad4df71c2fc57f7be2f693d3058
8de5b7b8b7aa93ce875fca8c6de11a842d7d563a 29-May-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Put DirectWrite bitmap fix behind the SK_IGNORE_DWRITE_BITMAP_FIX flag.

R=reed@google.com

Review URL: https://codereview.chromium.org/309503002

git-svn-id: http://skia.googlecode.com/svn/trunk@14956 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
c2867b403c28394b2180fd9f5393fa6e3dd6940e 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "81496fb from Wed, 28 May 2014 21:43:59 +0000"

https://skia.googlesource.com/skia/+/81496fb

Change-Id: Ib51377f03c5e1cfea555853d169eee19d80737a7
81496fb21637cc8d2a2b45a790e0f9d6d6f769c4 28-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Spin off just SkLazyFnPtr from 305513002.

The memory barrier in SkOnce is a perf regression for sk_mem{set,cpy} in
SkUtils on ARM. We can do a lot better for function pointers.

BUG=skia:

Committed: http://code.google.com/p/skia/source/detail?r=14929

R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/305753002

git-svn-id: http://skia.googlecode.com/svn/trunk@14938 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_sync.h
kAtomics_win.h
e346b37528d7359292fcefe8aaf86c8a6b50503b 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "05d1cc2 from Wed, 28 May 2014 19:58:14 +0000"

https://skia.googlesource.com/skia/+/05d1cc2

Change-Id: I80d0e42534d5e44c87d8ffd3d8a59401294ed29b
356662deefe5ab703f13b9ca13d8b50d155c80be 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "6640ee3 from Wed, 28 May 2014 19:57:18 +0000"

https://skia.googlesource.com/skia/+/6640ee3

Change-Id: Ib3975011a977f41a86488d49b901522b963bb3be
05d1cc23ec8c7c4befa039330c48901f9ff1251c 28-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Spin off just SkLazyFnPtr from 305513002. (https://codereview.chromium.org/305753002/)

Reason for revert:
depends on bad cl

Original issue's description:
> Spin off just SkLazyFnPtr from 305513002.
>
> The memory barrier in SkOnce is a perf regression for sk_mem{set,cpy} in
> SkUtils on ARM. We can do a lot better for function pointers.
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14929

R=bungeman@google.com, mtklein@chromium.org
TBR=bungeman@google.com, mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/300843012

git-svn-id: http://skia.googlecode.com/svn/trunk@14933 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_sync.h
kAtomics_win.h
6640ee3378e3ecf23749faa3b513642ce188b055 28-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Fix SkAtomics_win.h typos. (https://codereview.chromium.org/293363017/)

Reason for revert:
depends on bad cl

Original issue's description:
> Fix SkAtomics_win.h typos.
>
> NOTRY=true
>
> BUG=skia:
>
> Committed: http://code.google.com/p/skia/source/detail?r=14930

R=mtklein@chromium.org
TBR=mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/304503011

git-svn-id: http://skia.googlecode.com/svn/trunk@14932 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_win.h
2adf1a583cb9044bc9316507a78918f0d11ccd27 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "5133fc1 from Wed, 28 May 2014 19:50:29 +0000"

https://skia.googlesource.com/skia/+/5133fc1c068179816cb16cd00372776e6cdd2b93

Change-Id: I1566d73d18444fbb313b0edb655db7782e095199
5133fc1c068179816cb16cd00372776e6cdd2b93 28-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix SkAtomics_win.h typos.

NOTRY=true

BUG=skia:
R=mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/293363017

git-svn-id: http://skia.googlecode.com/svn/trunk@14930 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_win.h
1a408c281c554315ab705185eb0724e01deb45a8 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "3fdc7d6 from Wed, 28 May 2014 19:40:21 +0000"

https://skia.googlesource.com/skia/+/3fdc7d6dd13b510de09cf29ffd3fe36adf89d541

Change-Id: I17fc5e05eeaae560ace1252333ed93b7e2d66e34
3fdc7d6dd13b510de09cf29ffd3fe36adf89d541 28-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Spin off just SkLazyFnPtr from 305513002.

The memory barrier in SkOnce is a perf regression for sk_mem{set,cpy} in
SkUtils on ARM. We can do a lot better for function pointers.

BUG=skia:
R=bungeman@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/305753002

git-svn-id: http://skia.googlecode.com/svn/trunk@14929 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_sync.h
kAtomics_win.h
b478e48ecfcb43851f7c8ee1b3c48e2f0d56cb7f 28-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "7c18351 from Wed, 28 May 2014 15:40:26 +0000"

https://skia.googlesource.com/skia/+/7c18351d1f9f8fe4c5cbebf1852cd4f7bb5e026f

Change-Id: Ia2a5a368f6bb8456b39c87f1d28afd5107de3936
7c18351d1f9f8fe4c5cbebf1852cd4f7bb5e026f 28-May-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Better handling of bitmaps in DirectWrite.

R=reed@google.com

Review URL: https://codereview.chromium.org/303773002

git-svn-id: http://skia.googlecode.com/svn/trunk@14915 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
e225ff2715335cdec917c05ae5d7072759692257 27-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "64f6d154511fc840e9a2db1f17699fd5799f7917 from Tue, 27 May 2014 15:55:35 +0000"

Change-Id: Iaf5a1365dbf5108653b9e7296438c9f20f632ba6
64f6d154511fc840e9a2db1f17699fd5799f7917 27-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkAtomics_sync on Android

Every doc I've found about using Android's atomics says, "stop".

"* A handful of basic atomic operations. The appropriate pthread
* functions should be used instead of these whenever possible."

"... we recommend stopping from using these functions entirely. Very fortunately, GCC provides handy intrinsics functions that work with very reasonable performance and always provide a full barrier."

As far as I can tell, there's no code generation change here: both the __sync atomics and the android_ atomics use full memory barriers. (And now with this all unified, it'll be easier to get the real wins by switching everything to __atomic atomics, which are like __sync atomics but allow control over memory barriers.)

BUG=skia:
R=bungeman@google.com, djsollen@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/305593002

git-svn-id: http://skia.googlecode.com/svn/trunk@14896 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_android.h
1576400851206c10ca93f1642b78e7eb3a35eae8 27-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "abf4189f340dc0b714b945a8954d955c570880bf from Tue, 27 May 2014 15:16:37 +0000"

Change-Id: I82a2cce02f80100848f01a7b4395bebfa5f9c211
abf4189f340dc0b714b945a8954d955c570880bf 27-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Drop support for non-atomic non-mutex platforms.

(Clients can still provide these themselves if they really want.)

BUG=skia:
R=reed@google.com, mtklein@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/295373005

git-svn-id: http://skia.googlecode.com/svn/trunk@14894 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_none.h
kMutex_none.h
02bec349c76d20546dcebf5309ce5214147923e2 27-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "81da061f7285bbcf0acc31142042a9cd0ab8f068 from Tue, 27 May 2014 15:00:32 +0000"

Change-Id: I9ba6c79cb2f5f7e597573cb4af179427d8141544
81da061f7285bbcf0acc31142042a9cd0ab8f068 27-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement sk_atomic_conditional_inc with sk_atomic_cas.

Now that we have sk_atomic_cas, we can replace all the platform-specific CAS loops with one.

BUG=skia:
R=bungeman@google.com, mtklein@google.com, reed@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/300553003

git-svn-id: http://skia.googlecode.com/svn/trunk@14892 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_android.h
kAtomics_none.h
kAtomics_sync.h
kAtomics_win.h
8f2fd53be518d252f4e89dadbaf36f882d79e8ef 24-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "3c134a97ed128ca95345e13619512df0f42e95f8 from Sat, 24 May 2014 03:05:26 +0000"

Change-Id: Ia9a9b6c881d221d393d36a4b1d4636454dc20e87
3c134a97ed128ca95345e13619512df0f42e95f8 24-May-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14884 2bbb7eff-a529-9590-31e7-b0007b416f81
kDiscardableMemory_ashmem.cpp
b3a7857cd704c0f3d38bc8f6f5b82e4120f33325 23-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "e5a8e66668a1594e49b2c221f26da4c6d2a4e99f from Fri, 23 May 2014 20:25:15 +0000"

Change-Id: Ib0c8a25d287fc8adada8087a4aa61b2f0a661dde
e5a8e66668a1594e49b2c221f26da4c6d2a4e99f 23-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> move ashmem switching logic to SkDiscardableMemory::Create

R=scroggo@google.com, reed@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/293283002

git-svn-id: http://skia.googlecode.com/svn/trunk@14882 2bbb7eff-a529-9590-31e7-b0007b416f81
kDiscardableMemory_ashmem.cpp
a23039a56f8eddf81e0868b6c75454b0a9a22204 22-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "7cb5e4797ed7ecb200f90889687a72940efa6d98 from Thu, 22 May 2014 17:59:51 +0000"

Change-Id: Ibcb837ca4e93c10d449d6858c59d8bde54dbdb5c
4a867a6356e05a09186a16c1c8ffc3f2cafbbe59 22-May-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SK_IGNORE_UNDERLINE_POSITION_FIX now that it is no longer used.

R=reed@google.com

Review URL: https://codereview.chromium.org/294663016

git-svn-id: http://skia.googlecode.com/svn/trunk@14849 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_win.cpp
fefed3bdf25cf0e02e211dcaa014820494821e65 21-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at "e4ae0bc5caeed52e07c7e5939fa4ac38d9e408ab from Wed, 21 May 2014 19:44:39 +0000"

Change-Id: I216b49855ea0b9add63393357a87daf002988dbf
e4ae0bc5caeed52e07c7e5939fa4ac38d9e408ab 21-May-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix undefined behavior in DirectWrite GDI compatible metrics.

GetGdiCompatibleGlyphMetrics checks the matrix passed to it.
If the matrix has any NaNs or INFs or otherwise looks bad, it returns
E_INVALIDARG and so the advances will be zero.

BUG=skia:2579
R=reed@google.com

Review URL: https://codereview.chromium.org/298863002

git-svn-id: http://skia.googlecode.com/svn/trunk@14829 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
62107f3888bc9011c404be4597b89e70c0987afe 14-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14726

Change-Id: If9ccc1016deb352b5d06cd0cf095382616d59912
d3031aa5ae90b796593a04c0da062024198e4769 14-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Stage fixes for underline position.

R=reed@google.com

Author: bungeman@google.com

Review URL: https://codereview.chromium.org/271333002

git-svn-id: http://skia.googlecode.com/svn/trunk@14726 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_win.cpp
2f57823609f65422d41d5cd24593990f7066e325 13-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14705

Change-Id: I430194dade6ea75629a7a6906b85c5b46076a26b
e92c68f7d7398e8a510b7157a38747b23cb883ae 13-May-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14705 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
3a739b91c65b83fea9c0daa6d098d427afa74429 12-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14703

Change-Id: I90dc17745bfed72a667dabcdaa367c1297a4d9a2
5970f625e96cdc007c563ae72f343ae0d71719a1 12-May-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> re-land hide get/setLocalMatrix

This reverts commit b1d702a43b07934f5b001b1b09db2c57ede909a1.

TBR=scroggo@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/279903002

git-svn-id: http://skia.googlecode.com/svn/trunk@14702 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
1238592346fffe0c85a2cc1bb733e1e38eb7c984 09-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14683

Change-Id: I847c94760a204e930be4198ddbe9c4f9bb371657
7584c298e0aff93911b4b7a0bb5b62c47c48b938 09-May-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Un-swap underline position and thickness calcualtions in DirectWrite.

The change at r13635 got these backwards.


git-svn-id: http://skia.googlecode.com/svn/trunk@14683 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
d188672ac1b074192330747eb34751bf0eda1638 09-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14667

Change-Id: I2b1adfca7250b3d257d283be936e6c0f131ff6ed
1c261116d9e980534c21faec8ea440669026942e 09-May-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix typo in SkFontHost_win.cpp in comment.

We want the 'size', not the 'side'.


git-svn-id: http://skia.googlecode.com/svn/trunk@14667 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
9a12a41910a192023f457c0f38c692e81ce650a3 06-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14583

Change-Id: Id93a81d65c7260ecf33f38d7a597abeee5fbed7e
cf800e0486eb6ae449a898c78766a5d71a29114e 06-May-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Initialize the SkFontConfigInterface singleton with SkOnce.

BUG=chromium:369257
R=mtklein@google.com

Review URL: https://codereview.chromium.org/269143002

git-svn-id: http://skia.googlecode.com/svn/trunk@14583 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
cdc1969021e0205a0ce41dc29ee4ea369fb5d281 01-May-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14518

Change-Id: Icfe2b7d5aadb075a305e42d97134b2b89c374e79
058670b1e52910e61d9de294a46b5023ed6dd964 01-May-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add support for kEmbeddedBitmapText_Flag to DirectWrite.

R=reed@google.com

Review URL: https://codereview.chromium.org/263503004

git-svn-id: http://skia.googlecode.com/svn/trunk@14518 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
d0306a15938a971e10dd8648d3e17b001c4b0014 24-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Add nanosecond timer. (https://codereview.chromium.org/250243002/)

Reason for revert:
breaks EVERYTHING

Original issue's description:
> Add nanosecond timer.
>
> I've been finding it hard to get enough resolution out of our existing timers when measuring really tiny pictures.
>
> BUG=skia:2378
>
> Committed: http://code.google.com/p/skia/source/detail?r=14362

R=bsalomon@google.com, bungeman@google.com, mtklein@chromium.org
TBR=bsalomon@google.com, bungeman@google.com, mtklein@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=skia:2378

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/258703002

git-svn-id: http://skia.googlecode.com/svn/trunk@14364 2bbb7eff-a529-9590-31e7-b0007b416f81
kTime_Unix.cpp
kTime_win.cpp
74b43a9d4c5c602704f0af6a5706faacca45597a 24-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add nanosecond timer.

I've been finding it hard to get enough resolution out of our existing timers when measuring really tiny pictures.

BUG=skia:2378
R=bsalomon@google.com, mtklein@google.com, bungeman@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/250243002

git-svn-id: http://skia.googlecode.com/svn/trunk@14362 2bbb7eff-a529-9590-31e7-b0007b416f81
kTime_Unix.cpp
kTime_win.cpp
b2a82f4496904ef455a1308f0d90aacf14652b05 23-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14320

Change-Id: Ibe12d1d8f77e0eeb3d47d3c97ab890ae7683d74f
ede0c5c7784ff4bd86e268d33df89c0ac432ca5b 23-Apr-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@14320 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
cd6ecfd0b8e920abdae67d8fbd20c9f4efe33d1b 22-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14315

Change-Id: I174e004eb80026af0705085f281fb8d378771c99
60b5dce19984a5165f6b2f1d6d477f5e8a940761 22-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> expose CGImage -> SkBitmap

BUG=skia:
R=scroggo@google.com, halcanary@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/243463005

git-svn-id: http://skia.googlecode.com/svn/trunk@14315 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
8b11c9f75af843f6ab6db98cf1b60d3c1e44edcb 22-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge Skia at r14301

Change-Id: I42149695d18162d94eed765c877601532b6dc13e
c18ba27a8b5af5f555ce72e451831c4e0df6cad3 22-Apr-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SK_IGNORE_FREETYPE_ROTATION_FIX and guarded code.

Chromium/Blink have removed this define and rebaselined.
The guarded code is no longer used.


git-svn-id: http://skia.googlecode.com/svn/trunk@14301 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
d3b58486e97a677f8da2bb4b73690a4af37368d7 16-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge upstream Skia at r14227.

In addition, this CL merges all of Skia, including files that are not
needed by Android. This greatly simplifies the Skia merging process.

Conflicts:
gyp/common_conditions.gypi
src/effects/gradients/SkLinearGradient.cpp

Change-Id: I7a40eb2b2a6901a1934c868479a7a0ff0c3276d9
d3fbd34099a530b5415c95b1f2f8149ac417b9b3 15-Apr-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix size of rotated text with FreeType.

This generalizes and shares the solution found for a similar issue with
GDI. The issue is that the text size is applied early, and the rest of
the transformation late. This allows us to isolate and independently
control the text size from the rest of the transformation.

R=reed@google.com

Review URL: https://codereview.chromium.org/213153006

git-svn-id: http://skia.googlecode.com/svn/trunk@14201 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_win.cpp
28fcae2ec77eb16a79e155f8d788b20457f1c951 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)

Reason for revert:
Want to reland the original CL.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, bensong@google.com
TBR=bensong@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/235523003

git-svn-id: http://skia.googlecode.com/svn/trunk@14156 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
96edc2459820f0f60ea9b57959c1e5018ef95e28 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)

Reason for revert:
Chrome's side of define changes not easy to figure out quickly. Reverting this for DEPS roll for now.

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

Review URL: https://codereview.chromium.org/234833003

git-svn-id: http://skia.googlecode.com/svn/trunk@14149 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
d923288e50b5a69afb0bdd5c161191b24cab8345 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/234243002/)

Reason for revert:
fixes on the chrome side are landing (brettw), keep fingers crossed.

Original issue's description:
> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)
>
> Reason for revert:
> breaking the Chrome deps roll.
> http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio
>
> Original issue's description:
> > Rename kPMColor_SkColorType to kN32_SkColorType.
> >
> > The new name better represents what this flag means.
> >
> > BUG=skia:2384
> >
> > Committed: http://code.google.com/p/skia/source/detail?r=14117
>
> TBR=reed@google.com,scroggo@google.com
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14144

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

Review URL: https://codereview.chromium.org/233813004

git-svn-id: http://skia.googlecode.com/svn/trunk@14145 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
757ebd20ef284b6428eb9f4b9b69826cc3640a82 11-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of Rename kPMColor_SkColorType to kN32_SkColorType. (https://codereview.chromium.org/227433009/)

Reason for revert:
breaking the Chrome deps roll.
http://build.chromium.org/p/chromium.linux/builders/Linux%20GN%20%28dbg%29/builds/839/steps/compile/logs/stdio

Original issue's description:
> Rename kPMColor_SkColorType to kN32_SkColorType.
>
> The new name better represents what this flag means.
>
> BUG=skia:2384
>
> Committed: http://code.google.com/p/skia/source/detail?r=14117

R=reed@google.com, scroggo@google.com
TBR=reed@google.com, scroggo@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2384

Author: bensong@google.com

Review URL: https://codereview.chromium.org/234243002

git-svn-id: http://skia.googlecode.com/svn/trunk@14144 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
149e9a107c356b0151433fb23c2b1c8d0634947c 09-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename kPMColor_SkColorType to kN32_SkColorType.

The new name better represents what this flag means.

BUG=skia:2384
R=reed@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/227433009

git-svn-id: http://skia.googlecode.com/svn/trunk@14117 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
ee7b190269e9f247344a61bdde45caa17ad41a51 09-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge upstream Skia at r14106

Change-Id: If34808cc1a6bdc8812dbca68881292aefd5e6a02
d715aaa33fc52d36f566caf941787a2cca24d85b 09-Apr-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Measure DirectWrite BW consistently with rendering.

Also move DirectWrite glyph drawing into the scaler context, as this
reduces duplication.

R=reed@google.com

Review URL: https://codereview.chromium.org/225283021

git-svn-id: http://skia.googlecode.com/svn/trunk@14106 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
e752303ceb34384ab59e52e390a84357d588da71 08-Apr-2014 Skia_Android Canary Bot <31977622648@project.gserviceaccount.com> Merge upstream Skia at r14100.

Conflicts:
src/ports/SkFontHost_FreeType.cpp

Change-Id: Id53a58f30e6314f746daeb10cb12c994de971a58
c5d9bb0f677069f62ec76373b9730e70e7352455 08-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Initial picture shader implementation

This CL adds an SkPictureShader class to support SkPicture-based
patterns.

The implementation renders the picture into an SkBitmap tile and then
delegates to SkBitmapProcShader for the actual operation.

R=bsalomon@google.com, reed@google.com, robertphillips@google.com

Committed: http://code.google.com/p/skia/source/detail?r=14085

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/221923007

git-svn-id: http://skia.googlecode.com/svn/trunk@14092 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
c4df655b37aea7097d3007b299de582ba517ef16 07-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Factory methods for heap-allocated SkTypeface objects.

This is part of an effort to ensure that all SkPaint effects can only be
allocated on the heap.

This patch makes the constructors of SkTypeface and its subclasses non-public
and instead provides factory methods for creating these objects on the heap.

BUG=skia:2187
R=scroggo@google.com, bungeman@google.com

Author: dominikg@chromium.org

Review URL: https://codereview.chromium.org/227693003

git-svn-id: http://skia.googlecode.com/svn/trunk@14080 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigTypeface.h
kFontHost_fontconfig.cpp
b55444054317d7f836da048241266fdaca442d1d 07-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkResizeImageFilter.

Its functionality has been subsumed by SkMatrixImageFilter, and it's no longer
used in Blink.

BUG=skia:
R=bsalomon@google.com

Author: senorblanco@chromium.org

Review URL: https://codereview.chromium.org/222923005

git-svn-id: http://skia.googlecode.com/svn/trunk@14073 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
31db71dd59b18ae0f36ca2686fba5fdcc6fe9439 04-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Prevent potential leaking of memory by using SkString and SkTArray.

R=bungeman@google.com, mtklein@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/226183002

git-svn-id: http://skia.googlecode.com/svn/trunk@14064 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
kFontConfigParser_android.cpp
kFontConfigParser_android.h
8f34190104d139c64598c334709aacff723c4fc9 28-Mar-2014 Leon Scroggins <scroggo@google.com> Merge upstream Skia at r13977.

Includes cherry-picks from:
https://code.google.com/p/skia/source/detail?r=14009
https://code.google.com/p/skia/source/detail?r=14014

Android.mk and SkUserConfig.h have been generated by
gyp_to_android.py.

SkUserConfig.h was additionally updated to include defines
which are necessary but not generated by gyp_to_android.

SkTemplates.h has been further modified to exclude the use
of numeric_limits.

Merge remote-tracking branch 'upstream/master' into merge

Conflicts:
src/images/SkImageRef.cpp

SkImageRef conflicts because
https://code.google.com/p/skia/source/detail?r=13503 (the correct fix)
was committed to Skia upstream, but it depended on APIs not yet in
Android's version of Skia. So Android got
change id I245eea4f05f402ca24849d5d2fe354c69526d03d. This merge takes
Skia r13503 (plus later fixes).

Requires changes to frameworks/base (I5cdcea827ebff587df0bbddc0965e3e0fbf48002)
and cts (Ia6864326bd582587227ab404dbacb409d7f08016).

Change-Id: I816129d49c0118453222916f3c818eccac33663d
8bf34e17745f70ab4d80951158eddb7baf62a27d 03-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove dead code in ports/.

These files are not referenced by any .gyp file in Skia or Chromium.
ninja -C out/Debug everything still builds.

BUG=skia:
R=bungeman@google.com, mtklein@google.com, halcanary@google.com

Author: mtklein@chromium.org

Review URL: https://codereview.chromium.org/214243004

git-svn-id: http://skia.googlecode.com/svn/trunk@14036 2bbb7eff-a529-9590-31e7-b0007b416f81
kHarfBuzzFont.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
37eb4e4ed1dddcea0a74fee023704b5071ffa754 02-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Purge SkPurgeableMemoryBlock.

It was an experiment that is no longer used.

R=mtklein@google.com

Author: scroggo@google.com

Review URL: https://codereview.chromium.org/219133004

git-svn-id: http://skia.googlecode.com/svn/trunk@14020 2bbb7eff-a529-9590-31e7-b0007b416f81
kPurgeableMemoryBlock_android.cpp
kPurgeableMemoryBlock_mac.cpp
kPurgeableMemoryBlock_none.cpp
921d2b3f6c4b32345f9561be91806793b4842283 01-Apr-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> The android framework should not embolden glyphs that originate from bold fonts.

R=scroggo@google.com, bungeman@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/216983005

git-svn-id: http://skia.googlecode.com/svn/trunk@14014 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
6eddc77f6a0078570471277954c07d73b3a921d8 31-Mar-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Pass the IDWriteFactory instead of relying on a global creator.

There are different variations or implementations of IDWriteFactory
with different behaviors. Allow the user to specify the factory to use.

R=scottmg@chromium.org

Review URL: https://codereview.chromium.org/218833005

git-svn-id: http://skia.googlecode.com/svn/trunk@14000 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
c94a028ff836f8f0af41ec33ceb1f4bc140841bf 27-Mar-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a default-default font for DirectWrite.

BUG=357067
R=reed@google.com

Review URL: https://codereview.chromium.org/214843002

git-svn-id: http://skia.googlecode.com/svn/trunk@13966 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
609e6f98f0e0fb7fa17c1c70a4765edc829c8d50 27-Feb-2014 Leon Scroggins <scroggo@google.com> Merge M34 Skia (13441) into Android.

Also includes a cherry-pick of
https://codereview.chromium.org/169753004/

Merge commit 'a7692a9ac6cb8a0bbe6bbdfc83f86014a7dc265e' into m34

Conflicts:
gyp/tools.gyp
include/core/SkFixed.h
include/core/SkThread_platform.h
include/core/SkUserConfig.h
src/core/SkImageInfo.cpp
src/core/SkMallocPixelRef.cpp
src/core/SkMatrix.cpp
src/effects/SkColorMatrix.cpp
src/ports/SkFontHost_FreeType.cpp
src/ports/SkFontHost_FreeType_common.cpp
tools/PictureRenderer.cpp

Change-Id: I3f2fccbea7dce15066e1beb0d874bafed3047f33
fd0ec2c76a27ce26a62da23eb75017839959e7cb 25-Mar-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement a generic matrix transform image filter.

This will be used in Blink to accommodate matrices that contain
rotation or shearing. This is a generalization of SkResizeImageFilter,
so I've replaced all uses of SkResizeImageFilter in Skia. (It might be
easier to review by diffing it with SkResizeImageFilter, too.)

R=reed@google.com

Review URL: https://codereview.chromium.org/211103006

git-svn-id: http://skia.googlecode.com/svn/trunk@13941 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
a2b44dc5882856b6ed3670f370819ab39998ada8 24-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkFontHost_linux - dup stream instead of ref

R=bungeman@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/210383002

git-svn-id: http://skia.googlecode.com/svn/trunk@13926 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
29d3777a82def082da486b735308f0fe57cec8d6 22-Mar-2014 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@13902 2bbb7eff-a529-9590-31e7-b0007b416f81
kRemotableFontMgr_win_dw.cpp
3d21f21cac33743e7aedace9abf0473c5063199f 22-Mar-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix r13897.



git-svn-id: http://skia.googlecode.com/svn/trunk@13898 2bbb7eff-a529-9590-31e7-b0007b416f81
kRemotableFontMgr_win_dw.cpp
72cf4fcafa54cfa04c5ec7cb8eaa3acb144712dd 21-Mar-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> A remotable font management interface and DirectWrite implementation.

The introduced SkRemotableFontMgr is a font management interface designed for simple and fast proxy support. SkFontMgr_Indirect bridges a SkRemotableFontMgr and a local SkFontMgr to present a SkFontMgr interface.

This change is to be followed by https://codereview.chromium.org/132113015/ and https://codereview.chromium.org/206693003 .

R=reed@google.com

Review URL: https://codereview.chromium.org/206683002

git-svn-id: http://skia.googlecode.com/svn/trunk@13897 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
kRemotableFontMgr_win_dw.cpp
8e13a159f3a54f761ab80b16377015e5a9077411 19-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed cross compilation with mingw.

Tested in Mozilla source tree. I tried to use skia build system, but it's up to the task for cross compilation.

SkHRESULT.cpp - Use proper file name (that matters on case sensitive OSes)

SkAtomics_win.h - Don't use pragma intrinsic on GCC (this causes massive warnings)

SkOSFile_win.cpp - This one is tricky. GCC doesn't allow (void*) casts in template argument constants and INVALID_HANDLE_VALUE looks like this:
((HANDLE)(LONG_PTR)-1)
where HANDLE is typedefed to void*. Changed the code to use LONG_PTR as template argument and cast it when needed.

BUG=skia:
R=bungeman@google.com, reed@google.com

Author: cjacek@gmail.com

Review URL: https://codereview.chromium.org/198643004

git-svn-id: http://skia.googlecode.com/svn/trunk@13862 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_win.cpp
1d1f2347d303852172fb7629c27d295ef68d9a3c 17-Mar-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkFontStyleSet_DirectWrite::getStyle to properly handle NULL out params.

R=reed@google.com

Review URL: https://codereview.chromium.org/201213003

git-svn-id: http://skia.googlecode.com/svn/trunk@13829 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
ea163cc3a708fc634ace369ce6c5b7b9da7fe9cc 13-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Changes to SkFontHost_linux

* Use SkOSPath::SkPathJoin() rather than append so that
SK_FONT_FILE_PREFIX does not have to end in a '/'.

* Add another font to the default font list.

Motivation: Some tests fail when there are no default fonts.

BUG=skia:2282
R=bungeman@google.com

Author: halcanary@google.com

Review URL: https://codereview.chromium.org/195733007

git-svn-id: http://skia.googlecode.com/svn/trunk@13789 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
9e5f85e89d03a850d435fc951e74e9861a0c1bdd 12-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing SkPicture serialization

Fixed a few issues while attempting to use the new
serialization path for SkPicture inside a fuzzer:
- SkReadBuffer and SkValidatingReadBuffer both had a fReader
member instead of sharing the same member, which leads to
problems if a base class function is used
- In SkPicture, a header is now written as a single chunk of
data, so it also has to be read as a single chunk of data
- In the SkPicturePlayback destructor, a bad deserialization
would lead to a crash if we don't safely unref fOpData
- Also in SkPicturePlayback, if we only use a ReadBuffer for
the whole deserialization, additional tags must be added to
parseBufferTag()
- SkValidatingReadBuffer::readBitmap() was broken, but this
path wasn't usen't since the only use case for
SkValidatingReadBuffer is currently image filters and
bitmaps are unflattened as part of the deserialization of
SkBitmapSource
- SkPictureImageFilter was not deserializable. Added it to
SkGlobalInitialization*
- Added a test that exercises the SkPicture serialization /
deserialization code

BUG=skia:
R=senorblanco@google.com, senorblanco@chromium.org, reed@google.com, robertphillips@google.com

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/195223003

git-svn-id: http://skia.googlecode.com/svn/trunk@13764 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
0bc406df48ac6f358ab8dcff08f71fe9c32b79de 01-Mar-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding code to calculate Underline Thickness from Font Metrics, this will be useful when Skia is used with Blink/Chrome. Blink changes are uploaded with code change in patch https://codereview.chromium.org/147703002/

BUG=skia:
R=reed@android.com, edisonn@google.com, reed@google.com, mtklein@google.com, mtklein@chromium.org, bungeman@google.com

Author: h.joshi@samsung.com

Review URL: https://codereview.chromium.org/152073003

git-svn-id: http://skia.googlecode.com/svn/trunk@13635 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
1cadd3c11c7d87f410bcaf0f229a89eca7a3a121 24-Feb-2014 Derek Sollenberger <djsollen@google.com> Merge remote-tracking branch 'goog/m33' into master

Conflicts:
Android.mk
include/utils/SkFrontBufferedStream.h
src/images/SkImageDecoder_libpng.cpp
src/ports/SkFontHost_FreeType.cpp
src/utils/SkDeferredCanvas.cpp
src/utils/SkFrontBufferedStream.cpp
src/utils/SkPictureUtils.cpp

Change-Id: Iae45e9cff346667ca9c4b406622bc467f04e7410
e9336aa21653be6978e0240dd40e57e6c23f9694 24-Feb-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use colortypes instead of bitmap::config

BUG=skia:

Review URL: https://codereview.chromium.org/177823002

git-svn-id: http://skia.googlecode.com/svn/trunk@13558 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
8a2ad3cae710f05cca57e48dd1732d575dba2dc7 23-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> add new copyTo version to SkBitmap, which takes SkColorType

BUG=skia:
R=scroggo@google.com, halcanary@google.com, bsalomon@google.com

Author: reed@google.com

Review URL: https://codereview.chromium.org/171723007

git-svn-id: http://skia.googlecode.com/svn/trunk@13553 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
ba727b9526bc58e0608b7dc3d1de64bcc1f8bd10 15-Feb-2014 Victoria Lease <violets@google.com> remove unnecessary condition

Bug: 12721857
Change-Id: Id8b6e28f130de9c3a8e0e72b537af3def4d74974
kFontConfigInterface_android.cpp
ba9354b9d4de62988cc2a56c0760fd5e52da3679 10-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkOnce in is_lcd_supported instead of hand rolled double-checked locking.

BUG=skia:
R=bungeman@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/155963003

git-svn-id: http://skia.googlecode.com/svn/trunk@13387 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
c435360f209e34c6a9865ef27ac2c828548919ad 07-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix android build issues with atomics

Uses inline methods for sk_atomic_inc/add/dec instead of #define.
Since those methods are declared as static in SkThread.h, they need
a definition or else the compiler generates an error. Also corrects
a typo.

BUG=skia:
R=djsollen@google.com, bungeman@google.com, bsalomon@google.com

Author: cdalton@nvidia.com

Review URL: https://codereview.chromium.org/148113010

git-svn-id: http://skia.googlecode.com/svn/trunk@13360 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_android.h
967dee32ef540b7c0fed6d0cd518d42b9b345c78 04-Feb-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkFontMgr interface const.

COLLABORATOR=mtklein@chromium.org
BUG=skia:
R=reed@google.com, bungeman@google.com, mtklein@chromium.org

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/134643028

git-svn-id: http://skia.googlecode.com/svn/trunk@13314 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
fe755b47052bc5bdf8a32e1e21f8dd81ba44d2e8 28-Jan-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove BOM from SkFontHost_FreeType.cpp.

With r12822 a UTF-8 BOM was added to SkFontHost_FreeType.cpp.
This change removes it.

Running

find . -type f \( -name '*.cpp' -o -name '*.h' \) -exec file {} \; | grep BOM

makes it look like this is the only file with a UTF-8 BOM at this time.
The BOM is easily removed with

tail -c +4 <filename>

R=rmistry@google.com

Review URL: https://codereview.chromium.org/141433025

git-svn-id: http://skia.googlecode.com/svn/trunk@13225 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
7fa2a65c0cfc714364490cb715171461143024e0 27-Jan-2014 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix more 64bit warnings

BUG=skia:

Review URL: https://codereview.chromium.org/147683003

git-svn-id: http://skia.googlecode.com/svn/trunk@13190 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
kImageDecoder_CG.cpp
f6f56878bc96386882721b15ba610984185d3dc9 23-Jan-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Clarify kAutohinting is kForceAutohinting.

BUG=skia:2047
R=reed@google.com

Review URL: https://codereview.chromium.org/139943004

git-svn-id: http://skia.googlecode.com/svn/trunk@13156 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
94da31dd3b1b240f649cde30b767247681b7724b 23-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream Android Changes from K release

R=scroggo@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/145233002

git-svn-id: http://skia.googlecode.com/svn/trunk@13152 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
4732df69415fbece99b3d4c033dc3bebe73d0117 23-Jan-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Basic support for vector FON.

This change gives vector FON fonts slightly better support than bitmap
FON fonts which we already have some support for.

This also fixes the calculation of the y component of advances for
bitmap and vector FON glyphs.



git-svn-id: http://skia.googlecode.com/svn/trunk@13150 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
f397b21b691b7ea535dc764590704946cfff7899 17-Jan-2014 Derek Sollenberger <djsollen@google.com> Merge Skia r12682 into Android.

Conflicts:
include/core/SkDraw.h
include/pdf/SkPDFDevice.h
include/utils/SkCanvasStateUtils.h
include/utils/SkFrontBufferedStream.h
src/core/SkDevice.cpp
src/core/SkDeviceLooper.cpp
src/core/SkDeviceLooper.h
src/core/SkRRect.cpp
src/doc/SkDocument_PDF.cpp
src/effects/SkBlurMaskFilter.cpp
src/fonts/SkFontMgr_fontconfig.cpp
src/gpu/GrAAHairLinePathRenderer.cpp
src/gpu/GrAAHairLinePathRenderer.h
src/gpu/GrTextContext.cpp
src/images/SkImageDecoder_libpng.cpp
src/images/SkScaledBitmapSampler.cpp
src/images/SkScaledBitmapSampler.h
src/pdf/SkPDFDevice.cpp
src/pdf/SkPDFDeviceFlattener.cpp
src/ports/SkFontConfigInterface_android.cpp
src/ports/SkFontHost_FreeType.cpp
src/ports/SkFontHost_FreeType_common.cpp
src/utils/SkCanvasStack.cpp
src/utils/SkCanvasStack.h
src/utils/SkCanvasStateUtils.cpp
src/utils/SkDeferredCanvas.cpp
src/utils/SkFrontBufferedStream.cpp
src/utils/SkPictureUtils.cpp

Change-Id: Ice86d9769ed99f804932d8839acfdea695cb6d28
910f694aefb0b671dd8522a9afe9b6be645701c1 16-Jan-2014 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@12682

Change-Id: I0470d8e53bf019f410509180b95950f20f98a5e8
kDebug_win.cpp
kDiscardableMemory_ashmem.cpp
kDiscardableMemory_none.cpp
kFontConfigInterface_direct.cpp
kFontConfigTypeface.h
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kImageDecoder_empty.cpp
b06faacaf13b9b5c47b8526492ad155bdce3863b 15-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Factor out UnPreMultiplyPreservingByteOrder

BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/130303005

git-svn-id: http://skia.googlecode.com/svn/trunk@13103 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
a612d4c5134655fe6703c8d2f63be710aa1e2767 15-Jan-2014 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement a resize image filter. This is needed for the "filterRes" feature in SVG filter effects, which specifies the required size for intermediate processing buffers. In order to make this work, we need to render the primitive at the given resolution (doable at the callsite in Blink), and then to resize the result to the actual on-screen size. The latter is where this filter comes in.

It simply applies a scaling factor (and the current CTM) to its input, and draws its input bitmap at that size.

R=reed@google.com

Committed: https://code.google.com/p/skia/source/detail?r=13077
Reverted: https://code.google.com/p/skia/source/detail?r=13078

BUG=

Review URL: https://codereview.chromium.org/136863006

git-svn-id: http://skia.googlecode.com/svn/trunk@13082 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
ca38f2c86ef06c5d19b80fb5577f4574b552061f 09-Jan-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix TODO in SkMutex_win.h to prevent accidental copying.

R=mtklein@google.com

Review URL: https://codereview.chromium.org/129533002

git-svn-id: http://skia.googlecode.com/svn/trunk@12979 2bbb7eff-a529-9590-31e7-b0007b416f81
kMutex_win.h
4b5fba5a3cc29058088a9a62df1da83e1a3c7db0 08-Jan-2014 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use a spinlock in SkOnce.

SkOnceFlag is now statically initializable on all platforms.

Also adds sk_atomic_cas, used to implement new SkSpinlock.

Going to punt on making SkOnceFlag any smaller (for now, it's 8 bytes). We could conceivably get it down to two bits, one for done and one for a one-bit spinlock (we'd need atomic-& and atomic-| to make that work, but they appear to be available everywhere).

BUG=skia:1929
R=bungeman@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/123093002

git-svn-id: http://skia.googlecode.com/svn/trunk@12968 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_android.h
kAtomics_none.h
kAtomics_sync.h
kAtomics_win.h
97a5d5da167a511eb092ebbeae9d27d44204ea8c 08-Jan-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Improve 'stretch' in legacy create typeface for DirectWrite.

Previously the stretch (width) property was set to UNDEFINED, since the
legacy create typeface does not have this information. However, a better
default here is NORMAL.

Review URL: https://codereview.chromium.org/127813003

git-svn-id: http://skia.googlecode.com/svn/trunk@12966 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
fa8afda2500f4c90b52bb18228033abb651bde2d 08-Jan-2014 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Work around SkString::gEmptyRec->writable_str() is unwritable.

See https://code.google.com/p/skia/issues/detail?id=1989

R=reed@google.com

Review URL: https://codereview.chromium.org/128463002

git-svn-id: http://skia.googlecode.com/svn/trunk@12961 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
6fa81d7878d20b9e46ea9395e2efb58026447142 26-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/119943002/
Reason for revert: False alert on zheng.xu's original CL - it didn't break anything.

R=bungeman@google.com, reed@google.com, zheng.xu@arm.com, robertphillips@google.com, rmistry@google.com
TBR=bungeman@google.com, reed@google.com, rmistry@google.com, robertphillips@google.com, zheng.xu@arm.com
NOTREECHECKS=true
NOTRY=true
BUG=

Author: bensong@google.com

Review URL: https://codereview.chromium.org/117963003

git-svn-id: http://skia.googlecode.com/svn/trunk@12822 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_FreeType_common.h
5f2fd5dd5d6dbf3057258d652aacfc9d664132a2 20-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/101423004/
Reason for revert: broke some win7 bots

R=bungeman@google.com, reed@google.com, zheng.xu@arm.com, robertphillips@google.com, rmistry@google.com
TBR=bungeman@google.com, reed@google.com, zheng.xu@arm.com
NOTREECHECKS=true
NOTRY=true
BUG=

Author: bensong@google.com

Review URL: https://codereview.chromium.org/119943002

git-svn-id: http://skia.googlecode.com/svn/trunk@12794 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_FreeType_common.h
a9e9a25471be22471ae42cf2eb1733ed15887243 20-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> This patch makes SkScalerContext_FreeType to be the only one which embolden the glyphs.

Add bench cases for different font styles.

BUG=
R=bungeman@google.com, reed@google.com

Author: zheng.xu@arm.com

Review URL: https://codereview.chromium.org/101423004

git-svn-id: http://skia.googlecode.com/svn/trunk@12792 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_FreeType_common.h
12bd4a014745acc3cffc20f23952bbb6f8477351 19-Dec-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Provide last resort for fCapHeight in SkFontHost_FreeType::onGetAdvancedTypefaceMetrics.

This was a pre-existing issue, but r12689 uncovered it in more cases.
Since there was no last resort, fonts without a cap height used
uninitialized data as their cap height here.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/114773004

git-svn-id: http://skia.googlecode.com/svn/trunk@12779 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
98000efa59ef82eaee8df04e4dd0c328439719a7 18-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Android now uses Harfbuzz-NG. No need to keep code specific to the old version of Harfbuzz around!

R=scroggo@google.com, reed@google.com, bungeman@google.com

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/107663012

git-svn-id: http://skia.googlecode.com/svn/trunk@12756 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
d9947f605a335363b0a0541d6d8cb7a7113ed788 18-Dec-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split atomic and mutex implementations and make inlinable.

Skia cannot use Chromium's implementation of mutex (Lock) due to static
initializers. However, we would like to be able to use Chromium's
implementation of atomics. This motivates the split of implementation.

Skia's atomic and mutex calls should be inlinable, especially the atomics.
These calls often compile down to very few instructions, and we currently have
the overhead of a function call. This motivates the header implementation.

There is still a desire for the build system to select the implementation, so
the SK_XXX_PLATFORM_H pattern for header files is introduced. This allows the
build system to control which platform specific header files are chosen.

The Chromium side changes (most of which will need to go in before this change
can be found at https://codereview.chromium.org/19477005/ .
The Chromium side changes after this lands can be seen at
https://codereview.chromium.org/98073013 .

Review URL: https://codereview.chromium.org/19808007

git-svn-id: http://skia.googlecode.com/svn/trunk@12738 2bbb7eff-a529-9590-31e7-b0007b416f81
kAtomics_android.h
kAtomics_none.h
kAtomics_sync.h
kAtomics_win.h
kMutex_none.h
kMutex_pthread.h
kMutex_win.h
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
e1ca705cac4b946993f6cbf798e2a0ba27e739f3 17-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> deprecate SkScalarRound (and its ilk), use SkScalarRound[ToInt,ToScalar]. #define SK_SUPPORT_DEPRECATED_SCALARROUND for legacy clients

BUG=
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/111353003

git-svn-id: http://skia.googlecode.com/svn/trunk@12719 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
8f4d2306fa866a26f9448048ff63f692b2ba43aa 17-Dec-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SK_SCALAR_IS_[FLOAT,FIXED] and assume floats

To keep the CL (slightly) managable, this does not make any changes to
existing macros (e.g. SkScalarMul). Just tackling #ifdef constructs this
time around.

BUG=
R=bsalomon@google.com, caryclark@google.com

Review URL: https://codereview.chromium.org/117053002

git-svn-id: http://skia.googlecode.com/svn/trunk@12712 2bbb7eff-a529-9590-31e7-b0007b416f81
kHarfBuzzFont.cpp
cbe1b54c30b9a1061577c91e0b914dbe9acdc563 16-Dec-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Supports the cap height for FreeType even when TT OS2 version is 1.

BUG=http://crbug.com/318645
R=bungeman@google.com, reed@google.com

Review URL: https://codereview.chromium.org/101333004

git-svn-id: http://skia.googlecode.com/svn/trunk@12689 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
4f3c305a5bf635dd720cad24f587167e576f2170 14-Dec-2013 tfarina@chromium.org <tfarina@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix some presubmit warnings.

I found this while running a modified version of v8's tools/presubmit.py
script.

samplecode/SampleImage.cpp does not end with a single new line.
samplecode/SampleImageDir.cpp does not end with a single new line.
src/ports/SkFontHost_sandbox_none.cpp does not end with a single new line.
tests/FlatDataTest.cpp does not end with a single new line.
tests/ImageCacheTest.cpp has trailing whitespaces in line 31.

* Removed three empty files.
* Add single new line to FlatDataTest.cpp
* Removed trailing whitespace in ImageCacheTest.cpp

BUG=None
TEST=None
R=bsalomon@google.com
TBR=bsalomon@google.com

Review URL: https://codereview.chromium.org/111503008

git-svn-id: http://skia.googlecode.com/svn/trunk@12684 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_sandbox_none.cpp
63ba31948392a56c191607d62a2414f16253e47b 11-Dec-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@12617 2bbb7eff-a529-9590-31e7-b0007b416f81
kDiscardableMemory_ashmem.cpp
bc55eec80ef376208b3c1bfc65d8dc8b672d59f0 10-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement SkAshmemDiscardableMemory

- Implement ashmem-backed SkDiscardableMemory subclass:
This class in only accesible via the SkDiscardableMemory::Create()
function, which replaces the mock implementation in
SkDiscardableMemory_none.cpp

- Added SkDiscardableMemory_ashmem.cpp to the Android port of Skia
Removed SkDiscardableMemory_none.cpp from the Android port.

- Added DiscardableMemoryTest.
Still needs work.

- SkDiscardablePixelRef Bugfix:
onLockPixels() now calls SkDELETE on the SkDiscardableMemory pointer
when it fails to unlock.

- Improved documentation inside ashmem.h

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/83563002

git-svn-id: http://skia.googlecode.com/svn/trunk@12608 2bbb7eff-a529-9590-31e7-b0007b416f81
kDiscardableMemory_ashmem.cpp
c9a8a7e23de576ac91e9b34a221382f7c0e69813 10-Dec-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> improve bitmap font support (FreeType only)

This commit improves SkFontHost_FreeType's support for bitmap fonts,
adding a number of features:
- Intelligent bitmap strike selection.
- Inter-strike bitmap font scaling.
- Colour bitmap font support (FreeType 2.5.0+).

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/23684041

git-svn-id: http://skia.googlecode.com/svn/trunk@12607 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
45dfe6bb55828b8e819933279edc815f2fd6229a 10-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/111853003/
Reason for revert: Was not the culprit.

R=bungeman@google.com, reed@google.com
TBR=bungeman@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/102243009

git-svn-id: http://skia.googlecode.com/svn/trunk@12606 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
5f209e64057e607e260c9bb4fee02d16c5f35f98 10-Dec-2013 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "[PDF] Fix font embedding restrictions."

This reverts r12600 and r12601, likely causing crash on Mac.

Review URL: https://codereview.chromium.org/111893002

git-svn-id: http://skia.googlecode.com/svn/trunk@12604 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
7ad9368687f6132e39ea6b49065e6450e927dcb5 10-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert of https://codereview.chromium.org/109033002/
Reason for revert: I suspect this is causing GM to crash on Mac.

R=bungeman@google.com, reed@google.com
TBR=bungeman@google.com, reed@google.com
NOTREECHECKS=true
NOTRY=true

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/111853003

git-svn-id: http://skia.googlecode.com/svn/trunk@12603 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
00e00b017e7116635ef9bc119670722bf0249901 10-Dec-2013 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix missing ; in win code.

Review URL: https://codereview.chromium.org/104533005

git-svn-id: http://skia.googlecode.com/svn/trunk@12601 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
47fb2b9c67c2c4c464e8eb05e9b7877cfb1636aa 10-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Fix font embedding restrictions.

Stop using restricted font outlines and honor don't subset restriction.

R=reed@google.com, bungeman@google.com

Author: vandebo@chromium.org

Review URL: https://codereview.chromium.org/107863002

git-svn-id: http://skia.googlecode.com/svn/trunk@12600 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
e167b11fb5e74a34398172c6cb7874df9c6e0fe7 10-Dec-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Shut up the CoreText performance note.

Aped from https://codereview.qt-project.org/70097

Please keep in mind: https://www.google.com/search?q=i+have+no+idea+what+i'm+doing+dog&tbm=isch

BUG=
R=bungeman@google.com, reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/109033002

git-svn-id: http://skia.googlecode.com/svn/trunk@12599 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
aeec33448f8b2530d7fdb80efe0d8096b5fa192b 09-Dec-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix one too many levels of indirection introduced in 12573.



git-svn-id: http://skia.googlecode.com/svn/trunk@12577 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
0ff457bd5e5cf6a8b80521af0067333de288715c 09-Dec-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix threading issue in DirectWrite port initialization.

The DirectWrite port maintains a global instance of an IDWriteFactory,
which is used to create all other DirectWrite objects. However, the
initialization of this object is not currently thread safe.

R=caryclark@google.com

Review URL: https://codereview.chromium.org/107963003

git-svn-id: http://skia.googlecode.com/svn/trunk@12573 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
29d96935ae34dfcd6e403f9beefa7436e226836e 09-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkDecodingImageGenerator now uses SkStreamRewindable

This makes sense since Android will be giving us a stream and the
decoders expect a stream. This also removes some glue code,
DecodeMemoryToTarget, that works better using a SkImageGenerator.

Motivation: This is a necessary step to move from SkImageRef to
SkDiscardablePixelRef.

SkImageDecoder::DecodeMemoryToTarget function removed.

BUG=
R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/101973005

git-svn-id: http://skia.googlecode.com/svn/trunk@12560 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_empty.cpp
dbba5a4e979407c87e8d5bb7ef269ef9c39b2f74 05-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix change src/ports/SkImageDecoder_empty.cpp missed in 103033002

BUG=
R=robertphillips@google.com

Review URL: https://codereview.chromium.org/107123002

git-svn-id: http://skia.googlecode.com/svn/trunk@12519 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_empty.cpp
2c7c7ee47d75e7815ea8db05e924ab55958cb402 05-Dec-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Big Cleanup: SkBitmapFactory, SkLazyPixelRef, SkImageCache

Removed SkBitmapFactory since no clients were using it. New cache
selection mechanism can simply pass a SkDiscardableMemory::Factory
into the SkDiscardablePixelRef if non-default SkDiscardableMemory
should be used. Removed BitmapFactoryTest.

SkDiscardableMemory::Factory interface. Android will need this
functionality in the future inside their BitmapFactory.

Removed SkLazyPixelRef, since it's functionality is now subsumed into
SkDiscardablePixelRef. Removed LazyPixelRef test.

Modified SkDiscardablePixelRef to optionally allow it to use a
SkDiscardableMemory::Factory. This tiny change makes it a replacement
for SkLazyPixelRef. This functioanlity is also necessary for moving
Android over to SkDiscardablePixelRef from SkImageRef in a later CL.
Added a test for this.

SkDecodingImageGenerator::Install can optionally pass a factory in to
SkDiscardablePixelRef.

Removed SkImageCache, SkLruImageCache, and SkPurgeableImageCache.
This functionality can be handled much more cleanly by
SkDiscardableMemory.

New SkDiscardableMemoryPool class to replace SkLruImageCache. In a
later CL, we will replace SkImageRef_GlobalPool (used by android) as
well. This is a concrete implementation of
SkDiscardableMemory::Factory. Added a test for this.

modified gm/factory.cpp to remove dependnce on SkBitmapFactory +
SkLruImageCache. Now uses SkDecodingImageGenerator +
SkDiscardablePixelRef + SkDiscardableMemoryPool.

SkImageDecoder::Target replaces SkBitmapFactory::Target. The
DecodeMemoryToTarget function may disappear in the future.

Moved SkLazyCachingPixelRef::DecodeProc replaces
SkBitmapFactory::DecodeProc. This is a short term change, since
another CL changes SkLazyCachingPixelRef to use SkImageGenerator
instead of DecodeProc.

Modified DrawBitmapRectTest to use SkDiscardablePixelRef instead of
SkLazyPixelRef.

tools/LazyDecodeBitmap.cpp now uses SkDecodingImageGenerator +
SkDiscardablePixelRef instead of a SkBitmapFactory.

bench_pictures uses the Global SkDiscardableMemoryPool instead of a
global gLruImageCache.

R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/103033002

git-svn-id: http://skia.googlecode.com/svn/trunk@12515 2bbb7eff-a529-9590-31e7-b0007b416f81
kDiscardableMemory_none.cpp
0d9e3da8bb853c5ed96d13646a4264eb57b13a2a 03-Dec-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use lowercase windows.h in includes to fix Windows cross compilation using mingw.

While it doesn't matter on Windows, mingw on case-sensitive OSes uses all lower case filenames for platform include files. I found the problem in SkCondVar.h from Mozilla checkout of skia sources, but the patch contains a fix for the whole skia tree.

R=bungeman@google.com

Review URL: https://codereview.chromium.org/99173003

git-svn-id: http://skia.googlecode.com/svn/trunk@12461 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_win.cpp
4d71db85301f2d47874b43c4496c26cf21bba107 02-Dec-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Actually mark other types of fonts as 'kOther' in FreeType port.

Without this, the fType is garbage and will most likely cause an assert
or unwanted behavior later.

Review URL: https://codereview.chromium.org/99453005

git-svn-id: http://skia.googlecode.com/svn/trunk@12431 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
4b413c8bb123e42ca4b9c7bfa6bc2167283cb84c 25-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkFloatToScalar macro

BUG=
R=reed@google.com, djsollen@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/85463005

git-svn-id: http://skia.googlecode.com/svn/trunk@12385 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
d4323325ca65b9efd4a8ee3cff6c4558f8b610bf 21-Nov-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove unwanted gFTMutex from DirectWrite port.

This mutex exists because this file started life as a copy of the
FreeType port. There is no global library state to protect here,
so there is no need for the mutex.

R=caryclark@google.com

Review URL: https://codereview.chromium.org/80983003

git-svn-id: http://skia.googlecode.com/svn/trunk@12353 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
ad04eb49f5d3f324e6b85411c776d7466c1fef92 21-Nov-2013 halcanary@google.com <halcanary@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkImageGenerator Interface

- Add SkDiscardablePixelRef class that uses SkDiscardableMemory and
a SkImageGenerator.

- Add SkDecodingImageGenerator class as an example of a
SkImageGenerator.

- Add DecodingImageGenerator unit test.

- Add SkBasicDiscardableMemory implmentation for unit tests only.

R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/74793011

git-svn-id: http://skia.googlecode.com/svn/trunk@12341 2bbb7eff-a529-9590-31e7-b0007b416f81
kDiscardableMemory_none.cpp
8f53d58622bd06bfdb9d094e967e66faae2a8e22 20-Nov-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Only SkFontMgr_New_DirectWrite should call GetSystemFontCollection.

Aside from the factory helper, there should be no calls to
IDWriteFactory::GetSystemFontCollection. All other code should work in
terms of IDWriteFontCollection for flexibility and correctness.

R=caryclark@google.com

Review URL: https://codereview.chromium.org/77023006

git-svn-id: http://skia.googlecode.com/svn/trunk@12331 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
14e97bb1ef42971eb1e196540ef200d76b8fe3db 18-Nov-2013 Derek Sollenberger <djsollen@google.com> Merge Skia r12108 into android

Conflicts:
include/pdf/SkPDFDevice.h
include/utils/SkCanvasStateUtils.h
include/utils/SkFrontBufferedStream.h
src/core/SkDevice.cpp
src/core/SkDeviceLooper.cpp
src/core/SkDeviceLooper.h
src/doc/SkDocument_PDF.cpp
src/gpu/GrAAHairLinePathRenderer.cpp
src/gpu/GrAAHairLinePathRenderer.h
src/gpu/GrTextContext.cpp
src/images/SkImageDecoder_libpng.cpp
src/images/SkScaledBitmapSampler.cpp
src/images/SkScaledBitmapSampler.h
src/pdf/SkPDFDevice.cpp
src/pdf/SkPDFDeviceFlattener.cpp
src/ports/SkFontConfigInterface_android.cpp
src/ports/SkFontHost_FreeType.cpp
src/utils/SkCanvasStack.h
src/utils/SkCanvasStateUtils.cpp
src/utils/SkDeferredCanvas.cpp
src/utils/SkFrontBufferedStream.cpp
tests/CanvasStateTest.cpp

Change-Id: Ia38ee21ae98fd5455c551becd7e1884c334f5df1
f7159bba8efc13f6b3a9a86e92b48451b6aa8073 20-Nov-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> De-generalize create_typeface on Windows.

The gdi and dw backends have a local create_typeface function.
This function is now called in only one place, onLegacyCreateTypeface.
Move the implementation into the caller.

R=caryclark@google.com

Review URL: https://codereview.chromium.org/76763002

git-svn-id: http://skia.googlecode.com/svn/trunk@12313 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
e61a86cfa00ea393ecc4a71fca94e1d476a37ecc 18-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Guard against most unintentionally ephemeral SkAutoFoo instantiations.

I think I applied the trick everywhere possible. Limitations:
- can't be used with templated classes
- all constructors and destructors must be defined inline

A couple of the SkAutoFoo were unused in Skia, Chromium, and Android, so I
deleted them. This change caught the same bugs Cary found in SkPath, plus one
more in SampleApp.

BUG=
R=reed@google.com, caryclark@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/72603005

git-svn-id: http://skia.googlecode.com/svn/trunk@12301 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
0a657bbc2c6fc9daf699942e023050536d5ec95f 13-Nov-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@12108

Change-Id: Ia710b27d97e938df06014b7b61a3767bd3be1eb5
kDebug_android.cpp
kDebug_win.cpp
kDiscardableMemory_none.cpp
kFontConfigInterface_android.cpp
kFontConfigInterface_direct.cpp
kFontConfigParser_android.cpp
kFontConfigTypeface.h
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_fontconfig.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kFontMgr_default_dw.cpp
kFontMgr_default_gdi.cpp
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageDecoder_empty.cpp
kMemory_malloc.cpp
kMemory_mozalloc.cpp
451b5962c906be9517cc99b80deecf525e85ee89 11-Nov-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Android FontHost cannot use FontMgr yet.


git-svn-id: http://skia.googlecode.com/svn/trunk@12221 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
kFontHost_fontconfig.cpp
e0f04689c8ae098a5244a17bc9b364fb5003f797 11-Nov-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Give Android a SkFontMgr::Factory which was missing as of r12217.


git-svn-id: http://skia.googlecode.com/svn/trunk@12220 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
b3d154de5e4c318f88e4c4ad15fe626054365997 11-Nov-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SK_FONTHOST_USES_FONTMGR.

Review URL: https://codereview.chromium.org/66783003

git-svn-id: http://skia.googlecode.com/svn/trunk@12217 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigTypeface.h
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
8f457e3230f1a4ce737f512ffbb5c919b8d02407 08-Nov-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding error checks to SkRBuffer

BUG=
R=robertphillips@google.com, bsalomon@google.com, reed@google.com

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/61913002

git-svn-id: http://skia.googlecode.com/svn/trunk@12202 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
2bd8b8100529c96c81c30f749f672f4caf775b04 01-Nov-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move SkImage::ColorType into SkColorType

objective -- move clients over to SkImage

tasks
- use SkImageInfo instead of SkBitmap::Config
- add support for colortables to SkImage
- add drawImage to SkCanvas
- return SkImage from readPixels

This CL works towards the first task

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/54363008

git-svn-id: http://skia.googlecode.com/svn/trunk@12077 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_empty.cpp
4469938e92d779dff05e745559e67907bbf21e78 31-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Revert "add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning""

This reverts commit 1e787c38fa71f2a21fd728f1b1d620b9b09b0d3d.

BUG=

Review URL: https://codereview.chromium.org/54603004

git-svn-id: http://skia.googlecode.com/svn/trunk@12057 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
6fcbfcead5dc1b61fa5b4c139a1a3714e8c58091 31-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning"

This reverts commit 1d22c4aaf9d8f053f25194a1ed74b137bfb19497.

git-svn-id: http://skia.googlecode.com/svn/trunk@12056 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
081560e3abe25c4821b79ca1465f4dbd371c4b5c 31-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SK_ATTR_DEPRECATED -- will need to disable for chrome, since it triggers a warning

BUG=
R=robertphillips@google.com, senorblanco@chromium.org, vandebo@chromium.org

Review URL: https://codereview.chromium.org/51033004

git-svn-id: http://skia.googlecode.com/svn/trunk@12055 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
35fe7372b1b897a77578a220c334e1fb36d144e9 30-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> prototype for kerning api

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/29363009

git-svn-id: http://skia.googlecode.com/svn/trunk@12018 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
0673efeea2be3b6b6198ddbac7217d7ab30fe59c 26-Oct-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@11969 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
72b8cb2320dddc6e006a2857746014e607e9e151 25-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> onCharsToGlyphs to handle non-bmp on Mac.

CTFontGetGlyphsForCharacters is a strange API for non-bmp code points.

R=caryclark@google.com

Review URL: https://codereview.chromium.org/43463005

git-svn-id: http://skia.googlecode.com/svn/trunk@11965 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
fb1663a0a57656328277d02bef088d3afb695a7c 25-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix non-bmp in generateCharToGlyph on Mac.

git-svn-id: http://skia.googlecode.com/svn/trunk@11957 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
172c363a68da7b46562fa9c6c8f15f3a7ffce5a1 24-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add missing braces for r11955.

git-svn-id: http://skia.googlecode.com/svn/trunk@11956 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
3c996f8a15e5d8fada9550d978e9b5344b81d276 24-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement charToGlyph on remaining ports.

R=reed@google.com

Review URL: https://codereview.chromium.org/22859070

git-svn-id: http://skia.googlecode.com/svn/trunk@11955 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
c0b7e10c6a68f59e1653e6c18e6bc954b3c3f0cf 23-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Initial error handling code

I made it as simple as possible. The impact seems minimal and it should do what's necessary to make this code secure.

BUG=

Committed: http://code.google.com/p/skia/source/detail?r=11247

R=reed@google.com, scroggo@google.com, djsollen@google.com, sugoi@google.com, bsalomon@google.com, mtklein@google.com, senorblanco@google.com, senorblanco@chromium.org

Author: sugoi@chromium.org

Review URL: https://codereview.chromium.org/23021015

git-svn-id: http://skia.googlecode.com/svn/trunk@11922 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
e7e29b7815e97e9c4db55fa9dac48b419352b2c6 21-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> scope ComputeIsOpaque with SkBitmap

BUG=

Review URL: https://codereview.chromium.org/32653002

git-svn-id: http://skia.googlecode.com/svn/trunk@11879 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
383a697692cf46951fd451f6f4c3d03634a6a1cb 21-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> store SkAlphaType inside SkBitmap, on road to support unpremul

BUG=
R=bsalomon@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/25275004

git-svn-id: http://skia.googlecode.com/svn/trunk@11877 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
e0e1da34f3c00ec93c61643d4cf4eea6d27c5fef 15-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkColorTable from SkFlattenable hierarchy.

BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/27392002

git-svn-id: http://skia.googlecode.com/svn/trunk@11791 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
b8aa4ddb2d8b2542b3fa4df28888bcd0fee51bd4 15-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix off by one error in last advanceCount in SkFontHost_FreeType.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/27338003

git-svn-id: http://skia.googlecode.com/svn/trunk@11781 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
8b169311b59ab84e8ca6f3630a1e960cc1be751e 15-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Second wave of Win64 warning cleanup

https://codereview.chromium.org/27343002/



git-svn-id: http://skia.googlecode.com/svn/trunk@11778 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kImageDecoder_WIC.cpp
adacc7067ad617cdc7bbef39192ca80f4b4d27f9 14-Oct-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Start cleaning up 64bit Win warnings

https://codereview.chromium.org/27192003/



git-svn-id: http://skia.googlecode.com/svn/trunk@11764 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
0cd2ac6c721120a2628524dad91798aa3e7ec41d 14-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change SkAnnotation to not inherit from SkFlattenable (does not need dynamic factories)

BUG=
R=scroggo@google.com

Review URL: https://codereview.chromium.org/26606004

git-svn-id: http://skia.googlecode.com/svn/trunk@11762 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
4979f32cd3fd29db5f23712f0aea3cf01a5c695d 14-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkDataSet, and just store a key/value in SkAnnotation

BUG=
R=mtklein@google.com

Review URL: https://codereview.chromium.org/27208002

git-svn-id: http://skia.googlecode.com/svn/trunk@11759 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
da30055b296faa5a100e474e0406ef4296c14241 14-Oct-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkData need not be a Flattenable, since it does not need subclass/factories

BUG=
R=mtklein@google.com

Review URL: https://codereview.chromium.org/26928002

git-svn-id: http://skia.googlecode.com/svn/trunk@11754 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
1108fc3058e64a9363f7ea4ef41e2b04ca51f539 14-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkLumaXfermode.

Possibly the shortest-lived Skia feature, SkLumaXfermode is now replaced
by a color filter implementation (SkLumaColorFilter). All known existing
clients (Blink) have been converted.

R=reed@google.com

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/26916002

git-svn-id: http://skia.googlecode.com/svn/trunk@11750 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
7a4d6a99e99d8be9763fe9f00dca80a67f4ebcef 14-Oct-2013 Derek Sollenberger <djsollen@google.com> Merge skia changes from the skia chrome/m30_1599 branch.

This captures revisions r11503 to r11657 (inclusive). This range appears
large, but covers a span of just 3 commits one of which has already been
cherry-picked into this repository.

bug: 10285384

Change-Id: I614888fe1b65f31a713a689ccb3a9db6265b60e8
kFontHost_fontconfig.cpp
18252fe1269720bac0d98590da5a85aa04a5fbd2 11-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add stdio include to SkFonrConfigParser_android.


git-svn-id: http://skia.googlecode.com/svn/trunk@11745 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigParser_android.cpp
85302969fcf0860d451b0748da372571b2fc9f88 11-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Try to work around VS2010 intsafe/stdint multiple define issues.


git-svn-id: http://skia.googlecode.com/svn/trunk@11744 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
72e8324f0edca547c72e7e1fc548e9f72b612eb2 11-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add stdio include to SkDebug_android.


git-svn-id: http://skia.googlecode.com/svn/trunk@11743 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_android.cpp
aadb4d9a53d406b4bf40089a10ef94302d21b6bb 09-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> flush after every print in windows

R=djsollen@google.com, reed@google.com, epoger@google.com

Author: bsalomon@google.com

Review URL: https://codereview.chromium.org/26680004

git-svn-id: http://skia.googlecode.com/svn/trunk@11670 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_win.cpp
27f74aab32123e6f021359061149966fa4ca5a62 08-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Improve SkScalerContext_GDI::generateCharToGlyph for non-BMP code points.

Sometimes, when ScriptShape is presented with a surrogate pair which does
not map to a glyph, it returns two space glyphs instead of .notdef (0).
Detect this class of issues and handle appropriately.



git-svn-id: http://skia.googlecode.com/svn/trunk@11660 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
48903b9403bdf0fb94fa46133819e8823c948d4d 08-Oct-2013 Derek Sollenberger <djsollen@google.com> Fix ambiguity in API if no matching system language is found

cherry-pick of http://code.google.com/p/skia/source/detail?r=11641

bug: 11093744
Change-Id: I2efa84c612e5a790a61707eae7e078a3b8215e2e
kFontConfigInterface_android.cpp
c0445fec1983465a2c985a2c88e796678585d68a 07-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix ambiguity in API if no matching system language is found

R=reed@google.com, wangxianzhu@chromium.org

Author: djsollen@google.com

Review URL: https://codereview.chromium.org/26325003

git-svn-id: http://skia.googlecode.com/svn/trunk@11641 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
6c1ee2d4e727357451c8a6fcf4a08e75890b5d6d 07-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Luminance-to-alpha color filter (SkLumaColorFilter).

Adding a color filter luma implementation. The plan is to convert
existing clients and then deprecate SkLumaXfermode.

R=bsalomon@google.com, reed@google.com, robertphillips@google.com

Author: fmalita@chromium.org

Review URL: https://codereview.chromium.org/25453004

git-svn-id: http://skia.googlecode.com/svn/trunk@11636 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
dd6cde5235d5d36607f4f1df66057d807b432b99 07-Oct-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> style nit for myself retroactively: throwOnFailure -> throw_on_failure

BUG=
R=reed@google.com

Author: mtklein@google.com

Review URL: https://codereview.chromium.org/26298002

git-svn-id: http://skia.googlecode.com/svn/trunk@11635 2bbb7eff-a529-9590-31e7-b0007b416f81
kMemory_malloc.cpp
86dd752bd5c42352b7acb05551070da8d609c563 04-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Mutex protect SkFontMgr_DirectWrite cache.

SkFontMgr_DirectWrite is constant, except for its typeface cache.
Protect this cache in the face of multiple threads.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/26023002

git-svn-id: http://skia.googlecode.com/svn/trunk@11615 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
11ba3199f3edc7883ada4fd941d231f8f4883720 03-Oct-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Snap GDI matrix when snapping height.

When using GDI to render, ensure that the GDI matrix does not attempt to
add subpixel height. This ensures that rotated text is always the same
height as axis aligned text and prevents subpixel drift metrics when they
are unwanted.

R=reed@google.com

Review URL: https://codereview.chromium.org/25739002

git-svn-id: http://skia.googlecode.com/svn/trunk@11592 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
513af62d52c452d29583433d6e1c3d825b4d6004 03-Oct-2013 Derek Sollenberger <djsollen@google.com> Update PDF backend to support fallback fonts on Android.

Cherry-pick of https://code.google.com/p/skia/source/detail?r=11586

bug: 11001915
Change-Id: Id7e09ac0f9169601a0706266f0b4e39ad45b5e8b
kFontConfigInterface_android.cpp
5df5e6126d43f65d47092d682e7a7dd64a77ace3 03-Oct-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update PDF backend to support fallback fonts on Android.

R=edisonn@google.com, reed@google.com, vandebo@chromium.org

Review URL: https://codereview.chromium.org/24364008

git-svn-id: http://skia.googlecode.com/svn/trunk@11586 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
e5c9c4960cbbb7aa26ba906439ed620d55879dad 01-Oct-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Empty implementations for SkImageDecoder.

Add constructor and destructor, so SkScaledBitmapSampler's
DummyDecoder has no unresolved symbols in Chrome.

Fixes our Chrome canary.

Unreviewed.

Review URL: https://codereview.chromium.org/25536004

git-svn-id: http://skia.googlecode.com/svn/trunk@11566 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_empty.cpp
ed84b46ddad574fe0d1c3e61bca2c33f638c9303 30-Sep-2013 Derek Sollenberger <djsollen@google.com> Add new entry point that supports fallback font selection based on language.

Cherry-pick of https://code.google.com/p/skia/source/detail?r=11394

bug: 10653841
Change-Id: If50522fae5a8b749dbf97db8eca8c518cd710ebf
kFontConfigInterface_android.cpp
0ac74b2c0d0f740bdf1c0dcba2bef77bc33f77e9 26-Sep-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added SkTileImageFilter to SkFlattenable::InitializeFlattenables()

BUG=
R=bsalomon@google.com

Review URL: https://codereview.chromium.org/24764003

git-svn-id: http://skia.googlecode.com/svn/trunk@11477 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
b5571b3324cf18629a255ec85e189447069c9b14 25-Sep-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change SkImageDecoders to take an SkStreamRewindable.

Only affects factories, static functions that will use the factories,
and subset decoding, which all require rewinding. The decoders
themselves continue to take an SkStream. This is merely documentation
stating which functions will possibly rewind the passed in SkStream.

This is part of the general change to coordinate SkStreams with
Android's streams, which don't necessarily support rewinding in all
cases.

Update callers to use SkStreamRewindable.

BUG=skia:1572
R=bungeman@google.com, reed@google.com

Review URL: https://codereview.chromium.org/23477009

git-svn-id: http://skia.googlecode.com/svn/trunk@11460 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageDecoder_empty.cpp
39a7c7035b2978e2483cca67c2a9f8b201fb5fbb 24-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use different unique identifier for a fallback family.

BUG=chromium:266412
R=mtklein@google.com, reed@google.com

Review URL: https://codereview.chromium.org/24288002

git-svn-id: http://skia.googlecode.com/svn/trunk@11451 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
c526c71acdb7c8d1af7bf284954bfcd768111405 20-Sep-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Map Calibri to Carlito

Chrome OS will have Carlito as a metric-compatible replacement for Calibri.

This change has to be combined with a Chrome OS change to add
Calibri and configure fontconfig accordingly.

BUG=280557
TEST=With the CrOS change, a page using Calibri will use Carlito instead of the default fallback font (Arimo in case of English UI).
R=bungeman@google.com

Review URL: https://codereview.chromium.org/23618061

git-svn-id: http://skia.googlecode.com/svn/trunk@11418 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
dd88eccb22bd2cafcf0c0facf674a8aaaacca7fe 20-Sep-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix slight hinting with GDI.

Sometimes GDI manages to return a different number of points for hinted
and non-hinted outlines. This change handles that case and falls back
to non-hinted. This does not re-enable slight hinting, so there should be
no observable difference in tests. There are still issues with 'D' in
some font/size combinations where 'flips' are used.


git-svn-id: http://skia.googlecode.com/svn/trunk@11417 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
519f9677a41239808f41a7c13ef1f6e05eb1ed50 20-Sep-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add sk_calloc. Remove SkMemory_stdlib, which seems unused.

I'm seeing basically no difference between malloc + bzero and calloc on my desktop, but on a Galaxy Nexus calloc is never slower, and significantly faster once the allocation size becomes large, both for allocation and for _reading_.

BUG=skia:1662
R=reed@google.com

Review URL: https://codereview.chromium.org/24251008

git-svn-id: http://skia.googlecode.com/svn/trunk@11414 2bbb7eff-a529-9590-31e7-b0007b416f81
kMemory_malloc.cpp
kMemory_mozalloc.cpp
9902c38f4802aad589177c069f792eeeabb1a29b 19-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add new entry point that supports fallback font selection based on language.

BUG= chromium:287995
R=reed@google.com, wangxianzhu@chromium.org

Review URL: https://codereview.chromium.org/23819067

git-svn-id: http://skia.googlecode.com/svn/trunk@11394 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
ddacd158de59377ad0c52c8ab92ae65c2d60e014 19-Sep-2013 Derek Sollenberger <djsollen@google.com> Merge "Update Skia's FontHost to return NULL if familyName does not match" into klp-dev
1f584ed3f43037e85bae3019d48e793ae28ebbd5 19-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update Android's FontHost to return NULL if familyName does not match

R=scroggo@google.com, wangxianzhu@chromium.org

Review URL: https://codereview.chromium.org/23601041

git-svn-id: http://skia.googlecode.com/svn/trunk@11377 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
d44d988127841cf9180bb7ba91b6eba8127af467 18-Sep-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix fontconfig backend to only cache new fonts if their outName was unique

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/23710072

git-svn-id: http://skia.googlecode.com/svn/trunk@11364 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
4606a93f2ca1221b95590b807f256101667d5cf1 18-Sep-2013 Derek Sollenberger <djsollen@google.com> Update Skia's FontHost to return NULL if familyName does not match

This will require changes to the framework and WebView.

bug: 10730965
Change-Id: Ie8585184bf6afe59ae1513f90329ba0fd4bb4f6c
kFontConfigInterface_android.cpp
286a8830f5df5da9036f5125c7ecee6199f0e6a2 18-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> cleanup XML_Parser after reading android config files.

This CL is based on one submitted for AOSP review...
Fix memory leak in parseConfigFile()
Need to call XML_ParserFree() on parsers created by XML_ParserCreate()
Signed-off-by: Carton He <carton.he@marvell.com>
https://android-review.googlesource.com/#/c/65690/1

R=mtklein@google.com

Review URL: https://codereview.chromium.org/24171003

git-svn-id: http://skia.googlecode.com/svn/trunk@11357 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigParser_android.cpp
7ade6546760e3584937a950474d11df894023ac1 18-Sep-2013 Victoria Lease <violets@google.com> filter scaled bitmap font glyphs

Bug: 10791813
Change-Id: Ia2e06dc14793f97914c3fd3d437231def8e3ebd1
kFontHost_FreeType_common.cpp
ef45a646a730b779f419e8ea11df374adeec8206 17-Sep-2013 fmalita@google.com <fmalita@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> [External patch] Source-over support for SkLumaXfermode.

This is a patch by Andrei Parvu <parvu@adobe.com> (Adobe CLA signer).

Original CL/review: https://codereview.chromium.org/24078006/

GM:lumamode will need rebaselining after landing this.

---

In order to use CSS luminance masking, we need to be able to create an
instance of SkLumaXfermode which can receive a kSrcOver mode, and applies
that mode after converting the source using the luminance-to-alpha
coefficients.

BUG=289420
R=reed@google.com

Review URL: https://codereview.chromium.org/23710053

git-svn-id: http://skia.googlecode.com/svn/trunk@11312 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
e878e79a992684867a12804ed996c3b4cc3c5644 17-Sep-2013 Victoria Lease <violets@google.com> Merge "match original skia metrics for scalables" into klp-dev
c7315136491b02ebc2461de9484b45192c420456 13-Sep-2013 Victoria Lease <violets@google.com> match original skia metrics for scalables

Bug: 10310267
Change-Id: If4ba6e07fcd3b8819d03f230adc705f15b974404
kFontHost_FreeType.cpp
50dcd4acbfae09a9b5609f062da92b445b8592d4 16-Sep-2013 Raph Levien <raph@google.com> Fix for ANR in getTextRunAdvances

This is a fix for bug 10769257.

In the case where origFontID is also the first font in the fallback
list, the nextLogicalTypeface function was picking the first font in the
fallback list, which was causing looping. Simply allowing it to advance
to the next typeface fixes the ANR.

Change-Id: Icc1389af46aff7f6b9c96cc0e8c8e9ae74039554
kFontConfigInterface_android.cpp
12ede7554e460b8d18c43435a63a17fd8d33ceb3 11-Sep-2013 Victoria Lease <violets@google.com> Merge "Scale bitmap glyphs to requested size (FreeType only)" into klp-dev
52f1e2bbad4c5b0c778c9563508866142ef7cfd8 10-Sep-2013 Derek Sollenberger <djsollen@google.com> Update the freetype backed fonthost to keep the style and fixed width attributes for a font stream.

This fixes a regression in Android when switching from FontHost_android

This fix is a cherry-pick of https://code.google.com/p/skia/source/detail?r=11134

bug: 10555832
Change-Id: I45d860766ef6101dbd04f1e5b88f99ae2d8fc892
kFontConfigTypeface.h
kFontHost_fontconfig.cpp
924ac31ce033167b1d7b4e3ddbb640e706c64ccc 26-Aug-2013 Victoria Lease <violets@google.com> Scale bitmap glyphs to requested size (FreeType only)

In addition to selecting a bitmap strike appropriate for the
requested font size, we must also scale the chosen bitmap strike
to match the requested font size, as it will almost always not be
the actual size requested. This commit does so, and adjusts per-glyph
metrics accordingly.

Bug: 10260891
Change-Id: Ib9ebed250df32dec97e72419f7b612b996443516
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
53cbb0baac09e60e7633c15301a29a83afb1a8de 08-Sep-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Return canonical logfont size to 64.

This is to fix crbug/277301. With skia:r9057 the canonical logfont size
was set to 2048 in an attempt to get better font metrics. The font size
is now being handled in a cleaner way, so this motivation no longer
exists. However, when the logfont size is large GDI will substitute a
vector font for a bitmap font. This results in incorrect results for
bitmap fonts as they are no longer properly detected by the typeface.


git-svn-id: http://skia.googlecode.com/svn/trunk@11145 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
6d2fef9834531ea0e400b6d57a9619f77ca1962b 06-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update the freetype backed fonthost to keep the style and fixed width attributes for a font stream.

This fixes a regression in Android when switching from FontHost_android

R=reed@google.com

Review URL: https://codereview.chromium.org/23966003

git-svn-id: http://skia.googlecode.com/svn/trunk@11134 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigTypeface.h
kFontHost_fontconfig.cpp
b27eba7c28c7a52e6af91743ab51c266ed96dccd 06-Sep-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix regression in fallback chain where we don't account for the original font style.

This CL also enforces that the language and variant are the same for all fonts
within a given fallback family.

R=reed@google.com

Review URL: https://codereview.chromium.org/23670009

git-svn-id: http://skia.googlecode.com/svn/trunk@11128 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
cf292b7b32732330f7e0a55e6dd323426e466f80 05-Sep-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Added a missing filter in SkFlattenable::InitializeFlattenables().

BUG=
R=reed@google.com, scroggo@google.com, djsollen@google.com, mtklein@google.com

Author: sugoi@chromium.org

Review URL: https://chromiumcodereview.appspot.com/23444005

git-svn-id: http://skia.googlecode.com/svn/trunk@11110 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
7765d883b938e7887090f18d5b82c9caac78dace 04-Sep-2013 Derek Sollenberger <djsollen@google.com> fix regression in fallback chain where we don't account for the original font style.

This CL also enforces that the language and variant are the same for all fonts
within a given fallback family.

bug:10529543
Change-Id: I0b5b3190fc5b36ccc706169915bcb36df874e6a9
kFontConfigInterface_android.cpp
bd6343b1d60d2a85e930f33f4b06b4502b3e8caa 04-Sep-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rewrite SkTRegistry to take any trivially-copyable type.

Obviously these are all currently function pointers of type T(*)(P) for various
T and P. In bench refactoring, I'm trying to register a function pointer of
type T(*)(), which can't be done as is (passing P=void doesn't work). This
also lets us register things like primitives, which is conceivable useful.

BUG=
R=reed@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/23453031

git-svn-id: http://skia.googlecode.com/svn/trunk@11082 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
bd353162926d4e7adf5b4345552be4bf62f5397a 04-Sep-2013 Derek Sollenberger <djsollen@google.com> Merge skia changes from the skia chrome/m30_1599 branch.

This captures revisions r10947 to r11077 (inclusive). However, some
PDF changes have already been cherry-picked so they will not show
up in this CL.

bug: 10285384
Change-Id: I5648963a4f2c4f36cdfbf316052176264cf643a6
kFontConfigInterface_android.cpp
kFontConfigParser_android.cpp
d1bcfc9a1938b051e5948b059a8259cd37fb8229 28-Aug-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> export SkFontMgr_New_... experimental functions for testing in chrome

BUG=
R=eae@chromium.org

Review URL: https://codereview.chromium.org/23555004

git-svn-id: http://skia.googlecode.com/svn/trunk@10991 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
kFontMgr_default_dw.cpp
kFontMgr_default_gdi.cpp
1a2e71d9a84238f49844ac8020b7bd8a6ede60ce 28-Aug-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Don't require getLength on Mac.

For consistency with our other image decoders, do not depend on getLength
in Mac specific decoder.

BUG=skia:1570
R=djsollen@google.com

Review URL: https://codereview.chromium.org/23004008

git-svn-id: http://skia.googlecode.com/svn/trunk@10990 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
50c956791291e7f3cec23721157570b7911336b8 28-Aug-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix issue on devices running an OS prior to 4.2 when the fallback font file was potential stored in a different location on device.

BUG=chromium:183830
R=scroggo@google.com

Review URL: https://codereview.chromium.org/23621002

git-svn-id: http://skia.googlecode.com/svn/trunk@10972 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigParser_android.cpp
7bd141dce43ea3405bc60c9c84e6f910b851b079 28-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10968 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
7687578d3a42b528f536c2f3437104fac04c4ae4 28-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for 10963: Use mx instead of my where mx is wanted.

git-svn-id: http://skia.googlecode.com/svn/trunk@10966 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
e1b9bad0711e557e45fee109fb492d19e35e1d38 27-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Clear unknown DirectWrite font metrics.



git-svn-id: http://skia.googlecode.com/svn/trunk@10963 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
33346487cbb64134d7204abe32d9318c1b511aa8 27-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix _GDI::generateCharToGlyph to properly handle missing glyphs.


git-svn-id: http://skia.googlecode.com/svn/trunk@10945 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
92e3f08c916cf8febb07d120afc63b8c33df1389 27-Aug-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix issue when the family name is reused among multiple families.

BUG=chromium:274117
R=reed@google.com

Review URL: https://codereview.chromium.org/23592002

git-svn-id: http://skia.googlecode.com/svn/trunk@10942 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
eaa77979908d1b9fff00b73d02c4576901448933 23-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add luminance mask transfer modes.

This adds kSrcInLum_Mode and kDstInLum_Mode, to support CSS and SVG luminance masks (http://www.w3.org/TR/css-masking/#MaskValues , http://www.w3.org/TR/SVG/masking.html#Masking ).

The transfer coefficient is computed according to http://www.w3.org/TR/2011/REC-SVG11-20110816/filters.html#feColorMatrixElement "luminance-to-alpha":

luma = 0.2125 * r + 0.7154 * g + 0.0721 * b


R=bsalomon@google.com, reed@google.com, robertphillips@google.com, vandebo@chromium.org

Author: fmalita@chromium.org

Review URL: https://chromiumcodereview.appspot.com/22918012

git-svn-id: http://skia.googlecode.com/svn/trunk@10887 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
42a7829543115eafb5cf29499ba84a42d016a0cb 22-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Better error reporting when dynamic loading fails with DirectWrite.


git-svn-id: http://skia.googlecode.com/svn/trunk@10869 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
bfc6cc4b6c41e99d3887d268fbf798aa3abc9a27 21-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> allow both GDI and DW fontmgrs at the same time

BUG=
R=bungeman@google.com

Committed: https://code.google.com/p/skia/source/detail?r=10718

Committed: https://code.google.com/p/skia/source/detail?r=10788

Review URL: https://codereview.chromium.org/23058002

git-svn-id: http://skia.googlecode.com/svn/trunk@10851 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
kFontMgr_default_dw.cpp
kFontMgr_default_gdi.cpp
af9296e1e96a6ccec9630da769ef5e19456e369a 21-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update DirectWrite code so that it is loadable on XP.

This change delay loads GetUserDefaultLocaleName since it is available
in Vista+.

R=reed@google.com

Review URL: https://codereview.chromium.org/23380002

git-svn-id: http://skia.googlecode.com/svn/trunk@10847 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
bcb88e51cdd3217dc74c4888da952840a620ef54 20-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r10788 (allow both GDI and DW fontmgrs at the same time) due to Chromium XP bot failures



git-svn-id: http://skia.googlecode.com/svn/trunk@10813 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
kFontMgr_default_dw.cpp
kFontMgr_default_gdi.cpp
8b71ef16ece9ec7f1250f2dc093d9a2282f4c2cc 19-Aug-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> skia: Added SkDiscardableMemory interface.

Chrome's implementation of SkDiscardableMemory is provided here:
https://codereview.chromium.org/23206002. SkDiscardableMemory is
intended to be used for image caching.

R=reed@google.com, scroggo@google.com, hclam@chromium.org, jamesr@chromium.org
BUG=229120

Author=ernstm@chromium.org

Submitted on behalf of ernstm@chromium.org due to commit queue bug.

Review URL: https://codereview.chromium.org/22950012

git-svn-id: http://skia.googlecode.com/svn/trunk@10797 2bbb7eff-a529-9590-31e7-b0007b416f81
kDiscardableMemory_none.cpp
7475811143e190e172bf83d13c4bdba85704b604 17-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10790 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
069975678aaca6dc767e9fef3d743694443223f1 16-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> allow both GDI and DW fontmgrs at the same time

BUG=
R=bungeman@google.com

Committed: https://code.google.com/p/skia/source/detail?r=10718

Review URL: https://codereview.chromium.org/23058002

git-svn-id: http://skia.googlecode.com/svn/trunk@10788 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
kFontMgr_default_dw.cpp
kFontMgr_default_gdi.cpp
968863f81873091b4c0fd435eea9c4e16d9606fe 16-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r10718 to unblock roll



git-svn-id: http://skia.googlecode.com/svn/trunk@10759 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
kFontMgr_default_dw.cpp
kFontMgr_default_gdi.cpp
2822c9a92b9a6a1308f2106b7c364ae7e8473ab1 15-Aug-2013 mtklein@google.com <mtklein@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Nobody defines SK_SUPPORT_HINTING_SCALE_FACTOR any more, so remove it.

I left the dummy value in the flattened paint. I'm hoping to do an overhaul of
the paint serialization format which will need a picture version bump anyway,
so it can all go together. If that doesn't pan out we can remove this on its
own later.

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/23056005

git-svn-id: http://skia.googlecode.com/svn/trunk@10757 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
936be472b52619e8c3cd9e17f528d8758cde5e26 15-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10727 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
7d65dee1892615f76a40604691b026eb00dc2d11 14-Aug-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> allow both GDI and DW fontmgrs at the same time

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/23058002

git-svn-id: http://skia.googlecode.com/svn/trunk@10718 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
kFontMgr_default_dw.cpp
kFontMgr_default_gdi.cpp
1c38bb9ea8c4c8f5227c3e25e86faddfbf824524 14-Aug-2013 Leon Scroggins III <scroggo@google.com> Merge Skia r10680 into Android.

Conflicts:
include/core/SkUserConfig.h
src/images/SkImageDecoder_libjpeg.cpp

Change-Id: I40e031f0abcd0d1e064b25f071bfc5f1b3c55e91
e27eefc4844477cee5d32f51ab45ff62020cdb36 13-Aug-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@10680

Change-Id: I846e489575859eff43302c698606953c58420671
kFontConfigInterface_android.cpp
kFontConfigTypeface.h
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kGlobalInitialization_default.cpp
a8b20d610c619942480896ca59a58192edb626de 13-Aug-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove uncalled local functions

BUG=

Review URL: https://codereview.chromium.org/22924004

git-svn-id: http://skia.googlecode.com/svn/trunk@10688 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
61d82695c8f95e674949a6a1b1cb8352615b5816 05-Aug-2013 Victoria Lease <violets@google.com> provide metrics for bitmap fonts

This also refactors how metrics are generated for outline fonts, in
an attempt to keep the metrics code as common/universal as possible.

Bug: 9577689
Change-Id: I845a3af111314d8983e5de919343aeceb7609489
kFontHost_FreeType.cpp
f44fcdca01722959c3be335f44e88b59dbb33a10 07-Aug-2013 junov@chromium.org <junov@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstreaming DropShadowImageFilter into skia, from Blink

GM imagefiltersbase will need rebaselining after this change

R=senorblanco@chromium.org

Committed: https://code.google.com/p/skia/source/detail?r=10583

Review URL: https://codereview.chromium.org/22258005

git-svn-id: http://skia.googlecode.com/svn/trunk@10626 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
839702b61934914118ec557dd641be322eba3b5f 07-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add getFamilyNames to SkTypeface.

Committed: https://code.google.com/p/skia/source/detail?r=10589

Committed: https://code.google.com/p/skia/source/detail?r=10592

Committed: https://code.google.com/p/skia/source/detail?r=10608

Review URL: https://codereview.chromium.org/21716005

git-svn-id: http://skia.googlecode.com/svn/trunk@10615 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
f7af91bd79daf7e090bd6ae1d080ad7a4964e477 07-Aug-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r10608 (Add getFamilyNames to SkTypeface) due to compilation failures



git-svn-id: http://skia.googlecode.com/svn/trunk@10609 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
246b1c266f2b0111aa58016829cf17de82614803 07-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add getFamilyNames to SkTypeface.

Committed: https://code.google.com/p/skia/source/detail?r=10589

Committed: https://code.google.com/p/skia/source/detail?r=10592

Review URL: https://codereview.chromium.org/21716005

git-svn-id: http://skia.googlecode.com/svn/trunk@10608 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
a980269c2498836101146adc729ef780fb89824e 07-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add getFamilyNames to SkTypeface.

Committed: https://code.google.com/p/skia/source/detail?r=10589

Review URL: https://codereview.chromium.org/21716005

git-svn-id: http://skia.googlecode.com/svn/trunk@10592 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
1c4c9ef43747b42d2c31b5f17fe5e054fb3fee64 07-Aug-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Move SkComposeImageFilter into its own {.h, .cpp} files

In http://crrev.com/21154002, SkComposeImageFilter will be used
outside of tests. Consequently, this moves SkComposeImageFilter from
SkTestImageFilters.{h, cpp} into its own {.h, .cpp} files.

BUG=181613
R=senorblanco@chromium.org

Author: ajuma@chromium.org

Review URL: https://chromiumcodereview.appspot.com/22438003

git-svn-id: http://skia.googlecode.com/svn/trunk@10591 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
7ca6d2f0709d844f6afc601738b9453b3543d38b 07-Aug-2013 jvanverth@google.com <jvanverth@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r10589: Add getFamilyNames to SkTypeface


git-svn-id: http://skia.googlecode.com/svn/trunk@10590 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
77f2fa8fcc61b0e4b25234722e134ff3fe4a7a21 13-Jul-2013 Victoria Lease <violets@google.com> enable FT_LOAD_COLOR and FT_PIXEL_MODE_BGRA

This commit provides colour bitmap font support via FreeType's new
FT_LOAD_COLOR and FT_PIXEL_MODE_BGRA flags. Some minor bitmap format
conversion was needed, as SkMask does not have a BGRA format.

Bug: 9577689
Change-Id: Ifb0a031c5ab52543b1e53fa778945d20953d1a33
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
4de1ff7b9253c28a5236b66193892f0bb4a41db5 11-Jul-2013 Victoria Lease <violets@google.com> select bitmap strike if FT_Set_Char_Size fails

Bug: 9577689
Change-Id: I9e8260e23603adb390b7874f4e2ee7d004e8646c
kFontHost_FreeType.cpp
990d85f02ba6efaf6f3d75262d7ed650edc8afd5 07-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add getFamilyNames to SkTypeface.

Review URL: https://codereview.chromium.org/21716005

git-svn-id: http://skia.googlecode.com/svn/trunk@10589 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
febfd70d26dce3eb30da5384e36d740576a56161 02-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add onRefMatchingStyle to SkFontHost_linux.

git-svn-id: http://skia.googlecode.com/svn/trunk@10502 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
5ecd4fac89e854b85850bee1920d96c6ba1af259 02-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix SkTMin call introduced in 10500 which fails on some platforms.


git-svn-id: http://skia.googlecode.com/svn/trunk@10501 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
ddc218e508c4cdd16ff3461498cbbc2b5189b2be 02-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement onGetTableTags and onGetTableData on Windows.

Implements these and removes default implementation, making the
declaration in SkTypeface pure virtual.

Review URL: https://codereview.chromium.org/20672004

git-svn-id: http://skia.googlecode.com/svn/trunk@10500 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigTypeface.h
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_fontconfig.cpp
b10b51f64dbd1cf44571a1eedb412378702d8cd4 01-Aug-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement onGetTableTags and onGetTableData on Windows.

Implements these and removes default implementation, making the
declaration in SkTypeface pure virtual.

Review URL: https://codereview.chromium.org/20672004/


git-svn-id: http://skia.googlecode.com/svn/trunk@10495 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
0cfa53d69f121ba65ae8466971f54c38081afe44 31-Jul-2013 Derek Sollenberger <djsollen@google.com> Merge Skia r10377 into Android.

This CL also includes a cherry-pick of r10483 to fix
errors in the JPEG region decoder.

Conflicts:
include/core/SkUserConfig.h
src/images/SkImageDecoder.cpp
src/images/SkImageDecoder_libbmp.cpp
src/images/SkImageDecoder_libgif.cpp
src/images/SkImageDecoder_libico.cpp
src/images/SkImageDecoder_libjpeg.cpp
src/images/SkImageDecoder_libpng.cpp
src/images/SkImageDecoder_libwebp.cpp
src/images/SkImageDecoder_wbmp.cpp
src/ports/FontHostConfiguration_android.cpp
src/ports/FontHostConfiguration_android.h
src/ports/SkFontConfigInterface_android.cpp

Change-Id: I415ba6cfbb7ee41f4c8c5c01ec1bcc32345568d2
ab44a17f376039cdcaba74f9fb8f282ea4caa63c 01-Aug-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> stub support for SK_FONTHOST_USES_FONTMGR

BUG=

Review URL: https://codereview.chromium.org/21563002

git-svn-id: http://skia.googlecode.com/svn/trunk@10485 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
350b4d50ea4a9a151d8049ad1d3f411bb2f2602f 01-Aug-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkBlendImageFilter, and all tests. Its functionality has been subsumed by SkXfermodeImageFilter.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/21404002

git-svn-id: http://skia.googlecode.com/svn/trunk@10482 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
5d4b7733ae1d68b12163447977a74893c04b7342 01-Aug-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10477 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
e027a6ed9b9e2a96be846ddefb2b06e350858eed 31-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> adapt FontConfig to use SK_FONTHOST_USES_FONTMGR

BUG=

Review URL: https://codereview.chromium.org/21331003

git-svn-id: http://skia.googlecode.com/svn/trunk@10463 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigTypeface.h
kFontHost_fontconfig.cpp
29bf8625152c240311f851a8a0df3e543ed824c9 31-Jul-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream changes from Android

R=scroggo@google.com

Review URL: https://codereview.chromium.org/21053009

git-svn-id: http://skia.googlecode.com/svn/trunk@10461 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
76015b09536c664bd59b370be7691d4b69553d95 31-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10449 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
7fdcd444a1bd6a2f173c141e09e7ad9c11730ad2 30-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> support SK_FONTHOST_USES_FONTMGR on mac

BUG=

Review URL: https://codereview.chromium.org/21142004

git-svn-id: http://skia.googlecode.com/svn/trunk@10445 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
30ddd615c447fed73286151b463af20d309c85f1 30-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> refactoring for SK_FONTHOST_USES_FONTMGR option

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/21149008

git-svn-id: http://skia.googlecode.com/svn/trunk@10440 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
6a774a1f266070f304199ee31b8d1f4c0138b6cf 30-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix subpixel metrics with GDI.

The previous code uncovered a rather strange issue with GDI, where it
appears that alternating between two HFONTs with the same attributes but
vastly different heights does not appear to invalidate the the 'x'
metrics (the 'y' metrics appear to be correct). As a result it is
possible to get completely useless results from GetGlyphOutlineW. This
change works around the issue by simply scaling the one font to the
required sizes, which also saves us an HFONT.

Review URL: https://codereview.chromium.org/21047008

git-svn-id: http://skia.googlecode.com/svn/trunk@10425 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
27e21fe577211c1c40cbf40d0385b02c69d04522 28-Jul-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@10402 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
7c86d8eb3a61eae188bc8af2cd0363858eaea07e 27-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Disable GDI slight hinting.

FontHostTest fails because 'Times New Roman' 'o' and 'g' have
a different number of points in their hinted and un-hinted versions.
Disable slight hinting until this is understood.


git-svn-id: http://skia.googlecode.com/svn/trunk@10400 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
0abbff9987b9452fd30cce198bea34fdb210ac41 27-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix metrics on Windows.

With this change, Skia's metrics are much better in general, and
specifically can be made to match the metrics produced by current
Blink code. This allows Blink to use Skia's metrics.

This change will require a number of rebaselines in Skia, since
previous metrics were quite different. This will require about five
rebaslines in Blink, as the new code may cause GDI's matrix to differ
in the low bits.

Review URL: https://codereview.chromium.org/20585004

git-svn-id: http://skia.googlecode.com/svn/trunk@10399 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
58190644c30e1c4aa8e527f3503c58f841e0fcf3 26-Jul-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@10377

Change-Id: Id35b998cb70e867d14e58c2e794b9a742b1ef6d5
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kDebug_brew.cpp
kFontConfigInterface_android.cpp
kFontConfigInterface_direct.cpp
kFontConfigParser_android.cpp
kFontConfigParser_android.h
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kGlobalInitialization_default.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageDecoder_empty.cpp
kMemory_brew.cpp
kOSFile_brew.cpp
kOSFile_none.cpp
kOSFile_posix.cpp
kOSFile_stdio.cpp
kOSFile_win.cpp
kTLS_none.cpp
kTLS_pthread.cpp
kTLS_win.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
4b18f5767ab1df7fedf0ff2e3a9eac7f7c500c36 22-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Clean up a few warnings on Windows x64.



git-svn-id: http://skia.googlecode.com/svn/trunk@10233 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kImageDecoder_WIC.cpp
02dd688d613830c3c905bd9d30a6e5c51c8e2aa3 22-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make the copy of fontconfig font names before freeing their memory.

R=reed@google.com

Review URL: https://codereview.chromium.org/19466004

git-svn-id: http://skia.googlecode.com/svn/trunk@10228 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
f2e7dbb09fabc31fe5b16f6dc1a16593f518ca7d 16-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split TLS implementation into its own translation unit.

SkTLS has it's own header separate from SkThread, and having SkThread own
the platform implementation of SkTLS is problematic with Chromium. The
simplest way to clean this up is to put the implementation in its own set
of files, where it is also more easily found.

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/19240007

git-svn-id: http://skia.googlecode.com/svn/trunk@10105 2bbb7eff-a529-9590-31e7-b0007b416f81
kTLS_none.cpp
kTLS_pthread.cpp
kTLS_win.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
7bdd614a1940935d3badeb54f7aae75d76ea830d 15-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement onCountGlyphs and onGetUPEM on Windows.

R=vandebo@chromium.org

Review URL: https://codereview.chromium.org/19231003

git-svn-id: http://skia.googlecode.com/svn/trunk@10089 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
f5cc5b140c1c00c536e02b5cfbe158bb2d5c2c15 12-Jul-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> R=mtklein@google.com

Review URL: https://codereview.chromium.org/18503009

git-svn-id: http://skia.googlecode.com/svn/trunk@10050 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_posix.cpp
kOSFile_win.cpp
84e22d847fc84727bc220947162363ee1fe068fc 10-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> allow createScalerContext to return null, and then have the GDI backend trigger that if we fail to create the necessary GDI resources

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/18484005

git-svn-id: http://skia.googlecode.com/svn/trunk@9957 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
dc7919f228da7f15731e0c7f11e21f5dfac2c129 09-Jul-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove old and unused Android font host code

R=bungeman@google.com, scroggo@google.com

Review URL: https://codereview.chromium.org/18666003

git-svn-id: http://skia.googlecode.com/svn/trunk@9940 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
468142b2f50de055f00d5684515d962777da5131 09-Jul-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Allow ico decoder to decode PNG sub-images.

Since Windows Vista, PNG can be embedded in an ICO file. Update
our decoder to support this.

BUG=https://code.google.com/p/skia/issues/detail?id=1398
R=djsollen@google.com

Review URL: https://codereview.chromium.org/18655007

git-svn-id: http://skia.googlecode.com/svn/trunk@9932 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_empty.cpp
bc69ce982f8374742ca910587485f0d741350c2d 09-Jul-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove bitmap reuse from SkImageDecoder.

Now that Android is using an SkBitmap::Allocator to reuse bitmap
memory, remove the unnecessary code to handle bitmap reuse inside
the decoders themselves.

Leaves in the code for bitmap reuse in decodeSubset, which still
may reuse bitmaps, and cropBitmap, which is called by decodeSubset.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/17620004

git-svn-id: http://skia.googlecode.com/svn/trunk@9931 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_empty.cpp
b4162b12b1e8e38c48b328f819c97199a0825d2b 02-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> impl charsToGlyphs for freetype

BUG=
R=bungeman@google.com

Review URL: https://codereview.chromium.org/18040004

git-svn-id: http://skia.googlecode.com/svn/trunk@9866 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
bcb42aecf1bdb9ae80d766d203b4f636b954cf03 02-Jul-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add charsToGlyphs to SkTypeface

Will disable new unittest until all backends are implemented.

On Mac, new API is 4x faster than old paint one, so next CL I will reimplement the paint calls in terms of the new typeface call.

R=eae@chromium.org

Review URL: https://codereview.chromium.org/18083023

git-svn-id: http://skia.googlecode.com/svn/trunk@9860 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
4fe06995fc4d29d2f7b514a55376787dd3319c59 27-Jun-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for crbug/253460 (generatePath crashing on Windows).

Sometimes GetGlyphOutlineW returns a number larger than BUFFERSIZE
even if BUFFERSIZE > 0. It was previously expected that GetGlyphOutlineW
would always return GDI_ERROR in this case.



git-svn-id: http://skia.googlecode.com/svn/trunk@9785 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
371add80f51205d53391840164f37ade6aff8012 26-Jun-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SK_IGNORE_MAC_TEXT_BOUNDS_FIX workaround.

Now that SK_IGNORE_MAC_TEXT_BOUNDS_FIX is no longer used in Chromium, we can remove the code.

R=bungeman@gmail.com

Author: fmalita@chromium.org

Review URL: https://chromiumcodereview.appspot.com/17886002

git-svn-id: http://skia.googlecode.com/svn/trunk@9781 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
9a70f347c9f279bf7b4ad8f24e78e3e524767ed5 25-Jun-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Ensure we use the current locale when looking up fallback fonts per character

http://crbug.com/183830

R=scroggo@google.com

Review URL: https://codereview.chromium.org/17691002

git-svn-id: http://skia.googlecode.com/svn/trunk@9751 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
kFontConfigParser_android.cpp
kFontConfigParser_android.h
f86aa78ef1509cb8241553d0306b797b458099c4 24-Jun-2013 Derek Sollenberger <djsollen@google.com> Fix fallback font chaining in the framework

bug: 9484557
Change-Id: I5f2640b2782b4c21493e1ef39d333ee359c6637b
kFontConfigInterface_android.cpp
e9d831957602e3fa46fc4b609ae6d2da46654915 21-Jun-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add maxCharWidth and a compile flag to use old metrics (needed by Blink).

Review URL: https://codereview.chromium.org/17502006

git-svn-id: http://skia.googlecode.com/svn/trunk@9712 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
0afc6bb1b4ee0942c6b72e889653f96b822ec83c 20-Jun-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed invalid cast on mingw.

Fixes GCC error:
SkThread_win.cpp:39:61: error: invalid static_cast from type ‘int32_t {aka int}’ to type ‘const volatile LONG& {aka const volatile long int&}’

Review URL: https://codereview.chromium.org/17047004

git-svn-id: http://skia.googlecode.com/svn/trunk@9706 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_win.cpp
05a729ff90f75ac013873742ee0e4ae7e5e6e415 20-Jun-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix limit on size of glyph paths.

Some web fonts have been observed to contain glyphs which require a buffer
greater than 20KB. In these rare cases we should allocate space on the heap.
Most glyphs require less than 8KB, and Windows has a 1MB stack, so in the
common case just use the stack.

This change also removes the gFTMutex which was both poorly named and used.
The constructor does not appear to have any need for it, and with this change
the path generation code does not need it. The mask generating code does need
memory barriers for correctness, but these bariers are no-ops on x86. We will
need another change to clean up this sort of static initialization code.

R=caryclark@google.com

Review URL: https://codereview.chromium.org/17435003

git-svn-id: http://skia.googlecode.com/svn/trunk@9700 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
daaea2d51f145fd43221a2b923721b218c8ff777 14-Jun-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixes for unpremul decode.

SkImageDecoder_CG.cpp:
If a non opaque bitmap was decoded, and the caller wants
unpremultiplied, unpremultiply the colors.

Always use the RGB colorspace, since the other colorspaces
do not match the desired bitmap format.

ImageDecodingTest:
Allow for a difference of 1 in each color component when comparing
the result of premultiplying the unpremultiplied decode with the
premultiplied decode, since I found an image (in WEBP format) where
the unpremultiplied colors did not compare perfectly in my comparison.

R=reed@google.com

Review URL: https://codereview.chromium.org/17084012

git-svn-id: http://skia.googlecode.com/svn/trunk@9628 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
2bbc2c945bb0ecf18fd6473af74ad1a2f5e727a7 14-Jun-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add an option to create unpremultiplied bitmaps.
Currently they cannot be used directly by Skia, but
the pixels can be used elsewhere.

SkImageDecoder:
Add functions to require unpremultiplied output
and query the presence of the requirement

SkImageDecoder_libpng:
SkImageDecoder_libwebp:
SkImageDecoder_WIC:
Respect the requirement for unpremultiplied output.
TODO: Fix SkImageDecoder_CG.

SkScaledBitmapSampler:
Add procs to skip premultiplication and a boolean
parameter to use those procs.

ImageDecodingTest:
Test unpremultiplied bitmap decoding.

SampleUnpremul:
Add a sample which allows visually comparing between the
unpremultiplied version (copied into a premultiplied bitmap,
since drawing unpremultiplied is not currently supported)
and a premultiplied version of image files.

gm.h:
Add a getter for the resource path, so Samples can use it.

As of patch set 13, https://codereview.chromium.org/16816016/
and https://codereview.chromium.org/16983004/, which were
approved separately.

R=reed@google.com

Review URL: https://codereview.chromium.org/16410009

git-svn-id: http://skia.googlecode.com/svn/trunk@9612 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
e47e7d17a6444e0f44aece3e6d2a842f64aadada 06-Jun-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix crash when attempting to use a font fallback chain with a custom font.

This is a cherry-pick of a CL that has already been merged into Android.

Review URL: https://codereview.chromium.org/16005011

git-svn-id: http://skia.googlecode.com/svn/trunk@9468 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
3f970ccdfe4738c7fca0ef45a428c1a79ecd9854 06-Jun-2013 Derek Sollenberger <djsollen@google.com> Fix crash when attempting to use a font fallback chain with a custom font.

bug: 9315679
Change-Id: Ib38e190af91c1907225165bab2d74a7eea7adcdd
kFontConfigInterface_android.cpp
88605bb51d9f90e03c9cc448ed2ebcba2854ed14 06-Jun-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix leak in SkFontHost_fontconfig temporary code.

https://codereview.chromium.org/16525003


git-svn-id: http://skia.googlecode.com/svn/trunk@9460 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
ddecd9e735a474e5407e15b25183c99a51e73c70 05-Jun-2013 Derek Sollenberger <djsollen@google.com> Fix issues related to resolving fonts based on name.

1) non-system font files are not added to the cache.
2) We cache the default fonts for quick lookup.

This is a cherry-pick of Skia r9441.

bug: 9229698
Change-Id: I0ccf3775c8496886d2b0d841b85693154efcc096
kFontHost_fontconfig.cpp
4fa748d5801df66e46e6f4e98e07523d44d261a2 05-Jun-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix issues related to resolving fonts based on name.

1) non-system font files are not added to the cache.
2) We cache the default fonts for quick lookup.

Review URL: https://codereview.chromium.org/16439004

git-svn-id: http://skia.googlecode.com/svn/trunk@9441 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
11f2b444500d552031fcae0b381a0770600400fd 04-Jun-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9423 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_posix.cpp
78aa76c02eeb0b1519fb59429c1e8f9d83a0d6c5 03-Jun-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Follow on to r9408, implement sk_fileno in SkOSFile_none.cpp.


git-svn-id: http://skia.googlecode.com/svn/trunk@9410 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_none.cpp
11c9a55afd95078d14ab8cd7c1c5c0032af2a498 03-Jun-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkData::NewFromFD.

Chromium needs a SkStream backed by a file descriptor.
Skia already has the code and can do the work, this change exposes the
functionality in Skia in a clean way.

https://codereview.chromium.org/15941025/


git-svn-id: http://skia.googlecode.com/svn/trunk@9408 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_brew.cpp
kMemory_brew.cpp
kOSFile_brew.cpp
kOSFile_none.cpp
kOSFile_posix.cpp
kOSFile_win.cpp
86fc266eda887920e3dd104bee8121ae19729cf5 31-May-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement SkXfermode image filter. This required changing the signature of SkXfermode::asNewEffectOrCoeffs(), to add an optional background texture.

For the raster path, we do a straightforward 2-pass method: draw background, then composite the foreground over it.

For the GPU path, if the xfermode can be expressed as an effect, we build an effect with the background texture incorporated, then do a single-pass draw fetching both foreground and background textures, and compositing to the result. If the xfermode is expressed as src/dst coefficients, we do a 2-pass draw as in the raster path and use fixed-function blending.

R=bsalomon@google.com, reed@google.com

Review URL: https://codereview.chromium.org/16125008

git-svn-id: http://skia.googlecode.com/svn/trunk@9373 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
7def5e1630d47cdbfa4b58a9c86bc060693c4d79 31-May-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Separate core and images project.

SkImage calls functions on SkImageDecoder and SkImageEncoder. This
is desired behavior, and it is also desired to include SkImage as
a part of core. In order to keep core from depending on images,
update SkImageDecoder_empty.cpp to implement all of SkImageDecoder
and SkImageEncoder. This file will be built by chrome (in
https://codereview.chromium.org/15960015).

Move force_linking from SkImageDecoder.cpp to its own file. It must
be called to force linking with the image decoders if desired. Call
the function in tools that need it:
sk_image
render_pictures
render_pdfs
sk_hello
filter
bench_pictures
debugger

SkImageDecoder:
Derive from SkNoncopyable, instead of duplicating its
hiding of constructors.

skhello:
Return rather than trying to write a null SkData to the stream.

Revert "Hamfistedly removed core dependence on images"
(commit 0f05f682a90bc125323677abf3476e1027d174f5) and
"Move SkImage::encode to SkImage_Codec.cpp."
(commit 83e47a954d0bf65439f3d9c0c93213063dd70da3.)
These two commits were temporary fixes that this change
cleans up.

SkSnapshot.cpp:
Check for a NULL encoder returned by SkImageEncoder::Create.

BUG=https://code.google.com/p/skia/issues/detail?id=1275
R=djsollen@google.com, robertphillips@google.com

Review URL: https://codereview.chromium.org/15806010

git-svn-id: http://skia.googlecode.com/svn/trunk@9364 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_empty.cpp
9a6eb0e1e8a8de7371cd9604f34619b8f87de66f 29-May-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Provide a GPU implementation of SkArithmeticMode, using a custom GrEffect exposed via asNewEffectOrCoeff().

Doing it this way required modifying the arithmode GM to use saveLayer()/restore() rather than creating an offscreen SkBitmap, since otherwise the compositing is always done in raster mode. Fixing that in turn exposed that SkArithmeticMode did not work in Picture mode, since it wasn't flattenable. Made it so.

Note: this will require rebaselining the arithmode GM (again).

R=bsalomon@google.com, reed@google.com

Originally committed: https://code.google.com/p/skia/source/detail?r=9324
Reverted: https://code.google.com/p/skia/source/detail?r=9325

Review URL: https://codereview.chromium.org/16064002

git-svn-id: http://skia.googlecode.com/svn/trunk@9330 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
06e7424c70595cdfeee9a0ce8a2fb0f7f17eac41 29-May-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Provide a GPU implementation of SkArithmeticMode, using a custom GrEffect exposed via asNewEffectOrCoeff()."

This reverts commit b8ffe17b5c684f9cfff02285f27e6aa1f75c9b53.

TBR=robertphillips

Review URL: https://codereview.chromium.org/16115007

git-svn-id: http://skia.googlecode.com/svn/trunk@9325 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
6b6c1dc34c299be87a3ff3ab41d3d4fd0f96a846 29-May-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Provide a GPU implementation of SkArithmeticMode, using a custom GrEffect exposed via asNewEffectOrCoeff().

Doing it this way required modifying the arithmode GM to use saveLayer()/restore() rather than creating an offscreen SkBitmap, since otherwise the compositing is always done in raster mode. Fixing that in turn exposed that SkArithmeticMode did not work in Picture mode, since it wasn't flattenable. Made it so.

Note: this will require rebaselining the arithmode GM (again).

R=bsalomon@google.com, reed@google.com

Review URL: https://codereview.chromium.org/16064002

git-svn-id: http://skia.googlecode.com/svn/trunk@9324 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
7ed0447762ac988838a191b465a90057bada12a1 29-May-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use updated signature for decode in empty decoder.

This allows chromium to build SkImageDecoder_empty.cpp
(https://codereview.chromium.org/15960015/) until Skia
has https://codereview.chromium.org/15806010/ (which
is a superset of this change).

R=robertphillips@google.com

Review URL: https://codereview.chromium.org/15742029

git-svn-id: http://skia.googlecode.com/svn/trunk@9321 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_empty.cpp
6cab1a4b6a68aa81237731308ff37a646d48f51c 29-May-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change SkStream.
https://codereview.chromium.org/15298009/


git-svn-id: http://skia.googlecode.com/svn/trunk@9312 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
kOSFile_none.cpp
kOSFile_posix.cpp
kOSFile_stdio.cpp
kOSFile_win.cpp
e7e8691b08f0cf2292ff470ada84e03ded358075 28-May-2013 Derek Sollenberger <djsollen@google.com> Merge Skia r9286 into android.

Conflicts:
include/core/SkFontHost.h
include/core/SkPaint.h
include/core/SkScalar.h
include/ports/SkTypeface_android.h
src/core/SkPaint.cpp
src/core/SkScalerContext.cpp
src/core/SkScalerContext.h

bug: 8719528
Change-Id: Icf2f43cfaacc6f0a0fa1965b2c1f4d2b957e9982
779bf8a99dc7f03e5c43b26d4b85d7920ce89aee 28-May-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@9286

Change-Id: I07f49058086dc8e7893cf10d33fca6773bf5508e
kFontConfigInterface_android.cpp
kGlobalInitialization_default.cpp
40078cb49e290e7fa6da1515c9d32a1d98e304a6 24-May-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Android specific changes that are upstreamed from the android framework.

R=reed@google.com

Review URL: https://codereview.chromium.org/15720006

git-svn-id: http://skia.googlecode.com/svn/trunk@9283 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
7839ce1af63bf12fe7b3caa866970bbbb3afb13d 23-May-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@9231

Change-Id: I384e5f43ceb90b1a2e58a1e33753b3e79c85b949
kFontConfigInterface_android.cpp
kFontConfigInterface_direct.cpp
kFontConfigParser_android.cpp
kFontConfigParser_android.h
kFontConfigTypeface.h
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kGlobalInitialization_default.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kOSFile_stdio.cpp
8c6411a603266e94dd87445ac30e0b1abc36b0af 22-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reenable lerpmode in gms, now that I think we fixed the global-initialization

BUG=

Review URL: https://codereview.chromium.org/15737004

git-svn-id: http://skia.googlecode.com/svn/trunk@9234 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
b7457d0d3b25f1a3dcc46656dce4e787645730bd 22-May-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix clang warnings/errors in Android only code



git-svn-id: http://skia.googlecode.com/svn/trunk@9231 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
2e08f19943b69eace09ef2536d2028913ede7725 21-May-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix android font lookup bug

R=reed@google.com

Review URL: https://codereview.chromium.org/15602002

git-svn-id: http://skia.googlecode.com/svn/trunk@9223 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
ab6eeb9d8405ade57d251f93b0788f75ec83ed54 21-May-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix release build warnings for unused variables

R=rmistry@google.com

Review URL: https://codereview.chromium.org/15565008

git-svn-id: http://skia.googlecode.com/svn/trunk@9220 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
bfae9d373ccc9cf47fd70757092962c7850fadf4 21-May-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a fontConfig interface for android.

The contents of this CL are based on the SkFontHost_android.cpp found
in the android repository.

BUG=
R=reed@google.com

Review URL: https://codereview.chromium.org/14731025

git-svn-id: http://skia.googlecode.com/svn/trunk@9219 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_android.cpp
kFontConfigParser_android.cpp
kFontConfigParser_android.h
9401deeb1046ff763d38d5354bb54648b3bab234 16-May-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make the use of fallback fonts in Android a runtime decision.

R=reed@google.com

Review URL: https://codereview.chromium.org/14972022

git-svn-id: http://skia.googlecode.com/svn/trunk@9168 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
539f364e80a1e8ee35845b93fd6547e855380cad 16-May-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9159 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigTypeface.h
kFontHost_mac.cpp
6930b57221ea7010dcab516559fa6bc5a0fb3807 15-May-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Move the FontConfigTypeface class into private header.

R=reed@google.com

Review URL: https://codereview.chromium.org/15111004

git-svn-id: http://skia.googlecode.com/svn/trunk@9154 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigTypeface.h
kFontHost_fontconfig.cpp
cefd981a4c4e90be33d1433592f11f84a102d2e0 15-May-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix vertical text scaling and clipping on Mac.
https://codereview.chromium.org/15064003/


git-svn-id: http://skia.googlecode.com/svn/trunk@9142 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
0431b87a98f2f3721d8e5dba04bf81a2fd8b5d1c 14-May-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9117 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
381bb43efb1697a67b1c02d1d9774fef9c643c4b 13-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add separate impl file for SkFontMgr_fontconfig, so we don't polute
SkFontHost_fontconfig, which should be sharable w/ android. Eventaully
we will remove that FontHost file completely, and just use the SkFontMgr.

R=djsollen@google.com

Review URL: https://codereview.chromium.org/15077008

git-svn-id: http://skia.googlecode.com/svn/trunk@9114 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
c7a20e40938ae031368e3a9e4df33ce90a765aba 13-May-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> API modifications needed to upstream Android font changes.

Committed: http://code.google.com/p/skia/source/detail?r=9083

R=reed@google.com

Author: djsollen@google.com

Review URL: https://chromiumcodereview.appspot.com/14761003

git-svn-id: http://skia.googlecode.com/svn/trunk@9107 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
e55491d84632bc69d989be793e9709d941d173b4 10-May-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting 9083 & 9084 due to Android failures



git-svn-id: http://skia.googlecode.com/svn/trunk@9085 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
14451703f1a53d0ff14ffe4f44436526383a5fd4 09-May-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> API modifications needed to upstream Android font changes.

R=reed@google.com

Author: djsollen@google.com

Review URL: https://chromiumcodereview.appspot.com/14761003

git-svn-id: http://skia.googlecode.com/svn/trunk@9083 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
94b366a3e8ed7f03b4417f45999572399e6e591c 08-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> negate FontBox.bottom, since it is negative, but we want it positive (doh)



git-svn-id: http://skia.googlecode.com/svn/trunk@9067 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
60af92cb6de814b14ee5d40b71bfbd79227597ec 08-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use more fields from OutlineFontMEtrics: linegap, bbox.
Up our canonical size to 2048 to reduce precision loss.

R=bungeman@google.com

Review URL: https://codereview.chromium.org/14759021

git-svn-id: http://skia.googlecode.com/svn/trunk@9057 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
e944de7523ddd0ffffdc423c0b99a83fe83c5d5a 07-May-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@9023 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac.cpp
c5fd46171841711973b9433c726ff8608335940c 07-May-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Mask orientation and layout correctly.

R=reed@google.com, clefru@google.com

Author: bungeman@google.com

Review URL: https://chromiumcodereview.appspot.com/14884010

git-svn-id: http://skia.googlecode.com/svn/trunk@9022 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
e4faa14de8a1264811f07e4d24477ef33235cce2 06-May-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove unused complex script support from android builds

R=reed@google.com

Author: djsollen@google.com

Review URL: https://chromiumcodereview.appspot.com/14942003

git-svn-id: http://skia.googlecode.com/svn/trunk@9011 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
f073b3332d7c9f7dba6bcf7eb93708593a90036c 06-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reimplement generateFontMetrics to keep all calculations in SkScalar, avoiding the
risk of over/under-flow w/ the current fixed-point intermediates.

Review URL: https://codereview.chromium.org/14736005

git-svn-id: http://skia.googlecode.com/svn/trunk@9005 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
2fd42c471c77f54ace35c13975651e17d5b2e8c6 03-May-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Housekeeper-Nightly

git-svn-id: http://skia.googlecode.com/svn/trunk@8976 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
f77b35d86ad439917bda78334deb31fbcc16cdae 02-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add HACK_COLORGLYPHS (disabled) to test colorglyphs



git-svn-id: http://skia.googlecode.com/svn/trunk@8972 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
a65a681d43a8e9f5d8726a389832e957b07ee16b 02-May-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Cast our LOGFONTs in our enumerator callbacks to ENUMLOGFONTEX, so we
can get at the style-names.



git-svn-id: http://skia.googlecode.com/svn/trunk@8971 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
4bbc524ca44874cd5db6d72fab103ba085c86486 02-May-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> TTC support for DirectWrite.
https://codereview.chromium.org/14600009/


git-svn-id: http://skia.googlecode.com/svn/trunk@8958 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
7103344b64f3f0df88e76857c16edc8eedb58366 01-May-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add FontMgr to DirectWrite.
https://codereview.chromium.org/14314008/


git-svn-id: http://skia.googlecode.com/svn/trunk@8934 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
437eea160b2f605d9074106891288e85baaecfef 25-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> impl onCreateFrom... for fontmgr on windows



git-svn-id: http://skia.googlecode.com/svn/trunk@8869 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
39edf4cd94e6fbeb8c1187a588b314e9795c81e4 25-Apr-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Updates to skimage tool to use it for testing.

skimage_main.cpp:
More changes in the interest of testing our decoders.

force_all_opaque before writing PNG files.

Test reencoding the image to its original type (if possible), and
then test redecoding it (to make sure the encoding was successful).
Add an option to turn off this behavior.

Merge decodeFileAndWrite with decodeFile.

SkImageDecoder:
Add kUnknown_Type to SkImageEncoder::Types.

Add a static function to get the Format of an SkStream.

In getFormatName(), remove an incorrect assert.

When calling the flavor of DecodeStream that returns the Format,
check the stream if the decoder returns kUnknown_Format.

BUG=https://code.google.com/p/skia/issues/detail?id=1241

Review URL: https://codereview.chromium.org/14363003

git-svn-id: http://skia.googlecode.com/svn/trunk@8862 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
9711e446676e6bf84b3fff916fd1d7537933a110 24-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Move MMap to SkData.

R=reed@google.com

Author: bungeman@google.com

Review URL: https://chromiumcodereview.appspot.com/14336003

git-svn-id: http://skia.googlecode.com/svn/trunk@8848 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_stdio.cpp
484f5bcf07c965e84cf021a6272aff73e2d7c1ec 24-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> first impl of fontmgr for gdi



git-svn-id: http://skia.googlecode.com/svn/trunk@8844 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
ab792828a57b663841dacffda9c2163e5e45d934 23-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> its ok if there is no family name in the pattern for fontconfig, for fc will interpret
an empty string as looking for the default (which is our intent).



git-svn-id: http://skia.googlecode.com/svn/trunk@8830 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
e36a168d132a70d04eb696d8b50e2aea5c725bff 23-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8819 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
da2cd7b1880ac7c8836bcd74ec946bf28c0ee9fd 22-Apr-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add missing unistd.h include after r8765.

TEST=Build with GCC 4.8.0 and glibc 2.17.
R=reed@google.com, jvanverth@google.com, bsalomon@google.com

Author: raphael.kubo.da.costa@intel.com

Review URL: https://chromiumcodereview.appspot.com/14401007

git-svn-id: http://skia.googlecode.com/svn/trunk@8809 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
f55061fd8453e8d2b33f1f05060fc443deee3222 22-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check-point for linux fontmgr impl

Review URL: https://codereview.chromium.org/14305007

git-svn-id: http://skia.googlecode.com/svn/trunk@8808 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
750a24bb3d39e59d32db3f166ad3f39c7560c0a9 22-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix refcnts for singleton fontconfig-direct



git-svn-id: http://skia.googlecode.com/svn/trunk@8807 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_fontconfig.cpp
e49d67edd5ac1789b235eb51aeed558a85a7f628 22-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> start cleanup, in prep for new fontmgr impl

Review URL: https://codereview.chromium.org/13956032

git-svn-id: http://skia.googlecode.com/svn/trunk@8805 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
64b682ca42c75667e49251d3ab04f192f92d0dd8 20-Apr-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8785 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_fontconfig.cpp
df798b377b94bc4b843018a84f2a71b9df3cb625 19-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> can't return false for a ptr (unless you're in gcc)



git-svn-id: http://skia.googlecode.com/svn/trunk@8782 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
027fd204ad09fe3160c7319b1e55c4ae44747947 19-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use SkDataTable to return familyNames for fontmgr



git-svn-id: http://skia.googlecode.com/svn/trunk@8781 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_fontconfig.cpp
4ca890ecf57f184a01b90a74d2cec70ceca8d0e9 19-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check-point for new fontmgr on linux



git-svn-id: http://skia.googlecode.com/svn/trunk@8765 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
4c6adf9a089dbdd541f25d01d257ec05aedcb57d 17-Apr-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Updates to images project.

Use the SkImageEncoder_Factory on all platforms. On Windows and Mac,
register the platform's image encoder as an option for
SkImageEncoder::Create. Also add more types that can be decoded.

Update comments for SkImageDecoder to be more accurate.

Add more types to SkImageEncoder::Type, and return the correct type of
encoder, if it exists.

Use a custom version of SkImageDecoder::Factory on Windows and Mac to
check the stream for registered decoders before defaulting to the platform's
version. Share code with the existing SkImageDecoder::Factory method.

Preparation for testing decoders and encoders:
BUG=https://code.google.com/p/skia/issues/detail?id=1241

Review URL: https://codereview.chromium.org/14298010

git-svn-id: http://skia.googlecode.com/svn/trunk@8730 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
1c5710c121ff08d854410e056739d953b377b8a9 11-Apr-2013 Raph Levien <raph@google.com> am e05129fc: Merge "Add additional scripts in font mapping" into jb-mr2-dev

* commit 'e05129fc0eb58baa033b4d309cc2db03e262ee9e':
Add additional scripts in font mapping
21db1dbbce8de9d1205a4fac1c3b15975807a7e7 10-Apr-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Temporary patch to get Chrome Windows compiling



git-svn-id: http://skia.googlecode.com/svn/trunk@8583 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
54c69147f96eedb10e430df72d71419795e81d3a 09-Apr-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> extend FontConfigInterface to start to match new fontmgr design
Review URL: https://codereview.chromium.org/13297004

git-svn-id: http://skia.googlecode.com/svn/trunk@8575 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
19ab554305561e06cfa5a633a28369dc02b6ea04 09-Apr-2013 Raph Levien <raph@google.com> Add additional scripts in font mapping

This is an implementation of bug 8565810: Enable more complex scripts
in text layout

This change adds a number of additional scripts to the mapping from
"representative" Unicode code point to script tag, which is used by
Skia's fallback mechanism to find an appropriate font for a run of
text. In cases where Harfbuzz old does not have the script in its
enum (for legacy rendering), we use a value which can never occur,
which will preserve the existing behavior.

Change-Id: I3e197abf7a6ccf305d2e6409b17a8aeb7dc7d32e
kFontHost_android.cpp
dde23ce372d3ac1beb27c82ad5814cc744b843d8 03-Apr-2013 Derek Sollenberger <djsollen@google.com> Merge Skia r8352 into Android

Change-Id: Id9945639617af9802b3d16a5f8485469125e8545
390c6d7a9018e233a6519397ac6c739fb21a99ef 06-Apr-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix font handles leak. We return without freeing resources.
Fix for crbug/225256
Review URL: https://codereview.chromium.org/13637004

git-svn-id: http://skia.googlecode.com/svn/trunk@8549 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
e3b4c5097a6fd9b6c09d2ffbc3db170a287fdd99 05-Apr-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> New SVG turbulence in Skia

This cl contains the code for CPU generation of noise.

TEST:Added 'perlinnoise' gm
Review URL: https://codereview.chromium.org/13094003

git-svn-id: http://skia.googlecode.com/svn/trunk@8541 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
e2022cc36e47b9f0d219eb5cd24be61772c28d3b 03-Apr-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@8352

Change-Id: I09dbe7f21185e6c22f04edbaf46de2f5c620e475
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_sandbox_none.cpp
kFontHost_simple.cpp
kFontHost_tables.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kHarfBuzzFont.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
d55846d100bb09448b398b41798bd4ab100a753a 30-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8452 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
964988f0e93f4a559b7e41db53d70d0282527350 29-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add matcher to fontstyleset
Review URL: https://codereview.chromium.org/13312002

git-svn-id: http://skia.googlecode.com/svn/trunk@8444 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
87379e17c5e95c6fe0d88b3b9ae134355cfafc66 29-Mar-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix minor cppcheck-found issues

https://codereview.chromium.org/13146005/



git-svn-id: http://skia.googlecode.com/svn/trunk@8440 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
dea7ee04d31d0f269cdc8db49b9225fc937b9622 28-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add caching to fontmgr for mac
Review URL: https://codereview.chromium.org/13161002

git-svn-id: http://skia.googlecode.com/svn/trunk@8430 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
070da5edcb1c6e9b9507f06a5e2c270e1c1fd796 27-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add dummpy SkFontMgr::Factory() impl to font backends, so we can start testing it
Review URL: https://codereview.chromium.org/13119021

git-svn-id: http://skia.googlecode.com/svn/trunk@8415 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
3dcbd4673d7ee03ded1c08e6d58713cb07e9d1f1 27-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> CTFontManagerCopyAvailableFontFamilyNames is not always available (on iOS)
so write a wrapper for it.

fixes iOS build



git-svn-id: http://skia.googlecode.com/svn/trunk@8406 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
37cbc7fd014e3b35833523dbdbe3bc3ac52ecacd 27-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8404 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
kFontHost_none.cpp
ce8b3de6058eae07ddc2eed6f96701e009bb91ec 26-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> store real fontstyle on mac fonts



git-svn-id: http://skia.googlecode.com/svn/trunk@8399 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
83787c55db37e382ae36231a7b9458991228c10a 26-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> impl part of SKFontMgr for mac

Here is some test code

SkFontMgr* mgr = SkFontMgr::RefDefault();
for (int i = 0; i < mgr->countFamilies(); ++i) {
SkString familyName;
mgr->getFamilyName(i, &familyName);
SkDebugf("%s\n", familyName.c_str());
SkFontStyleSet* styles = mgr->createStyleSet(i);
for (int j = 0; j < styles->count(); ++j) {
SkFontStyle fs;
SkString styleName;
styles->getStyle(j, &fs, &styleName);
SkTypeface* face = styles->createTypeface(j);
SkDebugf(" %s [%d %d] %x\n", styleName.c_str(), fs.weight(),
fs.width(), face);
}
styles->unref();
}
mgr->unref();
Review URL: https://codereview.chromium.org/13094005

git-svn-id: http://skia.googlecode.com/svn/trunk@8395 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
1fa793fa6b83219a266124aa70455540b98a4633 26-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkFontHost::NextLogicalFont, and add android-specific function
SkAndroidNextLogicalTypeface



git-svn-id: http://skia.googlecode.com/svn/trunk@8386 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
e60ed08a3568b5e253dfb5dec2b52d13a16fff1c 26-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8383 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
kFontHost_mac.cpp
8cf10efe759982340acda7c5d2c88fa65005085d 25-Mar-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting r8376, r8373 and r8371 due to Android shader compilation failures



git-svn-id: http://skia.googlecode.com/svn/trunk@8378 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
95625dbcb6b2960732bc27ad0dd0fc4adbb4f7c0 25-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check-point (early) for fontmgr stuff, not called.



git-svn-id: http://skia.googlecode.com/svn/trunk@8377 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
fe74765f0d302669ae49e68074492bdfe0ce6e6f 25-Mar-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change fixedWidth to fixedPitch and implement on Windows.
https://codereview.appspot.com/7954044/


git-svn-id: http://skia.googlecode.com/svn/trunk@8372 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_android.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
2daa365123528219fae3b63791a8fd3d197a9ce2 25-Mar-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> New SVG turbulence in Skia

This cl contains the code for both CPU and GPU generation of noise. Both
codepaths yield equivalent results.

TEST:Added 'perlinnoise' gm
Review URL: https://codereview.chromium.org/13047005

git-svn-id: http://skia.googlecode.com/svn/trunk@8371 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
5526ede94a2fc58bcf6b578b12a29f6addad776d 25-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> land https://codereview.chromium.org/12676024



git-svn-id: http://skia.googlecode.com/svn/trunk@8359 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
ce9d95ae3f7bce44e4207127f752c86bd5595523 24-Mar-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix for android_clang_dbg compiler error



git-svn-id: http://skia.googlecode.com/svn/trunk@8352 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
292b1d4903a770a77282508054917b48fb989d49 22-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkFontHost::OpenStream(), now subsumed by SkTypeface::openStream()

remove obsolete/abandoned SkFontHost_freetype_mac.cpp
Review URL: https://codereview.chromium.org/13008019

git-svn-id: http://skia.googlecode.com/svn/trunk@8342 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
096defe64d408e54474fe19f418c95bf1a554fc7 22-Mar-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@8255

Change-Id: I4666e04b05c7d2f2f0f25204b20b302e7d161d85
ontHostConfiguration_android.cpp
kDebug_stdio.cpp
kDebug_win.cpp
kFontConfigInterface_direct.cpp
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_FreeType_common.h
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_sandbox_none.cpp
kFontHost_simple.cpp
kFontHost_tables.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kGlobalInitialization_default.cpp
kPurgeableMemoryBlock_android.cpp
kPurgeableMemoryBlock_mac.cpp
kPurgeableMemoryBlock_none.cpp
0228856899175169649e2efd9aeb8b8c7185a934 22-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert 8331 (broke android text)



git-svn-id: http://skia.googlecode.com/svn/trunk@8339 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
1361d78e88acd6a0865a4c08c58e7504ed094655 22-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> override SkTypeface::onOpenStream for android



git-svn-id: http://skia.googlecode.com/svn/trunk@8331 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
3ddb793e30c5ed70ea0b029268fca8a55287f6ad 22-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8324 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
kHarfBuzzFont.cpp
7935d7ca73df1036699b056679c085da141abde7 22-Mar-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete/abandoned font backend



git-svn-id: http://skia.googlecode.com/svn/trunk@8322 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_simple.cpp
66d831dc74953986fb1eef2e10d5b301213ccd4a 22-Mar-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkFontHost::GetFileName

All remaining impls were either empty, or always return 0 for ttcIndex (its only value).
This functionality is now totally subsumed by SkTypeface::openStream()



git-svn-id: http://skia.googlecode.com/svn/trunk@8321 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
25d5ab0c0e3d158d301c3a7e89d904adbf4864f4 22-Mar-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete/unsupported font backend



git-svn-id: http://skia.googlecode.com/svn/trunk@8320 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_ascender.cpp
06e87370a732acb771f4611a1af6194ef62acc71 22-Mar-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete/orphaned font backend



git-svn-id: http://skia.googlecode.com/svn/trunk@8318 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
177dc6e57aabc12c8b1d79e5a7387d22a42a6a87 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> override SkTypeface::onOpenStream for DW
also fix warnings
Review URL: https://codereview.chromium.org/12683003

git-svn-id: http://skia.googlecode.com/svn/trunk@8312 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
6c66d2f2b6525576524308c84eb952bb4bccf664 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove GetTable* APIs from SkFontHost, and rely on SkTypeface::onGetTable*

default impls call SkFontStream, and rely on SkTypeface::onOpenStream
Review URL: https://codereview.chromium.org/13001002

git-svn-id: http://skia.googlecode.com/svn/trunk@8310 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
kFontHost_mac.cpp
kFontHost_tables.cpp
kHarfBuzzFont.cpp
b58a639b2fbe919489654bb506efdb024a308a8e 21-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Enable init'ed but unused var warning on windows for closer parity with mac/linux warnings.
Review URL: https://codereview.chromium.org/12536008

git-svn-id: http://skia.googlecode.com/svn/trunk@8307 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
0042b9c2a2e6fe954cdfbcd5a5b7449cdf41a4c3 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> override SkTypeface::onOpenStream()

note: getTables APIs are not overridden yet, causing them to take the slow
openstream case each time. We should fix this, since openStream for windows
itself is slow (not native).
Review URL: https://codereview.chromium.org/12941006

git-svn-id: http://skia.googlecode.com/svn/trunk@8306 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
cc9aad5787b52216f46b9d6d95a781240e3e6b6b 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> override onGetTableTags() and onGetTableData() in SkTypeface, in preparation for
removing the associated APIs in SkFontHost.h



git-svn-id: http://skia.googlecode.com/svn/trunk@8303 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
055180cb9c47c87e5ee8c9fa6d3f6a6079ad6f35 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use function-ptr instead of SkFontHost api to allow client to handle
loading GDI font data for fonts.
Review URL: https://codereview.chromium.org/12938004

git-svn-id: http://skia.googlecode.com/svn/trunk@8301 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_sandbox_none.cpp
kFontHost_win.cpp
2cdc6713fb04c46ecbc73a724029a8b266004ddf 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add virtual SkTypeface::onOpenStream and override that for fontconfig
(other ports to follow)

When this is complete, we will be able to remove from SkFontHost
- OpenStream
- GetFileName
Review URL: https://codereview.chromium.org/12988002

git-svn-id: http://skia.googlecode.com/svn/trunk@8299 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_fontconfig.cpp
38c37ddbaf3b29cdacbc25d4aa2acca1869d276f 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> call onGetUPEM to subclasses can optimize it, and place default behavior
(calling getAdvancedTypefaceMetrics) in base impl.

This allows us to remove SkFontHost::GetUnitsPerEm entirely
Review URL: https://codereview.chromium.org/12915003

git-svn-id: http://skia.googlecode.com/svn/trunk@8295 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
9dcf4651194d739eaa7b3325b41e3039681a6d38 21-Mar-2013 edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> When we read from a RemoteFontStream (might happen maybe with other streams), stream's data might be partially consumed. If so, when we try to read the whole content of the font, we fail, because we read only part of the content.
Review URL: https://codereview.chromium.org/12926004

git-svn-id: http://skia.googlecode.com/svn/trunk@8291 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
032fbb8ebff7816793b077b6113de702e48713c1 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> oops, update the INHERITED for our typeface



git-svn-id: http://skia.googlecode.com/svn/trunk@8289 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
0fc17c33f144956bb75650f991226a14e555f189 21-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> inherit from SkTypeface_FreeType to share more code



git-svn-id: http://skia.googlecode.com/svn/trunk@8288 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
5dd45021c37e24cd2c8e91a0f1a1d28a77ad613c 21-Mar-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update code to use helper function for better readability/searching.

Review URL: https://codereview.chromium.org/12834012

git-svn-id: http://skia.googlecode.com/svn/trunk@8287 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
c1641fc92259a1ca5cfc32cd5c8c55ea316b2bd1 21-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8281 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
kFontHost_simple.cpp
2689f615e364dc48ad73826564f5b13d2329179d 20-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move impl of AdvancedTypefaceMetrics into typeface (3)
Review URL: https://codereview.chromium.org/12807004

git-svn-id: http://skia.googlecode.com/svn/trunk@8274 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
f210f505ffffccc15ae5e91f8ccb9763ba7fc152 20-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add new API for gdi fonts (not hooked up yet)



git-svn-id: http://skia.googlecode.com/svn/trunk@8253 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
c4de77610191074250dca0bfc21c574eb2d0921c 20-Mar-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add an entry for Cambria-Caladea to the list of metric compatible fonts.

Caladea is going to be included in Chromium/Chrome OS as a substitute for Cambria. (see https://gerrit.chromium.org/gerrit/#/c/45888/ ).


BUG=chromium:168879
TEST=See the bug and the ChromeOS CL above.

Author: jshin@chromium.org

Reviewed By: reed@google.com

Review URL: https://chromiumcodereview.appspot.com/12879008

git-svn-id: http://skia.googlecode.com/svn/trunk@8251 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
01c34ee59906f729f6ca7d35f0c0e5e2f5e693fe 20-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8249 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_FreeType_common.h
0da48618a758ef46c2174bdc1eaeb6dd8a693a2e 19-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkFontHost::CreateScalerContext
Review URL: https://codereview.chromium.org/12593013

git-svn-id: http://skia.googlecode.com/svn/trunk@8228 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.h
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
8c3f84d13ff9eb61d9deb93197da4596b79841b0 19-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use SkStream::NewFromFile()



git-svn-id: http://skia.googlecode.com/svn/trunk@8216 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
f381162e5616daacdbcc06d693aca5111aeeebe8 19-Mar-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> use SkStream::NewFromFile()



git-svn-id: http://skia.googlecode.com/svn/trunk@8210 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_win.cpp
bb281f7f963ea9ae6d735ca8430396cfabaa73ca 18-Mar-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Improvements/additions to SkImageCache/SkLazyPixelRef.

SkPurgeableImageCache:
New image cache that uses virtual memory to store the pixels. Combines
features of SkAshmemImageCache (which has been removed) with SkPurgeableMemoryBlock, which has android and Mac versions.

SkImageCache:
Modified the API. pinCache now returns a status out parameter which
states whether the pinned memory retained the old data. This allows
allocAndPinCache to only be used for allocations.
Add a new debug only interface to purge unpinned data.
Updates to documentation, clarifying behavior.
Changed CachedStatus to MemoryStatus

SkLruImageCache:
Implement the new function purgeAllUnpinnedCaches and change implementation
of pinCache for the new behavior.

SkLazyPixelRef:
Rewrite onLockPixels to account for the new behavior of pinCache.

BitmapFactoryTest:
Test the new SkPurgeableImageCache.
Write tests which directly test the SkImageCaches.
Create a larger bitmap, since some of the SkImageCaches are designed
to handle large bitmaps.

bench_ and render_pictures:
Consolidate lazy_decode_bitmap into one function.
Allow using a flag to specify using the purgeable image cache.
Clean up some #includes.

Review URL: https://codereview.chromium.org/12433020

git-svn-id: http://skia.googlecode.com/svn/trunk@8207 2bbb7eff-a529-9590-31e7-b0007b416f81
kAshmemImageCache.cpp
e1575aa21619e252f6c6514317041c32d00ce5a6 18-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reland 8200 w/ fix for android (use fullpath instead of path)
Review URL: https://codereview.chromium.org/12921003

git-svn-id: http://skia.googlecode.com/svn/trunk@8206 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_simple.cpp
070235e746c46f6c0a26ed6c23c832c532b974e9 18-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert 8204 -- what is happening???



git-svn-id: http://skia.googlecode.com/svn/trunk@8205 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_simple.cpp
4f7e846cd8b577fc40f30cce6d982d853763a3eb 18-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reland 8200 w/ fix for android (need fullpath instead of path)



git-svn-id: http://skia.googlecode.com/svn/trunk@8204 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_simple.cpp
1311f7e7f43d00cd1fa6802a414e987e60e6d67d 18-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert 8200 to figure out android break



git-svn-id: http://skia.googlecode.com/svn/trunk@8201 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_simple.cpp
d5ea2aeb6082840c598818aba37fcb8e08773341 18-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move SK_MMAP_SUPPORT into SkPreConfig, so we can know about its availability
throughout the code.

Add SkData::NewFromMMap() help factory.

Refactor (now gone) SkMMapStream into SkStream::NewFromFile() factory
Review URL: https://codereview.chromium.org/12919013

git-svn-id: http://skia.googlecode.com/svn/trunk@8200 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_simple.cpp
ac2c82c8528ae45bcdac1f7c4b578aff1d9bbb7e 16-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8177 2bbb7eff-a529-9590-31e7-b0007b416f81
kPurgeableMemoryBlock_android.cpp
kPurgeableMemoryBlock_mac.cpp
kPurgeableMemoryBlock_none.cpp
d9ef3a21d4b4c51c4798547505a76a891d50673a 15-Mar-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Create a platform-dependent object for accessing purgeable memory.

Siphoned off from https://codereview.chromium.org/12433020/

Create a Skia class which can provide purgeable memory in a platform-
dependent way. Include an implementation for Ashmem and Mac/iOS.

Review URL: https://codereview.chromium.org/12645006

git-svn-id: http://skia.googlecode.com/svn/trunk@8176 2bbb7eff-a529-9590-31e7-b0007b416f81
kPurgeableMemoryBlock_android.cpp
kPurgeableMemoryBlock_mac.cpp
kPurgeableMemoryBlock_none.cpp
c49cabfe5cddc1691a00f713ae1b077d9409389f 15-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8168 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
0e8eee7b8a8396cef4cf6f87081cd5364f141de5 14-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add (dummy) SkFontHost::GetFileName (to fix build, will soon be deprecated)



git-svn-id: http://skia.googlecode.com/svn/trunk@8159 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kFontHost_win_dw.cpp
fed86bdb8b9f037439bbfa7cdbd53a581dbc5985 14-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move most of SkFontHost to private (preceeding making it all private)

In this change, have to accomodate PDF wanting to call openStream and advancedMetrics
Review URL: https://codereview.chromium.org/12739006

git-svn-id: http://skia.googlecode.com/svn/trunk@8156 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
dcf9c19d38d366a9f27ad0d8b5bda327c5edb164 13-Mar-2013 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Always set the symbolic Flag for Fonts.

This should fix Chrome bug 124572

Review URL: https://codereview.appspot.com/7631045

git-svn-id: http://skia.googlecode.com/svn/trunk@8136 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
0b8a2fe2cde14d15dec1b8252d0f328312f9e59c 13-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> comment out debugging printfs



git-svn-id: http://skia.googlecode.com/svn/trunk@8127 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
059a4c70d7eb6556c123e529259aaffe7214164d 13-Mar-2013 commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> refactor android defines to implicitly assume NDK compliance unless it is explicitly marked as being specific to the android framework.


Author: djsollen@google.com

Reviewed By: reed@google.com,borenet@google.com

Review URL: https://chromiumcodereview.appspot.com/12739007

git-svn-id: http://skia.googlecode.com/svn/trunk@8124 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
1a64a54b278c07b33a3b5e8883b1fdf3173c840e 12-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add (temp) SkFontLCDConfig class to hold LCD getters/setters. This will allow
us to make SkFontHost.h private (once webkit switches to the SkFontLCDConfig api)

Stage 2 is to either move this code into chrome/webkit, or change the callers to
perform their own globals management.
Review URL: https://codereview.chromium.org/12623011

git-svn-id: http://skia.googlecode.com/svn/trunk@8107 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
d1c7f71ee371738a8c7896a4f06d28b32e3c713e 11-Mar-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use correct metrics for GDI glyphs.
https://codereview.appspot.com/7635045/

This will require rebaselining all GMs using GDI text.
On the Chromium side this will require rebaslining
fast/writing-mode/Kusa-Makura-background-canvas.html


git-svn-id: http://skia.googlecode.com/svn/trunk@8069 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
e0e385c1d4171e065348ba17c546b3463a0bd651 11-Mar-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Removed unused parameters

I removed unused parameters wherever it was trivial to do so.
Review URL: https://codereview.chromium.org/12469002

git-svn-id: http://skia.googlecode.com/svn/trunk@8068 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_sandbox_none.cpp
4bd2bdbf04f21237337616aa931e34d7c8991edc 08-Mar-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream changes from Android.

Review URL: https://codereview.chromium.org/12699002

git-svn-id: http://skia.googlecode.com/svn/trunk@8045 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
b58772f86659cfe0e8d9247fcee878dddd8fdad9 08-Mar-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> PDF: add support for named destinations.

Landing patchset 7 from https://codereview.appspot.com/7374052 for dml@google.com
Review URL: https://codereview.chromium.org/12533009

git-svn-id: http://skia.googlecode.com/svn/trunk@8034 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
9c55f801a35b0d6c39f007fae432bd13094f3c52 07-Mar-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixing some warnings on Linux

There were only a few warnings left, so I fixed them and enabled the unused variable warning by removing the "-Wno-unused" flag. Only the -Wno-unused-parameter remains for now (could be removed later).
Review URL: https://codereview.chromium.org/12480002

git-svn-id: http://skia.googlecode.com/svn/trunk@8030 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
8890af397e006a0e35a59271a288f72829d0e8a3 07-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Restart va_list in SkDebugf on win32.
Review URL: https://codereview.chromium.org/12457019

git-svn-id: http://skia.googlecode.com/svn/trunk@8023 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_win.cpp
f910d3b23bcf590ee937628dbab8e39a98ee5860 07-Mar-2013 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make GrGLEffects use an interface to append their code.

A small step towards encapsulating GrGLShaderBuilder.
Review URL: https://codereview.chromium.org/12547012

git-svn-id: http://skia.googlecode.com/svn/trunk@8018 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_stdio.cpp
kDebug_win.cpp
8c9737e114f13ce393f2c582b2567ac4b3e530e7 06-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change FontIdentity to explicitly hold ttcIndex and ID, so we can use both in the
IPC version in chrome.



git-svn-id: http://skia.googlecode.com/svn/trunk@8005 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_fontconfig.cpp
64334352cc3f29f52dfa07225d65eb218d2fd830 06-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@8003 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
812b6f59fafc213260a56a4a4264ebf23646f662 06-Mar-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r8000 due to failures on some buildbots

git-svn-id: http://skia.googlecode.com/svn/trunk@8001 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
1cad898916c9e4a21429b5325c834a51fa6f361e 06-Mar-2013 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> PDF: add support for named destinations

Imported from https://codereview.appspot.com/7374052/ on behalf of dml@google.com
Review URL: https://codereview.chromium.org/12466008

git-svn-id: http://skia.googlecode.com/svn/trunk@8000 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
ee38c08b0769fbe06887b50469dc97b8ebc6d868 05-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add ttcIndex parameter to calls to SkFontStream



git-svn-id: http://skia.googlecode.com/svn/trunk@7999 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_tables.cpp
5bfc8396228b7a9e5be679aeb10f30860adf938f 05-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> start to plumb ttcIndex into fonthost. For now just add to SkFontStream and its callers.
Review URL: https://codereview.chromium.org/12485002

git-svn-id: http://skia.googlecode.com/svn/trunk@7998 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
66a58aca8379a33ccc7572a31c74a3334d08b47c 05-Mar-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed a few warnings

Removed a few warnings from the Skia code.
Review URL: https://codereview.chromium.org/12469003

git-svn-id: http://skia.googlecode.com/svn/trunk@7996 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_FreeType_common.h
075b089b1b8c4063a5724b86f104e052a49289b2 05-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7976 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
kFontHost_tables.cpp
c75764ed4441a7a9ab5555824b7f5e7cc34ba368 04-Mar-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> If Ashmem cache fails pinCache, do not reallocate.

Review URL: https://codereview.chromium.org/12398021

git-svn-id: http://skia.googlecode.com/svn/trunk@7973 2bbb7eff-a529-9590-31e7-b0007b416f81
kAshmemImageCache.cpp
358f8ff47e4a6f1a43c4cf8d6ee1352b3de3ea43 04-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rely on libfontconfig to determine our default font



git-svn-id: http://skia.googlecode.com/svn/trunk@7967 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
d66045ec7d37720309dae4879efc01793c3e746a 04-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> export getter for global instance of fontconfiginterfacedirect



git-svn-id: http://skia.googlecode.com/svn/trunk@7963 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_fontconfig.cpp
822bde74b954df6ed91b01529477e7fd41716fff 04-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> implement fonthost table methods directly in fontconfig backend, _tables now relegated to
android and windows...
Review URL: https://codereview.chromium.org/12395015

git-svn-id: http://skia.googlecode.com/svn/trunk@7959 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
6ec97b6e4bb19b2f1aab4b21a41f482d46234089 04-Mar-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> refactor fonthost_tables into wrapper (fonthost) and impl (fontstream)



git-svn-id: http://skia.googlecode.com/svn/trunk@7958 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_tables.cpp
0c23faf222c24529781139495a5f4f4ab61f7cb2 03-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7948 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
b103ed4e39613cac823b94df3e5b0e92857d3b4d 03-Mar-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> eliminate atsuii/coretext distinction, and rename to just _mac



git-svn-id: http://skia.googlecode.com/svn/trunk@7947 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
fd21c6b29fc62308aa615711d065c668c0740cc0 03-Mar-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> try ~0U instead of ~0 to fix signed warning passing to size_t



git-svn-id: http://skia.googlecode.com/svn/trunk@7946 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
b753ef2ca9567eaccd9bda3e22b4abd6b4adeb58 03-Mar-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> pass ~0 for length when we want to know the length of a table (with dst==null)



git-svn-id: http://skia.googlecode.com/svn/trunk@7945 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
dc09f07671145b21c83de7153c9c9b950c871f1a 03-Mar-2013 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> move some of the impl in fonthost into typeface virtuals



git-svn-id: http://skia.googlecode.com/svn/trunk@7944 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
631cdcb4a6b926b6447f328b81911a4499fb3698 01-Mar-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7910 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_fontconfig.cpp
f71a2335f9b64442c65b45d1f703cd4ffb84129d 27-Feb-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use fontconfig fonthost for skia (in prep for using in chrome)
Review URL: https://codereview.chromium.org/12319150

git-svn-id: http://skia.googlecode.com/svn/trunk@7887 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_fontconfig.cpp
12eea2b10d6caaafe0a207d10b1e9322510983a2 27-Feb-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7875 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
ee619a059a2cd7259226dc0c86a000e3bf5834de 26-Feb-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix getFamilyName by calling FcFreeTypeQuery



git-svn-id: http://skia.googlecode.com/svn/trunk@7874 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_fontconfig.cpp
8d33a24cfe4540126ae00618cc691c610d398d8d 26-Feb-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> implement CreateTypefaceFromFile



git-svn-id: http://skia.googlecode.com/svn/trunk@7869 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
b1c65b62bf276872ab4f9da7569ea7f0899a3569 26-Feb-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> git-svn-id: http://skia.googlecode.com/svn/trunk@7863 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontConfigInterface_direct.cpp
kFontHost_fontconfig.cpp
5ca3bd0cbb34cb4e61c0ea3591a4967ee1d6140a 26-Feb-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7857 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
80f5465083bdc5449223f5875b401648616e8e09 25-Feb-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> git-svn-id: http://skia.googlecode.com/svn/trunk@7856 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
d71fe99fe4d54230572223915166bea8efd67d85 25-Feb-2013 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check-point: skiafy SkFontHost_fontconfig from chrome



git-svn-id: http://skia.googlecode.com/svn/trunk@7852 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
f8d7d2731318cdf510ab68e6b3f5ec68ab22c8e2 22-Feb-2013 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Create SkLazyPixelRef which performs lazy decoding.

The new pixel ref behaves similarly to SkImageRef, with some key differences:
It does not depend on the images project.
It requires an SkImageCache, which handles allocation and caching of the pixel
memory.
It takes a function signature for decoding which decodes into already allocated
pixel memory rather than into an SkBitmap.

Add two implementations of SkImageCache: SkLruImageCache and SkAshmemImageCache.

Replace SkSerializationHelpers::DecodeBitmap with SkPicture::InstallPixelRefProc,
and update sites that referenced it.

SkBitmapFactory now sets the pixel ref to a new object of the new
class SkLazyPixelRef, provided it has an SkImageCache for caching.

Provide an option to do lazy decodes in render_pictures and bench_pictures.

SkPicture:
Eliminate the default parameters in the constructor.
If a proc for decoding bitmaps is installed, use it to decode any encoded
data in subpictures.
When parsing deserializing subpictures, check for success.
When serializing subpictures, pass the picture's bitmap encoder to the
subpicture's call to serialize.

Update BitmapFactoryTest to test its new behavior.

BUG=https://code.google.com/p/skia/issues/detail?id=1008
BUG=https://code.google.com/p/skia/issues/detail?id=1009

Review URL: https://codereview.appspot.com/7060052

git-svn-id: http://skia.googlecode.com/svn/trunk@7835 2bbb7eff-a529-9590-31e7-b0007b416f81
kAshmemImageCache.cpp
efbe8e9bedda21a3e061ebf3d96431a0f250a654 07-Feb-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix errors when compiling with -Wall -Werror on Android.

This CL also turns those features on by default on Android

Review URL: https://codereview.appspot.com/7313049

git-svn-id: http://skia.googlecode.com/svn/trunk@7645 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostConfiguration_android.cpp
kFontHost_android.cpp
60a9b8e11b10563167107cebafd1cc25d825d7b1 04-Feb-2013 Derek Sollenberger <djsollen@google.com> Merge Skia @7527

Conflicts resolved in:
include/gpu/GrBackendEffectFactory.h
src/core/SkPaint.cpp
src/effects/gradients/SkLinearGradient.cpp
src/ports/FontHostConfiguration_android.cpp

Change-Id: I5ad1f8f99f8fdbc26c5f98861701dd0c1cee82fa
d686ac77c2c485c4a3302eda9c1de597a6f8c568 04-Feb-2013 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@7527

Change-Id: I83c7c2152f5d2c303b4655a5a604f513a54f350a
ontHostConfiguration_android.cpp
kDebug_nacl.cpp
kDebug_stdio.cpp
kDebug_win.cpp
kFontDescriptor.cpp
kFontDescriptor.h
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_ascender.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_tables.cpp
kFontHost_win_dw.cpp
kGlobalInitialization_default.cpp
kHarfBuzzFont.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
kMemory_malloc.cpp
kMemory_mozalloc.cpp
kOSFile_stdio.cpp
kThread_pthread.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
528a556514fddfd1275cda9f2c2af17abc02c693 01-Feb-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix android errors when unflattening an SkImageRef_ashmem object.

Review URL: https://codereview.appspot.com/7228071

git-svn-id: http://skia.googlecode.com/svn/trunk@7514 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
3b0a9fe5672e7339ec3e5e6d3986b15f57ae24e7 31-Jan-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update filter tool to allow more flexible filtering

https://codereview.appspot.com/7227055/



git-svn-id: http://skia.googlecode.com/svn/trunk@7492 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontDescriptor.cpp
kFontDescriptor.h
5b33211c5edafde82af781beaa1dbc295000a62f 30-Jan-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Start addressing the clang static analyzer issues

https://codereview.appspot.com/7249043/



git-svn-id: http://skia.googlecode.com/svn/trunk@7469 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
bd08473d9a700ba78a063848ff7f99f73badd258 29-Jan-2013 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Japanese font issue for devices running JB MR1 and higher.

Android JB MR1 is using a new format of /system/etc/fallback_fonts.xml.
This CL preserves backwards compatibility, while also recognizing the
new fallback_fonts.xml format ("lang" attrbiute in <file/>).

NOTE: This CL was originally sumbitted for Chrome on Android (m18)

Review URL: https://codereview.appspot.com/7226053

git-svn-id: http://skia.googlecode.com/svn/trunk@7448 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostConfiguration_android.cpp
e16efc1882ab34a0bb3ae361a2d37f840044cf87 26-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7406 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_nacl.cpp
kDebug_stdio.cpp
kDebug_win.cpp
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_ascender.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_tables.cpp
kHarfBuzzFont.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kMemory_malloc.cpp
kMemory_mozalloc.cpp
kThread_pthread.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
d1ed168faef8a7ed4c4b2e2b04b7658b57524907 22-Jan-2013 Derek Sollenberger <djsollen@google.com> resolved conflicts for merge of e1ac2e84 to master-chromium

Change-Id: Ied68be289bf5f54d51ddad5cf08fd2b1f1e8fedd
e1ac2e8430b502974a4a7c65989381763cab1b10 22-Jan-2013 Derek Sollenberger <djsollen@google.com> Fixes needed to run Skia in debug mode

Change-Id: I420c812b34ba41a3fc03db1f1276340954d379c1
kImageRef_ashmem.cpp
3f2d45aff69260fcf39d4eea8586387ed44402bb 18-Jan-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> (Relanding r7275 with assert fix, plus fixes from r7276, r7280, r7283.)

Implement a bicubic resampling image filter, with raster and GPU backends.
In order to get this to work on the GPU side, I had to modify the width and height of the drawn texture in drawSprite() and drawDevice() to use the filtered texture's dimensions, instead of the source texture. (This wasn't a problem before since all other image filters produce results the same dimensions as their input texture.)
For now, this implementation only does axis-aligned scaling (same as the Lanczos-3 implementation in Chrome). It's also done for correctness and clarity, not speed, so there are lots of opportunities for speedups.

Committed: https://code.google.com/p/skia/source/detail?r=7275

Review URL: https://codereview.appspot.com/7033049

git-svn-id: http://skia.googlecode.com/svn/trunk@7287 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
c51f752554f1f84d8f49b8cc00537b7d4cdb355b 18-Jan-2013 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reverting chain of SkBicubicImageFilter changes (7275, 7276, 7280 & 7283)



git-svn-id: http://skia.googlecode.com/svn/trunk@7285 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
744820e6576ec255c9454a561f21e2ef94e891ba 18-Jan-2013 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement a bicubic resampling image filter, with raster and GPU backends.
In order to get this to work on the GPU side, I had to modify the width and height of the drawn texture in drawSprite() and drawDevice() to use the filtered texture's dimensions, instead of the source texture. (This wasn't a problem before since all other image filters produce results the same dimensions as their input texture.)
For now, this implementation only does axis-aligned scaling (same as the Lanczos-3 implementation in Chrome). It's also done for correctness and clarity, not speed, so there are lots of opportunities for speedups.

Review URL: https://codereview.appspot.com/7033049

git-svn-id: http://skia.googlecode.com/svn/trunk@7275 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
f892089516be024511acd5c8013e9bd305b7c25d 15-Jan-2013 Raph Levien <raph@google.com> am cfceaa81: Merge "Changes to Skia to support Harfbuzz NG"

* commit 'cfceaa81654c0b02a693e29d2763ef1540e55647':
Changes to Skia to support Harfbuzz NG
781cc76e0f1ebb06e0796a9237045ae9d4bddd21 15-Jan-2013 sugoi@google.com <sugoi@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implementation of the displacement effect (both CPU and GPU)

TEST=Added new GM called "displacement"
Review URL: https://codereview.appspot.com/7058075

git-svn-id: http://skia.googlecode.com/svn/trunk@7182 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
d386b0eb03b75e302906f2251bbb0aa28ce41a97 14-Jan-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove namespace qualifier for feof; it's making android unhappy

BUG=

Review URL: https://codereview.appspot.com/7106048

git-svn-id: http://skia.googlecode.com/svn/trunk@7169 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_stdio.cpp
18a48c3c1c1aa183a1b1ab033be34329685199f6 14-Jan-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> replace getline with fgets for portability

BUG=

Review URL: https://codereview.appspot.com/7085058

git-svn-id: http://skia.googlecode.com/svn/trunk@7163 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_stdio.cpp
7af56bee17764a0c118c8856a035bb3d27766969 14-Jan-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Runtime configuration system for skia. This will allow developers to control settings at launch time without relying on compile-time flags or recompilation. It can be used to turn features on and off, as well as to control numeric quantities to 'tune' algorithms. Once I make sure it's working across all platforms I'll send out a quick tutorial on its use.

Review URL: https://codereview.appspot.com/7098051

git-svn-id: http://skia.googlecode.com/svn/trunk@7158 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_stdio.cpp
c18143e89b8ef91cb0a3f64cb490ea765da3549f 11-Jan-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> SkImageDecoder_WIC should work on Win7 with Win8 SDK.
https://codereview.appspot.com/7099044/


git-svn-id: http://skia.googlecode.com/svn/trunk@7139 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
091f51b794e62942db47ccef6fef143ad1590d12 10-Jan-2013 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> DirectWrite generatePath must transform the path by the current matrix.
https://codereview.appspot.com/7061061/

This will require at least the shadertext2 gm for DirectWrite to be rebaselined.


git-svn-id: http://skia.googlecode.com/svn/trunk@7121 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
1d0f5a1e3b467fc2211e2a94b3806770b228b6e0 19-Dec-2012 Derek Sollenberger <djsollen@google.com> Merge Skia @6890

Change-Id: I12ae1c7ebdb566addf3d2783c8405793e842df8a
4e8ef337bc2343a7ed422558106dccfc0d073bde 08-Jan-2013 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@7072 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
0e51577a14f903ffeafa117a75954baeb173ffb9 07-Jan-2013 humper@google.com <humper@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix warning from scalar --> int32 conversion

BUG=

Review URL: https://codereview.appspot.com/7065050

git-svn-id: http://skia.googlecode.com/svn/trunk@7061 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
363e546ed626b6dbbc42f5db87b3594bc0b5944b 19-Dec-2012 Derek Sollenberger <djsollen@google.com> Snapshot from http://skia.googlecode.com/svn/trunk@6890

Change-Id: I40c1c8a08cc39102fe9f8b3f116206be17db12e2
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kDebug_android.cpp
kDebug_nacl.cpp
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_FreeType_common.h
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kGlobalInitialization_default.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageRef_ashmem.cpp
kOSFile_stdio.cpp
kThread_win.cpp
5bff6ec39f30f99a0029a498f5e4745badb960ba 15-Dec-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> if CG fails to decode an image, check to see if it was a problem in the colorspace



git-svn-id: http://skia.googlecode.com/svn/trunk@6830 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
dd335aeb5d34a8344f98244d722fd205b8e05135 13-Dec-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change to BDS license (as we did with all the other files that were Apache)
Review URL: https://codereview.appspot.com/6948045

git-svn-id: http://skia.googlecode.com/svn/trunk@6787 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
dbfac8a72393eaf01670aeb3244de0e18d8faf98 06-Dec-2012 junov@google.com <junov@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Defining new color constat for transparent color
Review URL: https://codereview.appspot.com/6901044

git-svn-id: http://skia.googlecode.com/svn/trunk@6696 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
6699e7ea2e981dccc2f3c41b5dcf1c860b11558d 06-Dec-2012 Jean-Baptiste Queru <jbq@google.com> Merge skia @5967

Change-Id: I8c637470b52c8277a781111c2ac2d1dcce7d84fa
80bacfeb4bda06541e8695bd502229727bccfeab 05-Dec-2012 Jean-Baptiste Queru <jbq@google.com> initial snapshot, trunk@5966

Change-Id: I5c9aa88bd82f150da9f5b1152bc2d5aa4baaabb2
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kDebug_android.cpp
kDebug_brew.cpp
kDebug_stdio.cpp
kDebug_win.cpp
kFontDescriptor.cpp
kFontDescriptor.h
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_FreeType_common.h
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_sandbox_none.cpp
kFontHost_simple.cpp
kFontHost_tables.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
kHarfBuzzFont.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageDecoder_empty.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
kMemory_brew.cpp
kMemory_malloc.cpp
kMemory_mozalloc.cpp
kOSFile_brew.cpp
kOSFile_stdio.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
kTime_Unix.cpp
kTime_win.cpp
kXMLParser_empty.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
f6c7e72c2c79537c4a56f5baefc79c073c80054e 05-Dec-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Clean up SkFontHost_mac_coretext.
https://codereview.appspot.com/6843087/


git-svn-id: http://skia.googlecode.com/svn/trunk@6676 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
4a9a612b5200597cca0bda0a356250835cbdc7d6 04-Dec-2012 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Pull SkMergeImageFilter out into its own file.

Review URL: https://codereview.appspot.com/6873052

git-svn-id: http://skia.googlecode.com/svn/trunk@6662 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
fe05df7f93ea22d80f8d48c21ae2b7f0ec7982de 03-Dec-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Provide default guess at font type in Mac CoreText font host, since CT's detection is unreliable.


git-svn-id: http://skia.googlecode.com/svn/trunk@6658 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
1878a4ec0ffcef637efb7f066487d9328db8474a 03-Dec-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Templatize AutoCFRelease and use it.
https://codereview.appspot.com/6855113/


git-svn-id: http://skia.googlecode.com/svn/trunk@6650 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
47c88995b4f5aa347c5a092539087c00c5df7c53 01-Dec-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6640 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
70ffc9a82b4c1bff106d9633d6297e1d8be9c065 30-Nov-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add auto table ref for coretext.
https://codereview.appspot.com/6849117/


git-svn-id: http://skia.googlecode.com/svn/trunk@6634 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
687c57c7d5a17549f63e0b15208db18b220e2a91 29-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6594 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
ffd7907ba397e6c49f3cf8a2d4c2a451fbc0cbd6 28-Nov-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove what turns out to be a bogus assert.
Any problems with size are already handled by checking the return value of CFNumberGetValue.


git-svn-id: http://skia.googlecode.com/svn/trunk@6592 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
d59a3fed3f944684c73dbc6d6bfcd1920ca68633 28-Nov-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Write correct type of sfnt file in mac coretext open stream.
https://codereview.appspot.com/6844105/


git-svn-id: http://skia.googlecode.com/svn/trunk@6590 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
5f0add3ad6e1d6129307276c81ba6624f92ca112 26-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove legacy build-guards, now that webkit has rebaselined these.

SK_DISABLE_FAST_AA_STROKE_RECT
SK_IGNORE_FAST_BLURRECT
SK_DISABLE_EXTRACTSUBSET_OPAQUE_FIX
SK_IGNORE_CF_OPTIMIZATION
SK_IGNORE_NEW_STROKERECT
SK_DISABLE_GPU_BLUR
SK_IGNORE_ROTATED_FREETYPE_FIX

The changes should all be:

remove code for #ifdef
remove guard for #ifndef
Review URL: https://codereview.appspot.com/6858073

git-svn-id: http://skia.googlecode.com/svn/trunk@6546 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
b0a327e9390da5865d4c56db5e5259adc3380d37 21-Nov-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@6521 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
4e7ba6ae4a8ccc00eb140a3ef4fd8bcfd73a6b07 20-Nov-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Correct A8 gamma on Mac.
This fixes https://code.google.com/p/chromium/issues/detail?id=161728 .
https://codereview.appspot.com/6851086/


git-svn-id: http://skia.googlecode.com/svn/trunk@6511 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
276a2956f58b5baaa7a173daf1da163856099d71 19-Nov-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add support for SkImageRef_ashmem.

This requires copying the ashmem utility wrapper functions from a
private android library into our source tree in order to be NDK
compliant.

Review URL: https://codereview.appspot.com/6846076

git-svn-id: http://skia.googlecode.com/svn/trunk@6488 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageRef_ashmem.cpp
7a722f0ebf6acfd02899bc30a5529d0b23b3ffae 15-Nov-2012 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> silence excessive printf noise from SkScalerContext_FreeType::generateMetrics for glyph out-of-range.



git-svn-id: http://skia.googlecode.com/svn/trunk@6426 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
59bfb1240666b0f70109ac8ab04a280765ff8563 08-Nov-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update WIC Image decoder to unpremul colors before save

https://codereview.appspot.com/6826069/



git-svn-id: http://skia.googlecode.com/svn/trunk@6349 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
52e91bf56444f3ac4378feac7a42a157b9afaf9c 07-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check to see if CGImage already knows if we're opaque
Review URL: https://codereview.appspot.com/6838043

git-svn-id: http://skia.googlecode.com/svn/trunk@6340 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
2a7579d11796866b0026755ab52597d09f4509cc 07-Nov-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> CG imagedecoder never sets isOpaque, so add method to SkBitmap to compute that,
and call it from CG imagedecoder.
Review URL: https://codereview.appspot.com/6816101

git-svn-id: http://skia.googlecode.com/svn/trunk@6334 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
9daf96afb34313842d8d2c4abca73d954d2e9005 06-Nov-2012 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Break out SkOffsetImageFilter into its own file, and derive it from
SkSingleInputImageFilter, to make it DAG-friendly.

Review URL: https://codereview.appspot.com/6822086

git-svn-id: http://skia.googlecode.com/svn/trunk@6315 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
b13d63c4c0878a3de7230f79a7044830c93d3849 06-Nov-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Minimal changes to SkFontHost_fontconfig to not crash in normal use.


git-svn-id: http://skia.googlecode.com/svn/trunk@6312 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
7158e6acca1b1ecc321d4d514a31cba11b5ead60 01-Nov-2012 borenet@google.com <borenet@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Improve NaCl support

- Add nacl_make script to build Skia targets for NaCl using gyp
- Add nacl_interface for command-line apps
- Add nacl_sample as front-end for SampleApp
- Add freetype to DEPS
- Various gyp tweaks for NaCl

TODO:
- Implement GL interface
- Implement font host
- Fix plumbing so that SampleApp works properly
Review URL: https://codereview.appspot.com/6671044

git-svn-id: http://skia.googlecode.com/svn/trunk@6245 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_nacl.cpp
6e7251669cc57515fd2783865fc1cdd49b8b6b9a 01-Nov-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkToBool to fix a warning.

Review URL: https://codereview.appspot.com/6818069

git-svn-id: http://skia.googlecode.com/svn/trunk@6240 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_stdio.cpp
7103f182ce61280eacb35f1832df350b642a5381 31-Oct-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> GDI fonthost to serialize using correct font name.
https://codereview.appspot.com/6822060/


git-svn-id: http://skia.googlecode.com/svn/trunk@6227 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
c12e37c1ce6c98018ea28cb0e09302297f1a33b3 30-Oct-2012 Raph Levien <raph@google.com> Changes to Skia to support Harfbuzz NG

This version of the patch supports both old and new Harfbuzz (the former
is still needed for WebView).

Change-Id: Id438a5dd7f9fe4a7deca3cb6fb8521eb757b10e4
kFontHost_android.cpp
e8ebeb1f8fde6525bbab988c6090a5d3ab19855b 29-Oct-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add option to gm: write out images into a hierarchy, rather than a flat set of files
BUG=https://code.google.com/p/skia/issues/detail?id=743
Review URL: https://codereview.appspot.com/6810047

git-svn-id: http://skia.googlecode.com/svn/trunk@6167 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_stdio.cpp
a76de72a6036da0a6b051b14411b80941971f881 26-Oct-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Clean up usage of mask gamma.
https://codereview.appspot.com/6749061/


git-svn-id: http://skia.googlecode.com/svn/trunk@6151 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_FreeType_common.h
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
0e363109199198e21237fa4e8314094917e62640 25-Oct-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix WIN64 break from variable redefinition.

Review URL: https://codereview.appspot.com/6782047

git-svn-id: http://skia.googlecode.com/svn/trunk@6129 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_win.cpp
93897637bc65eab919be40ec4b1b2c3242179b24 25-Oct-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a callback to cleanup TLS data on Windows.

Add a test to ensure that it works.

BUG: http://code.google.com/p/skia/issues/detail?id=939

Review URL: https://codereview.appspot.com/6785045

git-svn-id: http://skia.googlecode.com/svn/trunk@6126 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_win.cpp
64d294dbef7c2f90f05a393f6b9b7997e0aaa9b9 23-Oct-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Enable Android executables (like skia_launcher) to redirect SkDebugf output to stdout as well as the system logs.

Review URL: https://codereview.appspot.com/6733065

git-svn-id: http://skia.googlecode.com/svn/trunk@6059 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_android.cpp
ce8a195111246e2f84d1414f78e6c2112d9f8ee9 22-Oct-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Fix index calculation for Type1 advance retrieval.

This should fix http://crbug.com/154590

Review URL: https://codereview.appspot.com/6736064

git-svn-id: http://skia.googlecode.com/svn/trunk@6034 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
fb2fdcca206fbcac6254a9524c2d06dc98dd5421 17-Oct-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> wrap check for gLCDSupported w/ a guard, so we don't have to grab the mutex
on every call to FilterRec.
Review URL: https://codereview.appspot.com/6713052

git-svn-id: http://skia.googlecode.com/svn/trunk@5978 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
77465f9c801401f614870b5243869f4cf17346dd 15-Oct-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Avoid deadlock in SkGetFallbackFamilyNameForChar().

The deaklock happened when SkFontHost::CreateTypefaceFromStream() is called
indirectly from SkGetFallbackFamilyNameForChar().

This commits a change that was submitted for review by...
wangxianzhu1 @ https://codereview.appspot.com/6654051/

Review URL: https://codereview.appspot.com/6690044

git-svn-id: http://skia.googlecode.com/svn/trunk@5956 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
62566f361f44bfaefcef69c2a6635aabdc44361b 13-Oct-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change FreeType lcd filter to provide better results.
https://codereview.appspot.com/6652046/

Will require rebaselines on systems using lcd smoothed FreeType.


git-svn-id: http://skia.googlecode.com/svn/trunk@5944 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
cb1bbb375aa4fdd099dc60302ca1712f04607782 12-Oct-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fonts with cubic outlines are rendered without ClearType by GDI.
https://codereview.appspot.com/6643060/


git-svn-id: http://skia.googlecode.com/svn/trunk@5929 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
027038a534dc218262e5693dba9fa5aa2f9ca119 11-Oct-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Turn off some debugging statements.

Review URL: https://codereview.appspot.com/6646044

git-svn-id: http://skia.googlecode.com/svn/trunk@5903 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
515899eb2f6fbcea05b68ff13ff412c20e9e06f4 11-Oct-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> CreateTypefaceFromFile for GDI.
https://codereview.appspot.com/6658045/


git-svn-id: http://skia.googlecode.com/svn/trunk@5901 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
bae1712d2ec48671d59d08b292f118be7edf6dd8 09-Oct-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Disable automatic font fallback of SkFontHost_android when building for WebKit

The internal font fallback mechanism prevents WebKit from getting
the properties of the actually used font. Disable the internal fallback
mechanism when building for WebKit and add SkGetFallbackFamilyNameForChar()
to let the upper level know the fallback font for individial characters.

This commits a change that was submitted for review by...
wangxianzhu1 @ https://codereview.appspot.com/6572059/

BUG=913 (http://code.google.com/p/skia/issues/detail?id=913)

Review URL: https://codereview.appspot.com/6640048

git-svn-id: http://skia.googlecode.com/svn/trunk@5866 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
e21a68df5b9cb0fb7840fbc2a1b71c3a42be8a16 08-Oct-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix typo in SkFontHost_win_dw.cpp.


git-svn-id: http://skia.googlecode.com/svn/trunk@5850 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
a18ed032186e9a52899d9cb51d67b9bf6cace492 06-Oct-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5848 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
ffca6ce0e20665624b764ca6977b5acfda30931f 05-Oct-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> No hinting on Mac should be lower priority than subpixel rendering.
https://codereview.appspot.com/6612056/


git-svn-id: http://skia.googlecode.com/svn/trunk@5836 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
3f5d682191c044005345e09bdd2fd14a4d0171c2 05-Oct-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> cleanup coding style for r5825

Review URL: https://codereview.appspot.com/6621054

git-svn-id: http://skia.googlecode.com/svn/trunk@5829 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
6f1dbff980d6d9717d9207585bab83be7f2ff73d 05-Oct-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Reduce Android Log Spam.

The logging of system fonts is now hidden behind a #define

Review URL: https://codereview.appspot.com/6609048

git-svn-id: http://skia.googlecode.com/svn/trunk@5825 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
5a7c6be72b940dde8ff6ad2485a09aecd56a2660 04-Oct-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add the ability to provide function pointers to SkPicture serialization
and deserialization for encoding and decoding bitmaps.

Remove kForceFlattenBitmapPixels_Flag, which is no longer used.

When an SkOrderedReadBuffer needs to read a bitmap, if it does not
have an image decoder, use a dummy bitmap.

In GM, add a tolerance option for color differences, used when
testing picture serialization, so it can assume two images are the
same even though PNG encoding/decoding may have resulted in small
differences.

Create dummy implementations for SkImageDecoder and SkImageEncoder
functions in SkImageDecoder_empty so that a project that does not
want to include the images project it can still build.

Allow ports to build without images project.

In Mac's image encoder, copy 4444 to 8888 before encoding.

Add SkWriter32::reservePad, to provide a pointer to write non 4 byte
aligned data, padded with zeroes.

In bench_ and render_ pictures, pass decode function to SkPicture
creation from a stream.

BUG=https://code.google.com/p/skia/issues/detail?id=842

Review URL: https://codereview.appspot.com/6551071

git-svn-id: http://skia.googlecode.com/svn/trunk@5818 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
kImageDecoder_CG.cpp
kImageDecoder_empty.cpp
94bc60f9864094edbfb787b09c963d8818c8962f 04-Oct-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Lock gFTMutex when modifying FT globals.

This prevents a crash when running bench_pictures with multiple threads.

Also remove an unused function and fix a typo in SkFontHost.
Review URL: https://codereview.appspot.com/6625043

git-svn-id: http://skia.googlecode.com/svn/trunk@5816 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
22b460cef604c4737b9e221901e1940681255c01 29-Sep-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Periodic_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5735 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
67a97b3a564bd399258b19dc616dc77edc5e2c66 28-Sep-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> No hinting with CG should prevent outline dilation.
https://codereview.appspot.com/6568065/

Will require some rebaselines on mac.


git-svn-id: http://skia.googlecode.com/svn/trunk@5728 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
2cf84ec1e15fe69ca8840eab9e32708b81b95c90 26-Sep-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Load more fonts on Linux.
https://codereview.appspot.com/6569061/


git-svn-id: http://skia.googlecode.com/svn/trunk@5704 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
8ff8a1959f514b969198ec2242c7de57fbf413cd 25-Sep-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Vertical metrics for FreeType.
https://codereview.appspot.com/6554064/


git-svn-id: http://skia.googlecode.com/svn/trunk@5677 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
9c1f88b83a41904064023c69f3f0eb67548f4e80 25-Sep-2012 Derek Sollenberger <djsollen@google.com> Update Skia's handling of vertical text when freetype metrics are available.

This is a cherry-pick of a larger change going into upstream Skia at...
https://codereview.appspot.com/6554064/

bug: 7124435
Change-Id: Id8b030afaf493741e133b592a4e08a3fd90ec2f3
kFontHost_FreeType.cpp
594dd3cd78e2f970d53bb0934fbbb63b41e1d40c 24-Sep-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> iOS support work in progress

include/core/SkTypes.h
- address unsigned warning

include/core/SkInstCnt.h
src/core/SkInstCnt.cpp
gyp/common.gypi
- always define SK_ENABLE_INST_COUNT for debug builds

src/views/mac/SkNSView.mm
- only call glClear if there is a GL context

src/ports/SkImageDecoder_CG.cpp
- fix iOS hack by using proper include

gyp/opts.gyp
- exclude more ARM files from iOS for now (see issue 900)

gyp/common_conditions.gypi
- add release, more ios specific common settings

gyp/bench.gyp
- add iOS condition

gyp/SampleApp.gyp
- remove precompiled header, hardcoded SDK path
- add more frameworks

gyp/debugger.gyp
- fix syntax error
- add iOS/Android condition

gyp/core.gyp
- remove hardcoded SDK path, add more frameworks

gyp/common_variables.gypi
- add ios SDK path
- add ios SDK version

gyp/iOSSampleApp.gyp
- remove obsolete project

gyp/zlib.gyp
- add ios library path
Review URL: https://codereview.appspot.com/6551070

git-svn-id: http://skia.googlecode.com/svn/trunk@5649 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
a0c2bc24381fea063008f9c8823756eb020603b3 21-Sep-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make flattenables no longer depend on global static initializers.

Instead, force all builds to call InitializeFlattenables.

Remove the make_debugger script, which was created to force
rebuilding without global static initializers so that all flattenables
would be linked. It is no longer necessary since all flattenables
will be linked thanks to InitializeFlattenables, which now can (and
must) be called when global static initializers are turned on.

BUG=https://code.google.com/p/skia/issues/detail?id=903
BUG=https://code.google.com/p/skia/issues/detail?id=902

Review URL: https://codereview.appspot.com/6548044

git-svn-id: http://skia.googlecode.com/svn/trunk@5642 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
kImageRef_ashmem.cpp
b4ca9df976951adf632388371f9a8a9219d93014 20-Sep-2012 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Yet another speculative Android fix. Unreviewed.



git-svn-id: http://skia.googlecode.com/svn/trunk@5600 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
35f5ac9738b938e4f4cf3e575f7cc095fa1f59b0 18-Sep-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update gyp files to build on iOS

Note that there's a hack in SkImageDecoder_CG.cpp --
the necessary defines are included directly. This
is temporary until I can figure out how to include
them properly.
Review URL: https://codereview.appspot.com/6523044

git-svn-id: http://skia.googlecode.com/svn/trunk@5586 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
0729b623730983821ef53fad9c988bad030509ed 17-Sep-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix a Ref count bug in SkFontHost_win_dw.cpp
https://codereview.appspot.com/6495133


Props tinytail.


git-svn-id: http://skia.googlecode.com/svn/trunk@5568 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
9548be3badb2e542035a20070cdfcd39e633f048 14-Sep-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> landing https://codereview.appspot.com/6506117



git-svn-id: http://skia.googlecode.com/svn/trunk@5549 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
ca0ec4c65a83b0ac6e9093d519d36539fc8fdf19 13-Sep-2012 george@mozilla.com <george@mozilla.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Check if SK_BUILD_FOR_MAC is defined rather than whether it's 1

git-svn-id: http://skia.googlecode.com/svn/trunk@5532 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
1f1543f012b8834ea760175a023eb127bde2b895 12-Sep-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> re-apply 5508, but with the new compile-flag disabled for now



git-svn-id: http://skia.googlecode.com/svn/trunk@5516 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
d8a6cc814f1a0a8faaddad05ae765ad2f6b11aac 12-Sep-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make texteffects gm work through serialization and pipe.

Move Line2DPathEffect (now Sk_) into a separate header file so it can
be shared and initialized.

Switch to the shared version in SampleAll and SampleSlides.

Remove the skip pipe flag from texteffects, since it can now be serialized.

I have a separate change to turn serialization on by default at https://codereview.appspot.com/6498121/

Review URL: https://codereview.appspot.com/6503106

git-svn-id: http://skia.googlecode.com/svn/trunk@5512 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
bfe1572f2484cb928a17b4c45ed2d094e3e57e17 12-Sep-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert 5508 -- it broke most of the builds

Use http://skia.googlecode.com/svn/buildbot/buildbots.html to see the state of the build.



git-svn-id: http://skia.googlecode.com/svn/trunk@5511 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
1f8787a99f15e37c40a1260c9c456ed91f11ba15 12-Sep-2012 wjmaclean@chromium.org <wjmaclean@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Using the device scale factor for glyph positioning

The master bug is http://code.google.com/p/chromium/issues/detail?id=138101 .
The corresponding WebKit changes for this CL are here:
https://bugs.webkit.org/show_bug.cgi?id=96137

BUG=

Review URL: https://codereview.appspot.com/6506099

git-svn-id: http://skia.googlecode.com/svn/trunk@5508 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
8d7d052ca4120f8fe89fd129003f6298d3d042d5 10-Sep-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> land https://codereview.appspot.com/6492099/ -- fix for iOS



git-svn-id: http://skia.googlecode.com/svn/trunk@5474 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
b9e4c5d82b449c9ecad79b8250e590de39369750 04-Sep-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream Clank's SkFontHost_Android DRT infinite loop fix.

We may have to do future work to reconcile this with Android native; probably pending
Android OS adding a font manager API.

http://codereview.appspot.com/6497081/



git-svn-id: http://skia.googlecode.com/svn/trunk@5386 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
2ebe890282a58bf0e5e61f05f1a660bbcaf62e08 04-Sep-2012 borenet@google.com <borenet@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix compile error in SkFontHost_none.cpp
Review URL: https://codereview.appspot.com/6501083

git-svn-id: http://skia.googlecode.com/svn/trunk@5383 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_none.cpp
94acfb5b9da462edb0f9923df37d2fbf3b7dde28 31-Aug-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Serialization for DirectWrite
https://codereview.appspot.com/6494061/


git-svn-id: http://skia.googlecode.com/svn/trunk@5368 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
a27096b4740775ae141fd0abaf456d706065c5ee 30-Aug-2012 skia.committer@gmail.com <skia.committer@gmail.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Sanitizing source files in Skia_Nightly_House_Keeping

git-svn-id: http://skia.googlecode.com/svn/trunk@5346 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
c07448fd72cb60c4b758d07255ae35f1451eafa4 29-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check for exceeding int range when we stash the values in the cache



git-svn-id: http://skia.googlecode.com/svn/trunk@5339 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
57cdcc091bf8ff4c6da90c6dac8ca3780bfe3b3c 29-Aug-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change Arabic sample character from 0x0600 to 0x0627.

Arabic font on some devices doesn't have 0x0600 glyph and is not correctly
handled by complex text path.

BUG=6772513

Review URL: https://codereview.appspot.com/6497053

git-svn-id: http://skia.googlecode.com/svn/trunk@5336 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
8b6d6286b6caf3b72ad639d9c721f3afdb3cc936 28-Aug-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Normalize font BBox to make sure it's correct when rendering a PDF on the mac.

Original CL by abodenha@chromium.org: https://codereview.appspot.com/6501049/
BUG=crbug.com/124572

Review URL: https://codereview.appspot.com/6492048

git-svn-id: http://skia.googlecode.com/svn/trunk@5325 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
1bfe01d06b896eca94c80d9af9a6bb30216b5e42 28-Aug-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> When creating gray from lcd, use luminance instead of coverage.
https://codereview.appspot.com/6496048/


git-svn-id: http://skia.googlecode.com/svn/trunk@5318 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
cb39ee645a32b7e15a813672ac0acfd7e8dc114b 27-Aug-2012 george@mozilla.com <george@mozilla.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a new SkMemory implementation that uses mozalloc instead of malloc

git-svn-id: http://skia.googlecode.com/svn/trunk@5292 2bbb7eff-a529-9590-31e7-b0007b416f81
kMemory_mozalloc.cpp
fd668cfffe3fdcfbf6e0b858343a62818d337590 24-Aug-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix greenish text rendering on Linux.
https://codereview.appspot.com/6484048/


git-svn-id: http://skia.googlecode.com/svn/trunk@5280 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
d912ca419927e8548e9e931156bbbc81f26969ae 23-Aug-2012 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Proper Android fix, and revert of workaround in r5267. Unreviewed.



git-svn-id: http://skia.googlecode.com/svn/trunk@5269 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
d6176b0dcacb124539e0cfd051e6d93a9782f020 23-Aug-2012 rmistry@google.com <rmistry@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Result of running tools/sanitize_source_files.py (which was added in https://codereview.appspot.com/6465078/)

This CL is part II of IV (I broke down the 1280 files into 4 CLs).
Review URL: https://codereview.appspot.com/6474054

git-svn-id: http://skia.googlecode.com/svn/trunk@5263 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontDescriptor.cpp
kFontDescriptor.h
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_ascender.cpp
kFontHost_freetype_mac.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
kFontHost_win_dw.cpp
kGlobalInitialization_default.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
kThread_pthread.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
c59b5dac9081e3613ed80d8b6d498e093c03eb87 23-Aug-2012 george@mozilla.com <george@mozilla.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split out SkFontHost_FreeType into common files

Review URL: https://codereview.appspot.com/6442092

git-svn-id: http://skia.googlecode.com/svn/trunk@5246 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_common.cpp
kFontHost_FreeType_common.h
35c5ff0be81f2bbba9a7f31b055124a51e6168f4 22-Aug-2012 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Android build fix (unreviewed).



git-svn-id: http://skia.googlecode.com/svn/trunk@5236 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
b2ee33c535720d066dd0d51f38686517efa34f2a 22-Aug-2012 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implements the non-Porter-Duff compositing modes required for SVG's feBlend
element. This filter has two inputs, since normal blending can't be used. The
GPU side uses two filter stages to accomplish this: one to sample the
background, and one to sample the foreground and blend it.

Review URL: https://codereview.appspot.com/6463081/



git-svn-id: http://skia.googlecode.com/svn/trunk@5231 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
392e14eaaf952565e25e11b8e5133507e4e7d0d8 20-Aug-2012 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Android build fix; unreviewed.



git-svn-id: http://skia.googlecode.com/svn/trunk@5199 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
725b3e03acb91dc69296554932624b36612bd189 04-Jul-2012 Billy Hewlett <billyh@google.com> DO NOT MERGE Han Preference

Cherry-pick Id8c91ae0be6cad8a7ef77a0cd5803676290986c1 from master.

During font initialization, create a seperate fallback list for each
locale. At runtime, use the fallbacklist associated with the locale
set in the paint object. Fallback files are associated with locales in
fallback_fonts.xml. Multiple files can be associated with the same
locale, ordering within that langauge and apart from that language in
the fallback order is preserved.

This changelist also includes some refactoring, notably of the
functions that call getNextContext().

Change-Id: I121f0e491a522c4a8558a0066b2d8969fb8a3667
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
e8f0592ae8b37e94d99f49816eb22e9fafde6d86 16-Aug-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> DirectWrite font host for skia.
https://codereview.appspot.com/5417063/


git-svn-id: http://skia.googlecode.com/svn/trunk@5128 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win_dw.cpp
1bd2d67702a5c14011f02e23b3724965f82c4780 13-Aug-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Correctly linearize Windows AA from ClearType.
http://codereview.appspot.com/6446129/


git-svn-id: http://skia.googlecode.com/svn/trunk@5069 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
b8bf9ce1034cc5d50ff0945ba9841e113522b26c 13-Aug-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> (Attempt to) fix Android build from r5056, thanks to suggestion by senorblanco@.



git-svn-id: http://skia.googlecode.com/svn/trunk@5062 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
82aa7482cbf55ce6d42c692550cadee5e23146e4 13-Aug-2012 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a zoom filter to Skia. This will be used on ChromeOS to implement the screen magnifier.

Committed on behalf of zork@chromium.org

Review URL: http://codereview.appspot.com/6354065/


git-svn-id: http://skia.googlecode.com/svn/trunk@5056 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
d74e710c00700aea603d7843d3ff670043bb1c15 09-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove SkShape (unused)
Review URL: https://codereview.appspot.com/6461069

git-svn-id: http://skia.googlecode.com/svn/trunk@5033 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
27889877c0e3c909dd4afd7b5e7b1d58cbf61ae6 07-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> must include SkPath.h after restructure



git-svn-id: http://skia.googlecode.com/svn/trunk@4987 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
0c43266bac63bb4411e4b95b71436be0afac232d 07-Aug-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> need to explicitly include SkPath.h after refactoring



git-svn-id: http://skia.googlecode.com/svn/trunk@4982 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
c73dd5c6880739f26216f198c757028fd28df1a4 07-Aug-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update SkFlattenable buffers to be more modular.

This CL is an effort to stage the conversion to named
parameters for all SkFlattenable commands. This particular
stage only does the following two things...

1. Move flattenable buffers from SkFlattenable.h into
their own header.
2. Update and Add new read write methods for better clarity
and convenience.

BUG=

Review URL: https://codereview.appspot.com/6448095

git-svn-id: http://skia.googlecode.com/svn/trunk@4980 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageRef_ashmem.cpp
6385314686875ecb484d95b33fcbf08890b5144d 01-Aug-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Handle rgb_to_a8 when kGenA8FromLCD_Flag is set.


git-svn-id: http://skia.googlecode.com/svn/trunk@4889 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
fbb38cd17727043aa04957aa5edd7c9fec4d076a 01-Aug-2012 Raph Levien <raph@google.com> Merge "Fix bug 6888377: crash in GetUnitsPerEm on locale change" into jb-mr1-dev
e454fde2aeb9f50cae4ae6d3237aac6553540ff5 27-Jul-2012 Raph Levien <raph@google.com> Fix bug 6888377: crash in GetUnitsPerEm on locale change

The underlying problem is that no SkScalerContext objects existed at the
time shapeFontRun is called immediately after a locale change from en to
ja (apparently the dumping of the cache caused all these to be
deallocated), so gFTLibrary was null (and the call tio ref_ft_face
assumes that it's initialized).

There's a pattern for calls which might not necessarily be called from a
scaler context (GetAdvancedTypefaceMetrics is one such), to explicitly
check for an uninitialized library, and create one for the length of the
call if so. This patch changes GetUnitsPerEm to follow this pattern.

Change-Id: I19a4b6fa49fad0aeacc04bf971101aacca6bc94f
kFontHost_FreeType.cpp
97efada074e4806479f1350ab1508939c2fdcb53 30-Jul-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Gamma correcting masks.
https://codereview.appspot.com/6244068/


git-svn-id: http://skia.googlecode.com/svn/trunk@4841 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_gamma.cpp
kFontHost_gamma_none.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
k_predefined_gamma.h
ada448040f04bb4c8fae82fe839807ba45a85d61 30-Jul-2012 chudy@google.com <chudy@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Deserialization locks up multithreading fix.

Review URL: https://codereview.appspot.com/6448077

git-svn-id: http://skia.googlecode.com/svn/trunk@4824 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
d1280a29424e20a876a4995ff1446d57aac0289d 27-Jul-2012 Victoria Lease <violets@google.com> Reduce embolden effect.

Certain CJK glyphs become essentially unreadable when emboldened at
sizes used by common apps like News/Weather. Reducing embolden
strength slightly makes these glyphs much more readable without
sacrificing bold/normal weight differentiation.

Bug: 6712857
Change-Id: Iec1c478171e33751be1cddbaae6a8ec30bb6cbab
kFontHost_FreeType.cpp
b1047839e0f1fdd769340f199cedef732d51e1f6 25-Jul-2012 george@mozilla.com <george@mozilla.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use CGToScalar instead of SkFloatToScalar as CGFloat can be either double or float.

Review URL: https://codereview.appspot.com/6451049

git-svn-id: http://skia.googlecode.com/svn/trunk@4766 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
bbe50131413098bffed9186660c41f047d881596 24-Jul-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Split SkGlyph into its own header.
https://codereview.appspot.com/6434049/


git-svn-id: http://skia.googlecode.com/svn/trunk@4741 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
d074c3709afa6ea70888262a402603197d71dd11 18-Jul-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Need to apply matrix to advance in generateAdvance (as we already were in generateMetrics)
Fixes b/6833339
Expand existing unittest to detect this (we needed to set both scale and skew on the paint)



git-svn-id: http://skia.googlecode.com/svn/trunk@4647 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
b4fad178c792687c50683880bcfaf507d54b30ca 18-Jul-2012 Raph Levien <raph@google.com> Accurately calculate advances in general case. Fixes bug 6833339.

The advance values computed by generateAdvance() were inconsistent with
those computed by generateMetrics, because the fMatrix22 was being
applied in the latter but not former case. Since fMatrix22.xx is 1.0
almost all the time (the exception is only when skew and scale are both
applied), failures were rare.

This patch is an alternative to ag/#/c/207887, in that they both fix the
problem, but in different ways. That patch made fMatrix22.xx equal to
1.0 in almost all cases, while this one gives correct advance values
for arbitrary fMatrix22 values.

Change-Id: Iedfa36e884e3e3e2f078a5d4edfc82004a54e895
kFontHost_FreeType.cpp
50ccb0a73865b0d0f0dd48989dbf5aa4a27f4a72 16-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a skia method to perform an atomic add.

Complements sk_atomic_inc for when you want to increase by more than one.

This time, use the correct atomic add function on Windows.

Reviewed at https://codereview.appspot.com/6399050/

Review URL: https://codereview.appspot.com/6407048

git-svn-id: http://skia.googlecode.com/svn/trunk@4623 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
96cbd2c4d2ea7e138b65923a46fb77bc096a6782 16-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Add a method to atomic add."

This reverts commit eb539cf92f487daf9567ffbbba6b6653406d43ae.

BUG=
TEST=

Review URL: https://codereview.appspot.com/6395051

git-svn-id: http://skia.googlecode.com/svn/trunk@4615 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
e3f84f3911d6ab1c99030fef3200199755251d51 16-Jul-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a skia method to perform an atomic add.

Complements sk_atomic_inc for when you want to increase by more than one.

Review URL: https://codereview.appspot.com/6350106

git-svn-id: http://skia.googlecode.com/svn/trunk@4614 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
669f287c3eec9ca1755d8d27ba1b5e17464b714a 26-Jun-2012 Billy Hewlett <billyh@google.com> Cleanup ref counts for SkCreateTypefaceForScript

After this checkin, SkCreateTypefaceForScript refs each typeface
that it creates before it returns it. Additionally, all supported harfbuzz
codepoints are added to the unicode mapping array. This patch also fixes a test crash (see bug)

Bug:6756432

Change-Id: Ida3276b76e745b817f9e63be54945e411516dd03
kFontHost_android.cpp
b3c0f4886e22b6d2041c1049a1f295943959fff1 02-Jul-2012 scroggo <scroggo@2bbb7eff-a529-9590-31e7-b0007b416f81> Provide static global initializers for SkColorTable and SkComposeShader.

This makes some GMs which were broken on Android work. Reenable them on
Android.

Also fix a typo in gmmain.
Review URL: https://codereview.appspot.com/6344069

git-svn-id: http://skia.googlecode.com/svn/trunk@4426 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
0833777df1f05adafd9b70c666a72d80defa4f6b 26-Jun-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleanup flattening code to properly serialize lighting image filters.
Review URL: https://codereview.appspot.com/6333070

git-svn-id: http://skia.googlecode.com/svn/trunk@4340 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
5df2a99861c61b5d967f8def1ff13514d0e1ed33 25-Jun-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> [android] Add an API to load customized font config for testing.

When running WebKit layout tests, we need to load some fonts from Linux to
match baselines of chromium linux. However, font config file is
hard-coded in Skia now. This change add an API to customize font config
in skia.

https://codereview.appspot.com/6296067/

git-svn-id: http://skia.googlecode.com/svn/trunk@4316 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
212ef7a5d592a11522f73d858bf98f5201631b70 21-Jun-2012 Billy Hewlett <billyh@google.com> Revert "Revert "Use Elegant fonts for Webkit, Compact fonts for Textview""

This reverts commit 81957ccb58db76c172e195dc3e31eba85d3e4ac9
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
81957ccb58db76c172e195dc3e31eba85d3e4ac9 21-Jun-2012 Billy Hewlett <billyh@google.com> Revert "Use Elegant fonts for Webkit, Compact fonts for Textview"

This reverts commit 421654d4bf3ca50e2247a7389851d2e8f4812564
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
421654d4bf3ca50e2247a7389851d2e8f4812564 12-Jun-2012 Billy Hewlett <billyh@google.com> Use Elegant fonts for Webkit, Compact fonts for Textview

Fonts can be marked with elegant or compact in fallback_fonts.xml.
Webkit uses elegant fonts, Textview uses compact fonts (the default),
unmarked fonts are used by both.

Bug: 6649136

Change-Id: I6ab6173c2efc50eba8fcc488c89dfdd083fb9c06
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
81275391b157e21249dec04e7c8443331d5ccf3e 18-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add MS UI GOTHIC to list of bad fonts.
specify per-rect-edge outset for bad fonts

http://code.google.com/p/chromium/issues/detail?id=121586



git-svn-id: http://skia.googlecode.com/svn/trunk@4275 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
5a121add5e7bb191148a4e07f5ad7a1c6773ec24 15-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add more font names to our extra-bottom-space hack
http://code.google.com/p/chromium/issues/detail?id=130842

Change cached names to be UTF8 encoded, since we now have some non-ascii names



git-svn-id: http://skia.googlecode.com/svn/trunk@4264 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
b8a5c618d2e18d71707ae4dcafbe5153d7ff427f 13-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> http://codereview.appspot.com/6307089

Detect bad font, and adjust glyph heights to avoid clipping



git-svn-id: http://skia.googlecode.com/svn/trunk@4257 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
0c3afa6fd3b1f6a541e7bdabcde121ff98851376 07-Jun-2012 Billy Hewlett <billyh@google.com> Merge "Fix hardcoded font path. Allow adding new font path thru Skia changes. Bug: 6609231 Change-Id: Ie37ada42e7e78ab78318f3ed76eb627bffaddb1a"
3dd459151f65bf5d1ccf5311cb9167332042879e 06-Jun-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix warnings on Mac in miscellaneous files

Fix these class of warnings:
- unused functions
- unused locals
- sign mismatch
- missing function prototypes
- missing newline at end of file
- 64 to 32 bit truncation

The changes prefer to link in dead code in the debug build
with 'if (false)' than to comment it out, but trivial cases
are commented out or sometimes deleted if it appears to be
a copy/paste error.
Review URL: https://codereview.appspot.com/6305047

git-svn-id: http://skia.googlecode.com/svn/trunk@4186 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
088719ecdc89b399dd3a3a65f8cced262e50d951 05-Jun-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added missing #include in SkGlobalInitialization_default.cpp for Android build



git-svn-id: http://skia.googlecode.com/svn/trunk@4156 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
941ee9303b62163ae08bbdcd7ad514e1a6389bda 05-Jun-2012 robertphillips@google.com <robertphillips@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed flattening of SkStippleMaskFilter

http://codereview.appspot.com/6279052/



git-svn-id: http://skia.googlecode.com/svn/trunk@4154 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
cde7dcc5111806870f94721561056e990a9211c8 04-Jun-2012 Billy Hewlett <billyh@google.com> Fix hardcoded font path. Allow adding new font path thru Skia changes.
Bug: 6609231
Change-Id: Ie37ada42e7e78ab78318f3ed76eb627bffaddb1a
kFontHost_android.cpp
e70f798ebca1a66f0b568fa46065ebbad9a13b2f 01-Jun-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Serialize support for GDI.
http://codereview.appspot.com/6263046/



git-svn-id: http://skia.googlecode.com/svn/trunk@4126 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
c3b80ba50a494efdf6505585dc32dbe7422d5555 01-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> read/write sfnt-data length, to match convetion of other fonthosts.

TODO: move that "convention" into shared code (SkTypeface.cpp or SkFontHost.cpp)
and just require each port to support:

1. typeface <--> descriptor
2. typeface_raw_data <--> stream (possibly with algo-style flags)



git-svn-id: http://skia.googlecode.com/svn/trunk@4125 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
99840553cda3184ec2e32fbb192d104741ceea86 01-Jun-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use SkFontDescriptor on mac
Review URL: https://codereview.appspot.com/6247064

git-svn-id: http://skia.googlecode.com/svn/trunk@4117 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
b6896e72c773332552d94c27ccee5d30498de3aa 01-Jun-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove 'legacy' font descriptor methods.
http://codereview.appspot.com/6261059/


git-svn-id: http://skia.googlecode.com/svn/trunk@4115 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontDescriptor.h
kFontHost_linux.cpp
b0d416c280ee314b42d7e923c33d6e3c2f692874 01-Jun-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Store font family when serializing android fonts.
Review URL: https://codereview.appspot.com/6259063

git-svn-id: http://skia.googlecode.com/svn/trunk@4114 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
15eeca00684b4d5baad8e47c5b2f77404b978cb0 01-Jun-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update the implementation of SkTypeface_android.h functions.

This CL removes the hardcoded mappings of FallbackScripts to
a particular font file and replaces it with a dynamic mechanism
that takes a style and representative character code for a given
FallbackScript class and returns the most appropriate SkTypeface
that contains that character code.
Review URL: https://codereview.appspot.com/6197074

git-svn-id: http://skia.googlecode.com/svn/trunk@4111 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
3b700f6929e093cb14cc0e4ef569e6f697c5a816 31-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add more names to fontdescriptor
Review URL: https://codereview.appspot.com/6249074

git-svn-id: http://skia.googlecode.com/svn/trunk@4110 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontDescriptor.cpp
kFontDescriptor.h
9714516a0db56fe1c59d5e831cb0c6d820102c30 31-May-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkFontDescriptor for serializing fonts.
Review URL: https://codereview.appspot.com/6250080

git-svn-id: http://skia.googlecode.com/svn/trunk@4106 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontDescriptor.cpp
kFontDescriptor.h
kFontHost_android.cpp
kFontHost_linux.cpp
bd64a4dd0d45eb7ea09dd46e2e5f3291655dbc5e 30-May-2012 Victoria Lease <violets@google.com> Use FreeType's "embolden", but only if face is not already bold.

A side-effect of not knowing the actual SkTypeface used to draw text
until render-time is that we cannot make decisions based upon the
face's proper font metrics. As a result, attempts to draw bold text
will fail when a fallback font with normal weight is selected. With
this, we can feel free to enable fake bold mode even if the primary
font is bold, as the extraneous fake bold bit will just get ignored
at render-time if the actual font used to draw the text is bold.

Bug: 6522642
Change-Id: Icdd13f6bd36a85ba374b6ed7a08b596d4c31e86f
kFontHost_FreeType.cpp
fd4be26c4202ae91f0f7cf2c03e44b5169d885eb 25-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
or stroke parameters for a path.

Today, the patheffect only sees if the caller was going to stroke or fill, and
if stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.

After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.

Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6250051

git-svn-id: http://skia.googlecode.com/svn/trunk@4048 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
d3521f1a8dc07fe84d6a8f2151b0c176ff1ec8ca 24-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert 4046 -- GM:pathfill failed on one bot, maybe uninitialized memory somewhere?



git-svn-id: http://skia.googlecode.com/svn/trunk@4047 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
9797272edfc73f18b4807751377518317991b880 24-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change patheffect to take a (new) StrokeRec object, which encapsulates the fill
or stroke parameters for a path.

Today, the patheffect only sees if the caller was going to stroke or fill, and if
stroke, it just sees the width. With this change, the effect can see all of the
related parameters (e.g. cap/join/miter). No other change is intended at this
time.

After this change, I hope to use this additional data to allow SkDashPathEffect
to, at times, apply the stroke as part of its effect, which may be much more
efficient than first dashing, and then reading that and stroking it.

Most of these files changed just because of the new parameter to filterPath. The
key changes are in SkPathEffect.[h,cpp], SkPaint.cpp and SkScalerContext.cpp
Review URL: https://codereview.appspot.com/6249050

git-svn-id: http://skia.googlecode.com/svn/trunk@4046 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
e9bbee397ce96aa6642a42823feb1d7c4a8ffd8b 21-May-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix assignment of non-copyable.

see http://connect.microsoft.com/VisualStudio/feedback/details/552586/inherting-noncopyable-base-allows-equal-sign-initialization


git-svn-id: http://skia.googlecode.com/svn/trunk@4008 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
a550199c6f37e1b05a386ea57eee4c40cc91d84d 18-May-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> CreateTypefaceFromStream for GDI.
http://codereview.appspot.com/5616047/


git-svn-id: http://skia.googlecode.com/svn/trunk@4001 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
54bf33f5cc99eb4add69c52f6c82d2332e0d1bf7 17-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reuse() is no longer available, call reset()



git-svn-id: http://skia.googlecode.com/svn/trunk@3990 2bbb7eff-a529-9590-31e7-b0007b416f81
kXMLPullParser_expat.cpp
ff0da4ff483ba7b4468b862949ffb3de505cba14 17-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Mutexes in pixelrefs were done very sloppily initially. The code (a) assumes all
pixelref subclasses want a mutex to guard their lock/unlock virtuals, and (b)
most subclasses use the same mutex for *all* of their instances, even when there
is no explicit need to guard modifying one instances with another.

When we try drawing bitmaps from multiple threads, we are seeing a lot of slow-
down from these mutexes. This CL has two changes to try to speed things up.

1. Add setPreLocked(), for pixelrefs who never need the onLockPixels
virtual to be called. This speeds up those subclasses in multithreaded environs
as it avoids the mutex lock all together (e.g. SkMallocPixelRef).

2. Add setMutex() to allow a subclass to change the mutex choice. ashmem wants
this, since its unflattening constructor cannot pass down the null, it needs
to cleanup afterwards.
Review URL: https://codereview.appspot.com/6199075

git-svn-id: http://skia.googlecode.com/svn/trunk@3985 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageRef_ashmem.cpp
a02bc1519cf49afa31fb38bed097dd5014880d04 16-May-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> WeakRefCnt
http://codereview.appspot.com/5649046/


git-svn-id: http://skia.googlecode.com/svn/trunk@3978 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
f1a1e8d5528d123890c9e86f672084b86c69dcfe 14-May-2012 Derek Sollenberger <djsollen@google.com> Cleanup pixel ref mutexes in Skia

Mutexes in pixelrefs were done very sloppily initially. The code (a) assumes all
pixelref subclasses want a mutex to guard their lock/unlock virtuals, and (b)
most subclasses use the same mutex for *all* of their instances, even when there
is no explicit need to guard modifying one instances with another.

When we try drawing bitmaps from multiple threads, we are seeing a lot of slow-
down from these mutexes. This CL has two changes to try to speed things up.

1. Add setPreLocked(), for pixelrefs who never need the onLockPixels
virtual to be called. This speeds up those subclasses in multithreaded environs
as it avoids the mutex lock all together (e.g. SkMallocPixelRef).

2. Add setMutex() to allow a subclass to change the mutex choice. ashmem wants
this, since its unflattening constructor cannot pass down the null, it needs
to cleanup afterwards.

see https://codereview.appspot.com/6199075/

bug: 6469917
Change-Id: I81a7cfa0b2ead5a42059697eafa58de1e7a87da2
kImageRef_ashmem.cpp
554875210043b34178f7ed6ac5bd682b1fad367b 14-May-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add bench and test for SkRefCnt.
http://codereview.appspot.com/6195071/

This also adds a cross platform SkThread for testing purposes.


git-svn-id: http://skia.googlecode.com/svn/trunk@3921 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_none.cpp
7c6d54cdf8d0da62a7478bda7927d779b0481218 11-May-2012 Raph Levien <raph@google.com> Fix bug 6479740: Serif font gone in tot/jb-dev

addNameLocked() was failing when namelist count == 0, which was causing
the fonts not to be loaded.

Change-Id: Ib7c9ee96e3f0574ac3cc920ce086338d60ef7397
kFontHost_android.cpp
fc9054d4dc1f51d2fca64d0d1b4759c8f2f031d4 10-May-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use a NDK-compliant way of reading locale.

Remove !SK_BUILD_FOR_ANDROID_NDK from locale-related code

git-svn-id: http://skia.googlecode.com/svn/trunk@3899 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
75a0972dd7d0dbc614b9fb81b4450a349c005325 10-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move SkStrokePathEffect into hiding for now, as its functionality is rethought.



git-svn-id: http://skia.googlecode.com/svn/trunk@3890 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
127ddb8a959885dc35cb3f1b0b0b3b798104d553 09-May-2012 Fabrice Di Meglio <fdimeglio@google.com> Fix bugs with duplicate fallback fonts.

Cleaned up the system font and fallback font list
memory management using smart arrays.

Cleaned up the addition and removal of font records from
the font family lists. Previously, list insertion was occurring
when the typeface was constructed, which obscured much of the logic.

Bug #6406249 SystemUI crashed when changing Locale

Change-Id: I3e33f7868f1b0a6835b91652652a457799d991d5
kFontHost_android.cpp
42ca8dae406fe8e68f51fc7c059d9cb688966ab9 09-May-2012 Jeff Brown <jeffbrown@google.com> Fix lock issue in Skia fonthost for Android.

load_system_fonts() could potentially be called without
a lock held. To make this problem less likely to happen
again in the future, adopted a naming convention for all
locked methods.

Change-Id: I04ff5e8ad005e5c1180aae9be8c134d0d384ac2c
kFontHost_android.cpp
331e2dc8eb69b093bf012d8dcd1ab652d67fc36b 08-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add flag/hint to PlatformGetSpecific. If true, then the caller requires that
the tls slot be allocated even if this is the first, to ensure that it can
later call PlatformSetSpecific. When this is false (which is most of the time)
the implementation may optimize by not even creating the slot, and just
returning null.



git-svn-id: http://skia.googlecode.com/svn/trunk@3871 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
0389d93314ed8f706ba7adc4969110712b67416b 07-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused ptr/len parameters from CreateTypeface
Review URL: https://codereview.appspot.com/6201056

git-svn-id: http://skia.googlecode.com/svn/trunk@3862 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
e22a421e3a19f04f128d13a6df4458620ffb2269 07-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> must include SkTLS.h



git-svn-id: http://skia.googlecode.com/svn/trunk@3860 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_pthread.cpp
48ca7e37ef684dea5271b8d779c1ccc66b9bf275 07-May-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> impl SkTLS for windows, refactoring to share code with pthread impl



git-svn-id: http://skia.googlecode.com/svn/trunk@3859 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
548674f69a16352695b2632f1064b3c43d36b79a 04-May-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream font changes from Android repository.
Review URL: https://codereview.appspot.com/6166043

git-svn-id: http://skia.googlecode.com/svn/trunk@3838 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
aebbe265b8f9136fa5a5f44141cd5a4bb0914d21 01-May-2012 Derek Sollenberger <djsollen@google.com> Fix two font issue that are causing crashes and ANRs

1) fixes a bug where the a custom font can be loaded prior to the
system fonts being loaded when Skia is first loaded.
2) fixes a bug where the lists for system fonts and fallbacks can be
corrupted if the font in the configuration file is not present

This should fix bug 5911298

Change-Id: I93b93e0f20d916b91438e8bbaa50a32ac5e20d88
kFontHost_android.cpp
d65ad1324cc6d7cb0b0193bb02486453d4f89aa7 23-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix copy/paste error



git-svn-id: http://skia.googlecode.com/svn/trunk@3753 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_pthread.cpp
ae1b6b61ce1033cd9ba65667bfc51b4936feaf83 23-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkTLS::Delete



git-svn-id: http://skia.googlecode.com/svn/trunk@3752 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_pthread.cpp
e6f7d6821fa3cd836e0af6596d8a15e961ebd2e3 23-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add experimental tls (for font cache eventually)



git-svn-id: http://skia.googlecode.com/svn/trunk@3748 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_pthread.cpp
72ae6bd24eb72be13d5745129c16058e4d54e2f4 20-Apr-2012 scroggo@google.com <scroggo@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix the Android build.

Use the correct macro for SkEmbossMaskFilter
Review URL: https://codereview.appspot.com/6081045

git-svn-id: http://skia.googlecode.com/svn/trunk@3743 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_default.cpp
90b7e386cab251db78152f18adfd54e019b8dc10 20-Apr-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix gdi assert that the font is not a vector FON font.

See http://code.google.com/p/chromium/issues/detail?id=124313


git-svn-id: http://skia.googlecode.com/svn/trunk@3740 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
f98d96e192db421eed54103eedfcbb6600f73c08 19-Apr-2012 Derek Sollenberger <djsollen@google.com> Reset Skia to the default font cache size that we used in ICS.

bug: 6226962
Change-Id: I8d078faa836c1daa38810bc24aa24942cb70676f
kFontHost_android.cpp
fec9836e183083915cb678931b621759af6e0859 18-Apr-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix memory leaks
Review URL: https://codereview.appspot.com/6063049

git-svn-id: http://skia.googlecode.com/svn/trunk@3724 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
a0319f6d071bb8298e56ace043ea6c623fb358f7 18-Apr-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Basic support for bitmap fonts on Windows.
http://codereview.appspot.com/6062044/


git-svn-id: http://skia.googlecode.com/svn/trunk@3723 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
95bfdedb371262905ae06b9c06b2c0f55869a441 16-Apr-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add cast to support 64 bit.

http://code.google.com/p/skia/issues/detail?id=524
Review URL: https://codereview.appspot.com/6038053

git-svn-id: http://skia.googlecode.com/svn/trunk@3701 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
32a0fb051fe865ebde4d875ab8d224c5a402cb22 13-Apr-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Some fonts do not measure correctly in Mountain Lion,
carrying over a bug from Lion. Add the check
appropriately.
Review URL: https://codereview.appspot.com/6026045

git-svn-id: http://skia.googlecode.com/svn/trunk@3675 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
875eb9835a2325e405daa61cc97c2d624feae814 12-Apr-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix crash with LCD vertical text.
https://codereview.appspot.com/6012050/


git-svn-id: http://skia.googlecode.com/svn/trunk@3660 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
5582e63606cf23fefeef652ad556b0a998467e0c 02-Apr-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Compare scalars to scalars (fixes fixed point).


git-svn-id: http://skia.googlecode.com/svn/trunk@3570 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
8cf322666faaba298ca66b0acfe32c634c308e2f 02-Apr-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Temp fix for very large text sizes.
http://codereview.appspot.com/5970065/


git-svn-id: http://skia.googlecode.com/svn/trunk@3569 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
4cccc6b224cc37c99a3101893f645b7af776287e 30-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix deadlock in Android's font deserializer.

git-svn-id: http://skia.googlecode.com/svn/trunk@3551 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
55613bba538c7c23b2295cbafdb2243a4c4c3358 30-Mar-2012 John Reck <jreck@google.com> Fix grabbing a lock recursively

Bug: 5383693

Change-Id: I71258a269aa1b739c655c9ef9f2cf043c9928079
kFontHost_android.cpp
e6488add7f8b1efa9b8b38d5737b98e7c63b3b79 29-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> partial revert of r3541 to removed accidentally uploaded file

git-svn-id: http://skia.googlecode.com/svn/trunk@3542 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
bff29d59ee6edbeec3e87856a415de8ec1018569 29-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Landing arm patch from contributor.

http://codereview.appspot.com/5649055

git-svn-id: http://skia.googlecode.com/svn/trunk@3541 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
54924243c1b65b3ee6d8fa064b50a9b1bb2a19a5 29-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleanup code related to SkFlattenable::flatten()

The following changes were made by this CL:

1. Make flatten() a protected method as callers should use
SkFlattenableWriteBuffer to flatten an object
2. Make flatten a const method (including subclasses)
3. Mark subclass implementation of flatten with SK_OVERRIDE
4. Ensure overridden flatten impls call their parent
5. Remove no-op implementations of flatten from subclasses

Additionally, if necessary the unflattening constructor was
also moved to the protected section of the subclasses
header if it was not already there.

git-svn-id: http://skia.googlecode.com/svn/trunk@3540 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageRef_ashmem.cpp
kImageRef_ashmem.h
9af25f3d98ba99955af6e25995b457152ec2cf91 28-Mar-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix coverity defects in FontHost_FreeType

Reviewed in https://codereview.appspot.com/5940049/

Review URL: https://codereview.appspot.com/5942043

git-svn-id: http://skia.googlecode.com/svn/trunk@3536 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
6390c72cfb3e371a774a627d5f496dc67558e119 28-Mar-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Coverity reports. (Mostly use of uninitialised values.)

CID=537,103419,103631,103632,103633

Initial review: https://codereview.appspot.com/5936047/

Review URL: https://codereview.appspot.com/5935051

git-svn-id: http://skia.googlecode.com/svn/trunk@3534 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kOSFile_stdio.cpp
5370cd969d8f3957e4306068e6195ac1bca3d6cd 28-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Consolidate PixelRef flattables with the standard impl

The flatten method on these functions can no longer be
const as SkFlattenables declaration is not const and
would result in the const methods only being called when
the reference to the object was const.
Review URL: https://codereview.appspot.com/5941043

git-svn-id: http://skia.googlecode.com/svn/trunk@3533 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
fa1dd11f0e82fbcbcaabf7f3ccb3c556ac6d2ad0 28-Mar-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert r3523 and r2522

Review URL: https://codereview.appspot.com/5939051

git-svn-id: http://skia.googlecode.com/svn/trunk@3524 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kOSFile_stdio.cpp
f0f562af5b35ad44f18ccf7e18becd1b1328eb0d 28-Mar-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix build break.

Review URL: https://codereview.appspot.com/5934055

git-svn-id: http://skia.googlecode.com/svn/trunk@3523 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_stdio.cpp
354fd0e2b1a53f5d18372312ecdc61b0b968c375 28-Mar-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Coverity reports. (Mostly use of uninitialised values.)

CID=537,103419,103631,103632,103633

Review URL: https://codereview.appspot.com/5936047

git-svn-id: http://skia.googlecode.com/svn/trunk@3522 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kOSFile_stdio.cpp
a2ca41e3afdd8fad5e0e924dec029f33918e0a67 23-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleanup Macros arround static initializers for SkFlattenable.

This CL also removes an unused debugging function from the class
Review URL: https://codereview.appspot.com/5890043

git-svn-id: http://skia.googlecode.com/svn/trunk@3483 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
34f10260adb55301572d4e67414b747c83ee015a 23-Mar-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Glyph advances from generateAdvance do not always match generateMetrics results.
http://codereview.appspot.com/5841071/


git-svn-id: http://skia.googlecode.com/svn/trunk@3480 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
eebd62a7efe1a3f8ff1638ea0738f20d5b98462a 23-Mar-2012 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update GetAdvancedTypefaceMetrics API in usually-unbuilt files.
Originally caught by LJin.zq
http://code.google.com/p/skia/issues/detail?id=405



git-svn-id: http://skia.googlecode.com/svn/trunk@3478 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
e63793a2c8d2871bf7d95195be7b93ff669688d7 21-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream changes from Android repository.
Review URL: https://codereview.appspot.com/5752055

git-svn-id: http://skia.googlecode.com/svn/trunk@3449 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
d8b599cb264b2228e0fb1bee6d3604be6d3c2855 19-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add basic support for vertical text into freetype.
Review URL: https://codereview.appspot.com/5794081

git-svn-id: http://skia.googlecode.com/svn/trunk@3433 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
83df1caf0a1492e4de67551177c3dbf1ae92c3da 14-Mar-2012 Derek Sollenberger <djsollen@google.com> Update Freetype to support vertical text drawing.

bug: 5558851
Change-Id: Icf85ad7846e42c248556de8fce70b3d086e5b602
kFontHost_FreeType.cpp
b8ff633dba733652184f856f267ec8d402c35f3d 15-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix broken android build

git-svn-id: http://skia.googlecode.com/svn/trunk@3404 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
ff029606bd8784af89db6379b3d23e6ef0c68381 15-Mar-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add CreateFallbackForScript to SkTypeface for Android.

WebKit uses HarfBuzz directly to do Complex Text Layout, so it needs to get the
proper SkTypeface to pass it to HarfBuzz. However, on Android, fallback scripts
have no name, and we can only get them by file name each time (CreateFromFile).
This actually breaks the semantics of SkTypeface, which states 'The ID should
be unique for the underlying font file/data, not unique per typeface instance.'

And add 2 helper function to convert between FallbackScripts enum and font file
name. These are useful for WebKit's FontCache, which needs string as key.

https://codereview.appspot.com/5797066/

git-svn-id: http://skia.googlecode.com/svn/trunk@3403 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
d71541402192b57e2e03355594567afcd60c14b8 08-Mar-2012 Russell Brenner <russellbrenner@google.com> Reload fallback fonts when system language changes

When the system locale is changed, skia reloads its fallback fonts
using the best-matching configuration files for both framework and
vendor.

Bug: 5873170
Change-Id: Ie1d13cb404905ae2af05d8f20fbd857c96f39e4b
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
3aacb419ca50c86341756624e7b031bf29b8a47c 13-Mar-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use floats for mask table for accuracy.
http://codereview.appspot.com/5783099/



git-svn-id: http://skia.googlecode.com/svn/trunk@3374 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
d2dae96295794f95a7a38fedca8d35785f48295e 09-Mar-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use default lcd filter until we have the means to specify one.


git-svn-id: http://skia.googlecode.com/svn/trunk@3358 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
a1bfa214c55fc1332a43c0343c909549f4178d05 08-Mar-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reenable vertical lcd support



git-svn-id: http://skia.googlecode.com/svn/trunk@3351 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
d41e70de196e78e21e1001d23a7259785cbd0835 08-Mar-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Treat TTF Fonts that report zero glyphs as other font type.

Fix crbug.com/117322 crash

Patch from Arthur Hsu, Original CL: http://codereview.appspot.com/5786057/

Review URL: https://codereview.appspot.com/5792050

git-svn-id: http://skia.googlecode.com/svn/trunk@3345 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
f4f2b8010a6e733f0ecbacef4a3ede570dca883a 08-Mar-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Don't override the user's hinting level.
http://codereview.appspot.com/5792049/


git-svn-id: http://skia.googlecode.com/svn/trunk@3344 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
4f1dae40e24d57d647db01443b8bf2410514b8b5 06-Mar-2012 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 3312)

This CL also includes changes made to Android's copy of
Skia in their J release branch.

Change-Id: Ib2baecf48004951a3ad4a1574cdc38790c814cbc
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
kImageDecoder_CG.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
d0b6a2dd821e879fc85e1ee645bd3e2ab111b53f 05-Mar-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> When guessing at the dest, use linear space instead of color space.
http://codereview.appspot.com/5732044/
--this line, and those below, will be ignored--

M src/ports/SkFontHost_FreeType.cpp


git-svn-id: http://skia.googlecode.com/svn/trunk@3313 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
6a81b8a282dd388044c433a4c2d8e549e7402d01 02-Mar-2012 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> On Mac, also check for a loca table before calling a font true type.

Review URL: https://codereview.appspot.com/5720056

git-svn-id: http://skia.googlecode.com/svn/trunk@3311 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
c8ccfb0fbadfdcadcc860bc648c5ac42aa9277b1 02-Mar-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Check to see if font is TrueType before making TrueType specific calls.
See chromium bug 116185
Review URL: https://codereview.appspot.com/5731046

git-svn-id: http://skia.googlecode.com/svn/trunk@3309 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
d61b92b63c0a3619c3b7d08d1e4cd4aeef8028fe 02-Mar-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> restore old no-gamma behavior when requested
Review URL: https://codereview.appspot.com/5722047

git-svn-id: http://skia.googlecode.com/svn/trunk@3303 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
ec9ed81b4d02ca22da7f1de6398e3c3192c3435b 01-Mar-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> allow gamma params to be changed in .gyp



git-svn-id: http://skia.googlecode.com/svn/trunk@3294 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
a1c32563cf218c9eddc79fad303eb4185c774224 01-Mar-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix clipping of lcd edge pixels



git-svn-id: http://skia.googlecode.com/svn/trunk@3293 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
613e9fe0722c76d1001a17e12a078a2644f45048 29-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> apply contrast before blend-gamma-calc



git-svn-id: http://skia.googlecode.com/svn/trunk@3283 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
1ac8350821f5343333e48f000df5b5106b6f7497 28-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> implement gamma correction for freetype text.
Need to opt-in to have it applied to kA8 text (which chrome can't for a while)
A8 text needs to use Slight hinting to look better, but that is not forced...



git-svn-id: http://skia.googlecode.com/svn/trunk@3277 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
ddd0ed560721bc082b38eed7c11ea792ae0713ca 24-Feb-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkFontHost::ValidFontID PART 2: remove definition and skia callers not that Chrome's font host has been updated.
See also https://chromiumcodereview.appspot.com/9347043/
http://codereview.appspot.com/5654055/


git-svn-id: http://skia.googlecode.com/svn/trunk@3255 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
61c22047dcc04be9fe7342f7e557996566f7f289 24-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkCreateDataProviderFromStream to SkCGUtils
implement SkFontHost create_from_file/stream using SkCGUtils



git-svn-id: http://skia.googlecode.com/svn/trunk@3249 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
fbd033d57235cfcfeb83226661da3777429bb4ce 23-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix memory leak in GetTableData() and add unittests for it
Review URL: https://codereview.appspot.com/5693048

git-svn-id: http://skia.googlecode.com/svn/trunk@3239 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
1214cd0bdee1c6d0a26fe4005fda74fd6c8673ea 23-Feb-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Provide fallbacks for web fonts.

This fixes http://code.google.com/p/chromium/issues/detail?id=114531
Review URL: https://codereview.appspot.com/5683078

git-svn-id: http://skia.googlecode.com/svn/trunk@3231 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
eee6661fb1b9ef8efb4a153ad59d93b5100edad1 17-Feb-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use intrinsics for atomic inc and dec on Windows.
http://codereview.appspot.com/5677080/


git-svn-id: http://skia.googlecode.com/svn/trunk@3223 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_win.cpp
ae50e11678aeb0d01c9b2a75daaeaf762b1c0fcf 17-Feb-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove SkFontHost::ValidFontID PART 1: remove only caller.
http://codereview.appspot.com/5654055/


git-svn-id: http://skia.googlecode.com/svn/trunk@3222 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
e401399ff137e72497546f8d48ba808d4b9e02d0 16-Feb-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Lazily allocate gNameList, and protect its usage behind the global mutex.

https://codereview.appspot.com/5674059

git-svn-id: http://skia.googlecode.com/svn/trunk@3207 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
ee51d1a6e43615ae640410013c36d2d9873e6aa5 16-Feb-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix TypefaceCache races.
http://codereview.appspot.com/5656066/


git-svn-id: http://skia.googlecode.com/svn/trunk@3205 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
4dc686d75353235260c716242f4ed596b70beb95 15-Feb-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix regression where we disable fonts with no specified name
Review URL: https://codereview.appspot.com/5675061

git-svn-id: http://skia.googlecode.com/svn/trunk@3202 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_linux.cpp
kFontHost_simple.cpp
60abb078e5597c9c6ceaba1ef495c4916ff4df0d 15-Feb-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Merge changes from the android repo upstream to Skia
Review URL: https://codereview.appspot.com/5545070

git-svn-id: http://skia.googlecode.com/svn/trunk@3199 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kImageRef_ashmem.cpp
dd43df99b16b67f7b00457b7fff4b2539da40702 15-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> suport A8 grayscale text with COLOR_LUMINANCE build option



git-svn-id: http://skia.googlecode.com/svn/trunk@3197 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
813d38b7a07957f2990ccca52ddab55fe0b1c632 13-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> if SK_USE_COLOR_LUMINANCE is defined, then we store 2 bits of each component
to create a per-component-luminance value for the fonthost to use. Only supported
on Mac at the moment (but still disabled by default)



git-svn-id: http://skia.googlecode.com/svn/trunk@3180 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
ce6dbb6b4ce3f36e0a2245b215dc48b68df35c41 10-Feb-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> enable color-luminance in font cache (disabled by default)



git-svn-id: http://skia.googlecode.com/svn/trunk@3168 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
1cab2921ab279367f8206cdadc9259d12e603548 18-Jan-2012 Derek Sollenberger <djsollen@google.com> Skia merge (revision 3022)

This CL has companion changes to account for API updates in...
(1) frameworks/base
(2) external/webkit

Change-Id: Ibb989e76e8bd24313849f9631dbef42cdef9eb7d
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kDebug_android.cpp
kDebug_brew.cpp
kDebug_stdio.cpp
kDebug_win.cpp
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_FreeType_Subpixel.cpp
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_gamma.cpp
kFontHost_gamma_none.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_sandbox_none.cpp
kFontHost_simple.cpp
kFontHost_tables.cpp
kFontHost_win.cpp
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
kGlobals_global.cpp
kHarfBuzzFont.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageDecoder_empty.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
kMemory_brew.cpp
kMemory_malloc.cpp
kOSEvent_android.cpp
kOSEvent_dummy.cpp
kOSFile_brew.cpp
kOSFile_stdio.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
kTime_Unix.cpp
kTime_win.cpp
kXMLParser_empty.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
orts_files.mk
k_predefined_gamma.h
0928c4acc90deba9bd01dc8bcbecba5ff581e021 31-Jan-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make SkImageEncoder_CG report more failures to its caller.
Review URL: https://codereview.appspot.com/5580052

git-svn-id: http://skia.googlecode.com/svn/trunk@3115 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
1771cbf43d9a1334e3d870c635b4215bb888dd98 26-Jan-2012 digit@google.com <digit@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> posix: Avoid static initializers in static/global mutexes

This patch removes static initializers related to static and
global mutexes from the final library's machine code when
building on a pthread-capable system.

We use PTHREAD_MUTEX_INITIALIZER to perform POD-style
initialization. You need a line like the following to declare
a global mutex with it:

SkBaseMutex gMutex = { PTHREAD_MUTEX_INITIALIZER };

We introduce the SK_DECLARE_STATIC_MUTEX and SK_DECLARE_GLOBAL_MUTEX
macros to be able to declare static/global mutexes in the source tree
uniformly.

SkMutex is now defined as a sub-class of SkBaseMutex, with standard
construction/destruction semantics. This is useful if the mutex
object is a member of another C++ class, or allocated dynamically.

We also modify a few places to refer to SkBaseMutex instead of a
SkMutex, where it makes sense. Generally speaking, client code
should hold and use pointers to SkBaseMutex whenever they can
now.

We defined a new built-time macro named SK_USE_POSIX_THREADS
to indicate that we're using a pthread-based SkThread.h
interface. The macro will also be used in future patches
to implement other helper thread synchronization classes.

Finally, we inline the acquire() and release() functions in the
case of Posix to improve performance a bit.

Running: 'bench -repeat 10 -match mutex' on an Android device or
a 2.4GHz Xeon Linux desktop shows the following improvements:

Before After

Galaxy Nexus 1.64 1.45
Nexus S 1.47 1.16
Xoom 1.86 1.66
Xeon 0.36 0.31

This removes 5 static mutex initializers from the library
Review URL: https://codereview.appspot.com/5501066

git-svn-id: http://skia.googlecode.com/svn/trunk@3091 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
kThread_pthread.cpp
76bd2540b55f31c8e72adb2fa72a88d7f4ba5374 25-Jan-2012 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix vertical bold text on mac

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@3086 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
b90113dd3de76eef48679f74a9134dcb73d32a7c 18-Jan-2012 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove apparent SkIntToScalar(SkScalar) call in SkScalerContext_FreeType

This change seems to fix the following assertion failure we have been seeing
in the Skia_Linux_Fixed_Debug build since http://code.google.com/p/skia/source/detail?r=3059 :

drawing... bitmapfilters [540 330]
../include/core/SkFixed.h:67: failed assertion "n >= -32768 && n <= 32767"
Review URL: https://codereview.appspot.com/5557049

git-svn-id: http://skia.googlecode.com/svn/trunk@3066 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
8351aabbfe82a76a698fa2bde00d33c1174518cd 18-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add GenA8FromLCD as a hack to force GDI to create the A8 mask from the LCD
results, rather than asking GDI directly for A8 (which it sometimes decides
to interpret as BW)



git-svn-id: http://skia.googlecode.com/svn/trunk@3061 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
dcbd6e358af8f1208d18dfec4bb86f8645b2a44d 12-Jan-2012 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove unused bool param to SkMutex constructor



git-svn-id: http://skia.googlecode.com/svn/trunk@3025 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
f66436cff70ad44abf3f576d5cc2034bfccfecf7 11-Jan-2012 digit@google.com <digit@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> android: optimize atomics routines

This patch provides a slightly optimized implementation of
atomic increment/decrement functions by using static inlined
versions of the gcc intrinsics.
Review URL: http://codereview.appspot.com/5498069

git-svn-id: http://skia.googlecode.com/svn/trunk@3012 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_pthread.cpp
fa394d491b6e625159f83787619fcb852d245471 09-Jan-2012 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Change remaining ANDROID ifdefs to SK_BUILD_FOR_ANDROID
Review URL: http://codereview.appspot.com/5528050

git-svn-id: http://skia.googlecode.com/svn/trunk@2990 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
88f57d7a5dbe1e061d179062b4dab4044c590cb1 05-Jan-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Mac generateFontMetrics not converting to scalar.
http://codereview.appspot.com/5519045/


git-svn-id: http://skia.googlecode.com/svn/trunk@2979 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
c84547a8d3cb04f0547db282b34e26abfbe64ec3 05-Jan-2012 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove attempt at subpixel handling from GDI font host.
http://codereview.appspot.com/5515046/


git-svn-id: http://skia.googlecode.com/svn/trunk@2976 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
0c00f21fee3f5cfa3aa7e5d46ff94cb8cf340451 28-Dec-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkDEBUGFAIL to clean up use of SkASSERT(!"text");
catch a couple of latent SkASSERT("text") bugs.

http://codereview.appspot.com/5504090/



git-svn-id: http://skia.googlecode.com/svn/trunk@2926 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_freetype_mac.cpp
kFontHost_linux.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
kMemory_brew.cpp
kMemory_malloc.cpp
kThread_pthread.cpp
5fbb4dc0a52f1e70f788fc4b4e6228f20a651b78 21-Dec-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> support vertical text and typeface-by-name on Leopard

M src/ports/SkFontHost_mac_coretext.cpp
M gyp/gmslides.gypi
A gm/verttext2.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2920 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
5d80f903cfe1a9f60b5eb4237dcf2496dc9feaf8 20-Dec-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix vertical text on Lion

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2906 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
8f3c44aeeb28c1f78d160bd15818a5fd3ecdcd4a 19-Dec-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> partial fix for vertical text on Lion

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2896 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
d26147adbbdca85f07dff432025afee0c8614387 15-Dec-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add optional manual global initialization

M include/effects/SkAvoidXfermode.h
M include/effects/SkDiscretePathEffect.h
M include/effects/Sk1DPathEffect.h
M include/effects/Sk2DPathEffect.h
M include/effects/SkBlurDrawLooper.h
M include/effects/SkPixelXorXfermode.h
M include/effects/SkDashPathEffect.h
M include/effects/SkColorMatrixFilter.h
M include/effects/SkEmbossMaskFilter.h
M include/effects/SkLayerDrawLooper.h
M include/effects/SkGroupShape.h
M include/effects/SkBlurImageFilter.h
M include/effects/SkRectShape.h
A include/effects/SkEffects.h
M include/effects/SkCornerPathEffect.h
M include/effects/SkGradientShader.h
M include/effects/SkBlurMaskFilter.h
M include/effects/SkLayerRasterizer.h
M include/core/SkMallocPixelRef.h
M include/core/SkFlattenable.h
M include/core/SkShape.h
M include/core/SkPixelRef.h
M include/core/SkGraphics.h
M include/core/SkPathEffect.h
M include/core/SkPostConfig.h
M include/core/SkXfermode.h
M include/core/SkColorFilter.h
M include/images/SkFlipPixelRef.h
M include/images/SkImageRef_GlobalPool.h
M src/effects/SkDashPathEffect.cpp
M src/effects/SkColorMatrixFilter.cpp
M src/effects/SkBlurImageFilter.cpp
M src/effects/SkGroupShape.cpp
M src/effects/SkCornerPathEffect.cpp
M src/effects/SkGradientShader.cpp
M src/effects/SkBlurMaskFilter.cpp
M src/effects/SkAvoidXfermode.cpp
M src/effects/Sk2DPathEffect.cpp
M src/effects/SkBlurDrawLooper.cpp
M src/effects/SkPixelXorXfermode.cpp
M src/effects/SkColorFilters.cpp
M src/effects/SkLayerDrawLooper.cpp
M src/effects/SkRectShape.cpp
A src/effects/SkEffects.cpp
M src/effects/SkLayerRasterizer.cpp
M src/effects/SkDiscretePathEffect.cpp
M src/effects/Sk1DPathEffect.cpp
A src/effects/SkEffects_none.cpp
M src/core/SkPixelRef.cpp
M src/core/SkGraphics.cpp
M src/core/SkFlattenable.cpp
M src/core/SkBitmapProcShader.h
M src/core/SkPathEffect.cpp
M src/core/SkShape.cpp
M src/core/SkXfermode.cpp
M src/core/SkMallocPixelRef.cpp
M src/core/SkBitmapProcShader.cpp
M src/images/SkFlipPixelRef.cpp
M src/images/SkImageRef_GlobalPool.cpp
A src/ports/SkGlobalInitialization_chromium.cpp
M src/ports/SkImageRef_ashmem.h
M src/ports/SkImageRef_ashmem.cpp
A src/ports/SkGlobalInitialization_default.cpp
M gyp/effects.gyp
M gyp/tools.gyp
M gyp/ports.gyp



git-svn-id: http://skia.googlecode.com/svn/trunk@2876 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobalInitialization_chromium.cpp
kGlobalInitialization_default.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
05b6f3a5a94de475d3a9dcfdd1833e24d933f207 28-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move variable declarations above goto lines, to fix warning/error about
skipping over them.



git-svn-id: http://skia.googlecode.com/svn/trunk@2750 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
2b49cc8422231cfa56790887f211604628694639 22-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete assert



git-svn-id: http://skia.googlecode.com/svn/trunk@2734 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
ffe49f5380dd5062073efeda70f2f91682c828ca 22-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> store 3 bits of luminance, but (for now) discretize that in fonthost::filterec
for backward compatibility



git-svn-id: http://skia.googlecode.com/svn/trunk@2732 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
1f6b4ae0f723317d01b158ce1498dabf4d93a67b 22-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove GetGammaFlag from SkFontHost
prep for retooling of gamma support



git-svn-id: http://skia.googlecode.com/svn/trunk@2730 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_gamma.cpp
kFontHost_gamma_none.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_win.cpp
b6bb5cb7c2573a9829a0d3aa7b16a55830a7e816 21-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reorder bits and remove obsolete kForceAA experimental bit



git-svn-id: http://skia.googlecode.com/svn/trunk@2725 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
bdc9988bf238fc752826c313807044bca4e0b448 21-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> only call FT_Get_Advance if we really want linear metrics



git-svn-id: http://skia.googlecode.com/svn/trunk@2721 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
9998c669300281b5682fce72b036c1a6a619a44e 17-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove all references to SkGlobals (obsolete)



git-svn-id: http://skia.googlecode.com/svn/trunk@2713 2bbb7eff-a529-9590-31e7-b0007b416f81
kGlobals_global.cpp
aa336da0838c3da8b3be2e0348da3c6abeebf273 16-Nov-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> pass font size explicitly for leopard
http://codereview.appspot.com/5401043/

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2700 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
da957724d2a1fe97113f1464740d1fe76c1bb077 16-Nov-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add support in Android for AdvancedTypefaceMetrics
Review URL: http://codereview.appspot.com/5396045

git-svn-id: http://skia.googlecode.com/svn/trunk@2698 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
09752196a1b56c9dd9db1a899938aacf93e79bf1 16-Nov-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix broken Android build.

reviewed by reed.

git-svn-id: http://skia.googlecode.com/svn/trunk@2697 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_gamma.cpp
ce04659be83adf4df8b8859060d3dc888b697fc7 15-Nov-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove unneeded include which is breaking build.


git-svn-id: http://skia.googlecode.com/svn/trunk@2694 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_sandbox_none.cpp
39698b1bd71fd54c7c44ae8d7224afdaf93c0dda 15-Nov-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add paging support for handle based typefaces.
http://codereview.appspot.com/5379043/
http://codereview.appspot.com/5364052/


git-svn-id: http://skia.googlecode.com/svn/trunk@2693 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_sandbox_none.cpp
kFontHost_win.cpp
ec6d2183bdfa18c9232af7bc10bdf77a2d2d1ed8 14-Nov-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> suppress warnings on clang
http://codereview.appspot.com/5372101

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2683 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
f1511f2e697fc9411fdb966358944ad7cbfc9cc3 14-Nov-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check for null on Lion
http://codereview.appspot.com/5369107/

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2674 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
4e27d6e0004adcf7c0c14f4b07f2c5add74da2aa 10-Nov-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add vertical text support in mac port
http://codereview.appspot.com/5375053

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2659 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
830a23e39bb4a126e573940cd6e354732e295b10 10-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add vertical-text bit to paint (not supported yet)
check-point for using freetype on mac (not enabled yet)



git-svn-id: http://skia.googlecode.com/svn/trunk@2657 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_freetype_mac.cpp
caa91356a79913ac45530dc9b2524d9fe903c923 10-Nov-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove common fields from Offscreen utility class
http://codereview.appspot.com/5373046/

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2652 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
5a5c2ab3a8cc9cea94bcd883fd983512314a2ef3 09-Nov-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change m to f
http://codereview.appspot.com/5376043/

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2650 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
318cf92202b765e90b7b53cb92a5a3649f8536d0 08-Nov-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleanup for the Android build.

git-svn-id: http://skia.googlecode.com/svn/trunk@2630 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_android.cpp
kOSEvent_android.cpp
kOSEvent_dummy.cpp
77407ca019ca1bb98dd65f940be825d38719e983 08-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add api to SkGraphics to get/set font cache limit
add SK_DEFAULT_FONT_CACHE_LIMIT to SkUserConfig, to override our default value



git-svn-id: http://skia.googlecode.com/svn/trunk@2621 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
0f0c2888e09f7a2a153efbc8e41fe1e90a9f2112 04-Nov-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add font scaler gm.
http://codereview.appspot.com/5337044/


git-svn-id: http://skia.googlecode.com/svn/trunk@2603 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
3839ca146a896b5662a1fd0323334d6aa3d10290 03-Nov-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update the Skia gyp files to use the external android sources.
Review URL: http://codereview.appspot.com/5336048

git-svn-id: http://skia.googlecode.com/svn/trunk@2598 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
1f5f94325c410f7dcd4290dd3e4eadf2d40b0a3b 03-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert accidental change to lcd format pref



git-svn-id: http://skia.googlecode.com/svn/trunk@2596 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
4a1234b7d3746ad37587c0de65df9353ef16b917 03-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> create inline versions of common CGRect functions, since they appeared on
our profile of FontScalerBench



git-svn-id: http://skia.googlecode.com/svn/trunk@2595 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
8e372c98bf027d2b10bd10b05eddd0087403cd2b 03-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> custom memset32 to speed up erasing the offscreen when its width is small.



git-svn-id: http://skia.googlecode.com/svn/trunk@2594 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
58629291bc145edca8fb303e465c8537bed65314 03-Nov-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Adding support to trunk for building Skia using the Android NDK.

This CL depends on a subsequent CL to add the appropriate NDK
toolchain and system sources to the skia repo.

Review URL: http://codereview.appspot.com/5306089/
Review URL: http://codereview.appspot.com/5306089

git-svn-id: http://skia.googlecode.com/svn/trunk@2592 2bbb7eff-a529-9590-31e7-b0007b416f81
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_FreeType.cpp
kFontHost_android.cpp
d0601d2e7dd478d9cca46595afc00782cd97b82b 02-Nov-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> speed up font cache creation (20x using FontScalerBench)



git-svn-id: http://skia.googlecode.com/svn/trunk@2591 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
c8e51782f89ba79497578c1f683b7eb471c34bc0 02-Nov-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix font id calculation

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2583 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
873c53233cd81894b8b349615e246fa00cb658c0 01-Nov-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix monospace glyph bounds on Lion

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2578 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
0dbb31168dc7890c16baf939e45ca9d099c67b78 25-Oct-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Don't use LCD on grayscale devices.
http://codereview.appspot.com/5281041

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2528 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
d23ae9d924a508180c812050f1d0adee93a15e1b 25-Oct-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix Leopard glyph bounds

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2525 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
dce0d1146bdcbe062efbb5a68d1aa392ef8d2b73 25-Oct-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add support for local fonts
http://codereview.appspot.com/5295052/

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2523 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
90d812b77ab025d5fd01dab904287f5c5bf56228 24-Oct-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove duplicate GetFontStyle from SkFontHost_win.
http://codereview.appspot.com/5306058/


git-svn-id: http://skia.googlecode.com/svn/trunk@2522 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
cb6c2f4667666b349f5eeb4f4fff978f3212d406 21-Oct-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Just use ExtTextOutW for glyphs.
http://codereview.appspot.com/5308047/


git-svn-id: http://skia.googlecode.com/svn/trunk@2512 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
643e66b71286d7b1f6fdb9c64f45b185d0700398 14-Oct-2011 Derek Sollenberger <djsollen@google.com> Fix serialization crash for saved pages in the browser.

The uint packing optimization was producing incorrect results in
this case. Since it only saves us approx 1 byte per font there is
no need to try to keep it around.

bug: 5461283
Change-Id: Ic2b0154d433fa620e588b048c32064358aa94bc4
kFontHost_android.cpp
40646971fb336f93951a6fc616f83c00e4de7add 12-Oct-2011 Derek Sollenberger <djsollen@google.com> Fix font issue for some sites using offline reading mode.

Custom fonts (e.g. WebFonts) were not properly serialized and
resulted in unexpected behavior when a picture was saved for
offline reading. This CL serializes the custom font so that we
can use it later when playing the picture back.

bug: 5388379
Change-Id: Ic29e9bf10ac70c46a45f3902ea93558b235fd2dd
kFontHost_android.cpp
2174494ccda72e5beb76062d3cafe28eff1c7344 11-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use ATSFontRef for our unique ID. Much more stable than using the ptr itself (duh)



git-svn-id: http://skia.googlecode.com/svn/trunk@2457 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
fd8772e0081898f66f9b9a959defd18c3d88d611 06-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> bug fix for character 0x200B : zero-advance-space
If we see a zero-advance, double check to see if its bounds should really be
empty, by asking for its path. If that is empty, jam the bounds to 0

The bug was that CT was returning a huge bounds for that character
(but, strangely enough, not for normal space character, hence our check for
zero-advance)



git-svn-id: http://skia.googlecode.com/svn/trunk@2424 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
767ea3be7fea611cf3023af7ed1c8f7608df51ea 06-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change gamma for white and neutral text



git-svn-id: http://skia.googlecode.com/svn/trunk@2423 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
84e43fd75030fafa40c97f16d1bbd7d59f9b3b95 05-Oct-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix text for Lion, Leopard, Skia on Mac

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2411 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
127c3be42b5f07c5ae2f87760a6855c9efecf8a8 04-Oct-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove debug messages that are no longer needed.

Code from arthurhsu@chromium.org
Original CL: http://codereview.appspot.com/5186045/

Review URL: http://codereview.appspot.com/5190042

git-svn-id: http://skia.googlecode.com/svn/trunk@2406 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
7430a3376c0f4e0c2809fedecd12765034f9e3a8 03-Oct-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> invert gamma for non-black/white text



git-svn-id: http://skia.googlecode.com/svn/trunk@2394 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
6fc3c1fe428eaaa1581d32988354870cf005d03b 30-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Detect that we're drawing to a device that has per-pixel alpha, and if so,
disable LCD text.

Add experimental flag to force AA in fontscaler (windows-only). Hope to remove
this later.



git-svn-id: http://skia.googlecode.com/svn/trunk@2387 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
3c9f8ffd22bab96118b5ac0ec925fd528b66751b 28-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove clearing gamma for BW, since caller does that now



git-svn-id: http://skia.googlecode.com/svn/trunk@2359 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
6f5df48c1d07295b75c1955a69142fb5e66b8647 28-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add gamma-correct text



git-svn-id: http://skia.googlecode.com/svn/trunk@2358 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
2739b27d7d13691603d07982ff0d6dd0658bd364 28-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move specialization of 16 -vs- 32 lcd format to the fonthost



git-svn-id: http://skia.googlecode.com/svn/trunk@2351 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
421093d99c36f5b4f0dbab03cbc3e544bd03fd59 28-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> support gamma correction for lcd text



git-svn-id: http://skia.googlecode.com/svn/trunk@2350 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
f8897e8d5b8bce177caeb89abe5d8ccb360da2c1 27-Sep-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add debug trap to track down crash.

Original CL by arthurhsu: http://codereview.appspot.com/5144046/

BUG=CR 94421

Review URL: http://codereview.appspot.com/5132051

git-svn-id: http://skia.googlecode.com/svn/trunk@2344 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
7a230142e01c5a8cf955be12a5f287589b551634 27-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix bw bits when width >= 16



git-svn-id: http://skia.googlecode.com/svn/trunk@2338 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
6a8f14d9633b330fb8051581828a0aaf4403d1a9 27-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> doh -- fix conversion to BW from color/gray



git-svn-id: http://skia.googlecode.com/svn/trunk@2335 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
754e4ebd10d7353ce55be7dfe0a417e502ef4047 26-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> set gamma flag for white, since GDI gives us different (better) values
for white-on-black text.



git-svn-id: http://skia.googlecode.com/svn/trunk@2325 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
bbb77d5b34a50fd6b5c6ece82f4408870bde1ba3 22-Sep-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add asserts to track down Chrome crash (bug 94421).

Original Cl from arthurhsu@chromium.org
http://codereview.appspot.com/5101041/

Review URL: http://codereview.appspot.com/5092048

git-svn-id: http://skia.googlecode.com/svn/trunk@2315 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
82cff020b7e055f2d01686f060a884df842306ed 22-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> tweak check for BW to avoid cmp



git-svn-id: http://skia.googlecode.com/svn/trunk@2310 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
5e2df64215f12660ab26b96816f40ad8e32bf16f 21-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> detect when LCD is really just BW, and remark the glyph as that.
allows us to take a much faster blitter.
TODO: inform SkGlyphCache of this, so it can shrink its allocation
for the image buffer (since BW takes up 1/16 as much ram)
TODO(2): allow for A8->BW conversion my having scalercontext set a flag
if it really-wants A8 (i.e. we have a maskfilter)



git-svn-id: http://skia.googlecode.com/svn/trunk@2301 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
2e2f3f58b5b0599c776f20bb55845d3e6005a01c 16-Sep-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Update SkCoInitialize to better match spec.
http://codereview.appspot.com/5036044/


git-svn-id: http://skia.googlecode.com/svn/trunk@2274 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
99edd43813b7f1a8f02146cbd8c783d3c82be4ab 09-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> cache offscreen HDC



git-svn-id: http://skia.googlecode.com/svn/trunk@2245 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
4fd0fb0b03c86c5f4e621a8e5b1501381b40a6ca 03-Sep-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix realloc->reset rename missed in mac file



git-svn-id: http://skia.googlecode.com/svn/trunk@2216 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
7d4679a2e1aaa1953bc20d668135c517ee488c11 03-Sep-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Rename existing nonpreserving reallocs to reset, add reset to SkAutoMalloc, use reset in GrBufferAllocPool

Review URL: http://codereview.appspot.com/4951058/


git-svn-id: http://skia.googlecode.com/svn/trunk@2215 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
f8cead5e08fe3298ba09da5a15c2d835747c567d 02-Sep-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> outset 2 on all sides, as we now find some CJK fonts that are off by
that amount when we compare the bounds returned by GetGlyphOutline and what
GDI actually draws.



git-svn-id: http://skia.googlecode.com/svn/trunk@2214 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
17b78946096265d80215a6c946286ecaa35ea7ed 26-Aug-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rolling back the experimental rollbacks in r2178-2179

git-svn-id: http://skia.googlecode.com/svn/trunk@2180 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
5f226572b3b6e1a6fea11f5f3c862a47158f66fe 26-Aug-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rolling tree back to its state as of r2169 to see if that fixes Windows buildbots

git-svn-id: http://skia.googlecode.com/svn/trunk@2179 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
513909f9a2f11e385be96ec5455dcbecfd5d32d7 25-Aug-2011 tomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove compiler warnings (Linux clang, mostly).
Fix indentation.
Remove unnecessary virtual destructor.
codereview.appspot.com/4965043/



git-svn-id: http://skia.googlecode.com/svn/trunk@2171 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
cb6ccdde5120ec45df208c0b958b263d8252a505 23-Aug-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> respect subpixel positioning



git-svn-id: http://skia.googlecode.com/svn/trunk@2165 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
d361e7eaa6ef399989914a56ff377005f8d44dae 22-Aug-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> silence end of file LF warning on chrome's mac builds

Review URL: http://codereview.appspot.com/4921042/



git-svn-id: http://skia.googlecode.com/svn/trunk@2149 2bbb7eff-a529-9590-31e7-b0007b416f81
kTime_Unix.cpp
098660020cf06ef9a95934b9635ab6996145b3e2 18-Aug-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Use gcc intrinsic functions for atomic incr and decr

Review URL: http://codereview.appspot.com/4894055/



git-svn-id: http://skia.googlecode.com/svn/trunk@2138 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_pthread.cpp
37ad8fb72ff1b3faac93b01ead2c79e1a06fc172 18-Aug-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Subset font advance data (W array).

Patch by arthurhsu@chromium.org. Original CL:
http://codereview.appspot.com/4830068
http://codereview.appspot.com/4905051/

Review URL: http://codereview.appspot.com/4911042

git-svn-id: http://skia.googlecode.com/svn/trunk@2134 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
7b13aca86f7c68322a1e84f5ca646f7dc9cade6b 17-Aug-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Improve generation of glyph advance array." This reverts commit r2126

gm segfaults in font id retrieval.

TBR=arthurhsu@chromium.org

Review URL: http://codereview.appspot.com/4901049

git-svn-id: http://skia.googlecode.com/svn/trunk@2128 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
e7f3300f4250cbe308651f59c992edf6b779a24d 17-Aug-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Improve generation of glyph advance array.

Review URL: http://codereview.appspot.com/4830068

git-svn-id: http://skia.googlecode.com/svn/trunk@2126 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
8fbc3f07a863c7b23835ed0394b8a2c6378dc6b0 15-Aug-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add missing function declarations.
http://codereview.appspot.com/4904043/

M src/ports/SkFontHost_mac_coretext.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@2112 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
66f2e33651888efe47537c563ca846b029e7001d 09-Aug-2011 ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Port change r2040 to mac

This is to honor fixed width font during PDF generation. Change r2040 fixed only Windows port. Linux does not have the problem.

Review URL: http://codereview.appspot.com/4855046

git-svn-id: http://skia.googlecode.com/svn/trunk@2076 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
a767fa06ca28be9df1ff6e08a299e0bec839a2dc 05-Aug-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add api for scalers to force us to use skia to generate their bits from their
path. This may allow the windows scaler to do that if GDI is giving bad
results (i.e. not respecting the request for antialiasing).



git-svn-id: http://skia.googlecode.com/svn/trunk@2054 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
9181aa84aa288d2bc3ab079b6b40a79ac87d8807 05-Aug-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> revert rotated-lcd workaround until I can render gray/lcd+subpixel myself



git-svn-id: http://skia.googlecode.com/svn/trunk@2048 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
5aa937b300475c956bfad0c34a6daa71d166f6fa 04-Aug-2011 ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Honor fixed width font in Windows.

BUG=none
TEST=none
Review URL: http://codereview.appspot.com/4850041

git-svn-id: http://skia.googlecode.com/svn/trunk@2040 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
955bb0751a0d48e47a341c7c0adda94977bc8170 01-Aug-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Make WIC encoder lock the bitmap pixels.
http://codereview.appspot.com/4832045/



git-svn-id: http://skia.googlecode.com/svn/trunk@2016 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
22b4950f60c18d79b985bceb39784840e3d30004 01-Aug-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Windows image decoder should handle all bitmap formats.
http://codereview.appspot.com/4801070/



git-svn-id: http://skia.googlecode.com/svn/trunk@2015 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
d53bd4a40a4390d38d9836ed9e3c32cda4cbc2df 28-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> balance destructor's CFRelease with a CFRetain when we get the cgfont



git-svn-id: http://skia.googlecode.com/svn/trunk@1988 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
ec3ed6a5ebf6f2c406d7bcf94b6bc34fcaeb976e 28-Jul-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Automatic update of all copyright notices to reflect new license terms.

I have manually examined all of these diffs and restored a few files that
seem to require manual adjustment.

The following files still need to be modified manually, in a separate CL:

android_sample/SampleApp/AndroidManifest.xml
android_sample/SampleApp/res/layout/layout.xml
android_sample/SampleApp/res/menu/sample.xml
android_sample/SampleApp/res/values/strings.xml
android_sample/SampleApp/src/com/skia/sampleapp/SampleApp.java
android_sample/SampleApp/src/com/skia/sampleapp/SampleView.java
experimental/CiCarbonSampleMain.c
experimental/CocoaDebugger/main.m
experimental/FileReaderApp/main.m
experimental/SimpleCocoaApp/main.m
experimental/iOSSampleApp/Shared/SkAlertPrompt.h
experimental/iOSSampleApp/Shared/SkAlertPrompt.m
experimental/iOSSampleApp/SkiOSSampleApp-Base.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Debug.xcconfig
experimental/iOSSampleApp/SkiOSSampleApp-Release.xcconfig
gpu/src/android/GrGLDefaultInterface_android.cpp
gyp/common.gypi
gyp_skia
include/ports/SkHarfBuzzFont.h
include/views/SkOSWindow_wxwidgets.h
make.bat
make.py
src/opts/memset.arm.S
src/opts/memset16_neon.S
src/opts/memset32_neon.S
src/opts/opts_check_arm.cpp
src/ports/SkDebug_brew.cpp
src/ports/SkMemory_brew.cpp
src/ports/SkOSFile_brew.cpp
src/ports/SkXMLParser_empty.cpp
src/utils/ios/SkImageDecoder_iOS.mm
src/utils/ios/SkOSFile_iOS.mm
src/utils/ios/SkStream_NSData.mm
tests/FillPathTest.cpp
Review URL: http://codereview.appspot.com/4816058

git-svn-id: http://skia.googlecode.com/svn/trunk@1982 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_android.cpp
kDebug_stdio.cpp
kDebug_win.cpp
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_fontconfig.cpp
kFontHost_gamma.cpp
kFontHost_gamma_none.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_tables.cpp
kFontHost_win.cpp
kGlobals_global.cpp
kHarfBuzzFont.cpp
kImageDecoder_CG.cpp
kImageDecoder_WIC.cpp
kImageDecoder_empty.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
kMemory_malloc.cpp
kOSEvent_android.cpp
kOSEvent_dummy.cpp
kOSFile_stdio.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
kTime_Unix.cpp
kTime_win.cpp
kXMLParser_empty.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
k_predefined_gamma.h
fd03db0fe9c7a7f72df560b2039f2c3050c2fab9 28-Jul-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Manually update copyright notices in files that defied the automated process
used in http://codereview.appspot.com/4816058/ ('Automatic update of all copyright notices to reflect new license terms.')

Note that the following files have been left alone, because they name
copyright holders outside of Google. Please let me know if we need to update
these files:

experimental/CiCarbonSampleMain.c
src/opts/memset16_neon.S
src/opts/memset32_neon.S
src/opts/opts_check_arm.cpp
src/ports/SkDebug_brew.cpp
src/ports/SkMemory_brew.cpp
src/ports/SkOSFile_brew.cpp
Review URL: http://codereview.appspot.com/4806054

git-svn-id: http://skia.googlecode.com/svn/trunk@1981 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_brew.cpp
kMemory_brew.cpp
kOSFile_brew.cpp
82a34d83f646d069ef2d1d7b649d0a0b1829d62f 26-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> GetGlyphOutline can return clipped results :( so we now draw offscreen
instead, as we always did for BW and lcd. This means sometimes we get
BG results when we requested AA, since GDI can decide (based on user-settings)
that we're too small for AA :(



git-svn-id: http://skia.googlecode.com/svn/trunk@1960 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
ece2b0297c1d55c46b4c63ba7a54f518a490a502 25-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> reenable rotated freetype fix, but behind #ifndef SK_IGNORE_ROTATED_FREETYPE_FIX,
so chrome can disable it for now.

add --match foo to gm/ so you can run just tests that substring match your pattern (foo)



git-svn-id: http://skia.googlecode.com/svn/trunk@1945 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
0e35ca8382ae101187c7cb2e1bdcf5dff1fd9a6f 22-Jul-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Temporary rollback of r1924 to unblock DEPS roll
Review URL: http://codereview.appspot.com/4817046/



git-svn-id: http://skia.googlecode.com/svn/trunk@1942 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
8ed436c9b04548787442ddf3d7895a217b258fd5 21-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> disable hinting when rotated, since it looks bad
we do the same thing on windows (mac seems to handle rotation fine)



git-svn-id: http://skia.googlecode.com/svn/trunk@1924 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
db77a6a9a9bef7033aca9dffa99d52be1f51f8d9 19-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> export function to return a typeface's LOGFONT



git-svn-id: http://skia.googlecode.com/svn/trunk@1903 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
9c0ebce1a8c21bbbe49d9f935685b82b5eb5047f 06-Jul-2011 Chet Haase <chet@google.com> Read font info from system config files

This change adds new files in /system/etc: system_fonts.xml and
fallback_fonts.xml. The change also allows a third file to be added
by vendors in /vendor/etc/fallback_fonts.xml. These files, loaded at
boot time, mimic the logic that used to be in code, but which is
now configurable through editing these files, making the system more
flexible and easy to work with for us and vendors as future fonts
are added to the system.

Change-Id: Iac0af4924ca0454c6dde4d53058b1425200ed4b7
ontHostConfiguration_android.cpp
ontHostConfiguration_android.h
kFontHost_android.cpp
da44067ec97fddd3bab52da34e2fc5ddc5241c34 13-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> since I can't make GDI's lcd text pretty when we're rotated, detect that
and force us into grayscale.



git-svn-id: http://skia.googlecode.com/svn/trunk@1850 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
e8fab0111d11316a027bc6ae60c62cc6575cdc05 13-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add more scalerrec filtering, in prep for handling unhinted



git-svn-id: http://skia.googlecode.com/svn/trunk@1847 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
30b74fc1d3e31a6ff3c3bdf6c0ac49a269b9fa29 13-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> send output to printf as well, for commandlines



git-svn-id: http://skia.googlecode.com/svn/trunk@1846 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_win.cpp
b65301aa53c9076da7b381c3f5ac3373f0cfa351 12-Jul-2011 Derek Sollenberger <djsollen@google.com> Add support for multiple styles in the fallback fonts.

bug: 4390209
Change-Id: I74774b43b3f0c903fb96911e156d9911cf55bb68
kFontHost_android.cpp
eb4843787eb5afdc08871f38de631736d8f3a9f3 11-Jul-2011 Russell Brenner <russellbrenner@google.com> Revert "Allow multiple styles for fallback fonts"

The change being reverted somehow alters the reference counting of
SkTypeface instances, resulting in prematurely freed font data, which
is the underlying issue with the disappearing clock on the lockscreen
(http://b/5004404).

This reverts commit 792a256ab723bbc4b55ba00194fe2a9195cae8c0.

Bug: 5004404
Change-Id: I5c3b225f860ce2dcfc0751bded2d842b43a2d3c4
kFontHost_android.cpp
8af39c6fd2e903d2b0a2b1b91b295b847a3ec772 07-Jul-2011 Russell Brenner <russellbrenner@google.com> Add null-check in remove_from_family()

An invalid face is not expected here, but still should not be allowed
to crash.

Bug: 5002710
Change-Id: Ifd11e918f968d5eef67932e514ea6754819fb7a5
kFontHost_android.cpp
3c1b28db4d353111bce90de3e2086405268f850d 07-Jul-2011 yangsu@google.com <yangsu@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Deleted the #endif that's caused the compiler erro


git-svn-id: http://skia.googlecode.com/svn/trunk@1821 2bbb7eff-a529-9590-31e7-b0007b416f81
kTime_Unix.cpp
2e20c248f33e1ee129280dd71492785533908b63 07-Jul-2011 yangsu@google.com <yangsu@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Updated iOSSampleApp and related files.
Removed include guard in SkTime_Unix.cpp, which the iOSSampleApp now uses.


git-svn-id: http://skia.googlecode.com/svn/trunk@1820 2bbb7eff-a529-9590-31e7-b0007b416f81
kTime_Unix.cpp
7b45a2a7180f3d12d3c01a7eb71aa40b37ef648a 07-Jul-2011 Russell Brenner <russellbrenner@google.com> Merge "Restored null-check in SkFontHost::NextLogicalFont"
04b5451c69f535017109bba8594ce7111c4da2a7 07-Jul-2011 Russell Brenner <russellbrenner@google.com> Restored null-check in SkFontHost::NextLogicalFont

This updated line was to have been included in CL 118811, but some
bad gerrit-fu caused it to go amiss.

Bug: 4390209
Change-Id: Ia7b8e2849cfae3cdfbebc09a91fe26f2355f1ebb
kFontHost_android.cpp
9b37d4117b767112e4dd706ebe23b4fe58f18d70 07-Jul-2011 Russell Brenner <russellbrenner@google.com> Add Droid Ethiopic to fallback list

Regular and Bold styles are now included in the fallback list.

Bug: 4902641
Change-Id: Ia88dedb136ab00dee3ae4e4cc5552e0d3a743f13
kFontHost_android.cpp
792a256ab723bbc4b55ba00194fe2a9195cae8c0 01-Jul-2011 Russell Brenner <russellbrenner@google.com> Allow multiple styles for fallback fonts

Fallback fonts are now recorded with their styles in the list of
available fonts (which is now a doubly-linked list). NextLogicalFont()
has a new parameter, providing the originally requested fontID, from
which we can determine the requested style, which we then pass to
find_best_face() to pick from the available styles.

SkFontHost::NextLogicalFont() no longer assumes that origFontID is
valid (see http://b/issue?id=4980240).

Bug: 4390209
Change-Id: I2e600f7eb75d207e95bae8cc9ed8379ade396058
kFontHost_android.cpp
db2a09f2408728871ed9e26eb1197cad6585a15d 01-Jul-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix chrome build, check OSX version before referencing 10.6 APIs



git-svn-id: http://skia.googlecode.com/svn/trunk@1776 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
cc8395159cea368f09a2fce36229c7bc93828c9a 01-Jul-2011 Russell Brenner <russellbrenner@google.com> Revert "Allow multiple styles for fallback fonts"

This reverts commit da49dc51598fa6f5ffae857f73bb8be12caf216e.

Bug: 4980240
Change-Id: Ib0470d458db12821a89ce019d395152d06296305
kFontHost_android.cpp
b371ed1784fcc594131abb7fc2f76b0abd20ca9e 29-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix LCD text filtering



git-svn-id: http://skia.googlecode.com/svn/trunk@1765 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
5070d79edd54450f2980f7ff1e2d04762e89aa0b 29-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix build for old versions of freetype without FT_Library_SetLcdFilter
http://codereview.appspot.com/4625071/



git-svn-id: http://skia.googlecode.com/svn/trunk@1764 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
da49dc51598fa6f5ffae857f73bb8be12caf216e 31-May-2011 Russell Brenner <russellbrenner@google.com> Allow multiple styles for fallback fonts

Fallback fonts are now recorded with their styles in the list of
available fonts (which is now a doubly-linked list). NextLogicalFont()
has a new parameter, providing the originally requested fontID, from
which we can determine the requested style, which we then pass to
find_best_face() to pick from the available styles.

Bug: 4390209
Change-Id: I0c45fd7cefd00df3805bd75df77c519f6d922fe7
kFontHost_android.cpp
4be8adc617d66548ecd632bd3c3773646c7cc2da 29-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> explicitly enable font smoothing, in case your mac is hooked to a monitor
that apple think's can't do it (but it realy can)



git-svn-id: http://skia.googlecode.com/svn/trunk@1754 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
d9e75020e386412b317888ae4ff24be970c6efab 28-Jun-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix Mac compile - missing comma.

Review URL: http://codereview.appspot.com/4625073

git-svn-id: http://skia.googlecode.com/svn/trunk@1738 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
98dfb05a85a00f114408569e448874f811a5a9af 28-Jun-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix core text font metrics - scale to em size and convert float to int

Review URL: http://codereview.appspot.com/4654070

git-svn-id: http://skia.googlecode.com/svn/trunk@1737 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
effc5016f040945a53ab0ea47f9ea02404c17805 27-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete text codepaths



git-svn-id: http://skia.googlecode.com/svn/trunk@1725 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_Subpixel.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
900d8772e30c329c25baff77098dfdd85fb8e94e 24-Jun-2011 yangsu@google.com <yangsu@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fixed include statements to correctly link mac/ios libraries


git-svn-id: http://skia.googlecode.com/svn/trunk@1712 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
57d73d628dad2e1a67532d7153603662ec91741d 24-Jun-2011 yangsu@google.com <yangsu@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added mutex in GetDefaultFont and added the default font to the FontCache when it's first created


git-svn-id: http://skia.googlecode.com/svn/trunk@1711 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
b80255700ee01bd4bcb93006281c610f3e5c719d 24-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix null fFontRef in GetDefaultFont()

http://codereview.appspot.com/4662041/



git-svn-id: http://skia.googlecode.com/svn/trunk@1709 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
c134f394011372512f13e119df65204920f9bef6 24-Jun-2011 yangsu@google.com <yangsu@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Added platform specific includes


git-svn-id: http://skia.googlecode.com/svn/trunk@1696 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
9df621da5024dda2ffd77cfa6e6c0a0f68e4aa86 23-Jun-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Wrap SkStreams in IStreams instead of copying data around.
http://codereview.appspot.com/4630062/


git-svn-id: http://skia.googlecode.com/svn/trunk@1694 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
0199fa7423f89a129da2b22a488f2c18e2e4727f 23-Jun-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 1562)

Change-Id: Ief005abc9eb741ccf5efec3d1f29fe2dfc23103d
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
c8e0f9311c9ff51ea22f6b017b876393025c0555 23-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix mono bittest



git-svn-id: http://skia.googlecode.com/svn/trunk@1690 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
73824072a9796e18aa68bbb51c7c05e54fea65b6 23-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> promote embedded bitmaps for lcd16



git-svn-id: http://skia.googlecode.com/svn/trunk@1679 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
242bb89c0d239662b05f5a396d45ad4f28b1596e 22-Jun-2011 bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add image encoder/decoder for Windows.
http://codereview.appspot.com/4634078/


git-svn-id: http://skia.googlecode.com/svn/trunk@1676 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_WIC.cpp
1eeaf0ba2381f84ffd889f56303cbe0d1886bb21 22-Jun-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add support for 8 bits/component glyphs, to
better match the fonts produced by CoreText on OS/X.

M include/config/SkUserConfig.h
M include/core/SkMask.h
M include/core/SkScalerContext.h
M src/core/SkBlitter_ARGB32.cpp
M src/core/SkScalerContext.cpp
M src/core/SkPaint.cpp
M src/gpu/SkGrFontScaler.cpp
M src/ports/SkFontHost_mac_coretext.cpp
M src/ports/SkFontHost_mac.cpp
M gpu/include/GrTypes.h
M gpu/src/GrAtlas.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@1672 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
kFontHost_mac_coretext.cpp
ccb74eabccf19f66b6bf31f4acae89b62baa16c3 21-Jun-2011 yangsu@google.com <yangsu@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Changed mac specific files to use ApplicationServices rather than Carbon
http://codereview.appspot.com/4644053/


git-svn-id: http://skia.googlecode.com/svn/trunk@1658 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
kImageDecoder_CG.cpp
af9d9c2fc7a147ee414f8c29bc20d676f558fd1e 15-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change GC imagedecoder to use the same colorspace between image and context,
so we get reproducible, unchanged, values.

use GC imagedecoder in gyp for mac



git-svn-id: http://skia.googlecode.com/svn/trunk@1599 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
baa677b24896b67ecb08fc3b13c4c36953243a7d 14-Jun-2011 epoger@google.com <epoger@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> delete all old (non-Gyp) buildfiles



git-svn-id: http://skia.googlecode.com/svn/trunk@1583 2bbb7eff-a529-9590-31e7-b0007b416f81
orts_files.mk
7d26c590f6bc431a5ecf5c25619b64d058613a4d 13-Jun-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add 2nd parameter to SkFontHost::NextLogicalFont()
needed by android to map different styles of fallback fonts



git-svn-id: http://skia.googlecode.com/svn/trunk@1562 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
0b15698a8c76bb8abc1b555c1d91892669b4118f 06-Jun-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 1510)

This CL includes bug fixes and closely mirrors the version of
Skia used in Chrome M13, which is likely to be our baseline for
ICS.

The CL also adds source files for the SampleApp which will allow
us to execute basic skia tests. The SampleApp requires the
utils/views directory in order to run.

Finally, we have included the PDF backend for Skia in order to
experiment with using it to generate PDF files for certain
applications.

Note: The SampleApp and PDF code are not built as part of libskia.

Change-Id: I1895ccfbd8074e25f19148cc7bd1b4af571fb307
kFontHost_FreeType.cpp
kFontHost_linux.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
ab0ab4a601356160f2e49d7935ddd0f559a848e2 01-Jun-2011 caryclark@google.com <caryclark@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> committing http://codereview.appspot.com/4515175/

git-svn-id: http://skia.googlecode.com/svn/trunk@1473 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
e70e400bac1ee4c9743c1f0c3c7444e0f3c35bfc 26-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> checkpoint for better 8bit->5bit reduction (disable for now)



git-svn-id: http://skia.googlecode.com/svn/trunk@1429 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
598b859211d0772324da04a644c7a71ef585e38d 24-May-2011 thakis@chromium.org <thakis@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix a new clang warning:

third_party/skia/src/ports/SkFontHost_FreeType.cpp:957:7:error: switch case is
in protected scope
default:
^
third_party/skia/src/ports/SkFontHost_FreeType.cpp:918:17: note: jump bypasses
variable initialization
FT_BBox bbox;
^
third_party/skia/src/ports/SkFontHost_FreeType.cpp:946:7:error: switch case is
in protected scope
case FT_GLYPH_FORMAT_BITMAP:
^
third_party/skia/src/ports/SkFontHost_FreeType.cpp:918:17: note: jump bypasses
variable initialization
FT_BBox bbox;
^
2 errors generated.

This is arguably a false positive, but since |bbox| can only safely be used in
the first case branch, it's a good idea to scope it to there anyway. This is
the only instance this warning occurs in all of chrome.

Review URL: http://codereview.appspot.com/4532081/



git-svn-id: http://skia.googlecode.com/svn/trunk@1402 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
6271117d826098c1399cf7442f8eea2d665cb78a 18-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> support BW glyphs, instead of always forcing them to AA



git-svn-id: http://skia.googlecode.com/svn/trunk@1364 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
bde3c8ed970ab9cb4574d788ee8724bc90c32c04 18-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> improve gray approximation for LCD LERP



git-svn-id: http://skia.googlecode.com/svn/trunk@1359 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
c518134fa2634d0c14885da877cb9530ad1a1bdd 17-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add optional decolorization value for lcd text



git-svn-id: http://skia.googlecode.com/svn/trunk@1358 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
6fb8f77abb561cec3eeb2d5c71ae9196770ddf00 17-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> silence printf



git-svn-id: http://skia.googlecode.com/svn/trunk@1346 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
1dd17a133f4fa5c5a0c752e6b9a6f7af6f329fb8 17-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use hires metrics when rotated (or subpixel is requested)



git-svn-id: http://skia.googlecode.com/svn/trunk@1342 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
35e2e62b55598210f6999fc2ea26ff8f41446ffe 16-May-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 1327)

Change-Id: I46f41274d07a3d7bac4728f8841c7f5e89dc9181
kDebug_stdio.cpp
kDebug_win.cpp
kFontHost_FreeType.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
f4c2622a1a3489988f2d85a81fdc132b17a92bdd 17-May-2011 ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use SkSetFourByteTag in SkFontHost_win.cpp.
Review URL: http://codereview.appspot.com/4535075

git-svn-id: http://skia.googlecode.com/svn/trunk@1340 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
d604481f7a2587f5b400d2a0a68a6491a0d584c7 13-May-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Fix windows SkFontHost::OpenStream for TTC fonts.

Review URL: http://codereview.appspot.com/4515074

git-svn-id: http://skia.googlecode.com/svn/trunk@1319 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
6744d498fcbbbcf503ec80c4d43dd8f118a88597 09-May-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Add a ToUnicode mapping for fonts.

This makes text in PDFs searchable and copy&paste-able.

Code from arthurhsu@chromium.org. Original review: http://codereview.appspot.com/4428082/

Review URL: http://codereview.appspot.com/4525042

git-svn-id: http://skia.googlecode.com/svn/trunk@1280 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_win.cpp
96a9f791f2dbad2671db4f5270416c1e74fc8ec6 06-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix some fixed-width CJK

http://code.google.com/p/skia/issues/detail?id=222



git-svn-id: http://skia.googlecode.com/svn/trunk@1261 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
8a6400ef3ea9950f89629f24455250edf6ffd615 04-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> implement (sort of) Serialize/Deserialize



git-svn-id: http://skia.googlecode.com/svn/trunk@1244 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
d9fec6114fcda741390f9234b7ca72cb75e065de 02-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> never support bw



git-svn-id: http://skia.googlecode.com/svn/trunk@1226 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
59d2f63583512b47df579e80f1ae39c74fad5f3e 02-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix signed shift in blend32
use typefacecache in fonthost_win



git-svn-id: http://skia.googlecode.com/svn/trunk@1224 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_win.cpp
kFontHost_win.cpp
baf7a0731160a028e6ec53156553b480be567874 02-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add win-specific backend to SkDebugf



git-svn-id: http://skia.googlecode.com/svn/trunk@1223 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_stdio.cpp
kDebug_win.cpp
2f3dc9dc4c970bd066be329a842a791d91f524e2 02-May-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add typefacecache
speedup lcd blits
clean up some samples



git-svn-id: http://skia.googlecode.com/svn/trunk@1220 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
1f55b046aa4f639488418e6352dbd9741e64f5a2 26-Apr-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> CGColorSpaceCreateDeviceRGB() better matches CG's output



git-svn-id: http://skia.googlecode.com/svn/trunk@1183 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
f5dbe2f00f853c6a1719924bdd0c33335a53423a 15-Apr-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstream android changes.

reviewed by: reed


git-svn-id: http://skia.googlecode.com/svn/trunk@1134 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
87b8e645865f9633f410c02252a0fd3feb18f09b 14-Apr-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 1116)

There is a companion change in external/webkit

Change-Id: I1c4110e7520bbef3f4e5f9551adb7ec79ac1e3ed
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
orts_files.mk
261c20a122fc458f060500938b306bf4a3ab3575 05-Apr-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> support BW text



git-svn-id: http://skia.googlecode.com/svn/trunk@1053 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
0e6dc0a320985ffd31f77eed8a41e62132b9ba95 30-Mar-2011 ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Prepend SkAdvancedTypefaceMetrics on enum usage.
Review URL: http://codereview.appspot.com/4321047

git-svn-id: http://skia.googlecode.com/svn/trunk@1024 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
325cb9aa17b94258b362082eb3a799524f4345f3 30-Mar-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Improve the SkAdvancedTypefaceMetrics interface w.r.t. vertical advances.

Add a template function to type safe-combine bits of a bit field.

Review URL: http://codereview.appspot.com/4313053

git-svn-id: http://skia.googlecode.com/svn/trunk@1020 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
6fa451862097987e8c608659fbb5fdf9dee24d96 22-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> inline knowledge that our pointsize is always 1 when we measure/draw

#ifdef protect 10.6 or later APIs (not available on 10.5)



git-svn-id: http://skia.googlecode.com/svn/trunk@982 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
df49991eb36286bca10d8c3da4ebcecaec187bbf 22-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkCreateTypefaceFromCTFont() to create a typeface directly from a CTFontRef

Compute the actual style from the returned CTFontRef, rather than assuming the
request will always be met.



git-svn-id: http://skia.googlecode.com/svn/trunk@979 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
2ccdf2abc2fefcb820bd933feaafc535cf3d1b4b 22-Mar-2011 mike@reedtribe.org <mike@reedtribe.org@2bbb7eff-a529-9590-31e7-b0007b416f81> map canonical css names to real fonts



git-svn-id: http://skia.googlecode.com/svn/trunk@975 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
c8ad63e5e42637c65c6b4e0adfacce55730b722d 18-Mar-2011 bsalomon@google.com <bsalomon@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Initial GYP file for skia / gr. Builds SampleApp on Mac, Windows, Linux.

Review URL: http://codereview.appspot.com/4282056/

git-svn-id: http://skia.googlecode.com/svn/trunk@955 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
137a4ca42423bbb6d683067ea544c9a48f18f06c 17-Mar-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 950)

This merge will allow us to now import the sample app
infrastructure in skia to do on device measurements.

Change-Id: Idcab6b1524f371521717cde61a6e98a12d897e6b
kFontHost_FreeType.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
05b6b4d746867a9fb02e14edfe1bf3685abeb813 14-Mar-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 922)

Change-Id: I7ed57d10905d8bad6486a4d7410165eec1cc2b4f
kFontHost_FreeType.cpp
kFontHost_ascender.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
cd9d69b9ce7eb301a9fd8d91b9f95fd99b07bae5 14-Mar-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstreaming changes from android.

- fix compile warnings in the GPU code
- upstream android specific code (ifdef protected)
- fail gracefully when a custom allocator fails



git-svn-id: http://skia.googlecode.com/svn/trunk@936 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
260db92d4975c50fd929399e8d6875a4c854cd5d 14-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> trim 3-byte column at start and end of freetype bitmap



git-svn-id: http://skia.googlecode.com/svn/trunk@935 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
8abde0a15d330bda826de3bf0b7bf9a59c514ddf 14-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> disable lcd format for lcd16 as well



git-svn-id: http://skia.googlecode.com/svn/trunk@934 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
ea2333de1e93da38045111560295ef825be99956 14-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add LCD16 copy routine



git-svn-id: http://skia.googlecode.com/svn/trunk@932 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
6016962f7237058eb196987ec0e74a50210eee37 14-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use system font path when building on the mac



git-svn-id: http://skia.googlecode.com/svn/trunk@931 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_simple.cpp
8a5d692c034b4f027391b4e659c7562714f62804 14-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> work around linker-error when building on the Mac



git-svn-id: http://skia.googlecode.com/svn/trunk@930 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
ac6b97972d3c5a8e10b79c1409818756310e0f12 11-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> support lcd16 mask format
convert line-endings to unix style (the default for skia)



git-svn-id: http://skia.googlecode.com/svn/trunk@923 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
f88d6765a594cf9fb0825b74779f74394a7ccc7a 10-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check-point for kLCD16_Format mask support
disabled for now in SkPaint.cpp (for further testing)



git-svn-id: http://skia.googlecode.com/svn/trunk@917 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
9db86bb9cd1b77be0afc504ccc07026e4282d7e7 04-Mar-2011 ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> PDF Type3 Support.


git-svn-id: http://skia.googlecode.com/svn/trunk@892 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
f7c2c4544f866ae65cd9a4eee4da563f6d653d20 04-Mar-2011 ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Update windows port of of SkFontHost::GetAdvancedTypefaceMetrics to use calculateGlyphCount.

Review URL: http://codereview.appspot.com/4245060

git-svn-id: http://skia.googlecode.com/svn/trunk@890 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
0bc7bf5fe418191473f8325d89dd9e74be3ff928 04-Mar-2011 ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement SkScalerContext_Windows::generateGlyphCount() and provide access via SkGlyphCache interface.
* This will be used by PDF font code.

Review URL: http://codereview.appspot.com/4261042

git-svn-id: http://skia.googlecode.com/svn/trunk@888 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_ascender.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_win.cpp
9b74b1114ace60978308e2942ace6fc21ee15790 04-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> export SkCreateTypefaceFromLOGFONT



git-svn-id: http://skia.googlecode.com/svn/trunk@886 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
b652427197ddaac5d35010e1b199bcb431e656b7 01-Mar-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete generateLineHeight
use canonical lfHeight so we can compare different LOGFONTs and map
equivalent fonts (except for height) to the same typeface. To do this I
add fSize to scale the output from GDI to get from the canonical int textSize
to the actual fractional size.



git-svn-id: http://skia.googlecode.com/svn/trunk@871 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
958c39bd0560c4cd25089083ca9d8fd2db6097ef 28-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> export SkCreateTypefaceFromLOGFONT



git-svn-id: http://skia.googlecode.com/svn/trunk@864 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
71531ca1f484da5837be8017a0c83e5bff701587 24-Feb-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 842)

This merge picks up the fixed width font updates and improved
blur code from the Skia repository.

Change-Id: Iad2301a353c31da27ca214527cf4ed8f24641749
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_linux.cpp
kFontHost_win.cpp
7b34ea61cea33e8790d4b2bd48a4e9c0bba066cd 24-Feb-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Upstreaming code from android repository.

* fix for png decoder
* clean up for SkFontHost

reviewed by reed@google.com


git-svn-id: http://skia.googlecode.com/svn/trunk@847 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_android.cpp
57f4969724a1dd88c8d9ae35a863e6cf621181d5 23-Feb-2011 djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> merge from android tree:
- optional parameters added to descriptorProc and allocPixels
- clip options to image decoders
- check for xfermode in blitter_a8
- UNROLL loops in blitrow

reviewed by reed@google.com



git-svn-id: http://skia.googlecode.com/svn/trunk@841 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageRef_ashmem.cpp
kImageRef_ashmem.h
40528743dbb9ce7f39f093e0cdc47849ac8887cf 07-Jan-2011 Derek Sollenberger <djsollen@google.com> Skia Merge (revision 808)

This merge has companion changes in the following projects in order
to be compatible with changes to skia interfaces and practices:

1. /frameworks/base
2. /external/webkit

Change-Id: I54092971305579e81a8fdb27bbe04ec340792e3b
kDebug_brew.cpp
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_FreeType_Subpixel.cpp
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_fontconfig.cpp
kFontHost_gamma_none.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
kHarfBuzzFont.cpp
kImageDecoder_CG.cpp
kImageRef_ashmem.cpp
kMemory_brew.cpp
kMemory_malloc.cpp
kOSFile_brew.cpp
kThread_win.cpp
kTime_win.cpp
7b19d6d12c36fed79c7d8ddafa2895de9e0cd641 23-Feb-2011 ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Support unicode to glyph id conversion in windows for non-BMP characters.

BUG=144

Review URL: http://codereview.appspot.com/4172054

git-svn-id: http://skia.googlecode.com/svn/trunk@839 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
3681276c7847594ff7b175c01dbd6b5d87e9d286 23-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update to add isFixedWidth attribute to typefaces



git-svn-id: http://skia.googlecode.com/svn/trunk@838 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
5b31b0f1eaca0cdc3aa5697e8efa1baf68b0774e 23-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add fixed-width attribute to typeface
(patch from russellbrenner)



git-svn-id: http://skia.googlecode.com/svn/trunk@837 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_android.cpp
57c2b1de2315349ec2c70ba21fba0272351a1496 17-Feb-2011 ctguil@chromium.org <ctguil@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Set fLastGlyphID in SkFontHost::GetAdvancedTypefaceMetrics for windows.

Review URL: http://codereview.appspot.com/4178060

git-svn-id: http://skia.googlecode.com/svn/trunk@809 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
564e46f19d400b9dcfebdb47079415f1757e2d71 15-Feb-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix file modes.

Review URL: http://codereview.appspot.com/4178051

git-svn-id: http://skia.googlecode.com/svn/trunk@790 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
6f72d1eacd66d2a9c0059962a75c0ca6a99ff98e 15-Feb-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Provide windows font host implementation needed to support TrueType text in pdf backend.
- Move AdvanceMetric template functions into new file SkAdvancedTypefaceMetrics.cpp

Review URL: http://codereview.appspot.com/4174041

git-svn-id: http://skia.googlecode.com/svn/trunk@789 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_win.cpp
09053444ad1c8cff0f9f47ebe68d3b43bff8e39e 14-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix compile-error, mismatch between fontID and id

http://code.google.com/p/skia/issues/detail?id=149



git-svn-id: http://skia.googlecode.com/svn/trunk@787 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
9db446a5b66412dd0dd48a85253bf1a8310ec76b 10-Feb-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Use real glyph IDs in the win fonthost to better support pdf.

Review URL: http://codereview.appspot.com/4142044

git-svn-id: http://skia.googlecode.com/svn/trunk@782 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
337490d4ae0138e93eff01ded76b1140d105a023 09-Feb-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove extra stub definition of GetAdvancedTypefaceMetrics.

BUG=140
TEST=NONE

Review URL: http://codereview.appspot.com/4150043

git-svn-id: http://skia.googlecode.com/svn/trunk@779 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
c332b3f15d9077ae4e4388d5ef014ec3f0ce7725 07-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add



git-svn-id: http://skia.googlecode.com/svn/trunk@770 2bbb7eff-a529-9590-31e7-b0007b416f81
kMemory_brew.cpp
3e1313cf435f22dac60aa59699bb979351d2e7fd 07-Feb-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add



git-svn-id: http://skia.googlecode.com/svn/trunk@769 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_brew.cpp
c3a2ae5823049f589c1841a855bb5675d69e31dd 03-Feb-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Improve usability of SkAdvancedTypefaceMetrics for non PDF cases.

Change the code to fill out the metrics even if the font isn't embeddable. Previously, if the font wasn't embeddable, the code would set the type to not embeddable and return without filling out the rest of the metrics.

Review URL: http://codereview.appspot.com/3973053

git-svn-id: http://skia.googlecode.com/svn/trunk@758 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
c48b2b330f8bf0e01381e27ca36f48ef5c7d8d5f 02-Feb-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Cleanup SkPDFTypfaceInfo and make it more generic.

Renamed to SkAdvancedTypefaceMetrics.
Include Em size and return all metrics in unscaled font units.
Make retrieval of advances optional.
Reorder SkAdvancedTypefaceMetrics to be somewhat logical.
Change the types of fields in SkAdvancedTypefaceMetrics to their minimum required size.

Review URL: http://codereview.appspot.com/4121049

git-svn-id: http://skia.googlecode.com/svn/trunk@752 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
16be6b8fdfa625b36964fd8150ab1a6b1e3a56bd 28-Jan-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [PDF] Add replacement implementations for functions missing in older freetype libs.

Review URL: http://codereview.appspot.com/4043044

git-svn-id: http://skia.googlecode.com/svn/trunk@743 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
618ef5ee3bc1fae284c766597fd518faabf7373d 26-Jan-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> conditionalize impl on SK_SUPPORT_PDF, to help chrome build



git-svn-id: http://skia.googlecode.com/svn/trunk@740 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
8af0b361657b0de0dd3183996976e9c557d7ae41 26-Jan-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix windows build.

Review URL: http://codereview.appspot.com/3996048

git-svn-id: http://skia.googlecode.com/svn/trunk@739 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
2a22e10ab2946c5590cd2a258427ce3ccfca9bfa 25-Jan-2011 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add Truetype and Type 1 font embedding support

Sorry this is such a large CL. It was very exploratory for me to make this
work.

- Add an interface to SkFontHost to retrieve font information and provide NULL implementations on all platforms except Linux.
- Segment large Type 1 fonts into fonts with shared resources with 255 glyphs each.
- Convert the various Type 1 formats to the form PDF wants.
- Update font as we draw text instead of as part of the graphical state.
- Remove built-in font support, we can't really use it.

Other changes I can pull out to a separate CL if you like.

- Add SkTScopedPtr class.
- Fix double free of resources.
- Fix bug in resource unique-ifying code.
- Don't print anything for any empty clip path.
- Fix copy paste error - MiterLimit.
- Fix sign extension bug in SkPDFString
- Fix FlateTest rename that was missed on a previous commit.

Review URL: http://codereview.appspot.com/4082042

git-svn-id: http://skia.googlecode.com/svn/trunk@728 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
0e14e0ba070e520bcb129d1b39dd7448d89376db 11-Jan-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add port for Brew - untested



git-svn-id: http://skia.googlecode.com/svn/trunk@682 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_brew.cpp
4f809514799ef2e160b4f03944e0fb6d278f7547 04-Jan-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix for issue 93: need to rewind the shared stream each time openStream() is called



git-svn-id: http://skia.googlecode.com/svn/trunk@672 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
6963af2327a9738d22716759dc39526a4935ecde 04-Jan-2011 reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix uninitialized warning



git-svn-id: http://skia.googlecode.com/svn/trunk@669 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
ad789ee56f62779626899a74e078bd3410229998 03-Jan-2011 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> make inline helper static, so it can be included from than one .cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@667 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
28be72b63e457c680c192a34fb9f58e1c693363f 11-Nov-2010 vandebo@chromium.org <vandebo@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> PDF: Add text support with a font framework (font embedding to come).

Supports fakeBold, underline, strikethrough, mode (fill, stroke, both), size, skew, alignment (left, center, right).
Missing is drawFontOnPath and font lookup and embedding.
Changed SkPDFString to support how it is used from drawText methods.
Moved compile assert into SkTypes.
Moved constants and utility function used to support fakeBold, underline, and strikethrough into higher level locations.

Review URL: http://codereview.appspot.com/2946041

git-svn-id: http://skia.googlecode.com/svn/trunk@624 2bbb7eff-a529-9590-31e7-b0007b416f81
kThread_win.cpp
ad711393f2afcb3cb8abcf8879dccfa91db8eec2 24-Sep-2010 satok <satok@google.com> am d178ac36: am 956f20ce: Use MOTOYA Japanese fonts (MTLmr3m.ttf, MTLc3m.ttf) for Japanese fonts

Merge commit 'd178ac36bda038176a99943e2b50a2f0ae3ecc5c'

* commit 'd178ac36bda038176a99943e2b50a2f0ae3ecc5c':
Use MOTOYA Japanese fonts (MTLmr3m.ttf, MTLc3m.ttf) for Japanese fonts
956f20cebc0d9c7a1c59dc18a556b7aaff22b39c 22-Sep-2010 satok <satok@google.com> Use MOTOYA Japanese fonts (MTLmr3m.ttf, MTLc3m.ttf) for Japanese fonts

Change-Id: I1eccbe49f88c155b4b5490e2783db9d3ef2371be
kFontHost_android.cpp
61a678a28d6ff9cd066d342e6641c40470ed822d 06-Aug-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add support for TTC font files in SkFontHost_Freetype.
This is a companion change to a Chrome CL (
http://codereview.chromium.org/2870073/show )

(Patch by: jshin (Chromium))

BUG=http://crbug.com/50389
TEST=See the Chromium CL mentioned above.

http://codereview.appspot.com/1847046

git-svn-id: http://skia.googlecode.com/svn/trunk@593 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
cb34235f46b6259b612e72c416e850e26803250a 22-Jul-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix matrix use in coretext fonthost
update gm images to new baseline



git-svn-id: http://skia.googlecode.com/svn/trunk@590 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
930056ed27a2de58f315910e63db1ddca0bac63f 08-Jul-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix reference bugs in font linklist



git-svn-id: http://skia.googlecode.com/svn/trunk@587 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
a2c71cbd51da8b7767d43fe8954e7a4c674b2005 17-Jun-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add support for forcing autohinting.

http://codereview.appspot.com/1651044/show

git-svn-id: http://skia.googlecode.com/svn/trunk@580 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac_atsui.cpp
36bb697683f63f0ed8a37d7a7ef28c134dff856c 04-Jun-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add include of FT_SYNTHESIS_H

In older versions of Freetype, the FT_GlyphSlot_Own_Bitmap function is
defined in FT_SYNTHESIS_H. Modern versions have it in FT_BITMAP_H.

git-svn-id: http://skia.googlecode.com/svn/trunk@575 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
e76073bfcd30f8742a377d636bbad84183b275ec 04-Jun-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add support for fake bold of bitmap fonts.

BUG=45874

http://codereview.appspot.com/1558041/show

git-svn-id: http://skia.googlecode.com/svn/trunk@574 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
268013bfa6d5fbc2c6bf1452b467862e2a779120 03-Jun-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add carbon.h include



git-svn-id: http://skia.googlecode.com/svn/trunk@572 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
7bea2972bbacd040e635e02cb2d7216ed626a1a7 01-Jun-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove duplicate LCD functions (these are portable, and live in SkFontHost.cpp)



git-svn-id: http://skia.googlecode.com/svn/trunk@571 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac_coretext.cpp
4e02f30f93ca861c99745986c5c92e0c685d5c76 24-May-2010 Patrick Scott <phanna@android.com> Add ashmem image ref flattening.

Bug: 2612735
Change-Id: Iecfc11512c1d234fbf312aab4192b6c38c6c14b6
kImageRef_ashmem.cpp
kImageRef_ashmem.h
feda2f90a4ad9625e14d8cb02a90b9644d803dd4 19-May-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> separate mac fonthost into atsui (32bit, pre-10.6) and coretext (64bit, 10.6)
implementations.

code submitted by http://codereview.appspot.com/user/refnum



git-svn-id: http://skia.googlecode.com/svn/trunk@570 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
kFontHost_mac_atsui.cpp
kFontHost_mac_coretext.cpp
4701b5d25c5617888ea754f373946c57534750cb 12-May-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: Ic7024b390883841714ac6fb5f6a11f87a9f707a6
2b910807112618cb20b689bc6ae20e0e211ed41c 26-Apr-2010 Peter Eliasson <peter.eliasson.x@sonyericsson.com> Added GetUnitsPerEM method to SkFontHost

GetUnitsPerEM can be used as convenience method to
find out the number of font units per EM square
without having to fetch the head table.

Change-Id: I6f09b86a13e020ff74156571782f4bc822b7c1f3
kFontHost_FreeType.cpp
ff1f66966879e612660387285b7ead9c040ff88f 10-May-2010 The Android Open Source Project <initial-contribution@android.com> merge from open-source master

Change-Id: I064902aa9745342ccfe868331ccc000767e92fc0
70a303f3c949707ce36ed2847701571cd047f14e 10-May-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> [FreeType] Always use MONO hinting when hinting in monochrome.

This matches the behaviour of Cairo. It appears to be an undocumented
trick of font rendering on Linux that, in monochrome, all the hinting
modes expect no-hinting are mapped to FreeType's MONO hinting.

http://code.google.com/p/chromium/issues/detail?id=43252

http://codereview.appspot.com/1162041/show

git-svn-id: http://skia.googlecode.com/svn/trunk@562 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
19ca923e9120da2c5a2e66044a88022065d3c122 26-Apr-2010 Peter Eliasson <peter.eliasson.x@sonyericsson.com> Improved error handling when font loading fails.

Without this this patch, an application could trigger a platform crash
by calling:

Typeface typeface = Typeface.createFromFile("");
boolean isBold = typeface.isBold();

The crash occurs since the find_name_and_style function does not
return an error code.

Change-Id: Id1d2a43b47d956c5a52f01e7d4b8cbb12631d59a
kFontHost_FreeType.cpp
kFontHost_android.cpp
5f6a0762f14f73859e60f0e8339ca133d10e4d3c 21-Apr-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add a SkTypeface::CreateForChars() function.

This allows us to do font fallback for strange scripts.
Added empty stubs to the implementations on all platforms.

Patch-by: Evan Martin
Signed-off-by: Adam Langley

http://codereview.appspot.com/950041

git-svn-id: http://skia.googlecode.com/svn/trunk@557 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_simple.cpp
kFontHost_win.cpp
51709c748e32bb115103b1468eb507f4ccaa7ee8 16-Apr-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete closeStream() method -- the caller just unref's the stream when they're done



git-svn-id: http://skia.googlecode.com/svn/trunk@554 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
f244f1b19f07b1c946f8d7e24decbe1809dda7f6 16-Apr-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add EmptyTypeface class, to gracefully handle when there are no fonts avail.



git-svn-id: http://skia.googlecode.com/svn/trunk@553 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
887e4f325c2b9b306116a4eea37c5afad1db3346 15-Apr-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> be sure to ref() before returning a typeface from Create
skip duplicate faces in the same family+style slot



git-svn-id: http://skia.googlecode.com/svn/trunk@549 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
c846ede6a08d02522c3b58afc29a3d55150dbf83 13-Apr-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix build for SK_SCALAR_IS_FIXED



git-svn-id: http://skia.googlecode.com/svn/trunk@547 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
1c0c5a0a52d0d94653c6ca959a43226228a5ca08 12-Apr-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix refcnt for streams



git-svn-id: http://skia.googlecode.com/svn/trunk@540 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
3f1f06a26bdb2022a5c72f93ae623a57b6659464 03-Mar-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add optional pref-config table to codecs



git-svn-id: http://skia.googlecode.com/svn/trunk@519 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
faea3551fe05e35ac30de21d1a53f4f7db63e39f 02-Mar-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update for new fonts



git-svn-id: http://skia.googlecode.com/svn/trunk@517 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
95c58e02fc5c7e165599773225d32901fd9ba4e3 02-Mar-2010 Mike Reed <reed@google.com> add arabic, hebrew, thai fonts to our fallback list
kFontHost_android.cpp
dc3381fc8194a6192af39539c6ac9787b20209d3 11-Feb-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update save/restore comments to mention that the drawFilter is also saved
add wrapper for harfbuzz font/fontclass



git-svn-id: http://skia.googlecode.com/svn/trunk@500 2bbb7eff-a529-9590-31e7-b0007b416f81
kHarfBuzzFont.cpp
1c980e0d7772f05f570ae0227d91635f017c2227 09-Feb-2010 Mike Reed <reed@google.com> refresh from skia/trunk
kFontHost_FreeType.cpp
4526a847da6dc738dc73103ec4d47cc0dbdec478 06-Feb-2010 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> This patch allows the use of the native FreeType emboldening
algorithm when "fake bold" text is used in SkPaint.

It's enabled by #defining SK_USE_FREETYPE_EMBOLDEN.

Review URL: http://codereview.appspot.com/198077



git-svn-id: http://skia.googlecode.com/svn/trunk@490 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
afd599ad34dc62f31906ec5b23c4ef5c93c14d6b 26-Jan-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> disable debug printfs for gamma table



git-svn-id: http://skia.googlecode.com/svn/trunk@482 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_gamma.cpp
c49fcf5e8bc1c84bcb0a51fe615caa7e72dd7dcc 26-Jan-2010 Mike Reed <reed@google.com> refresh from skia/trunk
kFontHost_FreeType.cpp
kFontHost_gamma.cpp
b4234a226612cf7f99a47d9c633233c1a488d6ed 21-Jan-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> skia: Always use aliased text when antialiasing is disabled.

Otherwise, people who have antialiasing disabled end up with
subpixel rendering if the subpixel setting happens to be set
to something other than "none". This change's interpretation
of these overlapping settings seems to be consistent with
GTK's and Firefox's.

Patch-by: Dan Erat
Signed-off-by: Adam Langley

BUG=http://code.google.com/p/chromium/issues/detail?id=28382

http://codereview.appspot.com/186248

git-svn-id: http://skia.googlecode.com/svn/trunk@475 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
87a2a317c4e99c547ecbfa81f40f7bd7f2932433 20-Jan-2010 Mike Reed <reed@google.com> refresh from skia/trunk
kOSFile_stdio.cpp
ec10d21eb9a17639688188b0defce6d757331eb4 12-Jan-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remove obsolete SK_BUILD_FOR_BREW conditional



git-svn-id: http://skia.googlecode.com/svn/trunk@473 2bbb7eff-a529-9590-31e7-b0007b416f81
kOSFile_stdio.cpp
2cf237c941bf5964f654d0ccdd639a26468e1d71 08-Jan-2010 Mike Reed <reed@google.com> refresh from skia/trunk, adds paint bit for bitmapfonts
kFontHost_FreeType.cpp
9d3a985aa3c82605346ed1518375a8c384b925e5 08-Jan-2010 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add glyph->unichar query (inverse of a cmap)



git-svn-id: http://skia.googlecode.com/svn/trunk@472 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_simple.cpp
99e1b90d5b0ed2f8b8ac5681d964782130e3ba7e 05-Jan-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add parens in order to make conditional correct.

I've been coding in Go too much and forgot that C is broken.

git-svn-id: http://skia.googlecode.com/svn/trunk@470 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
13c8558e37043d4aad8b439ed053fac1cdb6763d 05-Jan-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix r466 which was causing Chromium valgrind failures.

See the added comment for details.

TBR=reed (since it's a build fix)

git-svn-id: http://skia.googlecode.com/svn/trunk@469 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
091f227385b467090b5a7169a8e2faf19eca7105 04-Jan-2010 Mike Reed <reed@google.com> add inverse of textToGlyphs(), so we can extract the original text from the browser
display for copy/paste, given that webkit renders it using glyph codes (and we need
unichars).

hange 36311 in external/webkit is dependent on this.

Fixes http://b/2166748
kFontHost_FreeType.cpp
e95c91e6d9201d50d0b84fbc3d2f53f92f753e0b 04-Jan-2010 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add flag to enable bitmap strikes.

http://codereview.appspot.com/183096

git-svn-id: http://skia.googlecode.com/svn/trunk@466 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
e191b16fda2f5afea3a90653c1cd4f5a3c436e89 18-Dec-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update windows port

git-svn-id: http://skia.googlecode.com/svn/trunk@461 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
kTime_win.cpp
9272761b22746d2d22439c26f5555028f8e824da 04-Nov-2009 senorblanco@chromium.org <senorblanco@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SSE2 optimizations for 32bit blending blitters.

This CL implements SSE2 optimizations for 3 of the 32bit blending blitters. It
uses CPUID to detect for SSE2 at runtime. In order to accomodate runtime
detection, it changes the platform procs from static arrays to static
functions.

It also includes an implementation of SkTime for Win32.

http://codereview.appspot.com/144072



git-svn-id: http://skia.googlecode.com/svn/trunk@418 2bbb7eff-a529-9590-31e7-b0007b416f81
kTime_win.cpp
4c1d4eb4c9602adf6207d1dffcbfc793cffc43e8 16-Oct-2009 Mike Reed <reed@google.com> refresh from skia/trunk
kDebug_stdio.cpp
471403d19beb14d7741039d266dd7a6be750b65d 14-Oct-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> change projects to just run with curren-os sdk, in prep for snow-lepard
fix fprintf warning



git-svn-id: http://skia.googlecode.com/svn/trunk@385 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_stdio.cpp
f2afb67bab01062d2632543c1f004b166bf01e31 28-Sep-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix base linux build, adding freetype support



git-svn-id: http://skia.googlecode.com/svn/trunk@371 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
2a645c9e325714e364e527950097eae697b10820 27-Sep-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add FilterRec() so it links again



git-svn-id: http://skia.googlecode.com/svn/trunk@370 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_none.cpp
2a4d1ff189ef8df14ec40499125b01f406cb442b 26-Aug-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> allow the gamma to be changed at runtime



git-svn-id: http://skia.googlecode.com/svn/trunk@338 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_gamma.cpp
9d93915d4705b9f5c85b533012aca9b491b5a4ca 25-Aug-2009 Mike Reed <reed@google.com> enable runtime changes to gamma tables
kFontHost_gamma.cpp
8430cd15bc6b826fa5f1661c55f0a7bab9770a7c 15-Aug-2009 deanm@chromium.org <deanm@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix flipped text orientation on Windows.

Review URL: http://codereview.appspot.com/104105


git-svn-id: http://skia.googlecode.com/svn/trunk@327 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
9a5843c9b6ef01f25513bef72a91936f75cc4458 13-Aug-2009 Mike Reed <reed@google.com> special case no scale in the matrixprocs for tiled bitmaps
yields ~10% overall speedup
also, refresh misc fixes in freetype and antipath from trunk
kFontHost_FreeType.cpp
558434a9e129904595cf5161097b843c681a05c7 11-Aug-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> FreeType: fix garbled bitmap glyphs.

At some point (probably in one of the LCD patches), the fMaskFormat
for bitmap glyphs changed from kA8 to kBW. Formerly, bitmap glyphs
were always transformed into A8 format. With this patch, we check the
fMaskFormat and pick the correct transform at run time.

http://code.google.com/p/chromium/issues/detail?id=18531
http://codereview.appspot.com/104071


git-svn-id: http://skia.googlecode.com/svn/trunk@313 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
e0d089900e898cdb834d48e3062622008d9da687 07-Aug-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> FreeType: don't use bitmap strikes when antialiasing

If the user requested anti-aliasing then we don't use bitmap strikes
in the font. The consensus among our Japanese users is that this
results in the best quality.

http://code.google.com/p/chromium/issues/detail?id=18333

http://codereview.appspot.com/105050


git-svn-id: http://skia.googlecode.com/svn/trunk@310 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
ac98154faa0e786444bafcd093fd4842127fbf18 31-Jul-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add GetFileName api to SkFontHost



git-svn-id: http://skia.googlecode.com/svn/trunk@299 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_android.cpp
kFontHost_fontconfig.cpp
kFontHost_linux.cpp
kFontHost_none.cpp
e3c6561496ef60345d830f1ab883afb1d1f251ef 31-Jul-2009 Mike Reed <reed@google.com> add GetFileName api to fonthost, to return (optionally) the file backing a given font
minor refresh on freetype and blitrow.h from skia/trunk
kFontHost_FreeType.cpp
kFontHost_android.cpp
61608aaf932708e3e8ac05097ead1bf7885ec87d 31-Jul-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix #endif placement so it works when LCD support is not defined



git-svn-id: http://skia.googlecode.com/svn/trunk@298 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
f18d8760019ae999c63d1f0b0e6e52815202b23b 28-Jul-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add runtime detection for missing subpixel support in FreeType.

r291 added support for building on platforms where subpixel support
has been compiled out of FreeType. However, it turns out that there is
a common situation in which we build on platforms with subpixel
support, but have to run without it: people downloading Chromium from
the buildbots.

Because we this, we need a runtime solution. Modifying the conversion
routines for this seems suboptimal because the extra branches will
slow down everyone. So we probe subpixel support at runtime by trying
to install a low-pass filter. If we fail at this, then we map all the
SkScalerContext::Rec structures to remove subpixel mode.

http://codereview.appspot.com/98057


git-svn-id: http://skia.googlecode.com/svn/trunk@293 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
5ebd88eb24f238c7afa93417f873c4d329b17d42 28-Jul-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Revert "Support subpixel text when FreeType is built without such support."

This reverts commit r291. It will be replaced with another solution in the next
commit.


git-svn-id: http://skia.googlecode.com/svn/trunk@292 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType_Subpixel.cpp
ac3011c6d4a885af4f37e22ce94451a778239b0d 28-Jul-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Support subpixel text when FreeType is built without such support.

On Fedora, at least, FreeType is built without subpixel support. It
tries to simulate subpixel mode by replicating the gray-values three
times. However, it fails to simulate the actions of the low-pass
filter and so doesn't add border around the glyphs. This patch adds a
compile-time constant, which is the number of bytes of filter border.
If this value is zero (because FreeType is simulating subpixel
support), then we add a transparent border ourselves when transforming
from FreeType rendered glyphs to masks.

http://codereview.appspot.com/96171


git-svn-id: http://skia.googlecode.com/svn/trunk@291 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType_Subpixel.cpp
af2616552738d653d5453915d3236e7154b868cd 24-Jul-2009 Mike Reed <reed@google.com> refresh from trunk
check-point for lcd text rendering
kFontHost_FreeType.cpp
e4d0bc0b57bd2236ed591d2c505556963777156b 24-Jul-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add filterrec logic for subpixel and slight-hinting



git-svn-id: http://skia.googlecode.com/svn/trunk@289 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
e61238b4f6943097f60a1ad1bf678f6a98613564 23-Jul-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Build fix: add FilterRec for Windows.

Since we don't control the settings on Windows, I believe we may just
as well filter everything.

TBR=reed

http://codereview.appspot.com/97070


git-svn-id: http://skia.googlecode.com/svn/trunk@288 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
bfbd4fff66da7fa4409a4d4bf838b85ef69a7200 23-Jul-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix uninitialized library variable



git-svn-id: http://skia.googlecode.com/svn/trunk@287 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
659aaf9e9a3f139ee2a1ce4a49f06fc74f430703 23-Jul-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix warnings (unused local var)



git-svn-id: http://skia.googlecode.com/svn/trunk@285 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
bd2724f672824dda7832f5503ba4e39acf1ec88c 22-Jul-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix valgrind warnings triggered in vertical mode.

Now that Chrome is rendering subpixel text, I was able to try running
the renderer process under valgrind, which turned up a number of
issues.

First, I was calculating the stride of vertical LCD glyphs wrong
(typo).

Secondly, I was going horribly wrong when a glyph was being blitted at
the edge of a bitmap. I suspected something was wrong with the code,
but I wasn't clear enough with the structure of the code when writing
it to figure out what the correct solution was.

http://codereview.appspot.com/97059


git-svn-id: http://skia.googlecode.com/svn/trunk@284 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType_Subpixel.cpp
36a4c2aa2dc2363dc093089b732346459ddc3b65 22-Jul-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Add SkFontHost::FilterRect() which allows the font host to filter our request
before we turn it into a font-cache entry, for the cases where the scaler will
ignore and/or collapse certain feature requests (e.g. doesn't support all levels
of hinting)



git-svn-id: http://skia.googlecode.com/svn/trunk@283 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac.cpp
f549369fcd9f203dc8020b5b15ee49330058782a 22-Jul-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> rename SK_BUILD_SUBPIXEL to SK_SUPPORT_LCDTEXT to better match the name of the
feature (since we already have subpixel text support)

fix some debug-compile problems

update Makefile for lcd files



git-svn-id: http://skia.googlecode.com/svn/trunk@282 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
1a18cdc85f172139ea20ac116969e954a8df786e 21-Jul-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Mac: fix SkFontHost_mac.cpp to work with the new hinting interface.


git-svn-id: http://skia.googlecode.com/svn/trunk@277 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
309485b7b51f4cae4c0361ab4da00fe9cc89515c 21-Jul-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Subpixel glyph rendering support.

This patch adds support for rendering subpixel glyphs (using
Freetype). In order to control this rendering see
SkPaint::setLCDRenderText in SkPaint.h.

To setup the LCD mode, see SkFontHost::SetSubpixelOrientation and
SkFontHost::SetSubpixelOrder in SkFontHost.h.

This patch also adds more fine grained control over hinting (again,
only for Freetype currently). One can now control the hinting with
SkPaint::setHinting.


git-svn-id: http://skia.googlecode.com/svn/trunk@275 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_FreeType_Subpixel.cpp
b9b9a18ab459c2616ac4a52c9f8cc0637d284229 08-Jul-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use genericRGB space to ensure that we decode exactly the pixels we encode
add -r option to gm to read and compare against known images



git-svn-id: http://skia.googlecode.com/svn/trunk@256 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
bff8e29eaf23a625879f6acf1fbea46a18fcbd9a 01-Jul-2009 deanm@chromium.org <deanm@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix a precedence error in an assert in the fontconfig host.

Review URL: http://codereview.appspot.com/90060


git-svn-id: http://skia.googlecode.com/svn/trunk@246 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
a8c52de60de1d2471206b3c81e9243e2c76f2edb 29-Jun-2009 Mike Reed <reed@google.com> refresh from trunk: shape flattening, bzero
kFontHost_FreeType.cpp
4516f4786f5dda1b86a8f825b9e8e910d9c2363c 29-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use sk_bzero instead of bzero, since it isn't always available.



git-svn-id: http://skia.googlecode.com/svn/trunk@244 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_mac.cpp
a0f5d1546d499ef0cd7dbfba9a866ae5a27e1541 22-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move xfermode modes from porterduff into xfermode itself



git-svn-id: http://skia.googlecode.com/svn/trunk@232 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
9f0b433bdd1680cd1d371c19d7e0ffde8fb2c484 22-Jun-2009 Mike Reed <reed@google.com> pull from trunk
move (and extended) xfermode enum into SkXfermode.h
fix recursion bug in stroking
minor utility code changes for new unittests
kFontHost_FreeType.cpp
8015dd83ae37147bb630d4751030868051ad0cae 21-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> almost there on gm (need to fix image writes/reads/compares)
move SkAutoGraphics into SkGraphics.h
add [] operators to SkString



git-svn-id: http://skia.googlecode.com/svn/trunk@228 2bbb7eff-a529-9590-31e7-b0007b416f81
orts_files.mk
90e764e3d93ac6f29e3b910ebc2f6527a2cc41ec 19-Jun-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update to latest api (need a test for this port!)



git-svn-id: http://skia.googlecode.com/svn/trunk@225 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_win.cpp
5c44d321d0d3b5a82b269b9cfc39027793f5104b 19-Jun-2009 deanm@chromium.org <deanm@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Make sure we have a non-null FreeType face before dereferencing it.

This prevents a NULL pointer crash in generateFontMetrics with some fonts.

Patch by Lei Zhang. Original Chromium bug: http://code.google.com/p/chromium/issues/detail?id=13007

Review URL: http://codereview.appspot.com/78056


git-svn-id: http://skia.googlecode.com/svn/trunk@224 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
1220e1c28a6fb75817eec056fc307190d50ae8e6 11-Jun-2009 deanm@chromium.org <deanm@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Some Linux / 64-bit compile fixes.

Review URL: http://codereview.appspot.com/63189


git-svn-id: http://skia.googlecode.com/svn/trunk@209 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
af59d51206ee64d07bc11aba7141071785df0d03 01-Jun-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> fontconfig: allow fallback for certain magical font names.

http://codereview.appspot.com/63169
http://code.google.com/p/chromium/issues/detail?id=10665

Patch-by: Evan Martin


git-svn-id: http://skia.googlecode.com/svn/trunk@193 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
dab163f0b2658c2dba48839e72f81d3d8ee0ae8b 29-May-2009 Mike Reed <reed@google.com> refresh from skia/trunk
- add canvas entry-point for shapes
- add SDL support to GL port
- rowbytes computation fixes in bitmaps
kFontHost_tables.cpp
22dbaaf405e70da862a430f5e2558ce63ce17372 18-May-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Fix reference count on openStream

Issue 62067: SkFontHost_linux.cpp: Reference counting problem



git-svn-id: http://skia.googlecode.com/svn/trunk@176 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
b9890c133f4baa75b8dfeabdc3c888b21af3df8e 07-May-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Typo fix for VDMX parsing in Chromium.

TBR=reed


git-svn-id: http://skia.googlecode.com/svn/trunk@170 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_tables.cpp
7a561082645315215949fb7ad9c80c883ffd89ad 04-May-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add simple port of memory APIs, to be used as a template for other platforms
that may want to add new_handler logic or other hooks.



git-svn-id: http://skia.googlecode.com/svn/trunk@167 2bbb7eff-a529-9590-31e7-b0007b416f81
kMemory_malloc.cpp
a8a8b8b80e2b6be2dd83ef2c1333851fd03a87d7 04-May-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check for 0 upem in freetype
add 32bit-overflow check



git-svn-id: http://skia.googlecode.com/svn/trunk@165 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
eba9f316916f3381d6a5dd5c1300fea6ec6da8dc 01-May-2009 Mike Reed <reed@google.com> refresh from skia/trunk

- catch overflow from mask size computation
- add kADD_Mode to porterduff (for webkit)
- support interlace images in png
kFontHost_FreeType.cpp
df8ecfbcffb297c361cb3e30ab4d7469a6b2e966 28-Apr-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Add fontconfig support.

Fontconfig is usually found on Linux systems and handles
configuration, parsing and caching issues involved with enumerating
and matching fonts.

This patch adds SkFontHost methods based on fontconfig.


git-svn-id: http://skia.googlecode.com/svn/trunk@162 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_fontconfig.cpp
kFontHost_gamma_none.cpp
b2f92f07d7b6d17b30ce5e89393ce2016a35abc4 23-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix mac build



git-svn-id: http://skia.googlecode.com/svn/trunk@158 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
cc3096ba6d437b29f1cbd34c237607419cbed72b 23-Apr-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> Sync with Chromium's fork

* Add the following font metrics fields:
+ fAvgCharWidth
+ fXMin
+ fXMax
+ fXHeight

* Add \#if 0'ed includes for the Freetype headers for Xcode, scons and
other tools which chase headers.

* Correctly render 1bpp fonts (mostly Chinese fonts at small sizes)


git-svn-id: http://skia.googlecode.com/svn/trunk@157 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_ascender.cpp
kFontHost_mac.cpp
304b59e2adefdd1a49929d61dbf19c9453792b4c 14-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> trivial: fix ws



git-svn-id: http://skia.googlecode.com/svn/trunk@156 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_tables.cpp
f95abb54afa5469c53d3ac899ecbce8a386471c1 13-Apr-2009 Mike Reed <reed@google.com> Pull latest changes from skia/trunk:

SkColorPriv.h - change alpha macro to favor keep opaque destinations opaque
SkFontHost.h - new apis for accessing font tables
SkPostConfig.h - more #ifdef protections around windows.h
SkFontHost_tables.cpp added
Various updates to unit tests
kFontHost_tables.cpp
9781ca586618cc8ea055f54021e706824313d4f5 14-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add SkSfntUtils to parse some known truetype tables
add comments and cleanup to count_tables in SkFontHost_tables.cpp
fix transparency bug in gifs
use (alpha+1) for blending in srcover mode, to ensure opaque results



git-svn-id: http://skia.googlecode.com/svn/trunk@155 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_tables.cpp
fc3ac327d8e041e11049d7f0dfc7f491590cda75 13-Apr-2009 agl@chromium.org <agl@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> SkFontHost_tables: fix minor bugs

http://codereview.appspot.com/33092


git-svn-id: http://skia.googlecode.com/svn/trunk@154 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_tables.cpp
467a3dc89a384729e38933b4057cb0afa26ca483 08-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> implement generateCountGlyphs using new font table apis



git-svn-id: http://skia.googlecode.com/svn/trunk@150 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
d6638e644e430a721ea2dc2372e1880e16a3ff5d 08-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add Table apis to SkFontHost
need to implement in _win backend



git-svn-id: http://skia.googlecode.com/svn/trunk@149 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
kFontHost_tables.cpp
049e2d4a53b95b3640d8ff158cd82729eecc6134 03-Apr-2009 Mike Reed <> AI 144454: pull from demetrius:
- use float wrappers for floorf() and pow()
- fix obsolete type reference uint16
- move android backend for SkDebugf into /ports file

Automated import of CL 144454
kDebug_android.cpp
kDebug_stdio.cpp
9c970453fd1cb6e9618e37c61507465772deca80 03-Apr-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> import portability fixes from Chrome around floats
move porting functions for SkDebugf into /ports directory



git-svn-id: http://skia.googlecode.com/svn/trunk@147 2bbb7eff-a529-9590-31e7-b0007b416f81
kDebug_android.cpp
kDebug_stdio.cpp
orts_files.mk
679464e412ba31c1b42b5cb9b8f1e6880d63f50e 25-Mar-2009 Mike Reed <> Automated import from //branches/master/...@141164,141164
kFontHost_android.cpp
2094e41fe6ba5ab33405f785d3a8d54791736a38 25-Mar-2009 Mike Reed <> Automated import from //branches/master/...@141140,141140
kFontHost_android.cpp
fcce647c0bec614a3dbfbf672a8c1297fe79e58c 20-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> pull latest from android



git-svn-id: http://skia.googlecode.com/svn/trunk@132 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
04225dcdec5a01bc9889b7fb03e7aceb87fccc6e 20-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> build with -Wall
fix associated warnings (at least on gcc 4.0.1)



git-svn-id: http://skia.googlecode.com/svn/trunk@129 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
af527e02dce280c269d751322e9f60aac8cb97da 19-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake_rel/...@140373
kFontHost_android.cpp
79b2cd1be5e334c05d8090548788d1bceb42c5f7 18-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix capitalization for system includes



git-svn-id: http://skia.googlecode.com/svn/trunk@127 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
a14ea0e930c82daa2364ece4bd0b06256272302a 17-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Simplify font-chaining (fallbacks) to have fonthost just return the next
logical fontID.
Extend ImageRef to accept an imagedecoder factory, to replace calling the std
one.



git-svn-id: http://skia.googlecode.com/svn/trunk@125 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
5956d1c224aadf1d2712b46b32d3fc69a19915bd 11-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137873
kFontHost_FONTPATH.cpp
kFontHost_ascender.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kImageDecoder_CG.cpp
590ef3fd3a39ff1aa08746e323da41cbd2928f49 10-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> remember to specify the bloody font tag in the constructor!



git-svn-id: http://skia.googlecode.com/svn/trunk@118 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
4b86a58dcecc030f2220cb91f4744f8099e7dfe6 09-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@137197
kFontHost_android.cpp
330578d67d466f97c47aecdbdda9d69aa2aa7569 09-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> mac fonts sort of work now
- haven't tested rotation yet
- spacing/bounds still look bad



git-svn-id: http://skia.googlecode.com/svn/trunk@117 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
0bf64d48cc18d551dadc7cce0c990352e04f9af8 09-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> implement fontmetrics



git-svn-id: http://skia.googlecode.com/svn/trunk@116 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
ea446b9bc594f9ca1cb894d5c3fa05358bfebba3 09-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> check-point (2) on mac fonts
- simplify typeface factories



git-svn-id: http://skia.googlecode.com/svn/trunk@115 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
60dfdbc1aef8d8df1c35a1b8ef0ce0a81a20a8b7 09-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> minor check-point for switching to glyphs



git-svn-id: http://skia.googlecode.com/svn/trunk@114 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
62533ed6bb490e9abf5d02686d897a93c5e85d51 06-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix leak in Deserialize



git-svn-id: http://skia.googlecode.com/svn/trunk@112 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
3298d565d8a70b84f28b455f6289293883c85494 05-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@136594
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
fb12c3e6ba84f95dc15fbaddc239dede0ba1d60e 05-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix ref() in CreateTypeface
fix comment in SkDraw.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@111 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
b1d9d2ef2803bd55fdc886d13033b48f8450dd14 04-Mar-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Significant cleanup in api, and more importantly in sementics, of SkFontHost
- FindTypeface is now CreateTypeface, and what it returns is always considered
a new instance, even if it is from a cache (in which case it will have been
ref()'d. The caller must always balance its ownership by calling unref() on
the result when they are done.
- CloseStream is gone, since the caller can/must call stream->unref() when they
are done using it.
- ResolveTypeface is now ValidFontID, and just returns a bool.



git-svn-id: http://skia.googlecode.com/svn/trunk@109 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
0910916c0f7b951ee55c4b7c6358295b9bca0565 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_gamma.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kGlobals_global.cpp
kImageDecoder_CG.cpp
kImageDecoder_empty.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
kOSEvent_android.cpp
kOSEvent_dummy.cpp
kOSFile_stdio.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
kTime_Unix.cpp
kXMLParser_empty.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
k_predefined_gamma.h
6eb364108744656fcd23a96a478aa772cd4e85bc 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_gamma.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kGlobals_global.cpp
kImageDecoder_CG.cpp
kImageDecoder_empty.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
kOSEvent_android.cpp
kOSEvent_dummy.cpp
kOSFile_stdio.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
kTime_Unix.cpp
kXMLParser_empty.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
k_predefined_gamma.h
ff7f389c8ad6248a10ce39459b96ba3c4bbd4daf 20-Feb-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Oops, CreateTypeface takes over ownership of the stream, instead of just ref()
This should be changed, for until it is, fix CreateTypefaceFromFile to not call
unref() if the typeface got created.



git-svn-id: http://skia.googlecode.com/svn/trunk@94 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
1bfd0ca7804a082ce29fd56adb311c79fc11a99f 20-Feb-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Implement CreateTypefaceFromFile



git-svn-id: http://skia.googlecode.com/svn/trunk@93 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
a89f6ab5ed3893035d5bf509e6ba6a985efe64e4 13-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@131421
kFontHost_FreeType.cpp
62900b4c64401bc80ae85f6f5c87309a273cae10 11-Feb-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> handle failure when creating a scalercontext



git-svn-id: http://skia.googlecode.com/svn/trunk@90 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
8552a21d334cbc7971b109f27d05aea9d7690e92 11-Feb-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@130745
kImageDecoder_CG.cpp
kImageDecoder_Factory.cpp
kImageEncoder_Factory.cpp
7b830a1d2728eb20be09406fcfe23871e1a61308 22-Jan-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update makefile for newly moved Factories



git-svn-id: http://skia.googlecode.com/svn/trunk@77 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_Factory.cpp
kImageEncoder_Factory.cpp
00bf85a98675c9d0c3150bbeb0a3d7198ad8f21f 22-Jan-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> pull from android: use registry to build up list of image codecs



git-svn-id: http://skia.googlecode.com/svn/trunk@76 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_Factory.cpp
kImageEncoder_Factory.cpp
95b316d35f73630072e033e6d68d7000e652681f 22-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127436
kFontHost_mac.cpp
f13c6e113c3fb6ada5ca10686733ad1fa53967fe 19-Jan-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> Remove unneeded SK_BUILD_FOR_... checks in SkBitmap.h



git-svn-id: http://skia.googlecode.com/svn/trunk@72 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
4cb8bd18d9449328f4d27f22ad4045ecf2aa06bd 16-Jan-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add crude Makefile (someone please help!)
make SkFloatBits.cpp compile w/o floats



git-svn-id: http://skia.googlecode.com/svn/trunk@69 2bbb7eff-a529-9590-31e7-b0007b416f81
orts_files.mk
76692c34c7e2d69f4e43133e516c580f08caed99 16-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@126645
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_linux.cpp
b50a60c463ae4e2475de8a421b0056b03335b28e 14-Jan-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix formatting issues



git-svn-id: http://skia.googlecode.com/svn/trunk@67 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
6f25297d93ed7fb29264cd072ad15ec25d1e27e7 14-Jan-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> fix multiple warnings (e.g. hidden virtuals, unused static functions)
update freetype version-check for const



git-svn-id: http://skia.googlecode.com/svn/trunk@66 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FreeType.cpp
kFontHost_linux.cpp
563771e8652efcdd44a04ac49138e0088573d9f5 14-Jan-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update to build with the latest SkFontHost interface
not runtime tested yet



git-svn-id: http://skia.googlecode.com/svn/trunk@65 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
0becfc5b7608ba67a4c98721cd61939e89ac5653 13-Jan-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add optimization for width==1 bitmaps in shader procs
odd warning fixes and cleanup



git-svn-id: http://skia.googlecode.com/svn/trunk@63 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_linux.cpp
03202c9c3dfbf8c4feb0a1ee9b3680817e633f58 10-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@125939
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_gamma.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kGlobals_global.cpp
kImageDecoder_CG.cpp
kImageDecoder_Factory.cpp
kImageDecoder_empty.cpp
kImageEncoder_Factory.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
kOSEvent_android.cpp
kOSEvent_dummy.cpp
kOSFile_stdio.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
kTime_Unix.cpp
kXMLParser_empty.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
k_predefined_gamma.h
b08eb2b3bce45411494fe00258e4c91248ccd15e 06-Jan-2009 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> separate image encode and decode
remove obsolete build-flag for encode



git-svn-id: http://skia.googlecode.com/svn/trunk@56 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
kImageDecoder_Factory.cpp
kImageDecoder_empty.cpp
kImageEncoder_Factory.cpp
acb8fb07bf751538c31a2e0158f8513799402569 06-Jan-2009 joe.gregorio <joe.gregorio@2bbb7eff-a529-9590-31e7-b0007b416f81> Initial automake and autoconf files to build core into libskia.a.

git-svn-id: http://skia.googlecode.com/svn/trunk@54 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_none.cpp
1550a42d9647162edc4e6758fc2958fa4ab7f6ca 23-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> pull from android - add createfromfile entry-point



git-svn-id: http://skia.googlecode.com/svn/trunk@51 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_android.cpp
da342a891779e0839a645d6634a2f0100bf2c0d6 23-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> update more sample code to new compose shader header



git-svn-id: http://skia.googlecode.com/svn/trunk@48 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
0ae6b245f2b79bc04f0801b08fcf05abcf98fd6c 23-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add mac image-encoding
add 'f' to sampleapp, which writes a png file for the currnet screen



git-svn-id: http://skia.googlecode.com/svn/trunk@47 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
0767e4742e3f8b7c87326abc5129da1e200f8ea1 23-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add CG imagedecoder (still needs encoding)
update some sample files to not use obsolete SkShaderExtras.h



git-svn-id: http://skia.googlecode.com/svn/trunk@46 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_CG.cpp
76aa34bf8e6f25ff7bd59b63e63ebb754d09105e 23-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> add text to hostapp sample
rename duplicate of SkSVGPath.cpp



git-svn-id: http://skia.googlecode.com/svn/trunk@45 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
4df53b0597bf23fe3653f08eaeb381ad8896877b 22-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> don't promote top/left to a fixed, when what we want is just an int



git-svn-id: http://skia.googlecode.com/svn/trunk@44 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
03ca3d19c46817eaaadb7dfce1c60c002d809db9 22-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> move CreateTypefaceFromFile into fonthost porting layer, so we don't force a given port to have mmap access.
update core.proj as some headers have changed location



git-svn-id: http://skia.googlecode.com/svn/trunk@43 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
0680d6c7caa9c2d4b1e5ee49e5816b96be0cc7bf 19-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> use native mac fonthost
add 444 and (fake) 565 support in cg



git-svn-id: http://skia.googlecode.com/svn/trunk@41 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_mac.cpp
6efdc47afc8bb24603fc0d15146ada609b728f2f 19-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> first cut at event-based test app



git-svn-id: http://skia.googlecode.com/svn/trunk@37 2bbb7eff-a529-9590-31e7-b0007b416f81
kImageDecoder_empty.cpp
8a1c16ff38322f0210116fa7293eb8817c7e477e 17-Dec-2008 reed@android.com <reed@android.com@2bbb7eff-a529-9590-31e7-b0007b416f81> grab from latest android



git-svn-id: http://skia.googlecode.com/svn/trunk@27 2bbb7eff-a529-9590-31e7-b0007b416f81
kFontHost_FONTPATH.cpp
kFontHost_FreeType.cpp
kFontHost_android.cpp
kFontHost_ascender.cpp
kFontHost_gamma.cpp
kFontHost_linux.cpp
kFontHost_mac.cpp
kFontHost_none.cpp
kFontHost_win.cpp
kGlobals_global.cpp
kImageDecoder_Factory.cpp
kImageRef_ashmem.cpp
kImageRef_ashmem.h
kOSEvent_android.cpp
kOSEvent_dummy.cpp
kOSFile_stdio.cpp
kThread_none.cpp
kThread_pthread.cpp
kThread_win.cpp
kTime_Unix.cpp
kXMLParser_empty.cpp
kXMLParser_expat.cpp
kXMLParser_tinyxml.cpp
kXMLPullParser_expat.cpp
k_predefined_gamma.h