@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
