Open Bug 1383528 Opened 7 years ago Updated 2 years ago

Support Seen Receipts for Direct Conversations.

Categories

(Chat Core :: Matrix, enhancement)

enhancement

Tracking

(Not tracked)

People

(Reporter: matrixisreal, Unassigned)

References

Details

Attachments

(1 file)

      No description provided.
Attached patch test.patchSplinter Review
Added API For all protocols to show seen Receipts.

Works fine, but need some changes in the CSS.

Implementation Details : 
I'm adding a seen receipt marker at teh bottom for the all the incoming messages if its  the lastMessage. And Deleting the marker, if its a system/outgoing message.
Drawback is the seen Receipts are shown solely on the _lastMessage 's DAta in convbrowser.xml. So if the new message is a system message, the marker is being deleted (which shouldn't be.). 

I am deleting this because, the Receipt's text is getting overlapped with the system message. Need some feedback on how to fiddle with the css.

I have added support for matrix, you can test this by joining a room, and sending m.read events from a different account in the same room.(not necessarily DM)

This is just for receiving feedback. Once we merge this with my previous patches, we shall only support seen receipts for Private Conversations.
Assignee: nobody → pavankarthikboddeda
Status: NEW → ASSIGNED
Attachment #8889149 - Flags: feedback?(fred.wang)
Attachment #8889149 - Flags: feedback?(clokep)
Comment on attachment 8889149 [details] [diff] [review]
test.patch

Review of attachment 8889149 [details] [diff] [review]:
-----------------------------------------------------------------

Interesting way to solve this. I'm still trying to wrap my head around it a bit. Do you have any screenshots of how it looks?

::: chat/modules/jsProtoHelper.jsm
@@ +503,5 @@
>  
> +  // Update Seen Receipts of a message.
> +  // Specify aPrplMessageId and aTime(ms).
> +  addSeenMessage: function (aPrplMessageId, aTime) {
> +    if (this.showSeenReceipts) {

This should have a default value (of false) in this file.

@@ +505,5 @@
> +  // Specify aPrplMessageId and aTime(ms).
> +  addSeenMessage: function (aPrplMessageId, aTime) {
> +    if (this.showSeenReceipts) {
> +      let uiConv = Services.conversations.getUIConversation(this);
> +      for (let message of uiConv.getMessages()) {

This might break our concept of separation of UI vs. prpl. Florian might have some ideas on this.

::: im/components/mintrayr/trayToolkit.h
@@ +17,5 @@
>  #include "mozIDOMWindow.h"
>  
>  #include "trayIToolkit.h"
>  #include "trayPlatform.h"
> +// #include "nsXPCOMStrings.h"

This change seems unrelated, but I think qheaden provided this patch in bug 1377373. Looks like that just needs to be checked in, I'll try to do that today.
Attachment #8889149 - Flags: feedback?(clokep) → feedback+
Depends on: 1377373
I'm removing feedback request until Patrick's comments are addressed. I guess you can rebase your patch after bug 1377373
Attachment #8889149 - Flags: feedback?(fred.wang)
Summary: Add Support for Seen Receipts. → Support Seen Receipts for Direct Conversations.
Depends on: 1394397
Assignee: pavankarthikboddeda → nobody
Status: ASSIGNED → NEW
See Also: → 1701212
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: