new view layout apis