Description

How the mouse pointer should be handled by EFL.

In the mode autograb, when a mouse button is pressed down over an object and held down, with the mouse pointer being moved outside of it, the pointer still behaves as being bound to that object, albeit out of its drawing region. When the button is released, the event will be fed to the object, that may check if the final position is over it or not and do something about it.

In the mode nograb, the pointer will always be bound to the object right below it.

Since 1.19

Fields

  • auto_grab - Default, X11-like.
  • no_grab - Pointer always bound to the object right below it.
  • no_grab_no_repeat_updown - Useful on object with "repeat events" enabled, where mouse/touch up and down events WON'T be repeated to objects and these objects wont be auto-grabbed.

Signature

enum Efl.Input.Object_Pointer_Mode {
    auto_grab: 0,
    no_grab,
    no_grab_no_repeat_updown
}

C signature

typedef enum {
    EFL_INPUT_OBJECT_POINTER_MODE_AUTO_GRAB = 0,
    EFL_INPUT_OBJECT_POINTER_MODE_NO_GRAB,
    EFL_INPUT_OBJECT_POINTER_MODE_NO_GRAB_NO_REPEAT_UPDOWN
} Efl_Input_Object_Pointer_Mode;