Skip to content
  • Juan Zhao's avatar
    Add fullscreen protocol · b3981136
    Juan Zhao authored
    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.
    b3981136