nurupo / ProjectTox-Qt-GUI

A cross-platform front end for ProjectTox Core library, written in C++11 with use of Qt5
GNU General Public License v3.0
341 stars 116 forks source link

not possible to see your own User ID #93

Closed looph closed 10 years ago

looph commented 10 years ago

Hi guys, this is my first issue for ProjectTox-Qt-GUI, so I hope you will have patience with me in case I point out a non-issue or something I've plainly just misunderstood.

I think there is no way to identify my own User ID via the gui. I can do it in toxic by /myid command, so shouldn't it be available in this gui as well?.

Possibly by hoovering, just like you can do over a friend in the friends list. But perhaps also in the clickdown menu on the my user icon?. So you can copy paste it to the clipboard.

I'd like to make a patch for this myself if I may,

cheers! /looph

nurupo commented 10 years ago

There is a copy button right next to username

zdfzsdf

looph commented 10 years ago

When I hover over that button it says "Copy Friend Adress". IMHO a bit misleading. Perhaps it should say "Copy My ID" ?. And if I hover over the green user icon, a "My ID: 567653568568.." should appear like it does when I hover over the friends in the friends list.

nurupo commented 10 years ago

I can't rename Friend Address to User ID or My ID. Friend Addresses and User IDs are different things (although Friend Address contains User ID). You could even have noticed that they are of different length.

User ID is just an unique identifier which is used internally by the toxcore and users can't really do much with it, it's not very useful expect differentiating friends, from user's perspective.

Friend Addresses are used to friend. You give your Friend Address to someone so that certain someone could friend you. You can't friend by using User ID. Say, if you have Alice in your friend list, you copy her User ID and give it to Bob so that he could send her a friend request -- that won't work. Bob should use her Friend Address if he wants to friend her. Moreover, you might not even be able to help Bob because you might not know Alice's Friend Address, even though you used it to friend her at one point. Only Alice knows her Friend Address, besides people she shared it with. There is no way to query a client application for its Friend Address except asking its user, Alice, directly. Also, Alice can change her Friend Address at any time, in order to prevent friend request spam, which might be pretty annoying, so the previous Friend Address would become invalid.

JamoBox commented 10 years ago

'Copy My Friend Address'?

looph commented 10 years ago

I see. toxic got me confused, it uses a slightly different terminology:

in toxic it looks like this: /add [id] [msg] : Add friend with optional message /myid : Print your ID

it should in fact look like this?: /add [fa] [msg] /myfa : Print your Friend Address

(I hope I am not too far off here) it adds to the confusion that I couldn't find any common terminology on the http://wiki.tox.im/ about this. Only in the ProjectTox-Core code/toxcore/Messenger.h:

/* Format: [client_id (32 bytes)][nospam number (4 bytes)][checksum (2 bytes)] *

/* Add a friend.

Anyway, "Copy my Friend Address" sounds good to me. Or "Copy my Friend Address to Clipboard".

nurupo commented 10 years ago

in toxic it looks like this:

At least it's consistent, so you an't actually blame it. If toxic doesn't expose Client IDs anywhere to the user, it might as well use short and precise "ID" instead of some "Friend Address". But yes, there is no set rule as to how name things. I myself use "User ID" instead of toxcore's canonical "Client ID".

I'm actually surprised that of all things things, like "Why my friend list and user id reset every time I restart the client?" or "Why do smiles load only when I open Settings?" or "Why are messages glitchy and consume so much memory?" or "How do I run this on IPv6?" or "Wait, there are no group chats?!" or "Why there are no sound notifications when you obviously have sound files in your repo?" or ... (well, I guess I will stop here), you asked such a thing : )

JamoBox commented 10 years ago

Perhaps he saw a problem and wanted to the repository owner's attention? The idea of issue reporting is to show awareness of issues, so discouraging him pointing out features that could possibly be quite confusing to an end user may not be the best course of action. On 29 Jan 2014 15:43, "nurupo" notifications@github.com wrote:

in toxic it looks like this:

At least it's consistent, so you an't actually blame it. If toxic doesn't expose Client IDs anywhere to the user, it might as well use short and precise "ID" instead of some "Friend Address". But yes, there is no set rule as to how name things. I myself use "User ID" instead of toxcore's canonical "Client ID".

I'm actually surprised that of all things things, like "Why my friend list and user id reset every time I restart the client?" or "Why do smiles load only when I open Settings?" or "Why are messages glitchy and consume so much memory?" or "How do I run this on IPv6?" or "Wait, there are no group chats?!" or "Why there are no sound notifications when you obviously have sound files in your repo?" or ... (well, I guess I will stop here), you asked such a thing : )

Reply to this email directly or view it on GitHubhttps://github.com/nurupo/ProjectTox-Qt-GUI/issues/93#issuecomment-33596013 .

nurupo commented 10 years ago

@JamoBox

The initial issue was the assumption that Friend Address and User ID are the same things, thus they should have same name, but you proposed to change "Copy Friend Address" to "Copy My Friend Address", which, in fact, a good clarification, but it doesn't face the initial issue. I would say it's even irrelevant to the issue.

Also, I'm not

discouraging him pointing out features that could possibly be quite confusing

, I just said that the issue took me by surprise, which is a good thing.

looph commented 10 years ago

Me being new with tox, the probability that I point things out as "room for improvement", when in fact they may just be misunderstandings from my point is pretty high. I hope people have patience with that. In this case I just didn't get what Friend Address was. It just was impossible for me to figure out that Friend Address actually was an address to me, and not to my friends.

Anyway, I am here to contribute first and foremost, not to speak out opinions.

nurupo commented 10 years ago

Should I close the issue?

Btw, clarified copy friend address tooltip text https://github.com/nurupo/ProjectTox-Qt-GUI/commit/46fb31f6c0f945d154affe94b8e124f6f904138b since everyone seemed to suggest that.

Schlumpf commented 10 years ago

There are other terminology problems in code, too. For example is "username" sometimes the name of me, the user, and sometimes the name of the current chatting friend. (ChatPageWidget) It would be fine if we could find a consistent terminology for the whole Tox project.

nurupo commented 10 years ago

Username is a name of a user in general. If you run a client -- you are user. People on your friend list are users too. Current chatting friend is also a user, isn't he/she? I just didn't bother much differentiating between who is who and gave a broad "username" variable name, scope (my username or friend's username) of which depends on the context it's being used in, but always contains someone's username, as the variable names suggests.

We can rename it to myUsername, friendUsername or something, and do the same with status (myStatus, friendStatus) and other variables, if you find it being wroth doing. It would add some clarity to the code after all.

Also, I just fund someone using plain name : )