Experiencing a lot of issues with the latest update to the Form Designer in

It seems like almost every few minutes the Form Designer seems to stop working with Vaadin 8 in Intellij. In some cases I can’t type in anything for the properties such as caption, etc. Other times I can for example hit delete on a widget and nothing happens. Sometimes I change something but the save doesn’t happen. It usually starts to flake out after less than a minute of using it with Vaadin 8.

I’ve tried everything from restarting Intellij to rebooting the computer and it’s alwasy the same…

A consistent way of replicating this for example is if you edit (type it in rather then select with mouse) the StyleName for a Label in the Form Designer. If you then click on another component/widget the Outline window doesn’t pick up the new component, the properties remain stuck on the Label who’s style you just changed.

Also selecting a component/widget and hitting the delete key seems to cause the Form Designer to flake out. The only way to recover from that is closing the file and re-opening it.

I don’t know if this helps but I also got the following error in Intellij when trying to restart it at some point:

Error executing task com.vaadin.designer2.intellij.editor.AbstractDesignerEditorProvider$$Lambda$1259/1289945649@5050249b: Provider with the id 6b96 could not be found.
com.vaadin.designer2.services.ServiceFactoryProviderNotFound: Provider with the id 6b96 could not be found.
	at com.vaadin.designer2.services.ServiceFactory.getService(ServiceFactory.java:107)
	at com.vaadin.designer2.intellij.editor.VaadinDesignWebEditor.getTrackerService(VaadinDesignWebEditor.java:268)
	at com.vaadin.designer2.intellij.editor.VaadinDesignWebEditor.activateBrowserMode(VaadinDesignWebEditor.java:1186)
	at com.vaadin.designer2.intellij.editor.VaadinDesignWebEditor.activateDesignMode(VaadinDesignWebEditor.java:961)
	at com.vaadin.designer2.intellij.editor.VaadinDesignWebEditor.setDesignMode(VaadinDesignWebEditor.java:1012)
	at com.vaadin.designer2.intellij.editor.AbstractDesignerEditorProvider.lambda$initControlsInSmart$0(AbstractDesignerEditorProvider.java:122)
	at com.intellij.openapi.project.DumbServiceImpl.doRun(DumbServiceImpl.java:366)
	at com.intellij.openapi.project.DumbServiceImpl.updateFinished(DumbServiceImpl.java:358)
	at com.intellij.openapi.application.TransactionGuardImpl.runSyncTransaction(TransactionGuardImpl.java:88)
	at com.intellij.openapi.application.TransactionGuardImpl.lambda$pollQueueLater$0(TransactionGuardImpl.java:74)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.doRun(LaterInvocator.java:447)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.runNextEvent(LaterInvocator.java:431)
	at com.intellij.openapi.application.impl.LaterInvocator$FlushQueue.run(LaterInvocator.java:415)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762)
	at java.awt.EventQueue.access$500(EventQueue.java:98)
	at java.awt.EventQueue$3.run(EventQueue.java:715)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:732)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:779)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:720)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:395)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Hi Stephan,

A consistent way of replicating this for example is if you edit (type it in rather then select with mouse) the StyleName for a Label in the Form Designer. If you then click on another component/widget the Outline window doesn’t pick up the new component, the properties remain stuck on the Label who’s style you just changed.

I was trying to reproduce the issue you reported. I created a GH issue here: https://github.com/vaadin/designer/issues/1765. Actually, I can’t reproduce it reliably but sometimes it really happens. If you have any specific configuration or steps, please let us know.
While waiting for the fix, unfortunately I have to say you should avoid the bug by finishing your editing before select other components in outline (pressing Enter for example)

Also selecting a component/widget and hitting the delete key seems to cause the Form Designer to flake out. The only way to recover from that is closing the file and re-opening it.

About this issue, could you provide more information about your system (OS, IDEA version) and where did you select the component (from the paper or outline)?

Btw, thanks for your reports.

Regards,
Tien Nguyen.

It’s not at all consistent. I tried to find the steps to replicate it consistently but I could not. That being said it happens almost every minute. It’s making it extremely challenging to edit any of the forms as you can imagine.

Hitting enter seems to trigger it more often but not all the time. Delete a component in a form also seems to really create havoc. For that for example just add a 2 Labels to a VerticalLayout and then try to delete one of the Labels. You’ll find the properties window is stuck on the Label you deleted. And I’m deleting it in the Outline.

For environment I’m developing on Windows 10 using the latest Intellij (May 8 2018 update - 2019.1.3) and Form Designer. 100% up to date on everything.

It sounds very strange to me. Does it happen to all of your designs or just some specific one?
If you create a new project, would it behave the same there?

If only some specific designs are affected, could you send me those to our email: designer+feedback(at)vaadin.com ?
And it is also helpful to have the IntelliJ log file from: Help -> Show Log in Explorer

Please filter out your confidential information from the log and the designs.

I haven’t tried with a new project. That being said I believe you were able to replicate it creating a new project no?

So far every form design I’ve tried had the same issues. So it’s not limited to a specific design. I assume that since you were able to replicate it that this shows it’s not specific to any one design/form. So far it’s been every design, and I have over a hundred.

Attached is a sample of the log file. My log is polluted with tons of similar stack traces. For May 14th alone I have over 20k similar lines of stack traces.
17083004.log (205 KB)

It looks like something went wrong with your IntelliJ IDEA as well. As you can see from the log ERROR - llij.ide.plugins.PluginManager - null and all the stackoverflow exceptions come from IntelliJ and Swing api.

Could you try close your IDEA, backup your IDE’s settings by renaming the IDE’s settings folder e.g. .IdeaIC2018.1_backup (location by default: https://intellij-support.jetbrains.com/hc/en-us/articles/206544519-Directories-used-by-the-IDE-to-store-settings-caches-plugins-and-logs), then run the Intellij IDEA again. The Intellij IDEA will ask for the settings folder, let’s try with a new folder by choosing “Do not import settings”. Now you started a clean IntelliJ settings, please try to install Vaadin Designer, import your project and check it again. If the IDEA seems to be still broken in log file, please consider a fresh installation of IDEA (with fresh settings folder as well).

You can always revert to your old settings, caches and preferences by using the backup settings folder.

Making a backup may temporarily help but keep in mind that you also experienced the issue when you tried it yourself so it’s not just my Intellij settings that are causing this…

I got that but at least it doesn’t happen every minutes for me. So with the fresh settings, it could make the bug appear less frequently.

I didn’t intend to blame your IDEA’s settings or anything else, I just try to help you out the annoying bug which could slows down your development process. And of course, I will investigate more to fix this naughty bug.

With the latest update that error seems to be gone however in the logs but I’m still experiencing a lot of bugs in the form designer. THe most common log error is now:

2018-06-10 01:23:01,410 [9508371]
   INFO - agnostic.FrequentEventDetector - Too many events posted, #2. Event: java.awt.event.ComponentEvent[COMPONENT_RESIZED (200,3840 48x20)]
 on lease
java.lang.Throwable
	at com.intellij.openapi.diagnostic.FrequentEventDetector.getMessageOnEvent(FrequentEventDetector.java:79)
	at com.intellij.ide.IdeEventQueue.doPostEvent(IdeEventQueue.java:1193)
	at com.intellij.ide.IdeEventQueue.postEvent(IdeEventQueue.java:1101)
	at java.awt.Component.notifyNewBounds(Component.java:2374)
	at java.awt.Component.reshape(Component.java:2330)
	at javax.swing.JComponent.reshape(JComponent.java:4208)
	at java.awt.Component.setBounds(Component.java:2275)
	at javax.swing.CellRendererPane.paintComponent(CellRendererPane.java:137)
	at com.intellij.util.ui.tree.WideSelectionTreeUI$4.paintComponent(WideSelectionTreeUI.java:408)
	at javax.swing.plaf.basic.BasicTreeUI.paintRow(BasicTreeUI.java:1540)
	at com.intellij.util.ui.tree.WideSelectionTreeUI.paintRow(WideSelectionTreeUI.java:349)
	at javax.swing.plaf.basic.BasicTreeUI.paint(BasicTreeUI.java:1224)
	at com.intellij.util.ui.tree.WideSelectionTreeUI.paint(WideSelectionTreeUI.java:377)
	at javax.swing.plaf.ComponentUI.update(ComponentUI.java:161)
	at javax.swing.JComponent.paintComponent(JComponent.java:780)
	at com.intellij.ui.treeStructure.Tree.paintComponent(Tree.java:346)
	at javax.swing.JComponent.paint(JComponent.java:1057)
	at com.intellij.ui.treeStructure.Tree.paint(Tree.java:260)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JViewport.paint(JViewport.java:737)
	at com.intellij.ui.components.JBViewport.paint(JBViewport.java:234)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintChildren(JComponent.java:890)
	at javax.swing.JComponent.paint(JComponent.java:1066)
	at javax.swing.JComponent.paintToOffscreen(JComponent.java:5211)
	at javax.swing.RepaintManager$PaintManager.paintDoubleBufferedImpl(RepaintManager.java:1604)
	at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1579)
	at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1516)
	at javax.swing.RepaintManager.paint(RepaintManager.java:1283)
	at javax.swing.JComponent._paintImmediately(JComponent.java:5159)
	at javax.swing.JComponent.paintImmediately(JComponent.java:4970)
	at javax.swing.RepaintManager$4.run(RepaintManager.java:842)
	at javax.swing.RepaintManager$4.run(RepaintManager.java:825)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:825)
	at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:800)
	at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:749)
	at javax.swing.RepaintManager.access$1200(RepaintManager.java:71)
	at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1851)
	at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:762)
	at java.awt.EventQueue.access$500(EventQueue.java:98)
	at java.awt.EventQueue$3.run(EventQueue.java:715)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:732)
	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:786)
	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:727)
	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:395)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)