Mir
|
Go to the source code of this file.
Macros | |
#define | __has_feature(x) 0 |
#define | __has_extension __has_feature |
#define | MIR_BYTES_PER_PIXEL(f) |
Typedefs | |
typedef enum MirWindowAttrib | MirWindowAttrib |
Attributes of a window that the client and server/shell may wish to get or set over the wire. More... | |
typedef enum MirWindowType | MirWindowType |
typedef enum MirWindowState | MirWindowState |
typedef enum MirWindowFocusState | MirWindowFocusState |
typedef enum MirWindowVisibility | MirWindowVisibility |
typedef enum MirLifecycleState | MirLifecycleState |
typedef enum MirPowerMode | MirPowerMode |
typedef enum MirOutputType | MirOutputType |
typedef enum MirPromptSessionState | MirPromptSessionState |
typedef enum MirPixelFormat | MirPixelFormat |
32-bit pixel formats (8888): The order of components in the enum matches the order of the components as they would be written in an integer representing a pixel value of that format. More... | |
typedef enum MirOrientation | MirOrientation |
Direction relative to the "natural" orientation of the display. More... | |
typedef enum MirMirrorMode | MirMirrorMode |
Mirroring axis relative to the "natural" orientation of the display. More... | |
typedef enum MirOrientationMode | MirOrientationMode |
typedef enum MirEdgeAttachment | MirEdgeAttachment |
typedef enum MirPlacementGravity | MirPlacementGravity |
Reference point for aligning a surface relative to a rectangle. More... | |
typedef enum MirPlacementHints | MirPlacementHints |
Positioning hints for aligning a window relative to a rectangle. More... | |
typedef enum MirResizeEdge | MirResizeEdge |
Hints for resizing a window. More... | |
typedef enum MirFormFactor | MirFormFactor |
Form factor associated with a physical output. More... | |
typedef enum MirSubpixelArrangement | MirSubpixelArrangement |
Physical arrangement of subpixels on the physical output. More... | |
typedef enum MirShellChrome | MirShellChrome |
Shell chrome. More... | |
typedef enum MirPointerConfinementState | MirPointerConfinementState |
Pointer Confinement. More... | |
typedef enum MirOutputGammaSupported | MirOutputGammaSupported |
Supports gamma correction. More... | |
typedef enum MirDepthLayer | MirDepthLayer |
Depth layer controls Z ordering of surfaces. More... | |
typedef enum MirFocusMode | MirFocusMode |
Focus mode controls how a surface gains and loses focus. More... | |
#define __has_extension __has_feature |
#define __has_feature | ( | x | ) | 0 |
#define MIR_BYTES_PER_PIXEL | ( | f | ) |
typedef enum MirDepthLayer MirDepthLayer |
Depth layer controls Z ordering of surfaces.
A surface will always appear on top of surfaces with a lower depth layer, and below those with a higher one. A depth layer can be converted to a number with mir::mir_depth_layer_get_index(). This is useful for creating a list indexed by depth layer, or comparing the height of two layers.
typedef enum MirEdgeAttachment MirEdgeAttachment |
typedef enum MirFocusMode MirFocusMode |
Focus mode controls how a surface gains and loses focus.
typedef enum MirFormFactor MirFormFactor |
Form factor associated with a physical output.
typedef enum MirLifecycleState MirLifecycleState |
typedef enum MirMirrorMode MirMirrorMode |
Mirroring axis relative to the "natural" orientation of the display.
typedef enum MirOrientation MirOrientation |
Direction relative to the "natural" orientation of the display.
typedef enum MirOrientationMode MirOrientationMode |
typedef enum MirOutputGammaSupported MirOutputGammaSupported |
Supports gamma correction.
typedef enum MirOutputType MirOutputType |
typedef enum MirPixelFormat MirPixelFormat |
32-bit pixel formats (8888): The order of components in the enum matches the order of the components as they would be written in an integer representing a pixel value of that format.
For example; abgr_8888 should be coded as 0xAABBGGRR, which will end up as R,G,B,A in memory on a little endian system, and as A,B,G,R on a big endian system.
24-bit pixel formats (888): These are in literal byte order, regardless of CPU architecture it's always the same. Writing these 3-byte pixels is typically slower than other formats but uses less memory than 32-bit and is endian-independent.
16-bit pixel formats (565/5551/4444): Always interpreted as one 16-bit integer per pixel with components in high-to-low bit order following the format name. These are the fastest formats, however colour quality is visibly lower.
typedef enum MirPlacementGravity MirPlacementGravity |
Reference point for aligning a surface relative to a rectangle.
Each element (surface and rectangle) has a MirPlacementGravity assigned.
typedef enum MirPlacementHints MirPlacementHints |
Positioning hints for aligning a window relative to a rectangle.
These hints determine how the window should be positioned in the case that the surface would fall off-screen if placed in its ideal position.
For example, mir_placement_hints_flip_x
will invert the x component of aux_rect_placement_offset
and replace mir_placement_gravity_northwest
with mir_placement_gravity_northeast
and vice versa if the window extends beyond the left or right edges of the monitor.
If mir_placement_hints_slide_x
is set, the window can be shifted horizontally to fit on-screen.
If mir_placement_hints_resize_x
is set, the window can be shrunken horizontally to fit.
If mir_placement_hints_antipodes
is set then the rect gravity may be substituted with the opposite corner (e.g. mir_placement_gravity_northeast
to mir_placement_gravity_southwest
) in combination with other options.
When multiple flags are set, flipping should take precedence over sliding, which should take precedence over resizing.
typedef enum MirPointerConfinementState MirPointerConfinementState |
Pointer Confinement.
typedef enum MirPowerMode MirPowerMode |
typedef enum MirPromptSessionState MirPromptSessionState |
typedef enum MirResizeEdge MirResizeEdge |
Hints for resizing a window.
These values are used to indicate which edge(s) of a surface is being dragged in a resize operation.
typedef enum MirShellChrome MirShellChrome |
Shell chrome.
typedef enum MirSubpixelArrangement MirSubpixelArrangement |
Physical arrangement of subpixels on the physical output.
This is always relative to the “natural” orientation of the display - mir_orientation_normal.
typedef enum MirWindowAttrib MirWindowAttrib |
Attributes of a window that the client and server/shell may wish to get or set over the wire.
typedef enum MirWindowFocusState MirWindowFocusState |
typedef enum MirWindowState MirWindowState |
typedef enum MirWindowType MirWindowType |
typedef enum MirWindowVisibility MirWindowVisibility |
enum MirDepthLayer |
Depth layer controls Z ordering of surfaces.
A surface will always appear on top of surfaces with a lower depth layer, and below those with a higher one. A depth layer can be converted to a number with mir::mir_depth_layer_get_index(). This is useful for creating a list indexed by depth layer, or comparing the height of two layers.
enum MirEdgeAttachment |
enum MirFocusMode |
Focus mode controls how a surface gains and loses focus.
enum MirFormFactor |
enum MirLifecycleState |
enum MirMirrorMode |
enum MirOrientation |
enum MirOrientationMode |
enum MirOutputType |
enum MirPixelFormat |
32-bit pixel formats (8888): The order of components in the enum matches the order of the components as they would be written in an integer representing a pixel value of that format.
For example; abgr_8888 should be coded as 0xAABBGGRR, which will end up as R,G,B,A in memory on a little endian system, and as A,B,G,R on a big endian system.
24-bit pixel formats (888): These are in literal byte order, regardless of CPU architecture it's always the same. Writing these 3-byte pixels is typically slower than other formats but uses less memory than 32-bit and is endian-independent.
16-bit pixel formats (565/5551/4444): Always interpreted as one 16-bit integer per pixel with components in high-to-low bit order following the format name. These are the fastest formats, however colour quality is visibly lower.
enum MirPlacementGravity |
Reference point for aligning a surface relative to a rectangle.
Each element (surface and rectangle) has a MirPlacementGravity assigned.
enum MirPlacementHints |
Positioning hints for aligning a window relative to a rectangle.
These hints determine how the window should be positioned in the case that the surface would fall off-screen if placed in its ideal position.
For example, mir_placement_hints_flip_x
will invert the x component of aux_rect_placement_offset
and replace mir_placement_gravity_northwest
with mir_placement_gravity_northeast
and vice versa if the window extends beyond the left or right edges of the monitor.
If mir_placement_hints_slide_x
is set, the window can be shifted horizontally to fit on-screen.
If mir_placement_hints_resize_x
is set, the window can be shrunken horizontally to fit.
If mir_placement_hints_antipodes
is set then the rect gravity may be substituted with the opposite corner (e.g. mir_placement_gravity_northeast
to mir_placement_gravity_southwest
) in combination with other options.
When multiple flags are set, flipping should take precedence over sliding, which should take precedence over resizing.
enum MirPowerMode |
enum MirResizeEdge |
Hints for resizing a window.
These values are used to indicate which edge(s) of a surface is being dragged in a resize operation.
enum MirShellChrome |
Physical arrangement of subpixels on the physical output.
This is always relative to the “natural” orientation of the display - mir_orientation_normal.
enum MirWindowAttrib |
Attributes of a window that the client and server/shell may wish to get or set over the wire.
Enumerator | |
---|---|
mir_window_attrib_type | |
mir_window_attrib_state | |
mir_window_attrib_swapinterval |
Use the "mir_*_get_swapinterval()" functions instead if you wish query its value |
mir_window_attrib_focus | |
mir_window_attrib_dpi | |
mir_window_attrib_visibility | |
mir_window_attrib_preferred_orientation | |
mir_window_attribs |
enum MirWindowFocusState |
enum MirWindowState |
enum MirWindowType |
enum MirWindowVisibility |
Copyright © 2012-2022
Canonical Ltd.
Generated on Fri Aug 26 13:27:37 UTC 2022
This documentation is licensed under the GPL version 2 or 3.