summaryrefslogtreecommitdiffstats
path: root/app/src/main/java/app/fedilab/android/mastodon/activities/AccountReportActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/app/fedilab/android/mastodon/activities/AccountReportActivity.java')
-rw-r--r--app/src/main/java/app/fedilab/android/mastodon/activities/AccountReportActivity.java27
1 files changed, 20 insertions, 7 deletions
diff --git a/app/src/main/java/app/fedilab/android/mastodon/activities/AccountReportActivity.java b/app/src/main/java/app/fedilab/android/mastodon/activities/AccountReportActivity.java
index 8a1b2b083..84c454baf 100644
--- a/app/src/main/java/app/fedilab/android/mastodon/activities/AccountReportActivity.java
+++ b/app/src/main/java/app/fedilab/android/mastodon/activities/AccountReportActivity.java
@@ -15,6 +15,8 @@ package app.fedilab.android.mastodon.activities;
* see <http://www.gnu.org/licenses>. */
+import static app.fedilab.android.BaseMainActivity.currentAccount;
+
import android.app.Activity;
import android.graphics.PorterDuff;
import android.os.Bundle;
@@ -35,6 +37,7 @@ import app.fedilab.android.databinding.ActivityAdminReportBinding;
import app.fedilab.android.mastodon.client.entities.api.Status;
import app.fedilab.android.mastodon.client.entities.api.admin.AdminAccount;
import app.fedilab.android.mastodon.client.entities.api.admin.AdminReport;
+import app.fedilab.android.mastodon.client.entities.app.CachedBundle;
import app.fedilab.android.mastodon.helper.Helper;
import app.fedilab.android.mastodon.helper.ThemeHelper;
import app.fedilab.android.mastodon.ui.drawer.StatusReportAdapter;
@@ -48,6 +51,7 @@ public class AccountReportActivity extends BaseBarActivity {
private AdminReport report;
private ActivityAdminReportBinding binding;
private AdminVM adminVM;
+ private AdminAccount targeted_account;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -61,12 +65,22 @@ public class AccountReportActivity extends BaseBarActivity {
}
report = null;
- AdminAccount targeted_account = null;
- Bundle b = getIntent().getExtras();
- if (b != null) {
- account_id = b.getString(Helper.ARG_ACCOUNT_ID, null);
- targeted_account = (AdminAccount) b.getSerializable(Helper.ARG_ACCOUNT);
- report = (AdminReport) b.getSerializable(Helper.ARG_REPORT);
+ targeted_account = null;
+ Bundle args = getIntent().getExtras();
+ if (args != null) {
+ long bundleId = args.getLong(Helper.ARG_INTENT_ID, -1);
+ new CachedBundle(AccountReportActivity.this).getBundle(bundleId, currentAccount, this::initializeAfterBundle);
+ } else {
+ initializeAfterBundle(null);
+ }
+ }
+
+ private void initializeAfterBundle(Bundle bundle) {
+
+ if (bundle != null) {
+ account_id = bundle.getString(Helper.ARG_ACCOUNT_ID, null);
+ targeted_account = (AdminAccount) bundle.getSerializable(Helper.ARG_ACCOUNT);
+ report = (AdminReport) bundle.getSerializable(Helper.ARG_REPORT);
}
binding.allow.getBackground().setColorFilter(ThemeHelper.getAttColor(this, R.attr.colorPrimary), PorterDuff.Mode.MULTIPLY);
@@ -103,7 +117,6 @@ public class AccountReportActivity extends BaseBarActivity {
account_id = targeted_account.username;
}
-
}
private void fillReport(AdminAccount accountAdmin, actionType type) {