From ed179d54e7e00ead35cfe90fc91598b00e4ffbd1 Mon Sep 17 00:00:00 2001 From: tom79 Date: Sat, 23 Sep 2017 08:16:32 +0200 Subject: [PATCH] Allows to force translation button to be displayed --- .../etalab/mastodon/drawers/StatusListAdapter.java | 3 ++- .../etalab/mastodon/fragments/SettingsFragment.java | 12 ++++++++++++ .../java/fr/gouv/etalab/mastodon/helper/Helper.java | 1 + .../main/res/layout-sw600dp/fragment_settings.xml | 7 +++++++ app/src/main/res/layout/fragment_settings.xml | 6 ++++++ 5 files changed, 28 insertions(+), 1 deletion(-) 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 babe2a034..8f65e5883 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 @@ -287,6 +287,7 @@ public class StatusListAdapter extends BaseAdapter implements OnPostActionInterf holder.new_element.setVisibility(View.INVISIBLE); int iconSizePercent = sharedpreferences.getInt(Helper.SET_ICON_SIZE, 130); int textSizePercent = sharedpreferences.getInt(Helper.SET_TEXT_SIZE, 110); + boolean trans_forced = sharedpreferences.getBoolean(Helper.SET_TRANS_FORCED, false); holder.status_more.getLayoutParams().height = (int) Helper.convertDpToPixel((20*iconSizePercent/100), context); holder.status_more.getLayoutParams().width = (int) Helper.convertDpToPixel((20*iconSizePercent/100), context); holder.status_privacy.getLayoutParams().height = (int) Helper.convertDpToPixel((20*iconSizePercent/100), context); @@ -486,7 +487,7 @@ public class StatusListAdapter extends BaseAdapter implements OnPostActionInterf holder.status_action_container.setVisibility(View.GONE); }else { holder.status_action_container.setVisibility(View.VISIBLE); - if( translator != Helper.TRANS_NONE && currentLocale != null && status.getLanguage() != null && !status.getLanguage().trim().equals(currentLocale)){ + if( trans_forced || (translator != Helper.TRANS_NONE && currentLocale != null && status.getLanguage() != null && !status.getLanguage().trim().equals(currentLocale))){ holder.status_translate.setVisibility(View.VISIBLE); }else { holder.status_translate.setVisibility(View.GONE); diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/fragments/SettingsFragment.java b/app/src/main/java/fr/gouv/etalab/mastodon/fragments/SettingsFragment.java index 95f2e93a5..15f6e8222 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/fragments/SettingsFragment.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/fragments/SettingsFragment.java @@ -472,6 +472,18 @@ public class SettingsFragment extends Fragment { } }); + boolean trans_forced = sharedpreferences.getBoolean(Helper.SET_TRANS_FORCED, false); + final CheckBox set_trans_forced = (CheckBox) rootView.findViewById(R.id.set_trans_forced); + set_trans_forced.setChecked(trans_forced); + set_trans_forced.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + SharedPreferences.Editor editor = sharedpreferences.edit(); + editor.putBoolean(Helper.SET_TRANS_FORCED, set_trans_forced.isChecked()); + editor.apply(); + } + }); + return rootView; } diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/helper/Helper.java b/app/src/main/java/fr/gouv/etalab/mastodon/helper/Helper.java index 79f288f9f..3a30d6c23 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/helper/Helper.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/helper/Helper.java @@ -229,6 +229,7 @@ public class Helper { public static final int TRANS_GOOGLE = 1; public static final int TRANS_NONE = 2; + public static final String SET_TRANS_FORCED = "set_trans_forced"; public static final String SET_NOTIF_FOLLOW = "set_notif_follow"; public static final String SET_NOTIF_ADD = "set_notif_follow_add"; public static final String SET_NOTIF_ASK = "set_notif_follow_ask"; diff --git a/app/src/main/res/layout-sw600dp/fragment_settings.xml b/app/src/main/res/layout-sw600dp/fragment_settings.xml index f40c5afca..9947c4344 100644 --- a/app/src/main/res/layout-sw600dp/fragment_settings.xml +++ b/app/src/main/res/layout-sw600dp/fragment_settings.xml @@ -123,6 +123,13 @@ android:id="@+id/translation_layout_spinner" android:layout_width="wrap_content" android:layout_height="wrap_content" /> + + +