We need to be able to check if the programs and the virtual desktop that persistd opens are still open without any action from persistd.
Several scenarios:
The user might close a program manually
The user might move a program to a different desktop
The virtual desktop belonging to a project might close
A different virtual desktop might close, changing the virtual desktop id for this project
The PC might restart
All of these will result in at least partial error state. If the project is completely gone (meaning both virtual desktop and the programs are destroyed), we can simply drop it from open projects. Especially a restart will trigger a complete wipe of open projects. For other scenarios, we have to find a way to move them back into a valid state.
We need to be able to check if the programs and the virtual desktop that persistd opens are still open without any action from persistd.
Several scenarios:
All of these will result in at least partial error state. If the project is completely gone (meaning both virtual desktop and the programs are destroyed), we can simply drop it from open projects. Especially a restart will trigger a complete wipe of open projects. For other scenarios, we have to find a way to move them back into a valid state.