Index: src/windows/native/sun/windows/awt_Toolkit.cpp
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- src/windows/native/sun/windows/awt_Toolkit.cpp	(revision c9641b0800b59a6f8eb76d549628512c8a1ea6e0)
+++ src/windows/native/sun/windows/awt_Toolkit.cpp	(revision )
@@ -1386,6 +1386,14 @@
  */
 BOOL AwtToolkit::PreProcessMsg(MSG& msg)
 {
+    if (msg.message == WM_MOUSEHWHEEL) {
+        msg.message = WM_MOUSEWHEEL;
+fprintf(stdout, "before %d %x\n", GET_KEYSTATE_WPARAM(msg.wParam) & MK_SHIFT, msg.wParam);fflush(stdout);
+
+        msg.wParam |= MK_SHIFT;
+
+fprintf(stdout, "after  %d %x\n", GET_KEYSTATE_WPARAM(msg.wParam) & MK_SHIFT, msg.wParam);fflush(stdout);
+    }
     /*
      * Offer preprocessing first to the target component, then call out to
      * specific mouse and key preprocessor methods
Index: src/windows/native/sun/windows/awt_Component.cpp
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- src/windows/native/sun/windows/awt_Component.cpp	(revision c9641b0800b59a6f8eb76d549628512c8a1ea6e0)
+++ src/windows/native/sun/windows/awt_Component.cpp	(revision )
@@ -2513,8 +2513,12 @@
 
     DTRACE_PRINTLN("calling SendMouseWheelEvent");
 
+    jint modifiers = GetJavaModifiers();
+    if ((flags & MK_SHIFT) == MK_SHIFT) {
+        modifiers |= java_awt_event_InputEvent_SHIFT_DOWN_MASK;
+    }
     SendMouseWheelEvent(java_awt_event_MouseEvent_MOUSE_WHEEL, TimeHelper::getMessageTimeUTC(),
-                        eventPt.x, eventPt.y, GetJavaModifiers(), 0, 0, scrollType,
+                        eventPt.x, eventPt.y, modifiers, 0, 0, scrollType,
                         scrollLines, roundedWheelRotation, preciseWheelRotation, &msg);
 
     m_wheelRotationAmount %= WHEEL_DELTA;
Index: src/windows/native/sun/windows/awtmsg.h
IDEA additional info:
Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP
<+>UTF-8
===================================================================
--- src/windows/native/sun/windows/awtmsg.h	(revision c9641b0800b59a6f8eb76d549628512c8a1ea6e0)
+++ src/windows/native/sun/windows/awtmsg.h	(revision )
@@ -45,6 +45,10 @@
 #define WM_MOUSEWHEEL                   0x020A
 #endif //WM_MOUSEWHEEL
 
+#ifndef WM_MOUSEHWHEEL
+#define WM_MOUSEHWHEEL                   0x020E
+#endif //WM_MOUSEHWHEEL
+
 #ifndef WHEEL_DELTA
 #define WHEEL_DELTA                     120
 #endif //WHEEL_DELTA
