<URL: http://bugs.freeciv.org/Ticket/Display.html?id=12188 >
As I recently discovered, GDK_t (the letter t) was hijacked in client/gui-gtk-2.0/gui_main.c keyboard_handler(), just as GDK_escape (PR#39924), and a host of others. That breaks every keyboard + 't' combination. This puts it in a menu, using the menu string from SDL, so no new translation is needed. Not perfect, but better than nothing.... Dunno why nobody fixed this in 2 years. Hopefully, this fixes the Alt-t problem for you. (Cannot test, have no Alt-t commands in English.) So, I'll commit immediately, for everybody else to test. Committed S2_1 revision 14151.
Index: client/gui-gtk-2.0/gui_main.c =================================================================== --- client/gui-gtk-2.0/gui_main.c (revision 14150) +++ client/gui-gtk-2.0/gui_main.c (working copy) @@ -542,10 +542,6 @@ key_cancel_action(); return TRUE; - case GDK_t: - key_city_workers(w, ev); - return TRUE; - default: break; }; Index: client/gui-gtk-2.0/menu.c =================================================================== --- client/gui-gtk-2.0/menu.c (revision 14150) +++ client/gui-gtk-2.0/menu.c (working copy) @@ -100,6 +100,7 @@ MENU_VIEW_SHOW_CITY_NAMES, MENU_VIEW_SHOW_CITY_GROWTH_TURNS, MENU_VIEW_SHOW_CITY_PRODUCTIONS, + MENU_VIEW_SHOW_CITY_WORKERS, MENU_VIEW_SHOW_TERRAIN, MENU_VIEW_SHOW_COASTLINE, MENU_VIEW_SHOW_ROADS_RAILS, @@ -321,6 +322,9 @@ if (draw_city_productions ^ GTK_CHECK_MENU_ITEM(widget)->active) key_city_productions_toggle(); break; + case MENU_VIEW_SHOW_CITY_WORKERS: + key_city_workers(); + break; case MENU_VIEW_SHOW_TERRAIN: if (draw_terrain ^ GTK_CHECK_MENU_ITEM(widget)->active) { key_terrain_toggle(); @@ -764,10 +768,11 @@ { "/" N_("View") "/" N_("City _Names"), "<control>n", view_menu_callback, MENU_VIEW_SHOW_CITY_NAMES, "<CheckItem>" }, { "/" N_("View") "/" N_("City G_rowth"), "<control>r", - view_menu_callback, MENU_VIEW_SHOW_CITY_GROWTH_TURNS, - "<CheckItem>" }, + view_menu_callback, MENU_VIEW_SHOW_CITY_GROWTH_TURNS, "<CheckItem>" }, { "/" N_("View") "/" N_("City _Productions"), "<control>p", view_menu_callback, MENU_VIEW_SHOW_CITY_PRODUCTIONS, "<CheckItem>" }, + { "/" N_("View") "/" N_("Draw city worker map grid"), "t", + view_menu_callback, MENU_VIEW_SHOW_CITY_WORKERS }, { "/" N_("View") "/sep1", NULL, NULL, 0, "<Separator>" }, { "/" N_("View") "/" N_("Terrain"), NULL, Index: client/gui-gtk-2.0/mapctrl.c =================================================================== --- client/gui-gtk-2.0/mapctrl.c (revision 14150) +++ client/gui-gtk-2.0/mapctrl.c (working copy) @@ -458,7 +458,7 @@ /************************************************************************** Draws the on the map the tiles the given city is using **************************************************************************/ -void key_city_workers(GtkWidget *w, GdkEventKey *ev) +void key_city_workers(void) { int x, y; Index: client/gui-gtk-2.0/mapctrl.h =================================================================== --- client/gui-gtk-2.0/mapctrl.h (revision 14150) +++ client/gui-gtk-2.0/mapctrl.h (working copy) @@ -19,8 +19,6 @@ #include "mapctrl_g.h" -void key_city_workers(GtkWidget *w, GdkEventKey *ev); - gboolean butt_release_mapcanvas(GtkWidget *w, GdkEventButton *ev, gpointer data); gboolean butt_down_mapcanvas(GtkWidget *w, GdkEventButton *ev, gpointer data); gboolean butt_down_overviewcanvas(GtkWidget *w, GdkEventButton *ev, gpointer data); @@ -29,6 +27,8 @@ gboolean move_overviewcanvas(GtkWidget *w, GdkEventMotion *ev, gpointer data); void center_on_unit(void); +void key_city_workers(void); + void popupinfo_popdown_callback(GtkWidget *w, gpointer data); #endif /* FC__MAPCTRL_H */
_______________________________________________ Freeciv-dev mailing list Freeciv-dev@gna.org https://mail.gna.org/listinfo/freeciv-dev