Closed xeruf closed 6 years ago
I see.From the picture I can already tell what the problem is here. The window is ALWAYS_ON_TOP (5th icon from right in the window header), which prevents the actions to stay above. I'll look into it.
I'm unable to reproduce the problem. This may be relate to alwaysOnTop property not being respected on Linux. 1 Does the alwaysOnTop work for you (if you drag other window over the player window, the player window should stay on top)? 2 Can you ALT+TAB and show different applications above the "actions" when they are showing? 3 Can you turn off always on top for the application window and reproduce the behavior?
Always on top indeed behaves differently on Windows and Linux. I can reproduce this on Linux by toggling the window to be always on top. Showing actions then results in the issue. It is definitely bug, albeit a minor one.
There is however another small problem - showing action window causes the application window to receive focus. This may actually cause the problem on Linux (if focusing the original window puts it above the action window). Hopefully I will manage to fix both at once.
Both issues fixed for both Windows and Linux.
Turning off modality solves this issue as well as the focus returning problem (the last focused window would not receive focus on close), however this causes a small inconvenience: the action window is no longer modal - while it is still on top, it can lose focus more easily and focused Windows taskbar will show up on top of it.
This looks like a JavaFX bug with certain combinations of UTILITY owner stage + always on top + modality and the owner window even threw exception on close, which still required special workaround.
JavaFX handling of owner windows appears completely broken to me, with such major bugs as being unable to close window with tooltips or popups open, or being unable to close window with owner window.
This happens about every second time I open these. Other windows can be pulled in front of the actions and interacted with, the player itself however is only visually there, one cannot interact with it in any way.