diff --git a/CHANGELOG.md b/CHANGELOG.md index 0484c7e3bf..e518321a54 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ For support you can use [the contact form](https://contact.faircode.eu/?product= ### Next version * Added "AI" summarize quick action +* Added "AI" summarize swipe action * Small improvements and minor bug fixes Preview versions are available [here](https://bitbucket.org/M66B/fairemail-test/downloads/). diff --git a/app/src/main/assets/CHANGELOG.md b/app/src/main/assets/CHANGELOG.md index 0484c7e3bf..e518321a54 100644 --- a/app/src/main/assets/CHANGELOG.md +++ b/app/src/main/assets/CHANGELOG.md @@ -9,6 +9,7 @@ For support you can use [the contact form](https://contact.faircode.eu/?product= ### Next version * Added "AI" summarize quick action +* Added "AI" summarize swipe action * Small improvements and minor bug fixes Preview versions are available [here](https://bitbucket.org/M66B/fairemail-test/downloads/). diff --git a/app/src/main/java/eu/faircode/email/AdapterMessage.java b/app/src/main/java/eu/faircode/email/AdapterMessage.java index 9316cc4f45..f45da48b08 100644 --- a/app/src/main/java/eu/faircode/email/AdapterMessage.java +++ b/app/src/main/java/eu/faircode/email/AdapterMessage.java @@ -7278,14 +7278,7 @@ public class AdapterMessage extends RecyclerView.Adapter(getContext(), R.layout.spinner_item1, android.R.id.text1, getSwipeActions()); + adapterSwipe = new ArrayAdapter<>(getContext(), R.layout.spinner_item1, android.R.id.text1, getSwipeActions(getContext())); adapterSwipe.setDropDownViewResource(R.layout.spinner_item1_dropdown); spLeft.setAdapter(adapterSwipe); @@ -903,7 +903,7 @@ public class FragmentPop extends FragmentBase { cbIdentity.setChecked(account == null); - List folders = getSwipeActions(); + List folders = getSwipeActions(getContext()); for (int pos = 0; pos < folders.size(); pos++) { EntityFolder folder = folders.get(pos); @@ -1088,7 +1088,7 @@ public class FragmentPop extends FragmentBase { }.execute(this, args, "account:delete"); } - private List getSwipeActions() { + private List getSwipeActions(Context context) { List folders = new ArrayList<>(); EntityFolder ask = new EntityFolder(); @@ -1098,9 +1098,19 @@ public class FragmentPop extends FragmentBase { EntityFolder seen = new EntityFolder(); seen.id = EntityMessage.SWIPE_ACTION_SEEN; - seen.name = getString(R.string.title_seen); + seen.name = getString(R.string.title_seen_unseen); folders.add(seen); + EntityFolder snooze = new EntityFolder(); + snooze.id = EntityMessage.SWIPE_ACTION_SNOOZE; + snooze.name = getString(R.string.title_snooze_now); + folders.add(snooze); + + EntityFolder hide = new EntityFolder(); + hide.id = EntityMessage.SWIPE_ACTION_HIDE; + hide.name = getString(R.string.title_hide); + folders.add(hide); + EntityFolder flag = new EntityFolder(); flag.id = EntityMessage.SWIPE_ACTION_FLAG; flag.name = getString(R.string.title_flag); @@ -1111,15 +1121,12 @@ public class FragmentPop extends FragmentBase { importance.name = getString(R.string.title_set_importance); folders.add(importance); - EntityFolder snooze = new EntityFolder(); - snooze.id = EntityMessage.SWIPE_ACTION_SNOOZE; - snooze.name = getString(R.string.title_snooze_now); - folders.add(snooze); - - EntityFolder hide = new EntityFolder(); - hide.id = EntityMessage.SWIPE_ACTION_HIDE; - hide.name = getString(R.string.title_hide); - folders.add(hide); + if (OpenAI.isAvailable(context) || Gemini.isAvailable(context)) { + EntityFolder summarize = new EntityFolder(); + summarize.id = EntityMessage.SWIPE_ACTION_SUMMARIZE; + summarize.name = context.getString(R.string.title_summarize); + folders.add(summarize); + } EntityFolder junk = new EntityFolder(); junk.id = EntityMessage.SWIPE_ACTION_JUNK; diff --git a/metadata/en-US/changelogs/2181.txt b/metadata/en-US/changelogs/2181.txt index 92ff8c032f..3447573849 100644 --- a/metadata/en-US/changelogs/2181.txt +++ b/metadata/en-US/changelogs/2181.txt @@ -9,6 +9,7 @@ Acantholipan Next version * Added "AI" summarize quick action +* Added "AI" summarize swipe action * Small improvements and minor bug fixes Preview versions are available here.