Added the window sysmte using the Bridge pattern, just for demo purpose, because this app only support one window system anyway