This commit is contained in:
NudeDude 2019-07-27 10:51:49 +02:00
parent d0420b4f92
commit 51e7810c05
3 changed files with 19 additions and 21 deletions

View File

@ -5,7 +5,7 @@
<configuration PROFILE_NAME="Debug" CONFIG_NAME="Debug" />
</configurations>
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
<component name="ProjectType">

View File

@ -6,7 +6,6 @@ import android.content.DialogInterface.OnClickListener;
import android.os.AsyncTask;
import android.view.LayoutInflater;
import android.view.View;
import android.view.Window;
import android.widget.Toast;
import androidx.annotation.NonNull;
@ -21,6 +20,10 @@ import java.lang.ref.WeakReference;
import twitter4j.TwitterException;
import static android.os.AsyncTask.Status.RUNNING;
import static android.view.Window.FEATURE_NO_TITLE;
import static android.widget.Toast.LENGTH_LONG;
public class StatusUploader extends AsyncTask<Void, Void, Boolean> {
private WeakReference<TweetPopup> ui;
@ -40,32 +43,32 @@ public class StatusUploader extends AsyncTask<Void, Void, Boolean> {
@Override
protected void onPreExecute() {
if (popup.get() != null && ui.get() != null) {
final Dialog window = popup.get();
window.requestWindowFeature(Window.FEATURE_NO_TITLE);
window.setCanceledOnTouchOutside(false);
if (window.getWindow() != null)
window.getWindow().setBackgroundDrawableResource(android.R.color.transparent);
final Dialog loadingCircle = popup.get();
loadingCircle.requestWindowFeature(FEATURE_NO_TITLE);
loadingCircle.setCanceledOnTouchOutside(false);
if (loadingCircle.getWindow() != null)
loadingCircle.getWindow().setBackgroundDrawableResource(android.R.color.transparent);
LayoutInflater inflater = LayoutInflater.from(ui.get());
View load = inflater.inflate(R.layout.item_load, null, false);
View cancelButton = load.findViewById(R.id.kill_button);
window.setContentView(load);
loadingCircle.setContentView(load);
cancelButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
window.dismiss();
loadingCircle.dismiss();
}
});
window.setOnDismissListener(new DialogInterface.OnDismissListener() {
loadingCircle.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
if (getStatus() == Status.RUNNING) {
if (ui.get() != null && getStatus() == RUNNING) {
Toast.makeText(ui.get(), R.string.abort, Toast.LENGTH_SHORT).show();
cancel(true);
}
}
});
window.show();
loadingCircle.show();
}
}
@ -89,7 +92,8 @@ public class StatusUploader extends AsyncTask<Void, Void, Boolean> {
protected void onPostExecute(Boolean success) {
if (ui.get() != null && popup.get() != null) {
if (success) {
ui.get().close();
Toast.makeText(ui.get(), R.string.tweet_sent, LENGTH_LONG).show();
ui.get().finish();
} else {
if (err != null)
ErrorHandler.printError(ui.get(), err);
@ -99,7 +103,8 @@ public class StatusUploader extends AsyncTask<Void, Void, Boolean> {
.setPositiveButton(R.string.retry, new OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
ui.get().findViewById(R.id.sendTweet).callOnClick();
if (ui.get() != null)
ui.get().findViewById(R.id.sendTweet).callOnClick();
}
})
.setNegativeButton(R.string.cancel, null).show();

View File

@ -33,7 +33,6 @@ import static android.os.AsyncTask.Status.RUNNING;
import static android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
import static android.view.View.INVISIBLE;
import static android.view.View.VISIBLE;
import static android.widget.Toast.LENGTH_LONG;
import static android.widget.Toast.LENGTH_SHORT;
import static org.nuclearfog.twidda.window.MediaViewer.KEY_MEDIA_LINK;
import static org.nuclearfog.twidda.window.MediaViewer.KEY_MEDIA_TYPE;
@ -236,12 +235,6 @@ public class TweetPopup extends AppCompatActivity implements OnClickListener {
}
public void close() {
Toast.makeText(this, R.string.tweet_sent, LENGTH_LONG).show();
finish();
}
private void showClosingMsg() {
if (!addition.equals(tweet.getText().toString()) || !mediaPath.isEmpty()) {
Builder closeDialog = new Builder(this);