diff --git a/kasmweb/app/styles/base.css b/kasmweb/app/styles/base.css index 78e8fd4..b3ed042 100644 --- a/kasmweb/app/styles/base.css +++ b/kasmweb/app/styles/base.css @@ -647,6 +647,16 @@ select:active { width: 100px; } +/* Version */ + +.noVNC_version_wrapper { + font-size: small; +} + +.noVNC_version { + margin-left: 1rem; +} + /* Connection Controls */ :root:not(.noVNC_connected) #noVNC_disconnect_button { display: none; diff --git a/kasmweb/app/ui.js b/kasmweb/app/ui.js index 4f5a17e..4c30ca7 100644 --- a/kasmweb/app/ui.js +++ b/kasmweb/app/ui.js @@ -82,6 +82,17 @@ const UI = { // Translate the DOM l10n.translateDOM(); + WebUtil.fetchJSON('../package.json') + .then((packageInfo) => { + Array.from(document.getElementsByClassName('noVNC_version')).forEach(el => el.innerText = packageInfo.version); + }) + .catch(err => { + Log.Error("Couldn't fetch package.json: " + err); + Array.from(document.getElementsByClassName('noVNC_version_wrapper')) + .concat(Array.from(document.getElementsByClassName('noVNC_version_separator'))) + .forEach(el => el.style.display = 'none'); + }); + // Adapt the interface for touch screen devices if (isTouchDevice) { document.documentElement.classList.add("noVNC_touch"); diff --git a/kasmweb/vnc.html b/kasmweb/vnc.html index 1c2e065..761913d 100644 --- a/kasmweb/vnc.html +++ b/kasmweb/vnc.html @@ -307,6 +307,11 @@ +