#include <glib.h>
#include <gtk/gtk.h>
#include <hildon/hildon-caption.h>
+#include <hildon/hildon.h>
#include <libosso.h>
#include <gconf/gconf.h>
#include <gconf/gconf-client.h>
#include "prefs.h"
#include "hw.h"
-#ifdef HAVE_MAEMO5
#define GETTEXT_PACKAGE "osso-applet-textinput"
-
-#include <hildon/hildon.h>
#include <glib/gi18n-lib.h>
-#endif
struct layout {
gchar *model;
struct data {
GList *layouts;
-#ifdef HAVE_MAEMO5
HildonTouchSelector *combo;
-#else
- GtkComboBox *combo;
-#endif
};
static char *strip(char *s)
g_list_free(list);
}
-#ifdef HAVE_MAEMO5
static GtkWidget *start(GConfClient *client, GtkWidget *win, void **data)
{
struct data *d;
omodel = get_str(client, "int_kb_model");
olayout = get_str(client, "int_kb_layout");
d->layouts = get_layouts("/usr/share/X11/xkb/symbols/nokia_vndr/rx-51", "nokiarx51", NULL);
- d->layouts = get_layouts("/usr/share/X11/xkb/symbols/nokia_vndr/ukbdrx51", "ukbdrx51", d->layouts);
+ d->layouts = get_layouts("/usr/share/X11/xkb/symbols/nokia_vndr/ukeyboard", "ukeyboard", d->layouts);
d->combo = HILDON_TOUCH_SELECTOR(hildon_touch_selector_new_text());
return button;
}
-#else
-static GtkWidget *start(GConfClient *client, GtkWidget *win, void **data)
-{
- struct data *d;
- GList *item;
- gchar *omodel, *olayout;
- struct layout *lay;
- unsigned i;
-
- GtkBox *vbox;
- GtkSizeGroup *group;
- GtkWidget *align;
-
- (void)win;
-
- if (!internal_kbd) {
- *data = NULL;
- return NULL;
- }
-
- d = g_malloc(sizeof(struct data));
-
- omodel = get_str(client, "int_kb_model");
- olayout = get_str(client, "int_kb_layout");
- d->layouts = get_layouts("/usr/share/X11/xkb/symbols/nokia_vndr/rx-44", "nokiarx44", NULL);
- d->layouts = get_layouts("/usr/share/X11/xkb/symbols/nokia_vndr/ukbdrx44", "ukbdrx44", d->layouts);
-
- vbox = GTK_BOX(gtk_vbox_new(FALSE, 0));
- group = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
-
- d->combo = GTK_COMBO_BOX(gtk_combo_box_new_text());
- for (item = d->layouts, i = 0; item; item = g_list_next(item), i++) {
- lay = item->data;
- gtk_combo_box_append_text(d->combo, lay->name);
- if (omodel && olayout && !strcmp(lay->model, omodel) && !strcmp(lay->layout, olayout))
- gtk_combo_box_set_active(d->combo, i);
- }
- gtk_box_pack_start_defaults(vbox, hildon_caption_new(group, "Keyboard layout",
- GTK_WIDGET(d->combo), NULL, HILDON_CAPTION_MANDATORY));
-
- g_free(olayout);
- g_free(omodel);
- g_object_unref(G_OBJECT(group));
-
- *data = d;
-
- align = gtk_alignment_new(0, 0, 1, 0);
- gtk_container_add(GTK_CONTAINER(align), GTK_WIDGET(vbox));
- return align;
-}
-#endif
static void action(GConfClient *client, void *data)
{
if (!d)
return;
-#ifdef HAVE_MAEMO5
res = hildon_touch_selector_get_active(d->combo, 0);
-#else
- res = gtk_combo_box_get_active(d->combo);
-#endif
if (res >= 0) {
lay = g_list_nth_data(d->layouts, res);
if (lay) {