Meta screen | Screen Common resources and capabilities

# Meta screen

Although XmetaX eliminates the borders between the screens of one or more X Window servers, it may offer multiple separate display areas, so-called meta screens, to the clients. For instance, screens with different graphics capabilities may be grouped to several meta screens. In the statement

    metaScreen name

name is an arbitrary string. Each meta screen corresponds to a screen number, increasing from .0 on.

Without this statement, the xmetax program creates all meta screens referred to by any screen definition, at least one.

The metaScreen statement introduces sub-statements, which specify additional parameters of the meta screen.

The sub-statement

        delete

removes a meta screen from a configuration.

## Position of a meta screen

Like most X Window servers, XmetaX allows to move the mouse pointer from one display area (here meta screen) to an other. For determining the neighboring meta screen, the relative positions of all meta screens must be known. The sub-statements

        northOf|northEastOf|eastOf|sourthEastOf|southOf|southWestOf|westOf|northWestOf
            name_of_a_meta_screen
            [horizontal_offset_in_pixels vertical_offset_in_pixels]

define the position of a meta screen relative to an other one. Cyclic definitions are not allowed. The offset parameters default to the value 0. Without a position specification the meta screen is positioned right to the preceding one, with the exception of the first one.

## Dimensions of a meta screen

The sub-statements

        width width_in_pixels|double
        height height_in_pixels|double

define the dimensions of the virtual display area of a meta screen. The default values of 0 have the special meaning that the area is just big enough to enclose the associated screens (Position of a screen). These dimensions can be doubled by specifying double.

In most cases only partly displaying a meta screen yields no problems. However, only for total compliance with the X11 protocol, the whole display area of the meta screen should be covered by screens, and it should be visible. The mouse pointer cannot be positioned on invisible areas, except using dynamic positioning of a screen (Dynamic position of a screen). Furthermore, some X Window clients show bugs, if they should draw to invisible areas (Drawing actively) (Ignoring Expose events).

The sub-statement

        keepWindowsVisible number_of_pixels

determines that at least an area of number_of_pixels pixels in both dimensions of each window remains within the visible part of the meta screen, even if it is positioned at an invisible position or if a screen is deleted from the configuration. This works only with window managers compliant to the ICCCM (Inter-Client Communication Conventions Manual) or without any window manager, in rare cases a workaround (Buggy window manager) may be necessary. The default value 0 for number_of_pixels disables this function.

## Common resources and capabilities

The sub-statement

        visuals
            {[+|-][class][:[depth]
            [:[number_of_significant_bits]
            [:[layer][:[transparency_type][:[transparency_value]
            [:[singleBuffered|doubleBuffered|singleOnDoubleBuffered]
            ]]]]]]}...

is used in special cases only (Common resources and capabilities). It specifies for each meta screen a list (Lists) of visuals presented to the X Window clients.

The sub-statement contains one or more visual specifiers. If a specifier does not fully qualify a visual (i.e. it contains one or more empty fields between the colons :) the specifier may denote multiple visuals. The individual fields specify in this order:

The class of the visual: StaticGray, GrayScale, StaticColor, PseudoColor, TrueColor, or DirectColor;

The color depth;

The number of significant bits in color specifications;

The number of the layer associated with the visual;

The kind of transparency of an overlay visual;

A value, the meaning of which depends on the kind of transparency;

The number of buffers associated with each window:

With a singleBuffered visual, all drawings go directly to the window.

With a doubleBuffered visual, drawings go mutually to one of two buffers, only one buffer is displayed.

With singleOnDoubleBuffered the XmetaX proxy simulates a single-buffered visual on a double-buffered visual.

The fields specifying layer and transparency are ignored unless the X Window server follows the SERVER_OVERLAY_VISUALS convention.

The sub-statement

        defaultVisual
            [class][:[depth]
            [:[number_of_significant_bits]
            [:[layer][:[transparency_type][:[transparency_value]
            [:[singleBuffered|doubleBuffered|singleOnDoubleBuffered]
            ]]]]]]

denotes the default visual and thus the default color model of the meta screen.

top
Screen
Common resources and capabilities

Copyright © 2021 X-Software GmbH
info@x-software.com