On Sat, Jul 28, 2012 at 3:42 AM, Cedric BAIL <cedric.b...@free.fr> wrote:
> On Sat, Jul 28, 2012 at 1:17 AM, Gustavo Lima Chaves
> <gl...@profusion.mobi> wrote:
>> * Jean-Philippe André <j...@videolan.org> [2012-07-27 12:09:48 -0400]:
>>> I've been looking into the elm_spinner widget, and its most obvious issues.
>>> The main problem is that the entry is selected when clicking a button,
>>> and then the buttons becomes useless (in vertical mode).
>>>
>>> There are issues in elm_spinner.c as well as spinner.edc, which I'll
>>> try to address in proper patches later on.
>>>
>>> But some extremely weird behaviour occurs: the entry toggle callback
>>> is called when clicking on a spinner button (up/down).
>>> Here's why:
>>>
>>> - In elm_spinner.c, the mouse down callback calls val_inc_start() as 
>>> expected.
>>> - This calls [...] elm_layout_set_text() (in label_write()).
>>> - elm_layout_set_text() emits a signal (in text_signal_emit()) using
>>> edje_object_signal_emit().
>>> - Then, edje_object_message_signal_process() is invoked to update the 
>>> layout.
>>>
>>> edje_object_message_signal_process and edje_message_signal_process are
>>> reintrant, so there should be no problem.
>>> But, the wrong signal callback will be called from
>>> edje_match_callback_exec_check_finals (in edje_match.c:487, sig,source
>>> is different from esdc's sig,source).
>>>
>>> Here's where attached the 1-line patch comes in :)
>>>
>>> I don't know how to thoroughly test this fix, so please let me know if
>>> it's ok :)
>
> Sadly, that one logically break the support for multiple callback
> being fired during the same run. My current understanding of what you
> see is that somehow due to the reentrance, either the list or the
> automate is modified and the match no longer make sense. I don't think
> the issue is with the Edje_Pattern as they are refcounted. Maybe a
> small workaround would be to build a list of callback to execute
> instead of executing them directly. I have no idea if that would fix
> the issue.

Ok, I have just commited a potential fix for this issue in svn r74539.
Let me know if that does fix the problem.

Have fun,
-- 
Cedric BAIL

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to