Revert of Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType (patchset #1 id:1 of https://codereview.chromium.org/966753002/)
Reason for revert:
Android has been updated, so we can re-land this.
Original issue's description:
> Revert of replace kIgnore_SkAlphaType with kUnknown_SkAlphaType (patchset #3 id:40001 of https://codereview.chromium.org/964613002/)
>
> Reason for revert:
> This breaks Android framework build. See
>
> 7f0fcdbf3c/logs/build_error.log
>
> We need to stop them from using kIgnore before we can reland this.
>
> Original issue's description:
> > replace kIgnore_SkAlphaType with kUnknown_SkAlphaType
> >
> > BUG=skia:
> > TBR=
> >
> > Committed: https://skia.googlesource.com/skia/+/1c8aeeaebce9675197be31bd769e8ffa2531bf86
>
> TBR=reed@google.com,reed@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/574290f61a47bd1ce1f9e2d941533bda9c8f03fe
TBR=reed@chromium.org,scroggo@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/966853002
This commit is contained in:
parent
5abf584bcc
commit
44977485bd
@ -64,7 +64,7 @@ public:
|
||||
* 1. invalid ImageInfo (e.g. negative dimensions)
|
||||
* 2. unsupported ImageInfo for a canvas
|
||||
* - kUnknown_SkColorType, kIndex_8_SkColorType
|
||||
* - kIgnore_SkAlphaType
|
||||
* - kUnknown_SkAlphaType
|
||||
* - this list is not complete, so others may also be unsupported
|
||||
*
|
||||
* Note: it is valid to request a supported ImageInfo, but with zero
|
||||
|
@ -19,12 +19,7 @@ class SkWriteBuffer;
|
||||
* Describes how to interpret the alpha compoent of a pixel.
|
||||
*/
|
||||
enum SkAlphaType {
|
||||
/**
|
||||
* All pixels should be treated as opaque, regardless of the value stored
|
||||
* in their alpha field. Used for legacy images that wrote 0 or garbarge
|
||||
* in their alpha field, but intended the RGB to be treated as opaque.
|
||||
*/
|
||||
kIgnore_SkAlphaType,
|
||||
kUnknown_SkAlphaType,
|
||||
|
||||
/**
|
||||
* All pixels are stored as opaque. This differs slightly from kIgnore in
|
||||
@ -53,11 +48,7 @@ enum SkAlphaType {
|
||||
};
|
||||
|
||||
static inline bool SkAlphaTypeIsOpaque(SkAlphaType at) {
|
||||
SK_COMPILE_ASSERT(kIgnore_SkAlphaType < kOpaque_SkAlphaType, bad_alphatype_order);
|
||||
SK_COMPILE_ASSERT(kPremul_SkAlphaType > kOpaque_SkAlphaType, bad_alphatype_order);
|
||||
SK_COMPILE_ASSERT(kUnpremul_SkAlphaType > kOpaque_SkAlphaType, bad_alphatype_order);
|
||||
|
||||
return (unsigned)at <= kOpaque_SkAlphaType;
|
||||
return kOpaque_SkAlphaType == at;
|
||||
}
|
||||
|
||||
static inline bool SkAlphaTypeIsValid(unsigned value) {
|
||||
@ -161,7 +152,7 @@ public:
|
||||
: fWidth(0)
|
||||
, fHeight(0)
|
||||
, fColorType(kUnknown_SkColorType)
|
||||
, fAlphaType(kIgnore_SkAlphaType)
|
||||
, fAlphaType(kUnknown_SkAlphaType)
|
||||
, fProfileType(kLinear_SkColorProfileType)
|
||||
{}
|
||||
|
||||
@ -200,7 +191,7 @@ public:
|
||||
}
|
||||
|
||||
static SkImageInfo MakeUnknown(int width, int height) {
|
||||
return SkImageInfo(width, height, kUnknown_SkColorType, kIgnore_SkAlphaType,
|
||||
return SkImageInfo(width, height, kUnknown_SkColorType, kUnknown_SkAlphaType,
|
||||
kLinear_SkColorProfileType);
|
||||
}
|
||||
|
||||
|
@ -182,8 +182,8 @@ SkPixelRef* SkBitmap::setPixelRef(SkPixelRef* pr, int dx, int dy) {
|
||||
SkASSERT(fInfo.height() <= prInfo.height());
|
||||
SkASSERT(fInfo.colorType() == prInfo.colorType());
|
||||
switch (prInfo.alphaType()) {
|
||||
case kIgnore_SkAlphaType:
|
||||
SkASSERT(fInfo.alphaType() == kIgnore_SkAlphaType);
|
||||
case kUnknown_SkAlphaType:
|
||||
SkASSERT(fInfo.alphaType() == kUnknown_SkAlphaType);
|
||||
break;
|
||||
case kOpaque_SkAlphaType:
|
||||
case kPremul_SkAlphaType:
|
||||
|
@ -25,7 +25,7 @@ static bool valid_for_bitmap_device(const SkImageInfo& info,
|
||||
// TODO: can we stop supporting kUnknown in SkBitmkapDevice?
|
||||
if (kUnknown_SkColorType == info.colorType()) {
|
||||
if (newAlphaType) {
|
||||
*newAlphaType = kIgnore_SkAlphaType;
|
||||
*newAlphaType = kUnknown_SkAlphaType;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
@ -54,8 +54,8 @@ static bool is_32bit_colortype(SkColorType ct) {
|
||||
}
|
||||
|
||||
static AlphaVerb compute_AlphaVerb(SkAlphaType src, SkAlphaType dst) {
|
||||
SkASSERT(kIgnore_SkAlphaType != src);
|
||||
SkASSERT(kIgnore_SkAlphaType != dst);
|
||||
SkASSERT(kUnknown_SkAlphaType != src);
|
||||
SkASSERT(kUnknown_SkAlphaType != dst);
|
||||
|
||||
if (kOpaque_SkAlphaType == src || kOpaque_SkAlphaType == dst || src == dst) {
|
||||
return kNothing_AlphaVerb;
|
||||
|
@ -50,7 +50,7 @@ bool SkColorTypeValidateAlphaType(SkColorType colorType, SkAlphaType alphaType,
|
||||
SkAlphaType* canonical) {
|
||||
switch (colorType) {
|
||||
case kUnknown_SkColorType:
|
||||
alphaType = kIgnore_SkAlphaType;
|
||||
alphaType = kUnknown_SkAlphaType;
|
||||
break;
|
||||
case kAlpha_8_SkColorType:
|
||||
if (kUnpremul_SkAlphaType == alphaType) {
|
||||
@ -61,7 +61,7 @@ bool SkColorTypeValidateAlphaType(SkColorType colorType, SkAlphaType alphaType,
|
||||
case kARGB_4444_SkColorType:
|
||||
case kRGBA_8888_SkColorType:
|
||||
case kBGRA_8888_SkColorType:
|
||||
if (kIgnore_SkAlphaType == alphaType) {
|
||||
if (kUnknown_SkAlphaType == alphaType) {
|
||||
return false;
|
||||
}
|
||||
break;
|
||||
|
@ -12,8 +12,9 @@
|
||||
static CGBitmapInfo ComputeCGAlphaInfo_RGBA(SkAlphaType at) {
|
||||
CGBitmapInfo info = kCGBitmapByteOrder32Big;
|
||||
switch (at) {
|
||||
case kUnknown_SkAlphaType:
|
||||
break;
|
||||
case kOpaque_SkAlphaType:
|
||||
case kIgnore_SkAlphaType:
|
||||
info |= kCGImageAlphaNoneSkipLast;
|
||||
break;
|
||||
case kPremul_SkAlphaType:
|
||||
@ -29,8 +30,9 @@ static CGBitmapInfo ComputeCGAlphaInfo_RGBA(SkAlphaType at) {
|
||||
static CGBitmapInfo ComputeCGAlphaInfo_BGRA(SkAlphaType at) {
|
||||
CGBitmapInfo info = kCGBitmapByteOrder32Little;
|
||||
switch (at) {
|
||||
case kUnknown_SkAlphaType:
|
||||
break;
|
||||
case kOpaque_SkAlphaType:
|
||||
case kIgnore_SkAlphaType:
|
||||
info |= kCGImageAlphaNoneSkipFirst;
|
||||
break;
|
||||
case kPremul_SkAlphaType:
|
||||
|
Loading…
Reference in New Issue
Block a user