summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/app/fedilab/android/viewmodel
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/app/fedilab/android/viewmodel')
-rw-r--r--app/src/main/java/app/fedilab/android/viewmodel/mastodon/AccountsVM.java30
-rw-r--r--app/src/main/java/app/fedilab/android/viewmodel/mastodon/FiltersVM.java20
2 files changed, 50 insertions, 0 deletions
diff --git a/app/src/main/java/app/fedilab/android/viewmodel/mastodon/AccountsVM.java b/app/src/main/java/app/fedilab/android/viewmodel/mastodon/AccountsVM.java
index 1d640b2be..5d4e17cd7 100644
--- a/app/src/main/java/app/fedilab/android/viewmodel/mastodon/AccountsVM.java
+++ b/app/src/main/java/app/fedilab/android/viewmodel/mastodon/AccountsVM.java
@@ -296,6 +296,36 @@ public class AccountsVM extends AndroidViewModel {
return accountMutableLiveData;
}
+
+ /**
+ * @param acct The acct of the account
+ * @return {@link LiveData} containing an {@link Account}
+ */
+ public LiveData<Account> lookUpAccount(@NonNull String instance, @NonNull String acct) {
+ accountMutableLiveData = new MutableLiveData<>();
+ MastodonAccountsService mastodonAccountsService = init(instance);
+ new Thread(() -> {
+ Account account = null;
+ Call<Account> accountCall = mastodonAccountsService.lookUpAccount(acct);
+ if (accountCall != null) {
+
+ try {
+ Response<Account> accountResponse = accountCall.execute();
+ if (accountResponse.isSuccessful()) {
+ account = accountResponse.body();
+ }
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ Account finalAccount = account;
+ Handler mainHandler = new Handler(Looper.getMainLooper());
+ Runnable myRunnable = () -> accountMutableLiveData.setValue(finalAccount);
+ mainHandler.post(myRunnable);
+ }).start();
+ return accountMutableLiveData;
+ }
+
/**
* @param id The id of the account
* @return {@link LiveData} containing an {@link Account}
diff --git a/app/src/main/java/app/fedilab/android/viewmodel/mastodon/FiltersVM.java b/app/src/main/java/app/fedilab/android/viewmodel/mastodon/FiltersVM.java
index b85f587a9..ca73a5e8d 100644
--- a/app/src/main/java/app/fedilab/android/viewmodel/mastodon/FiltersVM.java
+++ b/app/src/main/java/app/fedilab/android/viewmodel/mastodon/FiltersVM.java
@@ -212,4 +212,24 @@ public class FiltersVM extends AndroidViewModel {
}).start();
}
+
+ /**
+ * Remove a filter
+ *
+ * @param id ID of the filter
+ */
+ public void removeKeyword(@NonNull String instance, String token, @NonNull String id) {
+ MastodonFiltersService mastodonAccountsService = initV2(instance);
+ new Thread(() -> {
+ Call<Void> removeFilterCall = mastodonAccountsService.removeKeywordFilter(token, id);
+ if (removeFilterCall != null) {
+ try {
+ removeFilterCall.execute();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }).start();
+ }
+
}