evas: New Evas Callback added when viewport is resized.

Summary: @feature

Reviewers: seoz, Hermet, cedric, raster

Subscribers: seoz, cedric, sachin.dev

Differential Revision: https://phab.enlightenment.org/D2526
This commit is contained in:
Amitesh Singh 2015-05-18 20:10:21 +09:00 committed by Carsten Haitzler (Rasterman)
parent 183cef932e
commit 86751fdbaf
4 changed files with 8 additions and 0 deletions

View File

@ -118,6 +118,7 @@ typedef enum _Evas_Callback_Type
EVAS_CALLBACK_RENDER_FLUSH_POST, /**< Called just after rendering is updated on the canvas target */
EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_IN, /**< Canvas object got focus */
EVAS_CALLBACK_CANVAS_OBJECT_FOCUS_OUT, /**< Canvas object lost focus */
EVAS_CALLBACK_CANVAS_VIEWPORT_RESIZE, /**< Canvas viewport resized @since 1.15 */
/*
* More Evas object event types - see evas_object_event_callback_add():

View File

@ -12,6 +12,7 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_PRE;
EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_RENDER_POST;
EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_DEVICE_CHANGED;
EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_AXIS_UPDATE;
EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE;
// Callbacks events for use with Evas canvases
#define EVAS_CANVAS_EVENT_FOCUS_IN (&(_EVAS_CANVAS_EVENT_FOCUS_IN))
@ -24,6 +25,7 @@ EAPI extern const Eo_Event_Description _EVAS_CANVAS_EVENT_AXIS_UPDATE;
#define EVAS_CANVAS_EVENT_RENDER_POST (&(_EVAS_CANVAS_EVENT_RENDER_POST))
#define EVAS_CANVAS_EVENT_DEVICE_CHANGED (&(_EVAS_CANVAS_EVENT_DEVICE_CHANGED))
#define EVAS_CANVAS_EVENT_AXIS_UPDATE (&(_EVAS_CANVAS_EVENT_AXIS_UPDATE))
#define EVAS_CANVAS_EVENT_VIEWPORT_RESIZE (&(_EVAS_CANVAS_EVENT_VIEWPORT_RESIZE))
#include "canvas/evas_signal_interface.eo.h"
#include "canvas/evas_draggable_interface.eo.h"

View File

@ -31,6 +31,9 @@ EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_OBJECT_FOCUS_OUT =
EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_DEVICE_CHANGED =
EO_HOT_EVENT_DESCRIPTION("Device changed",
"Devices added, removed or changed to the canvas");
EAPI const Eo_Event_Description _EVAS_CANVAS_EVENT_VIEWPORT_RESIZE =
EO_HOT_EVENT_DESCRIPTION("Canvas viewport resize",
"Canvas viewport is resized");
/**
* Evas events descriptions for Eo.
*/
@ -65,6 +68,7 @@ static const Eo_Event_Description *_legacy_evas_callback_table[EVAS_CALLBACK_LAS
EVAS_CANVAS_EVENT_RENDER_FLUSH_POST,
EVAS_CANVAS_EVENT_OBJECT_FOCUS_IN,
EVAS_CANVAS_EVENT_OBJECT_FOCUS_OUT,
EVAS_CANVAS_EVENT_VIEWPORT_RESIZE,
EVAS_OBJECT_EVENT_IMAGE_UNLOADED,
EVAS_CANVAS_EVENT_RENDER_PRE,
EVAS_CANVAS_EVENT_RENDER_POST,

View File

@ -413,6 +413,7 @@ _evas_canvas_output_viewport_set(Eo *eo_e EINA_UNUSED, Evas_Public_Data *e, Evas
e->viewport.changed = 1;
e->output_validity++;
e->changed = 1;
evas_event_callback_call(e->evas, EVAS_CALLBACK_CANVAS_VIEWPORT_RESIZE, NULL);
}
EOLIAN static void