Commit b3981136 authored by Committed by Kristian HøgsbergBrowse files
Add fullscreen protocol
Map the surface as a fullscreen surface. On the output the surface is assigned to. The client can use different fulllscreen method to fix the size mismatch issue: default, scale, driver and fill. Hints to indicate compositor how to deal with this fullscreen surface. "default" means the client has no preference on fullscreen behavior, policies are determined by compositor. "scale" means the client prefers scaling by the compositor. Scaling would always preserve surface's aspect ratio. And the surface is centered. "driver" means the client wants to switch video mode to the smallest mode that can fit the client buffer. If the sizes do not match, black borders are added. And the framerate parameter is used for "driver" method, to indicate the preferred framerate. framerate=0 means that the app does not care about framerate "fill" means the client wants to add blackborders to the surface. This would be preferring 1:1 pixel mapping in the monitor native video mode. The surface is centered.
Showing with 32 additions and 8 deletions