diff --git a/app/src/main/java/fr/gouv/etalab/mastodon/activities/MainActivity.java b/app/src/main/java/fr/gouv/etalab/mastodon/activities/MainActivity.java index 6abdca69e..6b375b375 100644 --- a/app/src/main/java/fr/gouv/etalab/mastodon/activities/MainActivity.java +++ b/app/src/main/java/fr/gouv/etalab/mastodon/activities/MainActivity.java @@ -235,16 +235,12 @@ public class MainActivity extends AppCompatActivity } } }); - + //Scroll to top when top bar is clicked (THEME_MENU only) if (Helper.THEME_MENU == sharedpreferences.getInt(Helper.SET_TABS, Helper.THEME_TABS)) { - toolbarTitle.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { - int pos = tabLayout.getSelectedTabPosition(); - Fragment fragment = (Fragment) viewPager.getAdapter().instantiateItem(viewPager, pos); - switch (pos) { case 0: case 2: @@ -261,9 +257,7 @@ public class MainActivity extends AppCompatActivity } } }); - } - - else { + } else { toolbarTitle.setOnClickListener(null); toolbar.setClickable(false); } 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 0f2b8a9f7..ab38fc124 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 @@ -209,30 +209,33 @@ public class StatusListAdapter extends BaseAdapter implements OnPostActionInterf if( type == RetrieveFeedsAsyncTask.Type.HOME ) { boolean showPreview = sharedpreferences.getBoolean(Helper.SET_PREVIEW_REPLIES, true); if( showPreview){ + boolean showPreviewPP = sharedpreferences.getBoolean(Helper.SET_PREVIEW_REPLIES_PP, true); if( status.getReplies() == null){ holder.loader_replies.setVisibility(View.VISIBLE); }else if(status.getReplies().size() == 0){ holder.status_replies.setVisibility(View.GONE); holder.loader_replies.setVisibility(View.GONE); }else if(status.getReplies().size() > 0 ){ - ArrayList addedPictures = new ArrayList<>(); - holder.status_replies_profile_pictures.removeAllViews(); - int i = 0; - for(Status replies: status.getReplies()){ - if( i > 4 ) - break; - if( !addedPictures.contains(replies.getAccount().getAcct())){ - ImageView imageView = new ImageView(context); - imageView.setMaxHeight((int) Helper.convertDpToPixel(40, context)); - imageView.setMaxWidth((int) Helper.convertDpToPixel(40, context)); - imageLoader.displayImage(replies.getAccount().getAvatar(), imageView, options); - LinearLayout.LayoutParams imParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT); - imParams.setMargins(10, 5, 10, 5); - imParams.height = (int) Helper.convertDpToPixel(40, context); - imParams.width = (int) Helper.convertDpToPixel(40, context); - holder.status_replies_profile_pictures.addView(imageView, imParams); - i++; - addedPictures.add(replies.getAccount().getAcct()); + if(showPreviewPP) { + ArrayList addedPictures = new ArrayList<>(); + holder.status_replies_profile_pictures.removeAllViews(); + int i = 0; + for (Status replies : status.getReplies()) { + if (i > 4) + break; + if (!addedPictures.contains(replies.getAccount().getAcct())) { + ImageView imageView = new ImageView(context); + imageView.setMaxHeight((int) Helper.convertDpToPixel(40, context)); + imageView.setMaxWidth((int) Helper.convertDpToPixel(40, context)); + imageLoader.displayImage(replies.getAccount().getAvatar(), imageView, options); + LinearLayout.LayoutParams imParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT); + imParams.setMargins(10, 5, 10, 5); + imParams.height = (int) Helper.convertDpToPixel(40, context); + imParams.width = (int) Helper.convertDpToPixel(40, context); + holder.status_replies_profile_pictures.addView(imageView, imParams); + i++; + addedPictures.add(replies.getAccount().getAcct()); + } } } holder.status_replies_text.setText(context.getResources().getQuantityString(R.plurals.preview_replies, status.getReplies().size(), status.getReplies().size())); 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 2ad1dcf54..95daab1d1 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 @@ -122,6 +122,8 @@ public class SettingsFragment extends Fragment { boolean preview_reply = sharedpreferences.getBoolean(Helper.SET_PREVIEW_REPLIES, true); final CheckBox set_preview_reply = (CheckBox) rootView.findViewById(R.id.set_preview_reply); + final LinearLayout set_preview_reply_pp_container = (LinearLayout) rootView.findViewById(R.id.set_preview_reply_pp_container); + final SwitchCompat set_preview_reply_pp = (SwitchCompat) rootView.findViewById(R.id.set_preview_reply_pp); set_preview_reply.setChecked(preview_reply); set_preview_reply.setOnClickListener(new View.OnClickListener() { @@ -130,9 +132,29 @@ public class SettingsFragment extends Fragment { SharedPreferences.Editor editor = sharedpreferences.edit(); editor.putBoolean(Helper.SET_PREVIEW_REPLIES, set_preview_reply.isChecked()); editor.apply(); + if( !set_preview_reply.isChecked()){ + set_preview_reply_pp_container.setVisibility(View.GONE); + }else{ + set_preview_reply_pp_container.setVisibility(View.VISIBLE); + } } }); - + if( !preview_reply){ + set_preview_reply_pp_container.setVisibility(View.GONE); + }else{ + set_preview_reply_pp_container.setVisibility(View.VISIBLE); + } + boolean preview_reply_pp = sharedpreferences.getBoolean(Helper.SET_PREVIEW_REPLIES_PP, true); + set_preview_reply_pp.setChecked(preview_reply_pp); + set_preview_reply_pp.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { + @Override + public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { + SharedPreferences.Editor editor = sharedpreferences.edit(); + editor.putBoolean(Helper.SET_PREVIEW_REPLIES_PP, isChecked); + editor.apply(); + } + }); + boolean notif_validation = sharedpreferences.getBoolean(Helper.SET_NOTIF_VALIDATION, true); final CheckBox set_share_validation = (CheckBox) rootView.findViewById(R.id.set_share_validation); set_share_validation.setChecked(notif_validation); 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 e3d73c08f..eade9fdc7 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 @@ -197,6 +197,7 @@ public class Helper { public static final String SET_TEXT_SIZE = "set_text_size"; public static final String SET_ICON_SIZE = "set_icon_size"; public static final String SET_PREVIEW_REPLIES = "set_preview_replies"; + public static final String SET_PREVIEW_REPLIES_PP = "set_preview_replies_pp"; public static final int ATTACHMENT_ALWAYS = 1; public static final int ATTACHMENT_WIFI = 2; public static final int ATTACHMENT_ASK = 3; diff --git a/app/src/main/res/layout-sw600dp/fragment_settings.xml b/app/src/main/res/layout-sw600dp/fragment_settings.xml index b763c3601..5eae5b4de 100644 --- a/app/src/main/res/layout-sw600dp/fragment_settings.xml +++ b/app/src/main/res/layout-sw600dp/fragment_settings.xml @@ -64,6 +64,31 @@ android:text="@string/set_preview_reply" android:layout_height="wrap_content" /> + + + + + + + + + + + + + + + Enregistrer les modifications Choisissez une image d\'entête Afficher le nombre de réponses sur la page d\'accueil + Afficher les images de profil ? Vous avez atteint les 160 caractères autorisés ! Vous avez atteint les 30 caractères autorisés ! Plage horaire pour les notifications : diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 46757e6c1..e0539dd83 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -304,6 +304,7 @@ Save changes Choose a header picture Display the number of replies in home timeline + Display profile pictures? You have reached the 160 characters allowed! You have reached the 30 characters allowed!