From 4c96fb1670999eb770f235a2b5e5780bbe30488b Mon Sep 17 00:00:00 2001 From: stom79 Date: Wed, 12 Sep 2018 10:50:50 +0200 Subject: [PATCH] Improves UX --- .../activities/WhoToFollowActivity.java | 18 +++++++++++++++--- app/src/main/res/values/strings.xml | 1 + 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/WhoToFollowActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/WhoToFollowActivity.java index a61757ad5..854584742 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/WhoToFollowActivity.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/WhoToFollowActivity.java @@ -67,6 +67,7 @@ public class WhoToFollowActivity extends BaseActivity implements OnRetrieveWhoTo private List trunkAccounts; private RelativeLayout mainLoader; private String listId, listTitle; + private RelativeLayout no_action; @Override protected void onCreate(Bundle savedInstanceState) { @@ -87,6 +88,7 @@ public class WhoToFollowActivity extends BaseActivity implements OnRetrieveWhoTo setTheme(R.style.AppThemeDark_NoActionBar); } setContentView(R.layout.activity_who_to_follow); + no_action = findViewById(R.id.no_action); Toolbar toolbar = findViewById(R.id.toolbar); progess_action = findViewById(R.id.progess_action); if( theme == THEME_BLACK) @@ -130,9 +132,14 @@ public class WhoToFollowActivity extends BaseActivity implements OnRetrieveWhoTo mainLoader.setVisibility(View.GONE); WhoToFollowAccountsAdapter whoToFollowAccountsAdapter; if( trunkAccounts != null){ - ListView lv_list = findViewById(R.id.lv_list); - whoToFollowAccountsAdapter = new WhoToFollowAccountsAdapter(WhoToFollowActivity.this, trunkAccounts); - lv_list.setAdapter(whoToFollowAccountsAdapter); + if( trunkAccounts.size() > 0) { + ListView lv_list = findViewById(R.id.lv_list); + whoToFollowAccountsAdapter = new WhoToFollowAccountsAdapter(WhoToFollowActivity.this, trunkAccounts); + lv_list.setAdapter(whoToFollowAccountsAdapter); + }else { + no_action.setVisibility(View.VISIBLE); + return; + } }else{ Toast.makeText(WhoToFollowActivity.this, R.string.toast_error, Toast.LENGTH_SHORT).show(); return; @@ -178,6 +185,11 @@ public class WhoToFollowActivity extends BaseActivity implements OnRetrieveWhoTo account.setAcct(val[0]); account.setInstance(val[1]); new PostActionAsyncTask(WhoToFollowActivity.this, null, account, API.StatusAction.FOLLOW, WhoToFollowActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); + }else { + Toast.makeText(WhoToFollowActivity.this,R.string.toast_impossible_to_follow, Toast.LENGTH_LONG).show(); + follow_accounts.setEnabled(true); + follow_accounts_select.setEnabled(true); + progess_action.setVisibility(View.GONE); } } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 90e5fa2d1..727074aff 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -599,6 +599,7 @@ You don\'t follow any remote instances. Click on the \"+\" button to add a new one. Who to follow Trunk API + Account(s) can\'t be followed