Hey guys,

I've just updated the EFL (rev 48495) and the map rotation is behaving strangely.

Attached is a simple test case to trigger that behavior. There is a text part which I rotate to become vertical, but it is not shown unless I resize the window (changes like moving or coloring don't trigger the update, only resizing). When running it with edje_player you will see some garbage that, after resizing, becomes the string "Testing".

Does someone have a clue about that?

Thanks.
--
Rafael Fonseca
ProFUSION embedded systems
http://www.profusion.mobi
collections {
    group {
        name: "test";
        min: 300 300;

        parts {
            part {
                name: "backgnd";
                type: RECT;
                mouse_events: 0;
                description {
                    state: "default" 0.0;
                    color: 255 0 0 255;
                }
                description {
                    state: "2" 0.0;
                    color: 0 255 0 255;
                }
            }
            part {
                name: "test.text";
                type: TEXT;
                mouse_events: 0;
                effect: FAR_SOFT_SHADOW;
                description {
                    state: "default" 0.0;
                    color: 255 255 255 255;
                    text {
                        text: "TESTING";
                        font: "Sans";
                        size: 22;
                        min: 1 1;
                        align: 0.5 0.5;
                    }
                    map {
                        on: 1;
                        rotation {
                            x: 0;
                            y: 0;
                            z: 270;
                        }
                    }
                }
            }
        }
        programs {
            program {
                name: "load";
                signal: "load";
                action: STATE_SET "2" 0.0;
                transition: LINEAR 1.0;
                target: "backgnd";
                after: "loop";
            }
            program {
                name: "loop";
                action: STATE_SET "default" 0.0;
                transition: LINEAR 1.0;
                target: "backgnd";
                after: "load";
            }
    }
}
#include <Evas.h>
#include <Ecore.h>
#include <Ecore_Evas.h>
#include <Edje.h>
#include <stdio.h>

static int
_main_signal_exit(void *ev, int type, void *data)
{
    ecore_main_loop_quit();
    return 0;
}

int
main(int argc, char *argv[])
{
    Ecore_Evas *ee = NULL;
    Evas *evas = NULL;
    Evas_Object *edje;

    if (!ecore_init()) {
        fprintf(stderr, "could not init ecore\n");
        return -1;
    }
    if (!ecore_evas_init()) {
        fprintf(stderr, "could not init ecore_evas\n");
        return -1;
    }
    if (!edje_init()) {
        fprintf(stderr, "could not init edje\n");
        return -1;
    }

    ee = ecore_evas_software_x11_new(NULL, 0, 0, 0, 400, 400);
    if (!ee) {
        fprintf(stderr, "ecore_evas == NULL");
        return -1;
    }

    ecore_evas_title_set(ee, "Test map rotation");
    ecore_evas_borderless_set(ee, 0);
    ecore_evas_show(ee);

    evas = ecore_evas_get(ee);
    edje = edje_object_add(evas);
    if (!edje_object_file_set(edje, "test.edj", "test")) {
        fprintf(stderr, "could not load edj file\n");
        return -1;
    }
    evas_object_move(edje, 0, 0);
    evas_object_resize(edje, 300, 300);

    ecore_evas_resize(ee, 400, 400);
    evas_object_show(edje);

    ecore_main_loop_begin();

    evas_object_del(edje);
    edje_shutdown();
    ecore_evas_shutdown();
    ecore_shutdown();
    return 0;
}
------------------------------------------------------------------------------
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to