diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 94ac6f8..1b377d5 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -7,7 +7,7 @@ about: Create a report to help us improve **Describe the bug** A clear and concise description of what the bug is. -**To Reproduce** +**To reproduce** Steps to reproduce the behavior: 1. Go to '...' 2. Click on '....' diff --git a/LICENSE.txt b/LICENSE.txt index 37efdcd..0581c11 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,4 +1,4 @@ -noVNC is Copyright (C) 2022 The noVNC Authors +noVNC is Copyright (C) 2022 The noVNC authors (./AUTHORS) The noVNC core library files are licensed under the MPL 2.0 (Mozilla diff --git a/README.md b/README.md index 794ff60..c497ad2 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -## noVNC: HTML VNC Client Library and Application +## noVNC: HTML VNC client library and application [![Test Status](https://github.com/novnc/noVNC/workflows/Test/badge.svg)](https://github.com/novnc/noVNC/actions?query=workflow%3ATest) [![Lint Status](https://github.com/novnc/noVNC/workflows/Lint/badge.svg)](https://github.com/novnc/noVNC/actions?query=workflow%3ALint) @@ -14,19 +14,19 @@ Many companies, projects and products have integrated noVNC including [OpenNebula](http://opennebula.org/), [LibVNCServer](http://libvncserver.sourceforge.net), and [ThinLinc](https://cendio.com/thinlinc). See -[the Projects and Companies wiki page](https://github.com/novnc/noVNC/wiki/Projects-and-companies-using-noVNC) +[the Projects and companies wiki page](https://github.com/novnc/noVNC/wiki/Projects-and-companies-using-noVNC) for a more complete list with additional info and links. -### Table of Contents +### Table of contents - [News/help/contact](#newshelpcontact) - [Features](#features) - [Screenshots](#screenshots) -- [Browser Requirements](#browser-requirements) -- [Server Requirements](#server-requirements) -- [Quick Start](#quick-start) -- [Installation from Snap Package](#installation-from-snap-package) -- [Integration and Deployment](#integration-and-deployment) +- [Browser requirements](#browser-requirements) +- [Server requirements](#server-requirements) +- [Quick start](#quick-start) +- [Installation from snap package](#installation-from-snap-package) +- [Integration and deployment](#integration-and-deployment) - [Authors/Contributors](#authorscontributors) ### News/help/contact @@ -86,7 +86,7 @@ See more screenshots [here](http://novnc.com/screenshots.html). -### Browser Requirements +### Browser requirements noVNC uses many modern web technologies so a formal requirement list is not available. However these are the minimum versions we are currently @@ -95,7 +95,7 @@ aware of: * Chrome 89, Firefox 89, Safari 15, Opera 75, Edge 89 -### Server Requirements +### Server requirements noVNC follows the standard VNC protocol, but unlike other VNC clients it does require WebSockets support. Many servers include support (e.g. @@ -107,7 +107,7 @@ use a WebSockets to TCP socket proxy. noVNC has a sister project proxy. -### Quick Start +### Quick start * Use the `novnc_proxy` script to automatically download and start websockify, which includes a mini-webserver and the WebSockets proxy. The `--vnc` option is @@ -124,23 +124,23 @@ proxy. script. Hit the Connect button, enter a password if the VNC server has one configured, and enjoy! -### Installation from Snap Package -Running the command below will install the latest release of noVNC from Snap: +### Installation from snap package +Running the command below will install the latest release of noVNC from snap: `sudo snap install novnc` -#### Running noVNC from Snap Directly +#### Running noVNC from snap directly -You can run the Snap-package installed novnc directly with, for example: +You can run the snap package installed novnc directly with, for example: `novnc --listen 6081 --vnc localhost:5901 # /snap/bin/novnc if /snap/bin is not in your PATH` -If you want to use certificate files, due to standard Snap confinement restrictions you need to have them in the /home/\/snap/novnc/current/ directory. If your username is jsmith an example command would be: +If you want to use certificate files, due to standard snap confinement restrictions you need to have them in the /home/\/snap/novnc/current/ directory. If your username is jsmith an example command would be: `novnc --listen 8443 --cert ~jsmith/snap/novnc/current/self.crt --key ~jsmith/snap/novnc/current/self.key --vnc ubuntu.example.com:5901` -#### Running noVNC from Snap as a Service (Daemon) -The Snap package also has the capability to run a 'novnc' service which can be +#### Running noVNC from snap as a service (daemon) +The snap package also has the capability to run a 'novnc' service which can be configured to listen on multiple ports connecting to multiple VNC servers (effectively a service runing multiple instances of novnc). Instructions (with example values): @@ -172,7 +172,7 @@ services.n6082.listen 6082 services.n6082.vnc localhost:5902 ``` -Disable a service (note that because of a limitation in Snap it's currently not +Disable a service (note that because of a limitation in snap it's currently not possible to unset config variables, setting them to blank values is the way to disable a service): @@ -189,7 +189,7 @@ services.n6082.listen services.n6082.vnc ``` -### Integration and Deployment +### Integration and deployment Please see our other documents for how to integrate noVNC in your own software, or deploying the noVNC application in production environments: @@ -212,8 +212,8 @@ that list and you think you should be, feel free to send a PR to fix that. * [Solly Ross](https://github.com/DirectXMan12) (Red Hat / OpenStack) * Notable contributions: - * UI and Icons : Pierre Ossman, Chris Gordon - * Original Logo : Michael Sersen + * UI and icons : Pierre Ossman, Chris Gordon + * Original logo : Michael Sersen * tight encoding : Michael Tinglof (Mercuri.ca) * RealVNC RSA AES authentication : USTC Vlab Team diff --git a/app/error-handler.js b/app/error-handler.js index 67b6372..5f6ffb6 100644 --- a/app/error-handler.js +++ b/app/error-handler.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/app/localization.js b/app/localization.js index 7d7e6e6..c8257fd 100644 --- a/app/localization.js +++ b/app/localization.js @@ -1,13 +1,13 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2018 The noVNC Authors + * Copyright (C) 2018 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. */ /* - * Localization Utilities + * Localization utilities */ export class Localizer { diff --git a/app/styles/base.css b/app/styles/base.css index f83ad4b..395c18e 100644 --- a/app/styles/base.css +++ b/app/styles/base.css @@ -1,6 +1,6 @@ /* * noVNC base CSS - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * noVNC is licensed under the MPL 2.0 (see LICENSE.txt) * This file is licensed under the 2-Clause BSD license (see LICENSE.txt). */ @@ -213,7 +213,7 @@ html { } /* ---------------------------------------- - * Control Bar + * Control bar * ---------------------------------------- */ @@ -629,13 +629,13 @@ html { margin-left: 1rem; } -/* Connection Controls */ +/* Connection controls */ :root:not(.noVNC_connected) #noVNC_disconnect_button { display: none; } /* ---------------------------------------- - * Status Dialog + * Status dialog * ---------------------------------------- */ @@ -701,7 +701,7 @@ html { } /* ---------------------------------------- - * Connect Dialog + * Connect dialog * ---------------------------------------- */ @@ -770,7 +770,7 @@ html { } /* ---------------------------------------- - * Server verification Dialog + * Server verification dialog * ---------------------------------------- */ @@ -787,7 +787,7 @@ html { } /* ---------------------------------------- - * Password Dialog + * Password dialog * ---------------------------------------- */ @@ -806,7 +806,7 @@ html { /* ---------------------------------------- - * Main Area + * Main area * ---------------------------------------- */ diff --git a/app/styles/input.css b/app/styles/input.css index dc345aa..911cf20 100644 --- a/app/styles/input.css +++ b/app/styles/input.css @@ -1,6 +1,6 @@ /* * noVNC general input element CSS - * Copyright (C) 2022 The noVNC Authors + * Copyright (C) 2022 The noVNC authors * noVNC is licensed under the MPL 2.0 (see LICENSE.txt) * This file is licensed under the 2-Clause BSD license (see LICENSE.txt). */ diff --git a/app/ui.js b/app/ui.js index 39d28a3..fd23c80 100644 --- a/app/ui.js +++ b/app/ui.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/app/webutil.js b/app/webutil.js index 6011442..1ecdc12 100644 --- a/app/webutil.js +++ b/app/webutil.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. @@ -27,7 +27,7 @@ export function initLogging(level) { // the url can be requested in the following way: // https://www.example.com#myqueryparam=myvalue&password=secretvalue // -// Even Mixing public and non public parameters will work: +// Even mixing public and non public parameters will work: // https://www.example.com?nonsecretparam=example.com#password=secretvalue export function getQueryVar(name, defVal) { "use strict"; diff --git a/core/crypto/md5.js b/core/crypto/md5.js index fcfefff..b01ba6f 100644 --- a/core/crypto/md5.js +++ b/core/crypto/md5.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2021 The noVNC Authors + * Copyright (C) 2021 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/decoders/copyrect.js b/core/decoders/copyrect.js index 9e6391a..3c7e0d5 100644 --- a/core/decoders/copyrect.js +++ b/core/decoders/copyrect.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/decoders/h264.js b/core/decoders/h264.js index 2587d61..a508b67 100644 --- a/core/decoders/h264.js +++ b/core/decoders/h264.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2024 The noVNC Authors + * Copyright (C) 2024 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/decoders/hextile.js b/core/decoders/hextile.js index cc33e0e..db0792b 100644 --- a/core/decoders/hextile.js +++ b/core/decoders/hextile.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/decoders/jpeg.js b/core/decoders/jpeg.js index feb2aeb..5fd1e05 100644 --- a/core/decoders/jpeg.js +++ b/core/decoders/jpeg.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/decoders/raw.js b/core/decoders/raw.js index 3c16614..bd5d204 100644 --- a/core/decoders/raw.js +++ b/core/decoders/raw.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/decoders/rre.js b/core/decoders/rre.js index 6219369..a5fea7c 100644 --- a/core/decoders/rre.js +++ b/core/decoders/rre.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/decoders/tight.js b/core/decoders/tight.js index 8bc977a..1a145d4 100644 --- a/core/decoders/tight.js +++ b/core/decoders/tight.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * (c) 2012 Michael Tinglof, Joe Balaz, Les Piech (Mercuri.ca) * Licensed under MPL 2.0 (see LICENSE.txt) * diff --git a/core/decoders/tightpng.js b/core/decoders/tightpng.js index 82f492d..cf1df6b 100644 --- a/core/decoders/tightpng.js +++ b/core/decoders/tightpng.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/decoders/zlib.js b/core/decoders/zlib.js index d1e5d5c..a876908 100644 --- a/core/decoders/zlib.js +++ b/core/decoders/zlib.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2024 The noVNC Authors + * Copyright (C) 2024 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/decoders/zrle.js b/core/decoders/zrle.js index 49128e7..ef1726f 100644 --- a/core/decoders/zrle.js +++ b/core/decoders/zrle.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2021 The noVNC Authors + * Copyright (C) 2021 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/deflator.js b/core/deflator.js index 22f6770..af24009 100644 --- a/core/deflator.js +++ b/core/deflator.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2020 The noVNC Authors + * Copyright (C) 2020 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/display.js b/core/display.js index bc0bf21..ef42ac6 100644 --- a/core/display.js +++ b/core/display.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/encodings.js b/core/encodings.js index f037510..bf25ac9 100644 --- a/core/encodings.js +++ b/core/encodings.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/inflator.js b/core/inflator.js index f851f2a..7ef47f1 100644 --- a/core/inflator.js +++ b/core/inflator.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2020 The noVNC Authors + * Copyright (C) 2020 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/input/domkeytable.js b/core/input/domkeytable.js index f79aead..9e599f7 100644 --- a/core/input/domkeytable.js +++ b/core/input/domkeytable.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2018 The noVNC Authors + * Copyright (C) 2018 The noVNC authors * Licensed under MPL 2.0 or any later version (see LICENSE.txt) */ diff --git a/core/input/fixedkeys.js b/core/input/fixedkeys.js index 4d09f2f..6a92215 100644 --- a/core/input/fixedkeys.js +++ b/core/input/fixedkeys.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2018 The noVNC Authors + * Copyright (C) 2018 The noVNC authors * Licensed under MPL 2.0 or any later version (see LICENSE.txt) */ diff --git a/core/input/gesturehandler.js b/core/input/gesturehandler.js index 6fa72d2..b072e01 100644 --- a/core/input/gesturehandler.js +++ b/core/input/gesturehandler.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2020 The noVNC Authors + * Copyright (C) 2020 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/input/keyboard.js b/core/input/keyboard.js index ff14de8..3cc8917 100644 --- a/core/input/keyboard.js +++ b/core/input/keyboard.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 or any later version (see LICENSE.txt) */ diff --git a/core/input/vkeys.js b/core/input/vkeys.js index dacc358..d848337 100644 --- a/core/input/vkeys.js +++ b/core/input/vkeys.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2018 The noVNC Authors + * Copyright (C) 2018 The noVNC authors * Licensed under MPL 2.0 or any later version (see LICENSE.txt) */ diff --git a/core/rfb.js b/core/rfb.js index 0007bed..9559e48 100644 --- a/core/rfb.js +++ b/core/rfb.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2020 The noVNC Authors + * Copyright (C) 2020 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. @@ -1378,7 +1378,7 @@ export default class RFB extends EventTargetMixin { } } - // Message Handlers + // Message handlers _negotiateProtocolVersion() { if (this._sock.rQwait("version", 12)) { @@ -2427,7 +2427,7 @@ export default class RFB extends EventTargetMixin { switch (xvpMsg) { case 0: // XVP_FAIL - Log.Error("XVP Operation Failed"); + Log.Error("XVP operation failed"); break; case 1: // XVP_INIT this._rfbXvpVer = xvpVer; @@ -2756,7 +2756,7 @@ export default class RFB extends EventTargetMixin { } _handleLedEvent() { - if (this._sock.rQwait("LED Status", 1)) { + if (this._sock.rQwait("LED status", 1)) { return false; } diff --git a/core/util/browser.js b/core/util/browser.js index 407cad9..2c36676 100644 --- a/core/util/browser.js +++ b/core/util/browser.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/util/cursor.js b/core/util/cursor.js index 20e75f1..6d689e7 100644 --- a/core/util/cursor.js +++ b/core/util/cursor.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 or any later version (see LICENSE.txt) */ diff --git a/core/util/element.js b/core/util/element.js index 466a745..17d82d5 100644 --- a/core/util/element.js +++ b/core/util/element.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2020 The noVNC Authors + * Copyright (C) 2020 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/util/events.js b/core/util/events.js index eb09fe1..26aa979 100644 --- a/core/util/events.js +++ b/core/util/events.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2018 The noVNC Authors + * Copyright (C) 2018 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/util/eventtarget.js b/core/util/eventtarget.js index a21aa54..547bf5f 100644 --- a/core/util/eventtarget.js +++ b/core/util/eventtarget.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/util/int.js b/core/util/int.js index 001f40f..303ddc5 100644 --- a/core/util/int.js +++ b/core/util/int.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2020 The noVNC Authors + * Copyright (C) 2020 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/util/logging.js b/core/util/logging.js index fe449e9..0db0838 100644 --- a/core/util/logging.js +++ b/core/util/logging.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/util/strings.js b/core/util/strings.js index 3dd4b29..432b0a9 100644 --- a/core/util/strings.js +++ b/core/util/strings.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * See README.md for usage and integration instructions. diff --git a/core/websock.js b/core/websock.js index 61a3091..ae17a44 100644 --- a/core/websock.js +++ b/core/websock.js @@ -1,6 +1,6 @@ /* * Websock: high-performance buffering wrapper - * Copyright (C) 2019 The noVNC Authors + * Copyright (C) 2019 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) * * Websock is similar to the standard WebSocket / RTCDataChannel object @@ -70,7 +70,7 @@ export default class Websock { }; } - // Getters and Setters + // Getters and setters get readyState() { let subState; @@ -94,7 +94,7 @@ export default class Websock { return "unknown"; } - // Receive Queue + // Receive queue rQpeek8() { return this._rQ[this._rQi]; } @@ -173,7 +173,7 @@ export default class Websock { return false; } - // Send Queue + // Send queue sQpush8(num) { this._sQensureSpace(1); @@ -227,7 +227,7 @@ export default class Websock { } } - // Event Handlers + // Event handlers off(evt) { this._eventHandlers[evt] = () => {}; } @@ -325,7 +325,7 @@ export default class Websock { if (this._rQbufferSize > MAX_RQ_GROW_SIZE) { this._rQbufferSize = MAX_RQ_GROW_SIZE; if (this._rQbufferSize - (this._rQlen - this._rQi) < minFit) { - throw new Error("Receive Queue buffer exceeded " + MAX_RQ_GROW_SIZE + " bytes, and the new message could not fit"); + throw new Error("Receive queue buffer exceeded " + MAX_RQ_GROW_SIZE + " bytes, and the new message could not fit"); } } diff --git a/docs/API-internal.md b/docs/API-internal.md index c41e0f3..5b41548 100644 --- a/docs/API-internal.md +++ b/docs/API-internal.md @@ -1,4 +1,4 @@ -# 1. Internal Modules +# 1. Internal modules The noVNC client is composed of several internal modules that handle rendering, input, networking, etc. Each of the modules is designed to @@ -9,7 +9,7 @@ stable, and this documentation is not maintained as well as the official external API. -## 1.1 Module List +## 1.1 Module list * __Keyboard__ (core/input/keyboard.js): Keyboard input event handler with non-US keyboard support. Translates keyDown and keyUp events to X11 @@ -32,9 +32,9 @@ callback event name, and the callback function. ## 2. Modules -## 2.1 Keyboard Module +## 2.1 Keyboard module -### 2.1.1 Configuration Attributes +### 2.1.1 Configuration attributes None @@ -52,9 +52,9 @@ None | onkeypress | (keysym, code, down) | Handler for key press/release -## 2.2 Display Module +## 2.2 Display module -### 2.2.1 Configuration Attributes +### 2.2.1 Configuration attributes | name | type | mode | default | description | ------------ | ----- | ---- | ------- | ------------ diff --git a/docs/EMBEDDING.md b/docs/EMBEDDING.md index 1050014..b411de8 100644 --- a/docs/EMBEDDING.md +++ b/docs/EMBEDDING.md @@ -1,4 +1,4 @@ -# Embedding and Deploying noVNC Application +# Embedding and deploying noVNC application This document describes how to embed and deploy the noVNC application, which includes settings and a full user interface. If you are looking for @@ -71,8 +71,8 @@ query string. Currently the following options are available: * `logging` - The console log level. Can be one of `error`, `warn`, `info` or `debug`. -## HTTP Serving Considerations -### Browser Cache Issue +## HTTP serving considerations +### Browser cache issue If you serve noVNC files using a web server that provides an ETag header, and include any options in the query string, a nasty browser cache issue can bite @@ -84,7 +84,7 @@ to always revalidate cached files using conditional requests. The correct semantics are achieved via the (confusingly named) `Cache-Control: no-cache` header that needs to be provided in the web server responses. -### Example Server Configurations +### Example server configurations Apache: diff --git a/docs/LIBRARY.md b/docs/LIBRARY.md index 3890bb2..ec2f4e0 100644 --- a/docs/LIBRARY.md +++ b/docs/LIBRARY.md @@ -16,7 +16,7 @@ noVNC includes a small example application called `vnc_lite.html`. This does not make use of all the features of noVNC, but is a good start to see how to do things. -## Conversion of Modules +## Conversion of modules noVNC is written using ECMAScript 6 modules. This is not supported by older versions of Node.js. To use noVNC with those older versions of Node.js the diff --git a/docs/novnc_proxy.1 b/docs/novnc_proxy.1 index 259e1b4..1a844e8 100644 --- a/docs/novnc_proxy.1 +++ b/docs/novnc_proxy.1 @@ -30,7 +30,7 @@ provides a cut-and-paste URL to go to. active connections .SH AUTHOR -The noVNC Authors +The noVNC authors https://github.com/novnc/noVNC .SH SEE ALSO diff --git a/po/Makefile b/po/Makefile index 61a233b..dcf5ba4 100644 --- a/po/Makefile +++ b/po/Makefile @@ -19,7 +19,7 @@ update-js: $(JSONFILES) update-pot: xgettext --output=noVNC.js.pot \ - --copyright-holder="The noVNC Authors" \ + --copyright-holder="The noVNC authors" \ --package-name="noVNC" \ --package-version="$(VERSION)" \ --msgid-bugs-address="novnc@googlegroups.com" \ diff --git a/po/po2js b/po/po2js index e293ded..23b8bb2 100755 --- a/po/po2js +++ b/po/po2js @@ -1,7 +1,7 @@ #!/usr/bin/env node /* * ps2js: gettext .po to noVNC .js converter - * Copyright (C) 2018 The noVNC Authors + * Copyright (C) 2018 The noVNC authors * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by diff --git a/po/xgettext-html b/po/xgettext-html index ae53461..72d4923 100755 --- a/po/xgettext-html +++ b/po/xgettext-html @@ -1,7 +1,7 @@ #!/usr/bin/env node /* * xgettext-html: HTML gettext parser - * Copyright (C) 2018 The noVNC Authors + * Copyright (C) 2018 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) */ diff --git a/tests/playback.js b/tests/playback.js index 955df0e..881a55b 100644 --- a/tests/playback.js +++ b/tests/playback.js @@ -1,6 +1,6 @@ /* * noVNC: HTML5 VNC client - * Copyright (C) 2018 The noVNC Authors + * Copyright (C) 2018 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) */ diff --git a/tests/test.base64.js b/tests/test.base64.js index e5644dc..87a6aa5 100644 --- a/tests/test.base64.js +++ b/tests/test.base64.js @@ -1,6 +1,6 @@ import Base64 from '../core/base64.js'; -describe('Base64 Tools', function () { +describe('Base64 tools', function () { "use strict"; const BIN_ARR = new Array(256); diff --git a/tests/test.copyrect.js b/tests/test.copyrect.js index 60c3952..15323eb 100644 --- a/tests/test.copyrect.js +++ b/tests/test.copyrect.js @@ -29,7 +29,7 @@ function testDecodeRect(decoder, x, y, width, height, data, display, depth) { return done; } -describe('CopyRect Decoder', function () { +describe('CopyRect decoder', function () { let decoder; let display; diff --git a/tests/test.display.js b/tests/test.display.js index d2c5179..5844ce1 100644 --- a/tests/test.display.js +++ b/tests/test.display.js @@ -1,7 +1,7 @@ import Base64 from '../core/base64.js'; import Display from '../core/display.js'; -describe('Display/Canvas Helper', function () { +describe('Display/Canvas helper', function () { const checkedData = new Uint8ClampedArray([ 0x00, 0x00, 0xff, 255, 0x00, 0x00, 0xff, 255, 0x00, 0xff, 0x00, 255, 0x00, 0xff, 0x00, 255, 0x00, 0x00, 0xff, 255, 0x00, 0x00, 0xff, 255, 0x00, 0xff, 0x00, 255, 0x00, 0xff, 0x00, 255, diff --git a/tests/test.h264.js b/tests/test.h264.js index e6fbacb..01bddad 100644 --- a/tests/test.h264.js +++ b/tests/test.h264.js @@ -108,7 +108,7 @@ function almost(a, b) { return diff < 5; } -describe('H.264 Parser', function () { +describe('H.264 parser', function () { it('should parse constrained baseline video', function () { let parser = new H264Parser(redGreenBlue16x16Video); @@ -130,7 +130,7 @@ describe('H.264 Parser', function () { }); }); -describe('H.264 Decoder Unit Test', function () { +describe('H.264 decoder unit test', function () { let decoder; beforeEach(function () { @@ -181,7 +181,7 @@ describe('H.264 Decoder Unit Test', function () { }); }); -describe('H.264 Decoder Functional Test', function () { +describe('H.264 decoder functional test', function () { let decoder; let display; diff --git a/tests/test.hextile.js b/tests/test.hextile.js index f788fd4..25e412b 100644 --- a/tests/test.hextile.js +++ b/tests/test.hextile.js @@ -36,7 +36,7 @@ function push32(arr, num) { num & 0xFF); } -describe('Hextile Decoder', function () { +describe('Hextile decoder', function () { let decoder; let display; diff --git a/tests/test.jpeg.js b/tests/test.jpeg.js index 5cc153f..063a5f2 100644 --- a/tests/test.jpeg.js +++ b/tests/test.jpeg.js @@ -29,7 +29,7 @@ function testDecodeRect(decoder, x, y, width, height, data, display, depth) { return done; } -describe('JPEG Decoder', function () { +describe('JPEG decoder', function () { let decoder; let display; diff --git a/tests/test.keyboard.js b/tests/test.keyboard.js index 11c8b6e..47be623 100644 --- a/tests/test.keyboard.js +++ b/tests/test.keyboard.js @@ -1,6 +1,6 @@ import Keyboard from '../core/input/keyboard.js'; -describe('Key Event Handling', function () { +describe('Key event handling', function () { "use strict"; // The real KeyboardEvent constructor might not work everywhere we @@ -19,7 +19,7 @@ describe('Key Event Handling', function () { return e; } - describe('Decode Keyboard Events', function () { + describe('Decode keyboard events', function () { it('should decode keydown events', function (done) { const kbd = new Keyboard(document); kbd.onkeyevent = (keysym, code, down) => { @@ -68,7 +68,7 @@ describe('Key Event Handling', function () { }); }); - describe('Track Key State', function () { + describe('Track key state', function () { it('should send release using the same keysym as the press', function (done) { const kbd = new Keyboard(document); kbd.onkeyevent = (keysym, code, down) => { @@ -101,7 +101,7 @@ describe('Key Event Handling', function () { expect(kbd.onkeyevent).to.not.have.been.called; }); - describe('Legacy Events', function () { + describe('Legacy events', function () { it('should track keys using keyCode if no code', function (done) { const kbd = new Keyboard(document); kbd.onkeyevent = (keysym, code, down) => { diff --git a/tests/test.raw.js b/tests/test.raw.js index 19b2377..e40813c 100644 --- a/tests/test.raw.js +++ b/tests/test.raw.js @@ -29,7 +29,7 @@ function testDecodeRect(decoder, x, y, width, height, data, display, depth) { return done; } -describe('Raw Decoder', function () { +describe('Raw decoder', function () { let decoder; let display; diff --git a/tests/test.rfb.js b/tests/test.rfb.js index 2be3bfb..19894ba 100644 --- a/tests/test.rfb.js +++ b/tests/test.rfb.js @@ -67,7 +67,7 @@ function deflateWithSize(data) { return new Uint8Array(strm.output.buffer, 0, strm.next_out); } -describe('Remote Frame Buffer Protocol Client', function () { +describe('Remote Frame Buffer protocol client', function () { let clock; let raf; let fakeResizeObserver = null; @@ -287,7 +287,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Public API Basic Behavior', function () { + describe('Public API basic behavior', function () { let client; beforeEach(function () { client = makeRFB(); @@ -1027,7 +1027,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Misc Internals', function () { + describe('Misc internals', function () { describe('#_fail', function () { let client; beforeEach(function () { @@ -1068,7 +1068,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Protocol Initialization States', function () { + describe('Protocol initialization states', function () { let client; beforeEach(function () { client = makeRFB(); @@ -1226,7 +1226,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Legacy Authentication', function () { + describe('Legacy authentication', function () { it('should fail on auth scheme 0 (pre 3.7) with the given message', function () { const errMsg = "Whoopsies"; const data = [0, 0, 0, 0]; @@ -1286,7 +1286,7 @@ describe('Remote Frame Buffer Protocol Client', function () { expect(callback.args[0][0].detail.clean).to.be.false; }); - describe('VNC Authentication (type 2) Handler', function () { + describe('VNC authentication (type 2) handler', function () { it('should fire the credentialsrequired event if missing a password', function () { const spy = sinon.spy(); client.addEventListener("credentialsrequired", spy); @@ -1331,7 +1331,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('RSA-AES Authentication (type 6) Handler', function () { + describe('RSA-AES authentication (type 6) handler', function () { function fakeGetRandomValues(arr) { if (arr.length === 16) { arr.set(new Uint8Array([ @@ -1776,7 +1776,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('ARD Authentication (type 30) Handler', function () { + describe('ARD authentication (type 30) handler', function () { let byteArray = new Uint8Array(Array.from(new Uint8Array(128).keys())); function fakeGetRandomValues(arr) { if (arr.length == 128) { @@ -1869,7 +1869,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('MSLogonII Authentication (type 113) Handler', function () { + describe('MSLogonII authentication (type 113) handler', function () { function fakeGetRandomValues(arr) { if (arr.length == 8) { arr.set(new Uint8Array([0, 0, 0, 0, 5, 6, 7, 8])); @@ -1952,7 +1952,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('XVP Authentication (type 22) Handler', function () { + describe('XVP authentication (type 22) handler', function () { it('should fall through to standard VNC authentication upon completion', function () { client.addEventListener("credentialsrequired", () => { client.sendCredentials({ username: 'user', @@ -2001,7 +2001,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('TightVNC Authentication (type 16) Handler', function () { + describe('TightVNC authentication (type 16) handler', function () { beforeEach(function () { sendSecurity(16, client); client._sock._websocket._getSentData(); // skip the security reply @@ -2088,7 +2088,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('VeNCrypt Authentication (type 19) Handler', function () { + describe('VeNCrypt authentication (type 19) handler', function () { beforeEach(function () { sendSecurity(19, client); expect(client._sock).to.have.sent(new Uint8Array([19])); @@ -2171,7 +2171,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Plain Authentication (type 256) Handler', function () { + describe('Plain authentication (type 256) handler', function () { beforeEach(function () { sendSecurity(19, client); expect(client._sock).to.have.sent(new Uint8Array([19])); @@ -2430,7 +2430,7 @@ describe('Remote Frame Buffer Protocol Client', function () { expect(client._keyboard.grab).to.have.been.calledOnce; }); - describe('Initial Update Request', function () { + describe('Initial update request', function () { beforeEach(function () { sinon.spy(RFB.messages, "pixelFormat"); sinon.spy(RFB.messages, "clientEncodings"); @@ -2485,7 +2485,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Protocol Message Processing After Completing Initialization', function () { + describe('Protocol message processing after completing initialization', function () { let client; beforeEach(function () { @@ -2495,7 +2495,7 @@ describe('Remote Frame Buffer Protocol Client', function () { client._fbHeight = 20; }); - describe('Framebuffer Update Handling', function () { + describe('Framebuffer update handling', function () { function sendFbuMsg(rectInfo, rectData, client, rectCnt) { let data = []; @@ -2576,7 +2576,7 @@ describe('Remote Frame Buffer Protocol Client', function () { expect(callback.args[0][0].detail.clean).to.be.false; }); - describe('Message Encoding Handlers', function () { + describe('Message encoding handlers', function () { beforeEach(function () { // a really small frame client._fbWidth = 4; @@ -2817,7 +2817,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('the VMware Cursor pseudo-encoding handler', function () { + describe('the VMware cursor pseudo-encoding handler', function () { beforeEach(function () { sinon.spy(client._cursor, 'change'); }); @@ -3150,7 +3150,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('XVP Message Handling', function () { + describe('XVP message handling', function () { it('should set the XVP version and fire the callback with the version on XVP_INIT', function () { const spy = sinon.spy(); client.addEventListener("capabilities", spy); @@ -3172,7 +3172,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Normal Clipboard Handling Receive', function () { + describe('Normal clipboard handling receive', function () { it('should fire the clipboard callback with the retrieved text on ServerCutText', function () { const expectedStr = 'cheese!'; const data = [3, 0, 0, 0]; @@ -3187,7 +3187,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Extended clipboard Handling', function () { + describe('Extended clipboard handling', function () { describe('Extended clipboard initialization', function () { beforeEach(function () { @@ -3222,7 +3222,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); - describe('Extended Clipboard Handling Receive', function () { + describe('Extended clipboard handling receive', function () { beforeEach(function () { // Send our capabilities @@ -3493,7 +3493,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Asynchronous Events', function () { + describe('Asynchronous events', function () { let client; let pointerEvent; let keyEvent; @@ -3537,7 +3537,7 @@ describe('Remote Frame Buffer Protocol Client', function () { return res; } - describe('Mouse Events', function () { + describe('Mouse events', function () { function sendMouseMoveEvent(x, y) { let pos = elementToClient(x, y); let ev; @@ -3663,7 +3663,7 @@ describe('Remote Frame Buffer Protocol Client', function () { 50, 70, 0x0); }); - describe('Event Aggregation', function () { + describe('Event aggregation', function () { it('should send a single pointer event on mouse movement', function () { sendMouseMoveEvent(50, 70); clock.tick(100); @@ -3790,7 +3790,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Wheel Events', function () { + describe('Wheel events', function () { function sendWheelEvent(x, y, dx, dy, mode=0) { let pos = elementToClient(x, y); let ev; @@ -3900,7 +3900,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('Keyboard Events', function () { + describe('Keyboard events', function () { it('should send a key message on a key press', function () { let esock = new Websock(); let ews = new FakeWebSocket(); @@ -4613,7 +4613,7 @@ describe('Remote Frame Buffer Protocol Client', function () { }); }); - describe('WebSocket Events', function () { + describe('WebSocket events', function () { // message events it('should do nothing if we receive an empty message and have nothing in the queue', function () { sinon.spy(client, "_normalMsg"); @@ -4901,7 +4901,7 @@ describe('RFB messages', function () { sock.attach(websock); }); - describe('Input Events', function () { + describe('Input events', function () { it('should send correct data for keyboard events', function () { // FIXME: down should be boolean RFB.messages.keyEvent(sock, 0x12345678, 0); @@ -4936,7 +4936,7 @@ describe('RFB messages', function () { }); }); - describe('Clipboard Events', function () { + describe('Clipboard events', function () { it('should send correct data for clipboard events', function () { RFB.messages.clientCutText(sock, new Uint8Array([ 0x01, 0x23, 0x45, 0x67 ])); let expected = @@ -4946,7 +4946,7 @@ describe('RFB messages', function () { }); }); - describe('Extended Clipboard Handling Send', function () { + describe('Extended clipboard handling send', function () { it('should call clientCutText with correct Caps data', function () { let formats = { 0: 2, @@ -5133,7 +5133,7 @@ describe('RFB messages', function () { }); }); - describe('Screen Layout', function () { + describe('Screen layout', function () { it('should send correct data for screen layout changes', function () { RFB.messages.setDesktopSize(sock, 12345, 54321, 0x12345678, 0x90abcdef); let expected = @@ -5155,7 +5155,7 @@ describe('RFB messages', function () { }); }); - describe('Continuous Updates', function () { + describe('Continuous updates', function () { it('should send correct data for continuous updates configuration', function () { // FIXME: enable should be boolean RFB.messages.enableContinuousUpdates(sock, 0, 12345, 54321, 34343, 18181); @@ -5165,7 +5165,7 @@ describe('RFB messages', function () { }); }); - describe('Pixel Format', function () { + describe('Pixel format', function () { it('should send correct data for normal depth', function () { RFB.messages.pixelFormat(sock, 24, true); let expected = diff --git a/tests/test.rre.js b/tests/test.rre.js index 7b5f73d..b47fbca 100644 --- a/tests/test.rre.js +++ b/tests/test.rre.js @@ -41,7 +41,7 @@ function push32(arr, num) { num & 0xFF); } -describe('RRE Decoder', function () { +describe('RRE decoder', function () { let decoder; let display; diff --git a/tests/test.tight.js b/tests/test.tight.js index 3d6b555..ebdfd96 100644 --- a/tests/test.tight.js +++ b/tests/test.tight.js @@ -29,7 +29,7 @@ function testDecodeRect(decoder, x, y, width, height, data, display, depth) { return done; } -describe('Tight Decoder', function () { +describe('Tight decoder', function () { let decoder; let display; diff --git a/tests/test.tightpng.js b/tests/test.tightpng.js index e7edc8f..29c8caa 100644 --- a/tests/test.tightpng.js +++ b/tests/test.tightpng.js @@ -29,7 +29,7 @@ function testDecodeRect(decoder, x, y, width, height, data, display, depth) { return done; } -describe('TightPng Decoder', function () { +describe('TightPng decoder', function () { let decoder; let display; diff --git a/tests/test.websock.js b/tests/test.websock.js index ab09f45..62bcbfa 100644 --- a/tests/test.websock.js +++ b/tests/test.websock.js @@ -535,7 +535,7 @@ describe('Websock', function () { }); }); - describe('WebSocket Receiving', function () { + describe('WebSocket receiving', function () { let sock; beforeEach(function () { sock = new Websock(); diff --git a/tests/test.zlib.js b/tests/test.zlib.js index bc72137..13411c1 100644 --- a/tests/test.zlib.js +++ b/tests/test.zlib.js @@ -29,7 +29,7 @@ function testDecodeRect(decoder, x, y, width, height, data, display, depth) { return done; } -describe('Zlib Decoder', function () { +describe('Zlib decoder', function () { let decoder; let display; diff --git a/tests/test.zrle.js b/tests/test.zrle.js index f7c6089..1572910 100644 --- a/tests/test.zrle.js +++ b/tests/test.zrle.js @@ -29,7 +29,7 @@ function testDecodeRect(decoder, x, y, width, height, data, display, depth) { return done; } -describe('ZRLE Decoder', function () { +describe('ZRLE decoder', function () { let decoder; let display; diff --git a/tests/vnc_playback.html b/tests/vnc_playback.html index ffa6990..8b4ba39 100644 --- a/tests/vnc_playback.html +++ b/tests/vnc_playback.html @@ -1,7 +1,7 @@ - VNC Playback + VNC playback diff --git a/utils/genkeysymdef.js b/utils/genkeysymdef.js index f539a0b..b10240e 100755 --- a/utils/genkeysymdef.js +++ b/utils/genkeysymdef.js @@ -1,7 +1,7 @@ #!/usr/bin/env node /* * genkeysymdef: X11 keysymdef.h to JavaScript converter - * Copyright (C) 2018 The noVNC Authors + * Copyright (C) 2018 The noVNC authors * Licensed under MPL 2.0 (see LICENSE.txt) */ diff --git a/utils/novnc_proxy b/utils/novnc_proxy index 4b2e303..6b55504 100755 --- a/utils/novnc_proxy +++ b/utils/novnc_proxy @@ -1,6 +1,6 @@ #!/usr/bin/env bash -# Copyright (C) 2018 The noVNC Authors +# Copyright (C) 2018 The noVNC authors # Licensed under MPL 2.0 or any later version (see LICENSE.txt) usage() { @@ -82,7 +82,7 @@ cleanup() { fi } -# Process Arguments +# Process arguments # Arguments that only apply to chrooter itself while [ "$*" ]; do diff --git a/vnc.html b/vnc.html index fd88773..c2cc4e5 100644 --- a/vnc.html +++ b/vnc.html @@ -4,7 +4,7 @@ +
@@ -123,18 +123,18 @@ + title="Move/Drag viewport"> - +
+ id="noVNC_keyboard_button" class="noVNC_button" title="Show keyboard">
+ title="Show extra keys">
- + title="Full screen">
  • - +
  • - +

  • - +
  • - +

  • @@ -261,15 +261,15 @@

  • - +
  • - +

  • - +

  • @@ -290,7 +290,7 @@
- + @@ -305,7 +305,7 @@
- +
@@ -320,7 +320,7 @@ - +
@@ -344,7 +344,7 @@
- +
@@ -359,12 +359,12 @@
- +
- +
diff --git a/vnc_lite.html b/vnc_lite.html index eaf75f8..79d4814 100644 --- a/vnc_lite.html +++ b/vnc_lite.html @@ -7,7 +7,7 @@ This is a self-contained file which doesn't import WebUtil or external CSS. - Copyright (C) 2019 The noVNC Authors + Copyright (C) 2019 The noVNC authors noVNC is licensed under the MPL 2.0 (see LICENSE.txt) This file is licensed under the 2-Clause BSD license (see LICENSE.txt). @@ -80,7 +80,7 @@ // When this function is called, the server requires // credentials to authenticate function credentialsAreRequired(e) { - const password = prompt("Password Required:"); + const password = prompt("Password required:"); rfb.sendCredentials({ password: password }); }