viewer handles level change