Returns an iterator over the current known pointer positions.

This is used to iterate over the current known multi-touch positions, including the first finger. Each pointer position is represented by an object of type Efl.Input.Pointer.

Each finger in a multi touch environment can then be identified by the Efl.Input.Pointer.tool property. The order of the pointers in this iterator is not defined.

If the input surface supports hovering input, some pointers may not be in a "down" state. To retrieve the list of such pointers, set the hover value to true. Remember though that most devices currently don't support this.


pointer_iterate @beta @const @pure_virtual {
    params {
        @in hover: bool @optional;
    return: free(iterator<free(const(Efl.Input.Pointer), efl_del)>, eina_iterator_free);

C signature

Eina_Iterator *efl_canvas_pointer_iterate(const Eo *obj, Eina_Bool hover);


  • hover (in) - false by default, true means to include fingers that are currently hovering.

Implemented by

  • Efl.Canvas.pointer_iterate