Power button action may be affected by dynamic CanSuspend return value
There are ideas to improve the logic in systemd on the value that "CanSuspend" returns. As such, "CanSuspend" may be dynamic, with the value changing at times if e.g. the system is under memory pressure.
I am not sure what the exact logic is or will be in systemd. I believe currently it is a tri-state option returning either "yes", "no" or "na". We may need to stay in contact with the systemd people so that it is possible to handle this case.
It could be that all we need to do is change the check to hide the option when the value is "no" or "na".