diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2018-08-21 02:02:50 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2018-08-21 02:02:50 +0200 |
commit | 37cbd6b632c56f09c0c561cddc1c4e5645dd4269 (patch) | |
tree | 91b6b7d6ad4c38216738e6d225626a371a049242 /sys/src/cmd/vnc/draw.c | |
parent | f8f677b48ebaf490c6d870e8728285bc409789c0 (diff) |
vncv: adjust window size on desktop resize, fix canresize checks
Diffstat (limited to 'sys/src/cmd/vnc/draw.c')
-rw-r--r-- | sys/src/cmd/vnc/draw.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/src/cmd/vnc/draw.c b/sys/src/cmd/vnc/draw.c index eac717833..b83060f69 100644 --- a/sys/src/cmd/vnc/draw.c +++ b/sys/src/cmd/vnc/draw.c @@ -29,6 +29,9 @@ vncsetdim(Vnc *v, Rectangle dim) pixbuf = realloc(pixbuf, v->dim.max.x * pixb * v->dim.max.y); if(linebuf == nil || pixbuf == nil) sysfatal("can't allocate pix decompression storage"); + lockdisplay(display); + adjustwin(v, 0); + unlockdisplay(display); } static void @@ -79,7 +82,7 @@ requestupdate(Vnc *v, int incremental) r = rectsubpt(screen->r, screen->r.min); unlockdisplay(display); vnclock(v); - if(incremental == 0 && v->canresize && !eqrect(r, v->dim)){ + if(incremental == 0 && (v->canresize&2)!=0 && !eqrect(r, v->dim)){ vncwrchar(v, MSetDesktopSize); vncwrchar(v, 0); vncwrpoint(v, r.max); |