diff --git a/app/src/main/java/eu/faircode/email/AdapterKeyword.java b/app/src/main/java/eu/faircode/email/AdapterKeyword.java index 4854acc548..69fe75303b 100644 --- a/app/src/main/java/eu/faircode/email/AdapterKeyword.java +++ b/app/src/main/java/eu/faircode/email/AdapterKeyword.java @@ -96,6 +96,7 @@ public class AdapterKeyword extends RecyclerView.Adapter keywords = new ArrayList<>(Arrays.asList(imessage.getFlags().getUserFlags())); + + if (outlook) { + String categories = imessage.getHeader("Keywords", null); + if (!TextUtils.isEmpty(categories)) + for (String category : categories.split(",")) + keywords.add(CATEGORY_PREFIX + category); + } + while (keywords.size() > MAX_KEYWORDS) keywords.remove(keywords.size() - 1); + Collections.sort(keywords); return keywords.toArray(new String[0]); } diff --git a/app/src/main/java/eu/faircode/email/TupleKeyword.java b/app/src/main/java/eu/faircode/email/TupleKeyword.java index 9b945ae3c1..7787bce346 100644 --- a/app/src/main/java/eu/faircode/email/TupleKeyword.java +++ b/app/src/main/java/eu/faircode/email/TupleKeyword.java @@ -168,6 +168,9 @@ public class TupleKeyword { } static String getDefaultKeywordAlias(Context context, String keyword) { + if (keyword.startsWith(MessageHelper.CATEGORY_PREFIX)) + return keyword.substring(MessageHelper.CATEGORY_PREFIX.length()); + switch (keyword) { case "$label1": // Important return context.getString(R.string.title_keyword_label1);