only set platform gui when we need to