I've still not managed to get abd working so haven't got this done yet but I was thinking some other way to do it.
It would be nice to have the brightness power control be able to change between modes and although there's no broadcast on brightness change, it might be possible to set a ContentObserver on it
Google's Power Control appwidget registers a ContentObserver in order to listens to changes to the brightness settings. Not quite the same as listening for actual screen brightness changes, but better than nothing: resolver.registerContentObserver(Settings.System.g etUriFor(Settings.System.SCREE*N_BRIGHTNESS), false, this); resolver.registerContentObserver(Settings.System.g etUriFor(Settings.System.SCREE*N_BRIGHTNESS_MODE) , false, this);
Although I guess it might just be easier to stick it in its own widget