code cleanup, bug fix
This commit is contained in:
parent
734f0ff7ba
commit
f5f214448c
|
@ -62,7 +62,8 @@ public class AppSettings extends AppCompatActivity implements OnClickListener, O
|
|||
BACKGROUND,
|
||||
FONTCOLOR,
|
||||
HIGHLIGHT,
|
||||
POPUPCOLOR
|
||||
POPUPCOLOR,
|
||||
NONE
|
||||
}
|
||||
|
||||
private GlobalSettings settings;
|
||||
|
@ -75,8 +76,8 @@ public class AppSettings extends AppCompatActivity implements OnClickListener, O
|
|||
private LocationAdapter locationAdapter;
|
||||
private View root, colorButton1_edge;
|
||||
|
||||
private ColorMode mode;
|
||||
private int color;
|
||||
private ColorMode mode = ColorMode.NONE;
|
||||
private int color = 0;
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle b) {
|
||||
|
|
|
@ -26,7 +26,8 @@ public class ListDetail extends AppCompatActivity implements OnTabSelectedListen
|
|||
|
||||
private FragmentAdapter adapter;
|
||||
private ViewPager pager;
|
||||
private int tabIndex;
|
||||
|
||||
private int tabIndex = 0;
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle b) {
|
||||
|
|
|
@ -36,7 +36,8 @@ public class LoginPage extends AppCompatActivity implements OnClickListener {
|
|||
private Button btnLink, btnVeri;
|
||||
private EditText pin;
|
||||
private View root;
|
||||
private String link;
|
||||
private @Nullable
|
||||
String link;
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle b) {
|
||||
|
|
|
@ -42,6 +42,7 @@ public class MainActivity extends AppCompatActivity implements OnTabSelectedList
|
|||
private ViewPager pager;
|
||||
private View root;
|
||||
private long homeId;
|
||||
|
||||
private int tabIndex = 0;
|
||||
|
||||
static {
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
package org.nuclearfog.twidda.activity;
|
||||
|
||||
import android.graphics.Bitmap;
|
||||
import android.graphics.Point;
|
||||
import android.media.MediaPlayer;
|
||||
import android.media.MediaPlayer.OnInfoListener;
|
||||
import android.media.MediaPlayer.OnPreparedListener;
|
||||
|
@ -10,7 +9,6 @@ import android.os.AsyncTask.Status;
|
|||
import android.os.Build;
|
||||
import android.os.Bundle;
|
||||
import android.provider.MediaStore;
|
||||
import android.view.Display;
|
||||
import android.view.View;
|
||||
import android.widget.MediaController;
|
||||
import android.widget.ProgressBar;
|
||||
|
@ -68,7 +66,7 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen
|
|||
private ZoomView zoomImage;
|
||||
private String[] link;
|
||||
private int type;
|
||||
private int width;
|
||||
|
||||
private int lastPos = 0;
|
||||
|
||||
|
||||
|
@ -99,10 +97,6 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen
|
|||
imageWindow.setVisibility(VISIBLE);
|
||||
imageList.setLayoutManager(new LinearLayoutManager(this, HORIZONTAL, false));
|
||||
imageList.setAdapter(adapter);
|
||||
Display d = getWindowManager().getDefaultDisplay();
|
||||
Point size = new Point();
|
||||
d.getSize(size);
|
||||
width = size.x;
|
||||
break;
|
||||
|
||||
case MEDIAVIEWER_ANGIF:
|
||||
|
@ -246,9 +240,12 @@ public class MediaViewer extends AppCompatActivity implements OnImageClickListen
|
|||
|
||||
|
||||
private void changeImage(Bitmap image) {
|
||||
float ratio = image.getWidth() / (float) width;
|
||||
int destHeight = (int) (image.getHeight() / ratio);
|
||||
image = Bitmap.createScaledBitmap(image, width, destHeight, false);
|
||||
int width = zoomImage.getMeasuredWidth();
|
||||
if (width > 0 && image.getWidth() > width) {
|
||||
float ratio = image.getWidth() / (float) width;
|
||||
int destHeight = (int) (image.getHeight() / ratio);
|
||||
image = Bitmap.createScaledBitmap(image, width, destHeight, false);
|
||||
}
|
||||
zoomImage.reset();
|
||||
zoomImage.setImageBitmap(image);
|
||||
}
|
||||
|
|
|
@ -48,9 +48,10 @@ public class MessagePopup extends AppCompatActivity implements OnClickListener,
|
|||
private static final int REQ_PERM_READ = 4;
|
||||
|
||||
private MessageUploader messageAsync;
|
||||
private EditText receiver, text;
|
||||
private EditText receiver, message;
|
||||
private Dialog loadingCircle;
|
||||
private String mediaPath = "";
|
||||
private @Nullable
|
||||
String mediaPath;
|
||||
|
||||
|
||||
@Override
|
||||
|
@ -61,15 +62,15 @@ public class MessagePopup extends AppCompatActivity implements OnClickListener,
|
|||
View send = findViewById(R.id.dm_send);
|
||||
View media = findViewById(R.id.dm_media);
|
||||
receiver = findViewById(R.id.dm_receiver);
|
||||
text = findViewById(R.id.dm_text);
|
||||
message = findViewById(R.id.dm_text);
|
||||
loadingCircle = new Dialog(this, R.style.LoadingDialog);
|
||||
View load = View.inflate(this, R.layout.item_load, null);
|
||||
View cancelButton = load.findViewById(R.id.kill_button);
|
||||
|
||||
Bundle param = getIntent().getExtras();
|
||||
if (param != null && param.containsKey(KEY_DM_PREFIX)) {
|
||||
String addtion = param.getString(KEY_DM_PREFIX);
|
||||
receiver.append(addtion);
|
||||
String prefix = param.getString(KEY_DM_PREFIX);
|
||||
receiver.append(prefix);
|
||||
}
|
||||
|
||||
GlobalSettings settings = GlobalSettings.getInstance(this);
|
||||
|
@ -89,7 +90,7 @@ public class MessagePopup extends AppCompatActivity implements OnClickListener,
|
|||
|
||||
@Override
|
||||
public void onBackPressed() {
|
||||
if (text.getText().toString().isEmpty() && mediaPath.isEmpty()) {
|
||||
if (receiver.getText().length() == 0 && message.getText().length() == 0 && mediaPath == null) {
|
||||
super.onBackPressed();
|
||||
} else {
|
||||
Builder closeDialog = new Builder(this, R.style.ConfirmDialog);
|
||||
|
@ -142,8 +143,8 @@ public class MessagePopup extends AppCompatActivity implements OnClickListener,
|
|||
switch (v.getId()) {
|
||||
case R.id.dm_send:
|
||||
String username = receiver.getText().toString();
|
||||
String message = text.getText().toString();
|
||||
if (!username.trim().isEmpty() && (!message.trim().isEmpty() || !mediaPath.isEmpty())) {
|
||||
String message = this.message.getText().toString();
|
||||
if (!username.trim().isEmpty() && (!message.trim().isEmpty() || mediaPath != null)) {
|
||||
MessageHolder messageHolder = new MessageHolder(username, message, mediaPath);
|
||||
messageAsync = new MessageUploader(this, messageHolder);
|
||||
messageAsync.execute();
|
||||
|
@ -153,7 +154,7 @@ public class MessagePopup extends AppCompatActivity implements OnClickListener,
|
|||
break;
|
||||
|
||||
case R.id.dm_media:
|
||||
if (mediaPath.trim().isEmpty())
|
||||
if (mediaPath == null)
|
||||
getMedia();
|
||||
else {
|
||||
Intent image = new Intent(this, MediaViewer.class);
|
||||
|
|
|
@ -62,7 +62,7 @@ public class TweetPopup extends AppCompatActivity implements OnClickListener, Lo
|
|||
NONE,
|
||||
GIF,
|
||||
IMAGE,
|
||||
VIDEO,
|
||||
VIDEO
|
||||
}
|
||||
|
||||
private static final String[] PERM_STORAGE = {READ_EXTERNAL_STORAGE};
|
||||
|
@ -83,10 +83,9 @@ public class TweetPopup extends AppCompatActivity implements OnClickListener, Lo
|
|||
private Dialog loadingCircle;
|
||||
private TextView imgCount;
|
||||
private EditText tweetText;
|
||||
private String addition = "";
|
||||
private long inReplyId = 0;
|
||||
|
||||
private MediaType selectedFormat = MediaType.NONE;
|
||||
private long inReplyId = 0;
|
||||
|
||||
@Override
|
||||
protected void onCreate(@Nullable Bundle b) {
|
||||
|
@ -112,7 +111,10 @@ public class TweetPopup extends AppCompatActivity implements OnClickListener, Lo
|
|||
Bundle param = getIntent().getExtras();
|
||||
if (param != null) {
|
||||
inReplyId = param.getLong(KEY_TWEETPOPUP_REPLYID, 0);
|
||||
addition = param.getString(KEY_TWEETPOPUP_PREFIX, "") + " ";
|
||||
if (param.containsKey(KEY_TWEETPOPUP_PREFIX)) {
|
||||
String addition = param.getString(KEY_TWEETPOPUP_PREFIX) + " ";
|
||||
tweetText.append(addition);
|
||||
}
|
||||
}
|
||||
|
||||
loadingCircle.requestWindowFeature(FEATURE_NO_TITLE);
|
||||
|
@ -120,7 +122,6 @@ public class TweetPopup extends AppCompatActivity implements OnClickListener, Lo
|
|||
loadingCircle.setContentView(load);
|
||||
FontTool.setViewFontAndColor(settings, root);
|
||||
root.setBackgroundColor(settings.getPopupColor());
|
||||
tweetText.append(addition);
|
||||
|
||||
closeButton.setOnClickListener(this);
|
||||
tweetButton.setOnClickListener(this);
|
||||
|
@ -363,7 +364,7 @@ public class TweetPopup extends AppCompatActivity implements OnClickListener, Lo
|
|||
* show confirmation dialog when closing edited tweet
|
||||
*/
|
||||
private void showClosingMsg() {
|
||||
if (!addition.equals(tweetText.getText().toString()) || !mediaPath.isEmpty()) {
|
||||
if (tweetText.getText().length() > 0 || !mediaPath.isEmpty()) {
|
||||
Builder closeDialog = new Builder(this, R.style.ConfirmDialog);
|
||||
closeDialog.setMessage(R.string.confirm_cancel_tweet);
|
||||
closeDialog.setNegativeButton(R.string.confirm_no, null);
|
||||
|
|
|
@ -48,14 +48,13 @@ public class TweetUploader extends AsyncTask<Void, Void, Boolean> {
|
|||
protected Boolean doInBackground(Void[] v) {
|
||||
try {
|
||||
mTwitter.uploadStatus(tweet);
|
||||
return true;
|
||||
} catch (EngineException twException) {
|
||||
this.twException = twException;
|
||||
return false;
|
||||
} catch (Exception exception) {
|
||||
exception.printStackTrace();
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -733,9 +733,8 @@ public class TwitterEngine {
|
|||
try {
|
||||
long id = twitter.showUser(messageHolder.getUsername()).getId();
|
||||
if (messageHolder.hasMedia()) {
|
||||
UploadedMedia media = twitter.uploadMedia(new File(messageHolder.getMediaPath()));
|
||||
long mediaId = media.getMediaId();
|
||||
twitter.sendDirectMessage(id, messageHolder.getMessage(), mediaId);
|
||||
long[] mediaId = uploadImages(messageHolder.getMediaPath());
|
||||
twitter.sendDirectMessage(id, messageHolder.getMessage(), mediaId[0]);
|
||||
} else {
|
||||
twitter.sendDirectMessage(id, messageHolder.getMessage());
|
||||
}
|
||||
|
|
|
@ -76,7 +76,7 @@ public abstract class ErrorHandler {
|
|||
break;
|
||||
|
||||
case NO_MEDIA_FOUND:
|
||||
Toast.makeText(context, R.string.error_no_media_app, Toast.LENGTH_SHORT).show();
|
||||
Toast.makeText(context, R.string.error_file_not_found, Toast.LENGTH_SHORT).show();
|
||||
break;
|
||||
|
||||
case NO_LINK_DEFINED:
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
package org.nuclearfog.twidda.backend.items;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
|
||||
/**
|
||||
* Direct message holder class
|
||||
|
@ -9,7 +10,7 @@ public class MessageHolder {
|
|||
|
||||
private final String username;
|
||||
private final String message;
|
||||
private final String mediaPath;
|
||||
private final String[] mediaPath;
|
||||
|
||||
/**
|
||||
* Direct message constructor
|
||||
|
@ -18,13 +19,13 @@ public class MessageHolder {
|
|||
* @param message message text
|
||||
* @param mediaPath local media path
|
||||
*/
|
||||
public MessageHolder(String username, String message, String mediaPath) {
|
||||
public MessageHolder(String username, String message, @Nullable String mediaPath) {
|
||||
if (username.startsWith("@"))
|
||||
this.username = username;
|
||||
else
|
||||
this.username = '@' + username;
|
||||
this.message = message;
|
||||
this.mediaPath = mediaPath;
|
||||
this.mediaPath = new String[]{mediaPath};
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -47,7 +48,7 @@ public class MessageHolder {
|
|||
* get local path of media
|
||||
* @return media path
|
||||
*/
|
||||
public String getMediaPath() {
|
||||
public String[] getMediaPath() {
|
||||
return mediaPath;
|
||||
}
|
||||
|
||||
|
@ -56,7 +57,7 @@ public class MessageHolder {
|
|||
* @return if media is set
|
||||
*/
|
||||
public boolean hasMedia() {
|
||||
return mediaPath != null && !mediaPath.isEmpty();
|
||||
return mediaPath[0] != null;
|
||||
}
|
||||
|
||||
@NonNull
|
||||
|
|
|
@ -146,4 +146,5 @@
|
|||
<string name="settings_info_github">Github Seite:</string>
|
||||
<string name="error_rate_limit">Zu viele Anfragen! Bitte 15 Minuten warten!</string>
|
||||
<string name="info_cant_add_video">Video konnte nicht hinzugefügt werden!</string>
|
||||
<string name="error_file_not_found">Datei nicht gefunden!</string>
|
||||
</resources>
|
|
@ -149,4 +149,5 @@
|
|||
<string name="error_rate_limit">Too many requests! Please wait 15 minutes.</string>
|
||||
<string name="info_cant_add_video">Can\'t add video!</string>
|
||||
<string name="badge_twitter4j" translatable="false">Twitter4J Badge</string>
|
||||
<string name="error_file_not_found">File not found!</string>
|
||||
</resources>
|
Loading…
Reference in New Issue