Some fixes

This commit is contained in:
tom79 2019-05-30 16:37:49 +02:00
parent 8dc9579462
commit b21f07dccf
5 changed files with 65 additions and 5 deletions

View File

@ -20,6 +20,7 @@ import android.net.Uri;
import android.os.Bundle;
import android.os.Environment;
import android.support.annotation.NonNull;
import android.support.v4.content.LocalBroadcastManager;
import android.view.Window;
@ -53,6 +54,7 @@ import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.View;
import android.view.animation.AnticipateOvershootInterpolator;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.TextView;
@ -88,6 +90,8 @@ public class PhotoEditorActivity extends BaseActivity implements OnPhotoEditorL
private ConstraintLayout mRootView;
private ConstraintSet mConstraintSet = new ConstraintSet();
private boolean mIsFilterVisible;
private Uri uri;
private boolean exit;
@SuppressLint("MissingPermission")
@Override
@ -120,9 +124,10 @@ public class PhotoEditorActivity extends BaseActivity implements OnPhotoEditorL
if( path == null) {
finish();
}
Uri uri = Uri.parse(path);
uri = Uri.parse(path);
exit = false;
setContentView(R.layout.activity_photoeditor);
@ -157,6 +162,17 @@ public class PhotoEditorActivity extends BaseActivity implements OnPhotoEditorL
//Set Image Dynamically
mPhotoEditorView.getSource().setImageURI(uri);
Button send = findViewById(R.id.send);
send.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
exit = true;
saveImage();
}
});
}
private void initViews() {
@ -264,9 +280,11 @@ public class PhotoEditorActivity extends BaseActivity implements OnPhotoEditorL
private void saveImage() {
if (requestPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE)) {
showLoading(getString(R.string.saving));
File file = new File(Environment.getExternalStorageDirectory()
+ File.separator + ""
+ System.currentTimeMillis() + ".png");
SharedPreferences sharedpreferences = getSharedPreferences(Helper.APP_PREFS, MODE_PRIVATE);
String myDir = sharedpreferences.getString(Helper.SET_FOLDER_RECORD, Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath());
String filename = System.currentTimeMillis()+"_"+Helper.getFileName(PhotoEditorActivity.this, uri);
File file = new File(myDir+"/"+filename);
try {
file.createNewFile();
@ -281,6 +299,12 @@ public class PhotoEditorActivity extends BaseActivity implements OnPhotoEditorL
hideLoading();
showSnackbar(getString(R.string.image_saved));
mPhotoEditorView.getSource().setImageURI(Uri.fromFile(new File(imagePath)));
if( exit ){
Intent intentImage = new Intent(Helper.INTENT_SEND_MODIFIED_IMAGE);
intentImage.putExtra("imgpath", imagePath);
LocalBroadcastManager.getInstance(getApplicationContext()).sendBroadcast(intentImage);
finish();
}
}
@Override

View File

@ -18,10 +18,13 @@ import android.Manifest;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.BroadcastReceiver;
import android.content.ClipData;
import android.content.ContentResolver;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.SharedPreferences;
import android.content.pm.PackageManager;
import android.database.sqlite.SQLiteDatabase;
@ -40,6 +43,7 @@ import android.support.annotation.RequiresApi;
import android.support.v4.app.ActivityCompat;
import android.support.v4.content.ContextCompat;
import android.support.v4.content.FileProvider;
import android.support.v4.content.LocalBroadcastManager;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AlertDialog;
import android.support.v7.widget.Toolbar;
@ -108,6 +112,7 @@ import java.util.concurrent.TimeUnit;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import app.fedilab.android.asynctasks.RetrieveFeedsAsyncTask;
import app.fedilab.android.client.API;
import app.fedilab.android.client.APIResponse;
import app.fedilab.android.client.Entities.Account;
@ -813,11 +818,26 @@ public class TootActivity extends BaseActivity implements OnPostActionInterface,
});
toot_space_left.setText(String.valueOf(countLength()));
LocalBroadcastManager.getInstance(this)
.registerReceiver(imageReceiver,
new IntentFilter(Helper.INTENT_SEND_MODIFIED_IMAGE));
}
private BroadcastReceiver imageReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
String imgpath = intent.getStringExtra("imgpath");
if( imgpath != null)
new asyncPicture(TootActivity.this, account, Uri.fromFile(new File(imgpath))).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
}
};
@Override
public void onDestroy() {
super.onDestroy();
LocalBroadcastManager.getInstance(this)
.unregisterReceiver(imageReceiver);
}

View File

@ -408,6 +408,7 @@ public class Helper {
public static final String EP_AUTHORIZE = "/oauth/authorize";
//Proxy
public static final String SET_PROXY_ENABLED = "set_proxy_enabled";
public static final String SET_PROXY_TYPE = "set_proxy_type";
@ -427,6 +428,7 @@ public class Helper {
public static final String INTENT_ACTION = "intent_action";
public static final String INTENT_TARGETED_ACCOUNT = "intent_targeted_account";
public static final String INTENT_BACKUP_FINISH = "intent_backup_finish";
public static final String INTENT_SEND_MODIFIED_IMAGE = "intent_send_modified_image";
//Receiver
public static final String RECEIVE_DATA = "receive_data";
public static final String RECEIVE_ACTION = "receive_action";

View File

@ -135,6 +135,20 @@
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/guideline" />
<Button
android:id="@+id/send"
style="@style/Widget.AppCompat.Button.Colored"
android:layout_width="wrap_content"
android:layout_height="45dp"
android:layout_gravity="end"
android:gravity="center"
android:padding="0dp"
android:layout_margin="8dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/imgSave"
app:layout_constraintTop_toBottomOf="@+id/guideline"
android:text="@string/validate" />
<ImageView
android:id="@+id/imgSave"
android:layout_width="wrap_content"

View File

@ -26,7 +26,7 @@
android:gravity="center"
android:padding="4dp"
android:textColor="@android:color/white"
android:textSize="8dp"
android:textSize="8sp"
app:layout_constraintBottom_toBottomOf="@+id/imgFilterView"
app:layout_constraintEnd_toEndOf="@+id/imgFilterView"
app:layout_constraintStart_toStartOf="@+id/imgFilterView"