Icons change over versions
Hi guys,
My plugin works great in Idea 11 and it uses icons bundled with IDE. But I just got reports from users that the plugin throws NPE (icon related), so it looks like some icons were removed or have their names changed. What should I do to make the plugin work both on Idea 11 and 12?
Please sign in to leave a comment.
Could you please specify which icons you're using are missing in 12?
For me RubyMine 4.5.4 fails with:
icon path=/general/toolWindowRun.png class=class com.jetbrains.heroku.ui.HerokuToolWindow
java.lang.Throwable
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:54)
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:57)
at com.intellij.idea.IdeaLogger.error(IdeaLogger.java:90)
at com.intellij.openapi.util.IconLoader.getDisabledIcon(IconLoader.java:204)
at com.intellij.openapi.actionSystem.impl.ActionButton.a(ActionButton.java:241)
at com.intellij.openapi.actionSystem.impl.ActionButton.addNotify(ActionButton.java:189)
at java.awt.Container.addNotify(Container.java:2620)
at javax.swing.JComponent.addNotify(JComponent.java:4693)
at com.intellij.openapi.actionSystem.impl.ActionToolbarImpl.addNotify(ActionToolbarImpl.java:166)
at java.awt.Container.addNotify(Container.java:2620)
at javax.swing.JComponent.addNotify(JComponent.java:4693)
at java.awt.Container.addNotify(Container.java:2620)
at javax.swing.JComponent.addNotify(JComponent.java:4693)
at java.awt.Container.addImpl(Container.java:1066)
at java.awt.Container.add(Container.java:925)
at com.intellij.openapi.wm.impl.content.ToolWindowContentUi.b(ToolWindowContentUi.java:182)
at com.intellij.openapi.wm.impl.content.ToolWindowContentUi.access$200(ToolWindowContentUi.java:59)
at com.intellij.openapi.wm.impl.content.ToolWindowContentUi$1.selectionChanged(ToolWindowContentUi.java:151)
at com.intellij.ui.content.impl.ContentManagerImpl.a(ContentManagerImpl.java:588)
at com.intellij.ui.content.impl.ContentManagerImpl.addSelectedContent(ContentManagerImpl.java:410)
at com.intellij.ui.content.impl.ContentManagerImpl$2.run(ContentManagerImpl.java:485)
at com.intellij.ui.content.impl.ContentManagerImpl.setSelectedContent(ContentManagerImpl.java:509)
at com.intellij.ui.content.impl.ContentManagerImpl.setSelectedContentCB(ContentManagerImpl.java:458)
at com.intellij.ui.content.impl.ContentManagerImpl.setSelectedContentCB(ContentManagerImpl.java:450)
at com.intellij.ui.content.impl.ContentManagerImpl.setSelectedContentCB(ContentManagerImpl.java:526)
at com.intellij.ui.content.impl.ContentManagerImpl.setSelectedContent(ContentManagerImpl.java:530)
at com.intellij.ui.content.impl.ContentManagerImpl.a(ContentManagerImpl.java:210)
at com.intellij.ui.content.impl.ContentManagerImpl.addContent(ContentManagerImpl.java:193)
at com.jetbrains.heroku.ui.HerokuToolWindow.addAsContent(HerokuToolWindow.java:75)
at com.jetbrains.heroku.ui.HerokuToolWindowFactory.add(HerokuToolWindowFactory.java:73)
at com.jetbrains.heroku.ui.HerokuToolWindowFactory.addAll(HerokuToolWindowFactory.java:68)
at com.jetbrains.heroku.ui.HerokuToolWindowFactory.createToolWindow(HerokuToolWindowFactory.java:43)
at com.jetbrains.heroku.ui.HerokuToolWindowFactory.createToolWindowContent(HerokuToolWindowFactory.java:34)
at com.intellij.openapi.wm.impl.ToolWindowImpl.ensureContentInitialized(ToolWindowImpl.java:448)
at com.intellij.openapi.wm.impl.ToolWindowManagerImpl$11.run(ToolWindowManagerImpl.java:498)
at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:333)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:702)
at java.awt.EventQueue.access$400(EventQueue.java:82)
at java.awt.EventQueue$2.run(EventQueue.java:663)
at java.awt.EventQueue$2.run(EventQueue.java:661)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:672)
at com.intellij.ide.IdeEventQueue.e(IdeEventQueue.java:719)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:544)
at com.intellij.ide.IdeEventQueue.b(IdeEventQueue.java:421)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:379)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
icons.jar:
actions/addBig.png
actions/removeBig.png
actions/upBig.png
actions/downBig.png
I've substitued them with:
general/add.png
general/remove.png
actions/moveUp.png
actions/moveDown.png
and it works on both idea 11 and 12