[Goodies-commits] r6853 - xfce4-xkb-plugin/trunk/panel-plugin
Alexander Iliev
sasoiliev at xfce.org
Fri Mar 6 14:10:35 CET 2009
Author: sasoiliev
Date: 2009-03-06 13:10:34 +0000 (Fri, 06 Mar 2009)
New Revision: 6853
Modified:
xfce4-xkb-plugin/trunk/panel-plugin/xfce4-xkb-plugin.c
xfce4-xkb-plugin/trunk/panel-plugin/xkb-config.c
xfce4-xkb-plugin/trunk/panel-plugin/xkb-settings-dialog.c
Log:
Added an option to not select key combination to change layout
Modified: xfce4-xkb-plugin/trunk/panel-plugin/xfce4-xkb-plugin.c
===================================================================
--- xfce4-xkb-plugin/trunk/panel-plugin/xfce4-xkb-plugin.c 2009-03-06 00:00:37 UTC (rev 6852)
+++ xfce4-xkb-plugin/trunk/panel-plugin/xfce4-xkb-plugin.c 2009-03-06 13:10:34 UTC (rev 6853)
@@ -268,7 +268,11 @@
xfce_rc_write_entry (rcfile, "model", xkb->settings->kbd_config->model);
xfce_rc_write_entry (rcfile, "layouts", xkb->settings->kbd_config->layouts);
xfce_rc_write_entry (rcfile, "variants", xkb->settings->kbd_config->variants);
- xfce_rc_write_entry (rcfile, "toggle_option", xkb->settings->kbd_config->toggle_option);
+
+ if (xkb->settings->kbd_config->toggle_option == NULL)
+ xfce_rc_write_entry (rcfile, "toggle_option", "");
+ else xfce_rc_write_entry (rcfile, "toggle_option", xkb->settings->kbd_config->toggle_option);
+
if (xkb->settings->kbd_config->compose_key_position == NULL)
xfce_rc_write_entry (rcfile, "compose_key_position", "");
else xfce_rc_write_entry (rcfile, "compose_key_position", xkb->settings->kbd_config->compose_key_position);
Modified: xfce4-xkb-plugin/trunk/panel-plugin/xkb-config.c
===================================================================
--- xfce4-xkb-plugin/trunk/panel-plugin/xkb-config.c 2009-03-06 00:00:37 UTC (rev 6852)
+++ xfce4-xkb-plugin/trunk/panel-plugin/xkb-config.c 2009-03-06 13:10:34 UTC (rev 6853)
@@ -287,7 +287,11 @@
config->config_rec->layouts = g_strsplit_set (settings->kbd_config->layouts, ",", 0);
config->config_rec->variants = g_strsplit_set (settings->kbd_config->variants, ",", 0);
- options = g_strdup (settings->kbd_config->toggle_option);
+ if (settings->kbd_config->toggle_option
+ && strlen (settings->kbd_config->toggle_option) > 0)
+ options = g_strdup (settings->kbd_config->toggle_option);
+ else options = "";
+
if (settings->kbd_config->compose_key_position
&& strlen (settings->kbd_config->compose_key_position) > 0)
{
Modified: xfce4-xkb-plugin/trunk/panel-plugin/xkb-settings-dialog.c
===================================================================
--- xfce4-xkb-plugin/trunk/panel-plugin/xkb-settings-dialog.c 2009-03-06 00:00:37 UTC (rev 6852)
+++ xfce4-xkb-plugin/trunk/panel-plugin/xkb-settings-dialog.c 2009-03-06 13:10:34 UTC (rev 6853)
@@ -130,6 +130,16 @@
XklConfigItem * config_item,
t_xkb *xkb)
{
+ /* add a possibility to set no toggle layout combination */
+ if (config_item == NULL)
+ {
+ gtk_list_store_append (xkb->toggle_options_store, &iter);
+ gtk_list_store_set (xkb->toggle_options_store, &iter,
+ DESC, "-",
+ NOM, "", -1);
+ return;
+ }
+
char *utf_option_name = xci_desc_to_utf8 (config_item);
gtk_list_store_append (xkb->toggle_options_store, &iter);
gtk_list_store_set (xkb->toggle_options_store, &iter,
@@ -181,13 +191,16 @@
t_xkb_kbd_config *config = xkb->settings->kbd_config;
- /* dirty insurance hack */
+ model = GTK_TREE_MODEL (xkb->toggle_options_store);
+ gtk_tree_model_get_iter_first (model, &iter);
+ gtk_tree_model_get (model, &iter, NOM, &id, -1);
+
if (config->toggle_option == NULL)
+ {
+ gtk_combo_box_set_active_iter (GTK_COMBO_BOX (xkb->toggle_options_combo), &iter);
return;
+ }
- model = GTK_TREE_MODEL (xkb->toggle_options_store);
- gtk_tree_model_get_iter_first (model, &iter);
- gtk_tree_model_get (model, &iter, NOM, &id, -1);
if (strcmp (id, config->toggle_option) == 0 )
{
gtk_combo_box_set_active_iter (GTK_COMBO_BOX (xkb->toggle_options_combo), &iter);
@@ -502,6 +515,7 @@
xfce_framebox_add (XFCE_FRAMEBOX (frame), xkb->toggle_options_combo);
gtk_cell_layout_pack_start (GTK_CELL_LAYOUT (xkb->toggle_options_combo), renderer, TRUE);
gtk_cell_layout_add_attribute (GTK_CELL_LAYOUT (xkb->toggle_options_combo), renderer, "text", 0);
+ xkb_settings_add_toggle_options_to_list (NULL, NULL, xkb);
xkl_config_registry_foreach_option (registry,
"grp",
(ConfigItemProcessFunc) xkb_settings_add_toggle_options_to_list,
@@ -826,7 +840,9 @@
{
gtk_tree_model_get (model, &iter, NOM, &toggle_option, -1);
g_free (kbd_config->toggle_option);
- kbd_config->toggle_option = g_strdup (toggle_option);
+ if (strcmp ("", toggle_option) == 0)
+ kbd_config->toggle_option = NULL;
+ else kbd_config->toggle_option = g_strdup (toggle_option);
}
model = GTK_TREE_MODEL (xkb->compose_key_options_store);
More information about the Goodies-commits
mailing list