on master help sign in
Drop repeats by default on arrows, directions, wasd, and isDown
commit24da7112a955b17c1d5292587f36254ced066c70 authorEvan Czaplicki <info@elm-lang.org> dateMon 14 Oct 2013, 13:33 (13 years ago) parenta29a1fd
1 file changed+6−3
libraries/Native/Signal/Keyboard.js+6−3
libraries/Native/Signal/Keyboard.js+6−3
@@ -77,10 +77,13 @@ Elm.Native.Keyboard.make = function(elm) {
7777
7878 function keySignal(f) {
7979 var signal = A2(Signal.lift, f, keysDown);
80− // what's the significance of these two following lines? -jpm
80+ // must set the default number of kids to make it possible to filter
81+ // these signals if they are not actually used.
8182 keysDown.defaultNumberOfKids += 1;
82− signal.defaultNumberOfKids = 0;
83− return signal;
83+ signal.defaultNumberOfKids = 1;
84+ var filtered = Signal.dropRepeats(signal)
85+ filtered.defaultNumberOfKids = 0;
86+ return filtered;
8487 }
8588
8689 function dir(up, down, left, right) {