@@ -2512,11 +2512,11 @@ class Front : public FrontAPI, public gdi::GraphicApi
2512
2512
{
2513
2513
FastPath::MouseExEvent_Recv me (cfpie.payload , byte);
2514
2514
2515
- LOG (LOG_WARNING ,
2516
- " Front::Received unexpected fast-path PDU, extended mouse pointerFlags=0x%X, xPos=0x%X, yPos=0x%X" ,
2515
+ LOG_IF ( bool ( this -> verbose & Verbose::basic_trace3), LOG_INFO ,
2516
+ " Front::incoming: Received Fast-Path PDU, extended mouse pointerFlags=0x%X, xPos=0x%X, yPos=0x%X" ,
2517
2517
me.pointerFlags , me.xPos , me.yPos );
2518
2518
2519
- this ->input_extended_mouse (me.pointerFlags );
2519
+ this ->input_extended_mouse (me.xPos , me. yPos , me. pointerFlags , cb );
2520
2520
}
2521
2521
break ;
2522
2522
@@ -3315,6 +3315,7 @@ class Front : public FrontAPI, public gdi::GraphicApi
3315
3315
// Slow/Fast-path
3316
3316
input_caps.inputFlags =
3317
3317
INPUT_FLAG_SCANCODES
3318
+ | INPUT_FLAG_MOUSEX
3318
3319
| (this ->ini .get <cfg::client::unicode_keyboard_event_support>() ? INPUT_FLAG_UNICODE : 0 )
3319
3320
| (this ->fastpath_support ? (INPUT_FLAG_FASTPATH_INPUT | INPUT_FLAG_FASTPATH_INPUT2) : 0 );
3320
3321
input_caps.keyboardLayout = 0 ;
@@ -4152,9 +4153,10 @@ class Front : public FrontAPI, public gdi::GraphicApi
4152
4153
{
4153
4154
SlowPath::ExtendedMouseEvent_Recv me (ie.payload );
4154
4155
4155
- LOG (LOG_WARNING, " Front::process_data: Unexpected Slow-Path INPUT_EVENT_MOUSEX eventTime=%u pointerFlags=0x%04X, xPos=%u, yPos=%u)" ,
4156
+ LOG_IF (bool (this ->verbose & Verbose::basic_trace3), LOG_INFO,
4157
+ " Front::process_data: Slow-Path INPUT_EVENT_MOUSEEX eventTime=%u pointerFlags=0x%04X, xPos=%u, yPos=%u)" ,
4156
4158
ie.eventTime , me.pointerFlags , me.xPos , me.yPos );
4157
- this ->input_extended_mouse (me.pointerFlags );
4159
+ this ->input_extended_mouse (me.xPos , me. yPos , me. pointerFlags , cb );
4158
4160
}
4159
4161
break ;
4160
4162
@@ -5360,9 +5362,10 @@ class Front : public FrontAPI, public gdi::GraphicApi
5360
5362
}
5361
5363
}
5362
5364
5363
- void input_extended_mouse (uint16_t /* pointer_flags*/ )
5365
+ void input_extended_mouse (uint16_t x, uint16_t y, uint16_t pointer_flags, Callback & cb )
5364
5366
{
5365
5367
this ->has_user_activity = true ;
5368
+ cb.rdp_input_mouse_ex (pointer_flags, x, y);
5366
5369
5367
5370
// TODO unimplemented
5368
5371
0 commit comments