in my latest Renoise tool I want a dialog to appear as soon as Renoise is loaded. That generally works of course,
but as soon as I focus on the dialog or focus Renoise main window the dialog vanishes into background.
This behaviour is not the case if I close and re-open the dialog after Renoise was loaded.
Problem here is: users don’t see that the dialog is in background and may assume tool isn’t working properly.
I’ve encountered this problem too, seems like the order of windows being created is different in R3.
Hopefully, it will be labelled as a bug and get fixed in an upcoming release…
However, for now I found a simple-ish solution in lua: It would seem that idle notifications are only triggered once the main window is created, so we can show our tool dialog without being obscured…
Make sure your tool receives notifications from app_idle_observable
Add some variable that is set to true when your tool was supposed to display it’s UI
Inside the idle loop, check if you tool was supposed to show - if so, show it and then reset the variable
(or detach the idle loop completely if you’re really concerned about wasting CPU cycles).
If you are not already listening for idle notifications, this solution is pretty much a hackaround.
Hopefully, it will be labelled as a bug and get fixed in an upcoming release…
In case someone’s reading this: the change in this particular version of Renoise was done for a particular reason. I initially thought it was a bug, but it’s not.
The change basically allows tools to attach themselves at an earli(er) stage than what was previously possible, something that was required in order for certain tools (specifically, update checkers) to work.
Hack or not, the solution I proposed above is still working in Renoise 3.1
In case someone’s reading this: the change in this particular version of Renoise was done for a particular reason. I initially thought it was a bug, but it’s not.
The change basically allows tools to attach themselves at an earli(er) stage than what was previously possible, something that was required in order for certain tools (specifically, update checkers) to work.
Hack or not, the solution I proposed above is still working in Renoise 3.1