On Tue, Sep 9, 2008 at 6:24 PM, Gustavo Sverzut Barbieri
<[EMAIL PROTECTED]> wrote:
> On Tue, Sep 9, 2008 at 6:19 PM, thomasg <[EMAIL PROTECTED]> wrote:
>> Hi list,
>>
>> I just wrote some program parts in edje which contain scripts and react to
>> mouse events.
>> Then I experienced some problems when using this combination with mouse
>> events that are _not_ mouse,down,*.
>> Every time a program is executed that contains a script and reacts on
>> mouse,in; mouse,out and mouse,up,* the whole edje gui hangs (the programm
>> itself is still running fine).
>>
>> What works:
>>                        program {
>>                                name: "test";
>>                                signal: "mouse,down,*";
>>                                source: "test_part";
>>                                script { }
>>                        }
>> What doesn't:
>>                        program {
>>                                name: "test";
>>                                signal: "mouse,up,*";
>>                                source: "test_part";
>>                                script { }
>>                        }
>> The script {} part can contain functions or not, doesn't matter.
>> Can anyone confirm this?
>
> We just figured out that drag based events also hang it. I suspect
> it's due my last patch to Edje to postpone recalc, so I'm looking at
> this. Thanks for your test case, it will help as well.

Thomas,

Attached are the files with a test case similar to what you said. It
is fine here, no bugs. Could you modify those so they produce your
bug?

-- 
Gustavo Sverzut Barbieri
http://profusion.mobi embedded systems
--------------------------------------
MSN: [EMAIL PROTECTED]
Skype: gsbarbieri
Mobile: +55 (19) 9225-2202
#include <Evas.h>
#include <Ecore.h>
#include <Ecore_Evas.h>
#include <Edje.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>

static const int W = 320;
static const int H = 240;


void
dbg(void *d, Evas_Object *o, const char *emission, const char *source)
{
    printf("dbg: [%s] [%s]\n", emission, source);
}

int
main(int argc, char *argv[])
{
    Ecore_Evas *ee;
    Evas *e;
    Evas_Object *o;

    evas_init();
    ecore_init();
    ecore_evas_init();
    edje_init();

    ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, W, H);

    e = ecore_evas_get(ee);

    o = evas_object_rectangle_add(e);
    evas_object_resize(o, W, H);
    evas_object_color_set(o, 255, 255, 255, 255);
    evas_object_show(o);

    o = edje_object_add(e);
    edje_object_file_set(o, "t-edje.edj", "main");
    evas_object_resize(o, W, H);
    evas_object_show(o);

    edje_object_signal_callback_add(o, "*", "*", dbg, NULL);

    ecore_evas_show(ee);
    ecore_main_loop_begin();

    edje_shutdown();
    ecore_evas_shutdown();
    ecore_shutdown();
    evas_shutdown();

    return 0;
}
collections {
   group {
      name: "main";

      parts {
         part {
            name: "p";
            type: RECT;
            description {
               state: "default" 0.0;
               color: 255 0 0 255;
               rel1 {
                  relative: 0.0 0.0;
                  offset: 10 10;
               }
               rel2 {
                  relative: 1.0 1.0;
                  offset: -11 -11;
               }
            }
         }

         programs {
            program {
               name: "test";
               signal: "mouse,up,*";
               source: "p";
               script {
               }
            }
         }

      }
   }
}
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to