mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-142715 It's impossible to move multiple files by mouse between changelists or even select several files via Ctrl/Cmd+Click
MouseEvent conversion loses the META_MASK modifier, so we should use getModifiers()|getModifiersEx() to copy all masks.
This commit is contained in:
@@ -198,7 +198,7 @@ public abstract class ComboBoxAction extends AnAction implements CustomComponent
|
||||
mouseMoved(MouseEventAdapter.convert(e, e.getComponent(),
|
||||
MouseEvent.MOUSE_MOVED,
|
||||
e.getWhen(),
|
||||
e.getModifiers(),
|
||||
e.getModifiers() | e.getModifiersEx(),
|
||||
e.getX(),
|
||||
e.getY()));
|
||||
}
|
||||
|
||||
@@ -352,7 +352,7 @@ public class IdeEventQueue extends EventQueue {
|
||||
lastMouseWheel = System.currentTimeMillis();
|
||||
|
||||
MouseWheelEvent newMouseWheelEvent = MouseEventAdapter.convert(mwe,
|
||||
wheelDestinationComponent, mwe.getID(), lastMouseWheel, mwe.getModifiers(), mwe.getX(), mwe.getY()
|
||||
wheelDestinationComponent, mwe.getID(), lastMouseWheel, mwe.getModifiers() | mwe.getModifiersEx(), mwe.getX(), mwe.getY()
|
||||
);
|
||||
return newMouseWheelEvent;
|
||||
}
|
||||
|
||||
@@ -406,7 +406,7 @@ public class IdeGlassPaneImpl extends JPanel implements IdeGlassPaneEx, IdeEvent
|
||||
|
||||
private static MouseEvent convertEvent(final MouseEvent e, final Component target) {
|
||||
final Point point = SwingUtilities.convertPoint(e.getComponent(), e.getPoint(), target);
|
||||
return MouseEventAdapter.convert(e, target, e.getID(), e.getWhen(), e.getModifiersEx(), point.x, point.y);
|
||||
return MouseEventAdapter.convert(e, target, point.x, point.y);
|
||||
}
|
||||
|
||||
private static void fireMouseEvent(final MouseListener listener, final MouseEvent event) {
|
||||
|
||||
@@ -98,7 +98,7 @@ public class MouseEventAdapter<T> implements MouseListener, MouseMotionListener,
|
||||
}
|
||||
|
||||
public static MouseEvent convert(MouseEvent event, Component source, int x, int y) {
|
||||
return convert(event, source, event.getID(), event.getWhen(), event.getModifiers(), x, y);
|
||||
return convert(event, source, event.getID(), event.getWhen(), event.getModifiers() | event.getModifiersEx(), x, y);
|
||||
}
|
||||
|
||||
public static MouseEvent convert(MouseEvent event, Component source, int id, long when, int modifiers, int x, int y) {
|
||||
|
||||
Reference in New Issue
Block a user