"base/theme/modules/xkbswitch",
"e/modules/xkbswitch/main");
edje_object_part_text_set(inst->o_xkbswitch, "e.text.label",
- inst->layout ? e_xkb_layout_name_reduce(inst->layout->name) : "?");
+ inst->layout ? e_xkb_layout_name_reduce(inst->layout->name) : _("NONE"));
/* The gadcon client */
inst->gcc = e_gadcon_client_new(gc, gcname, id, style, inst->o_xkbswitch);
inst->gcc->data = inst;
else if ((ev->button == 1) && (!inst->lmenu)) /* Left-click layout menu */
{
Evas_Coord x, y, w, h;
- int cx, cy;
+ int cx, cy, dir;
+ E_Menu_Item *mi;
/* Coordinates and sizing */
evas_object_geometry_get(inst->o_xkbswitch, &x, &y, &w, &h);
if (!inst->lmenu) inst->lmenu = e_menu_new();
- if (inst->lmenu)
+ mi = e_menu_item_new(inst->lmenu);
+
+ e_menu_item_label_set(mi, _("Settings"));
+ e_util_menu_item_theme_icon_set(mi, "preferences-system");
+ e_menu_item_callback_set(mi, _e_xkb_cb_menu_configure, NULL);
+
+ if (!e_config->xkb.dont_touch_my_damn_keyboard)
{
E_Config_XKB_Layout *cl, *cur;
- E_Menu_Item *mi;
Eina_List *l;
- int dir;
char buf[4096];
mi = e_menu_item_new(inst->lmenu);
-
- e_menu_item_label_set(mi, _("Settings"));
- e_util_menu_item_theme_icon_set(mi, "preferences-system");
- e_menu_item_callback_set(mi, _e_xkb_cb_menu_configure, NULL);
-
- mi = e_menu_item_new(inst->lmenu);
e_menu_item_separator_set(mi, 1);
cur = e_xkb_layout_get();
e_menu_item_label_set(mi, buf);
e_menu_item_callback_set(mi, _e_xkb_cb_lmenu_set, cl);
}
+ }
- /* Deactivate callback */
- e_menu_post_deactivate_callback_set(inst->lmenu,
- _e_xkb_cb_lmenu_post, inst);
- /* Proper menu orientation */
- switch (inst->gcc->gadcon->orient)
- {
- case E_GADCON_ORIENT_TOP:
- dir = E_MENU_POP_DIRECTION_DOWN;
- break;
-
- case E_GADCON_ORIENT_BOTTOM:
- dir = E_MENU_POP_DIRECTION_UP;
- break;
-
- case E_GADCON_ORIENT_LEFT:
- dir = E_MENU_POP_DIRECTION_RIGHT;
- break;
-
- case E_GADCON_ORIENT_RIGHT:
- dir = E_MENU_POP_DIRECTION_LEFT;
- break;
-
- case E_GADCON_ORIENT_CORNER_TL:
- dir = E_MENU_POP_DIRECTION_DOWN;
- break;
-
- case E_GADCON_ORIENT_CORNER_TR:
- dir = E_MENU_POP_DIRECTION_DOWN;
- break;
-
- case E_GADCON_ORIENT_CORNER_BL:
- dir = E_MENU_POP_DIRECTION_UP;
- break;
-
- case E_GADCON_ORIENT_CORNER_BR:
- dir = E_MENU_POP_DIRECTION_UP;
- break;
-
- case E_GADCON_ORIENT_CORNER_LT:
- dir = E_MENU_POP_DIRECTION_RIGHT;
- break;
-
- case E_GADCON_ORIENT_CORNER_RT:
- dir = E_MENU_POP_DIRECTION_LEFT;
- break;
-
- case E_GADCON_ORIENT_CORNER_LB:
- dir = E_MENU_POP_DIRECTION_RIGHT;
- break;
-
- case E_GADCON_ORIENT_CORNER_RB:
- dir = E_MENU_POP_DIRECTION_LEFT;
- break;
-
- case E_GADCON_ORIENT_FLOAT:
- case E_GADCON_ORIENT_HORIZ:
- case E_GADCON_ORIENT_VERT:
- default:
- dir = E_MENU_POP_DIRECTION_AUTO;
- break;
- }
+ /* Deactivate callback */
+ e_menu_post_deactivate_callback_set(inst->lmenu,
+ _e_xkb_cb_lmenu_post, inst);
+ /* Proper menu orientation */
+ switch (inst->gcc->gadcon->orient)
+ {
+ case E_GADCON_ORIENT_TOP:
+ dir = E_MENU_POP_DIRECTION_DOWN;
+ break;
+
+ case E_GADCON_ORIENT_BOTTOM:
+ dir = E_MENU_POP_DIRECTION_UP;
+ break;
+
+ case E_GADCON_ORIENT_LEFT:
+ dir = E_MENU_POP_DIRECTION_RIGHT;
+ break;
+
+ case E_GADCON_ORIENT_RIGHT:
+ dir = E_MENU_POP_DIRECTION_LEFT;
+ break;
+
+ case E_GADCON_ORIENT_CORNER_TL:
+ dir = E_MENU_POP_DIRECTION_DOWN;
+ break;
+
+ case E_GADCON_ORIENT_CORNER_TR:
+ dir = E_MENU_POP_DIRECTION_DOWN;
+ break;
+
+ case E_GADCON_ORIENT_CORNER_BL:
+ dir = E_MENU_POP_DIRECTION_UP;
+ break;
+
+ case E_GADCON_ORIENT_CORNER_BR:
+ dir = E_MENU_POP_DIRECTION_UP;
+ break;
+
+ case E_GADCON_ORIENT_CORNER_LT:
+ dir = E_MENU_POP_DIRECTION_RIGHT;
+ break;
+
+ case E_GADCON_ORIENT_CORNER_RT:
+ dir = E_MENU_POP_DIRECTION_LEFT;
+ break;
+
+ case E_GADCON_ORIENT_CORNER_LB:
+ dir = E_MENU_POP_DIRECTION_RIGHT;
+ break;
+
+ case E_GADCON_ORIENT_CORNER_RB:
+ dir = E_MENU_POP_DIRECTION_LEFT;
+ break;
+
+ case E_GADCON_ORIENT_FLOAT:
+ case E_GADCON_ORIENT_HORIZ:
+ case E_GADCON_ORIENT_VERT:
+ default:
+ dir = E_MENU_POP_DIRECTION_AUTO;
+ break;
+ }
- e_gadcon_locked_set(inst->gcc->gadcon, 1);
+ e_gadcon_locked_set(inst->gcc->gadcon, 1);
- /* We display not relatively to the gadget, but similarly to
- * the start menu - thus the need for direction etc.
- */
- e_menu_activate_mouse(inst->lmenu,
- e_util_zone_current_get
- (e_manager_current_get()),
- x, y, w, h, dir, ev->timestamp);
- }
+ /* We display not relatively to the gadget, but similarly to
+ * the start menu - thus the need for direction etc.
+ */
+ e_menu_activate_mouse(inst->lmenu,
+ e_util_zone_current_get
+ (e_manager_current_get()),
+ x, y, w, h, dir, ev->timestamp);
}
else if (ev->button == 2) /* Middle click */
e_xkb_layout_next();