How can I share a single application window with TightVNC?

5

1

I am looking for a tool that allows single window sharing using VNC. From the TightVNC what's new page under TightVNC 1.3dev1, Win32 development (unstable) version, it says

Implemented partial screen sharing. Any single window or any rectangular screen area can be shared instead of the whole screen. The position and dimensions of the shared screen area can be changed dynamically, and client windows will adjust their dimensions on the fly. The user interface to choose shared screen area is very intuitive and easy to use.

I don't know if this means that it is only available for the windows version or not. This question doesn't say that is is windows-only but doesn't describe how to set it up.

I have installed TightVNC server on an Ubuntu server. It is version

:~$ vncserver -h
TightVNC Server version 1.3.9

I installed ubuntu-desktop on the server and am able to view the entire desktop successfully.

My question is, is it possible to share a single window or application from linux? If so, how do I go about it? If not, is there a different open source tool that I can use to do so?

Craigy

Posted 2012-02-24T20:58:15.530

Reputation: 153

Answers

5

Xpra and winswitch might also be worth looking at - the former is a screenlike software for moving windows between systems, and the other is a frontend for that. It seems to have compression and such, and lets you transfer windows cross platform

Journeyman Geek

Posted 2012-02-24T20:58:15.530

Reputation: 119 122

This looks like what I want, thanks! Do you know of a tutorial for setting up the xpra server and window switch client correctly? The instructions on the website were not enough to help me get it working. – Craigy – 2012-03-04T14:26:58.180

Its one of the things i need to mess around with, when i have the time, i'm afraid. I'm currently up to my neck in schoolwork, but will update when i get a chance with instructions, probably after the 24th, when things get saner. – Journeyman Geek – 2012-03-04T14:30:43.940

6

You might try using x11vnc to share a single window by doing :

  1. Run xwininfo from a console. It will change your cursor. Click on the window you want to share. xwininfo will print out the window id.
  2. Run : x11vnc -id {replace-by-window-id}

source

You might also have a look at the free SharedAppVNC.

harrymc

Posted 2012-02-24T20:58:15.530

Reputation: 306 093

3

Linux VNC servers work differently from Windows VNC servers.

Specifically, tightvnc does not share the contents of the local physical screen over VNC protocol - it instead creates a separate X11 (gui) session, with a virtual display, and shares the contents of such virtual display over VNC.

On windows, there was no concept of separate GUI sessions for a long time, until recently via Remote Desktop, which is a hybrid solution. Which means windows VNC servers essentially mirror the contents of the primary monitor in their own memory, and send that virtual copy over VNC. It is thus sometimes desirable to be able to limit which chunk of a physical display to mirror - hence, the feature.

On Linux, you can either try creating a VNC display of arbitrary size (since it's not limited by any physical hardware, try -geometry option), and running your application inside, full-screen.. which would come close, or use the native X11 forwarding which basically just creates a window on a remote linux machine. X11, unfortunately, is not compressed.

qdot

Posted 2012-02-24T20:58:15.530

Reputation: 696

1ssh -X <remote_server> application is the command for x forwarding a single window i believe - you can also do it with compression with -Xc i believe. – Journeyman Geek – 2012-02-25T06:04:22.507

1

@Journeyman Geek - X11 forwarding is nice, but it can be laggy. NX is a caching proxy that makes X over ssh when your link speed is slow behave a lot better.

– Fake Name – 2012-02-25T07:19:55.260

NX can be used with one window? Its my prefered method when i need to access a graphic desktop remotely on a linux system – Journeyman Geek – 2012-02-25T07:22:22.987