add viewport size setup support