Skip to content

Commit

Permalink
Proxy extended mouse button 8, 9 events
Browse files Browse the repository at this point in the history
  • Loading branch information
Naruhito committed Nov 26, 2023
1 parent 96ad8c8 commit 2da892c
Showing 1 changed file with 24 additions and 12 deletions.
36 changes: 24 additions & 12 deletions neutrinordp/xrdp-neutrinordp.c
Original file line number Diff line number Diff line change
Expand Up @@ -425,24 +425,36 @@ lxrdp_event(struct mod *mod, int msg, long param1, long param2,
case 110:
break;

case 115: /* side back button up (multi-device mouse) */
mod->inst->input->KeyboardEvent(mod->inst->input, 0x4000, 0x38); //Alt down
mod->inst->input->KeyboardEvent(mod->inst->input, 0x4100, 0x4B); //Left down
mod->inst->input->KeyboardEvent(mod->inst->input, 0x8100, 0x4B); //Left up
mod->inst->input->KeyboardEvent(mod->inst->input, 0x8000, 0x38); //Alt up
case 115: /* extended mouse button8 up */
LOG_DEVEL(LOG_LEVEL_DEBUG, "extended mouse button8 up %ld %ld", param1, param2);
x = param1;
y = param2;
flags = PTR_XFLAGS_BUTTON1;
mod->inst->input->ExtendedMouseEvent(mod->inst->input, flags, x, y);
break;

case 116: /* side back button down (multi-device mouse) */
case 116: /* extended mouse button8 down */
LOG_DEVEL(LOG_LEVEL_DEBUG, "extended mouse button8 down %ld %ld", param1, param2);
x = param1;
y = param2;
flags = PTR_XFLAGS_BUTTON1 | PTR_XFLAGS_DOWN;
mod->inst->input->ExtendedMouseEvent(mod->inst->input, flags, x, y);
break;

case 117: /* side forward button up (multi-device mouse) */
mod->inst->input->KeyboardEvent(mod->inst->input, 0x4000, 0x38); //Alt down
mod->inst->input->KeyboardEvent(mod->inst->input, 0x4100, 0x4D); //Right down
mod->inst->input->KeyboardEvent(mod->inst->input, 0x8100, 0x4D); //Right up
mod->inst->input->KeyboardEvent(mod->inst->input, 0x8000, 0x38); //Alt up
case 117: /* extended mouse button9 up */
LOG_DEVEL(LOG_LEVEL_DEBUG, "extended mouse button9 up %ld %ld", param1, param2);
x = param1;
y = param2;
flags = PTR_XFLAGS_BUTTON2;
mod->inst->input->ExtendedMouseEvent(mod->inst->input, flags, x, y);
break;

case 118: /* side forward button down (multi-device mouse) */
case 118: /* extended mouse button9 down */
LOG_DEVEL(LOG_LEVEL_DEBUG, "extended mouse button9 down %ld %ld", param1, param2);
x = param1;
y = param2;
flags = PTR_XFLAGS_BUTTON2 | PTR_XFLAGS_DOWN;
mod->inst->input->ExtendedMouseEvent(mod->inst->input, flags, x, y);
break;

case 200:
Expand Down

0 comments on commit 2da892c

Please sign in to comment.