Hi igor how should I convert code like that [ Sensor anyButtonPressed ] whileFalse: [ aBitBlt destOrigin: Sensor cursorPoint. aBitBlt copyBits ]. So that it avoid polling? Should we change contents := (Sensor shiftPressed not) ifTrue: [currentCompiledMethod decompileWithTemps] ifFalse: [currentCompiledMethod decompile]. contents := contents decompileString asText makeSelector or [(nextEvent := Sensor peekEvent) isNil] whileFalse: [nextEvent first = currentBuf first ifFalse: [^trail contents "different event type"]. nextEvent fifth = currentBuf fifth ifFalse: [^trail contents "buttons changed"]. nextEvent sixth = currentBuf sixth ifFalse: [^trail contents "modifiers changed"]. "nextEvent is similar. Remove it from the queue, and check the next." nextEvent := Sensor nextEvent. nextEvent ifNotNil: [ trail nextPut: nextEvent third @ nextEvent fourth ]]. Then when I install the nonpolling behavior InputEventSensor installPollingEventSensorFramework the menu of the world gets sluggish (may be I do not use the right VM BTW). Stef