Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add register dialog to separate login/register #12185

Merged
merged 4 commits into from
Jun 5, 2022

Conversation

rubenwardy
Copy link
Member

@rubenwardy rubenwardy commented Apr 8, 2022

Fixes #8138

New users find Minetest's account system confusing. This change moves username/password to a new dialog, with login and register buttons added to the Join Game tab.

The old registration confirmation dialog is removed in favour of the new dialog. Instead of disabling register confirmation, users can completely disable split login/register using enable_split_login_register = false

image
image
image
image

To do

  • Move delete favourite button to a better location
  • Error messages on register from login, and login from register
  • What to do when connecting to localhost?

How to test

  • Register:
    • Clear minetest.conf. Click register, confirm name field is empty and focused.
    • Fill in information, connect. Confirm server is marked as favourite.
    • Attempt to register on another server, confirm that name is remembered and password is focused
    • Test behaviour when passwords do not match
  • Login:
    • Test correct log-in
    • Test attempt to register
    • Test incorrect password
  • Test enable_split_login_register = false behaves as master, but without the register confirmation dialog

@rubenwardy rubenwardy added Roadmap The change matches an item on the current roadmap Feature ✨ PRs that add or enhance a feature @ Mainmenu labels Apr 8, 2022
@rubenwardy rubenwardy changed the title Add link to web version of lua_api.txt Separate register and login Apr 8, 2022
@erlehmann

This comment was marked as outdated.

@rubenwardy rubenwardy changed the title Separate register and login Add login/register dialog to separate register and login Apr 8, 2022
@sfan5 sfan5 added the WIP label Apr 14, 2022
@rubenwardy rubenwardy added the Action / change needed Code still needs changes (PR) / more information requested (Issues) label Apr 24, 2022
@rubenwardy rubenwardy force-pushed the split-login branch 2 times, most recently from 22244ab to 8ea7ffd Compare April 25, 2022 16:39
@rubenwardy rubenwardy removed WIP Action / change needed Code still needs changes (PR) / more information requested (Issues) labels Apr 25, 2022
@rubenwardy rubenwardy requested review from sfan5 and v-rob May 8, 2022 00:24
@rubenwardy rubenwardy changed the title Add login/register dialog to separate register and login Add register dialog to separate login/register May 8, 2022
@sfan5
Copy link
Member

sfan5 commented May 8, 2022

Concept: Sounds good, doesn't add an extra step to log in as existing user.

UI:

  • Should be no gap between Name + Password
  • Blue text vaguely suggests that it is clickable but why is Register not a button?
  • It becomes impossible to unfavorite a server 💀

Text:

  • "Name not registered" maybe add something like "If you want to join this server for the first time click on 'Register'"
  • "Join example.com" -> "Joining example.com:"

Code: didn't look yet

@rubenwardy
Copy link
Member Author

rubenwardy commented May 8, 2022

Blue text vaguely suggests that it is clickable but why is Register not a button?

This was something I was experimenting with. The idea is to indicate that it's a navigation rather than an action, as this is usually the difference between links and buttons. This isn't done anywhere else though, and looks out of place, so I'll revert it to a button

It becomes impossible to unfavorite a server skull

See the favourites star next to "Server description"

@sfan5
Copy link
Member

sfan5 commented May 8, 2022

See the favourites star next to "Server description"

It needs to actually look like a button for that to be apparent to users.
Also here's an icon suggestion:
grafik

@rubenwardy
Copy link
Member Author

Done

image

@sfan5 sfan5 added the Rebase needed The PR needs to be rebased by its author label May 26, 2022
Copy link
Member

@sfan5 sfan5 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works other than that.

builtin/mainmenu/tab_online.lua Outdated Show resolved Hide resolved
builtin/mainmenu/dlg_register.lua Outdated Show resolved Hide resolved
builtin/mainmenu/dlg_register.lua Outdated Show resolved Hide resolved
builtin/mainmenu/dlg_register.lua Outdated Show resolved Hide resolved
@rubenwardy rubenwardy removed the Rebase needed The PR needs to be rebased by its author label May 27, 2022
@rubenwardy rubenwardy added the Action / change needed Code still needs changes (PR) / more information requested (Issues) label May 27, 2022
@rubenwardy
Copy link
Member Author

image

@rubenwardy rubenwardy removed the Action / change needed Code still needs changes (PR) / more information requested (Issues) label May 27, 2022
@sfan5
Copy link
Member

sfan5 commented May 27, 2022

Maybe not that bright but sure.
I was actually thinking of gray box and keeping the text orange, but that's just a spontaneous idea.

@Zughy
Copy link
Member

Zughy commented May 27, 2022

@sfan5 if it were brighter, people would struggle reading the (white) text. If it were gray, it'd resemble an input field. I think this choice is a nice compromise between readability and UX (also considering the whole meh default aspect of formspecs)

Copy link
Member

@SmallJoker SmallJoker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

--> Icon suggestion: server_favorite_delete greytone + 1 simple stroke to highlight the deletion aspect.

enable_split_login_register = true:

☑️ Register: empty password + "disallow_empty_password=true" -> "Protocol error"
☑️ Register: normal password
☑️ Login: unknown account -> "Protocol error"
☑️ Login: correct password
☑️ Login: wrong password -> "Protocol error"

enable_split_login_register = false:

☑️ New account
☑️ Login: correct password
☑️ Login: wrong password -> "Protocol error"

The PR works, but the recent error message changes are definitely not good. PR with a fix is pending (#12378).

@sfan5 sfan5 added the Action / change needed Code still needs changes (PR) / more information requested (Issues) label May 29, 2022
New users find Minetest's account system confusing.
This change moves username/password to a new dialog,
with login and register buttons added to the Join Game
tab.

The old registration confirmation dialog is removed in
favour of the new dialog.

Fixes minetest#8138
@rubenwardy rubenwardy removed the Action / change needed Code still needs changes (PR) / more information requested (Issues) label May 29, 2022
@sfan5 sfan5 added the Action / change needed Code still needs changes (PR) / more information requested (Issues) label Jun 5, 2022
@sfan5
Copy link
Member

sfan5 commented Jun 5, 2022

As discussed on IRC the license info of the icon needs to be noted somewhere.

@sfan5 sfan5 removed the Action / change needed Code still needs changes (PR) / more information requested (Issues) label Jun 5, 2022
@sfan5 sfan5 merged commit 03d86ea into minetest:master Jun 5, 2022
@rubenwardy rubenwardy deleted the split-login branch June 5, 2022 15:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature ✨ PRs that add or enhance a feature @ Mainmenu Roadmap The change matches an item on the current roadmap >= Two approvals ✅ ✅
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Separate register and login
5 participants