In theory, HDMI CEC should solve a lot of those problems. Unfortunately it only introduced another buggy layer.