summaryrefslogtreecommitdiff
path: root/libgnomekbd/gkbd-configuration.c
diff options
context:
space:
mode:
authorSergey V. Udaltsov <svu@gnome.org>2011-01-04 21:13:35 +0000
committerSergey V. Udaltsov <svu@gnome.org>2011-01-04 21:13:35 +0000
commit2e76ce5ece796a39fc9af690b48a06c2b67d32f5 (patch)
treed556516f4806d911bb3b3e4eb2532864fa84decd /libgnomekbd/gkbd-configuration.c
parentd7786f60cca7353a83183afbaccc8e2182a464fb (diff)
downloadlibgnomekbd-2e76ce5ece796a39fc9af690b48a06c2b67d32f5.tar.gz
added gkbd_configuration_get_current_group
For js API
Diffstat (limited to 'libgnomekbd/gkbd-configuration.c')
-rw-r--r--libgnomekbd/gkbd-configuration.c40
1 files changed, 25 insertions, 15 deletions
diff --git a/libgnomekbd/gkbd-configuration.c b/libgnomekbd/gkbd-configuration.c
index 4971887..a592683 100644
--- a/libgnomekbd/gkbd-configuration.c
+++ b/libgnomekbd/gkbd-configuration.c
@@ -109,8 +109,10 @@ gkbd_configuration_load_group_names (GkbdConfiguration * configuration,
xklrec->layouts,
(const char **)
xklrec->variants,
- &priv->short_group_names,
- &priv->full_group_names))
+ &priv->
+ short_group_names,
+ &priv->
+ full_group_names))
{
/* We just populate no short names (remain NULL) -
* full names are going to be used anyway */
@@ -356,8 +358,8 @@ gkbd_configuration_get_image_filename (GkbdConfiguration * configuration,
{
if (!configuration->priv->ind_cfg.show_flags)
return NULL;
- return (gchar *) g_slist_nth_data (configuration->priv->
- ind_cfg.image_filenames, group);
+ return (gchar *) g_slist_nth_data (configuration->priv->ind_cfg.
+ image_filenames, group);
}
/**
@@ -383,8 +385,8 @@ gkbd_configuration_get_current_tooltip (GkbdConfiguration * configuration)
return NULL;
return g_strdup_printf (configuration->priv->tooltips_format,
- configuration->
- priv->full_group_names[state->group]);
+ configuration->priv->
+ full_group_names[state->group]);
}
gboolean
@@ -405,8 +407,8 @@ gkbd_configuration_extract_layout_name (GkbdConfiguration * configuration,
if (xkl_engine_get_features (engine) &
XKLF_MULTIPLE_LAYOUTS_SUPPORTED) {
char *full_layout_name =
- configuration->priv->
- kbd_cfg.layouts_variants[group];
+ configuration->priv->kbd_cfg.
+ layouts_variants[group];
char *variant_name;
if (!gkbd_keyboard_config_split_items
(full_layout_name, &layout_name,
@@ -446,11 +448,19 @@ gkbd_configuration_lock_next_group (GkbdConfiguration * configuration)
}
void
-gkbd_configuration_lock_group (GkbdConfiguration * configuration, guint group)
+gkbd_configuration_lock_group (GkbdConfiguration * configuration,
+ guint group)
{
xkl_engine_lock_group (configuration->priv->engine, group);
}
+guint
+gkbd_configuration_get_current_group (GkbdConfiguration * configuration)
+{
+ XklState *state =
+ xkl_engine_get_current_state (configuration->priv->engine);
+ return state ? state->group : 0;
+}
/**
* gkbd_configuration_get_indicator_config:
@@ -509,10 +519,10 @@ gkbd_configuration_load_images (GkbdConfiguration * configuration)
GSList *image_filename, *images;
images = NULL;
- gkbd_indicator_config_load_image_filenames (&configuration->priv->
- ind_cfg,
- &configuration->priv->
- kbd_cfg);
+ gkbd_indicator_config_load_image_filenames (&configuration->
+ priv->ind_cfg,
+ &configuration->
+ priv->kbd_cfg);
if (!configuration->priv->ind_cfg.show_flags)
return NULL;
@@ -548,8 +558,8 @@ gkbd_configuration_free_images (GkbdConfiguration * configuration,
GdkPixbuf *pi;
GSList *img_node;
- gkbd_indicator_config_free_image_filenames (&configuration->priv->
- ind_cfg);
+ gkbd_indicator_config_free_image_filenames (&configuration->
+ priv->ind_cfg);
while ((img_node = images) != NULL) {
pi = GDK_PIXBUF (img_node->data);