bugfix, code cleanup
This commit is contained in:
parent
f43219676e
commit
41b4c34f96
|
@ -29,6 +29,7 @@ public class ImagePopup extends AsyncTask<String, Void, Boolean> {
|
||||||
private LayoutInflater inf;
|
private LayoutInflater inf;
|
||||||
private ErrorLog errorLog;
|
private ErrorLog errorLog;
|
||||||
private int position = 0;
|
private int position = 0;
|
||||||
|
private String errMsg = "E: Image Popup, ";
|
||||||
|
|
||||||
public ImagePopup(Context context) {
|
public ImagePopup(Context context) {
|
||||||
popup = new Dialog(context);
|
popup = new Dialog(context);
|
||||||
|
@ -73,7 +74,8 @@ public class ImagePopup extends AsyncTask<String, Void, Boolean> {
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
} catch (Exception err) {
|
} catch (Exception err) {
|
||||||
errorLog.add("E: " + err.getMessage());
|
errMsg += err.getMessage();
|
||||||
|
errorLog.add(errMsg);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,9 +38,9 @@ public class MainPage extends AsyncTask<Integer, Void, Integer> {
|
||||||
private TrendRecycler trendsAdapter;
|
private TrendRecycler trendsAdapter;
|
||||||
private ErrorLog errorLog;
|
private ErrorLog errorLog;
|
||||||
private int woeId;
|
private int woeId;
|
||||||
private String errMsg;
|
|
||||||
private int highlight, font;
|
private int highlight, font;
|
||||||
private boolean image;
|
private boolean image;
|
||||||
|
private String errMsg = "E: Main Page, ";
|
||||||
private int retryAfter = 0;
|
private int retryAfter = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -162,16 +162,13 @@ public class MainPage extends AsyncTask<Integer, Void, Integer> {
|
||||||
if(errCode == 420) {
|
if(errCode == 420) {
|
||||||
retryAfter = e.getRetryAfter();
|
retryAfter = e.getRetryAfter();
|
||||||
} else {
|
} else {
|
||||||
String errMsg = "E: " + e.getMessage();
|
errMsg += e.getMessage();
|
||||||
errorLog.add(errMsg);
|
|
||||||
}
|
}
|
||||||
return FAIL;
|
return FAIL;
|
||||||
}
|
}
|
||||||
catch (Exception e) {
|
catch (Exception e) {
|
||||||
String errMsg = "E: Main Page, " + e.getMessage();
|
errMsg += e.getMessage();
|
||||||
if(ui.get() != null) {
|
|
||||||
errorLog.add(errMsg);
|
errorLog.add(errMsg);
|
||||||
}
|
|
||||||
return FAIL;
|
return FAIL;
|
||||||
}
|
}
|
||||||
return MODE;
|
return MODE;
|
||||||
|
@ -206,8 +203,11 @@ public class MainPage extends AsyncTask<Integer, Void, Integer> {
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case FAIL:
|
case FAIL:
|
||||||
if (retryAfter > 0)
|
if (retryAfter > 0) {
|
||||||
Toast.makeText(connect, R.string.rate_limit_exceeded, Toast.LENGTH_LONG).show();
|
Toast.makeText(connect, R.string.rate_limit_exceeded, Toast.LENGTH_SHORT).show();
|
||||||
|
} else {
|
||||||
|
Toast.makeText(connect, errMsg, Toast.LENGTH_LONG).show();
|
||||||
|
}
|
||||||
default:
|
default:
|
||||||
timelineRefresh.setRefreshing(false);
|
timelineRefresh.setRefreshing(false);
|
||||||
trendRefresh.setRefreshing(false);
|
trendRefresh.setRefreshing(false);
|
||||||
|
|
|
@ -55,6 +55,7 @@ public class ProfileLoader extends AsyncTask<Long,Void,Long> {
|
||||||
private boolean isVerified = false;
|
private boolean isVerified = false;
|
||||||
private boolean isLocked = false;
|
private boolean isLocked = false;
|
||||||
private boolean blocked = false;
|
private boolean blocked = false;
|
||||||
|
private String errMsg = "E: Profile Load, ";
|
||||||
private int retryAfter = 0;
|
private int retryAfter = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -192,13 +193,13 @@ public class ProfileLoader extends AsyncTask<Long,Void,Long> {
|
||||||
retryAfter = err.getRetryAfter();
|
retryAfter = err.getRetryAfter();
|
||||||
}
|
}
|
||||||
else if(errCode != 136) {
|
else if(errCode != 136) {
|
||||||
String errMsg = "E: " + err.getMessage();
|
errMsg += err.getMessage();
|
||||||
errorLog.add(errMsg);
|
errorLog.add(errMsg);
|
||||||
}
|
}
|
||||||
return FAILURE;
|
return FAILURE;
|
||||||
}
|
}
|
||||||
catch(Exception err) {
|
catch(Exception err) {
|
||||||
String errMsg = "E: Profile Load, " + err.getMessage();
|
errMsg += err.getMessage();
|
||||||
errorLog.add(errMsg);
|
errorLog.add(errMsg);
|
||||||
return FAILURE;
|
return FAILURE;
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,7 +17,8 @@ public class Registration extends AsyncTask<String, Void, Boolean> {
|
||||||
private WeakReference<LoginPage> ui;
|
private WeakReference<LoginPage> ui;
|
||||||
private TwitterEngine mTwitter;
|
private TwitterEngine mTwitter;
|
||||||
private ErrorLog errorLog;
|
private ErrorLog errorLog;
|
||||||
private String errorMessage;
|
private boolean failure = false;
|
||||||
|
private String errorMessage = "E: Registration, ";
|
||||||
private String redirectionURL = "";
|
private String redirectionURL = "";
|
||||||
|
|
||||||
|
|
||||||
|
@ -39,12 +40,14 @@ public class Registration extends AsyncTask<String, Void, Boolean> {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
} catch(TwitterException e) {
|
} catch(TwitterException e) {
|
||||||
errorMessage = "E: " + e.getErrorMessage();
|
errorMessage += e.getErrorMessage();
|
||||||
errorLog.add(errorMessage);
|
errorLog.add(errorMessage);
|
||||||
|
failure = true;
|
||||||
}
|
}
|
||||||
catch ( Exception e ) {
|
catch ( Exception e ) {
|
||||||
errorMessage = "E: Registration, " + e.getMessage();
|
errorMessage += e.getMessage();
|
||||||
errorLog.add(errorMessage);
|
errorLog.add(errorMessage);
|
||||||
|
failure = true;
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -58,10 +61,10 @@ public class Registration extends AsyncTask<String, Void, Boolean> {
|
||||||
if(success) {
|
if(success) {
|
||||||
connect.setResult(Activity.RESULT_OK);
|
connect.setResult(Activity.RESULT_OK);
|
||||||
connect.finish();
|
connect.finish();
|
||||||
} else if (errorMessage != null) {
|
} else if (failure) {
|
||||||
Toast.makeText(connect,errorMessage,Toast.LENGTH_LONG).show();
|
Toast.makeText(connect,errorMessage,Toast.LENGTH_LONG).show();
|
||||||
} else {
|
} else {
|
||||||
ui.get().connect(redirectionURL);
|
connect.connect(redirectionURL);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,7 +54,7 @@ public class StatusLoader extends AsyncTask<Long, Void, Long> {
|
||||||
private String usernameStr, scrNameStr, tweetStr, dateString;
|
private String usernameStr, scrNameStr, tweetStr, dateString;
|
||||||
private String repliedUsername, apiName, profile_pb;
|
private String repliedUsername, apiName, profile_pb;
|
||||||
private String medialinks[];
|
private String medialinks[];
|
||||||
private String errorMessage = "";
|
private String errorMessage = "Status load: ";
|
||||||
private boolean retweeted, favorited, toggleImg, verified;
|
private boolean retweeted, favorited, toggleImg, verified;
|
||||||
private long tweetReplyID, replyUserId;
|
private long tweetReplyID, replyUserId;
|
||||||
private int rtCount, favCount;
|
private int rtCount, favCount;
|
||||||
|
@ -162,6 +162,7 @@ public class StatusLoader extends AsyncTask<Long, Void, Long> {
|
||||||
answers = mTwitter.getAnswers(scrNameStr, tweetID, tweetID);
|
answers = mTwitter.getAnswers(scrNameStr, tweetID, tweetID);
|
||||||
}
|
}
|
||||||
answerAdapter.setData(answers);
|
answerAdapter.setData(answers);
|
||||||
|
answerAdapter.toggleImage(toggleImg);
|
||||||
answerAdapter.setColor(highlight, font);
|
answerAdapter.setColor(highlight, font);
|
||||||
if(answers.size() > 0 && database.containStatus(tweetID))
|
if(answers.size() > 0 && database.containStatus(tweetID))
|
||||||
database.storeReplies(answers);
|
database.storeReplies(answers);
|
||||||
|
@ -170,18 +171,18 @@ public class StatusLoader extends AsyncTask<Long, Void, Long> {
|
||||||
catch(TwitterException e) {
|
catch(TwitterException e) {
|
||||||
int errCode = e.getErrorCode();
|
int errCode = e.getErrorCode();
|
||||||
if(errCode == 144) {
|
if(errCode == 144) {
|
||||||
database.removeStatus(tweetID);
|
database.removeStatus(tweetID); //TODO
|
||||||
errorMessage = "Tweet nicht gefunden!\nID:"+tweetID;
|
errorMessage = "Tweet nicht gefunden!\nID:"+tweetID;
|
||||||
} else if(errCode == 420) {
|
} else if(errCode == 420) {
|
||||||
int retry = e.getRetryAfter();
|
int retry = e.getRetryAfter(); //TODO
|
||||||
errorMessage = "Rate limit erreicht!\n Weiter in "+retry+" Sekunden";
|
errorMessage = "Rate limit erreicht!\n Weiter in "+retry+" Sekunden";
|
||||||
} else {
|
} else {
|
||||||
errorMessage = "Fehler: "+e.getMessage();
|
errorMessage += e.getMessage();
|
||||||
}
|
}
|
||||||
return ERROR;
|
return ERROR;
|
||||||
}
|
}
|
||||||
catch(Exception err) {
|
catch(Exception err) {
|
||||||
errorMessage = "Status load: "+err.getMessage();
|
errorMessage += err.getMessage();
|
||||||
errorLog.add(errorMessage);
|
errorLog.add(errorMessage);
|
||||||
return ERROR;
|
return ERROR;
|
||||||
}
|
}
|
||||||
|
@ -245,7 +246,8 @@ public class StatusLoader extends AsyncTask<Long, Void, Long> {
|
||||||
}
|
}
|
||||||
if(toggleImg) {
|
if(toggleImg) {
|
||||||
Picasso.with(ui.get()).load(profile_pb).into(profile_img);
|
Picasso.with(ui.get()).load(profile_pb).into(profile_img);
|
||||||
if(medialinks != null && medialinks.length != 0) {
|
}
|
||||||
|
if (medialinks != null && medialinks.length != 0) {
|
||||||
View mediaButton = connect.findViewById(R.id.image_attach);
|
View mediaButton = connect.findViewById(R.id.image_attach);
|
||||||
mediaButton.setVisibility(View.VISIBLE);
|
mediaButton.setVisibility(View.VISIBLE);
|
||||||
mediaButton.setOnClickListener(new View.OnClickListener() {
|
mediaButton.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@ -255,7 +257,6 @@ public class StatusLoader extends AsyncTask<Long, Void, Long> {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
|
||||||
Button retweetButton = connect.findViewById(R.id.rt_button_detail);
|
Button retweetButton = connect.findViewById(R.id.rt_button_detail);
|
||||||
Button favoriteButton = connect.findViewById(R.id.fav_button_detail);
|
Button favoriteButton = connect.findViewById(R.id.fav_button_detail);
|
||||||
setIcons(favoriteButton, retweetButton);
|
setIcons(favoriteButton, retweetButton);
|
||||||
|
|
|
@ -20,7 +20,7 @@ import java.util.List;
|
||||||
|
|
||||||
import twitter4j.TwitterException;
|
import twitter4j.TwitterException;
|
||||||
|
|
||||||
public class TwitterSearch extends AsyncTask<String, Void, Void> {
|
public class TwitterSearch extends AsyncTask<String, Void, Boolean> {
|
||||||
|
|
||||||
private TimelineRecycler searchAdapter;
|
private TimelineRecycler searchAdapter;
|
||||||
private UserRecycler userAdapter;
|
private UserRecycler userAdapter;
|
||||||
|
@ -29,6 +29,7 @@ public class TwitterSearch extends AsyncTask<String, Void, Void> {
|
||||||
private WeakReference<SearchPage> ui;
|
private WeakReference<SearchPage> ui;
|
||||||
private int highlight, font_color;
|
private int highlight, font_color;
|
||||||
private boolean imageLoad;
|
private boolean imageLoad;
|
||||||
|
private String errorMessage = "E: Twitter search, ";
|
||||||
private int retryAfter = 0;
|
private int retryAfter = 0;
|
||||||
|
|
||||||
public TwitterSearch(Context context) {
|
public TwitterSearch(Context context) {
|
||||||
|
@ -58,7 +59,7 @@ public class TwitterSearch extends AsyncTask<String, Void, Void> {
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected Void doInBackground(String... search) {
|
protected Boolean doInBackground(String... search) {
|
||||||
String strSearch = search[0];
|
String strSearch = search[0];
|
||||||
long id = 1L;
|
long id = 1L;
|
||||||
try {
|
try {
|
||||||
|
@ -79,32 +80,35 @@ public class TwitterSearch extends AsyncTask<String, Void, Void> {
|
||||||
searchAdapter.setColor(highlight,font_color);
|
searchAdapter.setColor(highlight,font_color);
|
||||||
searchAdapter.toggleImage(imageLoad);
|
searchAdapter.toggleImage(imageLoad);
|
||||||
userAdapter.toggleImage(imageLoad);
|
userAdapter.toggleImage(imageLoad);
|
||||||
|
return true;
|
||||||
|
|
||||||
} catch (TwitterException err) {
|
} catch (TwitterException err) {
|
||||||
int errCode = err.getErrorCode();
|
int errCode = err.getErrorCode();
|
||||||
if(errCode == 420) {
|
if(errCode == 420) {
|
||||||
retryAfter = err.getRetryAfter();
|
retryAfter = err.getRetryAfter();
|
||||||
} else {
|
} else {
|
||||||
String errorMessage = "E: " + err.getErrorMessage();
|
errorMessage += err.getMessage();
|
||||||
errorLog.add(errorMessage);
|
errorLog.add(errorMessage);
|
||||||
}
|
}
|
||||||
} catch(Exception err) {
|
} catch(Exception err) {
|
||||||
String errorMessage = "E: Twitter search, " + err.getMessage();
|
errorMessage += err.getMessage();
|
||||||
errorLog.add(errorMessage);
|
errorLog.add(errorMessage);
|
||||||
}
|
}
|
||||||
return null;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onPostExecute(Void v) {
|
protected void onPostExecute(Boolean success) {
|
||||||
SearchPage connect = ui.get();
|
SearchPage connect = ui.get();
|
||||||
if(connect == null)
|
if(connect == null)
|
||||||
return;
|
return;
|
||||||
if (retryAfter > 0) {
|
if (!success) {
|
||||||
|
if (retryAfter > 0)
|
||||||
Toast.makeText(connect, R.string.rate_limit_exceeded, Toast.LENGTH_LONG).show();
|
Toast.makeText(connect, R.string.rate_limit_exceeded, Toast.LENGTH_LONG).show();
|
||||||
|
else
|
||||||
|
Toast.makeText(connect, errorMessage, Toast.LENGTH_LONG).show();
|
||||||
}
|
}
|
||||||
|
|
||||||
SwipeRefreshLayout tweetReload = connect.findViewById(R.id.searchtweets);
|
SwipeRefreshLayout tweetReload = connect.findViewById(R.id.searchtweets);
|
||||||
View circleLoad = connect.findViewById(R.id.search_progress);
|
View circleLoad = connect.findViewById(R.id.search_progress);
|
||||||
circleLoad.setVisibility(View.INVISIBLE);
|
circleLoad.setVisibility(View.INVISIBLE);
|
||||||
|
|
|
@ -29,6 +29,7 @@ public class UserLists extends AsyncTask <Long, Void, Boolean> {
|
||||||
private UserRecycler usrAdp;
|
private UserRecycler usrAdp;
|
||||||
private ErrorLog errorLog;
|
private ErrorLog errorLog;
|
||||||
private boolean imageLoad;
|
private boolean imageLoad;
|
||||||
|
private String errorMessage = "E: Userlist, ";
|
||||||
private int retryAfter = 0;
|
private int retryAfter = 0;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -75,12 +76,12 @@ public class UserLists extends AsyncTask <Long, Void, Boolean> {
|
||||||
if(errCode == 420) {
|
if(errCode == 420) {
|
||||||
retryAfter = err.getRetryAfter();
|
retryAfter = err.getRetryAfter();
|
||||||
} else {
|
} else {
|
||||||
String errorMessage = "E: " + err.getMessage();
|
errorMessage += err.getMessage();
|
||||||
errorLog.add(errorMessage);
|
errorLog.add(errorMessage);
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
} catch(Exception err) {
|
} catch(Exception err) {
|
||||||
String errorMessage = "E: Userlist, " + err.getMessage();
|
errorMessage += err.getMessage();
|
||||||
errorLog.add(errorMessage);
|
errorLog.add(errorMessage);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -98,7 +99,9 @@ public class UserLists extends AsyncTask <Long, Void, Boolean> {
|
||||||
usrAdp.notifyDataSetChanged();
|
usrAdp.notifyDataSetChanged();
|
||||||
} else {
|
} else {
|
||||||
if (retryAfter > 0)
|
if (retryAfter > 0)
|
||||||
Toast.makeText(ui.get(), R.string.rate_limit_exceeded, Toast.LENGTH_LONG).show();
|
Toast.makeText(ui.get(), R.string.rate_limit_exceeded, Toast.LENGTH_SHORT).show();
|
||||||
|
else
|
||||||
|
Toast.makeText(ui.get(), errorMessage, Toast.LENGTH_SHORT).show();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -13,6 +13,9 @@ import android.support.v7.app.AlertDialog;
|
||||||
import android.support.v7.app.AppCompatActivity;
|
import android.support.v7.app.AppCompatActivity;
|
||||||
import android.support.v7.widget.LinearLayoutManager;
|
import android.support.v7.widget.LinearLayoutManager;
|
||||||
import android.support.v7.widget.RecyclerView;
|
import android.support.v7.widget.RecyclerView;
|
||||||
|
import android.support.v7.widget.Toolbar;
|
||||||
|
import android.view.Menu;
|
||||||
|
import android.view.MenuItem;
|
||||||
import android.view.View;
|
import android.view.View;
|
||||||
import android.view.View.OnClickListener;
|
import android.view.View.OnClickListener;
|
||||||
import android.view.ViewGroup;
|
import android.view.ViewGroup;
|
||||||
|
@ -43,13 +46,13 @@ public class TweetDetail extends AppCompatActivity implements OnClickListener,
|
||||||
private ConnectivityManager mConnect;
|
private ConnectivityManager mConnect;
|
||||||
private GlobalSettings settings;
|
private GlobalSettings settings;
|
||||||
private String username = "";
|
private String username = "";
|
||||||
|
private boolean isHome;
|
||||||
private long userID = 0;
|
private long userID = 0;
|
||||||
private long tweetID = 0;
|
private long tweetID = 0;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle b) {
|
protected void onCreate(Bundle b) {
|
||||||
super.onCreate(b);
|
super.onCreate(b);
|
||||||
|
|
||||||
b = getIntent().getExtras();
|
b = getIntent().getExtras();
|
||||||
if (b != null) {
|
if (b != null) {
|
||||||
tweetID = b.getLong("tweetID");
|
tweetID = b.getLong("tweetID");
|
||||||
|
@ -58,13 +61,17 @@ public class TweetDetail extends AppCompatActivity implements OnClickListener,
|
||||||
}
|
}
|
||||||
setContentView(R.layout.tweetpage);
|
setContentView(R.layout.tweetpage);
|
||||||
|
|
||||||
|
Toolbar tool = findViewById(R.id.tweet_toolbar);
|
||||||
|
setSupportActionBar(tool);
|
||||||
|
if (getSupportActionBar() != null)
|
||||||
|
getSupportActionBar().setDisplayShowTitleEnabled(false);
|
||||||
|
|
||||||
settings = GlobalSettings.getInstance(this);
|
settings = GlobalSettings.getInstance(this);
|
||||||
boolean home = userID == settings.getUserId();
|
isHome = userID == settings.getUserId();
|
||||||
mConnect = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
|
mConnect = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
|
||||||
|
|
||||||
View retweet = findViewById(R.id.rt_button_detail);
|
View retweet = findViewById(R.id.rt_button_detail);
|
||||||
View favorite = findViewById(R.id.fav_button_detail);
|
View favorite = findViewById(R.id.fav_button_detail);
|
||||||
View delete = findViewById(R.id.delete);
|
|
||||||
View txtRt = findViewById(R.id.no_rt_detail);
|
View txtRt = findViewById(R.id.no_rt_detail);
|
||||||
View txtFav = findViewById(R.id.no_fav_detail);
|
View txtFav = findViewById(R.id.no_fav_detail);
|
||||||
View date = findViewById(R.id.timedetail);
|
View date = findViewById(R.id.timedetail);
|
||||||
|
@ -73,16 +80,12 @@ public class TweetDetail extends AppCompatActivity implements OnClickListener,
|
||||||
answerReload = findViewById(R.id.answer_reload);
|
answerReload = findViewById(R.id.answer_reload);
|
||||||
answer_list = findViewById(R.id.answer_list);
|
answer_list = findViewById(R.id.answer_list);
|
||||||
answer_list.setLayoutManager(new LinearLayoutManager(getApplicationContext()));
|
answer_list.setLayoutManager(new LinearLayoutManager(getApplicationContext()));
|
||||||
if(home) {
|
|
||||||
delete.setVisibility(View.VISIBLE);
|
|
||||||
}
|
|
||||||
favorite.setOnClickListener(this);
|
favorite.setOnClickListener(this);
|
||||||
retweet.setOnClickListener(this);
|
retweet.setOnClickListener(this);
|
||||||
answerReload.setOnRefreshListener(this);
|
answerReload.setOnRefreshListener(this);
|
||||||
txtFav.setOnClickListener(this);
|
txtFav.setOnClickListener(this);
|
||||||
txtRt.setOnClickListener(this);
|
txtRt.setOnClickListener(this);
|
||||||
date.setOnClickListener(this);
|
date.setOnClickListener(this);
|
||||||
delete.setOnClickListener(this);
|
|
||||||
profile_img.setOnClickListener(this);
|
profile_img.setOnClickListener(this);
|
||||||
answer.setOnClickListener(this);
|
answer.setOnClickListener(this);
|
||||||
setContent();
|
setContent();
|
||||||
|
@ -103,6 +106,31 @@ public class TweetDetail extends AppCompatActivity implements OnClickListener,
|
||||||
super.onPause();
|
super.onPause();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onCreateOptionsMenu(Menu m) {
|
||||||
|
getMenuInflater().inflate(R.menu.tweet, m); //TODO add more
|
||||||
|
if (isHome) {
|
||||||
|
m.findItem(R.id.delete_tweet).setVisible(true);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onOptionsItemSelected(MenuItem item) {
|
||||||
|
switch (item.getItemId()) {
|
||||||
|
case R.id.delete_tweet:
|
||||||
|
AlertDialog.Builder alerta = new AlertDialog.Builder(this);
|
||||||
|
alerta.setMessage(R.string.delete_tweet);
|
||||||
|
alerta.setPositiveButton(R.string.yes_confirm, this);
|
||||||
|
alerta.setNegativeButton(R.string.no_confirm, this);
|
||||||
|
alerta.show();
|
||||||
|
return true;
|
||||||
|
|
||||||
|
default:
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
Intent intent;
|
Intent intent;
|
||||||
|
@ -133,18 +161,10 @@ public class TweetDetail extends AppCompatActivity implements OnClickListener,
|
||||||
startActivity(intent);
|
startActivity(intent);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case R.id.delete:
|
|
||||||
AlertDialog.Builder alerta = new AlertDialog.Builder(this);
|
|
||||||
alerta.setMessage(R.string.delete_tweet);
|
|
||||||
alerta.setPositiveButton(R.string.yes_confirm, this);
|
|
||||||
alerta.setNegativeButton(R.string.no_confirm, this);
|
|
||||||
alerta.show();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case R.id.timedetail:
|
case R.id.timedetail:
|
||||||
if (mConnect.getActiveNetworkInfo() != null && mConnect.getActiveNetworkInfo().isConnected()) {
|
if (mConnect.getActiveNetworkInfo() != null && mConnect.getActiveNetworkInfo().isConnected()) {
|
||||||
intent = new Intent(Intent.ACTION_VIEW);
|
intent = new Intent(Intent.ACTION_VIEW);
|
||||||
String tweetLink = "https://twitter.com/" + username + "/status/" + tweetID;
|
String tweetLink = "https://twitter.com/" + username.substring(1) + "/status/" + tweetID;
|
||||||
intent.setData(Uri.parse(tweetLink));
|
intent.setData(Uri.parse(tweetLink));
|
||||||
startActivity(intent);
|
startActivity(intent);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -10,10 +10,10 @@
|
||||||
android:background="@android:color/transparent">
|
android:background="@android:color/transparent">
|
||||||
|
|
||||||
<android.support.design.widget.CollapsingToolbarLayout
|
<android.support.design.widget.CollapsingToolbarLayout
|
||||||
|
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
app:layout_scrollFlags="scroll|exitUntilCollapsed"
|
app:layout_scrollFlags="scroll|exitUntilCollapsed">
|
||||||
app:toolbarId="@+id/tweet_toolbar">
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
|
|
@ -3,21 +3,18 @@
|
||||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent">
|
||||||
android:fitsSystemWindows="true">
|
|
||||||
|
|
||||||
<android.support.design.widget.AppBarLayout
|
<android.support.design.widget.AppBarLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:background="@android:color/transparent"
|
android:background="@android:color/transparent">
|
||||||
android:fitsSystemWindows="false">
|
|
||||||
|
|
||||||
<android.support.design.widget.CollapsingToolbarLayout
|
<android.support.design.widget.CollapsingToolbarLayout
|
||||||
android:id="@+id/tweet_detail"
|
android:id="@+id/tweet_detail"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
app:layout_scrollFlags="scroll|exitUntilCollapsed"
|
app:layout_scrollFlags="scroll|exitUntilCollapsed">
|
||||||
app:toolbarId="@+id/tweet_toolbar">
|
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
@ -26,6 +23,11 @@
|
||||||
android:gravity="center_horizontal"
|
android:gravity="center_horizontal"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
|
<android.support.v7.widget.Toolbar
|
||||||
|
android:id="@+id/tweet_toolbar"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="@dimen/bar_wide" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/answer_reference_detail"
|
android:id="@+id/answer_reference_detail"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
|
@ -152,8 +154,8 @@
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/answer_button"
|
android:id="@+id/answer_button"
|
||||||
android:layout_width="16dp"
|
android:layout_width="20dp"
|
||||||
android:layout_height="16dp"
|
android:layout_height="20dp"
|
||||||
android:background="@drawable/chat" />
|
android:background="@drawable/chat" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
@ -169,8 +171,8 @@
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/rt_button_detail"
|
android:id="@+id/rt_button_detail"
|
||||||
android:layout_width="16dp"
|
android:layout_width="20dp"
|
||||||
android:layout_height="16dp"
|
android:layout_height="20dp"
|
||||||
android:background="@drawable/retweet" />
|
android:background="@drawable/retweet" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
@ -186,8 +188,8 @@
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/fav_button_detail"
|
android:id="@+id/fav_button_detail"
|
||||||
android:layout_width="16dp"
|
android:layout_width="24dp"
|
||||||
android:layout_height="16dp"
|
android:layout_height="20dp"
|
||||||
android:background="@drawable/favorite" />
|
android:background="@drawable/favorite" />
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
|
@ -201,13 +203,6 @@
|
||||||
android:singleLine="true"
|
android:singleLine="true"
|
||||||
android:textSize="12sp" />
|
android:textSize="12sp" />
|
||||||
|
|
||||||
<Button
|
|
||||||
android:id="@+id/delete"
|
|
||||||
android:layout_width="16dp"
|
|
||||||
android:layout_height="16dp"
|
|
||||||
android:background="@drawable/cross"
|
|
||||||
android:visibility="invisible" />
|
|
||||||
|
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
<android.support.v4.widget.SwipeRefreshLayout
|
<android.support.v4.widget.SwipeRefreshLayout
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<menu xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
|
|
||||||
|
<item
|
||||||
|
android:id="@+id/delete_tweet"
|
||||||
|
android:title="@string/tweet_delete"
|
||||||
|
android:visible="false" />
|
||||||
|
</menu>
|
|
@ -40,4 +40,5 @@
|
||||||
<string name="error_sending_tweet">Fehler beim Senden!</string>
|
<string name="error_sending_tweet">Fehler beim Senden!</string>
|
||||||
<string name="tweet_sent">Tweet gesendet</string>
|
<string name="tweet_sent">Tweet gesendet</string>
|
||||||
<string name="error">Fehler!</string>
|
<string name="error">Fehler!</string>
|
||||||
|
<string name="tweet_delete">Tweet löschen</string>
|
||||||
</resources>
|
</resources>
|
|
@ -48,4 +48,5 @@
|
||||||
<string name="error_sending_tweet">error while sending</string>
|
<string name="error_sending_tweet">error while sending</string>
|
||||||
<string name="tweet_sent">tweet sent</string>
|
<string name="tweet_sent">tweet sent</string>
|
||||||
<string name="error">Error!</string>
|
<string name="error">Error!</string>
|
||||||
|
<string name="tweet_delete">Delete</string>
|
||||||
</resources>
|
</resources>
|
Loading…
Reference in New Issue