diff options
Diffstat (limited to 'platform/platform-impl/src/com/intellij/ui/SpeedSearchBase.java')
-rw-r--r-- | platform/platform-impl/src/com/intellij/ui/SpeedSearchBase.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/platform/platform-impl/src/com/intellij/ui/SpeedSearchBase.java b/platform/platform-impl/src/com/intellij/ui/SpeedSearchBase.java index cbcde2d36418..76985ad77362 100644 --- a/platform/platform-impl/src/com/intellij/ui/SpeedSearchBase.java +++ b/platform/platform-impl/src/com/intellij/ui/SpeedSearchBase.java @@ -298,6 +298,7 @@ public abstract class SpeedSearchBase<Comp extends JComponent> extends SpeedSear protected void processKeyEvent(KeyEvent e) { if (e.isAltDown()) return; + if (e.isShiftDown() && isNavigationKey(e.getKeyCode())) return; if (mySearchPopup != null) { mySearchPopup.processKeyEvent(e); return; @@ -499,6 +500,15 @@ public abstract class SpeedSearchBase<Comp extends JComponent> extends SpeedSear return keyCode == KeyEvent.VK_HOME || keyCode == KeyEvent.VK_END || keyCode == KeyEvent.VK_UP || keyCode == KeyEvent.VK_DOWN; } + private static boolean isPgUpPgDown(int keyCode) { + return keyCode == KeyEvent.VK_PAGE_UP || keyCode == KeyEvent.VK_PAGE_DOWN; + } + + private static boolean isNavigationKey(int keyCode) { + return isPgUpPgDown(keyCode) || isUpDownHomeEnd(keyCode); + } + + private void manageSearchPopup(@Nullable SearchPopup searchPopup) { Project project = null; if (ApplicationManager.getApplication() != null && !ApplicationManager.getApplication().isDisposed()) { |