Description

The hardware acceleration preference for this window.

This is a constructor function and can only be called before Efl.Object.finalize.

This property overrides the global EFL configuration option "accel_preference" for this single window, and accepts the same syntax.

The accel string is a freeform C string that indicates what kind of acceleration is preferred. Here "acceleration" generally refers to rendering and the hardware with which the unit application renders GUIs. This may or may not be honored but a best attempt will be made. Known strings are as follows:

"gl", "opengl" - try use OpenGL. "3d" - try to use a 3d acceleration unit. "hw", "hardware", "accel" - try any acceleration unit (best possible) "none" - use no acceleration but software instead (since 1.16)

Since 1.14, it is also possible to specify some GL properties for the GL window surface. This allows applications to use GLView with depth, stencil and MSAA buffers with direct rendering. The new accel preference string format is thus "{HW Accel}[:depth{value}[:stencil{value}[:msaa{str}$]$]$]".

Accepted values for depth are for instance "depth", "depth16", "depth24". Accepted values for stencil are "stencil", "stencil1", "stencil8". For MSAA, only predefined strings are accepted: "msaa", "msaa_low", "msaa_mid" and "msaa_high". The selected configuration is not guaranteed and is only valid in case of GL acceleration. Only the base acceleration string will be saved (e.g. "gl" or "hw").

Full examples include:

"gl", - try to use OpenGL "hw:depth:stencil", - use HW acceleration with default depth and stencil buffers "opengl:depth24:stencil8:msaa_mid" - use OpenGL with 24-bit depth, 8-bit stencil and a medium number of MSAA samples in the backbuffer.

Note that this option may be overriden by environment variables or the configuration option "accel_preference_override".

Since 1.18

Values

  • accel - Acceleration

Getter

This will return the value of "accel_preference" when the window was created.

Signature

@property accel_preference {
    get {
        values {
            accel: free(string, free);
        }
    }
    set {
        values {
            accel: free(string, free);
        }
    }
}

C signature

const char *efl_ui_win_accel_preference_get(const Eo *obj);
void efl_ui_win_accel_preference_set(Eo *obj, const char *accel);

Implemented by

  • Efl.Ui.Win.accel_preference