diff --git a/app/src/main/java/app/fedilab/android/client/Entities/Notification.java b/app/src/main/java/app/fedilab/android/client/Entities/Notification.java
index 1461717d3..1dfb62ac0 100644
--- a/app/src/main/java/app/fedilab/android/client/Entities/Notification.java
+++ b/app/src/main/java/app/fedilab/android/client/Entities/Notification.java
@@ -127,6 +127,12 @@ public class Notification implements Parcelable {
else
typeString = String.format("@%s %s", notification.getAccount().getUsername(), context.getString(R.string.notif_follow));
break;
+ case "follow_request":
+ if (notification.getAccount().getDisplay_name() != null && notification.getAccount().getDisplay_name().length() > 0)
+ typeString = String.format("%s %s", Helper.shortnameToUnicode(notification.getAccount().getDisplay_name(), true), context.getString(R.string.notif_follow_request));
+ else
+ typeString = String.format("@%s %s", notification.getAccount().getUsername(), context.getString(R.string.notif_follow_request));
+ break;
}
SpannableString displayNameSpan = new SpannableString(typeString);
SharedPreferences sharedpreferences = context.getSharedPreferences(Helper.APP_PREFS, Context.MODE_PRIVATE);
diff --git a/app/src/main/java/app/fedilab/android/drawers/NotificationsListAdapter.java b/app/src/main/java/app/fedilab/android/drawers/NotificationsListAdapter.java
index c503fe85d..2dd8a788e 100644
--- a/app/src/main/java/app/fedilab/android/drawers/NotificationsListAdapter.java
+++ b/app/src/main/java/app/fedilab/android/drawers/NotificationsListAdapter.java
@@ -307,6 +307,16 @@ public class NotificationsListAdapter extends RecyclerView.Adapter implements On
holder.main_container_trans.setVisibility(View.VISIBLE);
holder.status_more.setVisibility(View.GONE);
break;
+ case "follow_request":
+ holder.status_action_container.setVisibility(View.GONE);
+ holder.status_date.setVisibility(View.GONE);
+ if (notification.getAccount().getDisplay_name() != null && notification.getAccount().getDisplay_name().length() > 0)
+ typeString = String.format("%s %s", Helper.shortnameToUnicode(notification.getAccount().getDisplay_name(), true), context.getString(R.string.notif_follow_request));
+ else
+ typeString = String.format("@%s %s", notification.getAccount().getUsername(), context.getString(R.string.notif_follow_request));
+ imgH = ContextCompat.getDrawable(context, R.drawable.ic_follow_notif_header);
+ holder.main_container_trans.setVisibility(View.GONE);
+ break;
case "follow":
holder.status_action_container.setVisibility(View.GONE);
holder.status_date.setVisibility(View.GONE);
diff --git a/app/src/main/java/app/fedilab/android/jobs/NotificationsSyncJob.java b/app/src/main/java/app/fedilab/android/jobs/NotificationsSyncJob.java
index 674706075..09b710a60 100644
--- a/app/src/main/java/app/fedilab/android/jobs/NotificationsSyncJob.java
+++ b/app/src/main/java/app/fedilab/android/jobs/NotificationsSyncJob.java
@@ -224,6 +224,20 @@ public class NotificationsSyncJob extends Job {
}
}
break;
+ case "follow_request":
+ notifType = Helper.NotifType.FOLLLOW;
+ if (notif_follow) {
+ newFollows++;
+ if (notificationUrl == null) {
+ notificationUrl = notification.getAccount().getAvatar();
+ if (notification.getAccount().getDisplay_name() != null && notification.getAccount().getDisplay_name().length() > 0)
+ title = String.format("%s %s", Helper.shortnameToUnicode(notification.getAccount().getDisplay_name(), true), getContext().getString(R.string.notif_follow_request));
+ else
+ title = String.format("@%s %s", notification.getAccount().getAcct(), getContext().getString(R.string.notif_follow_request));
+ targeted_account = notification.getAccount().getId();
+ }
+ }
+ break;
case "follow":
notifType = Helper.NotifType.FOLLLOW;
if (notif_follow) {
diff --git a/app/src/main/java/app/fedilab/android/services/LiveNotificationDelayedService.java b/app/src/main/java/app/fedilab/android/services/LiveNotificationDelayedService.java
index 3479a3c06..556f85178 100644
--- a/app/src/main/java/app/fedilab/android/services/LiveNotificationDelayedService.java
+++ b/app/src/main/java/app/fedilab/android/services/LiveNotificationDelayedService.java
@@ -369,6 +369,18 @@ public class LiveNotificationDelayedService extends Service {
canSendBroadCast = false;
}
break;
+ case "follow_request":
+ notifType = Helper.NotifType.FOLLLOW;
+ if (notif_follow) {
+ if (notification.getAccount().getDisplay_name() != null && notification.getAccount().getDisplay_name().length() > 0)
+ message = String.format("%s %s", Helper.shortnameToUnicode(notification.getAccount().getDisplay_name(), true), getString(R.string.notif_follow_request));
+ else
+ message = String.format("@%s %s", notification.getAccount().getAcct(), getString(R.string.notif_follow_request));
+ targeted_account = notification.getAccount().getId();
+ } else {
+ canSendBroadCast = false;
+ }
+ break;
case "follow":
notifType = Helper.NotifType.FOLLLOW;
if (notif_follow) {
diff --git a/app/src/main/java/app/fedilab/android/services/LiveNotificationService.java b/app/src/main/java/app/fedilab/android/services/LiveNotificationService.java
index 841f47aff..111369673 100644
--- a/app/src/main/java/app/fedilab/android/services/LiveNotificationService.java
+++ b/app/src/main/java/app/fedilab/android/services/LiveNotificationService.java
@@ -414,6 +414,18 @@ public class LiveNotificationService extends Service implements NetworkStateRece
canSendBroadCast = false;
}
break;
+ case "follow_request":
+ notifType = Helper.NotifType.FOLLLOW;
+ if (notif_follow) {
+ if (notification.getAccount().getDisplay_name() != null && notification.getAccount().getDisplay_name().length() > 0)
+ message = String.format("%s %s", Helper.shortnameToUnicode(notification.getAccount().getDisplay_name(), true), getString(R.string.notif_follow_request));
+ else
+ message = String.format("@%s %s", notification.getAccount().getAcct(), getString(R.string.notif_follow_request));
+ targeted_account = notification.getAccount().getId();
+ } else {
+ canSendBroadCast = false;
+ }
+ break;
case "follow":
notifType = Helper.NotifType.FOLLLOW;
if (notif_follow) {
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 7a410e605..bf357578c 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -236,6 +236,7 @@
boosted your status
favourited your status
followed you
+ asked to follow you
- and another notification
- and %d other notifications