|
@@ -52,6 +52,7 @@ import com.owncloud.android.lib.common.OwnCloudClient;
|
|
import com.owncloud.android.lib.resources.notifications.models.Action;
|
|
import com.owncloud.android.lib.resources.notifications.models.Action;
|
|
import com.owncloud.android.lib.resources.notifications.models.Notification;
|
|
import com.owncloud.android.lib.resources.notifications.models.Notification;
|
|
import com.owncloud.android.lib.resources.notifications.models.RichObject;
|
|
import com.owncloud.android.lib.resources.notifications.models.RichObject;
|
|
|
|
+import com.owncloud.android.ui.activity.FileDisplayActivity;
|
|
import com.owncloud.android.ui.activity.NotificationsActivity;
|
|
import com.owncloud.android.ui.activity.NotificationsActivity;
|
|
import com.owncloud.android.ui.asynctasks.DeleteNotificationTask;
|
|
import com.owncloud.android.ui.asynctasks.DeleteNotificationTask;
|
|
import com.owncloud.android.ui.asynctasks.NotificationExecuteActionTask;
|
|
import com.owncloud.android.ui.asynctasks.NotificationExecuteActionTask;
|
|
@@ -106,8 +107,9 @@ public class NotificationListAdapter extends RecyclerView.Adapter<NotificationLi
|
|
holder.dateTime.setText(DisplayUtils.getRelativeTimestamp(notificationsActivity,
|
|
holder.dateTime.setText(DisplayUtils.getRelativeTimestamp(notificationsActivity,
|
|
notification.getDatetime().getTime()));
|
|
notification.getDatetime().getTime()));
|
|
|
|
|
|
|
|
+ RichObject file = notification.subjectRichParameters.get("file");
|
|
String subject = notification.getSubject();
|
|
String subject = notification.getSubject();
|
|
- if (!TextUtils.isEmpty(notification.getLink())) {
|
|
|
|
|
|
+ if (file == null && !TextUtils.isEmpty(notification.getLink())) {
|
|
subject = subject + " ↗";
|
|
subject = subject + " ↗";
|
|
holder.subject.setTypeface(holder.subject.getTypeface(), Typeface.BOLD);
|
|
holder.subject.setTypeface(holder.subject.getTypeface(), Typeface.BOLD);
|
|
holder.subject.setOnClickListener(v -> openLink(notification.getLink()));
|
|
holder.subject.setOnClickListener(v -> openLink(notification.getLink()));
|
|
@@ -118,6 +120,16 @@ public class NotificationListAdapter extends RecyclerView.Adapter<NotificationLi
|
|
} else {
|
|
} else {
|
|
holder.subject.setText(subject);
|
|
holder.subject.setText(subject);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ if (file != null && !TextUtils.isEmpty(file.id)) {
|
|
|
|
+ holder.subject.setOnClickListener(v -> {
|
|
|
|
+ Intent intent = new Intent(notificationsActivity, FileDisplayActivity.class);
|
|
|
|
+ intent.setAction(Intent.ACTION_VIEW);
|
|
|
|
+ intent.putExtra(FileDisplayActivity.KEY_FILE_ID, file.id);
|
|
|
|
+
|
|
|
|
+ notificationsActivity.startActivity(intent);
|
|
|
|
+ });
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
holder.message.setText(notification.getMessage());
|
|
holder.message.setText(notification.getMessage());
|
|
@@ -136,7 +148,7 @@ public class NotificationListAdapter extends RecyclerView.Adapter<NotificationLi
|
|
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,
|
|
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,
|
|
ViewGroup.LayoutParams.WRAP_CONTENT);
|
|
ViewGroup.LayoutParams.WRAP_CONTENT);
|
|
params.setMargins(20, 0, 20, 0);
|
|
params.setMargins(20, 0, 20, 0);
|
|
-
|
|
|
|
|
|
+
|
|
for (Action action : notification.getActions()) {
|
|
for (Action action : notification.getActions()) {
|
|
button = new MaterialButton(notificationsActivity);
|
|
button = new MaterialButton(notificationsActivity);
|
|
|
|
|