@@ -369,7 +369,7 @@ protected override LibWaterboxCore.FrameInfo FrameAdvancePrep(IController contro
369
369
if ( _syncSettings . EnableMouse )
370
370
{
371
371
// Getting new mouse state values
372
- DOSBox . MouseState nextState = new ( )
372
+ DOSBox . MouseState mouseState = new ( )
373
373
{
374
374
PosX = controller . AxisValue ( $ "{ Inputs . Mouse } { MouseInputs . PosX } ") ,
375
375
PosY = controller . AxisValue ( $ "{ Inputs . Mouse } { MouseInputs . PosY } ") ,
@@ -380,26 +380,26 @@ protected override LibWaterboxCore.FrameInfo FrameAdvancePrep(IController contro
380
380
381
381
var deltaX = controller . AxisValue ( $ "{ Inputs . Mouse } { MouseInputs . SpeedX } ") ;
382
382
var deltaY = controller . AxisValue ( $ "{ Inputs . Mouse } { MouseInputs . SpeedY } ") ;
383
- fi . Mouse . PosX = nextState . PosX ;
384
- fi . Mouse . PosY = nextState . PosY ;
385
- fi . Mouse . DeltaX = deltaX != 0 ? deltaX : fi . Mouse . PosX - _mouseState . PosX ;
386
- fi . Mouse . DeltaY = deltaY != 0 ? deltaY : fi . Mouse . PosY - _mouseState . PosY ;
383
+ fi . Mouse . PosX = mouseState . PosX ;
384
+ fi . Mouse . PosY = mouseState . PosY ;
385
+ fi . Mouse . DeltaX = deltaX != 0 ? deltaX : fi . Mouse . PosX - _lastMouseState . PosX ;
386
+ fi . Mouse . DeltaY = deltaY != 0 ? deltaY : fi . Mouse . PosY - _lastMouseState . PosY ;
387
387
388
388
// Button pressed criteria:
389
389
// If the input is made in this frame and the button is not held from before
390
- fi . Mouse . LeftButtonPressed = nextState . LeftButtonHeld && ! _mouseState . LeftButtonHeld ? 1 : 0 ;
391
- fi . Mouse . MiddleButtonPressed = nextState . MiddleButtonHeld && ! _mouseState . MiddleButtonHeld ? 1 : 0 ;
392
- fi . Mouse . RightButtonPressed = nextState . RightButtonHeld && ! _mouseState . RightButtonHeld ? 1 : 0 ;
390
+ fi . Mouse . LeftButtonPressed = mouseState . LeftButtonHeld && ! _lastMouseState . LeftButtonHeld ? 1 : 0 ;
391
+ fi . Mouse . MiddleButtonPressed = mouseState . MiddleButtonHeld && ! _lastMouseState . MiddleButtonHeld ? 1 : 0 ;
392
+ fi . Mouse . RightButtonPressed = mouseState . RightButtonHeld && ! _lastMouseState . RightButtonHeld ? 1 : 0 ;
393
393
394
394
// Button released criteria:
395
395
// If the input is not pressed in this frame and the button is held from before
396
- fi . Mouse . LeftButtonReleased = ! nextState . LeftButtonHeld && _mouseState . LeftButtonHeld ? 1 : 0 ;
397
- fi . Mouse . MiddleButtonReleased = ! nextState . MiddleButtonHeld && _mouseState . MiddleButtonHeld ? 1 : 0 ;
398
- fi . Mouse . RightButtonReleased = ! nextState . RightButtonHeld && _mouseState . RightButtonHeld ? 1 : 0 ;
396
+ fi . Mouse . LeftButtonReleased = ! mouseState . LeftButtonHeld && _lastMouseState . LeftButtonHeld ? 1 : 0 ;
397
+ fi . Mouse . MiddleButtonReleased = ! mouseState . MiddleButtonHeld && _lastMouseState . MiddleButtonHeld ? 1 : 0 ;
398
+ fi . Mouse . RightButtonReleased = ! mouseState . RightButtonHeld && _lastMouseState . RightButtonHeld ? 1 : 0 ;
399
399
fi . Mouse . Sensitivity = _syncSettings . MouseSensitivity ;
400
400
401
401
// Updating mouse state
402
- _mouseState = nextState ;
402
+ _lastMouseState = mouseState ;
403
403
}
404
404
405
405
// Processing floppy disks swaps
@@ -451,11 +451,11 @@ protected override void SaveStateBinaryInternal(BinaryWriter writer)
451
451
writer . Write ( _currentFloppyDisk ) ;
452
452
writer . Write ( _currentCDROM ) ;
453
453
454
- writer . Write ( _mouseState . PosX ) ;
455
- writer . Write ( _mouseState . PosY ) ;
456
- writer . Write ( _mouseState . LeftButtonHeld ) ;
457
- writer . Write ( _mouseState . MiddleButtonHeld ) ;
458
- writer . Write ( _mouseState . RightButtonHeld ) ;
454
+ writer . Write ( _lastMouseState . PosX ) ;
455
+ writer . Write ( _lastMouseState . PosY ) ;
456
+ writer . Write ( _lastMouseState . LeftButtonHeld ) ;
457
+ writer . Write ( _lastMouseState . MiddleButtonHeld ) ;
458
+ writer . Write ( _lastMouseState . RightButtonHeld ) ;
459
459
}
460
460
461
461
protected override void LoadStateBinaryInternal ( BinaryReader reader )
@@ -465,11 +465,11 @@ protected override void LoadStateBinaryInternal(BinaryReader reader)
465
465
_currentFloppyDisk = reader . ReadInt32 ( ) ;
466
466
_currentCDROM = reader . ReadInt32 ( ) ;
467
467
468
- _mouseState . PosX = reader . ReadInt32 ( ) ;
469
- _mouseState . PosY = reader . ReadInt32 ( ) ;
470
- _mouseState . LeftButtonHeld = reader . ReadBoolean ( ) ;
471
- _mouseState . MiddleButtonHeld = reader . ReadBoolean ( ) ;
472
- _mouseState . RightButtonHeld = reader . ReadBoolean ( ) ;
468
+ _lastMouseState . PosX = reader . ReadInt32 ( ) ;
469
+ _lastMouseState . PosY = reader . ReadInt32 ( ) ;
470
+ _lastMouseState . LeftButtonHeld = reader . ReadBoolean ( ) ;
471
+ _lastMouseState . MiddleButtonHeld = reader . ReadBoolean ( ) ;
472
+ _lastMouseState . RightButtonHeld = reader . ReadBoolean ( ) ;
473
473
}
474
474
475
475
private static class FileNames
0 commit comments