Hi Sebastian,

Our specific problem is that while a screen share session is running
with remote control, if the user presses the spacebar or enter key the
keyboard input will stop working for the remote-controlling user.

The reason for this appears to be that when space or enter are pressed,
a new viewer session is started using the "startViewerSession" method in
the screenSharingDialog.lzx file. The debug log data posted in my
initial email suggests this. I don't think the problem is on the
receiving side, since when both the sender and receiver have a Laszlo
Debugger running, error messages appear only on the sender's side when
input is being sent.

I have searched through the source and have not found a place where this
behavior for the space and enter keys is set. In
build/openlaszlo/lps/components/base/componentmanager.lzx, there appears
to be a dispatchKeyDown method starting on line 62 that specifies some
special method hooks for keyup/keydown events on space and enter
(keycodes 13 and 32), but commenting out this code and recompiling the
Laszlo app did nothing.

Do you know how we could disable starting a new viewer session when
space or enter are pressed? Thanks for your help.


On Tue, Aug 14, 2012 at 4:15 AM, [email protected] <
[email protected]> wrote:

> Hello Kyle,
>
> I am not sure if I understood your issues correctly.
> It sounds like two issues:
> - Space and enter keys are not working for you
> - A special action happens in the client when you press those keys
> (sounds like an issue with a key-shortcut that uses the same
> key-combo)
>
> Let me give you some details about Remote-Control and keys:
> Depending on what operating system you are using the key-codes that we
> have to listen in the client are different:
>
> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/screensharing/screenSharingDialog.lzx?view=markup
> Line: 230 and following.
> => This is where the client will listen to keydown events and
> calculates based on the operating system that is in use what key was
> pressed.
> The process is that by default it will pass the key-code number
> "as-is" via rtmp-message-object to the Java-WebStart application that
> runs on the remote screen.
> But for special keys where key-codes are not the same, the key-code is
> set to -1 and the raw string is transfered instead. On the receiving
> side (the Java WebStart application) this raw string will be simulated
> as input if they key-code is -1. Otherwise it will just use the
> key-code.
>
> The processing of the message "receiving side" (the Java WebStart
> application) source code is at:
>
> http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/src/org/openmeetings/screen/webstart/CoreScreenShare.java?view=markup
> Line: 414 and following
> => Here you can see some shift for some standard-key codes and the
> simulation of the string if key code is -1.
> On the receiving side there is no different processing of key-codes as
> Java should have the same key codes on all platforms from my point of
> view.
>
> And now to your question: As you can see it really depends on what
> operating system you are using on the client side.
> Potentially also what the OS of the client that runs the Java WebStart
> application.
> Then you need to run the debug version of the client to lookup
> eventually issues with the key code.
> And then you might look at the Console output of the Java WebStart
> application.
>
> Based on that it should be rather easy to find out which key codes
> might be wrong.
>
> Sebastian
>
>
>
>
> 2012/8/13 Kyle Stephenson <[email protected]>:
> > Hello,
> >
> > I've been working on setting up an OpenMeetings system where users will
> > often need to remotely enter text on each others' computers. I've
> > encountered a problem in that when a user is remotely entering text
> > using the Java screen share applet, remote keyboard control will stop
> > working when the remote-controlling user presses the space or enter keys.
> >
> > After doing some Flash debugging I've uncovered what looks like a reason
> > for the remote input failures when space or enter are pressed. Below is
> > a portion of the debug log during a screen sharing session with remote
> > keyboard input.
> >
> > It appears that when space (code 32) or enter (code 13) are pressed, a
> > new OpenMeetings meeting object is initialized, judging by the
> > parameters of the initialized object. The question is, then, how to
> > prevent this from happening?
> >
> > The OM documentation doesn't mention the use of space or enter to launch
> > a new session. Do you or anyone know what .lzx source file the keycodes
> > would be specified in so I can disable them? Thank you.
> >
> > onkeydown  70
> > downkeys  «Array(1)#41| [70]» 1
> > onkeyup  70
> > tObject ::  «Object#45| {action: 'onkeyup', k: 70}» true false
> > onkeydown  16
> > downkeys  «Array(1)#41| [16]» 1
> > onkeyup  16
> > tObject ::  «Object#46| {action: 'onkeyup', k: 16}» true false
> > onkeydown  16
> > downkeys  «Array(1)#41| [16]» 1
> > onkeyup  16
> > tObject ::  «Object#47| {action: 'onkeyup', k: 16}» true false
> > onkeydown  32
> > downkeys  «Array(1)#41| [32]» 1
> > this.initObject  «Object#39| {allowRecording: true, …, broadCastID: -2,
> > canDraw: false, canGiveAudio: false, canRemote: false, canShare: false,
> > chatUserRoomId: null, connectedSince: Sat Aug 4 12:15:43 GMT-0700 2012,
> > externalUserId: null, externalUserType: null, firstname: 'Electronic',
> > flvRecordingId: null, flvRecordingMetaDataId: null, formatedDate: null,
> > interviewPodId: null, isAVClient: false, isBroadcasting: false,
> > isChatNotification: false, isMod: false, isRecording: false,
> > isScreenClient: true, isSuperModerator: false, …, lastLogin: null,
> > lastname: 'Name', mail: null, micMuted: false, official_code: null,
> > organization_id: 1, picture_uri: null, publicSID:
> > '
> > f81939f3d735f3cd951239715c7c0e70', room_id: 8, roomClientId: null,
> > roomEnter: null, roomRecordingName: null, scope: '8',
> > screenPublishStarted: false, …, startRecording: false, startStreaming:
> > true, streamid: '42', streamPublishName:
> > '22a39439eed2b5670cbe6cbb3390d30b', …, user_id: 5, usercolor: null,
> > userip: '0.0.0.0', …, userport: 39191, userpos: null, VHeight: 367,
> > VWidth: 1265, VX: 614, VY: 270, zombieCheckFlag: false}»
> > STOP:  play «flash.net::NetStream#48| [object NetStream]»
> > onkeyup  32
> > tObject ::  «Object#49| {action: 'onkeyup', k: 32}» true false
> > onstop this._y.to  0
> > newZoom  89
> > setSliderValue  89
> > onkeydown  32
> > downkeys  «Array(1)#41| [32]» 1
> > this.initObject  «Object#39| {allowRecording: true, …, broadCastID: -2,
> > canDraw: false, canGiveAudio: false, canRemote: false, canShare: false,
> > chatUserRoomId: null, connectedSince: Sat Aug 4 12:15:43 GMT-0700 2012,
> > externalUserId: null, externalUserType: null, firstname: 'Electronic',
> > flvRecordingId: null, flvRecordingMetaDataId: null, formatedDate: null,
> > interviewPodId: null, isAVClient: false, isBroadcasting: false,
> > isChatNotification: false, isMod: false, isRecording: false,
> > isScreenClient: true, isSuperModerator: false, …, lastLogin: null,
> > lastname: 'Name', mail: null, micMuted: false, official_code: null,
> > organization_id: 1, picture_uri: null, publicSID:
> > 'f81939f3d735f3cd951239715c7c0e70', room_id: 8, roomClientId: null,
> > roomEnter: null, roomRecordingName: null, scope: '8',
> > screenPublishStarted: false, …, startRecording: false, startStreaming:
> > true, streamid: '42', streamPublishName:
> > '22a39439eed2b5670cbe6cbb3390d30b', …, user_id: 5, usercolor: null,
> > userip: '0.0.0.0', …, userport: 39191, userpos: null, VHeight: 367,
> > VWidth: 1265, VX: 614, VY: 270, zombieCheckFlag: false}»
> > STOP:  play «flash.net::NetStream#50| [object NetStream]»
> > onkeyup  32
> > tObject ::  «Object#51| {action: 'onkeyup', k: 32}» true false
> > onstop this._y.to  0
> > newZoom  89
> > setSliderValue  89
> > onkeydown  32
> > downkeys  «Array(1)#41| [32]» 1
> > this.initObject  «Object#39| {allowRecording: true, …, broadCastID: -2,
> > canDraw: false, canGiveAudio: false, canRemote: false, canShare: false,
> > chatUserRoomId: null, connectedSince: Sat Aug 4 12:15:43 GMT-0700 2012,
> > externalUserId: null, externalUserType: null, firstname: 'Electronic',
> > flvRecordingId: null, flvRecordingMetaDataId: null, formatedDate: null,
> > interviewPodId: null, isAVClient: false, isBroadcasting: false,
> > isChatNotification: false, isMod: false, isRecording: false,
> > isScreenClient: true, isSuperModerator: false, …, lastLogin: null,
> > lastname: 'Name', mail: null, micMuted: false, official_code: null,
> > organization_id: 1, picture_uri: null, publicSID:
> > 'f81939f3d735f3cd951239715c7c0e70', room_id: 8, roomClientId: null,
> > roomEnter: null, roomRecordingName: null, scope: '8',
> > screenPublishStarted: false, …, startRecording: false, startStreaming:
> > true, streamid: '42', streamPublishName:
> > '22a39439eed2b5670cbe6cbb3390d30b', …, user_id: 5, usercolor: null,
> > userip: '0.0.0.0', …, userport: 39191, userpos: null, VHeight: 367,
> > VWidth: 1265, VX: 614, VY: 270, zombieCheckFlag: false}»
> > STOP:  play «flash.net::NetStream#52| [object NetStream]»
> > onkeyup  32
> > onkeydown  13
> > downkeys  «Array(1)#41| [13]» 1
> > this.initObject  «Object#39| {allowRecording: true, …, broadCastID: -2,
> > canDraw: false, canGiveAudio: false, canRemote: false, canShare: false,
> > chatUserRoomId: null, connectedSince: Sat Aug 4 12:15:43 GMT-0700 2012,
> > externalUserId: null, externalUserType: null, firstname: 'Electronic',
> > flvRecordingId: null, flvRecordingMetaDataId: null, formatedDate: null,
> > interviewPodId: null, isAVClient: false, isBroadcasting: false,
> > isChatNotification: false, isMod: false, isRecording: false,
> > isScreenClient: true, isSuperModerator: false, …, lastLogin: null,
> > lastname: 'Name', mail: null, micMuted: false, official_code: null,
> > organization_id: 1, picture_uri: null, publicSID:
> > 'f81939f3d735f3cd951239715c7c0e70', room_id: 8, roomClientId: null,
> > roomEnter: null, roomRecordingName: null, scope: '8',
> > screenPublishStarted: false, …, startRecording: false, startStreaming:
> > true, streamid: '42', streamPublishName:
> > '22a39439eed2b5670cbe6cbb3390d30b', …, user_id: 5, usercolor: null,
> > userip: '0.0.0.0', …, userport: 39191, userpos: null, VHeight: 367,
> > VWidth: 1265, VX: 614, VY: 270, zombieCheckFlag: false}»
> > STOP:  play «flash.net::NetStream#58| [object NetStream]»
> > onkeyup  13
> >
> >
> > --
> >
> > *Best Regards,*
> > *
> > *
> > *Kyle Stephenson*
>
>
>
> --
> Sebastian Wagner
> https://twitter.com/#!/dead_lock
> http://www.webbase-design.de
> http://www.wagner-sebastian.com
> [email protected]
>



-- 

*Best Regards,*
*
*
*Kyle Stephenson*
*
*
*Senior Vice President* | [image: Inline image
1]<http://facebook.com/settleware>
 [image: Inline image 2] <http://twitter.com/settleware> [image: Inline
image 
3]<http://www.linkedin.com/groups/Settleware-Secure-Services-eSigning-Pioneers-3408006?home=&gid=3408006&trk=anet_ug_hm>
|
919-395-7750

[image: Inline image 4] <https://settleware.com/>

LEGAL DISCLAIMER:

The information transmitted is intended solely for the individual or entity
to which it is addressed and may contain confidential and/or privileged
material. Any review, retransmission, dissemination or other use of or
taking action in reliance upon this information by persons or entities
other than the intended recipient is prohibited. If you have received this
email in error please contact the sender and delete the material from any
computer.

Reply via email to