-
Notifications
You must be signed in to change notification settings - Fork 10
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
Warn that settings changed while node is running will not take into affect until the next startup #43
Comments
Here's a mock-up. I would not use red, seems too much like an error. I think it's also important that the copy makes it clear that it's about the changes the user has just made. It should not be passive or indirect ("...this change would require...", "Changes to settings..."). A slightly unrelated question here. Should there be 3 options for the mode: Light, Dark, and Automatic (= based on OS settings)? |
A few suggestions:
For mobile: what does the restart requirement mean? Most users rarely/never quit an app on their phone. Can we relaunch the app for the user? Happy to do mockups as needed... |
Good suggestions. Let's start with the logic.
|
In short: any changes that touch Bitcoin :-) |
If I recollect correctly, @jarolrod said today that restart is possible but that would require some reworking of the codebase. So for now, we design for & communicate manual restart. Please correct if this is inaccurate in any way. |
While we're at it, let's design both versions, and keep the one we want eventually as a future issue to tackle. That way we don't have to come back to thinking through this specific issue months down the road. |
|
@GBKS do we want to go with @yashrajd suggestion here? If so can this go in the main design file? I'm working on a rework of optionsmodel to be able to take into account:
Will look something like this: |
Hi @GBKS, it's great to see the great progress Jarol & co. made on this... would love to see it get done. |
In conversation with @pablomartin4btc around the proxy screen here, I proposed a solution that I also prototyped here.
Generally, especially on mobile, it is pretty common in many applications that you don't need to have an explicit save button. But sometimes you do, like here. What do you think? |
@GBKS, I do agree with points, tested them all on your prototype (except ofc for the restart, we can discuss it later). Tested invalid IP address format on prototype -> screenshot ("Done" button is disabled - it doesn't allow to save).
Tested correct IP address format on prototype -> screenshot ("Done" button is enabled - it allows to save).Many thanks! (P.S.: small observation, the "back" button returns to the "Settings" page, not the one strictly before which is "Connection Settings" page.) |
Thanks for testing. I'd keep the notification lit up. You still have unsaved changes, even if they are not acceptable. |
Love these prototypes <3 one update I'll suggest is that if (for eg) IP/port field is left empty after enabling the toggle, it should trigger an error message saying something like "Enter the proxy address in the IP:port format"
This is a new for me, where the message is shown even if the user hasn't made any change. Qt and our previous approach (see mockups above) is to only show the message once a change is made, think I might prefer that.
I've been burnt by this pattern in macOS electron apps where you must click on Save after editing something to apply changes and if you forget to do that you lose changes. That's not something we're used to nowadays (word processors, email clients, most mobile apps auto-save) as you mentioned too. If we must use this pattern, how about showing a modal with "Save" and "Discard" buttons when the user has made changes but clicks on Back?
Perhaps "Done" can be changed to something like "Save & Restart"?
The problem is the user might not know/understand which pattern is applicable when, or simply forget to click on Save/Done
|
This seems like it should be done when trying to save. Having error messages all the time for empty fields is a bit annoying.
Logic is that this screen has a unique interaction model that we want to be explicit about.
Good idea.
Too long on mobile. We already have a very clear and explicit message at the top of the screen.
Not a big deal if they do. This seems overly cautious. There are no funds at risk here. It's 1-2 input fields, so not much effort. We're very explicit with the message at the top. Overall, considering this issue has been open for a year now, I'd really like us to roll with this and focus on getting the implementation right. If someone wants to propose a different interaction model, I'd ask you to take on this whole design task altogether and make it happen. Sorry if that sounds snappy, but this is interaction model works, and we're dealing with a nested settings screen that is not something 95% of users will have crucial interactions with. |
Brings the mock-ups in line with the recent work in issues and PRs. For max upload limits: #8 For the proxy screen: #43 bitcoin-core/gui-qml#438
Brings the mock-ups in line with the recent work in issues and PRs. For max upload limits: #8 For the proxy screen: #43 bitcoin-core/gui-qml#438
When a user makes changes to a setting after onboarding and when the node is running, those settings will not take into affect until the next node restart. The UI should provide a clear warning about this to the user.
In the Qt Widgets GUI this is accomplished like so, notice the red warning at the bottom of the screenshot:
I think we could do something like the following in the screenshots below. Whenever a setting is changed, the main node setting page will display a warning at the bottom. And the gear icon in the setting screen can show a warning icon.
The text was updated successfully, but these errors were encountered: