-
Notifications
You must be signed in to change notification settings - Fork 2.3k
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
Cleanup of settings (amongst other things) #715
Conversation
Really nice! I also like the ideas of removing the extra stylesheets and the token setting. |
98400d7 seems to fix an issue where the 'connecting'-transition screen appeared in front of the password dialog. |
It always did. It's just that the input field pushed out the width of the dialog so that we didn't see any line breaks with the current elements. A general |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would like a chance to check this visually, but I do have a concern about removing the token setting.
@@ -180,7 +180,6 @@ var UI; | |||
UI.initSetting('view_only', false); | |||
UI.initSetting('path', 'websockify'); | |||
UI.initSetting('repeaterID', ''); | |||
UI.initSetting('token', ''); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm... does this prevent token from working as a URL param? If so, it should still be in there. If we somehow broke passing a token as part of the URL at some point, then we need to fix that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah, right. I see now where it was used. However seeing that I have to object to its inclusion. Users who want a special websocket path should merely specify a different path
. What makes this token so special?
Edit: To clarify, people currently using https://example.com/vnc.html&token=foo
should use https://example.com/vnc.html&path=websockify%26token%3Dfoo
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We currently have deployed noVNC on a bastion host, with a local change that makes host and port hidden inputs, and renames the label of the token. Tokens map 1:1 to available VNC ports of internal hosts (via websockify configuration file that lists them all), so that we can run one websockify for all of them.
While I agree that this setting is confusing to users, and should not be exposed by default, keeping the token as a hidden input (so that we can turn it into a regular input and change the label locally) would help us.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can't you just change path
in that case? That's what we do for ThinLinc and it has worked out fine.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should have a way to add in URL-only parameters. We should discuss more in a follow-up PR. For now, this is fine.
a0357be
to
6100e81
Compare
As far as the discussion regarding token goes, I don't understand why it was added in the first place (back in 2012: 4c75210)? Isn't this a Nova specific thing? |
6100e81
to
832bfd3
Compare
I've fixed the text and button so that it scales for narrow screens now. |
Looks good! Only the token discussion remaining then imo. |
kind-of-not-really? It's the only method of doing target selection when using websockify (which many people use noVNC with), so it's a convenience factor for users of websockify. #537 and #536 are the relevant recent discussion (people seem to expect to be able to pass token in the path). |
As I mentioned, you can just modify the
None of these mention what's so special about |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I changed my mind. I think rgb(40, 40, 40) actually works better than a pitch black background. It is still dark an out of the way, but still has enough contrast to see when a completely black session isn't covering the entire window.
Can we get this moving forward? What needs to be done to resolve the situation? |
Good to merge in my opinion |
Anyone with basic knowledge of CSS will easily figure out how to customise the appearance of the UI, so remove the burden of having to maintain these extra style sheets.
It was easy to confuse them as being VNC settings, so keep them all under one group.
It's been standardised for quite some time, so remove the extra noise in the CSS.
It only contained a password field, which might not be needed, and is handled by a separate dialog if it is.
It's generally the only thing the user needs to click on, so make sure it clearly stands out.
We have enough layers now that we need to have some system for this. E.g. make sure that dialogs during connect show up in front of the blocking transition layer.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 👍
@@ -180,7 +180,6 @@ var UI; | |||
UI.initSetting('view_only', false); | |||
UI.initSetting('path', 'websockify'); | |||
UI.initSetting('repeaterID', ''); | |||
UI.initSetting('token', ''); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should have a way to add in URL-only parameters. We should discuss more in a follow-up PR. For now, this is fine.
This does various cleanups for things that have annoyed me for a while. :)
The primary focus is the settings and connect dialogs, which I felt were needlessly complex for most users.
Give it a try and see what you think.