| 273 | | // FIXME: we need a way to disconnect this extra listener |
| 274 | | if(node && (event=="onkeypress")){ |
| 275 | | de.addListener(node, "onkeydown", de._nop); |
| 276 | | } |
| 277 | | return iel.add(node, event, de._fixCallback(fp)); |
| | 273 | var handle = iel.add(node, event, de._fixCallback(fp)); |
| | 274 | if(event=="onkeypress"){ |
| | 275 | // FIXME: we are using the knowledge that handle |
| | 276 | // is an Integer, which is supposed to be private. |
| | 277 | // Perhaps the listener could natively return a |
| | 278 | // Number object instead of a concrete value. |
| | 279 | handle = new Number(handle); |
| | 280 | handle.keydown = de.addListener(node, "onkeydown", de._nop); |
| | 281 | } |
| | 282 | return handle; |