Skip to content

Commit

Permalink
Add UI for quality setting
Browse files Browse the repository at this point in the history
  • Loading branch information
CendioOssman committed Feb 28, 2020
1 parent 71429d4 commit 5243cbf
Show file tree
Hide file tree
Showing 3 changed files with 24 additions and 0 deletions.
17 changes: 17 additions & 0 deletions app/ui.js
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,7 @@ const UI = {
UI.initSetting('encrypt', (window.location.protocol === "https:"));
UI.initSetting('view_clip', false);
UI.initSetting('resize', 'off');
UI.initSetting('quality', 6);
UI.initSetting('shared', true);
UI.initSetting('view_only', false);
UI.initSetting('show_dot', false);
Expand Down Expand Up @@ -347,6 +348,8 @@ const UI = {
UI.addSettingChangeHandler('resize');
UI.addSettingChangeHandler('resize', UI.applyResizeMode);
UI.addSettingChangeHandler('resize', UI.updateViewClip);
UI.addSettingChangeHandler('quality');
UI.addSettingChangeHandler('quality', UI.updateQuality);
UI.addSettingChangeHandler('view_clip');
UI.addSettingChangeHandler('view_clip', UI.updateViewClip);
UI.addSettingChangeHandler('shared');
Expand Down Expand Up @@ -829,6 +832,7 @@ const UI = {
UI.updateSetting('encrypt');
UI.updateSetting('view_clip');
UI.updateSetting('resize');
UI.updateSetting('quality');
UI.updateSetting('shared');
UI.updateSetting('view_only');
UI.updateSetting('path');
Expand Down Expand Up @@ -1030,6 +1034,7 @@ const UI = {
UI.rfb.clipViewport = UI.getSetting('view_clip');
UI.rfb.scaleViewport = UI.getSetting('resize') === 'scale';
UI.rfb.resizeSession = UI.getSetting('resize') === 'remote';
UI.rfb.qualityLevel = parseInt(UI.getSetting('quality'));
UI.rfb.showDotCursor = UI.getSetting('show_dot');

UI.updateViewOnly(); // requires UI.rfb
Expand Down Expand Up @@ -1324,6 +1329,18 @@ const UI = {
/* ------^-------
* /VIEWDRAG
* ==============
* QUALITY
* ------v------*/

updateQuality() {
if (!UI.rfb) return;

UI.rfb.qualityLevel = parseInt(UI.getSetting('quality'));
},

/* ------^-------
* /QUALITY
* ==============
* KEYBOARD
* ------v------*/

Expand Down
2 changes: 2 additions & 0 deletions docs/EMBEDDING.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,8 @@ query string. Currently the following options are available:
* `resize` - How to resize the remote session if it is not the same size as
the browser window. Can be one of `off`, `scale` and `remote`.

* `quality` - The session JPEG quality level. Can be `0` to `9`.

* `show_dot` - If a dot cursor should be shown when the remote server provides
no local cursor, or provides a fully-transparent (invisible) cursor.

Expand Down
5 changes: 5 additions & 0 deletions vnc.html
Original file line number Diff line number Diff line change
Expand Up @@ -207,6 +207,11 @@ <h1 class="noVNC_logo" translate="no"><span>no</span><br>VNC</h1>
<li>
<div class="noVNC_expander">Advanced</div>
<div><ul>
<li>
<label for="noVNC_setting_quality">Quality:</label>
<input id="noVNC_setting_quality" type="range" min="0" max="9" value="">
</li>
<li><hr></li>
<li>
<label for="noVNC_setting_repeaterID">Repeater ID:</label>
<input id="noVNC_setting_repeaterID" type="text" value="">
Expand Down

0 comments on commit 5243cbf

Please sign in to comment.