Page MenuHomePhabricator

id213sin (Youngbok Shin)
Text, Font, Edje, Elementary

Projects

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Thursday

  • Clear sailing ahead.

User Details

User Since
Apr 15 2013, 2:09 AM (287 w, 1 d)
Availability
Available

Recent Activity

Wed, Oct 3

id213sin requested review of D7140: elementary entry: apply scale to all edje objects.
Wed, Oct 3, 11:17 PM · efl
id213sin updated the diff for D7137: eina debug: fix a double unlock issue.

remove an unwanted change from this patch

Wed, Oct 3, 11:14 PM · efl
id213sin updated the diff for D7137: eina debug: fix a double unlock issue.

elementary entry: apply scale to entry_edje when an entry is scrollable

Wed, Oct 3, 11:12 PM · efl
id213sin requested review of D7137: eina debug: fix a double unlock issue.
Wed, Oct 3, 9:27 PM · efl

Fri, Sep 28

id213sin accepted D6961: edje: call recalc in part_text_get if there is no available text data.

It fixed many issues caused by recent changes in Edje.
I'll accept this patch. Thank you.

Fri, Sep 28, 12:04 AM · efl

Thu, Sep 27

id213sin updated the diff for D7033: elementary textpath: support legacy APIs.

add since tag

Thu, Sep 27, 9:05 PM · efl
id213sin added reviewers for D7119: evas filter: remove critical messages from Evas Filter: Hermet, raster, woohyun.
Thu, Sep 27, 8:48 PM · efl
id213sin updated the diff for D7119: evas filter: remove critical messages from Evas Filter.

Remove error/critical messages with/without GL

Thu, Sep 27, 8:47 PM · efl
id213sin added a comment to D7119: evas filter: remove critical messages from Evas Filter.

@cedric
I found you pushed patch to use efl_unref() for removing error messages from efl_del when there is no parent.
But, if you enable GL engine support, fb->buffer will have a parent. So, efl_unref() will print the critical error messages.

Thu, Sep 27, 8:46 PM · efl
id213sin added a reviewer for D7119: evas filter: remove critical messages from Evas Filter: cedric.
Thu, Sep 27, 8:39 PM · efl
id213sin added a comment to D7119: evas filter: remove critical messages from Evas Filter.

Hmm... efl_unref also prints another error messages. I think it is not the perfect solution for the issue.

Thu, Sep 27, 8:23 PM · efl
id213sin requested review of D7119: evas filter: remove critical messages from Evas Filter.
Thu, Sep 27, 8:17 PM · efl
id213sin added a comment to D7085: eolian: Set widget and widget item in the same group in doxygen.

It needs more legacy alias names. I found the following alias has to be included.

Thu, Sep 27, 2:00 AM · efl

Fri, Sep 21

id213sin requested review of D7095: elementary_test: use snprintf to prevent memory overflow in test_efl_ui_text.
Fri, Sep 21, 3:26 AM · efl
id213sin closed D7086: elementary: remove meaningless memory allocation and leaking.
Fri, Sep 21, 12:31 AM · efl
id213sin requested review of D7086: elementary: remove meaningless memory allocation and leaking.
Fri, Sep 21, 12:23 AM · efl
id213sin requested review of D7084: evas cache: add more null check for cache.
Fri, Sep 21, 12:15 AM · efl
id213sin requested review of D7083: elementary: fix memory leak from Efl.Ui.Layout.Object.
Fri, Sep 21, 12:02 AM · efl

Thu, Sep 20

id213sin updated the diff for D7033: elementary textpath: support legacy APIs.

fix build failure

Thu, Sep 20, 10:47 PM · efl

Mon, Sep 17

id213sin updated the diff for D7033: elementary textpath: support legacy APIs.

update brief documents for Elm_Textpath.

Mon, Sep 17, 4:43 AM · efl
id213sin added a comment to D7033: elementary textpath: support legacy APIs.

Uh oh.... I didn't modified copied documents. LOL.
Please, review only its purpose. I'll update documents if the patch is acceptable.
If it is not acceptable, I'll abandon this and maintain this in Tizen platform only.

Mon, Sep 17, 12:37 AM · efl
id213sin requested review of D7033: elementary textpath: support legacy APIs.
Mon, Sep 17, 12:33 AM · efl

Sep 13 2018

id213sin added a reviewer for D7031: edje: add json file support feature: smohanty.
Sep 13 2018, 11:15 PM · efl
id213sin requested review of D7031: edje: add json file support feature.
Sep 13 2018, 10:41 PM · efl

Sep 10 2018

id213sin added a comment to D6644: eina: add locale-independent eina_convert_strtod_c function.

ping~

Sep 10 2018, 6:28 PM · efl

Sep 9 2018

id213sin added a comment to D6961: edje: call recalc in part_text_get if there is no available text data.

@YOhoho
Thank you for patch. There are few things to check.

  1. Please , put bracket on both conditions of if in edje_util.c. Normally, EFL puts brackets both side if we needed it.
  2. Please, test your new test case with new condition for edje_recalc_do(): avoiding calling edje_recalc_do() when Edje is not dirty.
Sep 9 2018, 9:28 PM · efl

Aug 21 2018

id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

Init and free locale in eina_init, eina_shutdown

Aug 21 2018, 6:53 PM · efl
id213sin added a comment to D6644: eina: add locale-independent eina_convert_strtod_c function.

@vtorri
Thank you for good opinion. I'll update it.

Aug 21 2018, 6:28 PM · efl

Aug 13 2018

id213sin added a comment to D6644: eina: add locale-independent eina_convert_strtod_c function.

So, is this OK?
If I need to check it more, please let me know.

Aug 13 2018, 6:53 PM · efl

Jul 30 2018

id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

update the document

Jul 30 2018, 3:37 AM · efl
id213sin added a comment to D6644: eina: add locale-independent eina_convert_strtod_c function.

@vtorri
I don't agree renaming internal functions to new/del. Actually, _get function just return static locale variable. new/free or new/del makes confuse people.

Jul 30 2018, 2:31 AM · efl
id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

update the following things.

Jul 30 2018, 2:00 AM · efl

Jul 29 2018

id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

fix build failure from Windows OS

Jul 29 2018, 9:06 PM · efl

Jul 26 2018

id213sin added a comment to D6644: eina: add locale-independent eina_convert_strtod_c function.

@vtorri
Thank you. I missed your comment in the previous update.

Jul 26 2018, 5:43 AM · efl
id213sin updated the test plan for D6644: eina: add locale-independent eina_convert_strtod_c function.
Jul 26 2018, 5:43 AM · efl
id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

fix build error Windows OS.

Jul 26 2018, 5:42 AM · efl
id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

add a simple test case

Jul 26 2018, 5:33 AM · efl
id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

fix build error in Windows OS.

Jul 26 2018, 3:53 AM · efl

Jul 25 2018

id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

fix a tiny code indentation

Jul 25 2018, 9:07 PM · efl
id213sin updated the summary of D6644: eina: add locale-independent eina_convert_strtod_c function.
Jul 25 2018, 9:05 PM · efl
id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

remove changes of Evas Textblock

Jul 25 2018, 9:00 PM · efl
id213sin added a comment to D6644: eina: add locale-independent eina_convert_strtod_c function.

@zmike
Ok. Then, I'll split changes of Evas Textblock into an another patch after applying this.
Also, I'll update commit message with @feature tag.

Jul 25 2018, 8:09 PM · efl

Jul 24 2018

id213sin updated the summary of D6644: eina: add locale-independent eina_convert_strtod_c function.
Jul 24 2018, 10:20 PM · efl
id213sin updated the diff for D6644: eina: add locale-independent eina_convert_strtod_c function.

add eina_convert_strtod_c API and apply it to evas_object_textblock

Jul 24 2018, 10:19 PM · efl

Jul 23 2018

id213sin added a comment to D6644: eina: add locale-independent eina_convert_strtod_c function.

Thank you for review!

Jul 23 2018, 6:44 PM · efl

Jul 20 2018

id213sin added a reviewer for D6644: eina: add locale-independent eina_convert_strtod_c function: subodh6129.
Jul 20 2018, 4:14 AM · efl
id213sin updated the summary of D6644: eina: add locale-independent eina_convert_strtod_c function.
Jul 20 2018, 4:14 AM · efl

Jul 11 2018

id213sin added a comment to D6529: evas textblock: adds missing legacy types.

And please check a similar legacy type support from the Efl.Ui.Button.

Jul 11 2018, 9:03 PM · efl
id213sin added a comment to D6529: evas textblock: adds missing legacy types.

Thank you for review!
It was generated by Eolian of efl 1.16.0. (Tizen 4.0)
I attached a generated .eo.legacy.h file of the Textblock.

Jul 11 2018, 8:56 PM · efl
id213sin updated the summary of D6529: evas textblock: adds missing legacy types.
Jul 11 2018, 8:51 PM · efl

Jul 8 2018

Herald added a reviewer for D6529: evas textblock: adds missing legacy types: devilhorns.
Jul 8 2018, 5:51 PM · efl

Jun 22 2018

id213sin added a comment to D6364: edje: fix text set/get issue without edje calculation.

@herdsman
Thank you for quick review! :)
I feel EFL became really hard to maintain recently.
After applying new interfaces into legacy code and legacy API.
It is not your fault but the strategy for new interface implementation.
Anyway, thank you for review!

Jun 22 2018, 2:40 AM · efl
id213sin added a comment to D6364: edje: fix text set/get issue without edje calculation.

We are struggling to fix the issues caused by recent upstream patches..
Please, add test cases when you guys try to change existing behaviors even if you are a committer.

Jun 22 2018, 2:03 AM · efl
Herald added a reviewer for D6364: edje: fix text set/get issue without edje calculation: devilhorns.
Jun 22 2018, 1:58 AM · efl

Jun 15 2018

id213sin abandoned D6291: Allow to apply paint info to Polystar.

I passed the patch file to @smohanty to push it directly.
So, I abandon this.

Jun 15 2018, 3:02 AM

Jun 11 2018

id213sin added a comment to D6257: edje: fix an issue "description.text.text" is not shown.

@herdsman
Thank you for quick review!

Jun 11 2018, 10:03 PM · efl
id213sin added a revision to T6997: Broken textblock.: D6257: edje: fix an issue "description.text.text" is not shown.
Jun 11 2018, 5:56 AM · efl: widgets, regression

Jun 4 2018

id213sin updated the diff for D5490: evas textblock: add/apply cursor cluster APIs based on grapheme cluster.

Remove an irrelevant change from test_entry.c

Jun 4 2018, 9:15 PM · efl
id213sin added a comment to D5490: evas textblock: add/apply cursor cluster APIs based on grapheme cluster.

@herdsman
Thank you for comment.

Jun 4 2018, 1:41 AM · efl
id213sin updated the diff for D5490: evas textblock: add/apply cursor cluster APIs based on grapheme cluster.

Update the following things...

  1. Add/Apply a helper function for creating "grapheme_breaks".
  2. Add/Apply a helper function for reducing code duplication of prev/next function.
Jun 4 2018, 1:32 AM · efl

Jun 3 2018

id213sin abandoned D6217: elementary textpath: reverse autofit behavior according to its meaning.

Then, I can abandon this patch! :)

Jun 3 2018, 10:49 PM · efl

May 25 2018

id213sin added a comment to D6195: elementary textpath: improves text rendering quality of curved text.

I also added a debugging code in this patch which is disabled for default.
I think I has to maintain this widget instead of @thiepha.
So, please, just submitted debugging code with the patch. For my debugging convenience.

May 25 2018, 5:08 AM · efl
id213sin updated the diff for D6195: elementary textpath: improves text rendering quality of curved text.

Remove a wrong comment

May 25 2018, 4:13 AM · efl
id213sin updated the diff for D6195: elementary textpath: improves text rendering quality of curved text.

Removed: uniniialized value is used in loop condition statement.

May 25 2018, 3:41 AM · efl
id213sin added a comment to D6195: elementary textpath: improves text rendering quality of curved text.
  • Before

May 25 2018, 3:27 AM · efl
id213sin added a comment to D6195: elementary textpath: improves text rendering quality of curved text.
  • Before:

May 25 2018, 3:17 AM · efl

May 17 2018

id213sin updated the diff for D5490: evas textblock: add/apply cursor cluster APIs based on grapheme cluster.

Rebase!

May 17 2018, 4:06 AM · efl
id213sin updated the diff for D6149: edje: don't give a wrong Edje data when an Edje object has group parts.

Remove inline comments.

May 17 2018, 3:31 AM · efl

May 14 2018

id213sin triaged T6931: elm_layout_text_set() should return EINA_FALSE when it fails to set a text as High priority.
May 14 2018, 12:33 AM · regression, efl (efl-1.22)

May 10 2018

id213sin added a comment to D6149: edje: don't give a wrong Edje data when an Edje object has group parts.

@herdsman
Thank you for comment.
As I know, you used _edje_part_fetch() function at that point to check the given part is TEXT or TEXTBLOCK part.
In legacy, edje_object_part_text_get() used to checked the given part type.
But, after applying efl_part() concept, efl_canvas_layout_part_* checked part type before doing something.
So, only for legacy API, the type has to be checked manually like now.

May 10 2018, 6:47 AM · efl

Apr 27 2018

id213sin added a comment to D6001: evas textblock: prevent invalid read from a free'd cursor.

@herdsman
Good point! :)
As you said calling _evas_textblock_changed() in render_pre() with delete_me=2 states caused the problem.
But, with current paragraph direction API architecture (INHERIT feature without additional API), there was no way to avoid to calling _evas_textblock_changed() function.
The textblock/text object needed to catch changes of its smart parent's paragraph_direction when its render_pre() was called.
So, I think I can put a additional condition before calling _evas_textblock_changed().

Apr 27 2018, 3:00 AM · efl
id213sin added a comment to D6001: evas textblock: prevent invalid read from a free'd cursor.

@herdsman
I found it is reproducible in upstream. But, not for Textblock obj.

Entry 'unfocused' callback called
Entry 'focused' callback called
Entry 'unfocused' callback called
ERR<7098>:evas_main lib/evas/canvas/evas_object_image.c:1320 _efl_canvas_image_internal_efl_object_destructor() SYB:: IMAGE destructor START!! ... obj[0x4000009f9201] delete_me[0]
ERR<7098>:evas_main lib/evas/canvas/evas_object_image.c:1327 _efl_canvas_image_internal_efl_object_destructor() SYB:: IMAGE destructor DONE!! ... obj[0x4000009f9201] delete_me[1]
ERR<7098>:evas_main lib/evas/canvas/evas_object_image.c:1320 _efl_canvas_image_internal_efl_object_destructor() SYB:: IMAGE destructor START!! ... obj[0x4000009f9a03] delete_me[0]
ERR<7098>:evas_main lib/evas/canvas/evas_object_image.c:1327 _efl_canvas_image_internal_efl_object_destructor() SYB:: IMAGE destructor DONE!! ... obj[0x4000009f9a03] delete_me[1]
ERR<7098>:evas_main lib/evas/canvas/evas_render.c:928 _evas_render_phase1_object_changed_normal() SYB:: PUSH a deleted object to STACK ?? obj[0x4000009f9201][image] delete_me[2]
ERR<7098>:evas_main lib/evas/canvas/evas_render.c:928 _evas_render_phase1_object_changed_normal() SYB:: PUSH a deleted object to STACK ?? obj[0x4000009f9a03][image] delete_me[2]
ERR<7098>:evas_main lib/evas/canvas/evas_object_image.c:2275 evas_object_image_render_pre() SYB:: WTF ... obj[0x4000009f9201] ... delete_me[2]
ERR<7098>:evas_main lib/evas/canvas/evas_object_image.c:2275 evas_object_image_render_pre() SYB:: WTF ... obj[0x4000009f9a03] ... delete_me[2]
Entry 'focused' callback called
Apr 27 2018, 12:12 AM · efl

Apr 26 2018

id213sin added a comment to D6001: evas textblock: prevent invalid read from a free'd cursor.

@herdsman
Yes, I checked it many times. The render_pre() was called after processing its destructor function.
And when I checked delete_me flag in the render_pre() function, it was 2. (obj->delete_me)

Apr 26 2018, 10:48 PM · efl

Apr 25 2018

id213sin added a comment to D6001: evas textblock: prevent invalid read from a free'd cursor.

The main question of this patch is...
An object's render or render_pre functions could be called after processing its destructor function?

Apr 25 2018, 11:25 PM · efl
id213sin added a comment to D6001: evas textblock: prevent invalid read from a free'd cursor.

@herdsman
Right now, it is reproducible when only elc_popup is deleted in Tizen.
Of course, elc_popup has a lot of custom code for Tizen UX.
If I get a reproducible case in upstream, I'll write the scenario.

Apr 25 2018, 11:19 PM · efl
id213sin added a comment to D6001: evas textblock: prevent invalid read from a free'd cursor.

A render_pre function could be called after processing an object's destructor function.
Here is a log of that problem case.

Apr 25 2018, 1:27 AM · efl

Apr 23 2018

id213sin added a comment to D5980: elemenatry layout: don't allow negative position.

@cedric
Sorry, but I think [(int) pos < 0] and [pos > INT_MAX] are same in this case.

Apr 23 2018, 11:40 PM · efl
id213sin updated the diff for D5980: elemenatry layout: don't allow negative position.

I moved the fix from Elementary to Edje.
It also remove negative position feature from Edje's legacy API.

Apr 23 2018, 10:07 PM · efl

Apr 19 2018

id213sin added a comment to D5972: edje: fix backward compatibility issue caused by legacy cursor funcs.

@herdsman
Actually, the issues caused by cursor next/prev/up/down are pretty bad for us.
I need to hurry to apply this to Tizen. So, I'll cherry-pick it to our code.
Please, let me know if you have additional requirements.

Apr 19 2018, 10:52 PM
id213sin updated the diff for D5972: edje: fix backward compatibility issue caused by legacy cursor funcs.

make it pretty

Apr 19 2018, 10:45 PM
id213sin updated the diff for D5972: edje: fix backward compatibility issue caused by legacy cursor funcs.

fix usage of Efl_Part

Apr 19 2018, 10:41 PM
id213sin added a comment to D5972: edje: fix backward compatibility issue caused by legacy cursor funcs.

@herdsman
Thank you for comment!

Apr 19 2018, 10:32 PM
id213sin added a comment to T6885: A backward compatibility for color_class's default color is broken..

In Tizen, we reverted it for resolving backward compatibility problems.

Apr 19 2018, 8:31 PM
id213sin updated subscribers of T6885: A backward compatibility for color_class's default color is broken..
Apr 19 2018, 5:57 PM
id213sin created T6885: A backward compatibility for color_class's default color is broken..
Apr 19 2018, 2:21 AM

Apr 11 2018

id213sin updated the diff for D5841: evas font: add/apply font glyph lru list.

Update the following things.

  1. Remove configure option for glyph-lru feature.
  2. Remove additional lru list only for colored glyphs.
  3. Change Eina_Inlist to Eina_List as glyph lru list.
Apr 11 2018, 12:56 AM · efl
id213sin added a comment to D5841: evas font: add/apply font glyph lru list.

Thank you for comment! I was out of office for a while.
I'll update it soon.

Apr 11 2018, 12:05 AM · efl

Mar 28 2018

id213sin added a comment to D5841: evas font: add/apply font glyph lru list.

We definitely don't want to "enable/disable" this. It's an optimization. Don't use the #ifdef here.
I would remove the EINA_INLIST in the glyph struct and use an eina_list for the caching, intead of an eina_inlist. That will save up some space.

It's an another trade-off. I wanted to set a limit for memory consumption by glyph with minimum performance drop.
Font's lru list is just Eina_List. It is acceptable because generally Evas don't load fonts above 100 or 1000 font files.
But, Evas can load thousands glyphs from different fonts. (CJK langauges, Emojis and reshaped glyphs by harfbuzz)
So, I thought searching a plain list to remove an glyph in worst scenario looks bad. And I decided to do not use Eina_List for this feature.

Did you benchmark this? The benefit of the inlist is when you iterate on the list a lot on the same stored data. Here you only push/pop the glyph entries in the list.
"Thousands of glyphs" is my reasoning here, too. It's extra list data (pointers) for every glyph, whether it's in a list or not.

No, I didn't benchmark about Eina_List.
But, the patch do push(In unref)/pop(In trim) and remove a random glyph from the list (In ref) which is requested to reload before trimmed.
It needs a lot of random accesses of glyph items from the list. More than pop(trim). That's why I implemented it as Eina_Inlist.

Mar 28 2018, 6:46 PM · efl

Mar 27 2018

id213sin added a comment to D5841: evas font: add/apply font glyph lru list.

@herdsman

We definitely don't want to "enable/disable" this. It's an optimization. Don't use the #ifdef here.
I would remove the EINA_INLIST in the glyph struct and use an eina_list for the caching, intead of an eina_inlist. That will save up some space.

It's an another trade-off. I wanted to set a limit for memory consumption by glyph with minimum performance drop.
Font's lru list is just Eina_List. It is acceptable because generally Evas don't load fonts above 100 or 1000 font files.
But, Evas can load thousands glyphs from different fonts. (CJK langauges, Emojis and reshaped glyphs by harfbuzz)
So, I thought searching a plain list to remove an glyph in worst scenario looks bad. And I decided to do not use Eina_List for this feature.

Mar 27 2018, 2:59 AM · efl

Mar 23 2018

id213sin updated the diff for D5841: evas font: add/apply font glyph lru list.

fix wrong and complex condition from the head of "evas_common_font_int_cache_glyph_get" function.

Mar 23 2018, 10:27 PM · efl

Mar 21 2018

id213sin added a comment to D5692: evas textblock: manage default style properly for new interfaces.

@cedric
Thank you for reporting the issue.
I fixed the test code of this patch according to recent changes.

Mar 21 2018, 3:25 AM · efl
id213sin updated the diff for D5692: evas textblock: manage default style properly for new interfaces.

Updated the following things.

Mar 21 2018, 3:23 AM · efl
id213sin updated the diff for D5841: evas font: add/apply font glyph lru list.

Update the following items.

Mar 21 2018, 1:24 AM · efl
id213sin added a comment to D5490: evas textblock: add/apply cursor cluster APIs based on grapheme cluster.

@herdsman
I applied the latest unibreak library and its grapheme cluster feature for the patch.
Please, give your opinion! :)

Mar 21 2018, 12:16 AM · efl

Mar 20 2018

id213sin added a comment to D5842: elm_gesture_layer: Add new config value to handle tap finger size..

@cedric
Changing existing "finger_size" will affect to whole UX - GUI not only the sensitivity of elm_gesture.
Because, it restricts minimum size of all widgets.

Mar 20 2018, 8:37 PM

Mar 19 2018

id213sin added a comment to D5841: evas font: add/apply font glyph lru list.

@cedric, @herdsman
If you need the font which I tested, please let me know!

Mar 19 2018, 12:07 AM · efl
id213sin added a comment to D5841: evas font: add/apply font glyph lru list.

@cedric
Thank you for comment!
It would be better to separate the lru list into two lru lists (bucket) for colored emoji and normal glyphs.
Actually, it was created to release emoji glyph's memory. So, I can change it as your comment.

Mar 19 2018, 12:06 AM · efl

Mar 16 2018

id213sin added a reviewer for D5841: evas font: add/apply font glyph lru list: woohyun.
Mar 16 2018, 2:02 AM · efl

Mar 6 2018

id213sin closed D5823: elementary bg: keep file path and key string for legacy bg widget.
Mar 6 2018, 7:06 PM
id213sin closed D5833: evas render: increase offset by 4 to do work for next map points.
Mar 6 2018, 7:06 PM