We don't want to assign a path directly to url.pathname that contains a
search query, since this causes '?' at the beginning of the query to be
URL-encoded to '%3F'. Instead use URL() to parse the path for us.
Some new CSS incorrectly give errors from validator.w3.org. Issues were
opened in that repo, so hopefully we can remove these exceptions soon.
I searched for alternative validators, but couldn't find a different one
that had a simple API like this one.
In order to reliably detect & handle these exceptions we unfortunately
need to make the validator output parsing quite a bit more complicated.
Both labels and inputs protruded outside the panel on for example a
phone in portrait mode. This commit fixes that by allowing wrapping and
setting a max-width.
Since the --input-xpadding variable is now used in two different CSS
files, it was moved to constants.css.
This is a type of select box that doesn't appear like a button, but more
like a textarea that lists options. It is not currently used, but added
for completeness.
Modern interfaces are less cramped, this makes noVNC feel more up to
date.
Note that this required some adjustments on noVNC_headings and
noVNC_connect_button since the text now takes up more height than the
images.
Note that the :disabled selector only works on inputs, buttons and the
like.
The current method of applying .noVNC_disabled to the settings
labels is still used. This support is added mostly for completeness.
Note that when a label wraps an input, only the label should have the
disabled attribute. Otherwise the effect applies twice to the input.
By applying the rule to the button within the input, we effectively
applied the opacity twice - making the button almost disappear. Applying
the opacity to the input element is enough.
Gives a more clean look that fits well with the new checkboxes and
radios. The old border was mostly used to contribute to a 3d-effect,
that was used for :active. That :active-styling has been replaced by
activation levels.
Instead of having two different types of effects (hover had a different
color, and active had a 3d-effect simulating a pressed button), we now
have an increasing activation-level. That means the button goes a bit
dark for hover, and then even darker when pressed.
There is also a variant that goes lighter for each activation level,
that can be used when the initial color is dark.
With this change, we can get rid of special :hover and :active styling
for the connect button and the control bar buttons. We can use the same
activation level principle for all buttons.