diff options
Diffstat (limited to 'libs/editor/WordPressEditor/src/main/java/org/wordpress/android/editor/legacy')
2 files changed, 150 insertions, 0 deletions
diff --git a/libs/editor/WordPressEditor/src/main/java/org/wordpress/android/editor/legacy/EditLinkActivity.java b/libs/editor/WordPressEditor/src/main/java/org/wordpress/android/editor/legacy/EditLinkActivity.java new file mode 100644 index 000000000..e02f98eb2 --- /dev/null +++ b/libs/editor/WordPressEditor/src/main/java/org/wordpress/android/editor/legacy/EditLinkActivity.java @@ -0,0 +1,76 @@ +package org.wordpress.android.editor.legacy; + +import android.app.Activity; +import android.content.Intent; +import android.os.Bundle; +import android.support.v7.app.AppCompatActivity; +import android.view.View; +import android.widget.Button; +import android.widget.EditText; + +import org.wordpress.android.editor.R; + +public class EditLinkActivity extends AppCompatActivity { + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + setContentView(R.layout.alert_create_link); + + Bundle extras = getIntent().getExtras(); + if (extras != null) { + String selectedText = extras.getString("selectedText"); + if (selectedText != null) { + EditText linkTextET = (EditText) findViewById(R.id.linkText); + linkTextET.setText(selectedText); + } + } + + final Button cancelButton = (Button) findViewById(R.id.cancel); + final Button okButton = (Button) findViewById(R.id.ok); + + final EditText urlEditText = (EditText) findViewById(R.id.linkURL); + urlEditText.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + if (urlEditText.getText().toString().equals("")) { + urlEditText.setText("http://"); + urlEditText.setSelection(7); + } + } + + }); + + okButton.setOnClickListener(new Button.OnClickListener() { + public void onClick(View v) { + EditText linkURLET = (EditText) findViewById(R.id.linkURL); + String linkURL = linkURLET.getText().toString(); + + EditText linkTextET = (EditText) findViewById(R.id.linkText); + String linkText = linkTextET.getText().toString(); + + Bundle bundle = new Bundle(); + bundle.putString("linkURL", linkURL); + if (!linkText.equals("")) { + bundle.putString("linkText", linkText); + } + + Intent mIntent = new Intent(); + mIntent.putExtras(bundle); + setResult(RESULT_OK, mIntent); + finish(); + } + }); + + cancelButton.setOnClickListener(new Button.OnClickListener() { + public void onClick(View v) { + Intent mIntent = new Intent(); + setResult(RESULT_CANCELED, mIntent); + finish(); + } + }); + + // select end of url + urlEditText.performClick(); + } +} diff --git a/libs/editor/WordPressEditor/src/main/java/org/wordpress/android/editor/legacy/WPEditImageSpan.java b/libs/editor/WordPressEditor/src/main/java/org/wordpress/android/editor/legacy/WPEditImageSpan.java new file mode 100644 index 000000000..25bc33894 --- /dev/null +++ b/libs/editor/WordPressEditor/src/main/java/org/wordpress/android/editor/legacy/WPEditImageSpan.java @@ -0,0 +1,74 @@ +package org.wordpress.android.editor.legacy; + +import android.content.Context; +import android.graphics.Bitmap; +import android.graphics.BitmapFactory; +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.net.Uri; +import android.os.Parcel; +import android.os.Parcelable; + +import org.wordpress.android.editor.R; +import org.wordpress.android.util.helpers.MediaFile; +import org.wordpress.android.util.helpers.WPImageSpan; + +public class WPEditImageSpan extends WPImageSpan { + private Bitmap mEditIconBitmap; + + protected WPEditImageSpan() { + super(); + } + + public WPEditImageSpan(Context context, Bitmap b, Uri src) { + super(context, b, src); + init(context); + } + + public WPEditImageSpan(Context context, int resId, Uri src) { + super(context, resId, src); + init(context); + } + + private void init(Context context) { + if (context != null) { + mEditIconBitmap = BitmapFactory.decodeResource(context.getResources(), R.drawable.ab_icon_edit); + } + } + + @Override + public void draw(Canvas canvas, CharSequence text, int start, int end, float x, int top, int y, int bottom, + Paint paint) { + super.draw(canvas, text, start, end, x, top, y, bottom, paint); + + if (mEditIconBitmap != null && !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(); + + // 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 + mEditIconBitmap.getWidth(), + editIconYPosition + mEditIconBitmap.getHeight(), bgPaint); + + // Add the icon to the canvas + canvas.drawBitmap(mEditIconBitmap, editIconXPosition, editIconYPosition, paint); + } + } + + public static final Parcelable.Creator<WPEditImageSpan> CREATOR = new Parcelable.Creator<WPEditImageSpan>() { + public WPEditImageSpan createFromParcel(Parcel in) { + WPEditImageSpan editSpan = new WPEditImageSpan(); + editSpan.setupFromParcel(in); + + return editSpan; + } + + public WPEditImageSpan[] newArray(int size) { + return new WPEditImageSpan[size]; + } + }; +} |