From 64de5e134570d75d7e6680c213176f4669a6c8fe Mon Sep 17 00:00:00 2001 From: Daiki Ueno Date: Fri, 18 Jun 2010 17:46:40 +0900 Subject: [PATCH] eekboard: fix initial size setting --- eek/Makefile.am | 12 +++++++---- src/eekboard.c | 56 ++++++++++++++++++++++++------------------------- 2 files changed, 36 insertions(+), 32 deletions(-) diff --git a/eek/Makefile.am b/eek/Makefile.am index 8ddcafad..b3ea6325 100644 --- a/eek/Makefile.am +++ b/eek/Makefile.am @@ -104,16 +104,20 @@ eek_HEADERS = \ $(top_srcdir)/eek/eek-layout.h \ $(top_srcdir)/eek/eek-keysym.h \ $(top_srcdir)/eek/eek-types.h \ - $(top_srcdir)/eek/eek-clutter-keyboard.h \ - $(top_srcdir)/eek/eek-clutter-section.h \ - $(top_srcdir)/eek/eek-clutter-key.h \ $(top_srcdir)/eek/eek-xkb-layout.h \ $(top_srcdir)/eek/eek-xkl-layout.h \ $(top_srcdir)/eek/eek.h \ - $(top_srcdir)/eek/eek-clutter.h \ $(top_srcdir)/eek/eek-xkb.h \ $(top_srcdir)/eek/eek-xkl.h +if HAVE_CLUTTER +eek_HEADERS += \ + $(top_srcdir)/eek/eek-clutter-keyboard.h \ + $(top_srcdir)/eek/eek-clutter-section.h \ + $(top_srcdir)/eek/eek-clutter-key.h \ + $(top_srcdir)/eek/eek-clutter.h +endif + eek-keysym.c: eek-special-keysym-labels.h eek-unicode-keysym-labels.h eek-keyname-keysym-labels.h eek-special-keysym-labels.h: special-keysym-labels.txt diff --git a/src/eekboard.c b/src/eekboard.c index e7d349d7..92b54c9c 100644 --- a/src/eekboard.c +++ b/src/eekboard.c @@ -394,6 +394,33 @@ create_menus (Eekboard *eekboard, create_layouts_menu (eekboard, ui_manager); } +static GtkWidget * +create_widget_gtk (Eekboard *eekboard, + gint initial_width, + gint initial_height) +{ + EekBounds bounds; + + bounds.x = bounds.y = 0; + bounds.width = initial_width; + bounds.height = initial_height; + + eekboard->keyboard = eek_gtk_keyboard_new (); + eek_keyboard_set_layout (eekboard->keyboard, eekboard->layout); + eek_element_set_bounds (EEK_ELEMENT(eekboard->keyboard), &bounds); + g_signal_connect (eekboard->keyboard, "key-pressed", + G_CALLBACK(on_key_pressed), eekboard); + g_signal_connect (eekboard->keyboard, "key-released", + G_CALLBACK(on_key_released), eekboard); + + eekboard->widget = + eek_gtk_keyboard_get_widget (EEK_GTK_KEYBOARD (eekboard->keyboard)); + eek_element_get_bounds (EEK_ELEMENT(eekboard->keyboard), &bounds); + eekboard->width = bounds.width; + eekboard->height = bounds.height; + return eekboard->widget; +} + #if HAVE_CLUTTER_GTK static GtkWidget * create_widget_clutter (Eekboard *eekboard, @@ -423,41 +450,14 @@ create_widget_clutter (Eekboard *eekboard, actor = eek_clutter_keyboard_get_actor (EEK_CLUTTER_KEYBOARD(eekboard->keyboard)); - clutter_actor_get_size (actor, &eekboard->width, &eekboard->height); clutter_container_add_actor (CLUTTER_CONTAINER(stage), actor); - clutter_actor_set_size (stage, eekboard->width, eekboard->height); - return eekboard->widget; -} -#endif - -static GtkWidget * -create_widget_gtk (Eekboard *eekboard, - gint initial_width, - gint initial_height) -{ - EekBounds bounds; - - bounds.x = bounds.y = 0; - bounds.width = initial_width; - bounds.height = initial_height; - - eekboard->keyboard = eek_gtk_keyboard_new (); - eek_keyboard_set_layout (eekboard->keyboard, eekboard->layout); - eek_element_set_bounds (EEK_ELEMENT(eekboard->keyboard), &bounds); - g_signal_connect (eekboard->keyboard, "key-pressed", - G_CALLBACK(on_key_pressed), eekboard); - g_signal_connect (eekboard->keyboard, "key-released", - G_CALLBACK(on_key_released), eekboard); - - eekboard->widget = - eek_gtk_keyboard_get_widget (EEK_GTK_KEYBOARD (eekboard->keyboard)); eek_element_get_bounds (EEK_ELEMENT(eekboard->keyboard), &bounds); + clutter_actor_set_size (stage, bounds.width, bounds.height); eekboard->width = bounds.width; eekboard->height = bounds.height; return eekboard->widget; } -#if HAVE_CLUTTER_GTK static GtkWidget * create_widget (Eekboard *eekboard, gint initial_width,