[squeak-dev] The Inbox: Morphic-mva.1465.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Nov 7 20:34:11 UTC 2018
A new version of Morphic was added to project The Inbox:
http://source.squeak.org/inbox/Morphic-mva.1465.mcz
==================== Summary ====================
Name: Morphic-mva.1465
Author: mva
Time: 7 November 2018, 9:30:51.376226 pm
UUID: 8ece769f-8df7-436c-8d42-37f798a6849a
Ancestors: Morphic-eem.1464
Convert Ctrl-left/right to mouse wheel events to fix
"VM sending keystrokes on mouse-wheel?"
http://forum.world.st/VM-sending-keystrokes-on-mouse-wheel-td5088162.html
using Tom Beckmann's idea.
Use the generated wheeelLeft and wheelRight
events in ScrollPane to scroll sideways if horizontal
scrollbars are not suppressed by
alwaysHideHScrollbar preference.
=============== Diff against Morphic-eem.1464 ===============
Item was changed:
----- Method: HandMorph>>filterEvent:for: (in category 'events-filtering') -----
filterEvent: aKeyboardEvent for: aMorphOrNil
"Fixes VM behavior. Usually, there are no mouse wheel events generated by the VM but CTRL+UP/DOWN. Convert these into mouse wheel events.
We installed ourself as keyboard filter only!! No need to check whether this is a keyboard event or not!! See HandMorph >> #initForEvents.
Might be removed in the future if this mapping gets obsolete."
HandMorph synthesizeMouseWheelEvents ifFalse: [^ aKeyboardEvent].
(aKeyboardEvent isKeystroke and: [aKeyboardEvent controlKeyPressed]) ifTrue: [
aKeyboardEvent keyCharacter caseOf: {
[Character arrowUp] -> [^ self generateMouseWheelEvent: aKeyboardEvent direction: 2r1000].
[Character arrowDown] -> [^ self generateMouseWheelEvent: aKeyboardEvent direction: 2r0100].
+ [Character arrowLeft] -> [^ self generateMouseWheelEvent: aKeyboardEvent direction: 2r0010].
+ [Character arrowRight] -> [^ self generateMouseWheelEvent: aKeyboardEvent direction: 2r0001].
} otherwise: [^ aKeyboardEvent]].
^ aKeyboardEvent!
Item was changed:
----- Method: ScrollPane>>mouseWheel: (in category 'event handling') -----
mouseWheel: evt
evt isWheelUp ifTrue: [scrollBar scrollUp: 3].
+ evt isWheelDown ifTrue: [scrollBar scrollDown: 3].
+ evt isWheelLeft ifTrue: [hScrollBar scrollUp: 3].
+ evt isWheelRight ifTrue: [hScrollBar scrollDown: 3].
+ !
- evt isWheelDown ifTrue: [scrollBar scrollDown: 3].!
More information about the Squeak-dev
mailing list
|