@@ -121,6 +121,7 @@ cc.TouchHandlerHelperData = function (type) {
121
121
* @extends cc.Class
122
122
*/
123
123
cc . TouchDispatcher = cc . Class . extend ( /** @lends cc.TouchDispatcher# */ {
124
+ _mousePressed :false ,
124
125
_targetedHandlers :null ,
125
126
_standardHandlers :null ,
126
127
_locked :false ,
@@ -146,10 +147,19 @@ cc.TouchDispatcher = cc.Class.extend(/** @lends cc.TouchDispatcher# */{
146
147
this . _toAdd = false ;
147
148
this . _toQuit = false ;
148
149
this . _locked = false ;
150
+ this . _mousePressed = false ;
149
151
cc . TouchDispatcher . registerHtmlElementEvent ( cc . canvas ) ;
150
152
return true ;
151
153
} ,
152
154
155
+ _setMousePressed :function ( pressed ) {
156
+ this . _mousePressed = pressed ;
157
+ } ,
158
+
159
+ _getMousePressed :function ( ) {
160
+ return this . _mousePressed ;
161
+ } ,
162
+
153
163
/**
154
164
* Whether or not the events are going to be dispatched. Default: true
155
165
* @return {Boolean }
@@ -350,7 +360,12 @@ cc.TouchDispatcher = cc.Class.extend(/** @lends cc.TouchDispatcher# */{
350
360
claimed = true ;
351
361
switch ( helper . type ) {
352
362
case cc . TOUCH_MOVED :
353
- handler . getDelegate ( ) . onTouchMoved ( touch , event ) ;
363
+ if ( cc . Browser . isMobile ) {
364
+ handler . getDelegate ( ) . onTouchMoved ( touch , event ) ;
365
+ } else {
366
+ if ( this . _mousePressed )
367
+ handler . getDelegate ( ) . onTouchMoved ( touch , event ) ;
368
+ }
354
369
break ;
355
370
case cc . TOUCH_ENDED :
356
371
handler . getDelegate ( ) . onTouchEnded ( touch , event ) ;
@@ -394,7 +409,12 @@ cc.TouchDispatcher = cc.Class.extend(/** @lends cc.TouchDispatcher# */{
394
409
break ;
395
410
case cc . TOUCH_MOVED :
396
411
if ( mutableTouches . length > 0 ) {
397
- handler . getDelegate ( ) . onTouchesMoved ( mutableTouches , event ) ;
412
+ if ( cc . Browser . isMobile ) {
413
+ handler . getDelegate ( ) . onTouchesMoved ( mutableTouches , event ) ;
414
+ } else {
415
+ if ( this . _mousePressed )
416
+ handler . getDelegate ( ) . onTouchesMoved ( mutableTouches , event ) ;
417
+ }
398
418
}
399
419
break ;
400
420
case cc . TOUCH_ENDED :
@@ -606,6 +626,14 @@ cc.TouchDispatcher.registerHtmlElementEvent = function (element) {
606
626
return ;
607
627
608
628
if ( ! cc . Browser . isMobile ) {
629
+ window . addEventListener ( 'mousedown' , function ( event ) {
630
+ cc . Director . getInstance ( ) . getTouchDispatcher ( ) . _setMousePressed ( true ) ;
631
+ } ) ;
632
+
633
+ window . addEventListener ( 'mouseup' , function ( event ) {
634
+ cc . Director . getInstance ( ) . getTouchDispatcher ( ) . _setMousePressed ( false ) ;
635
+ } ) ;
636
+
609
637
//register canvas mouse event
610
638
element . addEventListener ( "mousedown" , function ( event ) {
611
639
var pos = cc . getHTMLElementPosition ( element ) ;
@@ -654,6 +682,10 @@ cc.TouchDispatcher.registerHtmlElementEvent = function (element) {
654
682
655
683
cc . Director . getInstance ( ) . getTouchDispatcher ( ) . touchesMoved ( posArr , null ) ;
656
684
} ) ;
685
+
686
+ element . addEventListener ( "mousewheel" , function ( event ) {
687
+
688
+ } , false ) ;
657
689
} else {
658
690
//register canvas touch event
659
691
element . addEventListener ( "touchstart" , function ( event ) {
0 commit comments