diff --git a/legacy/ecore/src/lib/ecore_directfb/Ecore_DirectFB.h b/legacy/ecore/src/lib/ecore_directfb/Ecore_DirectFB.h index f34cd7a604..a7b246f459 100644 --- a/legacy/ecore/src/lib/ecore_directfb/Ecore_DirectFB.h +++ b/legacy/ecore/src/lib/ecore_directfb/Ecore_DirectFB.h @@ -45,7 +45,7 @@ extern int ECORE_DIRECTFB_EVENT_WHEEL; #ifndef _ECORE_DIRECTFB_WINDOW_PREDEF typedef struct _Ecore_DirectFB_Window Ecore_DirectFB_Window; -#endif +#endif typedef struct _Ecore_DirectFB_Cursor Ecore_DirectFB_Cursor; typedef struct _Ecore_DirectFB_Event_Key_Down Ecore_DirectFB_Event_Key_Down; @@ -83,8 +83,8 @@ struct _Ecore_DirectFB_Cursor struct _Ecore_DirectFB_Event_Key_Down /** DirectFB Key Down event */ { - char *keyname; /**< The name of the key that was released */ - char *keysymbol; /**< The logical symbol of the key that was pressed */ + char *name; /**< The name of the key that was released */ + char *string; /**< The logical symbol of the key that was pressed */ char *key_compose; /**< The UTF-8 string conversion if any */ unsigned int time; DFBWindowID win; @@ -92,8 +92,8 @@ struct _Ecore_DirectFB_Event_Key_Down /** DirectFB Key Down event */ struct _Ecore_DirectFB_Event_Key_Up /** DirectFB Key Up event */ { - char *keyname; /**< The name of the key that was released */ - char *keysymbol; /**< The logical symbol of the key that was pressed */ + char *name; /**< The name of the key that was released */ + char *string; /**< The logical symbol of the key that was pressed */ char *key_compose; /**< The UTF-8 string conversion if any */ unsigned int time; DFBWindowID win; diff --git a/legacy/ecore/src/lib/ecore_directfb/ecore_directfb.c b/legacy/ecore/src/lib/ecore_directfb/ecore_directfb.c index fcdd89f9be..3a370e268f 100644 --- a/legacy/ecore/src/lib/ecore_directfb/ecore_directfb.c +++ b/legacy/ecore/src/lib/ecore_directfb/ecore_directfb.c @@ -7,7 +7,11 @@ /* ecore_directfb */ /******************/ /* About */ -/* with this you can create windows of directfb and handle events through ecore */ +/* with this you can create windows of directfb and handle events through ecore + * TODO: + * - handle all event types + * - + * */ static int _ecore_directfb_key_symbols_count = sizeof(_ecore_directfb_key_symbols)/sizeof(Ecore_DirectFB_Key_Symbols); static int _ecore_directfb_init_count = 0; @@ -62,8 +66,8 @@ _ecore_directfb_event_free_key_down(void *data __UNUSED__, void *ev) Ecore_DirectFB_Event_Key_Up *e; e = ev; - free(e->keyname); - if (e->keysymbol) free(e->keysymbol); + if(e->name) free(e->name); + if (e->string) free(e->string); if (e->key_compose) free(e->key_compose); free(e); } @@ -74,8 +78,8 @@ _ecore_directfb_event_free_key_up(void *data __UNUSED__, void *ev) Ecore_DirectFB_Event_Key_Up *e; e = ev; - free(e->keyname); - if (e->keysymbol) free(e->keysymbol); + if(e->name) free(e->name); + if (e->string) free(e->string); if (e->key_compose) free(e->key_compose); free(e); } @@ -151,7 +155,7 @@ _ecore_directfb_event_handle_key_down(DFBEvent *evt) Ecore_DirectFB_Event_Key_Down *e; unsigned int key_symbol; - char *key_name; + struct keymap *k; e = calloc(1, sizeof(Ecore_DirectFB_Event_Key_Down)); @@ -159,31 +163,31 @@ _ecore_directfb_event_handle_key_down(DFBEvent *evt) { case DFEC_INPUT: key_symbol = evt->input.key_symbol; - key_name = ecore_hash_get(_ecore_directfb_key_symbols_hash, &key_symbol); + k = ecore_hash_get(_ecore_directfb_key_symbols_hash, &key_symbol); - if(!key_name) + if(!k) { printf("error en el numero, %0X\n", evt->input.key_symbol); return; } - e->keyname = strdup(key_name); - e->keysymbol = strdup(key_name); + e->name = strdup(k->name); + e->string = strdup(k->string); e->key_compose = NULL; e->win = _ecore_directfb_fullscreen_window_id; e->time = 0; - break; + break; case DFEC_WINDOW: key_symbol = evt->window.key_symbol; - key_name = ecore_hash_get(_ecore_directfb_key_symbols_hash, &key_symbol); + k = ecore_hash_get(_ecore_directfb_key_symbols_hash, &key_symbol); - if(!key_name) + if(!k) { printf("error en el numero, %0X\n", evt->window.key_symbol); return; } - e->keyname = strdup(key_name); - e->keysymbol = strdup(key_name); + e->name = strdup(k->name); + e->string = strdup(k->string); e->key_compose = NULL; e->win = evt->window.window_id; e->time = 0; @@ -199,7 +203,7 @@ _ecore_directfb_event_handle_key_up(DFBEvent *evt) { Ecore_DirectFB_Event_Key_Up *e; unsigned int key_symbol; - char *key_name; + struct keymap *k; e = calloc(1, sizeof(Ecore_DirectFB_Event_Key_Up)); @@ -207,15 +211,16 @@ _ecore_directfb_event_handle_key_up(DFBEvent *evt) { case DFEC_INPUT: key_symbol = evt->input.key_symbol; - key_name = ecore_hash_get(_ecore_directfb_key_symbols_hash, &key_symbol); + k = ecore_hash_get(_ecore_directfb_key_symbols_hash, &key_symbol); - if(!key_name) + + if(!k) { printf("error en el numero, %0X\n", evt->input.key_symbol); return; } - e->keyname = strdup(key_name); - e->keysymbol = strdup(key_name); + e->name = strdup(k->name); + e->string = strdup(k->string); e->key_compose = NULL; e->win = _ecore_directfb_fullscreen_window_id; e->time = 0; @@ -223,15 +228,15 @@ _ecore_directfb_event_handle_key_up(DFBEvent *evt) case DFEC_WINDOW: key_symbol = evt->window.key_symbol; - key_name = ecore_hash_get(_ecore_directfb_key_symbols_hash, &key_symbol); + k = ecore_hash_get(_ecore_directfb_key_symbols_hash, &key_symbol); - if(!key_name) + if(!k) { printf("error en el numero, %0X\n", evt->window.key_symbol); return; } - e->keyname = strdup(key_name); - e->keysymbol = strdup(key_name); + e->name = strdup(k->name); + e->string = strdup(k->string); e->key_compose = NULL; e->win = evt->window.window_id; e->time = 0; @@ -695,7 +700,11 @@ ecore_directfb_init(const char *name) _ecore_directfb_key_symbols_hash = ecore_hash_new(_ecore_directfb_hash_create,_ecore_directfb_hash_compare); for(i=0; i<_ecore_directfb_key_symbols_count; i++) { - ecore_hash_set(_ecore_directfb_key_symbols_hash, &_ecore_directfb_key_symbols[i].keycode, _ecore_directfb_key_symbols[i].keysymbol); + struct keymap *k; + k = malloc(sizeof(struct keymap)); + k->name = _ecore_directfb_key_symbols[i].name; + k->string = _ecore_directfb_key_symbols[i].string; + ecore_hash_set(_ecore_directfb_key_symbols_hash, &_ecore_directfb_key_symbols[i].id, k); } /* create the hash for the windows(key = windowid, val = Ecore_DirectFB_Window struct) */ return _ecore_directfb_init_count; @@ -717,7 +726,10 @@ ecore_directfb_shutdown(void) /* free the key symbol names hash */ for(i=0; i<_ecore_directfb_key_symbols_count; i++) { - ecore_hash_remove(_ecore_directfb_key_symbols_hash, &_ecore_directfb_key_symbols[i].keycode); + struct keymap *k; + k = ecore_hash_get(_ecore_directfb_key_symbols_hash, &_ecore_directfb_key_symbols[i].id); + ecore_hash_remove(_ecore_directfb_key_symbols_hash, &_ecore_directfb_key_symbols[i].id); + free(k); } if(_ecore_directfb_fullscreen_window_id) diff --git a/legacy/ecore/src/lib/ecore_directfb/ecore_directfb_keys.h b/legacy/ecore/src/lib/ecore_directfb/ecore_directfb_keys.h index 088095cc3f..e24d7152b0 100644 --- a/legacy/ecore/src/lib/ecore_directfb/ecore_directfb_keys.h +++ b/legacy/ecore/src/lib/ecore_directfb/ecore_directfb_keys.h @@ -1,131 +1,131 @@ typedef struct _Ecore_DirectFB_Key_Symbols Ecore_DirectFB_Key_Symbols; - struct _Ecore_DirectFB_Key_Symbols { - char *keysymbol; - unsigned int keycode; + char *string; + char *name; + unsigned int id; } _ecore_directfb_key_symbols[] = { - {"BackSpace", DIKS_BACKSPACE}, - {"Tab", DIKS_TAB}, - {"Return", DIKS_RETURN}, - {"Cancel", DIKS_CANCEL}, - {"Escape", DIKS_ESCAPE}, - {"space", DIKS_SPACE}, - {"exclam", DIKS_EXCLAMATION_MARK}, - {"quotedbl", DIKS_QUOTATION}, - {"numbersign", DIKS_NUMBER_SIGN}, - {"dollar", DIKS_DOLLAR_SIGN}, - {"percent", DIKS_PERCENT_SIGN}, - {"ampersand", DIKS_AMPERSAND}, - {"apostrophe", DIKS_APOSTROPHE}, - {"parenleft", DIKS_PARENTHESIS_LEFT}, - {"parenright", DIKS_PARENTHESIS_RIGHT}, - {"asterisk", DIKS_ASTERISK}, - {"plus", DIKS_PLUS_SIGN}, - {"comma", DIKS_COMMA}, - {"minus", DIKS_MINUS_SIGN}, - {"period", DIKS_PERIOD}, - {"slash", DIKS_SLASH}, - {"0", DIKS_0}, - {"1", DIKS_1}, - {"2", DIKS_2}, - {"3", DIKS_3}, - {"4", DIKS_4}, - {"5", DIKS_5}, - {"6", DIKS_6}, - {"7", DIKS_7}, - {"8", DIKS_8}, - {"9", DIKS_9}, - {"colon", DIKS_COLON}, - {"semicolon", DIKS_SEMICOLON}, - {"less", DIKS_LESS_THAN_SIGN}, - {"equal", DIKS_EQUALS_SIGN}, - {"greater", DIKS_GREATER_THAN_SIGN}, - {"question", DIKS_QUESTION_MARK}, - {"at", DIKS_AT}, - {"A", DIKS_CAPITAL_A }, - {"B", DIKS_CAPITAL_B }, - {"C", DIKS_CAPITAL_C }, - {"D", DIKS_CAPITAL_D }, - {"E", DIKS_CAPITAL_E }, - {"F", DIKS_CAPITAL_F }, - {"G", DIKS_CAPITAL_G }, - {"H", DIKS_CAPITAL_H }, - {"I", DIKS_CAPITAL_I }, - {"J", DIKS_CAPITAL_J }, - {"K", DIKS_CAPITAL_K }, - {"L", DIKS_CAPITAL_L }, - {"M", DIKS_CAPITAL_M }, - {"N", DIKS_CAPITAL_N }, - {"O", DIKS_CAPITAL_O }, - {"P", DIKS_CAPITAL_P }, - {"Q", DIKS_CAPITAL_Q }, - {"R", DIKS_CAPITAL_R }, - {"S", DIKS_CAPITAL_S }, - {"T", DIKS_CAPITAL_T }, - {"U", DIKS_CAPITAL_U }, - {"V", DIKS_CAPITAL_V }, - {"W", DIKS_CAPITAL_W }, - {"X", DIKS_CAPITAL_X }, - {"Y", DIKS_CAPITAL_Y }, - {"Z", DIKS_CAPITAL_Z }, - {"bracketleft", DIKS_SQUARE_BRACKET_LEFT }, - {"backslash", DIKS_BACKSLASH }, - {"bracketright", DIKS_SQUARE_BRACKET_RIGHT }, - {"asciicircum", DIKS_CIRCUMFLEX_ACCENT }, - {"underscore", DIKS_UNDERSCORE }, - {"grave", DIKS_GRAVE_ACCENT}, - {"a", DIKS_SMALL_A }, - {"b", DIKS_SMALL_B }, - {"c", DIKS_SMALL_C }, - {"d", DIKS_SMALL_D }, - {"e", DIKS_SMALL_E }, - {"f", DIKS_SMALL_F }, - {"g", DIKS_SMALL_G }, - {"h", DIKS_SMALL_H }, - {"i", DIKS_SMALL_I }, - {"j", DIKS_SMALL_J }, - {"k", DIKS_SMALL_K }, - {"l", DIKS_SMALL_L }, - {"m", DIKS_SMALL_M }, - {"n", DIKS_SMALL_N }, - {"o", DIKS_SMALL_O }, - {"p", DIKS_SMALL_P }, - {"q", DIKS_SMALL_Q }, - {"r", DIKS_SMALL_R }, - {"s", DIKS_SMALL_S }, - {"t", DIKS_SMALL_T }, - {"u", DIKS_SMALL_U }, - {"v", DIKS_SMALL_V }, - {"w", DIKS_SMALL_W }, - {"x", DIKS_SMALL_X }, - {"y", DIKS_SMALL_Y }, - {"z", DIKS_SMALL_Z }, - {"braceleft", DIKS_CURLY_BRACKET_LEFT }, - {"bar", DIKS_VERTICAL_BAR }, - {"braceright", DIKS_CURLY_BRACKET_RIGHT }, - {"asciitilde", DIKS_TILDE }, - {"Delete", DIKS_DELETE }, - {"Left", DIKS_CURSOR_LEFT }, - {"Right", DIKS_CURSOR_RIGHT}, - {"Up", DIKS_CURSOR_UP}, - {"Down", DIKS_CURSOR_DOWN}, - {"Insert", DIKS_INSERT}, - {"Home", DIKS_HOME}, - {"End", DIKS_END}, - {"Page_Up", DIKS_PAGE_UP}, - {"Page_Down", DIKS_PAGE_DOWN}, - {"Print", DIKS_PRINT}, - {"Pause", DIKS_PAUSE}, + {"\010", "BackSpace",DIKS_BACKSPACE}, + {"\011", "Tab", DIKS_TAB}, + {"\015", "Return", DIKS_RETURN}, + {"", "Cancel", DIKS_CANCEL}, + {"", "Escape", DIKS_ESCAPE}, + {" ", "space", DIKS_SPACE}, + {"!", "exclam", DIKS_EXCLAMATION_MARK}, + {"\"", "quotedbl", DIKS_QUOTATION}, + {"#", "numbersign", DIKS_NUMBER_SIGN}, + {"$", "dollar", DIKS_DOLLAR_SIGN}, + {"%", "percent", DIKS_PERCENT_SIGN}, + {"&", "ampersand", DIKS_AMPERSAND}, + {"'", "apostrophe", DIKS_APOSTROPHE}, + {"(", "parenleft", DIKS_PARENTHESIS_LEFT}, + {")", "parenright", DIKS_PARENTHESIS_RIGHT}, + {"*", "asterisk", DIKS_ASTERISK}, + {"+", "plus", DIKS_PLUS_SIGN}, + {",", "comma", DIKS_COMMA}, + {"-", "minus", DIKS_MINUS_SIGN}, + {".", "period", DIKS_PERIOD}, + {"/", "slash", DIKS_SLASH}, + {"0", "0", DIKS_0}, + {"1", "1", DIKS_1}, + {"2", "2", DIKS_2}, + {"3", "3", DIKS_3}, + {"4", "4", DIKS_4}, + {"5", "5", DIKS_5}, + {"6", "6", DIKS_6}, + {"7", "7", DIKS_7}, + {"8", "8", DIKS_8}, + {"9", "9", DIKS_9}, + {":", "colon", DIKS_COLON}, + {";", "semicolon", DIKS_SEMICOLON}, + {"<", "less", DIKS_LESS_THAN_SIGN}, + {"=", "equal", DIKS_EQUALS_SIGN}, + {">", "greater", DIKS_GREATER_THAN_SIGN}, + {"?", "question", DIKS_QUESTION_MARK}, + {"@", "at", DIKS_AT}, + {"A", "A", DIKS_CAPITAL_A }, + {"B", "B", DIKS_CAPITAL_B }, + {"C", "C", DIKS_CAPITAL_C }, + {"D", "D", DIKS_CAPITAL_D }, + {"E", "E", DIKS_CAPITAL_E }, + {"F", "F", DIKS_CAPITAL_F }, + {"G", "G", DIKS_CAPITAL_G }, + {"H", "H", DIKS_CAPITAL_H }, + {"I", "I", DIKS_CAPITAL_I }, + {"J", "J", DIKS_CAPITAL_J }, + {"K", "K", DIKS_CAPITAL_K }, + {"L", "L", DIKS_CAPITAL_L }, + {"M", "M", DIKS_CAPITAL_M }, + {"N", "N", DIKS_CAPITAL_N }, + {"O", "O", DIKS_CAPITAL_O }, + {"P", "P", DIKS_CAPITAL_P }, + {"Q", "Q", DIKS_CAPITAL_Q }, + {"R", "R", DIKS_CAPITAL_R }, + {"S", "S", DIKS_CAPITAL_S }, + {"T", "T", DIKS_CAPITAL_T }, + {"U", "U", DIKS_CAPITAL_U }, + {"V", "V", DIKS_CAPITAL_V }, + {"W", "W", DIKS_CAPITAL_W }, + {"X", "X", DIKS_CAPITAL_X }, + {"Y", "Y", DIKS_CAPITAL_Y }, + {"Z", "Z", DIKS_CAPITAL_Z }, + {"[", "bracketleft", DIKS_SQUARE_BRACKET_LEFT }, + {"\\", "backslash", DIKS_BACKSLASH }, + {"]", "bracketright", DIKS_SQUARE_BRACKET_RIGHT }, + {"^", "asciicircum", DIKS_CIRCUMFLEX_ACCENT }, + {"_", "underscore", DIKS_UNDERSCORE }, + {"`", "grave", DIKS_GRAVE_ACCENT}, + {"a", "a", DIKS_SMALL_A }, + {"b","b", DIKS_SMALL_B }, + {"c","c", DIKS_SMALL_C }, + {"d","d", DIKS_SMALL_D }, + {"e","e", DIKS_SMALL_E }, + {"f","f", DIKS_SMALL_F }, + {"g","g", DIKS_SMALL_G }, + {"h","h", DIKS_SMALL_H }, + {"i","i", DIKS_SMALL_I }, + {"j","j", DIKS_SMALL_J }, + {"k","k", DIKS_SMALL_K }, + {"l","l", DIKS_SMALL_L }, + {"m","m", DIKS_SMALL_M }, + {"n","n", DIKS_SMALL_N }, + {"o", "o", DIKS_SMALL_O }, + {"p", "p", DIKS_SMALL_P }, + {"q", "q", DIKS_SMALL_Q }, + {"r", "r", DIKS_SMALL_R }, + {"s", "s", DIKS_SMALL_S }, + {"t", "t", DIKS_SMALL_T }, + {"u", "u", DIKS_SMALL_U }, + {"v", "v", DIKS_SMALL_V }, + {"w", "w", DIKS_SMALL_W }, + {"x", "x", DIKS_SMALL_X }, + {"y", "y", DIKS_SMALL_Y }, + {"z", "z", DIKS_SMALL_Z }, + {"{", "braceleft",DIKS_CURLY_BRACKET_LEFT }, + {"|", "bar", DIKS_VERTICAL_BAR }, + {"}", "braceright", DIKS_CURLY_BRACKET_RIGHT }, + {"~", "asciitilde", DIKS_TILDE }, + {"\177", "Delete", DIKS_DELETE }, + {"", "Left", DIKS_CURSOR_LEFT }, + {"", "Right", DIKS_CURSOR_RIGHT}, + {"", "Up", DIKS_CURSOR_UP}, + {"", "Down", DIKS_CURSOR_DOWN}, + {"", "Insert", DIKS_INSERT}, + {"", "Home", DIKS_HOME}, + {"", "End", DIKS_END}, + {"", "Page_Up", DIKS_PAGE_UP}, + {"", "Page_Down", DIKS_PAGE_DOWN}, + {"", "Print", DIKS_PRINT}, + {"", "Pause", DIKS_PAUSE}, /* ok */ - {"Select", DIKS_SELECT}, + {"", "Select",DIKS_SELECT}, /* goto */ - {"Clear", DIKS_CLEAR}, + {"", "Clear", DIKS_CLEAR}, /* power */ /* power 2 */ /* option */ - {"Menu", DIKS_MENU}, - {"Help", DIKS_HELP}, + {"", "Menu",DIKS_MENU}, + {"", "Help",DIKS_HELP}, /* info */ /* time */ /* vendor */ @@ -134,48 +134,48 @@ struct _Ecore_DirectFB_Key_Symbols /* channel */ /* favorites */ /* hasta next */ - {"Next", DIKS_NEXT}, - {"Begin", DIKS_BEGIN}, + {"", "Next",DIKS_NEXT}, + {"", "Begin",DIKS_BEGIN}, /* digits */ /* teen */ /* twen */ - {"Break", DIKS_BREAK}, + {"", "Break", DIKS_BREAK}, /* exit */ /* setup */ - {"upleftcorner", DIKS_CURSOR_LEFT_UP }, - {"lowleftcorner", DIKS_CURSOR_LEFT_DOWN }, - {"uprightcorner", DIKS_CURSOR_UP_RIGHT }, - {"lowrightcorner", DIKS_CURSOR_DOWN_RIGHT }, - {"F1", DIKS_F1}, - {"F2", DIKS_F2}, - {"F3", DIKS_F3}, - {"F4", DIKS_F4}, - {"F5", DIKS_F5}, - {"F6", DIKS_F6}, - {"F7", DIKS_F7}, - {"F8", DIKS_F8}, - {"F9", DIKS_F9}, - {"F10", DIKS_F10}, - {"F11", DIKS_F11}, - {"F12", DIKS_F12}, + {"", "upleftcorner", DIKS_CURSOR_LEFT_UP }, + {"", "lowleftcorner", DIKS_CURSOR_LEFT_DOWN }, + {"", "uprightcorner", DIKS_CURSOR_UP_RIGHT }, + {"", "lowrightcorner",DIKS_CURSOR_DOWN_RIGHT }, + {"", "F1",DIKS_F1}, + {"", "F2",DIKS_F2}, + {"", "F3",DIKS_F3}, + {"", "F4",DIKS_F4}, + {"", "F5",DIKS_F5}, + {"", "F6",DIKS_F6}, + {"", "F7",DIKS_F7}, + {"", "F8",DIKS_F8}, + {"", "F9",DIKS_F9}, + {"", "F10",DIKS_F10}, + {"", "F11",DIKS_F11}, + {"", "F12",DIKS_F12}, /* this are only mapped to one, not left right */ - {"Shift_L", DIKS_SHIFT}, - /*{"Shift_R", 0xFFE2}, */ - {"Control_L", DIKS_CONTROL}, - /*{"Control_R", 0xFFE4}, */ - {"Meta_L", DIKS_META}, - /* {"Meta_R", 0xFFE8}, */ - {"Alt_L", DIKS_ALT}, - {"Alt_R", DIKS_ALTGR}, - {"Super_L", DIKS_SUPER}, - /*{"Super_R", 0xFFEC}, */ - {"Hyper_L", DIKS_HYPER}, - /*{"Hyper_R", 0xFFEE}, */ + {"", "Shift_L", DIKS_SHIFT}, + /*{"Shift_R",0xFFE2},*/ + {"", "Control_L", DIKS_CONTROL}, + /*{"Control_R",0xFFE4},*/ + {"", "Meta_L", DIKS_META}, + /* {"Meta_R",0xFFE8},*/ + {"", "Alt_L", DIKS_ALT}, + {"", "Alt_R", DIKS_ALTGR}, + {"", "Super_L", DIKS_SUPER}, + /*{"Super_R",0xFFEC},*/ + {"", "Hyper_L", DIKS_HYPER}, + /*{"Hyper_R",0xFFEE},*/ - {"Caps_Lock", DIKS_CAPS_LOCK}, - {"Num_Lock", DIKS_NUM_LOCK}, - {"Scroll_Lock", DIKS_SCROLL_LOCK}, + {"", "Caps_Lock", DIKS_CAPS_LOCK}, + {"", "Num_Lock", DIKS_NUM_LOCK}, + {"", "Scroll_Lock", DIKS_SCROLL_LOCK}, /* not included the dead keys */ /* not included the custom keys */ - {"VoidSymbol", DIKS_NULL} + {"", "VoidSymbol", DIKS_NULL} }; diff --git a/legacy/ecore/src/lib/ecore_directfb/ecore_directfb_private.h b/legacy/ecore/src/lib/ecore_directfb/ecore_directfb_private.h index 04d6810215..fc9ef5ee40 100644 --- a/legacy/ecore/src/lib/ecore_directfb/ecore_directfb_private.h +++ b/legacy/ecore/src/lib/ecore_directfb/ecore_directfb_private.h @@ -8,4 +8,8 @@ } \ } - +struct keymap +{ + char *name; + char *string; +}; diff --git a/legacy/ecore/src/lib/ecore_evas/ecore_evas_directfb.c b/legacy/ecore/src/lib/ecore_evas/ecore_evas_directfb.c index f99a84ccc8..caf7d7dc41 100644 --- a/legacy/ecore/src/lib/ecore_evas/ecore_evas_directfb.c +++ b/legacy/ecore/src/lib/ecore_evas/ecore_evas_directfb.c @@ -21,18 +21,21 @@ static Ecore_Idle_Enterer *ecore_evas_directfb_idle_enterer = NULL; static void _ecore_evas_directfb_render(Ecore_Evas *ee) { - if (ee->func.fn_pre_render) ee->func.fn_pre_render(ee); Evas_List *updates; + + if (ee->func.fn_pre_render) ee->func.fn_pre_render(ee); updates = evas_render_updates(ee->evas); if (updates) { DFBRegion region; IDirectFBSurface *surface; Evas_List *l; + surface = ee->engine.directfb.window->surface; for (l = updates; l; l = l->next) { Evas_Rectangle *rect; + rect = l->data; region.x1 = rect->x; region.y1 = rect->y; @@ -58,6 +61,7 @@ _ecore_evas_directfb_idle_enter(void *data __UNUSED__) for (l = (Ecore_List2 *)ecore_evases; l; l = l->next) { Ecore_Evas *ee; + ee = (Ecore_Evas *)l; _ecore_evas_directfb_render(ee); } @@ -132,7 +136,7 @@ _ecore_evas_directfb_mouse_move_process(Ecore_Evas *ee, int x, int y, unsigned i else if (ee->rotation == 270) evas_event_feed_mouse_move(ee->evas, y, ee->w - x - 1, timestamp, NULL); } - + static int _ecore_evas_directfb_event_key_down(void *data __UNUSED__, int type __UNUSED__, void *event) @@ -144,9 +148,8 @@ _ecore_evas_directfb_event_key_down(void *data __UNUSED__, int type __UNUSED__, ee = _ecore_evas_directfb_match(e->win); if (!ee) return 1; /* pass on event */ - evas_event_feed_key_down(ee->evas, e->keyname, e->keysymbol, e->key_compose, NULL, e->time, NULL); + evas_event_feed_key_down(ee->evas, e->name, NULL, e->string, e->key_compose, e->time, NULL); return 1; - } static int @@ -159,9 +162,8 @@ _ecore_evas_directfb_event_key_up(void *data __UNUSED__, int type __UNUSED__, vo ee = _ecore_evas_directfb_match(e->win); if (!ee) return 1; /* pass on event */ - evas_event_feed_key_up(ee->evas, e->keyname, e->keysymbol, e->key_compose, NULL, e->time, NULL); + evas_event_feed_key_up(ee->evas, e->name, NULL, e->string, e->key_compose, e->time, NULL); return 1; - } static int @@ -176,7 +178,6 @@ _ecore_evas_directfb_event_motion(void *data __UNUSED__, int type __UNUSED__, vo if (!ee) return 1; /* pass on event */ _ecore_evas_directfb_mouse_move_process(ee, e->x, e->y, e->time); return 1; - } static int @@ -283,7 +284,6 @@ _ecore_evas_directfb_event_lost_focus(void *data __UNUSED__, int type __UNUSED__ ee->prop.focused = 0; return 1; } - int _ecore_evas_directfb_shutdown(void) @@ -478,13 +478,13 @@ _ecore_evas_directfb_fullscreen_set(Ecore_Evas *ee, int on) } } einfo = (Evas_Engine_Info_DirectFB *)evas_engine_info_get(ee->evas); - if(einfo) + if (einfo) { einfo->info.surface = ee->engine.directfb.window->surface; evas_engine_info_set(ee->evas, (Evas_Engine_Info *)einfo); } ee->prop.fullscreen = on; - if(resized) + if (resized) { if(ee->func.fn_resize) ee->func.fn_resize(ee); } @@ -506,14 +506,14 @@ static const Ecore_Evas_Engine_Func _ecore_directfb_engine_func = NULL, /* cb mouse out */ NULL, /* cb pre render */ NULL, /* cb post render */ - _ecore_evas_directfb_move, /* move */ + _ecore_evas_directfb_move, /* move */ NULL, /* managed move */ _ecore_evas_directfb_resize, /* resize */ NULL, /* move resize */ NULL,//_ecore_evas_directfb_rotation_set,/* rotation */ - _ecore_evas_directfb_shaped_set,/* shaped */ - _ecore_evas_directfb_show, /* show */ - _ecore_evas_directfb_hide, /* hide */ + _ecore_evas_directfb_shaped_set, /* shaped */ + _ecore_evas_directfb_show, /* show */ + _ecore_evas_directfb_hide, /* hide */ NULL, /* raise */ NULL, /* lower */ NULL, /* title set */ @@ -522,7 +522,7 @@ static const Ecore_Evas_Engine_Func _ecore_directfb_engine_func = NULL, /* size max */ NULL, /* size base */ NULL, /* size step */ - _ecore_evas_directfb_cursor_set,/* cursor set */ + _ecore_evas_directfb_cursor_set, /* cursor set */ NULL, /* layer set */ _ecore_evas_directfb_focus_set, /* focus */ NULL, /* iconified */ @@ -556,10 +556,7 @@ ecore_evas_directfb_new(const char *disp_name, int windowed, int x, int y, int w #ifdef BUILD_ECORE_EVAS_DIRECTFB Evas_Engine_Info_DirectFB *einfo; Ecore_Evas *ee; - Ecore_DirectFB_Window *window; - - int rmethod; rmethod = evas_render_method_lookup("directfb"); @@ -576,7 +573,6 @@ ecore_evas_directfb_new(const char *disp_name, int windowed, int x, int y, int w if (disp_name) ee->name = strdup(disp_name); if (w < 1) w = 1; - if (h < 1) h = 1; ee->rotation = 0; @@ -587,16 +583,6 @@ ecore_evas_directfb_new(const char *disp_name, int windowed, int x, int y, int w ee->h = h; ee->prop.layer = 1; ee->prop.fullscreen = 0; - /*ee->prop.max.w = 0; - ee->prop.max.h = 0; - ee->prop.layer = 0; - ee->prop.focused = 1; - ee->prop.borderless = 0; - ee->prop.override = 1; - ee->prop.maximized = 0; - ee->prop.withdrawn = 0; - ee->prop.sticky = 0;*/ - //ee->prop.cursor.object = 0; /* init evas here */ ee->evas = evas_new(); diff --git a/legacy/ecore/src/lib/ecore_evas/ecore_evas_private.h b/legacy/ecore/src/lib/ecore_evas/ecore_evas_private.h index 1124a43a6d..da482723de 100644 --- a/legacy/ecore/src/lib/ecore_evas/ecore_evas_private.h +++ b/legacy/ecore/src/lib/ecore_evas/ecore_evas_private.h @@ -143,10 +143,7 @@ struct _Ecore_Evas_Engine #endif #ifdef BUILD_ECORE_EVAS_DIRECTFB struct { - Ecore_DirectFB_Window *window; - /*IDirectFBWindow *window; - DirectFBSurface *surface; - DirectFBWindowID id;*/ + Ecore_DirectFB_Window *window; } directfb; #endif };