2011-12-26 Christopher Michael (devilhorns)
* Add functions to get/set if an object is a 'frame_object'
+
+2011-12-27 Carsten Haitzler (The Rasterman)
+
+ * Add feature to get number of pressed devices (help fix
+ ecore-evas bug).
+
*/
/**
+ * Get the number of mouse or multi presses currently active
+ *
+ * @p e The given canvas pointer.
+ * @return The numer of presses (0 if none active).
+ *
+ * @since 1.2
+ */
+EAPI int evas_event_down_count_get (const Evas *e) EINA_ARG_NONNULL(1);
+
+/**
* Mouse down event feed.
*
* @param e The given canvas pointer.
_evas_walk(e);
/* if our mouse button is grabbed to any objects */
- if (e->pointer.mouse_grabbed == 0)
+ if ((0) && (e->pointer.mouse_grabbed != 0))
{
/* go thru old list of in objects */
Eina_List *l, *copy;
if (e->events_frozen <= 0)
evas_object_event_callback_call(obj, EVAS_CALLBACK_MOUSE_OUT, &ev, event_id);
}
+ obj->mouse_grabbed = 0;
}
if (e->delete_me) break;
}
if (copy) copy = eina_list_free(copy);
/* free our old list of ins */
e->pointer.object.in = eina_list_free(e->pointer.object.in);
+ e->pointer.mouse_grabbed = 0;
_evas_post_event_callback_call(e);
}
_evas_unwalk(e);
if (e->events_frozen > 0) return;
e->last_timestamp = timestamp;
- if (!e->pointer.inside) return;
+ if ((!e->pointer.inside) && (e->pointer.mouse_grabbed == 0)) return;
_evas_walk(e);
/* update moved touch point */
break;
}
}
+
+EAPI int
+evas_event_down_count_get(const Evas *e)
+{
+ MAGIC_CHECK(e, Evas, MAGIC_EVAS);
+ return 0;
+ MAGIC_CHECK_END();
+ return e->pointer.downs;
+}