Freezes when closing popup option

Status
Resolved
Issue description

When an option popup window is closed MCreator has a chance of freezing indefinitely (using almost no cpu, with no additional logs).

Both the time MCreator has been open for and the size of the element being edited appear to effect the chance of the application freezing.

Trying to import an audio file immediately after the application is launched has never resulted in it freezing, while doing this same action after the application has been open for over 5 mins will often freeze it. Selecting an item for a simple crafting recipe shortly after launching will rarely freeze it, while attempting to modify the spawn egg colors for a custom entity (which contains many pages and takes longer to load) will always cause a crash.

Finally there appears to be one thing that seems to always trigger a freeze, regardless of the element's size or the time the application has been open for: Attempting to add a variable to a procedure.

 

I had tried creating multiple workspaces, with each of them having the exact the same issues.

Issue comments

Unfortunately, I work on MCR and don't own macOS so I have limited testing capabilities for macOS.

I am working on improving this as much as I can, but there will be limitations to not having Mac at the moment as I can't afford to buy one solely for testing needs.

Unfortunately, I work on MCR and don't own macOS so I have limited testing capabilities for macOS.

What's a MCR? i know Windows, Mac, Linux but not MCR lol

One way I have found of bypassing some of these issues is to directly edit the element file at

MCreatorWorkspaces/mod/elements/element.mod.json

However with variables, I am unable to create them at all. I am also unable to import or export the procedure.

 

Is it possible for somebody to add a variable to the procedure below and then send it back?

{
  "_fv": 8,
  "_type": "procedure",
  "definition": {
    "procedurexml": "<xml xmlns=\"https://developers.google.com/blockly/xml\"><block type=\"event_trigger\" deletable=\"false\" x=\"40\" y=\"40\"><field name=\"trigger\">No additional trigger</field><next><block type=\"entity_set_fire\"><value name=\"entity\"><block type=\"entity_from_deps\"/></value><value name=\"seconds\"><block type=\"math_number\"><field name=\"NUM\">5</field></block></value></block></next></block></xml>"
  }
}