Herb Derby
9adfef8680
Remove public APIs that use SkDataTable.
...
Change-Id: Ibb8f987efc585713a6f8061c72fb416d07be13b1
Reviewed-on: https://skia-review.googlesource.com/7352
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2017-01-23 17:09:37 +00:00
bungeman
1ae0e01acc
Split SkFontConfigInterface globals and factory.
...
Chromium needs to be able to set up their build such that the globals
continue existing but the SkFontMgr::Factory can be defined separately.
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2346333002
CQ_INCLUDE_TRYBOTS=master.client.skia.compile:Build-Ubuntu-GCC-x86_64-Release-CMake-Trybot,Build-Mac-Clang-x86_64-Release-CMake-Trybot
Review-Url: https://codereview.chromium.org/2346333002
2016-09-19 12:13:16 -07:00
bungeman
feb3c1a57f
Move to SkDataTable::MakeXXX and sk_sp.
...
Change SkDataTable::NewXXX to SkDataTable::MakeXXX and return sk_sp.
This updates users of SkDataTable to sk_sp as well.
There do not appear to be any external users of these methods.
Review-Url: https://codereview.chromium.org/2211143002
2016-08-05 06:51:50 -07:00
bungeman
69df020625
Remove some uses of SK_SUPPORT_LEGACY_TYPEFACE_PTR.
...
Some of the deprecated signatures are no longer used by any known
client, so remove them now to prevent future use.
TBR=reed
This doesn't add API, it just removes it.
Review-Url: https://codereview.chromium.org/2036993003
2016-06-03 14:35:06 -07:00
bungeman
13b9c95295
Move SkTypeface to sk_sp.
...
Committed: https://skia.googlesource.com/skia/+/6296da736fbf40aae881650c239420f64e576c3f
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1933393002
Review-Url: https://codereview.chromium.org/1933393002
2016-05-12 10:09:31 -07:00
scroggo
9a9a7b29e5
Revert of Move SkTypeface to sk_sp. (patchset #5 id:80001 of https://codereview.chromium.org/1933393002/ )
...
Reason for revert:
fontmgr_iterAndroid failing to draw emoji. E.g. https://gold.skia.org/search2?blame=6296da736fbf40aae881650c239420f64e576c3f&unt=true&head=true&query=source_type%3Dgm
Original issue's description:
> Move SkTypeface to sk_sp.
>
> Committed: https://skia.googlesource.com/skia/+/6296da736fbf40aae881650c239420f64e576c3f
TBR=reed@google.com ,fmalita@chromium.org,tomhudson@google.com,bungeman@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review-Url: https://codereview.chromium.org/1974783002
2016-05-12 06:22:30 -07:00
bungeman
6296da736f
Move SkTypeface to sk_sp.
...
Review-Url: https://codereview.chromium.org/1933393002
2016-05-11 12:38:18 -07:00
mtklein
42846ed437
Modernize SkMutex and SkSemaphore.
...
- use <atomic>
- fuse SkMutex and SkBaseMutex
- fuse SkSemaphore and SkBaseSemaphore
Still TODO:
- replace SK_DECLARE_STATIC_MUTEX(name) with static SkMutex name
I just didn't want to bother fixing all that up until I know this CL sticks.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1947153002
No public API changes.
TBR=reed@google.com
Committed: https://skia.googlesource.com/skia/+/427c2819d9237d7d7729c59238036cfc73c072ea
Review-Url: https://codereview.chromium.org/1947153002
2016-05-05 10:57:37 -07:00
sclittle
d9f5d20f81
Revert of Modernize SkMutex and SkSemaphore. (patchset #2 id:20001 of https://codereview.chromium.org/1947153002/ )
...
Reason for revert:
This CL seems to have broken the Linux x64 and Mac
bots, e.g.
https://build.chromium.org/p/chromium/builders/Linux%20x64/builds/19052
https://build.chromium.org/p/chromium/builders/Mac/builds/15151
The error appears to have something to do with new static initializers being
added.
Original issue's description:
> Modernize SkMutex and SkSemaphore.
>
> - use <atomic>
> - fuse SkMutex and SkBaseMutex
> - fuse SkSemaphore and SkBaseSemaphore
>
> Still TODO:
> - replace SK_DECLARE_STATIC_MUTEX(name) with static SkMutex name
>
> I just didn't want to bother fixing all that up until I know this CL sticks.
>
> BUG=skia:
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1947153002
>
> No public API changes.
> TBR=reed@google.com
>
> Committed: https://skia.googlesource.com/skia/+/427c2819d9237d7d7729c59238036cfc73c072ea
TBR=herb@google.com ,mtklein@chromium.org,reed@google.com,bsalomon@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=609340
Review-Url: https://codereview.chromium.org/1945343003
2016-05-04 18:23:30 -07:00
mtklein
427c2819d9
Modernize SkMutex and SkSemaphore.
...
- use <atomic>
- fuse SkMutex and SkBaseMutex
- fuse SkSemaphore and SkBaseSemaphore
Still TODO:
- replace SK_DECLARE_STATIC_MUTEX(name) with static SkMutex name
I just didn't want to bother fixing all that up until I know this CL sticks.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1947153002
No public API changes.
TBR=reed@google.com
Review-Url: https://codereview.chromium.org/1947153002
2016-05-04 11:31:29 -07:00
bungeman
0265707c19
Clean up SkFontConfigInterface implementation.
...
Renames some classes to avoid confusion with FontConfig.
Removed direct calls to FontConfig instead of calling FCI.
Moves the globals and factory to one (optional) file.
Moves font management code from typeface to font manager.
Adds index to fonts created from streams.
Associates FCI typefaces with the FCI instance which provides its identity.
Simplifies the singleton initialization.
Review-Url: https://codereview.chromium.org/1936213002
2016-05-02 11:54:13 -07:00
bungeman
ed2edabd07
Remove SK_VERY_LEGACY_CREATE_TYPEFACE.
...
The flag and code it guards are no longer used.
TBR=reed
This just removes dead code.
Review URL: https://codereview.chromium.org/1882803002
2016-04-13 05:23:35 -07:00
bungeman
11a77c6e06
Begin switch to SkFontStyle for legacy calls.
...
This adds SK_VERY_LEGACY_CREATE_TYPEFACE which, when defined, provides
only the old interface.
Ideally, everyone would switch directly to SkFontMgr and use one of the
newer calls, but there is currently no path for current users to get
there. This updates all the internals to use SkFontStyle, after
switching these over the higher level APIs can be switched.
The Chromium follow on patch can be seen at https://crrev.com/1877673002
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1873923002
TBR=reed
This doesn't really change API, just modernizes it.
Review URL: https://codereview.chromium.org/1873923002
2016-04-12 13:45:06 -07:00
bungeman
bf521ff941
Move SkTArray to include/private.
...
TBR=reed
Agreed moving to private is good.
Review URL: https://codereview.chromium.org/1702073002
2016-02-17 13:13:44 -08:00
fmalita
9b137dc54e
SkFontConfigInterface::createTypeface()
...
BUG=524578
R=bungeman@google.com ,reed@google.com
Review URL: https://codereview.chromium.org/1454343003
2015-11-20 13:47:55 -08:00
mtklein
2766c00fc0
remove SkInstCnt
...
It's been outclassed by Valgrind and leak sanitizer,
and it seems to be causing problems for external folks building Skia.
I'm not sure why our own builds seem unaffected.
Latest thread:
https://groups.google.com/forum/#!topic/skia-discuss/oj9FsQwwSF0
BUG=skia:
Review URL: https://codereview.chromium.org/1217573002
2015-06-26 11:45:03 -07:00
bungeman
7be2eb89cc
Remove SkFontHost includes and friends.
...
SkFontHost no longer exists as a class, so remove the includes and stop
making it a friend.
Review URL: https://codereview.chromium.org/943333004
2015-02-23 08:25:00 -08:00
bungeman
5f213d9627
SkTypeface to use SkStreamAsset.
...
SkTypeface already requires typeface streams to support SkStreamAsset
in practice, and in practice all users are already supplying them.
Review URL: https://codereview.chromium.org/869763002
2015-01-27 05:39:10 -08:00
djsollen
c87dd2ce96
Enable unused param checking for public includes.
...
This CL cleans up the existing violations and enables the
build time check to ensure that we don't regress.
The motiviation behind this change is to allow clients who include
our headers to be able to build with this warning enabled.
Review URL: https://codereview.chromium.org/726923002
2014-11-14 11:11:46 -08:00
tomhudson
e438ddbc74
Uses optional mutex to guard construction of the singleton, which
...
initializes the non-threadsafe libfontconfig. Without this change,
Skia's parallel path ops test runner crashes 6/10 and hangs 2/10 on
startup; with this change, 0/10 problems.
BUG=skia:2693
R=mtklein@google.com , bungeman@google.com , reed@google.com
Committed: https://skia.googlesource.com/skia/+/df022f5972ae6a2a1d96d15c50eca52cade3abd8
Committed: https://skia.googlesource.com/skia/+/60b08a0adfe73f593af62c8d3f55958438360e1b
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/355573006
2014-07-01 18:54:41 -07:00
mtklein
e41f3886ea
Revert of Fix race condition in parallel font initialization. ( https://codereview.chromium.org/355573006/ )
...
Reason for revert:
canaries still slightly broken
Original issue's description:
> Fix race condition in parallel font initialization.
>
> Uses a mutex to guard construction of the singleton, which initialies
> the non-threadsafe libfontconfig. Without this change, the parallel
> path ops test runner crashes 6/10 and hangs 2/10 on startup; with this
> change, 0/10 problems.
>
> BUG=skia:2693
> R=mtklein@google.com ,bungeman@google.com
>
> Committed: https://skia.googlesource.com/skia/+/df022f5972ae6a2a1d96d15c50eca52cade3abd8
>
> Committed: https://skia.googlesource.com/skia/+/60b08a0adfe73f593af62c8d3f55958438360e1b
R=bungeman@google.com , reed@google.com , tomhudson@google.com , tomhudson@chromium.org
TBR=bungeman@google.com , reed@google.com , tomhudson@chromium.org , tomhudson@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2693
Author: mtklein@google.com
Review URL: https://codereview.chromium.org/354133004
2014-07-01 13:33:32 -07:00
tomhudson
60b08a0adf
Fix race condition in parallel font initialization.
...
Uses a mutex to guard construction of the singleton, which initialies
the non-threadsafe libfontconfig. Without this change, the parallel
path ops test runner crashes 6/10 and hangs 2/10 on startup; with this
change, 0/10 problems.
BUG=skia:2693
R=mtklein@google.com , bungeman@google.com , reed@google.com , tomhudson@google.com
Committed: https://skia.googlesource.com/skia/+/df022f5972ae6a2a1d96d15c50eca52cade3abd8
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/355573006
2014-07-01 08:06:14 -07:00
reed
50a7b0e621
Revert of Fix race condition in parallel font initialization. ( https://codereview.chromium.org/355573006/ )
...
Reason for revert:
breaks chrome builds
Original issue's description:
> Fix race condition in parallel font initialization.
>
> Uses a mutex to guard construction of the singleton, which initialies
> the non-threadsafe libfontconfig. Without this change, the parallel
> path ops test runner crashes 6/10 and hangs 2/10 on startup; with this
> change, 0/10 problems.
>
> BUG=skia:2693
> R=mtklein@google.com ,bungeman@google.com
>
> Committed: https://skia.googlesource.com/skia/+/df022f5972ae6a2a1d96d15c50eca52cade3abd8
R=mtklein@google.com , bungeman@google.com , reed@google.com , tomhudson@google.com , tomhudson@chromium.org
TBR=bungeman@google.com , mtklein@google.com , reed@google.com , tomhudson@chromium.org , tomhudson@google.com
NOTREECHECKS=true
NOTRY=true
BUG=skia:2693
Author: reed@chromium.org
Review URL: https://codereview.chromium.org/365503003
2014-06-30 16:48:24 -07:00
tomhudson
df022f5972
Fix race condition in parallel font initialization.
...
Uses a mutex to guard construction of the singleton, which initialies
the non-threadsafe libfontconfig. Without this change, the parallel
path ops test runner crashes 6/10 and hangs 2/10 on startup; with this
change, 0/10 problems.
BUG=skia:2693
R=mtklein@google.com , bungeman@google.com , reed@google.com , tomhudson@google.com
Author: tomhudson@chromium.org
Review URL: https://codereview.chromium.org/355573006
2014-06-30 14:14:01 -07:00
commit-bot@chromium.org
ab1c13864d
Fix compilation with SK_ENABLE_INST_COUNT=1
...
Add INHERITED declarations to class declarations that prevent
compilation with the flag.
Remove SK_DEFINE_INST_COUNT from all class implementations. Instead,
use function-local static variables in the reference count helper
classes to create the global instances to store the needed info. The
accessor functions are defined inline in the helper classes, so
definitions are not needed. The initialization point of the variables
should be as well defined as previously.
Remove SK_DECLARE_INST_COUNT_TEMPLATE and use SK_DECLARE_INST_COUNT
instead. This avoids possible future compilation errors further.
For SK_ENABLE_INST_COUNT=0 compilation, add an empty static member
function to all classes that use SK_DECLARE_INST_COUNT and
SK_DECLARE_INST_COUNT_ROOT macros. The function ensures that classes
contain public INHERITED typedef. This member function seems to be
compiled away. This shouĺd ensure that part of the compilation errors
are caught earlier.
Also adds DSK_DECLARE_INST_COUNT to few SkPDFDict subclasses.
R=robertphillips@google.com , richardlin@chromium.org , bsalomon@google.com
Author: kkinnunen@nvidia.com
Review URL: https://codereview.chromium.org/98703002
git-svn-id: http://skia.googlecode.com/svn/trunk@12501 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-12-05 12:08:12 +00:00
commit-bot@chromium.org
ef284a84f5
The two leaks are:
...
missing unrefs in megalooper GM
missing reset capability in oval renderer
This CL also expands the instance counting system to some recently adding classes (e.g., SkFontStyleSet)
R=bsalomon@google.com , jvanverth@google.com
Author: robertphillips@google.com
Review URL: https://chromiumcodereview.appspot.com/18461007
git-svn-id: http://skia.googlecode.com/svn/trunk@10030 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-07-11 22:29:29 +00:00
skia.committer@gmail.com
e36a168d13
Sanitizing source files in Skia_Periodic_House_Keeping
...
git-svn-id: http://skia.googlecode.com/svn/trunk@8819 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-23 07:01:29 +00:00
reed@google.com
f55061fd84
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
2013-04-22 18:48:45 +00:00
reed@google.com
027fd204ad
use SkDataTable to return familyNames for fontmgr
...
git-svn-id: http://skia.googlecode.com/svn/trunk@8781 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-19 20:45:30 +00:00
robertphillips@google.com
21db1dbbce
Temporary patch to get Chrome Windows compiling
...
git-svn-id: http://skia.googlecode.com/svn/trunk@8583 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-04-09 23:56:51 +00:00
reed@google.com
54c69147f9
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
2013-04-09 15:54:52 +00:00
reed@google.com
8c9737e114
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
2013-03-06 13:06:03 +00:00
reed@google.com
d66045ec7d
export getter for global instance of fontconfiginterfacedirect
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7963 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-04 19:07:02 +00:00
reed@google.com
86a44b89c5
export api with SK_API
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7962 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-03-04 17:26:02 +00:00
reed@google.com
f71a2335f9
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
2013-02-27 19:06:30 +00:00
reed@google.com
80f5465083
git-svn-id: http://skia.googlecode.com/svn/trunk@7856 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-25 22:19:20 +00:00
reed@google.com
d71fe99fe4
check-point: skiafy SkFontHost_fontconfig from chrome
...
git-svn-id: http://skia.googlecode.com/svn/trunk@7852 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-02-25 20:38:07 +00:00