call method
Implementation
@override
String? call(TerminalMouseEvent event) {
switch (event.state.mouseMode) {
case MouseMode.none:
case MouseMode.clickOnly:
return null;
case MouseMode.upDownScroll:
if (event.motion) return null;
break;
case MouseMode.upDownScrollDrag:
if (event.motion && event.button == TerminalMouseButton.none) {
return null;
}
break;
case MouseMode.upDownScrollMove:
break;
}
switch (event.state.mouseMode) {
case MouseMode.none:
case MouseMode.clickOnly:
return null;
case MouseMode.upDownScroll:
case MouseMode.upDownScrollDrag:
case MouseMode.upDownScrollMove:
// Up events are never reported for mouse wheel buttons.
if (event.button.isWheel &&
event.buttonState == TerminalMouseButtonState.up) {
return null;
}
return MouseReporter.report(
event.button,
event.buttonState,
event.position,
event.state.mouseReportMode,
motion: event.motion,
modifiers: event.modifiers,
pixelPosition: event.pixelPosition,
);
}
}