Loading tools/layoutlib/bridge/src/android/graphics/Canvas_Delegate.java +20 −37 Original line number Diff line number Diff line Loading @@ -480,13 +480,9 @@ public class Canvas_Delegate { graphics.setTransform(new AffineTransform()); // set the color graphics.setColor(new Color(color)); graphics.setColor(new Color(color, true /*alpha*/)); // set the mode and alpha. int alpha = color >>> 24; float falpha = alpha / 255.f; setModeInGraphics(graphics, mode, falpha); setModeInGraphics(graphics, mode); graphics.fillRect(0, 0, canvasDelegate.mBufferedImage.getWidth(), canvasDelegate.mBufferedImage.getHeight()); Loading Loading @@ -996,15 +992,8 @@ public class Canvas_Delegate { } } // need to get the alpha to set it in the composite. float falpha = 1.f; if (useColorPaint) { g.setColor(new Color(paint.getColor())); // the alpha is taken from the alpha channel of the color int alpha = paint.getAlpha(); falpha = alpha / 255.f; g.setColor(new Color(paint.getColor(), true /*hasAlpha*/)); } int style = paint.getStyle(); Loading Loading @@ -1036,10 +1025,10 @@ public class Canvas_Delegate { if (xfermodeDelegate instanceof PorterDuffXfermode_Delegate) { int mode = ((PorterDuffXfermode_Delegate)xfermodeDelegate).getMode(); setModeInGraphics(g, mode, falpha); setModeInGraphics(g, mode); } else { // default mode is src_over g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER)); // if xfermode wasn't null, then it's something we don't support. log it. if (mLogger != null && xfermodeDelegate != null) { Loading @@ -1052,36 +1041,36 @@ public class Canvas_Delegate { return g; } private static void setModeInGraphics(Graphics2D g, int mode, float falpha) { private static void setModeInGraphics(Graphics2D g, int mode) { for (PorterDuff.Mode m : PorterDuff.Mode.values()) { if (m.nativeInt == mode) { setModeInGraphics(g, m, falpha); setModeInGraphics(g, m); return; } } } private static void setModeInGraphics(Graphics2D g, PorterDuff.Mode mode, float falpha) { private static void setModeInGraphics(Graphics2D g, PorterDuff.Mode mode) { switch (mode) { case CLEAR: g.setComposite(AlphaComposite.getInstance(AlphaComposite.CLEAR, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.CLEAR, 1.0f /*alpha*/)); break; case DARKEN: break; case DST: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST, 1.0f /*alpha*/)); break; case DST_ATOP: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_ATOP, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_ATOP, 1.0f /*alpha*/)); break; case DST_IN: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_IN, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_IN, 1.0f /*alpha*/)); break; case DST_OUT: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_OUT, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_OUT, 1.0f /*alpha*/)); break; case DST_OVER: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_OVER, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_OVER, 1.0f /*alpha*/)); break; case LIGHTEN: break; Loading @@ -1090,22 +1079,22 @@ public class Canvas_Delegate { case SCREEN: break; case SRC: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC, 1.0f /*alpha*/)); break; case SRC_ATOP: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, 1.0f /*alpha*/)); break; case SRC_IN: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_IN, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_IN, 1.0f /*alpha*/)); break; case SRC_OUT: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OUT, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OUT, 1.0f /*alpha*/)); break; case SRC_OVER: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1.0f /*alpha*/)); break; case XOR: g.setComposite(AlphaComposite.getInstance(AlphaComposite.XOR, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.XOR, 1.0f /*alpha*/)); break; } } Loading Loading @@ -1156,12 +1145,6 @@ public class Canvas_Delegate { g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); } if (paintDelegate.getAlpha() != 0xFF) { c = g.getComposite(); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, paintDelegate.getAlpha()/255.f)); } } g.drawImage(image, dleft, dtop, dright, dbottom, Loading tools/layoutlib/bridge/src/android/graphics/Paint_Delegate.java +1 −5 Original line number Diff line number Diff line Loading @@ -114,10 +114,6 @@ public class Paint_Delegate { return mColor; } public int getAlpha() { return mColor >>> 24; } public int getTextAlign() { return mTextAlign; } Loading Loading @@ -260,7 +256,7 @@ public class Paint_Delegate { return 0; } return delegate.getAlpha(); return delegate.mColor >>> 24; } /*package*/ static void setAlpha(Paint thisPaint, int a) { Loading Loading
tools/layoutlib/bridge/src/android/graphics/Canvas_Delegate.java +20 −37 Original line number Diff line number Diff line Loading @@ -480,13 +480,9 @@ public class Canvas_Delegate { graphics.setTransform(new AffineTransform()); // set the color graphics.setColor(new Color(color)); graphics.setColor(new Color(color, true /*alpha*/)); // set the mode and alpha. int alpha = color >>> 24; float falpha = alpha / 255.f; setModeInGraphics(graphics, mode, falpha); setModeInGraphics(graphics, mode); graphics.fillRect(0, 0, canvasDelegate.mBufferedImage.getWidth(), canvasDelegate.mBufferedImage.getHeight()); Loading Loading @@ -996,15 +992,8 @@ public class Canvas_Delegate { } } // need to get the alpha to set it in the composite. float falpha = 1.f; if (useColorPaint) { g.setColor(new Color(paint.getColor())); // the alpha is taken from the alpha channel of the color int alpha = paint.getAlpha(); falpha = alpha / 255.f; g.setColor(new Color(paint.getColor(), true /*hasAlpha*/)); } int style = paint.getStyle(); Loading Loading @@ -1036,10 +1025,10 @@ public class Canvas_Delegate { if (xfermodeDelegate instanceof PorterDuffXfermode_Delegate) { int mode = ((PorterDuffXfermode_Delegate)xfermodeDelegate).getMode(); setModeInGraphics(g, mode, falpha); setModeInGraphics(g, mode); } else { // default mode is src_over g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER)); // if xfermode wasn't null, then it's something we don't support. log it. if (mLogger != null && xfermodeDelegate != null) { Loading @@ -1052,36 +1041,36 @@ public class Canvas_Delegate { return g; } private static void setModeInGraphics(Graphics2D g, int mode, float falpha) { private static void setModeInGraphics(Graphics2D g, int mode) { for (PorterDuff.Mode m : PorterDuff.Mode.values()) { if (m.nativeInt == mode) { setModeInGraphics(g, m, falpha); setModeInGraphics(g, m); return; } } } private static void setModeInGraphics(Graphics2D g, PorterDuff.Mode mode, float falpha) { private static void setModeInGraphics(Graphics2D g, PorterDuff.Mode mode) { switch (mode) { case CLEAR: g.setComposite(AlphaComposite.getInstance(AlphaComposite.CLEAR, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.CLEAR, 1.0f /*alpha*/)); break; case DARKEN: break; case DST: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST, 1.0f /*alpha*/)); break; case DST_ATOP: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_ATOP, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_ATOP, 1.0f /*alpha*/)); break; case DST_IN: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_IN, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_IN, 1.0f /*alpha*/)); break; case DST_OUT: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_OUT, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_OUT, 1.0f /*alpha*/)); break; case DST_OVER: g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_OVER, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.DST_OVER, 1.0f /*alpha*/)); break; case LIGHTEN: break; Loading @@ -1090,22 +1079,22 @@ public class Canvas_Delegate { case SCREEN: break; case SRC: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC, 1.0f /*alpha*/)); break; case SRC_ATOP: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, 1.0f /*alpha*/)); break; case SRC_IN: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_IN, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_IN, 1.0f /*alpha*/)); break; case SRC_OUT: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OUT, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OUT, 1.0f /*alpha*/)); break; case SRC_OVER: g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 1.0f /*alpha*/)); break; case XOR: g.setComposite(AlphaComposite.getInstance(AlphaComposite.XOR, falpha)); g.setComposite(AlphaComposite.getInstance(AlphaComposite.XOR, 1.0f /*alpha*/)); break; } } Loading Loading @@ -1156,12 +1145,6 @@ public class Canvas_Delegate { g.setRenderingHint(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BILINEAR); } if (paintDelegate.getAlpha() != 0xFF) { c = g.getComposite(); g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER, paintDelegate.getAlpha()/255.f)); } } g.drawImage(image, dleft, dtop, dright, dbottom, Loading
tools/layoutlib/bridge/src/android/graphics/Paint_Delegate.java +1 −5 Original line number Diff line number Diff line Loading @@ -114,10 +114,6 @@ public class Paint_Delegate { return mColor; } public int getAlpha() { return mColor >>> 24; } public int getTextAlign() { return mTextAlign; } Loading Loading @@ -260,7 +256,7 @@ public class Paint_Delegate { return 0; } return delegate.getAlpha(); return delegate.mColor >>> 24; } /*package*/ static void setAlpha(Paint thisPaint, int a) { Loading