UWNetworksLab / uProxy-p2p

Internet without borders
https://www.uproxy.org/
Apache License 2.0
865 stars 180 forks source link

Need UI affordance to show when friends are loading #798

Closed zahoriea closed 9 years ago

zahoriea commented 9 years ago

Loading friends can take upwards of several minutes, and right now the screen that is displayed while this is happening is: "None of your friends on Google are signed into uProxy"

This should be replaced with a loading screen instead.

image

dborkan commented 9 years ago

The problem with doing this is that we don't have a good idea of when friends are done loading. Instead we just get a slow trickle of friends, and it can take a little while before we detect another uProxy friend. Maybe we can change the wording of this to something like "Searching for friends on uProxy" - something that indicates loading but also doesn't look broken if we leave it up forever? Or maybe we could do "Searching for friends on uProxy" for the first ~15 seconds, then afterwards change it to "No uProxy contacts found, searching..."?

iislucas commented 9 years ago

We could count the number of contacts seen so far and show that, that way the user has some sense of stuff happening...?

zahoriea commented 9 years ago

I think a combination of the two suggestions would be great.

Main text: Searching for friends on uProxy Subtext: Searched through [#] contacts

Agree with Lucas that giving users some sense of stuff happening is important. Feels a bit disheartening seeing "None of your friends are on uProxy", but understanding rationally are happening in the background.

dborkan commented 9 years ago

BTW we are looking into some ways to make loading contacts faster for GTalk XMPP (https://github.com/freedomjs/freedom-social-xmpp/issues/91 - right now we are still loading all contacts, we should only load uProxy contacts). Also this is unlikely to be much of an issue for uProxy w/ Facebook where contacts load almost instantly

On Tue Feb 03 2015 at 8:05:33 PM Izzie Zahorian notifications@github.com wrote:

I think a combination of the two suggestions would be great. Searching for friends on uProxy

Searched through [#] contacts

Agree with Lucas that giving users some sense of stuff happening is important. Feels a bit disheartening seeing this, but understanding rationally are happening in the background.

[image: image] https://cloud.githubusercontent.com/assets/945845/6033128/b5fce190-abc6-11e4-9f2b-fd5e07c2f624.png

— Reply to this email directly or view it on GitHub https://github.com/uProxy/uproxy/issues/798#issuecomment-72770813.

zahoriea commented 9 years ago

Awesome. Thanks! This will be a huge improvement.

As a data point, the most recent time I loaded contacts from likeakite@gmail.com (my personal email) it took upwards of 4 minutes.

lucyhe commented 9 years ago

Would it be okay to have the progress bar above the text? That way if no contacts are found, the text changes in-place instead of shifting (minor thing I thought looked a little friendlier in testing). My preference isn't too strong, if you want to keep it the way the mock looks though.

Also, chatted with @dborkan and we're going to omit the "Searched through [#] contacts" for now because getting the # of contacts might only be possible for GTalk/XMPP and not Facebook. It also adds some unexpected complexity to the communication code (requiring batching contact count updates so as not to spam the UI, or requiring a new uProxy.Command from UI to Core)

zahoriea commented 9 years ago

SGTM. Thanks!

zahoriea commented 9 years ago

Also just wanted to note that I have not experienced the lag issue of loading contacts at all in the last couple weeks. Great progress!

lucyhe commented 9 years ago

Actually I just needed to move the text further down (originally avoided that so I could keep spacing between the three items equal, but realize that's not necessary...):

image