Philipp Zabel
e19c9ad600
Implement desktop resizing
...
Implement minimal support for ExtendedDesktopSize pseudo-encoding
and SetDesktopSize client message.
The opaque nvnc_desktop_layout structure contains all information
from the SetDesktopSize client message.
2023-02-25 11:03:44 +00:00
Jim Ramsay
332be4d471
Add nvnc_client_close API
...
This allows the user or application to terminate any given nvnc_client
connection at any time.
Signed-off-by: Jim Ramsay <i.am@jimramsay.com>
2022-11-24 16:08:06 +00:00
Andri Yngvason
8f979c9928
Pass nvnc_client to cut-text callback
2022-11-20 22:42:01 +00:00
Andri Yngvason
79f26924ea
Add functions for listing clients
2022-11-20 12:03:18 +00:00
Jim Ramsay
036b549fd8
Record authenticated username for each connected client
...
Signed-off-by: Jim Ramsay <jramsay@redhat.com>
2022-11-04 09:41:14 +00:00
Jim Ramsay
86bd2ced85
Record hostname for each connected client
...
Signed-off-by: Jim Ramsay <jramsay@redhat.com>
2022-11-04 09:41:14 +00:00
Andri Yngvason
adef210252
fb-pool: Add setter for fb allocator
2022-10-29 18:40:02 +00:00
Philipp Zabel
affd7f3f6d
Allow to query client-side cursor support
...
Add a function nvnc_client_supports_cursor() to enable the API user to
make an informed decision whether nvnc_set_cursor() can be expected to
make the client draw the cursor, or whether it has to be rendered into
the framebuffer.
2022-07-29 08:37:29 +00:00
Andri Yngvason
d18cc4fc57
Add constants for left and right scroll
2022-07-28 20:13:48 +00:00
Andri Yngvason
45da0fc157
Add simple logging system
2022-06-25 16:15:32 +00:00
Andri Yngvason
53f88894d5
Add presentation timestamps
2022-04-14 18:10:09 +00:00
Andri Yngvason
aca09358ea
Add back damage argument to nvnc_set_cursor
...
It's better to keep feeding buffers to keep buffers in rotation for damage
tracking purposes.
2022-02-21 21:43:41 +00:00
Andri Yngvason
1553c88f5e
Add width and height arguments to nvnc_set_cursor
2022-02-19 23:06:15 +00:00
Andri Yngvason
48baf74560
Implement client side cursor rendering
2022-02-06 16:33:46 +00:00
Andri Yngvason
e1ba4e1085
API: Add nvnc_fb_get_type
2021-12-26 13:10:41 +00:00
Andri Yngvason
02559a7f7e
Re-sample transformed framebuffers
2021-09-19 20:12:30 +00:00
Andri Yngvason
691e835d1b
fb: Add transform attribute
2021-09-19 19:56:56 +00:00
Andri Yngvason
cf42f76f56
Add gbm_bo nvnc_fb type
2021-09-12 18:51:22 +00:00
Andri Yngvason
dad1948e98
Remove nvnc_fb_flags
2021-09-05 00:46:24 +00:00
Andri Yngvason
b75eeac03d
Add API function for creating nvnc_fb from an pre-allocated buffer
2021-09-05 00:46:24 +00:00
Andri Yngvason
96886e21d5
Add a API function to get the pixel size of nvnc_fb
2021-09-05 00:46:24 +00:00
Andri Yngvason
c7dd062498
Add a stride parameter to nvnc_fb
2021-09-05 00:46:24 +00:00
Andri Yngvason
e8e4a9469a
Remove damage checker
...
There's a much better one in wayvnc
2021-09-05 00:46:24 +00:00
Andri Yngvason
77d8efcbe3
fb_pool: Return true from resize when dimensions change
2021-09-04 21:21:23 +00:00
Andri Yngvason
1b7b51af44
Add a cleanup callback to nvnc_set_userdata
2021-09-04 21:21:23 +00:00
Andri Yngvason
f5b0f508f0
fb: Use special context pointer for release callback
2021-09-04 21:21:23 +00:00
Andri Yngvason
f566105ab5
Remove nvnc_set_render_fn
2021-09-04 21:21:23 +00:00
Andri Yngvason
981256d8d5
Add a buffer pool
2021-09-04 21:21:23 +00:00
Andri Yngvason
031555c85d
fb: Add hold/release logic
2021-09-04 21:21:23 +00:00
Ryan Farley
b320723049
Support UNIX sockets
...
Adds support for UNIX domain sockets with `nvnc_open_unix()` function.
Closes #1 .
2021-04-04 20:24:33 +00:00
Andri Yngvason
dbe35bc3ad
Add qemu extended key events
2020-11-29 18:36:48 +00:00
Scott Moreau
6d29937e15
server: Add remaining support for simple copy/paste
...
- Add function to set callback for client_cut_text
- Add server_cut_text structure and function
This in conjunction with wayvnc #66 closes #4 .
2020-09-21 21:15:45 +00:00
Andri Yngvason
addcc50483
Bake version info into library
2020-07-26 11:43:29 +00:00
Andri Yngvason
f3e09fd622
Prepare API for multi-display support
...
These changes are made now to make it possible to add multi-display
support in the future while keeping the public interface stable.
2020-04-12 18:16:19 +00:00
Andri Yngvason
737dd311a0
Remove nvnc_set_dimensions()
...
This information is now figured out based on the nvnc_fb passed into
nvnc_set_buffer()
2020-04-12 16:08:33 +00:00
Andri Yngvason
77b866096d
Redesign framebuffer update loop
...
Rendering may now only happen inside the rendering callback. The user is
also allowed to change out the entire buffer in the callback.
The callback is triggered by nvnc_damage_region(), nvnc_damage_whole()
and/or framebuffer update requests.
This fixes #26
2020-04-07 23:35:57 +00:00
Andri Yngvason
8fc5c18b28
Don't show partial frames to new clients
2020-04-04 14:00:03 +00:00
Andri Yngvason
f45f90ed9b
nvnc_fb: Add a mechanism for signaling that a frame is in use
2020-04-04 12:33:18 +00:00
Andri Yngvason
61efca48f0
damage: Increment/decrement reference count before/after check
...
This is prudent. The user might throw away these buffers before the
damage check finishes.
2020-01-29 21:33:13 +00:00
Andri Yngvason
19e4e42036
Implement VeNCrypt with x509 plain authentication
2020-01-25 15:35:14 +00:00
Andri Yngvason
80b1f3cb4c
Re-format using clang-format
2019-10-20 22:13:51 +00:00
Andri Yngvason
e9f200f4cc
Excise y-inversion code
2019-10-08 17:58:35 +00:00
Andri Yngvason
4beaf88a35
Turn around frame update model
...
Keeping a framebuffer for clients to request from seems to be a better fit for
the VNC standard.
2019-10-07 20:29:12 +00:00
Andri Yngvason
3196a7a46b
Make nvnc_fb opaque
2019-10-07 17:39:54 +00:00
Andri Yngvason
7d4af0e741
Encode on worker threads
2019-09-15 21:53:10 +00:00
Andri Yngvason
70b2448c6e
Create utility function for checking buffer damage
2019-09-15 21:53:10 +00:00
Andri Yngvason
b0fb22bdd6
Rename inc -> include for sake of convention
2019-09-14 16:07:34 +00:00