tomer8007 / whatsapp-web-incognito

A Chrome extension that disables read receipts and presence updates on WhatsApp Web
MIT License
313 stars 74 forks source link

Add support for saving of deleted messages #47

Closed Tkaixiang closed 2 years ago

Tkaixiang commented 2 years ago

Heyo, a friend recently requested that I could add the ability to save & restore messages to this amazing extension 😄

When a delete packet is received and blocked, it then searches through the chat props to find the msg details and saves it into IndexedDB. When scrolling through a chat, it searches for "Message has been deleted" chat bubbles and replaces them with the appropraite deleted message if its able to.

All these is enabled by an additional option in the Settings menu.

This is my first public pull request so feel free to correct anything, thanks 😃

tomer8007 commented 2 years ago

Hi, Thank you for implementing this feature, it looks great. I'll do more extensive testing to this in about a week and hopefully it'll get merged in some way.

Tkaixiang commented 2 years ago

Sure, thank you!

tomer8007 commented 2 years ago

Could you please revert the space changes (e.g curly braces locations) you made so that I can more clearly see the real changes?

Tkaixiang commented 2 years ago

Hi, I have managed to fix some of the curly braces location changes but quite a lot still remain :/. As for the whitespace, would it be possible to use the Ignore Whitespace Changes option in the github diff view? Thanks a lot!

tomer8007 commented 2 years ago

When running this and receiving a REVOKE command for a message, the message is not saved in the IndexedDB for me and I'm getting the following excpetion:

image

Also the GUI checkbox is not shown correctly for me.

image image

Tkaixiang commented 2 years ago

Hi, I have fixed the Uncaught error which occurs when saving deleted msgs from private msgs. Im unfortunately unable to reproduce the GUI checkbox issue? Reloading the page seems to still show the checkbox as ticked

tomer8007 commented 2 years ago

Hi, I have fixed the Uncaught error which occurs when saving deleted msgs from private msgs. Im unfortunately unable to reproduce the GUI checkbox issue? Reloading the page seems to still show the checkbox as ticked

Yes, so now it kind of works but the font is not looking good: image After another look the checkbox GUI issue is probably my bad, I will try to fix it later. But really as you said when I untick your checkbox, after reloading the page it is still checked, which is not supposed to happen.

P.S Wouldn't it be better if we'd replace the messages received in the network rather than modifying the text manually?

Tkaixiang commented 2 years ago

Ohh yeah the font looks really bad in light mode, my bad, I only checked dark mode I now get what you mean by the checkbox GUI issue and have fixed it xD

I agree it would definitely be a lot better if we replace the message but I wasn't really sure on how to do so since the Manipulate Received Node function did not seem to really be in use?

tomer8007 commented 2 years ago

OK, I think another improvement that can be done is to make the "Restored message" text in gray instead of black:

image

I wasn't really sure on how to do so since the Manipulate Received Node function did not seem to really be in use?

Yes, but you can un-comment it and see if it works for you, I think it should work. If you see it's too complicated we'll stick with your current text modification.

tomer8007 commented 2 years ago

P.S do you think the safety timeout feature is redundant? I'm condidering to remove it so that there will be more GUI space.

Tkaixiang commented 2 years ago

P.S do you think the safety timeout feature is redundant? I'm condidering to remove it so that there will be more GUI space.

Hi, I feel the safety timeout feature is still pretty important as it is nice having a feature where read receipts are auto sent after a while with an option to cancel instead of having to click send every time manually

Yes, but you can un-comment it and see if it works for you, I think it should work. If you see it's too complicated we'll stick with your current text modification.

I did try uncommenting it and trying stuff out but couldn't really figure it out and hence I resorted to this text modification xD

P.S thanks for the suggetions so far

tomer8007 commented 2 years ago

Also I don't want this popup to take up too much vertical space, let's try to make the subtitle one line. image Apart from that I think everything looks correct. I'd add semicolons to the end of your lines too.

Tkaixiang commented 2 years ago

Also I don't want this popup to take up too much vertical space, let's try to make the subtitle one line. image Apart from that I think everything looks correct. I'd add semicolons to the end of your lines too.

I have added these changes ^^

tomer8007 commented 2 years ago

Now the text is looking great. But after f291011aa3df60629bc628f8b028340bf20c6df9 the line is really long. Let's just go for "Saves deleted messages and restores them later"

Tkaixiang commented 2 years ago

But after f291011 the line is really long. Let's just go for "Saves deleted messages and restores them later"

I have changed it to that

tomer8007 commented 2 years ago

Cool.

Tkaixiang commented 2 years ago

Thanks :)