[kicker] Don't add invalid actions to the system action model
The system actions model recently changed behavior to always present all
possible actions, with AbstractEntry::isValid
driving the model role
Kicker::DisabledRole
so that views can e.g. grey out unavailable
actions.
This was perceived as a regression by users who are annoyed at e.g.
Hibernate
being visible when their system setup precludes it more or
less permanently.
This patch reverts this behavior.
Note that the dynamic approach we had permanently wasn't very great anyway, as the associated favorites models would remove entries when they became invalid, and they wouldn't come back automatically when the entry were to become valid again. In effect that means when you added one of these actions to e.g. the Kicker sidebar and it became unavailable it would disappear until re-added anyways.
I can imagine use cases where dynamic behavior would be useful to have - let's say disabling Shutdown/Reboot while a critical system update is being performed. But in that case we'd need to fix the favorites behavior and add some way to inform the user why the action is disabled for a good user experienced anyhow.