X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Flivebox.h;h=f262a5e53430cb02ba7e458b231ddb7f425d3d6c;hb=b6770ee36511f4c18202b40575789159093d557a;hp=fc859a5bcc2ad55d215fe3c6a33b1848bcba630a;hpb=337fe948aba5875fad4a7451d74769bf772d3520;p=platform%2Fframework%2Fweb%2Flivebox-viewer.git diff --git a/include/livebox.h b/include/livebox.h index fc859a5..f262a5e 100644 --- a/include/livebox.h +++ b/include/livebox.h @@ -43,18 +43,10 @@ enum content_event_type { CONTENT_EVENT_MOUSE_SET = 0x00000020, /*!< LB mouse set auto event for livebox */ CONTENT_EVENT_MOUSE_UNSET = 0x00000040, /*!< LB mouse unset auto event for livebox */ - CONTENT_EVENT_ACCESS_HIGHLIGHT = 0x00000100, /*!< LB accessibility: Hightlight a object */ - CONTENT_EVENT_ACCESS_HIGHLIGHT_NEXT = 0x00000200, /*!< LB accessibility: Set highlight to next object */ - CONTENT_EVENT_ACCESS_HIGHLIGHT_PREV = 0x00000400, /*!< LB accessibility: Set highlight to prev object */ - CONTENT_EVENT_ACCESS_ACTIVATE = 0x00000800, /*!< LB accessibility activate */ - CONTENT_EVENT_ACCESS_VALUE_CHANGE = 0x00001000, /*!< LB accessibility up */ - CONTENT_EVENT_ACCESS_SCROLL = 0x00002000, /*!< LB accessibility down */ - CONTENT_EVENT_KEY_DOWN = 0x00100000, /*!< LB key press */ CONTENT_EVENT_KEY_UP = 0x00200000, /*!< LB key release */ CONTENT_EVENT_KEY_MASK = 0x80000000, - CONTENT_EVENT_ACCESS_MASK = 0x40000000, CONTENT_EVENT_MOUSE_MASK = 0x20000000, CONTENT_EVENT_PD_MASK = 0x10000000, CONTENT_EVENT_LB_MASK = 0x00000000, @@ -75,20 +67,6 @@ enum content_event_type { PD_MOUSE_SET = CONTENT_EVENT_PD_MASK | CONTENT_EVENT_MOUSE_MASK | CONTENT_EVENT_MOUSE_SET, PD_MOUSE_UNSET = CONTENT_EVENT_PD_MASK | CONTENT_EVENT_MOUSE_MASK | CONTENT_EVENT_MOUSE_UNSET, - LB_ACCESS_HIGHLIGHT = CONTENT_EVENT_LB_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_HIGHLIGHT, - LB_ACCESS_HIGHLIGHT_NEXT = CONTENT_EVENT_LB_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_HIGHLIGHT_NEXT, - LB_ACCESS_HIGHLIGHT_PREV = CONTENT_EVENT_LB_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_HIGHLIGHT_PREV, - LB_ACCESS_ACTIVATE = CONTENT_EVENT_LB_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_ACTIVATE, - LB_ACCESS_VALUE_CHANGE = CONTENT_EVENT_LB_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_VALUE_CHANGE, - LB_ACCESS_SCROLL = CONTENT_EVENT_LB_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_SCROLL, - - PD_ACCESS_HIGHLIGHT = CONTENT_EVENT_PD_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_HIGHLIGHT, - PD_ACCESS_HIGHLIGHT_NEXT = CONTENT_EVENT_PD_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_HIGHLIGHT_NEXT, - PD_ACCESS_HIGHLIGHT_PREV = CONTENT_EVENT_PD_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_HIGHLIGHT_PREV, - PD_ACCESS_ACTIVATE = CONTENT_EVENT_PD_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_ACTIVATE, - PD_ACCESS_VALUE_CHANGE = CONTENT_EVENT_PD_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_VALUE_CHANGE, - PD_ACCESS_SCROLL = CONTENT_EVENT_PD_MASK | CONTENT_EVENT_ACCESS_MASK | CONTENT_EVENT_ACCESS_SCROLL, - LB_KEY_DOWN = CONTENT_EVENT_LB_MASK | CONTENT_EVENT_KEY_MASK | CONTENT_EVENT_KEY_DOWN, LB_KEY_UP = CONTENT_EVENT_LB_MASK | CONTENT_EVENT_KEY_MASK | CONTENT_EVENT_KEY_UP, @@ -98,6 +76,32 @@ enum content_event_type { CONTENT_EVENT_MAX = 0xFFFFFFFF, }; +enum access_event_type { + ACCESS_EVENT_PD_MASK = 0x10000000, + ACCESS_EVENT_LB_MASK = 0x00000000, + + ACCESS_EVENT_HIGHLIGHT = 0x00000100, /*!< LB accessibility: Hightlight a object */ + ACCESS_EVENT_HIGHLIGHT_NEXT = 0x00000200, /*!< LB accessibility: Set highlight to next object */ + ACCESS_EVENT_HIGHLIGHT_PREV = 0x00000400, /*!< LB accessibility: Set highlight to prev object */ + ACCESS_EVENT_ACTIVATE = 0x00000800, /*!< LB accessibility activate */ + ACCESS_EVENT_VALUE_CHANGE = 0x00001000, /*!< LB accessibility up */ + ACCESS_EVENT_SCROLL = 0x00002000, /*!< LB accessibility down */ + + LB_ACCESS_HIGHLIGHT = ACCESS_EVENT_LB_MASK | ACCESS_EVENT_HIGHLIGHT, + LB_ACCESS_HIGHLIGHT_NEXT = ACCESS_EVENT_LB_MASK | ACCESS_EVENT_HIGHLIGHT_NEXT, + LB_ACCESS_HIGHLIGHT_PREV = ACCESS_EVENT_LB_MASK | ACCESS_EVENT_HIGHLIGHT_PREV, + LB_ACCESS_ACTIVATE = ACCESS_EVENT_LB_MASK | ACCESS_EVENT_ACTIVATE, + LB_ACCESS_VALUE_CHANGE = ACCESS_EVENT_LB_MASK | ACCESS_EVENT_VALUE_CHANGE, + LB_ACCESS_SCROLL = ACCESS_EVENT_LB_MASK | ACCESS_EVENT_SCROLL, + + PD_ACCESS_HIGHLIGHT = ACCESS_EVENT_PD_MASK | ACCESS_EVENT_HIGHLIGHT, + PD_ACCESS_HIGHLIGHT_NEXT = ACCESS_EVENT_PD_MASK | ACCESS_EVENT_HIGHLIGHT_NEXT, + PD_ACCESS_HIGHLIGHT_PREV = ACCESS_EVENT_PD_MASK | ACCESS_EVENT_HIGHLIGHT_PREV, + PD_ACCESS_ACTIVATE = ACCESS_EVENT_PD_MASK | ACCESS_EVENT_ACTIVATE, + PD_ACCESS_VALUE_CHANGE = ACCESS_EVENT_PD_MASK | ACCESS_EVENT_VALUE_CHANGE, + PD_ACCESS_SCROLL = ACCESS_EVENT_PD_MASK | ACCESS_EVENT_SCROLL, +}; + /* Exported to user app */ enum livebox_lb_type { LB_TYPE_IMAGE = 0x01, /*!< Contents of a livebox is based on the image file */ @@ -136,6 +140,14 @@ enum livebox_event_type { /*!< livebox_event_handler_set Event list */ LB_EVENT_HOLD_SCROLL, /*!< If the screen should be freezed */ LB_EVENT_RELEASE_SCROLL, /*!< If the screen can be scrolled */ + LB_EVENT_LB_UPDATE_BEGIN, + LB_EVENT_LB_UPDATE_END, + + LB_EVENT_PD_UPDATE_BEGIN, + LB_EVENT_PD_UPDATE_END, + + LB_EVENT_UPDATE_MODE_CHANGED, + LB_EVENT_IGNORED, /*!< Request is ignored */ }; @@ -479,10 +491,23 @@ extern int livebox_pdfb_bufsz(struct livebox *handler); * \param[in] type * \param[in] x * \param[in] y + * \return */ extern int livebox_content_event(struct livebox *handler, enum content_event_type type, double x, double y); /*! + * \brief Send the access event(for buffer type) to provider(livebox). + * \param[in] handler + * \param[in] access_event_type + * \param[in] x + * \param[in] y + * \param[in] cb + * \param[in] data + * \return + */ +extern int livebox_access_event(struct livebox *handler, enum access_event_type type, double x, double y, ret_cb_t cb, void *data); + +/*! * \brief Do pin up or not. * \param[in] handler * \param[in] flag @@ -723,6 +748,26 @@ extern int livebox_set_visibility(struct livebox *handler, enum livebox_visible_ */ extern enum livebox_visible_state livebox_visibility(struct livebox *handler); +/*! + * \brief Set the update mode of current livebox + * if you set 1 for active update mode, you should get buffer without updated event from provider. + * But is passive mode, you have to update content of a box when you get updated event. + * Default is Passive mode. + * \param[in] handler Handler of a livebox + * \param[in] active_update 1 means active update, 0 means passive update (default) + * \param[in] cb Result callback function + * \param[in] data Callback data + * \return int + */ +extern int livebox_set_update_mode(struct livebox *handler, int active_update, ret_cb_t cb, void *data); + +/*! + * \brief Is this box in the active update mode? + * \param[in] handler HAndler of a livebox + * \return int 0 if passive mode or 1 if active mode or error code + */ +extern int livebox_is_active_update(struct livebox *handler); + #ifdef __cplusplus } #endif