add preferredcontentsize