@Kyle Thanks for the detailed investigation

AFAIK there is no JIRA issue, only lots of user claims.


On Tue, Aug 21, 2012 at 9:56 PM, [email protected]
<[email protected]> wrote:
> Is there an open Jira issue available for this issue?
>
>
> 2012/8/21 Kyle Stephenson <[email protected]>:
>> 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.
>
>
>
> --
> Sebastian Wagner
> https://twitter.com/#!/dead_lock
> http://www.webbase-design.de
> http://www.wagner-sebastian.com
> [email protected]



-- 
WBR
Maxim aka solomax

Reply via email to