mixu / nwm

Tiling window manager for X11 written in Node.js
http://mixu.net/nwm/
MIT License
789 stars 72 forks source link

Remote access #17

Closed ghost closed 12 years ago

ghost commented 12 years ago

Following up on my remote access question in Issue 16 here (I can't reopen the issue): https://github.com/mixu/nwm/issues/16

I'm not sure I follow how you're framing remote access.

I'm trying to use nwm remotely through a browser -- the browser on a client machine would connect to the nwm server and then could open, say, OpenOffice Word Processor or something like that, and I could use the application through my browser while it's running on the remote machine.

I've been playing around with trying to get remote access established in a browser via node-canvas and socket.io. Is this possible / what you were getting at? I haven't been able to get a working proof of concept as of yet.

As you mention, I'm trying to avoid VNC, but basically accomplish the same/similar outcomes. The rationale for the project is to test latency: my suspicion is, if this setup can work, the latency of this setup would be less than VNC.

mixu commented 12 years ago

Sorry, I was unclear: you just get the information a regular window manager has which does not include drawing API requests.

"Window managers (WMs) are X clients that provide the border around a window. The window manager controls the appearance of an application and how it is managed: the border, titlebar, size, and ability to resize a window are handled by window managers."

https://wiki.archlinux.org/index.php/Window_Manager

So you cannot get access to window pixmaps, that's the job of the X11 server, not the window manager. Window managers just deal with events, like maprequest (window sizes, locations, reparenting etc.; http://static.cray-cyber.org/Documentation/NEC_SX_R10_1/G1AE02E/CHAP10.HTML ).

You would need to have an X11 server emulator in order to do something like vnc; or perhaps an X11 proxy.

The remote access is limited to what is exposed by the native binding and design of X11: you can remotely operate on windows but capturing and streaming window bitmaps themselves is a whole different problem because it's not something a window manager implements.

ghost commented 12 years ago

Got it -- thanks. I just figured I could do something crazy because this was the first legit window mgr I saw in JS.