1556
1557Eina_Bool ewk_view_mouse_events_enabled_set(Evas_Object* ewkView, Eina_Bool enabled)
1558{
1559 EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, false);
1560 EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, false);
1561
1562 enabled = !!enabled;
1563 if (priv->areMouseEventsEnabled == enabled)
1564 return true;
1565
1566 priv->areMouseEventsEnabled = enabled;
1567 if (enabled) {
1568 evas_object_event_callback_add(ewkView, EVAS_CALLBACK_MOUSE_DOWN, _ewk_view_on_mouse_down, smartData);
1569 evas_object_event_callback_add(ewkView, EVAS_CALLBACK_MOUSE_UP, _ewk_view_on_mouse_up, smartData);
1570 evas_object_event_callback_add(ewkView, EVAS_CALLBACK_MOUSE_MOVE, _ewk_view_on_mouse_move, smartData);
1571 } else {
1572 evas_object_event_callback_del(ewkView, EVAS_CALLBACK_MOUSE_DOWN, _ewk_view_on_mouse_down);
1573 evas_object_event_callback_del(ewkView, EVAS_CALLBACK_MOUSE_UP, _ewk_view_on_mouse_up);
1574 evas_object_event_callback_del(ewkView, EVAS_CALLBACK_MOUSE_MOVE, _ewk_view_on_mouse_move);
1575 }
1576
1577 return true;
1578}
1579
1580Eina_Bool ewk_view_mouse_events_enabled_get(const Evas_Object* ewkView)
1581{
1582 EWK_VIEW_SD_GET_OR_RETURN(ewkView, smartData, false);
1583 EWK_VIEW_PRIV_GET_OR_RETURN(smartData, priv, false);
1584
1585 return priv->areMouseEventsEnabled;
1586}