d908940ef3
For the OSD, all parameters except for the icon are optional - if the caller doesn't include the 'label' option, the OSD won't show a label etc. While this makes sense for an API, it means that we have to be careful to correctly differentiate an option that was omitted and an option that has a 'falsy' value like false or 0. Unfortunately since commit ccaae5d3c we no longer do, with the result that OSDs meant for the first monitor will show up on all, and a level of 0 is presented as no level bar instead of an empty one, whoops. https://bugzilla.gnome.org/show_bug.cgi?id=791669