custom viewlocationprovider (which finally works, ähem)