Slate is a problem in showers....I would use the Kleenzall,and then let it dry and use your choice of stone sealers...all will work..and some are less expensive.Unless you want to enhance it..then make sure the shower is dry for a day or so,so it will soak in well...it won't enhance very well if the stone is holding water.The water based sealers will still work on stone that contains water,not standing water,,,,,,,but i like to let the stone dry for a day myself.

Unfortunately,none of these will really stop the spalling.