Readd e_kbd files. These do need to be part of illume2.

SVN revision: 43856
This commit is contained in:
Christopher Michael 2009-11-21 02:00:28 +00:00
parent d534dbb0f0
commit 9cd4ab6fab
5 changed files with 1163 additions and 5 deletions

View File

@ -23,7 +23,9 @@ module_la_SOURCES = e_mod_main.c \
e_mod_layout.h \
e_mod_layout.c \
e_mod_layout_illume.c \
e_mod_layout_illume.h
e_mod_layout_illume.h \
e_kbd.h \
e_kbd.c
module_la_LIBADD = @e_libs@ @dlopen_libs@
module_la_LDFLAGS = -module -avoid-version

1101
src/modules/illume2/e_kbd.c Normal file

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,53 @@
#ifndef E_KBD_H
#define E_KBD_H
typedef struct _E_Kbd E_Kbd;
#define E_KBD_TYPE 0xE1b0988
typedef enum _E_Kbd_Layout
{
E_KBD_LAYOUT_NONE,
E_KBD_LAYOUT_DEFAULT,
E_KBD_LAYOUT_ALPHA,
E_KBD_LAYOUT_NUMERIC,
E_KBD_LAYOUT_PIN,
E_KBD_LAYOUT_PHONE_NUMBER,
E_KBD_LAYOUT_HEX,
E_KBD_LAYOUT_TERMINAL,
E_KBD_LAYOUT_PASSWORD
} E_Kbd_Layout;
struct _E_Kbd
{
E_Object e_obj_inherit;
E_Win *win;
E_Border *border;
Ecore_Timer *delay_hide;
Ecore_Animator *animator;
Eina_List *waiting_borders;
E_Kbd_Layout layout;
double start, len;
int h;
int adjust_start, adjust, adjust_end;
unsigned char visible : 1;
unsigned char actually_visible : 1;
unsigned char disabled : 1; // if we have a real kbd plugged in
unsigned char fullscreen : 1;
};
EAPI int e_kbd_init(E_Module *m);
EAPI int e_kbd_shutdown(void);
EAPI E_Kbd *e_kbd_new(E_Zone *zone, const char *themedir, const char *syskbds, const char *sysdicts);
EAPI void e_kbd_enable(E_Kbd *kbd);
EAPI void e_kbd_disable(E_Kbd *kbd);
EAPI void e_kbd_show(E_Kbd *kbd);
EAPI void e_kbd_layout_set(E_Kbd *kbd, E_Kbd_Layout layout);
EAPI void e_kbd_hide(E_Kbd *kbd);
EAPI void e_kbd_safe_app_region_get(E_Zone *zone, int *x, int *y, int *w, int *h);
EAPI void e_kbd_fullscreen_set(E_Zone *zone, int fullscreen);
#endif

View File

@ -77,7 +77,8 @@ e_mod_layout_shutdown(void)
hook2 = NULL;
hook3 = NULL;
hook4 = NULL;
EINA_LIST_FREE(handlers, handle) ecore_event_handler_del(handle);
EINA_LIST_FREE(handlers, handle)
ecore_event_handler_del(handle);
}
//////////////////////////////////////////////////////////////////////////////
@ -171,9 +172,7 @@ illume_border_is_keyboard(E_Border *bd)
(((bd->client.icccm.title) && (!strcmp(bd->client.icccm.title, "Keyboard"))) ||
((bd->client.icccm.name) && ((!strcmp(bd->client.icccm.name, "multitap-pad")))))
&& (bd->client.netwm.state.skip_taskbar)
&& (bd->client.netwm.state.skip_pager)
)
)
&& (bd->client.netwm.state.skip_pager)))
return 1;
return 0;
}

View File

@ -1,6 +1,7 @@
#include "e.h"
#include "e_mod_main.h"
#include "e_mod_layout.h"
#include "e_kbd.h"
/* this is needed to advertise a label for the module IN the code (not just
* the .desktop file) but more specifically the api version it was compiled
@ -16,6 +17,7 @@ EAPI void *
e_modapi_init(E_Module *m)
{
/* set up the virtual keyboard */
//e_kbd_init(m);
e_mod_layout_init(m);
return m; /* return NULL on failure, anything else on success. the pointer
* returned will be set as m->data for convenience tracking */
@ -26,6 +28,7 @@ EAPI int
e_modapi_shutdown(E_Module *m)
{
e_mod_layout_shutdown();
//e_kbd_shutdown();
return 1; /* 1 for success, 0 for failure */
}