[go: nahoru, domu]

Skip to content

Commit

Permalink
move WPEditImageSpan bitmap loading to the constructor
Browse files Browse the repository at this point in the history
  • Loading branch information
maxme committed Feb 11, 2015
1 parent 8141509 commit 8978cb1
Showing 1 changed file with 13 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -12,16 +12,20 @@
import org.wordpress.android.util.helpers.WPImageSpan;

public class WPEditImageSpan extends WPImageSpan {
private Context mContext;
private Bitmap mEditIconBitmap;

public WPEditImageSpan(Context context, Bitmap b, Uri src) {
super(context, b, src);
mContext = context;
init(context);
}

public WPEditImageSpan(Context context, int resId, Uri src) {
super(context, resId, src);
mContext = context;
init(context);
}

private void init(Context context) {
mEditIconBitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.ab_icon_edit);
}

@Override
Expand All @@ -32,17 +36,17 @@ public void draw(Canvas canvas, CharSequence text, int start, int end, float x,
if (!mMediaFile.isVideo()) {
// Add 'edit' icon at bottom right of image
int width = getSize(paint, text, start, end, paint.getFontMetricsInt());
float editIconXPosition = (x + width) - mEditIconBitmap.getWidth();
float editIconYPosition = bottom - mEditIconBitmap.getHeight();

Bitmap editIconBitmap = BitmapFactory.decodeResource(mContext.getResources(), R.drawable.ab_icon_edit);
float editIconXPosition = (x + width) - editIconBitmap.getWidth();
float editIconYPosition = bottom - editIconBitmap.getHeight();
// Add a black background with a bit of alpha
Paint bgPaint = new Paint();
bgPaint.setColor(Color.argb(200, 0, 0, 0));
canvas.drawRect(editIconXPosition, editIconYPosition, editIconXPosition + editIconBitmap.getWidth(),
editIconYPosition + editIconBitmap.getHeight(), bgPaint);
canvas.drawRect(editIconXPosition, editIconYPosition, editIconXPosition + mEditIconBitmap.getWidth(),
editIconYPosition + mEditIconBitmap.getHeight(), bgPaint);

// Add the icon to the canvas
canvas.drawBitmap(editIconBitmap, editIconXPosition, editIconYPosition, paint);
canvas.drawBitmap(mEditIconBitmap, editIconXPosition, editIconYPosition, paint);
}
}
}

0 comments on commit 8978cb1

Please sign in to comment.