The way it’s done in every theme that I’ve looked at is:
button:disabled image {
opacity: 0.4;
}
But this only reduces the opacity. This does make the icon lighter but it’s still not identifiable as disabled without a much longer look than traditional toolkits (and GTK2) which also desaturate the icon.
GTK3:
GTK2 / Traditional:
Is there a way to also desaturate the icon like this through a theme stylesheet?
Further reducing opacity just makes the icon harder to see long before providing reinforcement of a disabled state.