efl/src/bin/elementary
Ali Alzyod 46f2d8acdc evas_object_textblock: add support for variation sequences
Summary: update font processing to handle variation sequences unicodes to select proper glypg in respect to variation seqences

Test Plan:
```
#define EFL_EO_API_SUPPORT 1
#define EFL_BETA_API_SUPPORT 1
#include <Eina.h>
#include <Efl.h>
#include <Elementary.h>

EAPI_MAIN int
elm_main(int argc, char **argv)
{
   Evas_Object *win, *textblock;

   elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

   win = elm_win_util_standard_add("Main", "");
   elm_win_autodel_set(win, EINA_TRUE);
   textblock = evas_object_textblock_add(win);
   efl_canvas_text_style_set(textblock,NULL,"DEFAULT='font=DejaVuSans font_fallbacks=SamsungColorEmoji color=#000 font_size=20'");
   evas_object_textblock_text_markup_set(textblock, "8&#xfe0f;&#x20E3;&#x262a;&#xfe0f;AAA&#x262a;&#xfe0E;1234567&#xfe0f;&#x20E3;");

   evas_object_size_hint_weight_set(textblock, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
   evas_object_size_hint_align_set(textblock, EVAS_HINT_FILL, EVAS_HINT_FILL);
   evas_object_show(textblock);
   evas_object_move(textblock, 0, 0);
   evas_object_resize(textblock, 320, 320);
   evas_object_resize(win, 320, 320);
   evas_object_show(win);
   elm_run();
   return 0;

}

ELM_MAIN()

```

Reviewers: woohyun, bowonryu, segfaultxavi, cedric, bu5hm4n

Reviewed By: woohyun, cedric

Subscribers: bu5hm4n, subodh6129, herdsman, segfaultxavi, zmike, cedric, #committers, #reviewers

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D9053
2019-10-19 14:01:36 +09:00
..
.gitignore elementary: merge in elm_code example. 2016-06-03 14:17:27 -07:00
config.c elm config -> allow people to set desktop entry and magnifier config 2019-08-29 17:35:02 +01:00
elementary_codegen.c elementary_codegen: check before use to avoid use after free 2019-09-23 11:16:38 +02:00
elm_prefs_cc.c define HAVE_REALPATH in evil_stdlib.h 2019-06-18 13:22:05 +01:00
elm_prefs_cc.h build: move ELM_INTERNAL_API_ARGESFSDFEFC into buildsystem 2018-10-18 16:01:07 +02:00
elm_prefs_cc_handlers.c make mman.h private 2019-08-19 09:55:13 -04:00
elm_prefs_cc_mem.c
elm_prefs_cc_out.c
elm_prefs_cc_parse.c elm prefs cc - warn - use memcpy instead since we are really truncating 2018-11-09 11:43:59 +00:00
meson.build elementary_test: Add the value provider test for animation_view 2019-10-02 14:38:45 +09:00
perf.c interfaces: move animator,tick to efl.canvas.object and remove efl.animator 2019-02-21 22:04:30 +01:00
perf.h elm perf tool - bring one back to efl 2018-12-03 11:04:27 +00:00
perf_list.c elm perf tool - bring one back to efl 2018-12-03 11:04:27 +00:00
perf_rnd.c elm perf tool - bring one back to efl 2018-12-03 11:04:27 +00:00
perf_test_01.c elm perf_test: fix warning of implicit conversion of floating point 2019-09-09 14:47:10 +09:00
perf_test_02.c elm perf_test: fix warning of implicit conversion of floating point 2019-09-09 14:47:10 +09:00
perf_test_03.c elm perf_test: fix warning of implicit conversion of floating point 2019-09-09 14:47:10 +09:00
perf_test_04.c elm perf tool - bring one back to efl 2018-12-03 11:04:27 +00:00
perf_test_05.c elm perf tool - bring one back to efl 2018-12-03 11:04:27 +00:00
perf_test_06.c elm perf tool - bring one back to efl 2018-12-03 11:04:27 +00:00
quicklaunch.c silence most left over compiler warnings 2018-12-18 13:08:01 +01:00
run.c Evil: remove wrapper around getcwd() 2019-05-08 08:39:36 -04:00
test.c evas_object_textblock: add support for variation sequences 2019-10-19 14:01:36 +09:00
test.h elm_test: undef logging macros before redefining them in header 2019-09-27 14:34:32 -04:00
test_3d.c
test_access.c elementary_bin: Wrap calls to edje_object_part_object_get with edje_freeze/thaw 2018-06-25 11:28:57 -04:00
test_actionslider.c
test_anim.c interfaces: move animator,tick to efl.canvas.object and remove efl.animator 2019-02-21 22:04:30 +01:00
test_bg.c efl/image: Efl.Gfx.Image_Scale_Type -> Efl.Gfx.Image_Scale_Method 2019-09-16 11:06:02 +02:00
test_box.c ui.box_stack: refactor layout_update 2019-03-20 10:37:42 -04:00
test_bubble.c
test_button.c
test_calendar.c Efl.Ui.Format revamp 2019-07-04 19:38:20 +02:00
test_check.c test: Add a logic to check a size of Check 2019-09-23 10:44:33 +02:00
test_clock.c Test/Clock: fit Exactness requirements 2016-03-27 13:26:15 +03:00
test_cnp.c
test_code.c test_code: do not create a background by hand 2019-09-30 10:46:32 +02:00
test_colorclass.c
test_colorselector.c
test_combobox.c Evil: remove pwd code in Evil and fix compilation failures after the removal 2019-07-28 09:27:27 +01:00
test_config.c elm test config - ensure buffer does't get overfilled with lots of profs 2018-11-09 11:43:59 +00:00
test_conform.c
test_conform_indicator.c
test_ctxpopup.c elementary: remove unnecessessary disabled setter 2019-02-27 20:19:22 +01:00
test_cursor.c
test_datetime.c build: use legacy api in places where legacy should be used 2019-09-18 18:04:45 +02:00
test_dayselector.c
test_disable.c
test_diskselector.c
test_dnd.c replace strndup with eina_strndup, remove strndup definition in evil and elm_test_dnd 2019-05-03 13:13:57 +01:00
test_efl_anim_alpha.c efl/player: merge start+stop methods into 'playing' property 2019-09-24 15:23:13 -07:00
test_efl_anim_group_parallel.c efl/player: merge start+stop methods into 'playing' property 2019-09-24 15:23:13 -07:00
test_efl_anim_group_sequential.c efl/player: merge start+stop methods into 'playing' property 2019-09-24 15:23:13 -07:00
test_efl_anim_interpolator.c efl/player: merge start+stop methods into 'playing' property 2019-09-24 15:23:13 -07:00
test_efl_anim_pause.c efl/player: rename 'play' property to 'pause' 2019-09-24 15:23:15 -07:00
test_efl_anim_repeat.c efl/player: rename 'play' property to 'pause' 2019-09-24 15:23:15 -07:00
test_efl_anim_rotate.c efl/player: merge start+stop methods into 'playing' property 2019-09-24 15:23:13 -07:00
test_efl_anim_scale.c efl/player: merge start+stop methods into 'playing' property 2019-09-24 15:23:13 -07:00
test_efl_anim_start_delay.c efl/player: merge start+stop methods into 'playing' property 2019-09-24 15:23:13 -07:00
test_efl_anim_translate.c efl/player: merge start+stop methods into 'playing' property 2019-09-24 15:23:13 -07:00
test_efl_gfx_mapping.c efl/image: Efl.Gfx.Image_Scale_Type -> Efl.Gfx.Image_Scale_Method 2019-09-16 11:06:02 +02:00
test_efl_gfx_vg_value_provider.c elementary_test: Add the value provider test for animation_view 2019-10-02 14:38:45 +09:00
test_efl_ui_animation_view.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_efl_ui_text.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_eio.c
test_entry.c elm_popup*: remove all legacy usage from eo files 2019-03-07 14:16:07 -08:00
test_entry_anchor.c
test_entry_anchor2.c
test_evas_map.c efl/image: Efl.Gfx.Image_Scale_Type -> Efl.Gfx.Image_Scale_Method 2019-09-16 11:06:02 +02:00
test_evas_mask.c efl_input_clickable: rename efl_ui_clickable to efl_input_clickable 2019-07-29 11:43:01 +02:00
test_evas_snapshot.c efl_gfx_arrangement: change content_padding param type and remove scalable 2019-10-02 12:11:15 +02:00
test_event_animation.c efl_animation: Add scale animation 2017-10-12 21:03:49 +09:00
test_events.c efl_input_key: replace key property name with key_sym 2019-08-05 08:51:22 -04:00
test_explode.c Fix "cast from pointer to integer of different size" on Windows 2016-04-25 13:49:43 +09:00
test_explode.h
test_external.c intf: rename progress to range 2017-06-15 13:57:45 +09:00
test_factory.c
test_fileselector.c Evil: remove pwd code in Evil and fix compilation failures after the removal 2019-07-28 09:27:27 +01:00
test_fileselector_button.c Evil: remove pwd code in Evil and fix compilation failures after the removal 2019-07-28 09:27:27 +01:00
test_fileselector_entry.c Evil: remove pwd code in Evil and fix compilation failures after the removal 2019-07-28 09:27:27 +01:00
test_flip.c ElmTests: modify flip test to fit Exactness limitations. 2016-11-06 10:38:41 +02:00
test_flip_page.c elm_test: Add EO version of "Flip Page" test 2017-05-12 11:59:16 +09:00
test_flip_page_eo.c Rename Efl.Gfx.Map -> Efl.Gfx.Mapping 2019-02-21 19:20:09 +01:00
test_flipselector.c efl_ui_range_display: range_min_max -> range_limits 2019-06-19 10:03:21 +02:00
test_floating.c
test_focus.c elm_focus: implement elm_object_focus_next_item_set / get 2018-12-17 09:12:22 +01:00
test_focus_custom_chain.c
test_focus_policy.c
test_focus_style.c win: Merge focus_highlight_style with widget (EO) 2017-09-01 10:09:37 +09:00
test_gengrid.c test_gengrid: add focused, unfocused callback to test focus signal 2018-09-13 09:53:58 +02:00
test_genlist.c fix various trivial null derefs 2019-10-18 13:30:10 -04:00
test_gesture_framework.c Gesture Manager: Add gestures and fix gesture managing, recognizer logic. 2019-05-14 16:37:20 +09:00
test_gesture_layer.c elementary: apply anti-aliasing at the gesture layer example. 2018-04-10 11:25:25 +09:00
test_gesture_layer2.c test_gesture_layer2: add null checking after memory allocation 2017-08-09 16:07:15 +09:00
test_gesture_layer3.c test_gesture_layer3: add null checking after memory allocation 2017-08-09 16:07:51 +09:00
test_gfx_filters.c efl_gfx_arrangement: change content_padding param type and remove scalable 2019-10-02 12:11:15 +02:00
test_glview.c elm_test: move gl api creation to glview init function 2019-03-20 12:36:52 -07:00
test_glview_manygears.c elm_test: set accel for all glview tests 2019-03-20 12:36:55 -07:00
test_glview_simple.c elm_test: set accel for all glview tests 2019-03-20 12:36:55 -07:00
test_grid.c
test_hover.c
test_hoversel.c
test_icon.c FDO icons: add the inode-directory icon 2018-04-02 14:44:44 +02:00
test_icon_animated.c
test_icon_desktops.c
test_image.c efl/image: Efl.Gfx.Image_Scale_Type -> Efl.Gfx.Image_Scale_Method 2019-09-16 11:06:02 +02:00
test_index.c elm_test: Fix some test cases to use legacy 2017-08-10 14:42:08 +09:00
test_inwin.c elementary_test: add a new inwin test 2017-05-26 21:34:24 +02:00
test_label.c evas_object_textblock: add support for variation sequences 2019-10-19 14:01:36 +09:00
test_launcher.c
test_layout.c
test_list.c
test_main_menu.c elm_test: Set label as word wrap 2017-07-18 18:42:16 +09:00
test_map.c elm_map: keep overlays list when showing overlays 2017-09-19 16:37:00 +09:00
test_menu.c elementary: Balance menu operations with an open method 2017-06-17 18:00:34 +01:00
test_multi.c
test_multibuttonentry.c efl_ui_multibuttonentry: maintainance legacy function type. 2018-03-06 19:05:57 -08:00
test_naviframe.c naviframe: Add "item,activated" smart callback. 2016-10-07 17:07:48 +09:00
test_naviframe_complex.c
test_notify.c
test_panel.c Evil: remove pwd code in Evil and fix compilation failures after the removal 2019-07-28 09:27:27 +01:00
test_panes.c elm test - add tests ofr other styles for panes provided by default 2019-04-15 13:34:20 +01:00
test_part_bg.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_part_shadow.c efl_input_clickable: rename efl_ui_clickable to efl_input_clickable 2019-07-29 11:43:01 +02:00
test_photo.c
test_photocam.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_popup.c test_ui_popup: Move code for Efl.Ui.Popup classes from test_popup 2017-11-28 17:15:42 +09:00
test_prefs.c
test_progressbar.c elm test - progress - add vertical wheel test... 2018-05-11 17:27:33 +09:00
test_radio.c efl_ui_radio: refactor for usage of efl_ui_check_selected 2019-06-20 16:02:01 +02:00
test_scaling.c
test_scroller.c elm_test: add comparable "simple" scroller tests 2019-07-17 10:17:50 -07:00
test_segment_control.c
test_separator.c separator: Remove orientation API use (EO) 2017-08-10 14:42:08 +09:00
test_slider.c elm_slider: remove dependency with efl_ui_slider 2019-08-20 09:09:14 -04:00
test_slideshow.c
test_spinner.c
test_store.c
test_sys_notify.c
test_systray.c elm_systray: remove all legacy usage from eo files 2019-03-07 14:16:28 -08:00
test_table.c
test_thumb.c
test_toolbar.c elm: Update toolbar test to show fix 2016-09-25 17:21:40 +01:00
test_tooltip.c els_tooltip: Fix to use some functions before tooltip_test_set or tooltip_content_cb_set 2017-09-19 17:05:15 +09:00
test_transit.c
test_transit_bezier.c
test_ui_box.c efl_gfx_arrangement: change content_padding param type and remove scalable 2019-10-02 12:11:15 +02:00
test_ui_box_stack.c build: fix elm header usage 2019-09-18 18:04:55 +02:00
test_ui_button.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_ui_clock.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_ui_collection.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_ui_collection_view.c efl_ui_*selectable: unify these APIs with the same c_prefix 2019-09-26 18:32:58 +09:00
test_ui_datepicker.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_ui_frame.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_ui_image.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_ui_items.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_ui_pager.c efl_gfx_arrangement: change content_padding param type and remove scalable 2019-10-02 12:11:15 +02:00
test_ui_pager_scroll.c efl_gfx_arrangement: change content_padding param type and remove scalable 2019-10-02 12:11:15 +02:00
test_ui_panel.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_ui_panes.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_ui_popup.c efl_ui/popup: timeout -> closing_timeout 2019-08-30 19:15:10 +02:00
test_ui_progressbar.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_ui_radio.c elm_test/radio: use eo type here 2019-09-30 10:33:28 +02:00
test_ui_relative_layout.c efl_gfx_arrangement: change content_padding param type and remove scalable 2019-10-02 12:11:15 +02:00
test_ui_scroller.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_ui_slider.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_ui_slider_interval.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_ui_spin.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_ui_spin_button.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_ui_spotlight.c efl_gfx_arrangement: change content_padding param type and remove scalable 2019-10-02 12:11:15 +02:00
test_ui_stack.c efl_input_clickable: rename efl_ui_clickable to efl_input_clickable 2019-07-29 11:43:01 +02:00
test_ui_tab_pager.c efl_gfx_arrangement: change content_padding param type and remove scalable 2019-10-02 12:11:15 +02:00
test_ui_table.c efl_gfx_arrangement: change content_padding param type and remove scalable 2019-10-02 12:11:15 +02:00
test_ui_table_static.c efl_pack_table: rename table_position to cell_column, cell_row 2019-08-27 12:57:35 +02:00
test_ui_tags.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_ui_textpath.c efl_ui_check: migrate from own property to Efl.Ui.Selectable 2019-08-06 17:09:42 +02:00
test_ui_timepicker.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_video.c elm video: correct api 2016-08-16 12:36:26 +09:00
test_weather.c
test_web.c
test_win_dialog.c efl_ui: remove efl_ui_text headers from Efl_Ui.h for now 2019-09-30 10:33:34 +02:00
test_win_indicator.c efl_ui_win: default the window type to basic 2019-09-24 16:00:44 +02:00
test_win_inline.c Rename Efl.Ui.Direction -> Efl.Ui.Layout_Orientation 2019-05-24 12:30:32 -04:00
test_win_keygrab.c
test_win_modal.c elm_test/modal_win: handle case where test is not passed the main window 2019-07-29 09:17:20 -04:00
test_win_plug.c elm_test/plug: fix error handling 2019-07-25 14:46:58 -04:00
test_win_socket.c
test_win_stack.c elm: explicitly include Efl_Ui.h in binaries 2019-03-07 14:16:57 -08:00
test_win_state.c efl.ui.win: remove all legacy types and functions from eo file 2019-03-04 13:37:24 -05:00
test_win_wm_rotation.c