listen to layer add/remove