This patch is surely a little crappy... I just tried to notify the evas widget when its window is resized. We might prefer to split the resize/reposition events.
Signed-off-by: Lionel Landwerlin <llandwer...@gmail.com> --- src/lib/ecore_directfb/Ecore_DirectFB.h | 24 +++-- src/lib/ecore_directfb/ecore_directfb.c | 159 +++++++++++++++++------------- src/lib/ecore_evas/ecore_evas_directfb.c | 68 ++++++++++--- 3 files changed, 159 insertions(+), 92 deletions(-) diff --git a/src/lib/ecore_directfb/Ecore_DirectFB.h b/src/lib/ecore_directfb/Ecore_DirectFB.h index d9b40d1..9087387 100644 --- a/src/lib/ecore_directfb/Ecore_DirectFB.h +++ b/src/lib/ecore_directfb/Ecore_DirectFB.h @@ -30,8 +30,9 @@ extern "C" { #endif -EAPI extern int ECORE_DIRECTFB_EVENT_POSITION; -EAPI extern int ECORE_DIRECTFB_EVENT_SIZE; +/* EAPI extern int ECORE_DIRECTFB_EVENT_POSITION; */ +/* EAPI extern int ECORE_DIRECTFB_EVENT_SIZE; */ +EAPI extern int ECORE_DIRECTFB_EVENT_CONFIGURE; EAPI extern int ECORE_DIRECTFB_EVENT_CLOSE; EAPI extern int ECORE_DIRECTFB_EVENT_DESTROYED; EAPI extern int ECORE_DIRECTFB_EVENT_GOT_FOCUS; @@ -45,14 +46,14 @@ EAPI extern int ECORE_DIRECTFB_EVENT_ENTER; EAPI extern int ECORE_DIRECTFB_EVENT_LEAVE; EAPI extern int ECORE_DIRECTFB_EVENT_WHEEL; - + #ifndef _ECORE_DIRECTFB_WINDOW_PREDEF typedef struct _Ecore_DirectFB_Window Ecore_DirectFB_Window; #endif typedef struct _Ecore_DirectFB_Cursor Ecore_DirectFB_Cursor; -typedef struct _Ecore_DirectFB_Event_Key_Down Ecore_DirectFB_Event_Key_Down; +typedef struct _Ecore_DirectFB_Event_Key_Down Ecore_DirectFB_Event_Key_Down; typedef struct _Ecore_DirectFB_Event_Key_Up Ecore_DirectFB_Event_Key_Up; typedef struct _Ecore_DirectFB_Event_Button_Down Ecore_DirectFB_Event_Button_Down; typedef struct _Ecore_DirectFB_Event_Button_Up Ecore_DirectFB_Event_Button_Up; @@ -62,11 +63,11 @@ typedef struct _Ecore_DirectFB_Event_Leave Ecore_DirectFB_Event_Leave; typedef struct _Ecore_DirectFB_Event_Wheel Ecore_DirectFB_Event_Wheel; typedef struct _Ecore_DirectFB_Event_Got_Focus Ecore_DirectFB_Event_Got_Focus; typedef struct _Ecore_DirectFB_Event_Lost_Focus Ecore_DirectFB_Event_Lost_Focus; - +typedef struct _Ecore_DirectFB_Event_Configure Ecore_DirectFB_Event_Configure; /* this struct is to keep windows data (id, window itself and surface) in memory as every call * to DirectFB for this values (e.g window->GetSurface(window,&surface)) will increment the - * reference count, then we will have to release N times the data, so better we just ask for + * reference count, then we will have to release N times the data, so better we just ask for them once */ struct _Ecore_DirectFB_Window { @@ -74,7 +75,7 @@ struct _Ecore_DirectFB_Window IDirectFBWindow *window; IDirectFBSurface *surface; Ecore_DirectFB_Cursor *cursor; - + }; struct _Ecore_DirectFB_Cursor @@ -93,7 +94,7 @@ struct _Ecore_DirectFB_Event_Key_Down /** DirectFB Key Down event */ unsigned int time; DFBWindowID win; }; - + struct _Ecore_DirectFB_Event_Key_Up /** DirectFB Key Up event */ { char *name; /**< The name of the key that was released */ @@ -166,6 +167,13 @@ struct _Ecore_DirectFB_Event_Lost_Focus DFBWindowID win; }; +struct _Ecore_DirectFB_Event_Configure +{ + unsigned int time; + int x, y, w, h; + DFBWindowID win; +}; + /* main functions */ EAPI int ecore_directfb_init(const char *name); EAPI int ecore_directfb_shutdown(void); diff --git a/src/lib/ecore_directfb/ecore_directfb.c b/src/lib/ecore_directfb/ecore_directfb.c index 191be53..fd35c70 100644 --- a/src/lib/ecore_directfb/ecore_directfb.c +++ b/src/lib/ecore_directfb/ecore_directfb.c @@ -21,7 +21,7 @@ /* with this you can create windows of directfb and handle events through ecore * TODO: * - handle all event types - * - + * - * */ static int _ecore_directfb_init_count = 0; @@ -33,8 +33,9 @@ static int _ecore_directfb_fullscreen_window_id = 0; static int _cursor_x = 0; static int _cursor_y = 0; -EAPI int ECORE_DIRECTFB_EVENT_POSITION = 0; -EAPI int ECORE_DIRECTFB_EVENT_SIZE = 0; +/* EAPI int ECORE_DIRECTFB_EVENT_POSITION = 0; */ +/* EAPI int ECORE_DIRECTFB_EVENT_SIZE = 0; */ +EAPI int ECORE_DIRECTFB_EVENT_CONFIGURE = 0; EAPI int ECORE_DIRECTFB_EVENT_CLOSE = 0; EAPI int ECORE_DIRECTFB_EVENT_DESTROYED = 0; EAPI int ECORE_DIRECTFB_EVENT_GOT_FOCUS = 0; @@ -70,11 +71,11 @@ static DFBResult _err; // usefull for DFBCHECK /* free ecore directfb events functions */ /****************************************/ -static void +static void _ecore_directfb_event_free_key_down(void *data __UNUSED__, void *ev) { Ecore_DirectFB_Event_Key_Up *e; - + e = ev; if(e->name) free(e->name); if (e->string) free(e->string); @@ -86,7 +87,7 @@ static void _ecore_directfb_event_free_key_up(void *data __UNUSED__, void *ev) { Ecore_DirectFB_Event_Key_Up *e; - + e = ev; if(e->name) free(e->name); if (e->string) free(e->string); @@ -128,7 +129,7 @@ _ecore_directfb_event_handle_motion(DFBEvent *evt) e->win = _ecore_directfb_fullscreen_window_id; e->time = 0; break; - + case DFEC_WINDOW: e->modifiers = 0; e->x = evt->window.x; @@ -148,16 +149,16 @@ _ecore_directfb_event_handle_key_down(DFBEvent *evt) Ecore_DirectFB_Event_Key_Down *e; unsigned int key_symbol; struct keymap *k; - + e = calloc(1, sizeof(Ecore_DirectFB_Event_Key_Down)); - + switch(evt->clazz) { case DFEC_INPUT: key_symbol = evt->input.key_symbol; k = eina_hash_find(_ecore_directfb_key_symbols_hash, &key_symbol); - if(!k) + if(!k) { printf("error en el numero, %0X\n", evt->input.key_symbol); return; @@ -168,12 +169,12 @@ _ecore_directfb_event_handle_key_down(DFBEvent *evt) e->win = _ecore_directfb_fullscreen_window_id; e->time = 0; break; - + case DFEC_WINDOW: key_symbol = evt->window.key_symbol; k = eina_hash_find(_ecore_directfb_key_symbols_hash, &key_symbol); - if(!k) + if(!k) { printf("error en el numero, %0X\n", evt->window.key_symbol); return; @@ -187,7 +188,7 @@ _ecore_directfb_event_handle_key_down(DFBEvent *evt) default: break; } - + ecore_event_add(ECORE_DIRECTFB_EVENT_KEY_DOWN, e, _ecore_directfb_event_free_key_down, NULL); } static void @@ -196,17 +197,17 @@ _ecore_directfb_event_handle_key_up(DFBEvent *evt) Ecore_DirectFB_Event_Key_Up *e; unsigned int key_symbol; struct keymap *k; - + e = calloc(1, sizeof(Ecore_DirectFB_Event_Key_Up)); - + switch(evt->clazz) { case DFEC_INPUT: key_symbol = evt->input.key_symbol; k = eina_hash_find(_ecore_directfb_key_symbols_hash, &key_symbol); - - if(!k) + + if(!k) { printf("error en el numero, %0X\n", evt->input.key_symbol); return; @@ -217,12 +218,12 @@ _ecore_directfb_event_handle_key_up(DFBEvent *evt) e->win = _ecore_directfb_fullscreen_window_id; e->time = 0; break; - + case DFEC_WINDOW: key_symbol = evt->window.key_symbol; k = eina_hash_find(_ecore_directfb_key_symbols_hash, &key_symbol); - if(!k) + if(!k) { printf("error en el numero, %0X\n", evt->window.key_symbol); return; @@ -256,9 +257,9 @@ _ecore_directfb_event_handle_button_down(DFBEvent *evt) e->y = _cursor_y; e->win = _ecore_directfb_fullscreen_window_id; e->time = 0; - + break; - + case DFEC_WINDOW: e->button = evt->window.button + 1; e->modifiers = 0; @@ -270,7 +271,7 @@ _ecore_directfb_event_handle_button_down(DFBEvent *evt) default: break; } - + ecore_event_add(ECORE_DIRECTFB_EVENT_BUTTON_DOWN, e, NULL, NULL); } @@ -287,12 +288,12 @@ _ecore_directfb_event_handle_button_up(DFBEvent *evt) e->button = evt->input.button + 1; e->modifiers = 0; e->x = _cursor_x; - e->y = _cursor_y; + e->y = _cursor_y; e->win = _ecore_directfb_fullscreen_window_id; e->time = 0; - + break; - + case DFEC_WINDOW: e->button = evt->window.button + 1; e->modifiers = 0; @@ -309,17 +310,34 @@ _ecore_directfb_event_handle_button_up(DFBEvent *evt) } static void +_ecore_directfb_event_handle_configure(DFBWindowEvent *evt) +{ + Ecore_DirectFB_Event_Configure *e; + IDirectFBWindow *win; + e = calloc(1, sizeof(Ecore_DirectFB_Event_Configure)); + + e->time = 0; + e->win = evt->window_id; + + DFBCHECK(_layer->GetWindow(_layer, evt->window_id, &win)); + DFBCHECK(win->GetPosition(win, &e->x, &e->y)); + DFBCHECK(win->GetSize(win, &e->w, &e->h)); + ecore_event_add(ECORE_DIRECTFB_EVENT_CONFIGURE, e, NULL, NULL); + +} + +static void _ecore_directfb_event_handle_enter(DFBWindowEvent *evt) { Ecore_DirectFB_Event_Enter *e; - e = calloc(1, sizeof(Ecore_DirectFB_Event_Enter)); + e = calloc(1, sizeof(Ecore_DirectFB_Event_Enter)); e->modifiers = 0; e->x = evt->x; e->y = evt->y; e->win = evt->window_id; e->time = 0; - + ecore_event_add(ECORE_DIRECTFB_EVENT_ENTER, e, NULL, NULL); } @@ -335,7 +353,7 @@ _ecore_directfb_event_handle_leave(DFBWindowEvent *evt) e->y = evt->y; e->win = evt->window_id; e->time = 0; - + ecore_event_add(ECORE_DIRECTFB_EVENT_LEAVE, e, NULL, NULL); } @@ -352,7 +370,7 @@ _ecore_directfb_event_handle_wheel(DFBWindowEvent *evt) e->modifiers = 0; e->win = evt->window_id; e->time = 0; - + ecore_event_add(ECORE_DIRECTFB_EVENT_WHEEL, e, NULL, NULL); } @@ -365,7 +383,7 @@ _ecore_directfb_event_handle_got_focus(DFBWindowEvent *evt) e->win = evt->window_id; e->time = 0; - + ecore_event_add(ECORE_DIRECTFB_EVENT_GOT_FOCUS, e, NULL, NULL); } @@ -378,7 +396,7 @@ _ecore_directfb_event_handle_lost_focus(DFBWindowEvent *evt) e->win = evt->window_id; e->time = 0; - + ecore_event_add(ECORE_DIRECTFB_EVENT_LOST_FOCUS, e, NULL, NULL); } @@ -396,11 +414,11 @@ _ecore_directfb_input_event_fd_handler(void *data __UNUSED__,Ecore_Fd_Handler *f { DFBEvent evt; int v = 0; - + v = read(_input_event_fd, &evt, sizeof(DFBEvent)); if (v < 0) return 1; if (v < 1) return 1; - + /* we are getting duplicate events, only parse if we are in fullscreen */ //if(_ecore_directfb_fullscreen_window_id == 0) break; if(evt.input.type == DIET_KEYPRESS) @@ -416,21 +434,21 @@ _ecore_directfb_input_event_fd_handler(void *data __UNUSED__,Ecore_Fd_Handler *f return 1; } - + static int _ecore_directfb_window_event_fd_handler(void *data __UNUSED__,Ecore_Fd_Handler *fd_handler __UNUSED__) { DFBEvent evt; int v = 0; - + v = read(_window_event_fd, &evt, sizeof(DFBEvent)); if (v < 0) return 1; if (v < 1) return 1; - + if(evt.window.type & DWET_POSITION) - printf("position\n"); + _ecore_directfb_event_handle_configure(&evt.window); if(evt.window.type & DWET_SIZE) - printf("size\n"); + _ecore_directfb_event_handle_configure(&evt.window); if(evt.window.type & DWET_CLOSE) printf("close\n"); if(evt.window.type & DWET_DESTROYED) @@ -457,7 +475,7 @@ _ecore_directfb_window_event_fd_handler(void *data __UNUSED__,Ecore_Fd_Handler * _ecore_directfb_event_handle_wheel(&evt.window); return 1; } - + /* api functions */ /*****************/ @@ -478,7 +496,7 @@ ecore_directfb_window_new(int x, int y, int w, int h) IDirectFBSurface *dfb_surface = NULL; DFBWindowDescription desc; DFBWindowID id; - + memset(&desc, 0, sizeof(DFBWindowDescription)); desc.flags = (DWDESC_POSX | DWDESC_POSY | DWDESC_WIDTH | DWDESC_HEIGHT | DWDESC_CAPS); desc.posx = x; @@ -486,17 +504,17 @@ ecore_directfb_window_new(int x, int y, int w, int h) desc.width = w; desc.height = h; desc.caps = DWCAPS_ALPHACHANNEL; - + DFBCHECK(_layer->CreateWindow(_layer, &desc, &dfb_window)); - + dfb_window->AttachEventBuffer(dfb_window, _window_event); dfb_window->SetOptions(dfb_window,DWOP_NONE); dfb_window->SetOpacity(dfb_window, 0xFF); - + DFBCHECK(dfb_window->GetID(dfb_window, &id)); DFBCHECK(dfb_window->GetSurface(dfb_window,&dfb_surface)); - - window = malloc(sizeof(Ecore_DirectFB_Window)); + + window = malloc(sizeof(Ecore_DirectFB_Window)); window->id = id; window->window = dfb_window; window->surface = dfb_surface; @@ -526,13 +544,13 @@ ecore_directfb_window_resize(Ecore_DirectFB_Window *ecore_window, int w, int h) DFBCHECK(ecore_window->window->Resize(ecore_window->window, w, h)); } -EAPI void +EAPI void ecore_directfb_window_focus(Ecore_DirectFB_Window *ecore_window) -{ - DFBCHECK(ecore_window->window->RequestFocus(ecore_window->window)); +{ + DFBCHECK(ecore_window->window->RequestFocus(ecore_window->window)); } -EAPI void +EAPI void ecore_directfb_window_hide(Ecore_DirectFB_Window *ecore_window) { DFBCHECK(ecore_window->window->SetOpacity(ecore_window->window,0)); @@ -549,7 +567,7 @@ EAPI void ecore_directfb_window_shaped_set(Ecore_DirectFB_Window *ecore_window, int set) { DFBWindowOptions opts; - + DFBCHECK(ecore_window->window->GetOptions(ecore_window->window, &opts)); if(set) { @@ -573,13 +591,13 @@ ecore_directfb_window_cursor_show(Ecore_DirectFB_Window *ecore_window, int show) /* create an empty cursor and set it */ IDirectFBSurface *cursor; DFBSurfaceDescription desc; - + memset(&desc, 0, sizeof(DFBSurfaceDescription)); desc.flags = (DSDESC_HEIGHT | DSDESC_WIDTH | DSDESC_PIXELFORMAT); desc.width = 1; desc.height = 1; desc.pixelformat = DSPF_A1; - + DFBCHECK(_dfb->CreateSurface(_dfb,&desc,&cursor)); DFBCHECK(cursor->Clear(cursor,0,0,0,0)); DFBCHECK(ecore_window->window->SetCursorShape(ecore_window->window, cursor, 0, 0)); @@ -596,7 +614,7 @@ ecore_directfb_window_cursor_show(Ecore_DirectFB_Window *ecore_window, int show) { DFBCHECK(ecore_window->window->SetCursorShape(ecore_window->window, NULL, 0, 0)); } - + } } @@ -609,16 +627,16 @@ ecore_directfb_window_cursor_set(Ecore_DirectFB_Window *ecore_window, Ecore_Dire DFBCHECK(ecore_window->window->SetCursorShape(ecore_window->window, NULL, 0, 0)); return; } - if(cursor) + if(cursor) { ecore_window->cursor = cursor; DFBCHECK(ecore_window->window->SetCursorShape(ecore_window->window, cursor->surface, cursor->hot_x, cursor->hot_y)); - + } } -EAPI void +EAPI void ecore_directfb_window_fullscreen_set(Ecore_DirectFB_Window *ecore_window, int on) { // always release the surface (we are going to get a new one in both cases) @@ -631,19 +649,19 @@ ecore_directfb_window_fullscreen_set(Ecore_DirectFB_Window *ecore_window, int on DFBCHECK(_input_event->CreateFileDescriptor(_input_event,&_input_event_fd)); /* the event of axismove sends one axis at a time, so we must store both */ DFBCHECK(_layer->GetCursorPosition(_layer,&_cursor_x,&_cursor_y)); - + _input_event_fd_handler_handle = ecore_main_fd_handler_add(_input_event_fd,ECORE_FD_READ,_ecore_directfb_input_event_fd_handler, NULL,NULL,NULL); _ecore_directfb_fullscreen_window_id = ecore_window->id; } else { - DFBCHECK(_input_event->Release(_input_event)); + DFBCHECK(_input_event->Release(_input_event)); DFBCHECK(_layer->SetCooperativeLevel(_layer,DLSCL_SHARED)); DFBCHECK(ecore_window->window->GetSurface(ecore_window->window, &ecore_window->surface)); ecore_main_fd_handler_del(_input_event_fd_handler_handle); _ecore_directfb_fullscreen_window_id = 0; } - + } EAPI void @@ -657,24 +675,25 @@ EAPI int ecore_directfb_init(const char *name __UNUSED__) { int i = 0; - + if (++_ecore_directfb_init_count != 1) return _ecore_directfb_init_count; - + DFBCHECK(DirectFBInit(NULL,NULL)); DFBCHECK(DirectFBCreate(&_dfb)); - + DFBCHECK(_dfb->GetDisplayLayer(_dfb, DLID_PRIMARY, &_layer)); DFBCHECK(_layer->SetCooperativeLevel(_layer, DLSCL_SHARED)); - - + + /* window events and fd */ DFBCHECK(_dfb->CreateEventBuffer(_dfb, &_window_event)); DFBCHECK(_window_event->CreateFileDescriptor(_window_event,&_window_event_fd)); _window_event_fd_handler_handle = ecore_main_fd_handler_add(_window_event_fd,ECORE_FD_READ,_ecore_directfb_window_event_fd_handler, NULL,NULL,NULL); - + /* register ecore directfb events */ - ECORE_DIRECTFB_EVENT_POSITION = ecore_event_type_new(); - ECORE_DIRECTFB_EVENT_SIZE = ecore_event_type_new();; + /* ECORE_DIRECTFB_EVENT_POSITION = ecore_event_type_new(); */ + /* ECORE_DIRECTFB_EVENT_SIZE = ecore_event_type_new();; */ + ECORE_DIRECTFB_EVENT_CONFIGURE = ecore_event_type_new();; ECORE_DIRECTFB_EVENT_CLOSE = ecore_event_type_new();; ECORE_DIRECTFB_EVENT_DESTROYED = ecore_event_type_new();; ECORE_DIRECTFB_EVENT_GOT_FOCUS = ecore_event_type_new();; @@ -712,12 +731,12 @@ ecore_directfb_shutdown(void) if(_ecore_directfb_fullscreen_window_id) { - DFBCHECK(_input_event->Release(_input_event)); + DFBCHECK(_input_event->Release(_input_event)); ecore_main_fd_handler_del(_input_event_fd_handler_handle); } - DFBCHECK(_window_event->Release(_window_event)); + DFBCHECK(_window_event->Release(_window_event)); DFBCHECK(_layer->Release(_layer)); DFBCHECK(_dfb->Release(_dfb)); - + return _ecore_directfb_init_count; } diff --git a/src/lib/ecore_evas/ecore_evas_directfb.c b/src/lib/ecore_evas/ecore_evas_directfb.c index 02e59fc..ff6c4da 100644 --- a/src/lib/ecore_evas/ecore_evas_directfb.c +++ b/src/lib/ecore_evas/ecore_evas_directfb.c @@ -89,6 +89,7 @@ _ecore_evas_directfb_winid_str_get(Ecore_X_Window win) id[6] = vals[(val >> 4) & 0xf]; id[7] = vals[(val ) & 0xf]; id[8] = 0; + return id; } @@ -96,7 +97,7 @@ static Ecore_Evas * _ecore_evas_directfb_match(DFBWindowID win) { Ecore_Evas *ee; - + ee = eina_hash_find(ecore_evases_hash, _ecore_evas_directfb_winid_str_get(win)); return ee; } @@ -250,6 +251,44 @@ _ecore_evas_directfb_event_lost_focus(void *data __UNUSED__, int type __UNUSED__ return 1; } +static int +_ecore_evas_direct_event_configure(void *data, int type, void *event) +{ + Ecore_Evas *ee; + Ecore_DirectFB_Event_Configure *e; + int ow, oh; + Evas_Coord vw, vh; + + e = event; + ee = _ecore_evas_directfb_match(e->win); + + if (!ee) return 1; /* pass on event */ + + if ((ee->x != e->x) || (ee->y != e->y)) + { + ee->x = e->x; + ee->y = e->y; + if (ee->func.fn_move) ee->func.fn_move(ee); + } + if ((ee->w != e->w) || (ee->h != e->h)) + { + ee->w = e->w; + ee->h = e->h; + if ((ee->rotation == 90) || (ee->rotation == 270)) + { + evas_output_size_set(ee->evas, ee->h, ee->w); + evas_output_viewport_set(ee->evas, 0, 0, ee->h, ee->w); + } + else + { + evas_output_size_set(ee->evas, ee->w, ee->h); + evas_output_viewport_set(ee->evas, 0, 0, ee->w, ee->h); + } + if (ee->func.fn_resize) ee->func.fn_resize(ee); + } + return 1; +} + int _ecore_evas_directfb_shutdown(void) { @@ -292,7 +331,7 @@ _ecore_evas_directfb_init(void) ecore_evas_event_handlers[7] = ecore_event_handler_add(ECORE_DIRECTFB_EVENT_WHEEL, _ecore_evas_directfb_event_wheel, NULL); ecore_evas_event_handlers[8] = ecore_event_handler_add(ECORE_DIRECTFB_EVENT_GOT_FOCUS, _ecore_evas_directfb_event_got_focus, NULL); ecore_evas_event_handlers[9] = ecore_event_handler_add(ECORE_DIRECTFB_EVENT_LOST_FOCUS, _ecore_evas_directfb_event_lost_focus, NULL); - ecore_evas_event_handlers[10] = NULL; + ecore_evas_event_handlers[10] = ecore_event_handler_add(ECORE_DIRECTFB_EVENT_CONFIGURE, _ecore_evas_direct_event_configure, NULL); ecore_evas_event_handlers[11] = NULL; ecore_evas_event_handlers[12] = NULL; @@ -305,6 +344,7 @@ _ecore_evas_directfb_init(void) static void _ecore_evas_directfb_free(Ecore_Evas *ee) { + printf ("delete window %i from list\n", ee->engine.directfb.window->id); eina_hash_del(ecore_evases_hash, _ecore_evas_directfb_winid_str_get(ee->engine.directfb.window->id), ee); ecore_directfb_window_free(ee->engine.directfb.window); ecore_evases = (Ecore_Evas *) eina_inlist_remove(EINA_INLIST_GET(ecore_evases), EINA_INLIST_GET(ee)); @@ -323,18 +363,18 @@ _ecore_evas_directfb_resize(Ecore_Evas *ee, int w, int h) { if ((w == ee->w) && (h == ee->h)) return; ecore_directfb_window_resize(ee->engine.directfb.window, w, h); - ee->w = w; - ee->h = h; - if ((ee->rotation == 90) || (ee->rotation == 270)) - { - evas_output_size_set(ee->evas, ee->h, ee->w); - evas_output_viewport_set(ee->evas, 0, 0, ee->h, ee->w); - } - else - { - evas_output_size_set(ee->evas, ee->w, ee->h); - evas_output_viewport_set(ee->evas, 0, 0, ee->w, ee->h); - } + /* ee->w = w; */ + /* ee->h = h; */ + /* if ((ee->rotation == 90) || (ee->rotation == 270)) */ + /* { */ + /* evas_output_size_set(ee->evas, ee->h, ee->w); */ + /* evas_output_viewport_set(ee->evas, 0, 0, ee->h, ee->w); */ + /* } */ + /* else */ + /* { */ + /* evas_output_size_set(ee->evas, ee->w, ee->h); */ + /* evas_output_viewport_set(ee->evas, 0, 0, ee->w, ee->h); */ + /* } */ } static void -- 1.6.5.7 ------------------------------------------------------------------------------ Download Intel® Parallel Studio Eval Try the new software tools for yourself. Speed compiling, find bugs proactively, and fine-tune applications for parallel performance. See why Intel Parallel Studio got high marks during beta. http://p.sf.net/sfu/intel-sw-dev _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel