diff options
| author | 2010-01-14 19:15:22 -0800 | |
|---|---|---|
| committer | 2010-01-14 19:15:22 -0800 | |
| commit | 38fa9eee9324b2355f28372e80dba12c1d7cc105 (patch) | |
| tree | c03e3f121b9d1d1989390743ab153b8fa5ced4b6 | |
| parent | 895c92a44b8bcf0aec7066c061293cafe12a76c2 (diff) | |
| parent | 89d538dcca9a4cb95682c56b0c4b85e8a77442be (diff) | |
am 89d538dc: ADT/Layoutlib: don\'t draw 0-sized rectangle, AWT doesn\'t like that.
Merge commit '89d538dcca9a4cb95682c56b0c4b85e8a77442be' into eclair-plus-aosp
* commit '89d538dcca9a4cb95682c56b0c4b85e8a77442be':
ADT/Layoutlib: don't draw 0-sized rectangle, AWT doesn't like that.
| -rw-r--r-- | tools/layoutlib/bridge/src/android/graphics/Canvas.java | 60 |
1 files changed, 32 insertions, 28 deletions
diff --git a/tools/layoutlib/bridge/src/android/graphics/Canvas.java b/tools/layoutlib/bridge/src/android/graphics/Canvas.java index 9f4dfd08d04a..c49e11ec20fb 100644 --- a/tools/layoutlib/bridge/src/android/graphics/Canvas.java +++ b/tools/layoutlib/bridge/src/android/graphics/Canvas.java @@ -784,23 +784,25 @@ public class Canvas extends _Original_Canvas { private final void doDrawRect(int left, int top, int width, int height, Paint paint) { // get current graphisc - Graphics2D g = getGraphics2d(); + if (width != 0 && height != 0) { + Graphics2D g = getGraphics2d(); - g = getNewGraphics(paint, g); + g = getNewGraphics(paint, g); - Style style = paint.getStyle(); + Style style = paint.getStyle(); - // draw - if (style == Style.FILL || style == Style.FILL_AND_STROKE) { - g.fillRect(left, top, width, height); - } + // draw + if (style == Style.FILL || style == Style.FILL_AND_STROKE) { + g.fillRect(left, top, width, height); + } - if (style == Style.STROKE || style == Style.FILL_AND_STROKE) { - g.drawRect(left, top, width, height); - } + if (style == Style.STROKE || style == Style.FILL_AND_STROKE) { + g.drawRect(left, top, width, height); + } - // dispose Graphics2D object - g.dispose(); + // dispose Graphics2D object + g.dispose(); + } } /* (non-Javadoc) @@ -809,29 +811,31 @@ public class Canvas extends _Original_Canvas { @Override public void drawRoundRect(RectF rect, float rx, float ry, Paint paint) { // get current graphisc - Graphics2D g = getGraphics2d(); + if (rect.width() != 0 && rect.height() != 0) { + Graphics2D g = getGraphics2d(); - g = getNewGraphics(paint, g); + g = getNewGraphics(paint, g); - Style style = paint.getStyle(); + Style style = paint.getStyle(); - // draw + // draw - int arcWidth = (int)(rx * 2); - int arcHeight = (int)(ry * 2); + int arcWidth = (int)(rx * 2); + int arcHeight = (int)(ry * 2); - if (style == Style.FILL || style == Style.FILL_AND_STROKE) { - g.fillRoundRect((int)rect.left, (int)rect.top, (int)rect.width(), (int)rect.height(), - arcWidth, arcHeight); - } + if (style == Style.FILL || style == Style.FILL_AND_STROKE) { + g.fillRoundRect((int)rect.left, (int)rect.top, (int)rect.width(), (int)rect.height(), + arcWidth, arcHeight); + } - if (style == Style.STROKE || style == Style.FILL_AND_STROKE) { - g.drawRoundRect((int)rect.left, (int)rect.top, (int)rect.width(), (int)rect.height(), - arcWidth, arcHeight); - } + if (style == Style.STROKE || style == Style.FILL_AND_STROKE) { + g.drawRoundRect((int)rect.left, (int)rect.top, (int)rect.width(), (int)rect.height(), + arcWidth, arcHeight); + } - // dispose Graphics2D object - g.dispose(); + // dispose Graphics2D object + g.dispose(); + } } |