diff --git a/app/src/main/java/eu/faircode/email/FragmentMessages.java b/app/src/main/java/eu/faircode/email/FragmentMessages.java
index 7c5f90e0ab..b00099023c 100644
--- a/app/src/main/java/eu/faircode/email/FragmentMessages.java
+++ b/app/src/main/java/eu/faircode/email/FragmentMessages.java
@@ -251,7 +251,8 @@ public class FragmentMessages extends FragmentBase
private TextView tvAirplane;
private TextView tvNotifications;
private TextView tvBatteryOptimizations;
- private TextView tvSupport;
+ private TextView tvHintPro;
+ private ImageButton ibHintPro;
private ImageButton ibHintSupport;
private ImageButton ibHintSwipe;
private ImageButton ibHintSelect;
@@ -275,7 +276,7 @@ public class FragmentMessages extends FragmentBase
private Group grpAirplane;
private Group grpNotifications;
private Group grpBatteryOptimizations;
- private Group grpSupport;
+ private Group grpPro;
private Group grpHintSupport;
private Group grpHintSwipe;
private Group grpHintSelect;
@@ -557,7 +558,8 @@ public class FragmentMessages extends FragmentBase
tvAirplane = view.findViewById(R.id.tvAirplane);
tvNotifications = view.findViewById(R.id.tvNotifications);
tvBatteryOptimizations = view.findViewById(R.id.tvBatteryOptimizations);
- tvSupport = view.findViewById(R.id.tvSupport);
+ tvHintPro = view.findViewById(R.id.tvHintPro);
+ ibHintPro = view.findViewById(R.id.ibHintPro);
ibHintSupport = view.findViewById(R.id.ibHintSupport);
ibHintSwipe = view.findViewById(R.id.ibHintSwipe);
ibHintSelect = view.findViewById(R.id.ibHintSelect);
@@ -582,7 +584,7 @@ public class FragmentMessages extends FragmentBase
grpAirplane = view.findViewById(R.id.grpAirplane);
grpNotifications = view.findViewById(R.id.grpNotifications);
grpBatteryOptimizations = view.findViewById(R.id.grpBatteryOptimizations);
- grpSupport = view.findViewById(R.id.grpSupport);
+ grpPro = view.findViewById(R.id.grpPro);
grpHintSupport = view.findViewById(R.id.grpHintSupport);
grpHintSwipe = view.findViewById(R.id.grpHintSwipe);
grpHintSelect = view.findViewById(R.id.grpHintSelect);
@@ -657,11 +659,20 @@ public class FragmentMessages extends FragmentBase
}
});
- grpSupport.setVisibility(View.GONE);
- tvSupport.setOnClickListener(new View.OnClickListener() {
+ grpPro.setVisibility(View.GONE);
+ tvHintPro.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
- startActivity(new Intent(getContext(), ActivityBilling.class));
+ startActivity(new Intent(v.getContext(), ActivityBilling.class));
+ }
+ });
+
+ ibHintPro.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View v) {
+ long banner_hidden = new Date().getTime() + FragmentPro.HIDE_BANNER * 7 * 24 * 3600 * 1000L;
+ prefs.edit().putLong("banner_hidden", banner_hidden).apply();
+ startActivity(new Intent(v.getContext(), ActivityBilling.class));
}
});
@@ -5147,11 +5158,11 @@ public class FragmentMessages extends FragmentBase
@Override
public void onSharedPreferenceChanged(SharedPreferences prefs, String key) {
- if (grpSupport != null &&
+ if (grpPro != null &&
("pro".equals(key) || "banner_hidden".equals(key))) {
boolean pro = ActivityBilling.isPro(getContext());
long banner_hidden = prefs.getLong("banner_hidden", 0);
- grpSupport.setVisibility(
+ grpPro.setVisibility(
!pro && banner_hidden == 0 && viewType == AdapterMessage.ViewType.UNIFIED
? View.VISIBLE : View.GONE);
}
diff --git a/app/src/main/java/eu/faircode/email/FragmentPro.java b/app/src/main/java/eu/faircode/email/FragmentPro.java
index b6f4378817..96964b56cb 100644
--- a/app/src/main/java/eu/faircode/email/FragmentPro.java
+++ b/app/src/main/java/eu/faircode/email/FragmentPro.java
@@ -68,7 +68,7 @@ public class FragmentPro extends FragmentBase implements SharedPreferences.OnSha
private Button btnConsume;
private ImageView ivConnected;
- private static final int HIDE_BANNER = 4; // weeks
+ static final int HIDE_BANNER = 4; // weeks
@Override
@Nullable
diff --git a/app/src/main/res/layout/fragment_messages.xml b/app/src/main/res/layout/fragment_messages.xml
index a2b97ce4c7..66e6c97990 100644
--- a/app/src/main/res/layout/fragment_messages.xml
+++ b/app/src/main/res/layout/fragment_messages.xml
@@ -92,24 +92,37 @@
app:layout_constraintTop_toBottomOf="@id/tvBatteryOptimizations" />
+
+
+ app:layout_constraintTop_toBottomOf="@id/tvHintPro" />
+ app:constraint_referenced_ids="tvHintPro,ibHintPro,vSeparatorSupport" />