bjgf issueshttps://gitlab.bluej.org/bluej/bjgf/-/issues2018-07-27T11:54:22Zhttps://gitlab.bluej.org/bluej/bjgf/-/issues/2009[GREENFOOT-674] Act, Run, Reset buttons should be disabled during reset2018-07-27T11:54:22ZDavin McCall[GREENFOOT-674] Act, Run, Reset buttons should be disabled during resetThe control panel buttons currently remain enabled during reset (world instantiation). They should be disabled.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumThe control panel buttons currently remain enabled during reset (world instantiation). They should be disabled.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/2010[GREENFOOT-675] Greenfoot.ask prompt is dispalyed in wrong location2018-07-27T11:52:31ZDavin McCall[GREENFOOT-675] Greenfoot.ask prompt is dispalyed in wrong locationThe prompt from a Greenfoot.ask() question is currently being displayed above the world; the text entry box is below the world. They should both be below the world. The prompt should probably be styled a bit better also - different backg...The prompt from a Greenfoot.ask() question is currently being displayed above the world; the text entry box is below the world. They should both be below the world. The prompt should probably be styled a bit better also - different background colour etc so that it is more prominent.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/2013[GREENFOOT-678] Execution twirler appears when simulation speed is set very low2018-07-27T11:52:08ZDavin McCall[GREENFOOT-678] Execution twirler appears when simulation speed is set very lowWhen the simulation speed is very low, the execution twirler appears briefly every act cycle.
Also: option in the twirler drop-drown is to "Restart Greenfoot" - it no longer does this; should say "Reset scenario" or similar instead.
...When the simulation speed is very low, the execution twirler appears briefly every act cycle.
Also: option in the twirler drop-drown is to "Restart Greenfoot" - it no longer does this; should say "Reset scenario" or similar instead.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/1991[GREENFOOT-656] Invoking act() method from Actor submenu doesn't close first ...2018-07-27T11:50:49ZDavin McCall[GREENFOOT-656] Invoking act() method from Actor submenu doesn't close first menu(Tested on Linux).
Right click an actor to bring up the method call menu, then open the "Actor" superclass submenu and choose the "act()" method. The method executes and the submenu closes, but the main popup menu stays open.
---
**...(Tested on Linux).
Right click an actor to bring up the method call menu, then open the "Actor" superclass submenu and choose the "act()" method. The method executes and the submenu closes, but the main popup menu stays open.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/1992[GREENFOOT-657] New Class dialog small images are expanded2018-07-27T11:50:14ZDavin McCall[GREENFOOT-657] New Class dialog small images are expandedIn the "New Class" dialog small images (eg ant image in ants scenario) are currently expanded to the size of the list cell. They should appear at actual size.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumIn the "New Class" dialog small images (eg ant image in ants scenario) are currently expanded to the size of the list cell. They should appear at actual size.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumAmjad AltadmriAmjad Altadmrihttps://gitlab.bluej.org/bluej/bjgf/-/issues/1997[GREENFOOT-662] Move the background message functionality to GreenfootStage2018-07-27T11:49:23ZNeil Brown[GREENFOOT-662] Move the background message functionality to GreenfootStageGreenfootFrame has some functionality to show a background message hint in various circumstances, such as when there is no world, or it is taking too long to initialise. You can look at the call hierarchy of GreenfootFrame.updateBackgro...GreenfootFrame has some functionality to show a background message hint in various circumstances, such as when there is no world, or it is taking too long to initialise. You can look at the call hierarchy of GreenfootFrame.updateBackgroundMessage() to see all the cases. This should be ported to GreenfootStage, which will involve two parts. One is simply adding the GUI components necessary to have a background message in GreenfootStage. The other is finding all the Debug VM callers of the original method, and translating that into calls on the server VM. In many cases this may make things more straightforward, but it will involve a bit of work.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumNeil BrownNeil Brownhttps://gitlab.bluej.org/bluej/bjgf/-/issues/1998[GREENFOOT-663] Switch MessageDialog to JavaFX2018-07-27T11:48:56ZNeil Brown[GREENFOOT-663] Switch MessageDialog to JavaFXThe Greenfoot API version check now takes place on the server VM, which is correct. However, it calls through to GreenfootMain.updateApi (which itself we may want to move, as that is usually for debug VM code, not server VM), which crea...The Greenfoot API version check now takes place on the server VM, which is correct. However, it calls through to GreenfootMain.updateApi (which itself we may want to move, as that is usually for debug VM code, not server VM), which creates MessageDialog, which is Swing-based. We should either port MessageDialog to JavaFX, or find another existing JavaFX class to use instead for showing this dialog.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/1999[GREENFOOT-664] Make Greenfoot.setSpeed update the FX speed slider value2018-07-27T11:48:22ZNeil Brown[GREENFOOT-664] Make Greenfoot.setSpeed update the FX speed slider valueThe new FX speed slider sends its new value through to the simulation thread to call Greenfoot.setSpeed(), which is good. It's also possible for user code to call Greenfoot.setSpeed, in which case the FX speed slider should be updated t...The new FX speed slider sends its new value through to the simulation thread to call Greenfoot.setSpeed(), which is good. It's also possible for user code to call Greenfoot.setSpeed, in which case the FX speed slider should be updated to reflect this. I think the easiest way to do this may be for the debug VM to put the current speed into the shared memory each frame, and we watch for this on the server VM and update the GUI slider if necessary.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumNeil BrownNeil Brownhttps://gitlab.bluej.org/bluej/bjgf/-/issues/2000[GREENFOOT-665] Check the debugger reset handling2018-07-27T11:47:46ZNeil Brown[GREENFOOT-665] Check the debugger reset handlingIn GreenfootDebugHandler, currently line 305, there is a block that begins:
```
else if (atBreakpoint && e.getBreakpointProperties().get(RESET_KEY) != null)
```
This code makes sure that the simulation thread is resumed when rese...In GreenfootDebugHandler, currently line 305, there is a block that begins:
```
else if (atBreakpoint && e.getBreakpointProperties().get(RESET_KEY) != null)
```
This code makes sure that the simulation thread is resumed when reset is clicked, and the object bench is cleared. This code won't work as it stands because it is setting a breakpoint in the debug VM ResetWorldAction, which we no longer use. We need to either put the code in a method and call it directly when the reset button is clicked on the server VM, or listen to a different breakpoint. I think the former is the right thing to do.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/2001[GREENFOOT-666] Add the show-readme action to the new FX window2018-07-27T11:47:01ZNeil Brown[GREENFOOT-666] Add the show-readme action to the new FX windowGreenfoot has a "Scenario Information" menu item which shows the README file for the scenario (like double-clicking the readme icon in BlueJ). We should add this action to the menu in the new FX GreenfootStage.
---
**Issue metadata**
...Greenfoot has a "Scenario Information" menu item which shows the README file for the scenario (like double-clicking the readme icon in BlueJ). We should add this action to the menu in the new FX GreenfootStage.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/2003[GREENFOOT-668] Speed slider is jittery2018-07-27T11:46:23ZDavin McCall[GREENFOOT-668] Speed slider is jitteryThe speed slider movement is jittery when it is dragged with the mouse. I suspect that moving it transmits speed to the other VM, which then also causes the same speed to be transmitted back to the server VM after a round-trip delay, by ...The speed slider movement is jittery when it is dragged with the mouse. I suspect that moving it transmits speed to the other VM, which then also causes the same speed to be transmitted back to the server VM after a round-trip delay, by which time the slider has been moved.
To solve this, I think the debug VM side should only send the speed when it is changed locally (i.e. not when it is changed due to a command from the server VM) in which case it should continue to transmit the updated speed until it receives an acknowledgement from the server VM (in the form of a frame with sequence number >= the sequence number at which the speed change was first sent).
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/2004[GREENFOOT-669] Editor "undo" not working properly2018-07-27T11:45:08ZDavin McCall[GREENFOOT-669] Editor "undo" not working properlyCreate a new class, highlight some lines of text, press "delete". Then, press ctrl+z (or "Undo" on toolbar). The deleted text is not restored.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumCreate a new class, highlight some lines of text, press "delete". Then, press ctrl+z (or "Undo" on toolbar). The deleted text is not restored.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumAmjad AltadmriAmjad Altadmrihttps://gitlab.bluej.org/bluej/bjgf/-/issues/2005[GREENFOOT-670] Deleting the current world class causes exceptions2018-07-27T11:44:13ZNeil Brown[GREENFOOT-670] Deleting the current world class causes exceptionsIf you delete the current world class (i.e. the one that instantiates by default), you will get exceptions when Greenfoot later tries to use the currentWorld field in GreenfootStage. The way to solve this might be to listen for class de...If you delete the current world class (i.e. the one that instantiates by default), you will get exceptions when Greenfoot later tries to use the currentWorld field in GreenfootStage. The way to solve this might be to listen for class deletions in GreenfootStage, and null out currentWorld if we see that it is the class that is being deleted.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/2113[GREENFOOT-782] Speed slider goes to zero when re-opening project2018-07-25T16:49:40ZNeil Brown[GREENFOOT-782] Speed slider goes to zero when re-opening projectOpen project A in Greenfoot, close A (via menu, leaving Greenfoot open), then re-open project A. The speed slider goes to minimum, which is a bit confusing to realise what happens once you click run. Oddly enough, this only seems to ha...Open project A in Greenfoot, close A (via menu, leaving Greenfoot open), then re-open project A. The speed slider goes to minimum, which is a bit confusing to realise what happens once you click run. Oddly enough, this only seems to happen the first time I do it -- repeated closing and re-opening doesn't reproduce, until I quit Greenfoot completely, at which point it happens again on first re-open, but not after.
---
**Issue metadata**
- Issue type: Task
- Priority: Mediumhttps://gitlab.bluej.org/bluej/bjgf/-/issues/2112[GREENFOOT-781] Controls enabled when no world, then disabled if clicked2018-07-25T16:49:32ZNeil Brown[GREENFOOT-781] Controls enabled when no world, then disabled if clickedLoad up a scenario where there is no default world (in my test case, there is a world, but it has not been stored as the last instantiated one). The Act/Run/Reset buttons are all enabled, which they shouldn't be (although that's not a t...Load up a scenario where there is no default world (in my test case, there is a world, but it has not been stored as the last instantiated one). The Act/Run/Reset buttons are all enabled, which they shouldn't be (although that's not a terrible problem if they just do nothing). But clicking Run or Reset gets into a state where all the buttons are disabled, as in the bug GREENFOOT-780. If you clicked Run, making a new World manually does fix the issue, but if you clicked Reset, the buttons remain disabled and they cannot be recovered.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumNeil BrownNeil Brownhttps://gitlab.bluej.org/bluej/bjgf/-/issues/2111[GREENFOOT-780] Controls can get into permanently disabled state2018-07-25T16:49:24ZNeil Brown[GREENFOOT-780] Controls can get into permanently disabled stateLoad a scenario, like ants, and set it running. Open the editor for the AntWorld class, and insert a blank line somewhere.
The scenario will stop running (correct), although the world will not grey out (bug). Go back to the main win...Load a scenario, like ants, and set it running. Open the editor for the AntWorld class, and insert a blank line somewhere.
The scenario will stop running (correct), although the world will not grey out (bug). Go back to the main window, and click the Reset button. The Act/Run/Reset buttons will all become greyed out, and it is impossible to run the scenario without restarting Greenfoot (erm, bug!) -- even manually making a world or using the debugger to terminate does not fix the issue.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumNeil BrownNeil Brownhttps://gitlab.bluej.org/bluej/bjgf/-/issues/2110[GREENFOOT-779] "Set player name" doesn't work2018-07-21T12:49:54ZDavin McCall[GREENFOOT-779] "Set player name" doesn't workSetting the player name via preferences or the dialog (via Tools menu) has no effect - a call to UserInfo.getMyInfo().getUserName() still returns "Player1". The name set is not pushed through to the remote VM.
---
**Issue metadata...Setting the player name via preferences or the dialog (via Tools menu) has no effect - a call to UserInfo.getMyInfo().getUserName() still returns "Player1". The name set is not pushed through to the remote VM.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumAmjad AltadmriAmjad Altadmrihttps://gitlab.bluej.org/bluej/bjgf/-/issues/2101[GREENFOOT-770] Reset while running at slow speed takes a long time2018-07-20T19:31:06ZNeil Brown[GREENFOOT-770] Reset while running at slow speed takes a long timeSet the speed to minimum via the slider, then run a scenario. If you click Pause followed by Reset, the pause is instant, and the rest is instant. However, if you run the scenario then directly click reset, it takes a long time to rese...Set the speed to minimum via the slider, then run a scenario. If you click Pause followed by Reset, the pause is instant, and the rest is instant. However, if you run the scenario then directly click reset, it takes a long time to reset (waiting for the frame end, I'd guess). It seems like we can probably fix the reset while running so that it does the equivalent of whatever makes pause-reset so fast in this circumstance.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumHamza HamzaHamza Hamzahttps://gitlab.bluej.org/bluej/bjgf/-/issues/2108[GREENFOOT-777] None of the menu accelerators work while scenario is running ...2018-07-20T14:36:45ZNeil Brown[GREENFOOT-777] None of the menu accelerators work while scenario is running (Windows)This is particularly important for Ctrl-Shift-R to pause the scenario, but none of the accelerators (e.g. Ctrl-N) work while the scenario is running in Windows. All of them work fine while the scenario is paused.
---
**Issue metadata*...This is particularly important for Ctrl-Shift-R to pause the scenario, but none of the accelerators (e.g. Ctrl-N) work while the scenario is running in Windows. All of them work fine while the scenario is paused.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumNeil BrownNeil Brownhttps://gitlab.bluej.org/bluej/bjgf/-/issues/2105[GREENFOOT-774] Importing or duplicating a class creates strange state2018-07-20T10:07:35ZNeil Brown[GREENFOOT-774] Importing or duplicating a class creates strange stateIn an arbitrary scenario with all classes compiled, go to Import Class... then import a class, e.g. the Map class. When you click OK on the Import window, do nothing else. The scenario shows the world greyed out, and Act/Run/Reset disa...In an arbitrary scenario with all classes compiled, go to Import Class... then import a class, e.g. the Map class. When you click OK on the Import window, do nothing else. The scenario shows the world greyed out, and Act/Run/Reset disabled. All existing classes are compiled, Map is not. It's fairly easy to fix the state: defocusing then refocusing the window works, or manually creating a new world instance. But it's a bit puzzling as I thought I was waiting for it to compile Map, but actually nothing was happening.
Edit: duplicating a class does exactly the same thing. Duplicate a world class, and the new copy is uncompiled, but all the exec controls are greyed out and the world is greyed out, until you open an editor for the class or defocus/refocus the window.
---
**Issue metadata**
- Issue type: Task
- Priority: MediumAmjad AltadmriAmjad Altadmri