A window is used to display different types of content.
The information and state variables associated with each window are stored in memory allocated when the window is created with screen_create_window().
A window exists in the composited windowing system space. A window will not be visible until it is associated with at least one buffer that has been created with screen_create_window_buffers(), and one frame has been posted with screen_post_window().
If a window's buffer size has not been set explicitly before the first buffer is created, the source size is used as the default value. If the window's source size has not been set explicitly, its destination size is used as the default value. If the destination size has not been set either, the buffer size will default to the screen size. Trying to change the usage once buffers have already been allocated will result in an error. Buffers must be created before a frame can be posted with screen_post_window().