Experimental support for setdesktopsize / extendeddesktopsize #107
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When enabled with the -setdesktopsize option this allows
clients like novnc and tigervnc to request a change of
framebuffer resolution to fit that of the client window.
On the server this is implemented by leaving the physical
display resolution as-is, but setting a new framebuffer
resolution and scaling that framebuffer to the physical
display using RANDR calls.
As a result the view on the physical display may look a bit
distorted due to the scaling, but looks perfect on the remote
client. (While that is normally the opposite case)
When last client disconnects original framebuffer resolution
is restorted.
Known limitations:
Implementation currently limited to computers with a single
screen attached.
Only works on X servers/drivers with RANDR support
Does not always work properly on headless sytems with no monitor attached. (Needs some investigation)
Needs a recent libvncserver with the setdesktopsize hook support recently merged.
Closes #91