Closed iakat closed 6 years ago
This seems like a bug to me.
Connect - Add New on latest snapshot (1256) seems to have my last added server's configuration.
Is it supposed to be empty?
No, that happens to me, too.
However, I don't think it should.
Heh, I always thought it was a (not so useful) feature.
I can't reproduce this anymore?
Does it still happen for you? @bendem @chauffer
I can still reproduce on current master
Actually, what happens here is seemingly that if you have a mumble:// URL in your pasteboard, it will auto-fill the dialog.
So, not the last server you added, but what's in your pasteboard.
Agree?
Or, if not, please provide steps to reproduce. :-)
Well, I don't have a mumble url in my clipboard. I just open the server list, click on "Add New" and the dialog that opens is already populated.
More info on this, the "add server" dialog is only fully populated if I'm connected to a server (with the information of that server). If I'm not connected, only the port is populated with the port of one of my saved servers (always the same but I could not figure out the logic).
EDIT: the port field is populated with 64738
which only one of my saved servers is using. Just realized it's the default port. So when disconnected, the "Add server" dialog works as expected.
EDIT2: this is on 2f88605
EDIT3: this is the code concerned https://github.com/mumble-voip/mumble/blob/084da530767991605b045a6183a3857f14b1b502/src/mumble/ConnectDialog.cpp#L1052
@mkrautz So is this a bug? From the code it looks like intended behavior.
It is intended behavior. The idea was that if you joined a server via a mumble:// url you are quite likely to want to add it to your favourites. Hence the pre-fill for convinience.
OK, so the connect dialog has the following behaviors:
Hmmm....
Yeah. Pretty much optimized for "if you are handed/clicked a url and then want to add the server". Iirc I assumed that would be the usual cases for when you add a server (if the admin knows of mumble:// urls that is ;) ).
I do remember the functionality being added, but as a user, it's surprising.
Perhaps a QMessageBox asking you whether you want to auto-fill the currently connected server (if connected via mumble://), or auto-fill from the clipboard (if a mumble:// URL is in the clipboard)?
What about this?
I find solving UX problems by adding dialogs is generally not the right solution.
The problem with the feature as-is is that it was indistinguishable from a bug to me.
I'm fine with auto-filling as long as the user is made aware that it has happened. Perhaps a small area near the top that informs the user that the dialog has been auto-filled from the clipboard or from the currently-connected server.
@bendem I agree that adding dialogs is not the correct solution. However, in QtWidgets, that's often the most straight forward solution. We're often blocked on things due to it being hard to express the UI we want.
For example, the local user volume feature was blocked for a long time. It was initially a slider in a sub-menu of a user's context menu.
In the end, it was converted to a dialog.
I wanted the other approach, but it stalled.
Dialogs were easier.
True, the lack of manpower is always a problem. So easier is better from a development POV
My friend and I were discussing this yesterday. Based upon the ideas we tossed back and forth, we spoke about changing some things as follows:
We had also discussed ideas for a prompt after connecting. However that could also cause issues with too many prompts, especially after connecting to a server not using an SSL certificate. Also, if their first use it would mean Audio Wizard, Adding a server, no SSL prompt if it applies, then "Add to Favorites?" which would be overwhelming the user.
We both agreed that it would be a bad idea that could be abused by others to have something like...
mumble://exampleserver.com?title=MyAwesomeServer&version=1.2.0&addfavorite=yes
Not having a popup but a info-bar style message about the auto-fill that it did (maybe with a reset button to undo what it did) might work decently.
I really don't want additional dialogs, popups or additional potentially confusing ui elements in there if we can help it at all.
If I'm connected to a server and I need to add another server, I really don't want to have to hit reset every time I need to add a new server. Those fields should be blank by default, in my opinion.
@Tarun80 We could prevent pre-fill if the server is already a favorite.
Removing the 1.3.0 milestone since this is not a bug.
IMO the dialog fields should be empty, and filling it with the current server/clipboard data should be an explicit action.
Additional buttons would be an option, greyed out if not available. UX wise better would be checking for available data and suggesting to the user to fill it in. This way the text could elaborate on the suggestion.
Imho we should simply optimize for the common case. I still think that is trying to add the server you are already connected to. Be it via a mumble:// url or the public list. In both cases I think the prefill makes it a lot easier for the user to add the server.
If we simply prevent the auto-fill if the server is already a favourite wouldn't that be sufficient? No additional buttons, bars or whatnot required.
This should be resolved by #3182 once it lands. It offers filling the dialog data with clipboard data if available, and if not with the current connected to server data if connected.
Resolved by #3182.
Right now it seems to keep the last added server's config; which isn't ideal since the default port is hard to remember (64738) yet it's configured on most servers.