discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=ef5c93d173e9e3f5fdc5844651b51a481b8bac60
commit ef5c93d173e9e3f5fdc5844651b51a481b8bac60 Author: Marcel Hollerbach <[email protected]> Date: Mon Jun 25 06:57:08 2018 -0400 elm_web: convert the enum fields correctly, as previously done Summary: ensure that everything stays in the allowed and previously used ranges. The enums that are passed here are not equivalent. Depends on D6383 Reviewers: devilhorns, zmike Reviewed By: zmike Subscribers: cedric, #committers, zmike Tags: #efl Differential Revision: https://phab.enlightenment.org/D6384 --- src/lib/elementary/elm_web2.c | 38 ++++++++++++++++++++++++++++++++++++-- 1 file changed, 36 insertions(+), 2 deletions(-) diff --git a/src/lib/elementary/elm_web2.c b/src/lib/elementary/elm_web2.c index 35360c40f6..8fb606c2d4 100644 --- a/src/lib/elementary/elm_web2.c +++ b/src/lib/elementary/elm_web2.c @@ -157,16 +157,50 @@ elm_web_window_features_region_get(const Elm_Web_Window_Features *wf, ewm.window_features_region_get(wf, x, y, w, h); } + +static inline void +_convert_web_zoom_mode(Elm_Web_Zoom_Mode *legacy_mode, Efl_Ui_Zoom_Mode *mode, Eina_Bool to_legacy) +{ + #define CONVERT(LEGACY_MODE, NEW_MODE) \ + if (to_legacy && *mode == NEW_MODE) \ + { \ + *legacy_mode =LEGACY_MODE; \ + return; \ + } \ + if (!to_legacy && *legacy_mode == LEGACY_MODE) \ + { \ + *mode = NEW_MODE; \ + return; \ + } \ + + CONVERT(ELM_WEB_ZOOM_MODE_MANUAL, EFL_UI_ZOOM_MODE_MANUAL) + CONVERT(ELM_WEB_ZOOM_MODE_AUTO_FIT, EFL_UI_ZOOM_MODE_AUTO_FIT) + CONVERT(ELM_WEB_ZOOM_MODE_AUTO_FILL, EFL_UI_ZOOM_MODE_AUTO_FILL) + CONVERT(ELM_WEB_ZOOM_MODE_LAST, EFL_UI_ZOOM_MODE_LAST) + CONVERT(ELM_WEB_ZOOM_MODE_LAST, EFL_UI_ZOOM_MODE_AUTO_FIT_IN) + + #undef CONVERT +} + EAPI void elm_web_zoom_mode_set(Evas_Object *obj, Elm_Web_Zoom_Mode mode) { - efl_ui_zoom_mode_set(obj, mode); + Efl_Ui_Zoom_Mode new_mode; + + _convert_web_zoom_mode(&mode, &new_mode, EINA_FALSE); + + efl_ui_zoom_mode_set(obj, new_mode); } EAPI Elm_Web_Zoom_Mode elm_web_zoom_mode_get(const Evas_Object *obj) { - return efl_ui_zoom_mode_get(obj); + Efl_Ui_Zoom_Mode new_mode = efl_ui_zoom_mode_get(obj);; + Elm_Web_Zoom_Mode mode; + + _convert_web_zoom_mode(&mode, &new_mode, EINA_TRUE); + + return mode; } EAPI void --
