viewport proxy