Release 2.35.5

This commit is contained in:
Thomas 2020-06-06 18:42:12 +02:00
parent ba6b803410
commit 3f27dc97d3
8 changed files with 31 additions and 19 deletions

View File

@ -6,8 +6,8 @@ android {
defaultConfig { defaultConfig {
minSdkVersion 19 minSdkVersion 19
targetSdkVersion 29 targetSdkVersion 29
versionCode 368 versionCode 369
versionName "2.35.4" versionName "2.35.5"
multiDexEnabled true multiDexEnabled true
renderscriptTargetApi 28 as int renderscriptTargetApi 28 as int
renderscriptSupportModeEnabled true renderscriptSupportModeEnabled true
@ -89,7 +89,7 @@ dependencies {
annotationProcessor 'com.android.support:support-annotations:28.0.0' annotationProcessor 'com.android.support:support-annotations:28.0.0'
implementation "org.conscrypt:conscrypt-android:2.4.0" implementation "org.conscrypt:conscrypt-android:2.4.0"
implementation "com.evernote:android-job:1.2.6" implementation "com.evernote:android-job:1.2.6"
implementation "com.google.code.gson:gson:2.8.5" implementation "com.google.code.gson:gson:2.8.6"
implementation "com.google.guava:guava:28.2-android" implementation "com.google.guava:guava:28.2-android"
implementation "com.github.chrisbanes:PhotoView:2.3.0" implementation "com.github.chrisbanes:PhotoView:2.3.0"
implementation 'com.r0adkll:slidableactivity:2.1.0' implementation 'com.r0adkll:slidableactivity:2.1.0'

View File

@ -6,4 +6,5 @@ Changed:
Fixed: Fixed:
- Some URLs not clickable - Some URLs not clickable
- Empty home timeline - Empty home timeline
- Some crashes when scrolling

View File

@ -593,7 +593,12 @@ public class LoginActivity extends BaseActivity {
editor.putString(Helper.PREF_KEY_OAUTH_TOKEN, token); editor.putString(Helper.PREF_KEY_OAUTH_TOKEN, token);
editor.apply(); editor.apply();
//Update the account with the token; //Update the account with the token;
new UpdateAccountInfoAsyncTask(LoginActivity.this, token, client_id, client_secret, refresh_token, instance, socialNetwork).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); if (instance != null) {
new UpdateAccountInfoAsyncTask(LoginActivity.this, token, client_id, client_secret, refresh_token, instance, socialNetwork).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
} else {
connectionButton.setEnabled(true);
Toasty.error(LoginActivity.this, getString(R.string.toast_error), Toast.LENGTH_LONG).show();
}
} catch (JSONException e) { } catch (JSONException e) {
e.printStackTrace(); e.printStackTrace();
} }

View File

@ -150,7 +150,9 @@ public class WebviewConnectActivity extends BaseActivity {
} }
}); });
if (instance == null) {
finish();
}
webView.setWebViewClient(new WebViewClient() { webView.setWebViewClient(new WebViewClient() {
@Override @Override
public boolean shouldOverrideUrlLoading(WebView view, String url) { public boolean shouldOverrideUrlLoading(WebView view, String url) {
@ -200,6 +202,7 @@ public class WebviewConnectActivity extends BaseActivity {
}); });
webView.loadUrl(LoginActivity.redirectUserToAuthorizeAndLogin(WebviewConnectActivity.this, clientId, instance)); webView.loadUrl(LoginActivity.redirectUserToAuthorizeAndLogin(WebviewConnectActivity.this, clientId, instance));
} }
@Override @Override

View File

@ -145,17 +145,17 @@ public class Status implements Parcelable {
private Card card; private Card card;
private String language; private String language;
private boolean isTranslated = false; private boolean isTranslated = false;
private boolean isEmojiFound = false; private transient boolean isEmojiFound = false;
private boolean isPollEmojiFound = false; private transient boolean isPollEmojiFound = false;
private boolean isImageFound = false; private transient boolean isImageFound = false;
private boolean isEmojiTranslateFound = false; private transient boolean isEmojiTranslateFound = false;
private boolean isTranslationShown = false; private boolean isTranslationShown = false;
private boolean isNew = false; private boolean isNew = false;
private boolean isVisible = true; private boolean isVisible = true;
private boolean fetchMore = false; private boolean fetchMore = false;
private String content, contentCW, contentTranslated; private String content, contentCW, contentTranslated;
private SpannableString contentSpan, contentSpanCW, contentSpanTranslated; private SpannableString contentSpan, contentSpanCW, contentSpanTranslated;
private RetrieveFeedsAsyncTask.Type type; private transient RetrieveFeedsAsyncTask.Type type;
private int itemViewType; private int itemViewType;
private String conversationId; private String conversationId;
private boolean isExpanded = false; private boolean isExpanded = false;
@ -184,9 +184,9 @@ public class Status implements Parcelable {
private List<String> imageURL; private List<String> imageURL;
private int viewType; private int viewType;
private boolean isFocused = false; private boolean isFocused = false;
private long db_id; private transient long db_id;
private boolean commentsFetched = false; private transient boolean commentsFetched = false;
private List<Status> comments = new ArrayList<>(); private transient List<Status> comments = new ArrayList<>();
public Status() { public Status() {
} }
@ -1314,7 +1314,7 @@ public class Status implements Parcelable {
} }
public String getContent() { public String getContent() {
return content; return content.replaceAll("\\p{C}", "?");
} }
public void setContent(Context context, String content) { public void setContent(Context context, String content) {

View File

@ -78,7 +78,10 @@ public class StatusCacheDAO {
values.put(Sqlite.COL_ACCOUNT, Helper.accountToStringStorage(status.getAccount())); values.put(Sqlite.COL_ACCOUNT, Helper.accountToStringStorage(status.getAccount()));
values.put(Sqlite.COL_IN_REPLY_TO_ID, status.getIn_reply_to_id()); values.put(Sqlite.COL_IN_REPLY_TO_ID, status.getIn_reply_to_id());
values.put(Sqlite.COL_IN_REPLY_TO_ACCOUNT_ID, status.getIn_reply_to_account_id()); values.put(Sqlite.COL_IN_REPLY_TO_ACCOUNT_ID, status.getIn_reply_to_account_id());
values.put(Sqlite.COL_REBLOG, status.getReblog() != null ? Helper.statusToStringStorage(status.getReblog()) : null); try {
values.put(Sqlite.COL_REBLOG, status.getReblog() != null ? Helper.statusToStringStorage(status.getReblog()) : "");
} catch (Exception ignored) {
}
values.put(Sqlite.COL_CONTENT, status.getContent()); values.put(Sqlite.COL_CONTENT, status.getContent());
values.put(Sqlite.COL_EMOJIS, status.getEmojis() != null ? Helper.emojisToStringStorage(status.getEmojis()) : null); values.put(Sqlite.COL_EMOJIS, status.getEmojis() != null ? Helper.emojisToStringStorage(status.getEmojis()) : null);
values.put(Sqlite.COL_POLL, status.getPoll() != null ? Helper.pollToStringStorage(status.getPoll()) : null); values.put(Sqlite.COL_POLL, status.getPoll() != null ? Helper.pollToStringStorage(status.getPoll()) : null);

View File

@ -6,7 +6,7 @@ buildscript {
google() google()
} }
dependencies { dependencies {
classpath 'com.android.tools.build:gradle:3.6.2' classpath 'com.android.tools.build:gradle:4.0.0'
// NOTE: Do not place your application dependencies here; they belong // NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files // in the individual module build.gradle files

View File

@ -1,6 +1,6 @@
#Fri Mar 06 19:14:19 CET 2020 #Sat Jun 06 18:24:49 CEST 2020
distributionBase=GRADLE_USER_HOME distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip