[ 
https://issues.apache.org/jira/browse/GUACAMOLE-258?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15948587#comment-15948587
 ] 

Michael Jumper commented on GUACAMOLE-258:
------------------------------------------

{quote}
Ok thanks for the reply. But perhaps I didn't phrase my question correctly or I 
don't understand your response.

It sounds like you are saying the javascript/web socket code can not access the 
computer's clipboard, without some type of extension and/or permission request. 
I get that.
{quote}

Yes, the JavaScript code cannot access the clipboard except in specific 
circumstances.

No, WebSocket has nothing to do with this.

{quote}
What I'm asking is the ability for the user to paste directly onto the session 
screen.... I'm not asking for the guac code to access the clipboard. Again, 
maybe I'm not understanding what you're saying.
{quote}

I think you understand in principle, but you're bypassing some fundamentals, 
which is leading you to disconnect the concept of clipboard from the domain of 
what JavaScript has to handle.

You _are_ in fact asking for the guac code to access the clipboard. There is no 
"session screen" which could somehow receive what you paste and transmit it to 
the remote desktop (or SSH in this case) without Guacamole (JavaScript) 
mitigating that transmission. The only way that anything ever reaches the other 
side is through (1) JavaScript handling that data, (2) Guacamole shuttling that 
data along the tunnel, whether that be WebSocket or HTTP, and (3) the server 
side of the web application receiving the data along the tunnel, passing it to 
guacd, etc.

Each layer of the stack has to pass things through to the next, and the 
absolute top level of all this is JavaScript. If JavaScript can't access the 
data in question, then there's no way for that data to be used anywhere else 
down the line.

Does that make more sense?

{quote}
Also, my first option may make opening the clipboard panel easier - i.e., 
trigger the panel opening when the mouse is moved to the left side, or 
something along those lines.
{quote}

A key design principle behind Guacamole's interface is seamlessness. To the 
extent possible, there need to be no UI elements which intrude into the display 
reminding the user that they are using a remote machine. While the panel would 
still be initially hidden in the case you describe, having it pop out when the 
mouse is moved to the left would disrupt the session in regular use. It might 
not affect SSH or telnet much, but it would wear very thin for desktop sessions.

Guacamole used to have a pop out menu at the top of the screen providing this, 
but it was removed for the issues noted above. It felt like you were being 
attacked by menus whenever the mouse strayed into the trigger area.

{quote}
I am positive about one thing: there is another web-to-ssh project on github 
called EC2Box. It does allow the user paste content directly into the web/ssh 
session.
{quote}

Yes, and no doubt other JavaScript applications with easier access to the 
clipboard.

There are restricted cases where the clipboard can be accessed by JavaScript 
which would be compatible with a solution that does not need to handle a full 
range of remote desktop events (namely mouse and some key combinations). If the 
JavaScript client can know ahead of time that things are purely keyboard-driven 
and only a small subset of possible key combinations is used, the rest can be 
allowed through, and poof: clipboard.

Things are more complicated in the Guacamole case where the solution is 
protocol-agnostic. We can choose between allowing some user events through to 
the browser, gaining clipboard access but risking strange things happening when 
the user tries to interact with their desktop, or handle all events to the 
highest extent possible, losing clipboard access but providing a good remote 
desktop experience.

I think the best place for improvement in this area is in the browser. If the 
existing clipboard APIs can be freed up a bit like the other modern JavaScript 
APIs (with a consistent permission granting system), then the core issue 
preventing this sort of thing from working would be solved.

> copy/paste directly on to ssh screen session
> --------------------------------------------
>
>                 Key: GUACAMOLE-258
>                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-258
>             Project: Guacamole
>          Issue Type: Wish
>          Components: guacamole-client
>            Reporter: Jonathan Johnson
>            Priority: Minor
>
> Hi - not sure if this has been discussed before, if it has, apologies, I 
> didn't see it.
> IMHO, pressing ctrl+alt+shift to open the left side 'clipboard' panel, 
> pasting text, closing the panel, and then right click (to copy the content 
> into the ssh session) is very cumbersome. 
> Could guacamole be enhanced to either:
> 1. allow the mouse pointer to open/close the panel
> 2. allow the user to copy and/or paste content directly onto the ssh terminal
> Thanks.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to