'From etoys4.0 of 9 October 2008 [latest update: #2265] on 8 September 2009 at 4:53:51 am'! "Change Set: swapCtrlAlt-bf Date: 7 September 2009 Author: Bert Freudenberg Restore swapping on Linux."! !EventSensor methodsFor: 'private-I/O' stamp: 'bf 9/8/2009 04:52'! swapControlAndAltKeys: evt | char | char := evt at: 3. "Cursor keys and mouse wheel are not switched." (#(28 29 30 31) includes: char) ifTrue: [^ self]. (evt at: 5) == CtrlKeyBit ifTrue: ["Ctrl -> Alt (^A -> a)" char < 32 ifTrue: [#(3 6) do: [:ind | evt at: ind put: (char bitOr: 16r60)]]. evt at: 5 put: 8] ifFalse: [(evt at: 5) == CommandKeyBit ifTrue: ["Alt -> Ctrl (a -> ^A)" (char >= 16r60 and: [char < 16r80]) ifTrue: [#(3 6) do: [:ind | evt at: ind put: (char bitAnd: 16r1F)]]. evt at: 5 put: 2]].! !