[squeak-dev] The Trunk: Morphic-mt.1998.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Jun 3 08:03:40 UTC 2022


Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.1998.mcz

==================== Summary ====================

Name: Morphic-mt.1998
Author: mt
Time: 3 June 2022, 10:03:38.000381 am
UUID: 50a6fd6c-1405-403a-a99b-7944c2f6ce0a
Ancestors: Morphic-tonyg.1997

For macOS platform, fixes the preference "Legacy keyboard shortcuts (US/UK only)".

Thanks to Tim (tcj) for the pointer!

=============== Diff against Morphic-tonyg.1997 ===============

Item was changed:
  ----- Method: LegacyShortcutsFilter class>>filterEvent:for: (in category 'event filter') -----
  filterEvent: aKeyboardEvent for: textMorph
  
+ 
  	aKeyboardEvent isKeystroke ifFalse: [^ aKeyboardEvent].
  	aKeyboardEvent commandKeyPressed ifFalse: [^ aKeyboardEvent].
  	Preferences cmdKeysInText ifFalse: [^ aKeyboardEvent].
+ 	
+ 	(Smalltalk platformName = 'Mac OS' and: [aKeyboardEvent shiftPressed])
+ 		ifTrue: ["Work around an issue in the VM where SHIFT is not honored
+ 			in the KeyChar event's character. This should only be the case for
+ 			KeyDown events to encode virtual-key presses. The VM should not
+ 			do this for KeyChar events. Works for U.S. keyboard layout only."
+ 			aKeyboardEvent keyValue: (
+ 				aKeyboardEvent keyCharacter caseOf: {
+ 					[$9] -> [$(]. [$0] -> [$)].
+ 					[$,] -> [$<]. [$.] -> [$>].
+ 					[$[] -> [${]. [$]] -> [$}].
+ 					[$'] -> [$"] }
+ 						otherwise: [aKeyboardEvent keyCharacter]) asInteger].
+ 	
- 		
  	('()[]{}|''"<>' includes: aKeyboardEvent keyCharacter)
  		ifTrue: [textMorph
  				handleInteraction: [(textMorph editor enclose: aKeyboardEvent) ifTrue: [aKeyboardEvent ignore]]
  				fromEvent: aKeyboardEvent].
  
  	^ aKeyboardEvent
  
  "
  Preferences cmdKeysInText
  Preferences cmdGesturesEnabled
  Preferences honorDesktopCmdKeys
  PasteUpMorph globalCommandKeysEnabled.
  "!



More information about the Squeak-dev mailing list