diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/AboutActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/AboutActivity.java index 2f6080221..80b30b49c 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/AboutActivity.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/AboutActivity.java @@ -23,7 +23,6 @@ import android.content.pm.PackageManager; import android.net.Uri; import android.os.AsyncTask; import android.os.Bundle; -import android.support.v4.content.ContextCompat; import android.support.v7.app.ActionBar; import android.support.v7.widget.Toolbar; import android.text.SpannableString; @@ -68,12 +67,14 @@ public class AboutActivity extends BaseActivity implements OnRetrieveRemoteAccou private List designers = new ArrayList<>(); private List banners = new ArrayList<>(); private List uxuidesigners = new ArrayList<>(); + private List support = new ArrayList<>(); private AccountSearchDevAdapter accountSearchWebAdapterDeveloper; private AccountSearchDevAdapter accountSearchWebAdapterDesigner; private AccountSearchDevAdapter accountSearchWebAdapterContributors; private AccountSearchDevAdapter accountSearchWebAdapterBanners; private AccountSearchDevAdapter accountSearchWebAdapterUxUiDesigners; + private AccountSearchDevAdapter accountSearchWebAdapterSupport; @Override protected void onCreate(Bundle savedInstanceState) { @@ -130,6 +131,7 @@ public class AboutActivity extends BaseActivity implements OnRetrieveRemoteAccou ExpandableHeightListView lv_contributors = findViewById(R.id.lv_contributors); ExpandableHeightListView lv_banners = findViewById(R.id.lv_banners); ExpandableHeightListView lv_ux = findViewById(R.id.lv_ux); + ExpandableHeightListView lv_support = findViewById(R.id.lv_support); Button about_code = findViewById(R.id.about_code); Button about_license = findViewById(R.id.about_license); @@ -227,6 +229,7 @@ public class AboutActivity extends BaseActivity implements OnRetrieveRemoteAccou lv_designers.setExpanded(true); lv_banners.setExpanded(true); lv_ux.setExpanded(true); + lv_support.setExpanded(true); accountSearchWebAdapterContributors = new AccountSearchDevAdapter(AboutActivity.this, contributors); lv_contributors.setAdapter(accountSearchWebAdapterContributors); @@ -238,9 +241,12 @@ public class AboutActivity extends BaseActivity implements OnRetrieveRemoteAccou lv_banners.setAdapter(accountSearchWebAdapterBanners); accountSearchWebAdapterUxUiDesigners = new AccountSearchDevAdapter(AboutActivity.this, uxuidesigners); lv_ux.setAdapter(accountSearchWebAdapterUxUiDesigners); + accountSearchWebAdapterSupport = new AccountSearchDevAdapter(AboutActivity.this, support); + lv_support.setAdapter(accountSearchWebAdapterSupport); new RetrieveRemoteDataAsyncTask(getApplicationContext(), "tom79", "mastodon.social", AboutActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); new RetrieveRemoteDataAsyncTask(getApplicationContext(), "mmarif", "mastodon.social", AboutActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); + new RetrieveRemoteDataAsyncTask(getApplicationContext(), "guzzisti", "mastodon.social", AboutActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); new RetrieveRemoteDataAsyncTask(getApplicationContext(), "NateLikesSheep", "mastodon.art", AboutActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); new RetrieveRemoteDataAsyncTask(getApplicationContext(), "daycode", "mastodon.social", AboutActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); new RetrieveRemoteDataAsyncTask(getApplicationContext(), "PhotonQyv", "mastodon.xyz", AboutActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); @@ -277,6 +283,10 @@ public class AboutActivity extends BaseActivity implements OnRetrieveRemoteAccou developers.add(account); accountSearchWebAdapterDeveloper.notifyDataSetChanged(); break; + case "guzzisti": + support.add(account); + accountSearchWebAdapterSupport.notifyDataSetChanged(); + break; case "NateLikesSheep": banners.add(account); accountSearchWebAdapterBanners.notifyDataSetChanged(); @@ -327,6 +337,11 @@ public class AboutActivity extends BaseActivity implements OnRetrieveRemoteAccou new RetrieveRelationshipAsyncTask(getApplicationContext(), account.getId(),AboutActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); } } + if( support != null){ + for(Account account: support){ + new RetrieveRelationshipAsyncTask(getApplicationContext(), account.getId(),AboutActivity.this).executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); + } + } } @Override @@ -371,5 +386,12 @@ public class AboutActivity extends BaseActivity implements OnRetrieveRemoteAccou break; } } + for( int i = 0 ; i < support.size() ; i++){ + if( support.get(i).getId() != null && support.get(i).getId().equals(relationship.getId())){ + support.get(i).setFollowing(relationship.isFollowing() || userId.trim().equals(relationship.getId())); + accountSearchWebAdapterSupport.notifyDataSetChanged(); + break; + } + } } } diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/BaseMainActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/BaseMainActivity.java index 0325de4d7..c09f937ee 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/BaseMainActivity.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/BaseMainActivity.java @@ -1963,6 +1963,16 @@ public abstract class BaseMainActivity extends BaseActivity Intent intent = new Intent(getApplicationContext(), PartnerShipActivity.class); startActivity(intent); return false; + }else if(id == R.id.nav_bug_report){ + Intent i = new Intent(Intent.ACTION_SEND); + i.setType("message/rfc822"); + i.putExtra(Intent.EXTRA_EMAIL , new String[]{"incoming+tom79/mastalab@incoming.gitlab.com"}); + try { + startActivity(Intent.createChooser(i, getString(R.string.bug_report_mail))); + } catch (android.content.ActivityNotFoundException ex) { + Toast.makeText(getApplicationContext(), R.string.no_mail_client, Toast.LENGTH_SHORT).show(); + } + return false; } final NavigationView navigationView = findViewById(R.id.nav_view); unCheckAllMenuItems(navigationView); diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/NotificationsListAdapter.java b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/NotificationsListAdapter.java index 0688ed810..1a4c2ed7f 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/NotificationsListAdapter.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/NotificationsListAdapter.java @@ -272,29 +272,29 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On //Manages theme for icon colors if( theme == THEME_BLACK){ - changeDrawableColor(context, R.drawable.ic_reply,R.color.dark_icon); - changeDrawableColor(context, holder.status_more, R.color.dark_icon); - changeDrawableColor(context, holder.status_privacy, R.color.dark_icon); - changeDrawableColor(context, R.drawable.ic_repeat,R.color.dark_icon); - changeDrawableColor(context, R.drawable.ic_star_border,R.color.dark_icon); + changeDrawableColor(context, R.drawable.ic_reply,R.color.action_black); + changeDrawableColor(context, holder.status_more, R.color.action_black); + changeDrawableColor(context, holder.status_privacy, R.color.action_black); + changeDrawableColor(context, R.drawable.ic_repeat,R.color.action_black); + changeDrawableColor(context, R.drawable.ic_star_border,R.color.action_black); changeDrawableColor(context, R.drawable.ic_photo,R.color.dark_text); changeDrawableColor(context, R.drawable.ic_remove_red_eye,R.color.dark_text); changeDrawableColor(context, holder.notification_delete,R.color.dark_text); }else if( theme == Helper.THEME_DARK ){ - changeDrawableColor(context, R.drawable.ic_reply,R.color.dark_icon); - changeDrawableColor(context, holder.status_more, R.color.dark_icon); - changeDrawableColor(context, holder.status_privacy, R.color.dark_icon); - changeDrawableColor(context, R.drawable.ic_repeat,R.color.dark_icon); - changeDrawableColor(context, R.drawable.ic_star_border,R.color.dark_icon); + changeDrawableColor(context, R.drawable.ic_reply,R.color.action_dark); + changeDrawableColor(context, holder.status_more, R.color.action_dark); + changeDrawableColor(context, holder.status_privacy, R.color.action_dark); + changeDrawableColor(context, R.drawable.ic_repeat,R.color.action_dark); + changeDrawableColor(context, R.drawable.ic_star_border,R.color.action_dark); changeDrawableColor(context, R.drawable.ic_photo,R.color.mastodonC4); changeDrawableColor(context, R.drawable.ic_remove_red_eye,R.color.mastodonC4); changeDrawableColor(context, holder.notification_delete,R.color.dark_text); }else { - changeDrawableColor(context, R.drawable.ic_reply,R.color.black); - changeDrawableColor(context, holder.status_more, R.color.black); - changeDrawableColor(context, holder.status_privacy, R.color.black); - changeDrawableColor(context, R.drawable.ic_repeat,R.color.black); - changeDrawableColor(context, R.drawable.ic_star_border,R.color.black); + changeDrawableColor(context, R.drawable.ic_reply,R.color.action_light); + changeDrawableColor(context, holder.status_more, R.color.action_light); + changeDrawableColor(context, holder.status_privacy, R.color.action_light); + changeDrawableColor(context, R.drawable.ic_repeat,R.color.action_light); + changeDrawableColor(context, R.drawable.ic_star_border,R.color.action_light); changeDrawableColor(context, R.drawable.ic_photo,R.color.black); changeDrawableColor(context, R.drawable.ic_remove_red_eye,R.color.black); changeDrawableColor(context, holder.notification_delete,R.color.black); @@ -356,10 +356,12 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On changeDrawableColor(context, R.drawable.ic_star,R.color.marked_icon); imgFav = ContextCompat.getDrawable(context, R.drawable.ic_star); }else { - if( theme == THEME_DARK || theme == THEME_BLACK) - changeDrawableColor(context, R.drawable.ic_star_border,R.color.dark_icon); + if( theme == THEME_DARK) + changeDrawableColor(context, R.drawable.ic_star_border,R.color.action_dark); + else if(theme == THEME_BLACK) + changeDrawableColor(context, R.drawable.ic_star_border,R.color.action_black); else - changeDrawableColor(context, R.drawable.ic_star_border,R.color.black); + changeDrawableColor(context, R.drawable.ic_star_border,R.color.action_light); imgFav = ContextCompat.getDrawable(context, R.drawable.ic_star_border); } @@ -367,16 +369,20 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On changeDrawableColor(context, R.drawable.ic_repeat_boost,R.color.boost_icon); imgReblog = ContextCompat.getDrawable(context, R.drawable.ic_repeat_boost); }else { - if( theme == THEME_DARK || theme == THEME_BLACK) - changeDrawableColor(context, R.drawable.ic_repeat,R.color.dark_icon); + if( theme == THEME_DARK ) + changeDrawableColor(context, R.drawable.ic_repeat,R.color.action_dark); + else if(theme == THEME_BLACK) + changeDrawableColor(context, R.drawable.ic_repeat,R.color.action_black); else - changeDrawableColor(context, R.drawable.ic_repeat,R.color.black); + changeDrawableColor(context, R.drawable.ic_repeat,R.color.action_light); imgReblog = ContextCompat.getDrawable(context, R.drawable.ic_repeat); } - if( theme == THEME_DARK || theme == THEME_BLACK) - changeDrawableColor(context, R.drawable.ic_reply,R.color.dark_icon); + if( theme == THEME_DARK) + changeDrawableColor(context, R.drawable.ic_reply,R.color.action_dark); + else if(theme == THEME_BLACK) + changeDrawableColor(context, R.drawable.ic_reply,R.color.action_black); else - changeDrawableColor(context, R.drawable.ic_reply,R.color.black); + changeDrawableColor(context, R.drawable.ic_reply,R.color.action_light); imgReply = ContextCompat.getDrawable(context, R.drawable.ic_reply); if( status.getReblog() == null) { @@ -427,14 +433,18 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On holder.status_reblog_count.setCompoundDrawables(imgReblog, null, null, null); holder.status_reply.setCompoundDrawables(imgReply, null, null, null); - if( theme == THEME_DARK || theme == THEME_BLACK){ - holder.status_favorite_count.setTextColor(ContextCompat.getColor(context, R.color.dark_icon)); - holder.status_reblog_count.setTextColor(ContextCompat.getColor(context, R.color.dark_icon)); - holder.status_reply.setTextColor(ContextCompat.getColor(context, R.color.dark_icon)); + if( theme == THEME_DARK ){ + holder.status_favorite_count.setTextColor(ContextCompat.getColor(context, R.color.action_dark)); + holder.status_reblog_count.setTextColor(ContextCompat.getColor(context, R.color.action_dark)); + holder.status_reply.setTextColor(ContextCompat.getColor(context, R.color.action_dark)); + }else if(theme == THEME_BLACK){ + holder.status_favorite_count.setTextColor(ContextCompat.getColor(context, R.color.action_black)); + holder.status_reblog_count.setTextColor(ContextCompat.getColor(context, R.color.action_black)); + holder.status_reply.setTextColor(ContextCompat.getColor(context, R.color.action_black)); }else { - holder.status_favorite_count.setTextColor(ContextCompat.getColor(context, R.color.black)); - holder.status_reblog_count.setTextColor(ContextCompat.getColor(context, R.color.black)); - holder.status_reply.setTextColor(ContextCompat.getColor(context, R.color.black)); + holder.status_favorite_count.setTextColor(ContextCompat.getColor(context, R.color.action_light)); + holder.status_reblog_count.setTextColor(ContextCompat.getColor(context, R.color.action_light)); + holder.status_reply.setTextColor(ContextCompat.getColor(context, R.color.action_light)); } if( type.equals("favourite") || type.equals("reblog")){ holder.status_document_container.setVisibility(View.GONE); diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/StatusListAdapter.java b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/StatusListAdapter.java index 37b18eec1..6059a922a 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/drawers/StatusListAdapter.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/drawers/StatusListAdapter.java @@ -591,7 +591,7 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct changeDrawableColor(context, R.drawable.ic_photo,R.color.mastodonC4); changeDrawableColor(context, R.drawable.ic_remove_red_eye,R.color.mastodonC4); - changeDrawableColor(context, R.drawable.ic_repeat_head_toot,R.color.light_black); + changeDrawableColor(context, R.drawable.ic_repeat_head_toot,R.color.action_light_header); holder.status_cardview_title.setTextColor(ContextCompat.getColor(context, R.color.light_black)); @@ -609,7 +609,7 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct holder.status_account_displayname.setTextColor(ContextCompat.getColor(context, R.color.black_text_toot_header)); holder.status_toot_date.setTextColor(ContextCompat.getColor(context, R.color.black_text_toot_header)); }else if( theme == THEME_LIGHT) { - holder.status_account_displayname.setTextColor(ContextCompat.getColor(context, R.color.light_black)); + holder.status_account_displayname.setTextColor(ContextCompat.getColor(context, R.color.action_light_header)); holder.status_toot_date.setTextColor(ContextCompat.getColor(context, R.color.light_black)); } if( status.isBookmarked()) @@ -1191,10 +1191,12 @@ public class StatusListAdapter extends RecyclerView.Adapter implements OnPostAct changeDrawableColor(context, R.drawable.ic_pin_drop_p,R.color.marked_icon); imgPin = ContextCompat.getDrawable(context, R.drawable.ic_pin_drop_p); }else { - if( theme == THEME_DARK || theme == THEME_BLACK) - changeDrawableColor(context, R.drawable.ic_pin_drop,R.color.dark_icon); + if( theme == THEME_DARK ) + changeDrawableColor(context, R.drawable.ic_pin_drop,R.color.action_dark); + else if(theme == THEME_BLACK) + changeDrawableColor(context, R.drawable.ic_pin_drop,R.color.action_black); else - changeDrawableColor(context, R.drawable.ic_pin_drop,R.color.light_black); + changeDrawableColor(context, R.drawable.ic_pin_drop,R.color.action_light); imgPin = ContextCompat.getDrawable(context, R.drawable.ic_pin_drop); } assert imgPin != null; diff --git a/app/src/main/res/drawable-anydpi/ic_bug_report.xml b/app/src/main/res/drawable-anydpi/ic_bug_report.xml new file mode 100644 index 000000000..4d83902b8 --- /dev/null +++ b/app/src/main/res/drawable-anydpi/ic_bug_report.xml @@ -0,0 +1,9 @@ + + + diff --git a/app/src/main/res/layout-sw600dp/activity_about.xml b/app/src/main/res/layout-sw600dp/activity_about.xml index e3df81744..9715de2ec 100644 --- a/app/src/main/res/layout-sw600dp/activity_about.xml +++ b/app/src/main/res/layout-sw600dp/activity_about.xml @@ -135,6 +135,29 @@ android:divider="@null" android:scrollbars="none" /> + + + + + - + + + + + + New UX/UI designer Use the direct timeline prior to Mastodon 2.6 Display video previews + Gitlab Support + Bug Report + There are no email clients installed. + Send a bug report Never