diff options
Diffstat (limited to 'platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeGlassPaneImpl.java')
-rw-r--r-- | platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeGlassPaneImpl.java | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeGlassPaneImpl.java b/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeGlassPaneImpl.java index 83696e07c7f8..71f964504102 100644 --- a/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeGlassPaneImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/wm/impl/IdeGlassPaneImpl.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2009 JetBrains s.r.o. + * Copyright 2000-2014 JetBrains s.r.o. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -20,8 +20,9 @@ import com.intellij.ide.IdeTooltipManager; import com.intellij.ide.dnd.DnDAware; import com.intellij.openapi.Disposable; import com.intellij.openapi.application.ApplicationManager; +import com.intellij.openapi.diagnostic.Logger; +import com.intellij.openapi.ui.Divider; import com.intellij.openapi.ui.Painter; -import com.intellij.openapi.ui.Splitter; import com.intellij.openapi.ui.impl.GlassPaneDialogWrapperPeer; import com.intellij.openapi.ui.popup.Balloon; import com.intellij.openapi.ui.popup.JBPopupFactory; @@ -42,6 +43,8 @@ import java.util.List; public class IdeGlassPaneImpl extends JPanel implements IdeGlassPaneEx, IdeEventQueue.EventDispatcher, Painter.Listener { + private static final Logger LOG = Logger.getInstance("#com.intellij.openapi.wm.impl.IdeGlassPaneImpl"); + private final List<EventListener> myMouseListeners = new ArrayList<EventListener>(); private final Set<EventListener> mySortedMouseListeners = new TreeSet<EventListener>(new Comparator<EventListener>() { @Override @@ -360,9 +363,12 @@ public class IdeGlassPaneImpl extends JPanel implements IdeGlassPaneEx, IdeEvent } else { cursor = Cursor.getDefaultCursor(); - getRootPane().setCursor(cursor); - - + JRootPane rootPane = getRootPane(); + if (rootPane != null) { + rootPane.setCursor(cursor); + } else { + LOG.warn("Root pane is null. Event: " + e); + } restoreLastComponent(null); myLastOriginalCursor = null; myLastCursorComponent = null; @@ -375,7 +381,7 @@ public class IdeGlassPaneImpl extends JPanel implements IdeGlassPaneEx, IdeEvent private boolean canProcessCursorFor(Component target) { if (target instanceof JMenu || target instanceof JMenuItem || - target instanceof Splitter.Divider || + target instanceof Divider || target instanceof JSeparator || (target instanceof JEditorPane && ((JEditorPane)target).getEditorKit() instanceof HTMLEditorKit)) { return false; |