eekboard: react to key events by default.

This commit is contained in:
Daiki Ueno
2010-08-11 17:36:33 +09:00
parent 3d5160455a
commit 8bc7b754bc
4 changed files with 114 additions and 93 deletions

View File

@ -492,9 +492,9 @@ on_button_event (GtkWidget *widget,
GdkEventButton *event,
gpointer user_data)
{
EekGtkKeyboard *keyboard = EEK_GTK_KEYBOARD(user_data), *key;
EekGtkKeyboard *keyboard = EEK_GTK_KEYBOARD(user_data);
EekGtkKeyboardPrivate *priv = EEK_GTK_KEYBOARD_GET_PRIVATE(keyboard);
EekBounds bounds;
EekKey *key;
gdouble x, y;
x = (gdouble)event->x / priv->scale;
@ -503,7 +503,7 @@ on_button_event (GtkWidget *widget,
if (key)
switch (event->type) {
case GDK_BUTTON_PRESS:
press_key (EEK_GTK_KEYBOARD(keyboard), EEK_KEY(key));
press_key (EEK_GTK_KEYBOARD(keyboard), key);
return TRUE;
case GDK_BUTTON_RELEASE:
release_key (EEK_GTK_KEYBOARD(keyboard));

View File

@ -514,13 +514,15 @@ eek_keyboard_find_section_by_position (EekKeyboard *keyboard,
{
EekBounds bounds;
EekPoint point;
EekElement *element;
eek_element_get_bounds (EEK_ELEMENT(keyboard), &bounds);
point.x = x - bounds.x;
point.y = y - bounds.y;
return eek_container_find (EEK_CONTAINER(keyboard),
compare_section_by_position,
&point);
element = eek_container_find (EEK_CONTAINER(keyboard),
compare_section_by_position,
&point);
return EEK_SECTION(element);
}
EekKey *

View File

@ -85,7 +85,6 @@ eek_point_get_type (void)
void
eek_point_rotate (EekPoint *point, gint angle)
{
EekPoint *p;
gdouble r, phi;
phi = atan2 (point->y, point->x);