boxdot / gurk-rs

Signal Messenger client for terminal
GNU Affero General Public License v3.0
458 stars 33 forks source link

No content on the first run #173

Open lachmanfrantisek opened 1 year ago

lachmanfrantisek commented 1 year ago

After linking the device there are four empty boxes (Search/Channels/Messages/Input) on the screen without any content. It took me a while to realise that it's not an issue but a lack of messages.

Would it be possible to provide confirmation after the account was successfully verified?

Maybe, as a welcome screen showing basic info/shortcuts? Or, use a placeholder text in case of no messages/channels?

Alternatively, would it be possible to get older messages so I can see the gurk is working by seeing familiar content?

Thank you in advance!

mucinoab commented 1 year ago

I think the simplest solution is to trigger a notification that provides the confirmation and maybe a hint about the help page (F1).

Also I think that is impossible to get older messages.

boxdot commented 1 year ago

This is definitely an unfortunate paper cut. As @mucinoab already pointed out, there is no way to get messages from the past in Signal. This is by design of their encryption protocol.

If the app has started after scanning the QR code, this means that pairing was successful. Also we initial a contact list sync, but this one might take some time (or even fail). So, I guess the best approach would be to show a message (maybe a modal dialog), pointing out that after the first incoming message or contact sync (if there is one in progress), the app can be used.

We can take a look how Signal Desktop is actually doing it.

gferon commented 1 year ago

We can take a look how Signal Desktop is actually doing it.

It shows an indefinite progress bar with a message "syncing contacts" while waiting for the first few syncing messages to arrive after linking.

Geronymos commented 1 year ago

Maybe gurk could load the message history from a backup file done by the official app at start? The project https://github.com/pajowu/signal-backup-decode can decode backups, so there just needs to be a method to import the decoded backup. I created a new issue for that https://github.com/boxdot/gurk-rs/issues/181

freekvh commented 1 year ago

I think that just displaying that there is no content because only new messages will appear would be helpful to avoid those minutes of confusion (but tbh any newly linked device shows up "empty", so eventually I realized). Other than that, I really love gurk, great work!