Move assets
This commit is contained in:
parent
361857aff4
commit
82e4e40af5
|
@ -106,6 +106,7 @@ import app.fedilab.android.asynctasks.RetrieveStoriesAsyncTask;
|
||||||
import app.fedilab.android.asynctasks.SyncTimelinesAsyncTask;
|
import app.fedilab.android.asynctasks.SyncTimelinesAsyncTask;
|
||||||
import app.fedilab.android.asynctasks.UpdateAccountInfoAsyncTask;
|
import app.fedilab.android.asynctasks.UpdateAccountInfoAsyncTask;
|
||||||
import app.fedilab.android.asynctasks.UpdateAccountInfoByIDAsyncTask;
|
import app.fedilab.android.asynctasks.UpdateAccountInfoByIDAsyncTask;
|
||||||
|
import app.fedilab.android.client.API;
|
||||||
import app.fedilab.android.client.APIResponse;
|
import app.fedilab.android.client.APIResponse;
|
||||||
import app.fedilab.android.client.Entities.Account;
|
import app.fedilab.android.client.Entities.Account;
|
||||||
import app.fedilab.android.client.Entities.Announcement;
|
import app.fedilab.android.client.Entities.Announcement;
|
||||||
|
@ -316,6 +317,11 @@ public abstract class BaseMainActivity extends BaseActivity
|
||||||
} catch (Exception ignored) {
|
} catch (Exception ignored) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (social == UpdateAccountInfoAsyncTask.SOCIAL.PEERTUBE || social == UpdateAccountInfoAsyncTask.SOCIAL.PIXELFED) {
|
||||||
|
new Thread(() -> {
|
||||||
|
new API(BaseMainActivity.this).refreshToken(account);
|
||||||
|
}).start();
|
||||||
|
}
|
||||||
//Here, the user is authenticated
|
//Here, the user is authenticated
|
||||||
appBar = findViewById(R.id.appBar);
|
appBar = findViewById(R.id.appBar);
|
||||||
Toolbar toolbar = findViewById(R.id.toolbar);
|
Toolbar toolbar = findViewById(R.id.toolbar);
|
||||||
|
|
|
@ -1062,14 +1062,14 @@ public abstract class BasePixelfedComposeActivity extends BaseActivity implement
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCompleted(Context context, UploadInfo uploadInfo, ServerResponse serverResponse) {
|
public void onCompleted(Context context, UploadInfo uploadInfo, ServerResponse serverResponse) {
|
||||||
JSONObject response = null;
|
JSONObject response;
|
||||||
pixelfed_story.setEnabled(true);
|
pixelfed_story.setEnabled(true);
|
||||||
try {
|
try {
|
||||||
response = new JSONObject(serverResponse.getBodyAsString());
|
response = new JSONObject(serverResponse.getBodyAsString());
|
||||||
|
addNewMedia(response, uploadInfo.getSuccessfullyUploadedFiles());
|
||||||
} catch (JSONException e) {
|
} catch (JSONException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
addNewMedia(response, uploadInfo.getSuccessfullyUploadedFiles());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -292,15 +292,16 @@ public abstract class BaseTootActivity extends BaseActivity implements UploadSta
|
||||||
@Override
|
@Override
|
||||||
public void onReceive(Context context, Intent intent) {
|
public void onReceive(Context context, Intent intent) {
|
||||||
|
|
||||||
JSONObject response = null;
|
JSONObject response;
|
||||||
ArrayList<String> successfullyUploadedFiles;
|
ArrayList<String> successfullyUploadedFiles;
|
||||||
try {
|
try {
|
||||||
response = new JSONObject(Objects.requireNonNull(intent.getStringExtra("response")));
|
response = new JSONObject(Objects.requireNonNull(intent.getStringExtra("response")));
|
||||||
|
successfullyUploadedFiles = intent.getStringArrayListExtra("uploadInfo");
|
||||||
|
addNewMedia(response, successfullyUploadedFiles);
|
||||||
} catch (JSONException e) {
|
} catch (JSONException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
successfullyUploadedFiles = intent.getStringArrayListExtra("uploadInfo");
|
|
||||||
addNewMedia(response, successfullyUploadedFiles);
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -589,13 +589,14 @@ public class LoginActivity extends BaseActivity {
|
||||||
if (socialNetwork != UpdateAccountInfoAsyncTask.SOCIAL.GNU && socialNetwork != UpdateAccountInfoAsyncTask.SOCIAL.FRIENDICA) {
|
if (socialNetwork != UpdateAccountInfoAsyncTask.SOCIAL.GNU && socialNetwork != UpdateAccountInfoAsyncTask.SOCIAL.FRIENDICA) {
|
||||||
try {
|
try {
|
||||||
resobj = new JSONObject(response);
|
resobj = new JSONObject(response);
|
||||||
String token = resobj.get("access_token").toString();
|
String token = resobj.getString("access_token");
|
||||||
String refresh_token = null;
|
String refresh_token = null;
|
||||||
if (resobj.has("refresh_token"))
|
if (resobj.has("refresh_token"))
|
||||||
refresh_token = resobj.getString("refresh_token");
|
refresh_token = resobj.getString("refresh_token");
|
||||||
SharedPreferences.Editor editor = sharedpreferences.edit();
|
SharedPreferences.Editor editor = sharedpreferences.edit();
|
||||||
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;
|
||||||
if (instance != null) {
|
if (instance != null) {
|
||||||
new UpdateAccountInfoAsyncTask(LoginActivity.this, token, client_id, client_secret, refresh_token, instance, socialNetwork).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
|
new UpdateAccountInfoAsyncTask(LoginActivity.this, token, client_id, client_secret, refresh_token, instance, socialNetwork).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
|
||||||
|
|
|
@ -344,7 +344,7 @@ public class ShowConversationActivity extends BaseActivity implements OnRetrieve
|
||||||
statuses = new ArrayList<>();
|
statuses = new ArrayList<>();
|
||||||
statuses.clear();
|
statuses.clear();
|
||||||
for (Status status : apiResponse.getContext().getAncestors()) {
|
for (Status status : apiResponse.getContext().getAncestors()) {
|
||||||
if (detailsStatus.equals(status)) {
|
if (detailsStatus != null && detailsStatus.equals(status)) {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
i++;
|
i++;
|
||||||
|
|
|
@ -82,7 +82,6 @@ public class UpdateAccountInfoAsyncTask extends AsyncTask<Void, Void, Void> {
|
||||||
instance = URLDecoder.decode(instance, "utf-8");
|
instance = URLDecoder.decode(instance, "utf-8");
|
||||||
} catch (UnsupportedEncodingException ignored) {
|
} catch (UnsupportedEncodingException ignored) {
|
||||||
}
|
}
|
||||||
|
|
||||||
SharedPreferences sharedpreferences = this.contextReference.get().getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
SharedPreferences sharedpreferences = this.contextReference.get().getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
||||||
account.setToken(token);
|
account.setToken(token);
|
||||||
account.setClient_id(client_id);
|
account.setClient_id(client_id);
|
||||||
|
|
|
@ -2531,74 +2531,55 @@ public class API {
|
||||||
}
|
}
|
||||||
} catch (HttpsConnection.HttpsConnectionException e) {
|
} catch (HttpsConnection.HttpsConnectionException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
if (e.getStatusCode() == 401 || e.getStatusCode() == 403) {
|
setError(e.getStatusCode(), e);
|
||||||
SQLiteDatabase db = Sqlite.getInstance(context.getApplicationContext(), Sqlite.DB_NAME, null, Sqlite.DB_VERSION).open();
|
|
||||||
Account targetedAccount = new AccountDAO(context, db).getAccountByToken(prefKeyOauthTokenT);
|
|
||||||
if (targetedAccount == null)
|
|
||||||
return null;
|
|
||||||
HashMap<String, String> values = refreshToken(targetedAccount.getClient_id(), targetedAccount.getClient_secret(), targetedAccount.getRefresh_token());
|
|
||||||
if (values.containsKey("access_token") && values.get("access_token") != null) {
|
|
||||||
targetedAccount.setToken(values.get("access_token"));
|
|
||||||
SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
|
||||||
String token = sharedpreferences.getString(Helper.PREF_KEY_OAUTH_TOKEN, null);
|
|
||||||
//This account is currently logged in, the token is updated
|
|
||||||
if (prefKeyOauthTokenT.equals(token)) {
|
|
||||||
SharedPreferences.Editor editor = sharedpreferences.edit();
|
|
||||||
editor.putString(Helper.PREF_KEY_OAUTH_TOKEN, targetedAccount.getToken());
|
|
||||||
editor.apply();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (values.containsKey("refresh_token") && values.get("refresh_token") != null)
|
|
||||||
targetedAccount.setRefresh_token(values.get("refresh_token"));
|
|
||||||
new AccountDAO(context, db).updateAccountCredential(targetedAccount);
|
|
||||||
String response;
|
|
||||||
try {
|
|
||||||
response = new HttpsConnection(context, this.instance).get(getAbsoluteUrl("/accounts/verify_credentials"), 10, null, targetedAccount.getToken());
|
|
||||||
account = parseAccountResponse(new JSONObject(response));
|
|
||||||
if (social != null) {
|
|
||||||
account.setSocial(social.toUpperCase());
|
|
||||||
}
|
|
||||||
if (account.getSocial().equals("PLEROMA")) {
|
|
||||||
isPleromaAdmin(account.getAcct());
|
|
||||||
}
|
|
||||||
} catch (IOException | NoSuchAlgorithmException | KeyManagementException | JSONException e1) {
|
|
||||||
e1.printStackTrace();
|
|
||||||
} catch (HttpsConnection.HttpsConnectionException e1) {
|
|
||||||
e1.printStackTrace();
|
|
||||||
setError(e.getStatusCode(), e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (NoSuchAlgorithmException | IOException | KeyManagementException | JSONException e) {
|
} catch (NoSuchAlgorithmException | IOException | KeyManagementException | JSONException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
return account;
|
return account;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/***
|
/***
|
||||||
* Verifiy credential of the authenticated user *synchronously*
|
* Verifiy credential of the authenticated user *synchronously*
|
||||||
* @return Account
|
|
||||||
*/
|
*/
|
||||||
private HashMap<String, String> refreshToken(String client_id, String client_secret, String refresh_token) {
|
public void refreshToken(Account account) {
|
||||||
account = new Account();
|
|
||||||
HashMap<String, String> params = new HashMap<>();
|
HashMap<String, String> params = new HashMap<>();
|
||||||
HashMap<String, String> newValues = new HashMap<>();
|
|
||||||
params.put("grant_type", "refresh_token");
|
params.put("grant_type", "refresh_token");
|
||||||
params.put("client_id", client_id);
|
params.put("client_id", account.getClient_id());
|
||||||
params.put("client_secret", client_secret);
|
params.put("client_secret", account.getClient_secret());
|
||||||
params.put("refresh_token", refresh_token);
|
params.put("refresh_token", account.getRefresh_token());
|
||||||
|
SQLiteDatabase db = Sqlite.getInstance(context.getApplicationContext(), Sqlite.DB_NAME, null, Sqlite.DB_VERSION).open();
|
||||||
try {
|
try {
|
||||||
String response = new HttpsConnection(context, this.instance).post(getAbsoluteUrl("/oauth/token"), 10, params, null);
|
String response;
|
||||||
|
if (account.getSocial().compareTo("PEERTUBE") == 0) {
|
||||||
|
response = new HttpsConnection(context, instance).post(getAbsoluteUrl("/users/token"), 60, params, account.getToken());
|
||||||
|
} else {
|
||||||
|
response = new HttpsConnection(context, instance).post("https://" + instance + "/oauth/token", 60, params, account.getToken());
|
||||||
|
}
|
||||||
JSONObject resobj = new JSONObject(response);
|
JSONObject resobj = new JSONObject(response);
|
||||||
String token = resobj.getString("access_token");
|
String newToken = resobj.getString("access_token");
|
||||||
if (resobj.has("refresh_token"))
|
String newRefreshToken = resobj.getString("refresh_token");
|
||||||
refresh_token = resobj.getString("refresh_token");
|
final SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
||||||
newValues.put("access_token", token);
|
SharedPreferences.Editor editor = sharedpreferences.edit();
|
||||||
newValues.put("refresh_token", refresh_token);
|
editor.putString(Helper.PREF_KEY_OAUTH_TOKEN, newToken);
|
||||||
|
editor.apply();
|
||||||
} catch (NoSuchAlgorithmException | IOException | KeyManagementException | JSONException | HttpsConnection.HttpsConnectionException e) {
|
if (account.getSocial().compareTo("PEERTUBE") == 0) {
|
||||||
|
response = new HttpsConnection(context, this.instance).get(getAbsoluteUrl("/users/me"), 60, null, newToken);
|
||||||
|
JSONObject accountObject = new JSONObject(response).getJSONObject("account");
|
||||||
|
account = parseAccountResponsePeertube(instance, accountObject);
|
||||||
|
} else {
|
||||||
|
response = new HttpsConnection(context, this.instance).get(getAbsoluteUrl("/accounts/verify_credentials"), 10, null, newToken);
|
||||||
|
account = parseAccountResponse(new JSONObject(response));
|
||||||
|
}
|
||||||
|
account.setRefresh_token(newRefreshToken);
|
||||||
|
account.setToken(newToken);
|
||||||
|
new AccountDAO(context, db).updateAccount(account);
|
||||||
|
} catch (NoSuchAlgorithmException | IOException | KeyManagementException | JSONException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
} catch (HttpsConnection.HttpsConnectionException e) {
|
||||||
|
setError(e.getStatusCode(), e);
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
return newValues;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public APIResponse createAccount(AccountCreation accountCreation) {
|
public APIResponse createAccount(AccountCreation accountCreation) {
|
||||||
|
|
|
@ -664,45 +664,8 @@ public class PeertubeAPI {
|
||||||
} catch (NoSuchAlgorithmException | IOException | KeyManagementException | JSONException e) {
|
} catch (NoSuchAlgorithmException | IOException | KeyManagementException | JSONException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
} catch (HttpsConnection.HttpsConnectionException e) {
|
} catch (HttpsConnection.HttpsConnectionException e) {
|
||||||
if (e.getStatusCode() == 401 || e.getStatusCode() == 403) {
|
setError(e.getStatusCode(), e);
|
||||||
SQLiteDatabase db = Sqlite.getInstance(context.getApplicationContext(), Sqlite.DB_NAME, null, Sqlite.DB_VERSION).open();
|
e.printStackTrace();
|
||||||
Account targetedAccount = new AccountDAO(context, db).getAccountByToken(prefKeyOauthTokenT);
|
|
||||||
if (targetedAccount != null) {
|
|
||||||
HashMap<String, String> values = refreshToken(targetedAccount.getClient_id(), targetedAccount.getClient_secret(), targetedAccount.getRefresh_token());
|
|
||||||
if (values.containsKey("access_token") && values.get("access_token") != null) {
|
|
||||||
targetedAccount.setToken(values.get("access_token"));
|
|
||||||
SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
|
||||||
String token = sharedpreferences.getString(Helper.PREF_KEY_OAUTH_TOKEN, null);
|
|
||||||
//This account is currently logged in, the token is updated
|
|
||||||
if (prefKeyOauthTokenT != null && prefKeyOauthTokenT.equals(token)) {
|
|
||||||
SharedPreferences.Editor editor = sharedpreferences.edit();
|
|
||||||
editor.putString(Helper.PREF_KEY_OAUTH_TOKEN, targetedAccount.getToken());
|
|
||||||
editor.apply();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (values.containsKey("refresh_token") && values.get("refresh_token") != null)
|
|
||||||
targetedAccount.setRefresh_token(values.get("refresh_token"));
|
|
||||||
new AccountDAO(context, db).updateAccount(targetedAccount);
|
|
||||||
|
|
||||||
String response;
|
|
||||||
try {
|
|
||||||
response = new HttpsConnection(context, this.instance).get(getAbsoluteUrl("/users/me"), 60, null, targetedAccount.getToken());
|
|
||||||
JSONObject accountObject = new JSONObject(response).getJSONObject("account");
|
|
||||||
account = parseAccountResponsePeertube(accountObject);
|
|
||||||
if (social != null) {
|
|
||||||
account.setSocial(social.toUpperCase());
|
|
||||||
}
|
|
||||||
} catch (IOException | NoSuchAlgorithmException | KeyManagementException | JSONException e1) {
|
|
||||||
e1.printStackTrace();
|
|
||||||
} catch (HttpsConnection.HttpsConnectionException e1) {
|
|
||||||
e1.printStackTrace();
|
|
||||||
setError(e.getStatusCode(), e);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
setError(e.getStatusCode(), e);
|
|
||||||
}
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return account;
|
return account;
|
||||||
}
|
}
|
||||||
|
@ -745,31 +708,6 @@ public class PeertubeAPI {
|
||||||
return apiResponse;
|
return apiResponse;
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
|
||||||
* Verifiy credential of the authenticated user *synchronously*
|
|
||||||
* @return Account
|
|
||||||
*/
|
|
||||||
private HashMap<String, String> refreshToken(String client_id, String client_secret, String refresh_token) {
|
|
||||||
account = new Account();
|
|
||||||
HashMap<String, String> params = new HashMap<>();
|
|
||||||
HashMap<String, String> newValues = new HashMap<>();
|
|
||||||
params.put("grant_type", "refresh_token");
|
|
||||||
params.put("client_id", client_id);
|
|
||||||
params.put("client_secret", client_secret);
|
|
||||||
params.put("refresh_token", refresh_token);
|
|
||||||
try {
|
|
||||||
String response = new HttpsConnection(context, this.instance).post(getAbsoluteUrl("/users/token"), 60, params, null);
|
|
||||||
JSONObject resobj = new JSONObject(response);
|
|
||||||
String token = resobj.get("access_token").toString();
|
|
||||||
if (resobj.has("refresh_token"))
|
|
||||||
refresh_token = resobj.get("refresh_token").toString();
|
|
||||||
newValues.put("access_token", token);
|
|
||||||
newValues.put("refresh_token", refresh_token);
|
|
||||||
} catch (NoSuchAlgorithmException | IOException | KeyManagementException | JSONException | HttpsConnection.HttpsConnectionException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
return newValues;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns an account
|
* Returns an account
|
||||||
|
@ -1059,29 +997,6 @@ public class PeertubeAPI {
|
||||||
try {
|
try {
|
||||||
return getTL("/users/me/subscriptions/videos", "-publishedAt", null, max_id, null, null);
|
return getTL("/users/me/subscriptions/videos", "-publishedAt", null, max_id, null, null);
|
||||||
} catch (HttpsConnection.HttpsConnectionException e) {
|
} catch (HttpsConnection.HttpsConnectionException e) {
|
||||||
SQLiteDatabase db = Sqlite.getInstance(context.getApplicationContext(), Sqlite.DB_NAME, null, Sqlite.DB_VERSION).open();
|
|
||||||
Account targetedAccount = new AccountDAO(context, db).getAccountByToken(prefKeyOauthTokenT);
|
|
||||||
if (targetedAccount != null && (e.getStatusCode() == 401 || e.getStatusCode() == 403)) {
|
|
||||||
HashMap<String, String> values = refreshToken(targetedAccount.getClient_id(), targetedAccount.getClient_secret(), targetedAccount.getRefresh_token());
|
|
||||||
SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
|
|
||||||
if (values.containsKey("access_token") && values.get("access_token") != null) {
|
|
||||||
targetedAccount.setToken(values.get("access_token"));
|
|
||||||
//This account is currently logged in, the token is updated
|
|
||||||
SharedPreferences.Editor editor = sharedpreferences.edit();
|
|
||||||
prefKeyOauthTokenT = targetedAccount.getToken();
|
|
||||||
editor.putString(Helper.PREF_KEY_OAUTH_TOKEN, targetedAccount.getToken());
|
|
||||||
editor.apply();
|
|
||||||
}
|
|
||||||
if (values.containsKey("refresh_token") && values.get("refresh_token") != null)
|
|
||||||
targetedAccount.setRefresh_token(values.get("refresh_token"));
|
|
||||||
new AccountDAO(context, db).updateAccount(targetedAccount);
|
|
||||||
try {
|
|
||||||
return getTL("/users/me/subscriptions/videos", "-publishedAt", null, max_id, null, null);
|
|
||||||
} catch (HttpsConnection.HttpsConnectionException e1) {
|
|
||||||
setError(e.getStatusCode(), e);
|
|
||||||
return apiResponse;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
setError(e.getStatusCode(), e);
|
setError(e.getStatusCode(), e);
|
||||||
return apiResponse;
|
return apiResponse;
|
||||||
}
|
}
|
||||||
|
|
|
@ -91,7 +91,8 @@ public class CustomEmojiAdapter extends BaseAdapter {
|
||||||
if (imageView != null && emoji.getDrawable() != null) {
|
if (imageView != null && emoji.getDrawable() != null) {
|
||||||
try {
|
try {
|
||||||
imageView.setImageDrawable(emoji.getDrawable());
|
imageView.setImageDrawable(emoji.getDrawable());
|
||||||
}catch (Exception ignored){}
|
} catch (Exception ignored) {
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -74,9 +74,11 @@ public class AccountDAO {
|
||||||
values.put(Sqlite.COL_INSTANCE, account.getInstance());
|
values.put(Sqlite.COL_INSTANCE, account.getInstance());
|
||||||
values.put(Sqlite.COL_EMOJIS, Helper.emojisToStringStorage(account.getEmojis()));
|
values.put(Sqlite.COL_EMOJIS, Helper.emojisToStringStorage(account.getEmojis()));
|
||||||
values.put(Sqlite.COL_SOCIAL, account.getSocial());
|
values.put(Sqlite.COL_SOCIAL, account.getSocial());
|
||||||
if (account.getClient_id() != null && account.getClient_secret() != null && account.getRefresh_token() != null) {
|
if (account.getClient_id() != null && account.getClient_secret() != null) {
|
||||||
values.put(Sqlite.COL_CLIENT_ID, account.getClient_id());
|
values.put(Sqlite.COL_CLIENT_ID, account.getClient_id());
|
||||||
values.put(Sqlite.COL_CLIENT_SECRET, account.getClient_secret());
|
values.put(Sqlite.COL_CLIENT_SECRET, account.getClient_secret());
|
||||||
|
}
|
||||||
|
if (account.getRefresh_token() != null) {
|
||||||
values.put(Sqlite.COL_REFRESH_TOKEN, account.getRefresh_token());
|
values.put(Sqlite.COL_REFRESH_TOKEN, account.getRefresh_token());
|
||||||
}
|
}
|
||||||
if (account.getToken() != null)
|
if (account.getToken() != null)
|
||||||
|
@ -122,9 +124,11 @@ public class AccountDAO {
|
||||||
values.put(Sqlite.COL_CREATED_AT, Helper.dateToString(account.getCreated_at()));
|
values.put(Sqlite.COL_CREATED_AT, Helper.dateToString(account.getCreated_at()));
|
||||||
values.put(Sqlite.COL_EMOJIS, Helper.emojisToStringStorage(account.getEmojis()));
|
values.put(Sqlite.COL_EMOJIS, Helper.emojisToStringStorage(account.getEmojis()));
|
||||||
values.put(Sqlite.COL_SOCIAL, account.getSocial());
|
values.put(Sqlite.COL_SOCIAL, account.getSocial());
|
||||||
if (account.getClient_id() != null && account.getClient_secret() != null && account.getRefresh_token() != null) {
|
if (account.getClient_id() != null && account.getClient_secret() != null) {
|
||||||
values.put(Sqlite.COL_CLIENT_ID, account.getClient_id());
|
values.put(Sqlite.COL_CLIENT_ID, account.getClient_id());
|
||||||
values.put(Sqlite.COL_CLIENT_SECRET, account.getClient_secret());
|
values.put(Sqlite.COL_CLIENT_SECRET, account.getClient_secret());
|
||||||
|
}
|
||||||
|
if (account.getRefresh_token() != null) {
|
||||||
values.put(Sqlite.COL_REFRESH_TOKEN, account.getRefresh_token());
|
values.put(Sqlite.COL_REFRESH_TOKEN, account.getRefresh_token());
|
||||||
}
|
}
|
||||||
if (account.getToken() != null)
|
if (account.getToken() != null)
|
||||||
|
@ -164,9 +168,11 @@ public class AccountDAO {
|
||||||
if (account.getSocial() != null) {
|
if (account.getSocial() != null) {
|
||||||
values.put(Sqlite.COL_SOCIAL, account.getSocial());
|
values.put(Sqlite.COL_SOCIAL, account.getSocial());
|
||||||
}
|
}
|
||||||
if (account.getClient_id() != null && account.getClient_secret() != null && account.getRefresh_token() != null) {
|
if (account.getClient_id() != null && account.getClient_secret() != null) {
|
||||||
values.put(Sqlite.COL_CLIENT_ID, account.getClient_id());
|
values.put(Sqlite.COL_CLIENT_ID, account.getClient_id());
|
||||||
values.put(Sqlite.COL_CLIENT_SECRET, account.getClient_secret());
|
values.put(Sqlite.COL_CLIENT_SECRET, account.getClient_secret());
|
||||||
|
}
|
||||||
|
if (account.getRefresh_token() != null) {
|
||||||
values.put(Sqlite.COL_REFRESH_TOKEN, account.getRefresh_token());
|
values.put(Sqlite.COL_REFRESH_TOKEN, account.getRefresh_token());
|
||||||
}
|
}
|
||||||
if (account.getToken() != null)
|
if (account.getToken() != null)
|
||||||
|
|
|
@ -344,7 +344,7 @@
|
||||||
android:id="@+id/comment"
|
android:id="@+id/comment"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:minLines="3"
|
android:minLines="3"
|
||||||
app:layout_constraintTop_toBottomOf="@id/comment_label" />
|
app:layout_constraintTop_toBottomOf="@id/comment_label" />
|
||||||
|
|
||||||
|
|
|
@ -54,10 +54,11 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginTop="10dp"
|
android:layout_marginTop="10dp"
|
||||||
android:hint="@string/title_hint_custom_sharing"
|
android:hint="@string/title_hint_custom_sharing"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:lines="2"
|
android:lines="2"
|
||||||
android:maxLines="2"
|
android:maxLines="2"
|
||||||
android:minLines="1" />
|
android:minLines="1"
|
||||||
|
android:inputType="textWebEditText" />
|
||||||
|
|
||||||
|
|
||||||
<!-- Description -->
|
<!-- Description -->
|
||||||
|
|
|
@ -133,7 +133,7 @@
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="1"
|
android:layout_weight="1"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="text" />
|
android:inputType="text" />
|
||||||
|
|
||||||
<EditText
|
<EditText
|
||||||
|
@ -141,7 +141,7 @@
|
||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_weight="2"
|
android:layout_weight="2"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="text" />
|
android:inputType="text" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
|
@ -41,7 +41,7 @@
|
||||||
android:id="@+id/add_phrase"
|
android:id="@+id/add_phrase"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="text"
|
android:inputType="text"
|
||||||
android:singleLine="true" />
|
android:singleLine="true" />
|
||||||
|
|
||||||
|
|
|
@ -935,7 +935,7 @@
|
||||||
android:id="@+id/fake_edittext"
|
android:id="@+id/fake_edittext"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="text" />
|
android:inputType="text" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
|
@ -875,7 +875,7 @@
|
||||||
android:id="@+id/fake_edittext"
|
android:id="@+id/fake_edittext"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="text" />
|
android:inputType="text" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
|
@ -779,7 +779,7 @@
|
||||||
android:id="@+id/fake_edittext"
|
android:id="@+id/fake_edittext"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="text" />
|
android:inputType="text" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
|
@ -791,7 +791,7 @@
|
||||||
android:id="@+id/fake_edittext"
|
android:id="@+id/fake_edittext"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="text" />
|
android:inputType="text" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
|
@ -420,7 +420,7 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:hint="@string/settings_custom_sharing_url"
|
android:hint="@string/settings_custom_sharing_url"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="textUri" />
|
android:inputType="textUri" />
|
||||||
|
|
||||||
<!-- ADD TAGS -->
|
<!-- ADD TAGS -->
|
||||||
|
|
|
@ -569,7 +569,7 @@
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:hint="@string/your_api_key"
|
android:hint="@string/your_api_key"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="text" />
|
android:inputType="text" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
|
@ -85,7 +85,7 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:ellipsize="end"
|
android:ellipsize="end"
|
||||||
android:hint="@string/set_invidious_host"
|
android:hint="@string/set_invidious_host"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="textWebEditText" />
|
android:inputType="textWebEditText" />
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
android:id="@+id/fake_edittext"
|
android:id="@+id/fake_edittext"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:importantForAutofill="no"
|
android:importantForAutofill="noExcludeDescendants"
|
||||||
android:inputType="text" />
|
android:inputType="text" />
|
||||||
</LinearLayout>
|
</LinearLayout>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue