<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        Hi all!<div><br></div><div>Please find attached an updated changeset with a "KeyboardExerciser" to help you test and inspect the incoming keyboard events. You can find it also in the parts bin nearby the "ClickExerciser".</div><div><br></div><div><img id="eb35c686-9e75-46ed-8fe0-d3502938a35e" src="cid:06bbd752-489b-416d-b6f8-ab933628aa8d" width="486" height="139"></img><br></div><div>The visuals are supposed to look platform-specific. However, the event data contains information to make your application work across platforms. See KeyboardEvent >> #checkCommandKey for more explanations.</div><div><br></div><div>Try [CTRL]+[C] for keyStroke, keyDown, and keyUp.</div><div><br></div><div>Note that the visuals might not look right for keyUp and keyDown events due to missing lookup tables for the raw, platform-specific key codes. On my machine, for example, [,] and [.] and [-] look odd:</div><div><br></div><div><img id="55aaed9c-92a9-4dd3-855f-beef6ebfddf9" src="cid:3f43f140-428f-4d7b-8352-e130f32f1640" width="328" height="38"></img><br></div><div><br></div><div>Nothing to worry about because all keyboard shortcuts in Squeak use keyStroke events at the moment.</div><div><br></div><div>Best,</div><div>Marcel</div><div class="mb_sig"></div>
                                        <blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
                        <p style="color: #AAAAAA; margin-top: 10px;">Am 22.04.2021 10:41:15 schrieb Marcel Taeumel <marcel.taeumel@hpi.de>:</p><div style="font-family:Arial,Helvetica,sans-serif"><div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">Hi all!<div class="mb_sig"></div><div><br></div><div>Please find attached a changeset that improves the cross-platform base for keystroke events. Please try it out and take a look at it. Report issues ASAP so that I can merge it into Trunk soon.</div><div><br></div><div>Thanks to Tom (tobe), the new promising idea is to replace the existing attempt:</div><div><br></div><div>Duplicate all control and alt keys</div><div>Duplicate control and alt keys</div><div>Swap control and alt keys</div><div><br></div><div>With the following preferences:</div><div><br></div><div>[X] Map ASCII control characters to printable characters<br></div><div> - Default is TRUE</div><div> - Only affects events that have the CONTROL modifier set (e.g. CTRL+J)</div><div> - Rather application-specific than platform-specific</div><div>[X] Map CONTROL keys to COMMAND keys<br></div><div> - Checked at image start-up</div><div> - TRUE on Windows/Linux</div><div> - FALSE on macOS</div><div>[X] M<span style="font-size: 10pt">ap ALT keys to OPTION keys</span></div><div> - Checked at image start-up</div><div> - TRUE on Windows/Linux</div><div> - FALSE on macOS (bc. ALT==CMD on recent Linux/Windows VMs)</div><div><br></div><div>Please take a look at KeyboardEvent >> #checkCommandKey to learn about the fundamental trade-off we have solved.</div><div><br></div><div>Please try out your preferred applications. Feel free to add logging to HandMorph >> #logEvent: for more convenient testing:</div><div><br></div><div><div><span style="font-size: 13.3333px">(anEvent isKeyboard and: [anEvent isKeystroke])</span></div><div><span style="font-size: 13.3333px">   ifTrue: [</span>Transcript showln: anEvent].</div></div><div><br></div><div>Thanks!</div><div><br></div><div>Best,</div><div>Marcel (and Tom)</div></div></div></blockquote></div>