diff --git a/plugins/terminal/frontend/src/com/intellij/terminal/frontend/view/impl/TerminalEventsHandlerImpl.kt b/plugins/terminal/frontend/src/com/intellij/terminal/frontend/view/impl/TerminalEventsHandlerImpl.kt index 2f5d38bffd0a..e1db1b96ef33 100644 --- a/plugins/terminal/frontend/src/com/intellij/terminal/frontend/view/impl/TerminalEventsHandlerImpl.kt +++ b/plugins/terminal/frontend/src/com/intellij/terminal/frontend/view/impl/TerminalEventsHandlerImpl.kt @@ -313,13 +313,21 @@ internal open class TerminalEventsHandlerImpl( return when { SwingUtilities.isLeftMouseButton(event) -> MouseButtonCodes.LEFT SwingUtilities.isMiddleMouseButton(event) -> MouseButtonCodes.MIDDLE - SwingUtilities.isRightMouseButton( - event) -> MouseButtonCodes.NONE //we don't handle right mouse button as it used for the context menu invocation - event is MouseWheelEvent -> if (event.wheelRotation > 0) MouseButtonCodes.SCROLLUP else MouseButtonCodes.SCROLLDOWN + SwingUtilities.isRightMouseButton(event) -> { + // we don't handle the right mouse button as it used for the context menu invocation + MouseButtonCodes.NONE + } + event is MouseWheelEvent -> wheelRotationToButtonCode(event.wheelRotation) else -> return MouseButtonCodes.NONE } } + private fun wheelRotationToButtonCode(wheelRotation: Int): Int = when { + wheelRotation > 0 -> MouseButtonCodes.SCROLLUP + wheelRotation < 0 -> MouseButtonCodes.SCROLLDOWN + else -> MouseButtonCodes.NONE + } + private fun applyModifierKeys(event: MouseEvent, cb: Int): Int { var code = cb if (event.isControlDown) {