mirror of
git://xwords.git.sourceforge.net/gitroot/xwords/xwords
synced 2025-02-05 20:45:49 +01:00
replace scan that tries to connect to all paired devices, taking 20
seconds to discover that some 20-miles-away device isn't here and resisting use of concurrency, with simple listing of paired devices. If user tries to invite a headset, try and fail with an error message. Fix up re-invite and detection of whether players are missing to support this.
This commit is contained in:
parent
aa566ad1f0
commit
2beb897b2c
10 changed files with 325 additions and 305 deletions
|
@ -369,8 +369,8 @@ public final class R {
|
||||||
/** Another paragraph in the about dialog
|
/** Another paragraph in the about dialog
|
||||||
*/
|
*/
|
||||||
public static final int about_web=0x7f0501de;
|
public static final int about_web=0x7f0501de;
|
||||||
public static final int add_done_fmt=0x7f050292;
|
public static final int add_done_fmt=0x7f050290;
|
||||||
public static final int add_to_study_fmt=0x7f05028a;
|
public static final int add_to_study_fmt=0x7f050288;
|
||||||
/** Debugging stuff. No point in localizing it.
|
/** Debugging stuff. No point in localizing it.
|
||||||
*/
|
*/
|
||||||
public static final int advanced=0x7f050076;
|
public static final int advanced=0x7f050076;
|
||||||
|
@ -384,6 +384,7 @@ public final class R {
|
||||||
/** The name of the app. Not localized!
|
/** The name of the app. Not localized!
|
||||||
*/
|
*/
|
||||||
public static final int app_name=0x7f050001;
|
public static final int app_name=0x7f050001;
|
||||||
|
public static final int app_not_found_fmt=0x7f0502cc;
|
||||||
public static final int app_version=0x7f050000;
|
public static final int app_version=0x7f050000;
|
||||||
/** the background color of the area outside the board,
|
/** the background color of the area outside the board,
|
||||||
e.g. between entries in the scoreboard
|
e.g. between entries in the scoreboard
|
||||||
|
@ -403,7 +404,7 @@ public final class R {
|
||||||
public static final int blue=0x7f05015b;
|
public static final int blue=0x7f05015b;
|
||||||
/** board menu for small devices only
|
/** board menu for small devices only
|
||||||
*/
|
*/
|
||||||
public static final int board_menu_dict=0x7f050234;
|
public static final int board_menu_dict=0x7f050232;
|
||||||
/**
|
/**
|
||||||
############################################################
|
############################################################
|
||||||
# :Menus:
|
# :Menus:
|
||||||
|
@ -450,7 +451,7 @@ public final class R {
|
||||||
*/
|
*/
|
||||||
public static final int board_menu_game_resend=0x7f05010f;
|
public static final int board_menu_game_resend=0x7f05010f;
|
||||||
public static final int board_menu_game_resign=0x7f05010e;
|
public static final int board_menu_game_resign=0x7f05010e;
|
||||||
public static final int board_menu_invite=0x7f050281;
|
public static final int board_menu_invite=0x7f05027f;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int board_menu_pass=0x7f0501ec;
|
public static final int board_menu_pass=0x7f0501ec;
|
||||||
|
@ -467,7 +468,7 @@ public final class R {
|
||||||
public static final int board_menu_tray_show=0x7f050107;
|
public static final int board_menu_tray_show=0x7f050107;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int board_menu_undo_current=0x7f05022e;
|
public static final int board_menu_undo_current=0x7f05022c;
|
||||||
/** Undos the last *committed* turn. Note that this is different
|
/** Undos the last *committed* turn. Note that this is different
|
||||||
from the undo button that undoes or redoes an in-progress
|
from the undo button that undoes or redoes an in-progress
|
||||||
not-yet-committed turn. This is disabled for networked
|
not-yet-committed turn. This is disabled for networked
|
||||||
|
@ -514,30 +515,30 @@ public final class R {
|
||||||
public static final int bonus_w3x_summary=0x7f0500f1;
|
public static final int bonus_w3x_summary=0x7f0500f1;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int bt_bad_proto_fmt=0x7f05020e;
|
public static final int bt_bad_proto_fmt=0x7f05020c;
|
||||||
/** EXPLAIN ME
|
/** EXPLAIN ME
|
||||||
*/
|
*/
|
||||||
public static final int bt_disabled=0x7f05017f;
|
public static final int bt_disabled=0x7f05017f;
|
||||||
public static final int bt_err_count_fmt=0x7f0502cc;
|
public static final int bt_err_count_fmt=0x7f0502ca;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int bt_fail_fmt=0x7f050213;
|
public static final int bt_fail_fmt=0x7f050211;
|
||||||
/** EXPLAIN ME
|
/** EXPLAIN ME
|
||||||
*/
|
*/
|
||||||
public static final int bt_networked_desc=0x7f050180;
|
public static final int bt_networked_desc=0x7f050180;
|
||||||
public static final int bt_no_devs=0x7f0502cd;
|
public static final int bt_no_devs=0x7f0502cb;
|
||||||
|
/** In the Bluetooth invite device dialog
|
||||||
|
*/
|
||||||
|
public static final int bt_pick_addall_button=0x7f050204;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int bt_pick_clear_button=0x7f050205;
|
public static final int bt_pick_clear_button=0x7f050205;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int bt_pick_rescan_button=0x7f050204;
|
public static final int bt_resend_fmt=0x7f050210;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int bt_resend_fmt=0x7f050212;
|
public static final int btname_label=0x7f050213;
|
||||||
/**
|
|
||||||
*/
|
|
||||||
public static final int btname_label=0x7f050215;
|
|
||||||
/** text of button for adding new player to game
|
/** text of button for adding new player to game
|
||||||
*/
|
*/
|
||||||
public static final int button_add_player=0x7f0500c4;
|
public static final int button_add_player=0x7f0500c4;
|
||||||
|
@ -545,7 +546,7 @@ public final class R {
|
||||||
/** The only button available when the above message is displayed
|
/** The only button available when the above message is displayed
|
||||||
*/
|
*/
|
||||||
public static final int button_close_game=0x7f0501aa;
|
public static final int button_close_game=0x7f0501aa;
|
||||||
public static final int button_decline=0x7f05025d;
|
public static final int button_decline=0x7f05025b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int button_default_both=0x7f0500b9;
|
public static final int button_default_both=0x7f0500b9;
|
||||||
|
@ -580,11 +581,11 @@ public final class R {
|
||||||
/** Text of button displayed when downloading is an option
|
/** Text of button displayed when downloading is an option
|
||||||
*/
|
*/
|
||||||
public static final int button_download=0x7f0501ad;
|
public static final int button_download=0x7f0501ad;
|
||||||
public static final int button_go_settings=0x7f050283;
|
public static final int button_go_settings=0x7f050281;
|
||||||
public static final int button_html=0x7f050185;
|
public static final int button_html=0x7f050185;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int button_invite=0x7f050214;
|
public static final int button_invite=0x7f050212;
|
||||||
/** text of button to juggle (randomly rearrange order of) players
|
/** text of button to juggle (randomly rearrange order of) players
|
||||||
*/
|
*/
|
||||||
public static final int button_juggle_players=0x7f0500c5;
|
public static final int button_juggle_players=0x7f0500c5;
|
||||||
|
@ -634,12 +635,12 @@ public final class R {
|
||||||
in many places.
|
in many places.
|
||||||
*/
|
*/
|
||||||
public static final int button_ok=0x7f0501b4;
|
public static final int button_ok=0x7f0501b4;
|
||||||
public static final int button_reconnect=0x7f050273;
|
public static final int button_reconnect=0x7f050271;
|
||||||
/** Button shown in game over dialog triggering creation of new
|
/** Button shown in game over dialog triggering creation of new
|
||||||
game with the same players and parameters as the one that
|
game with the same players and parameters as the one that
|
||||||
just ended.
|
just ended.
|
||||||
*/
|
*/
|
||||||
public static final int button_rematch=0x7f050272;
|
public static final int button_rematch=0x7f050270;
|
||||||
/** When you select the list_item_reset contextual menu, you are
|
/** When you select the list_item_reset contextual menu, you are
|
||||||
asked to confirm. This is the text of the first button
|
asked to confirm. This is the text of the first button
|
||||||
("Cancel" is the second).
|
("Cancel" is the second).
|
||||||
|
@ -675,7 +676,7 @@ public final class R {
|
||||||
public static final int button_search=0x7f0501ef;
|
public static final int button_search=0x7f0501ef;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int button_sms_add=0x7f050220;
|
public static final int button_sms_add=0x7f05021e;
|
||||||
/** Text of button allowing user to choose to open with a
|
/** Text of button allowing user to choose to open with a
|
||||||
different (but same-language wordlist)
|
different (but same-language wordlist)
|
||||||
*/
|
*/
|
||||||
|
@ -701,8 +702,8 @@ public final class R {
|
||||||
*/
|
*/
|
||||||
public static final int button_trade_commit=0x7f0500eb;
|
public static final int button_trade_commit=0x7f0500eb;
|
||||||
public static final int button_yes=0x7f0501b6;
|
public static final int button_yes=0x7f0501b6;
|
||||||
public static final int cannot_delete_default_group_fmt=0x7f05026f;
|
public static final int cannot_delete_default_group_fmt=0x7f05026d;
|
||||||
public static final int change_group=0x7f050276;
|
public static final int change_group=0x7f050274;
|
||||||
/** text of button in About Crosswords dialog summoning above
|
/** text of button in About Crosswords dialog summoning above
|
||||||
dialog
|
dialog
|
||||||
*/
|
*/
|
||||||
|
@ -748,7 +749,7 @@ public final class R {
|
||||||
substituted for %1$s.
|
substituted for %1$s.
|
||||||
*/
|
*/
|
||||||
public static final int chat_title_fmt=0x7f05018e;
|
public static final int chat_title_fmt=0x7f05018e;
|
||||||
public static final int checkupdates_none_found=0x7f05024c;
|
public static final int checkupdates_none_found=0x7f05024a;
|
||||||
/** color of the "crosshairs", lines drawn vertically and
|
/** color of the "crosshairs", lines drawn vertically and
|
||||||
horizontally through the square the user is currently
|
horizontally through the square the user is currently
|
||||||
touching in order to guide the fat-fingered (most of us) in
|
touching in order to guide the fat-fingered (most of us) in
|
||||||
|
@ -758,7 +759,7 @@ public final class R {
|
||||||
public static final int clr_crosshairs=0x7f050154;
|
public static final int clr_crosshairs=0x7f050154;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int confirm_clear=0x7f050226;
|
public static final int confirm_clear=0x7f050224;
|
||||||
/** text of confirmation dialog posted when the delete 'X' button
|
/** text of confirmation dialog posted when the delete 'X' button
|
||||||
beside the listing of a wordlist is tapped. The name of the
|
beside the listing of a wordlist is tapped. The name of the
|
||||||
wordlist is substituted for %1$s. Sometimes one of the two
|
wordlist is substituted for %1$s. Sometimes one of the two
|
||||||
|
@ -792,23 +793,23 @@ public final class R {
|
||||||
public static final int confirm_seldeletes_fmt=0x7f0500ac;
|
public static final int confirm_seldeletes_fmt=0x7f0500ac;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int confirm_sms_expl=0x7f050245;
|
public static final int confirm_sms_expl=0x7f050243;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int confirm_sms_leave=0x7f050247;
|
public static final int confirm_sms_leave=0x7f050245;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int confirm_sms_prompt=0x7f050246;
|
public static final int confirm_sms_prompt=0x7f050244;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int confirm_sms_title=0x7f050244;
|
public static final int confirm_sms_title=0x7f050242;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int confirm_sms_unlimited=0x7f050248;
|
public static final int confirm_sms_unlimited=0x7f050246;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int confirm_sms_willpay=0x7f050249;
|
public static final int confirm_sms_willpay=0x7f050247;
|
||||||
public static final int confirm_studylist_clear_fmt=0x7f050290;
|
public static final int confirm_studylist_clear_fmt=0x7f05028e;
|
||||||
/** text of dialog shown when the menu item board_menu_undo_last
|
/** text of dialog shown when the menu item board_menu_undo_last
|
||||||
is chosen.
|
is chosen.
|
||||||
*/
|
*/
|
||||||
|
@ -834,7 +835,7 @@ public final class R {
|
||||||
public static final int connect_label_relay=0x7f0500c8;
|
public static final int connect_label_relay=0x7f0500c8;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connect_label_sms=0x7f050227;
|
public static final int connect_label_sms=0x7f050225;
|
||||||
/** These are the possible values for the connect_frequency
|
/** These are the possible values for the connect_frequency
|
||||||
setting presented as a drop-down list.
|
setting presented as a drop-down list.
|
||||||
*/
|
*/
|
||||||
|
@ -844,51 +845,51 @@ public final class R {
|
||||||
public static final int connect_thirty_mins=0x7f050170;
|
public static final int connect_thirty_mins=0x7f050170;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_bt=0x7f050241;
|
public static final int connstat_bt=0x7f05023f;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_lastother_succ_fmt=0x7f05023b;
|
public static final int connstat_lastother_succ_fmt=0x7f050239;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_lastother_unsucc_fmt=0x7f05023c;
|
public static final int connstat_lastother_unsucc_fmt=0x7f05023a;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_lastreceipt_fmt=0x7f05023d;
|
public static final int connstat_lastreceipt_fmt=0x7f05023b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_lastsend_fmt=0x7f05023a;
|
public static final int connstat_lastsend_fmt=0x7f050238;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_net_fmt=0x7f050237;
|
public static final int connstat_net_fmt=0x7f050235;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_nonet=0x7f050236;
|
public static final int connstat_nonet=0x7f050234;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_noreceipt=0x7f05023e;
|
public static final int connstat_noreceipt=0x7f05023c;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_relay=0x7f05023f;
|
public static final int connstat_relay=0x7f05023d;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_sms=0x7f050240;
|
public static final int connstat_sms=0x7f05023e;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_succ=0x7f050238;
|
public static final int connstat_succ=0x7f050236;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int connstat_unsucc=0x7f050239;
|
public static final int connstat_unsucc=0x7f050237;
|
||||||
/** title of dialog brought up in response to the
|
/** title of dialog brought up in response to the
|
||||||
board_menu_game_counts menu. The dialog lists all tiles in
|
board_menu_game_counts menu. The dialog lists all tiles in
|
||||||
the language being used for the game together with how many
|
the language being used for the game together with how many
|
||||||
of each there are are and how many points each is worth.
|
of each there are are and how many points each is worth.
|
||||||
*/
|
*/
|
||||||
public static final int counts_values_title=0x7f0501bf;
|
public static final int counts_values_title=0x7f0501bf;
|
||||||
public static final int cur_menu_marker_fmt=0x7f050280;
|
public static final int cur_menu_marker_fmt=0x7f05027e;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int cur_tiles_fmt=0x7f0501f3;
|
public static final int cur_tiles_fmt=0x7f0501f3;
|
||||||
public static final int data_gsm_only=0x7f0502a2;
|
public static final int data_gsm_only=0x7f0502a0;
|
||||||
public static final int debug_features=0x7f05007d;
|
public static final int debug_features=0x7f05007d;
|
||||||
public static final int debug_features_summary=0x7f05007e;
|
public static final int debug_features_summary=0x7f05007e;
|
||||||
/** dictionary used by default for human players when creating
|
/** dictionary used by default for human players when creating
|
||||||
|
@ -898,8 +899,8 @@ public final class R {
|
||||||
/** other
|
/** other
|
||||||
*/
|
*/
|
||||||
public static final int default_host=0x7f05006b;
|
public static final int default_host=0x7f05006b;
|
||||||
public static final int default_loc=0x7f050260;
|
public static final int default_loc=0x7f05025e;
|
||||||
public static final int default_loc_summary=0x7f050261;
|
public static final int default_loc_summary=0x7f05025f;
|
||||||
/** Welcome dialog text
|
/** Welcome dialog text
|
||||||
*/
|
*/
|
||||||
public static final int default_name_message=0x7f0501db;
|
public static final int default_name_message=0x7f0501db;
|
||||||
|
@ -927,13 +928,13 @@ public final class R {
|
||||||
*/
|
*/
|
||||||
public static final int default_robodict=0x7f050139;
|
public static final int default_robodict=0x7f050139;
|
||||||
public static final int default_update_url=0x7f050075;
|
public static final int default_update_url=0x7f050075;
|
||||||
public static final int delete_dicts=0x7f0502b4;
|
public static final int delete_dicts=0x7f0502b2;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int dft_name_fmt=0x7f050219;
|
public static final int dft_name_fmt=0x7f050217;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int dft_sms_name_fmt=0x7f05021d;
|
public static final int dft_sms_name_fmt=0x7f05021b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int dict_browse_nowords_fmt=0x7f0501f7;
|
public static final int dict_browse_nowords_fmt=0x7f0501f7;
|
||||||
|
@ -944,14 +945,14 @@ public final class R {
|
||||||
*/
|
*/
|
||||||
public static final int dict_browse_title_fmt=0x7f0501f5;
|
public static final int dict_browse_title_fmt=0x7f0501f5;
|
||||||
public static final int dict_host=0x7f05007a;
|
public static final int dict_host=0x7f05007a;
|
||||||
public static final int dict_info_fmt=0x7f0502b8;
|
public static final int dict_info_fmt=0x7f0502b6;
|
||||||
/** label for dropdown by which wordlist is chosen that this
|
/** label for dropdown by which wordlist is chosen that this
|
||||||
player will use. The language the game will use (which
|
player will use. The language the game will use (which
|
||||||
constrains the choice of wordlists) is substituted in for
|
constrains the choice of wordlists) is substituted in for
|
||||||
"%1$s".
|
"%1$s".
|
||||||
*/
|
*/
|
||||||
public static final int dict_lang_label_fmt=0x7f0500e7;
|
public static final int dict_lang_label_fmt=0x7f0500e7;
|
||||||
public static final int dict_on_server=0x7f0502ba;
|
public static final int dict_on_server=0x7f0502b8;
|
||||||
/** string name="invite_mime">text/plain</string
|
/** string name="invite_mime">text/plain</string
|
||||||
*/
|
*/
|
||||||
public static final int dict_url=0x7f050073;
|
public static final int dict_url=0x7f050073;
|
||||||
|
@ -985,13 +986,13 @@ public final class R {
|
||||||
wordlists can be found.
|
wordlists can be found.
|
||||||
*/
|
*/
|
||||||
public static final int download_dicts=0x7f0500af;
|
public static final int download_dicts=0x7f0500af;
|
||||||
public static final int download_done=0x7f05025e;
|
public static final int download_done=0x7f05025c;
|
||||||
public static final int download_failed=0x7f05025f;
|
public static final int download_failed=0x7f05025d;
|
||||||
public static final int download_path_title=0x7f050262;
|
public static final int download_path_title=0x7f050260;
|
||||||
public static final int downloading_dict_fmt=0x7f0501a7;
|
public static final int downloading_dict_fmt=0x7f0501a7;
|
||||||
/** <string name="summary_thumb_enabled">Display snapshots of games</string>
|
/** <string name="summary_thumb_enabled">Display snapshots of games</string>
|
||||||
*/
|
*/
|
||||||
public static final int dropped_dupe=0x7f05027f;
|
public static final int dropped_dupe=0x7f05027d;
|
||||||
/** Shown in the main screen when you launch Crosswords from an
|
/** Shown in the main screen when you launch Crosswords from an
|
||||||
invitation (received in email or messaging app, say) and
|
invitation (received in email or messaging app, say) and
|
||||||
there's already a game running that matches that invitation.
|
there's already a game running that matches that invitation.
|
||||||
|
@ -1018,16 +1019,16 @@ public final class R {
|
||||||
public static final int empty=0x7f050156;
|
public static final int empty=0x7f050156;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int empty_sms_inviter=0x7f050224;
|
public static final int empty_sms_inviter=0x7f050222;
|
||||||
public static final int enable_dupes_summary=0x7f05008b;
|
public static final int enable_dupes_summary=0x7f05008b;
|
||||||
public static final int enable_dupes_title=0x7f050089;
|
public static final int enable_dupes_title=0x7f050089;
|
||||||
public static final int enable_nfc=0x7f050282;
|
public static final int enable_nfc=0x7f050280;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int enable_sms=0x7f050242;
|
public static final int enable_sms=0x7f050240;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int enable_sms_summary=0x7f050243;
|
public static final int enable_sms_summary=0x7f050241;
|
||||||
public static final int entering_trade=0x7f0500ed;
|
public static final int entering_trade=0x7f0500ed;
|
||||||
public static final int expl_update_url=0x7f050074;
|
public static final int expl_update_url=0x7f050074;
|
||||||
/** These four strings are displayed as step-by-step
|
/** These four strings are displayed as step-by-step
|
||||||
|
@ -1055,8 +1056,8 @@ public final class R {
|
||||||
/** Explanatory text appears in the dialog
|
/** Explanatory text appears in the dialog
|
||||||
*/
|
*/
|
||||||
public static final int force_expl=0x7f0500e2;
|
public static final int force_expl=0x7f0500e2;
|
||||||
public static final int force_tablet_summary=0x7f0502bf;
|
public static final int force_tablet_summary=0x7f0502bd;
|
||||||
public static final int force_tablet_title=0x7f0502be;
|
public static final int force_tablet_title=0x7f0502bc;
|
||||||
/**
|
/**
|
||||||
############################################################
|
############################################################
|
||||||
# :Dialogs:
|
# :Dialogs:
|
||||||
|
@ -1082,7 +1083,7 @@ public final class R {
|
||||||
public static final int gameOver=0x7f050097;
|
public static final int gameOver=0x7f050097;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int game_btname_title=0x7f050217;
|
public static final int game_btname_title=0x7f050215;
|
||||||
/** used to create default names of games (when user has not
|
/** used to create default names of games (when user has not
|
||||||
named them.)
|
named them.)
|
||||||
*/
|
*/
|
||||||
|
@ -1099,18 +1100,18 @@ public final class R {
|
||||||
public static final int game_item_menu_title_fmt=0x7f0500a1;
|
public static final int game_item_menu_title_fmt=0x7f0500a1;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int game_list_tmp=0x7f050235;
|
public static final int game_list_tmp=0x7f050233;
|
||||||
/** text of checkbox at top of dialog allowing to unlock in-play
|
/** text of checkbox at top of dialog allowing to unlock in-play
|
||||||
game to make changes
|
game to make changes
|
||||||
*/
|
*/
|
||||||
public static final int game_locked=0x7f0500c1;
|
public static final int game_locked=0x7f0500c1;
|
||||||
public static final int game_name_group_title=0x7f05026e;
|
public static final int game_name_group_title=0x7f05026c;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int game_rename_title=0x7f0500aa;
|
public static final int game_rename_title=0x7f0500aa;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int game_smsname_title=0x7f050218;
|
public static final int game_smsname_title=0x7f050216;
|
||||||
/** Put nothing in the summary space, so it just reads "Game 2"
|
/** Put nothing in the summary space, so it just reads "Game 2"
|
||||||
*/
|
*/
|
||||||
public static final int game_summary_field_empty=0x7f050144;
|
public static final int game_summary_field_empty=0x7f050144;
|
||||||
|
@ -1135,7 +1136,7 @@ public final class R {
|
||||||
public static final int gamel_menu_checkmoves=0x7f05009d;
|
public static final int gamel_menu_checkmoves=0x7f05009d;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int gamel_menu_checkupdates=0x7f05024b;
|
public static final int gamel_menu_checkupdates=0x7f050249;
|
||||||
/**
|
/**
|
||||||
############################################################
|
############################################################
|
||||||
# :Menus:
|
# :Menus:
|
||||||
|
@ -1150,19 +1151,19 @@ public final class R {
|
||||||
public static final int gamel_menu_dicts=0x7f05009b;
|
public static final int gamel_menu_dicts=0x7f05009b;
|
||||||
public static final int gamel_menu_loaddb=0x7f050088;
|
public static final int gamel_menu_loaddb=0x7f050088;
|
||||||
public static final int gamel_menu_storedb=0x7f050087;
|
public static final int gamel_menu_storedb=0x7f050087;
|
||||||
public static final int gamel_menu_study=0x7f05028d;
|
public static final int gamel_menu_study=0x7f05028b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int get_sms_number=0x7f050225;
|
public static final int get_sms_number=0x7f050223;
|
||||||
public static final int getinfo=0x7f0502b3;
|
public static final int getinfo=0x7f0502b1;
|
||||||
public static final int git_rev=0x7f05008d;
|
public static final int git_rev=0x7f05008d;
|
||||||
public static final int git_rev_title=0x7f050083;
|
public static final int git_rev_title=0x7f050083;
|
||||||
public static final int green=0x7f05015a;
|
public static final int green=0x7f05015a;
|
||||||
public static final int group_cur_games=0x7f050269;
|
public static final int group_cur_games=0x7f050267;
|
||||||
public static final int group_name_fmt=0x7f050271;
|
public static final int group_name_fmt=0x7f05026f;
|
||||||
public static final int group_new_games=0x7f05026a;
|
public static final int group_new_games=0x7f050268;
|
||||||
public static final int groups_confirm_del_fmt=0x7f05026b;
|
public static final int groups_confirm_del_fmt=0x7f050269;
|
||||||
public static final int groups_confirm_del_games_fmt=0x7f05026c;
|
public static final int groups_confirm_del_games_fmt=0x7f05026a;
|
||||||
/** Used as the default name for remote players displayed within
|
/** Used as the default name for remote players displayed within
|
||||||
the Game configure screen
|
the Game configure screen
|
||||||
*/
|
*/
|
||||||
|
@ -1218,12 +1219,12 @@ public final class R {
|
||||||
public static final int info_title=0x7f0501bc;
|
public static final int info_title=0x7f0501bc;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int inform_dict_diffdict_fmt=0x7f050255;
|
public static final int inform_dict_diffdict_fmt=0x7f050253;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int inform_dict_diffversion_fmt=0x7f050253;
|
public static final int inform_dict_diffversion_fmt=0x7f050251;
|
||||||
public static final int inform_dict_download=0x7f050256;
|
public static final int inform_dict_download=0x7f050254;
|
||||||
public static final int inform_dict_title=0x7f050254;
|
public static final int inform_dict_title=0x7f050252;
|
||||||
/** Will new games, on default, randomly rearrange the start
|
/** Will new games, on default, randomly rearrange the start
|
||||||
order of players.
|
order of players.
|
||||||
*/
|
*/
|
||||||
|
@ -1236,7 +1237,7 @@ public final class R {
|
||||||
public static final int initial_player_minutes=0x7f05013f;
|
public static final int initial_player_minutes=0x7f05013f;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int invite_bt_desc_fmt=0x7f050211;
|
public static final int invite_bt_desc_fmt=0x7f05020f;
|
||||||
public static final int invite_chooser_email=0x7f05018b;
|
public static final int invite_chooser_email=0x7f05018b;
|
||||||
/** When I've created the invitation, in text or html, I ask
|
/** When I've created the invitation, in text or html, I ask
|
||||||
Android to launch an app that can send it, typically an email
|
Android to launch an app that can send it, typically an email
|
||||||
|
@ -1247,9 +1248,9 @@ public final class R {
|
||||||
*/
|
*/
|
||||||
public static final int invite_chooser_fmt=0x7f05018a;
|
public static final int invite_chooser_fmt=0x7f05018a;
|
||||||
public static final int invite_chooser_sms=0x7f05018c;
|
public static final int invite_chooser_sms=0x7f05018c;
|
||||||
public static final int invite_dict_missing_body_fmt=0x7f05025b;
|
public static final int invite_dict_missing_body_fmt=0x7f050259;
|
||||||
public static final int invite_dict_missing_body_noname_fmt=0x7f05025c;
|
public static final int invite_dict_missing_body_noname_fmt=0x7f05025a;
|
||||||
public static final int invite_dict_missing_title=0x7f05025a;
|
public static final int invite_dict_missing_title=0x7f050258;
|
||||||
public static final int invite_host=0x7f05006d;
|
public static final int invite_host=0x7f05006d;
|
||||||
/** This is the body of the html version of the invitation. A URL
|
/** This is the body of the html version of the invitation. A URL
|
||||||
is created with parameters describing the game and
|
is created with parameters describing the game and
|
||||||
|
@ -1282,7 +1283,7 @@ public final class R {
|
||||||
public static final int invite_prefix=0x7f05006e;
|
public static final int invite_prefix=0x7f05006e;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int invite_sms_desc_fmt=0x7f050221;
|
public static final int invite_sms_desc_fmt=0x7f05021f;
|
||||||
/** This is the subject line of the email/text sent to invite
|
/** This is the subject line of the email/text sent to invite
|
||||||
someone to join a game.
|
someone to join a game.
|
||||||
*/
|
*/
|
||||||
|
@ -1423,14 +1424,14 @@ public final class R {
|
||||||
different wordlists.)
|
different wordlists.)
|
||||||
*/
|
*/
|
||||||
public static final int lang_label=0x7f0500c6;
|
public static final int lang_label=0x7f0500c6;
|
||||||
public static final int lang_name_fmt=0x7f0502bb;
|
public static final int lang_name_fmt=0x7f0502b9;
|
||||||
public static final int lang_unknown=0x7f0502bc;
|
public static final int lang_unknown=0x7f0502ba;
|
||||||
public static final int langdict_label=0x7f0500c7;
|
public static final int langdict_label=0x7f0500c7;
|
||||||
public static final int list_group_default=0x7f050266;
|
public static final int list_group_default=0x7f050264;
|
||||||
public static final int list_group_delete=0x7f050264;
|
public static final int list_group_delete=0x7f050262;
|
||||||
public static final int list_group_movedown=0x7f050268;
|
public static final int list_group_movedown=0x7f050266;
|
||||||
public static final int list_group_moveup=0x7f050267;
|
public static final int list_group_moveup=0x7f050265;
|
||||||
public static final int list_group_rename=0x7f050265;
|
public static final int list_group_rename=0x7f050263;
|
||||||
/** ############## menu items ##############
|
/** ############## menu items ##############
|
||||||
pulls up dialog to configure the selected game
|
pulls up dialog to configure the selected game
|
||||||
*/
|
*/
|
||||||
|
@ -1459,13 +1460,13 @@ public final class R {
|
||||||
except for any configuration.
|
except for any configuration.
|
||||||
*/
|
*/
|
||||||
public static final int list_item_reset=0x7f0500a6;
|
public static final int list_item_reset=0x7f0500a6;
|
||||||
public static final int lmi_move_fmt=0x7f0502c8;
|
public static final int lmi_move_fmt=0x7f0502c6;
|
||||||
/** formatting for last move summary in notifications
|
/** formatting for last move summary in notifications
|
||||||
*/
|
*/
|
||||||
public static final int lmi_pass_fmt=0x7f0502c7;
|
public static final int lmi_pass_fmt=0x7f0502c5;
|
||||||
public static final int lmi_phony_fmt=0x7f0502ca;
|
public static final int lmi_phony_fmt=0x7f0502c8;
|
||||||
public static final int lmi_tiles_fmt=0x7f0502cb;
|
public static final int lmi_tiles_fmt=0x7f0502c9;
|
||||||
public static final int lmi_trade_fmt=0x7f0502c9;
|
public static final int lmi_trade_fmt=0x7f0502c7;
|
||||||
/** One of the strings used in the right column of the list of
|
/** One of the strings used in the right column of the list of
|
||||||
installed wordlists to describe those that are part of
|
installed wordlists to describe those that are part of
|
||||||
Crosswords and that cannot be uninstalled or moved.
|
Crosswords and that cannot be uninstalled or moved.
|
||||||
|
@ -1483,72 +1484,72 @@ public final class R {
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int loc_external=0x7f0500bc;
|
public static final int loc_external=0x7f0500bc;
|
||||||
public static final int loc_filters_all=0x7f0502a5;
|
public static final int loc_filters_all=0x7f0502a3;
|
||||||
public static final int loc_filters_menu=0x7f0502a7;
|
public static final int loc_filters_menu=0x7f0502a5;
|
||||||
public static final int loc_filters_modified=0x7f0502a8;
|
public static final int loc_filters_modified=0x7f0502a6;
|
||||||
public static final int loc_filters_prompt=0x7f0502a3;
|
public static final int loc_filters_prompt=0x7f0502a1;
|
||||||
public static final int loc_filters_screen=0x7f0502a6;
|
public static final int loc_filters_screen=0x7f0502a4;
|
||||||
public static final int loc_fmts_mismatch=0x7f0502ae;
|
public static final int loc_fmts_mismatch=0x7f0502ac;
|
||||||
/** see move_dictf above
|
/** see move_dictf above
|
||||||
*/
|
*/
|
||||||
public static final int loc_internal=0x7f0500bb;
|
public static final int loc_internal=0x7f0500bb;
|
||||||
public static final int loc_item_check=0x7f0502ab;
|
public static final int loc_item_check=0x7f0502a9;
|
||||||
/** for loc item edit menu
|
/** for loc item edit menu
|
||||||
*/
|
*/
|
||||||
public static final int loc_item_clear=0x7f0502aa;
|
public static final int loc_item_clear=0x7f0502a8;
|
||||||
public static final int loc_item_copy_bless=0x7f0502ad;
|
public static final int loc_item_copy_bless=0x7f0502ab;
|
||||||
public static final int loc_item_copy_eng=0x7f0502ac;
|
public static final int loc_item_copy_eng=0x7f0502aa;
|
||||||
public static final int loc_lang_blessed=0x7f05029d;
|
public static final int loc_lang_blessed=0x7f05029b;
|
||||||
public static final int loc_lang_local=0x7f05029e;
|
public static final int loc_lang_local=0x7f05029c;
|
||||||
public static final int loc_main_english=0x7f0502a9;
|
public static final int loc_main_english=0x7f0502a7;
|
||||||
public static final int loc_menu_xlate=0x7f05029c;
|
public static final int loc_menu_xlate=0x7f05029a;
|
||||||
public static final int loc_search_prompt=0x7f0502a4;
|
public static final int loc_search_prompt=0x7f0502a2;
|
||||||
/** This is the "hint" printed in light text in the empty player
|
/** This is the "hint" printed in light text in the empty player
|
||||||
name field
|
name field
|
||||||
*/
|
*/
|
||||||
public static final int local_name_hint=0x7f050198;
|
public static final int local_name_hint=0x7f050198;
|
||||||
public static final int logging_on=0x7f05007b;
|
public static final int logging_on=0x7f05007b;
|
||||||
public static final int logging_on_summary=0x7f05007c;
|
public static final int logging_on_summary=0x7f05007c;
|
||||||
public static final int lookup_title=0x7f050298;
|
public static final int lookup_title=0x7f050296;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int manual_owner_name=0x7f050222;
|
public static final int manual_owner_name=0x7f050220;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int max_len=0x7f0501fc;
|
public static final int max_len=0x7f0501fc;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int menu_chat=0x7f050232;
|
public static final int menu_chat=0x7f050230;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int menu_flip=0x7f050230;
|
public static final int menu_flip=0x7f05022e;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int menu_hint_next=0x7f05022d;
|
public static final int menu_hint_next=0x7f05022b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int menu_hint_prev=0x7f05022c;
|
public static final int menu_hint_prev=0x7f05022a;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int menu_juggle=0x7f05022f;
|
public static final int menu_juggle=0x7f05022d;
|
||||||
/** text of menu that brings up the Settings (preferences) dialog
|
/** text of menu that brings up the Settings (preferences) dialog
|
||||||
*/
|
*/
|
||||||
public static final int menu_prefs=0x7f05009c;
|
public static final int menu_prefs=0x7f05009c;
|
||||||
public static final int menu_rateme=0x7f050288;
|
public static final int menu_rateme=0x7f050286;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int menu_toggle_values=0x7f050233;
|
public static final int menu_toggle_values=0x7f050231;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int menu_zoom=0x7f050231;
|
public static final int menu_zoom=0x7f05022f;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int min_len=0x7f0501fb;
|
public static final int min_len=0x7f0501fb;
|
||||||
/** label for the field used to set the timer's inital value
|
/** label for the field used to set the timer's inital value
|
||||||
*/
|
*/
|
||||||
public static final int minutes_label=0x7f0500d3;
|
public static final int minutes_label=0x7f0500d3;
|
||||||
public static final int missing_dict_detail=0x7f050259;
|
public static final int missing_dict_detail=0x7f050257;
|
||||||
public static final int missing_dict_title=0x7f050258;
|
public static final int missing_dict_title=0x7f050256;
|
||||||
/** Used as a substitute for the names of remote players when
|
/** Used as a substitute for the names of remote players when
|
||||||
they aren't available yet because the connection is not
|
they aren't available yet because the connection is not
|
||||||
complete. Displayed in the lists of players found in each
|
complete. Displayed in the lists of players found in each
|
||||||
|
@ -1616,22 +1617,22 @@ public final class R {
|
||||||
/** Text of progress indicator shown while check is being conducted
|
/** Text of progress indicator shown while check is being conducted
|
||||||
*/
|
*/
|
||||||
public static final int msgs_progress=0x7f05009e;
|
public static final int msgs_progress=0x7f05009e;
|
||||||
public static final int nag_body_fmt=0x7f0502c4;
|
public static final int nag_body_fmt=0x7f0502c2;
|
||||||
public static final int nag_days_fmt=0x7f0502c3;
|
public static final int nag_days_fmt=0x7f0502c1;
|
||||||
public static final int nag_hours_fmt=0x7f0502c2;
|
public static final int nag_hours_fmt=0x7f0502c0;
|
||||||
public static final int nag_intervals=0x7f05008c;
|
public static final int nag_intervals=0x7f05008c;
|
||||||
/** body of warning notification reminder message. First three
|
/** body of warning notification reminder message. First three
|
||||||
are used to build a string based on the length of time that's then
|
are used to build a string based on the length of time that's then
|
||||||
inserted in the fourth. E.g "PlayerName moved more than 2 day[s],
|
inserted in the fourth. E.g "PlayerName moved more than 2 day[s],
|
||||||
4 hour[s] ago."
|
4 hour[s] ago."
|
||||||
*/
|
*/
|
||||||
public static final int nag_minutes_fmt=0x7f0502c1;
|
public static final int nag_minutes_fmt=0x7f0502bf;
|
||||||
/** Nagging: title of notification reminder message
|
/** Nagging: title of notification reminder message
|
||||||
*/
|
*/
|
||||||
public static final int nag_title=0x7f0502c0;
|
public static final int nag_title=0x7f0502be;
|
||||||
/** above is inserted in this the last time I warn
|
/** above is inserted in this the last time I warn
|
||||||
*/
|
*/
|
||||||
public static final int nag_warn_last_fmt=0x7f0502c5;
|
public static final int nag_warn_last_fmt=0x7f0502c3;
|
||||||
public static final int name_dict_fmt=0x7f050086;
|
public static final int name_dict_fmt=0x7f050086;
|
||||||
/** text of checkbox. If this checkbox is checked, games created
|
/** text of checkbox. If this checkbox is checked, games created
|
||||||
for network play will by default have the hint feature
|
for network play will by default have the hint feature
|
||||||
|
@ -1650,38 +1651,38 @@ public final class R {
|
||||||
public static final int network_behavior_summary=0x7f05016b;
|
public static final int network_behavior_summary=0x7f05016b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_app_avail=0x7f050250;
|
public static final int new_app_avail=0x7f05024e;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_app_avail_fmt=0x7f05024f;
|
public static final int new_app_avail_fmt=0x7f05024d;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_bt_body_fmt=0x7f05020d;
|
public static final int new_bt_body_fmt=0x7f05020b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_bt_title=0x7f05020c;
|
public static final int new_bt_title=0x7f05020a;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_btmove_title=0x7f05020f;
|
public static final int new_btmove_title=0x7f05020d;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_dict_avail=0x7f05024d;
|
public static final int new_dict_avail=0x7f05024b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_dict_avail_fmt=0x7f05024e;
|
public static final int new_dict_avail_fmt=0x7f05024c;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_move_body=0x7f050210;
|
public static final int new_move_body=0x7f05020e;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_name_body_fmt=0x7f05021f;
|
public static final int new_name_body_fmt=0x7f05021d;
|
||||||
/** hint (text shown when field is empty) for room name field
|
/** hint (text shown when field is empty) for room name field
|
||||||
*/
|
*/
|
||||||
public static final int new_room_hint=0x7f0500ca;
|
public static final int new_room_hint=0x7f0500ca;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int new_sms_title=0x7f05021e;
|
public static final int new_sms_title=0x7f05021c;
|
||||||
public static final int new_xlations_fmt=0x7f05029f;
|
public static final int new_xlations_fmt=0x7f05029d;
|
||||||
/**
|
/**
|
||||||
###########################################################
|
###########################################################
|
||||||
# :Dialogs:
|
# :Dialogs:
|
||||||
|
@ -1746,8 +1747,8 @@ public final class R {
|
||||||
public static final int newgame_networked_header=0x7f05017b;
|
public static final int newgame_networked_header=0x7f05017b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int newgame_sms_header=0x7f05021a;
|
public static final int newgame_sms_header=0x7f050218;
|
||||||
public static final int newgroup_label=0x7f050263;
|
public static final int newgroup_label=0x7f050261;
|
||||||
public static final int nfc_or_email=0x7f050182;
|
public static final int nfc_or_email=0x7f050182;
|
||||||
public static final int nfc_or_sms_or_email=0x7f050183;
|
public static final int nfc_or_sms_or_email=0x7f050183;
|
||||||
/** Title of dialog for renaming game (triggered by selecting
|
/** Title of dialog for renaming game (triggered by selecting
|
||||||
|
@ -1795,9 +1796,9 @@ public final class R {
|
||||||
you get this error message
|
you get this error message
|
||||||
*/
|
*/
|
||||||
public static final int no_games_to_refresh=0x7f05009f;
|
public static final int no_games_to_refresh=0x7f05009f;
|
||||||
public static final int no_hide_titlebar=0x7f050284;
|
public static final int no_hide_titlebar=0x7f050282;
|
||||||
public static final int no_market=0x7f050289;
|
public static final int no_market=0x7f050287;
|
||||||
public static final int no_move_onegroup=0x7f050270;
|
public static final int no_move_onegroup=0x7f05026e;
|
||||||
/** displayed when you long-tap a scoreboard entry and there's no
|
/** displayed when you long-tap a scoreboard entry and there's no
|
||||||
most recent score to show
|
most recent score to show
|
||||||
*/
|
*/
|
||||||
|
@ -1820,7 +1821,7 @@ public final class R {
|
||||||
arrow appears. This explains it.
|
arrow appears. This explains it.
|
||||||
*/
|
*/
|
||||||
public static final int not_again_arrow=0x7f0501d7;
|
public static final int not_again_arrow=0x7f0501d7;
|
||||||
public static final int not_again_backclears=0x7f05027a;
|
public static final int not_again_backclears=0x7f050278;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int not_again_browse=0x7f0501f8;
|
public static final int not_again_browse=0x7f0501f8;
|
||||||
|
@ -1848,7 +1849,7 @@ public final class R {
|
||||||
for games with more than two devices, which are rare.
|
for games with more than two devices, which are rare.
|
||||||
*/
|
*/
|
||||||
public static final int not_again_conndmid=0x7f0501d5;
|
public static final int not_again_conndmid=0x7f0501d5;
|
||||||
public static final int not_again_dicts=0x7f0502bd;
|
public static final int not_again_dicts=0x7f0502bb;
|
||||||
/** This is shown when you choose the board_menu_done menu item.
|
/** This is shown when you choose the board_menu_done menu item.
|
||||||
It's to let you know that there's a shortcut that does almost
|
It's to let you know that there's a shortcut that does almost
|
||||||
the same thing.
|
the same thing.
|
||||||
|
@ -1858,7 +1859,7 @@ public final class R {
|
||||||
Board screen
|
Board screen
|
||||||
*/
|
*/
|
||||||
public static final int not_again_flip=0x7f0501cd;
|
public static final int not_again_flip=0x7f0501cd;
|
||||||
public static final int not_again_fmt_expl=0x7f0502af;
|
public static final int not_again_fmt_expl=0x7f0502ad;
|
||||||
/** Shown when you tap the next hint button on the toolbar of the
|
/** Shown when you tap the next hint button on the toolbar of the
|
||||||
main Board screen
|
main Board screen
|
||||||
*/
|
*/
|
||||||
|
@ -1882,9 +1883,9 @@ public final class R {
|
||||||
/** Shown when you first pick the list_item_new_from menuitem
|
/** Shown when you first pick the list_item_new_from menuitem
|
||||||
*/
|
*/
|
||||||
public static final int not_again_newfrom=0x7f0501d9;
|
public static final int not_again_newfrom=0x7f0501d9;
|
||||||
public static final int not_again_newselect=0x7f050279;
|
public static final int not_again_newselect=0x7f050277;
|
||||||
public static final int not_again_sms_ready=0x7f050286;
|
public static final int not_again_sms_ready=0x7f050284;
|
||||||
public static final int not_again_studycopy=0x7f050297;
|
public static final int not_again_studycopy=0x7f050295;
|
||||||
/** The following strings (all whose names start with
|
/** The following strings (all whose names start with
|
||||||
"not_again") appear in the New user info dialog.
|
"not_again") appear in the New user info dialog.
|
||||||
|
|
||||||
|
@ -1919,7 +1920,7 @@ public final class R {
|
||||||
the main Board screen
|
the main Board screen
|
||||||
*/
|
*/
|
||||||
public static final int not_again_zoom=0x7f0501ce;
|
public static final int not_again_zoom=0x7f0501ce;
|
||||||
public static final int note_none=0x7f0502b9;
|
public static final int note_none=0x7f0502b7;
|
||||||
/** This text is displayed as the "summary" for both of the
|
/** This text is displayed as the "summary" for both of the
|
||||||
notify choices above, as extra information. (There could be
|
notify choices above, as extra information. (There could be
|
||||||
different strings if it makes more sense in your language.)
|
different strings if it makes more sense in your language.)
|
||||||
|
@ -1949,8 +1950,8 @@ public final class R {
|
||||||
games as well.
|
games as well.
|
||||||
*/
|
*/
|
||||||
public static final int password_label=0x7f0500ea;
|
public static final int password_label=0x7f0500ea;
|
||||||
public static final int paste_done_fmt=0x7f050291;
|
public static final int paste_done_fmt=0x7f05028f;
|
||||||
public static final int pct_suffix=0x7f050287;
|
public static final int pct_suffix=0x7f050285;
|
||||||
/** If this preference is checked, tapping on the scoreboard
|
/** If this preference is checked, tapping on the scoreboard
|
||||||
entry for any player reveals that player's tiles and any
|
entry for any player reveals that player's tiles and any
|
||||||
pending move (after asking for his password if one is set.)
|
pending move (after asking for his password if one is set.)
|
||||||
|
@ -1966,7 +1967,7 @@ public final class R {
|
||||||
public static final int peek_other_summary=0x7f050167;
|
public static final int peek_other_summary=0x7f050167;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int phone_label=0x7f050228;
|
public static final int phone_label=0x7f050226;
|
||||||
/** Don't warn, but simply force to skip turn (give 0 points)
|
/** Don't warn, but simply force to skip turn (give 0 points)
|
||||||
when user attempts to play word not in the wordlist.
|
when user attempts to play word not in the wordlist.
|
||||||
*/
|
*/
|
||||||
|
@ -2104,8 +2105,8 @@ public final class R {
|
||||||
public static final int prefs_names_summary=0x7f050130;
|
public static final int prefs_names_summary=0x7f050130;
|
||||||
/** Used when prev player's name can't be looked up
|
/** Used when prev player's name can't be looked up
|
||||||
*/
|
*/
|
||||||
public static final int prev_player=0x7f0502c6;
|
public static final int prev_player=0x7f0502c4;
|
||||||
public static final int progress_title=0x7f0502b7;
|
public static final int progress_title=0x7f0502b5;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int prompt_max_len=0x7f0501fe;
|
public static final int prompt_max_len=0x7f0501fe;
|
||||||
|
@ -2150,7 +2151,7 @@ public final class R {
|
||||||
problems with the current game.
|
problems with the current game.
|
||||||
*/
|
*/
|
||||||
public static final int relay_alert=0x7f0500fa;
|
public static final int relay_alert=0x7f0500fa;
|
||||||
public static final int relay_alert_title=0x7f050278;
|
public static final int relay_alert_title=0x7f050276;
|
||||||
/** ############################################################
|
/** ############################################################
|
||||||
# :Screens:
|
# :Screens:
|
||||||
# RelayGameActivity screen
|
# RelayGameActivity screen
|
||||||
|
@ -2176,19 +2177,19 @@ public final class R {
|
||||||
public static final int relay_port=0x7f050084;
|
public static final int relay_port=0x7f050084;
|
||||||
/** Shown in toast when relaunching after switching dicts
|
/** Shown in toast when relaunching after switching dicts
|
||||||
*/
|
*/
|
||||||
public static final int reload_new_dict_fmt=0x7f050257;
|
public static final int reload_new_dict_fmt=0x7f050255;
|
||||||
public static final int remote_digesting=0x7f0502b1;
|
public static final int remote_digesting=0x7f0502af;
|
||||||
public static final int remote_empty=0x7f0502b0;
|
public static final int remote_empty=0x7f0502ae;
|
||||||
/** checkbox determining of this player is on this device or
|
/** checkbox determining of this player is on this device or
|
||||||
remote. If remote, then the rest of the fields disappear
|
remote. If remote, then the rest of the fields disappear
|
||||||
(since they will be set by the remote device.)
|
(since they will be set by the remote device.)
|
||||||
*/
|
*/
|
||||||
public static final int remote_label=0x7f0500e5;
|
public static final int remote_label=0x7f0500e5;
|
||||||
public static final int remote_no_net=0x7f0502b2;
|
public static final int remote_no_net=0x7f0502b0;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int remote_undone=0x7f05022b;
|
public static final int remote_undone=0x7f050229;
|
||||||
public static final int rename_group_label=0x7f05026d;
|
public static final int rename_group_label=0x7f05026b;
|
||||||
/** text within rename dialog (triggered by selecting
|
/** text within rename dialog (triggered by selecting
|
||||||
list_item_rename)
|
list_item_rename)
|
||||||
*/
|
*/
|
||||||
|
@ -2225,13 +2226,9 @@ public final class R {
|
||||||
/** title for popup of public rooms found on server
|
/** title for popup of public rooms found on server
|
||||||
*/
|
*/
|
||||||
public static final int room_public_prompt=0x7f0500cc;
|
public static final int room_public_prompt=0x7f0500cc;
|
||||||
public static final int scan_progress_fmt=0x7f050207;
|
public static final int sel_games_fmt=0x7f050279;
|
||||||
/**
|
public static final int sel_groups_fmt=0x7f05027a;
|
||||||
*/
|
public static final int sel_items_fmt=0x7f050299;
|
||||||
public static final int scan_progress_title=0x7f050206;
|
|
||||||
public static final int sel_games_fmt=0x7f05027b;
|
|
||||||
public static final int sel_groups_fmt=0x7f05027c;
|
|
||||||
public static final int sel_items_fmt=0x7f05029b;
|
|
||||||
/**
|
/**
|
||||||
############################################################
|
############################################################
|
||||||
# :Dialogs:
|
# :Dialogs:
|
||||||
|
@ -2254,8 +2251,8 @@ public final class R {
|
||||||
/** clarification of above
|
/** clarification of above
|
||||||
*/
|
*/
|
||||||
public static final int show_arrow_summary=0x7f05014b;
|
public static final int show_arrow_summary=0x7f05014b;
|
||||||
public static final int show_remote=0x7f0502b5;
|
public static final int show_remote=0x7f0502b3;
|
||||||
public static final int show_wordlist_browser=0x7f050277;
|
public static final int show_wordlist_browser=0x7f050275;
|
||||||
/** If this preference is checked, the user will not be asked to
|
/** If this preference is checked, the user will not be asked to
|
||||||
confirm after selecting the "Turn done" menu (or tapping the
|
confirm after selecting the "Turn done" menu (or tapping the
|
||||||
points display at the right end of the tray)
|
points display at the right end of the tray)
|
||||||
|
@ -2264,27 +2261,27 @@ public final class R {
|
||||||
/** explanation of the above
|
/** explanation of the above
|
||||||
*/
|
*/
|
||||||
public static final int skip_confirm_turn_summary=0x7f050161;
|
public static final int skip_confirm_turn_summary=0x7f050161;
|
||||||
public static final int slmenu_clear_sel=0x7f05028f;
|
public static final int slmenu_clear_sel=0x7f05028d;
|
||||||
public static final int slmenu_copy_sel=0x7f05028e;
|
public static final int slmenu_copy_sel=0x7f05028c;
|
||||||
public static final int slmenu_deselect_all=0x7f05029a;
|
public static final int slmenu_deselect_all=0x7f050298;
|
||||||
public static final int slmenu_select_all=0x7f050299;
|
public static final int slmenu_select_all=0x7f050297;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int sms_disabled=0x7f05021c;
|
public static final int sms_disabled=0x7f05021a;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int sms_networked_desc=0x7f05021b;
|
public static final int sms_networked_desc=0x7f050219;
|
||||||
/** The invitation process begins with this query. The choice is
|
/** The invitation process begins with this query. The choice is
|
||||||
between html and plaintext formatting but I also provide some
|
between html and plaintext formatting but I also provide some
|
||||||
explanation/guidance.
|
explanation/guidance.
|
||||||
*/
|
*/
|
||||||
public static final int sms_or_email=0x7f050181;
|
public static final int sms_or_email=0x7f050181;
|
||||||
public static final int sms_ready_text=0x7f050285;
|
public static final int sms_ready_text=0x7f050283;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int smsname_label=0x7f050216;
|
public static final int smsname_label=0x7f050214;
|
||||||
public static final int square_tiles=0x7f050274;
|
public static final int square_tiles=0x7f050272;
|
||||||
public static final int square_tiles_summary=0x7f050275;
|
public static final int square_tiles_summary=0x7f050273;
|
||||||
/** Used in formatting moves and history
|
/** Used in formatting moves and history
|
||||||
*/
|
*/
|
||||||
public static final int str_bonus_all=0x7f050123;
|
public static final int str_bonus_all=0x7f050123;
|
||||||
|
@ -2362,7 +2359,7 @@ public final class R {
|
||||||
public static final int str_remote_moved_fmt=0x7f050118;
|
public static final int str_remote_moved_fmt=0x7f050118;
|
||||||
/** Used in formatting final scores display
|
/** Used in formatting final scores display
|
||||||
*/
|
*/
|
||||||
public static final int str_resigned=0x7f050251;
|
public static final int str_resigned=0x7f05024f;
|
||||||
/**
|
/**
|
||||||
############################################################
|
############################################################
|
||||||
# Board info/error dialog messages
|
# Board info/error dialog messages
|
||||||
|
@ -2405,7 +2402,7 @@ public final class R {
|
||||||
public static final int str_two_tiles_first_move=0x7f05019d;
|
public static final int str_two_tiles_first_move=0x7f05019d;
|
||||||
/** Used in formatting final scores display
|
/** Used in formatting final scores display
|
||||||
*/
|
*/
|
||||||
public static final int str_winner=0x7f050252;
|
public static final int str_winner=0x7f050250;
|
||||||
/** Used in formatting game history (not move summaries since
|
/** Used in formatting game history (not move summaries since
|
||||||
information about the current rack is hidden then)
|
information about the current rack is hidden then)
|
||||||
*/
|
*/
|
||||||
|
@ -2452,10 +2449,10 @@ public final class R {
|
||||||
/** Used in formatting exchange move summaries
|
/** Used in formatting exchange move summaries
|
||||||
*/
|
*/
|
||||||
public static final int strss_traded_for_fmt=0x7f05011e;
|
public static final int strss_traded_for_fmt=0x7f05011e;
|
||||||
public static final int study_langpick=0x7f050294;
|
public static final int study_langpick=0x7f050292;
|
||||||
public static final int study_no_lang_fmt=0x7f050295;
|
public static final int study_no_lang_fmt=0x7f050293;
|
||||||
public static final int study_no_lists=0x7f050296;
|
public static final int study_no_lists=0x7f050294;
|
||||||
public static final int studylist_title_fmt=0x7f050293;
|
public static final int studylist_title_fmt=0x7f050291;
|
||||||
/** If substituting an existing same-language wordlist by
|
/** If substituting an existing same-language wordlist by
|
||||||
choosing button_substdict user gets to choose from a list of
|
choosing button_substdict user gets to choose from a list of
|
||||||
wordlists. This is the title of that list.
|
wordlists. This is the title of that list.
|
||||||
|
@ -2463,10 +2460,10 @@ public final class R {
|
||||||
public static final int subst_dict_title=0x7f0501af;
|
public static final int subst_dict_title=0x7f0501af;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int summary_conn=0x7f05020b;
|
public static final int summary_conn=0x7f050209;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int summary_conn_sms_fmt=0x7f050229;
|
public static final int summary_conn_sms_fmt=0x7f050227;
|
||||||
/** Preference to control what's listed next to game name in the
|
/** Preference to control what's listed next to game name in the
|
||||||
first line of a game summary in the main games-list screen,
|
first line of a game summary in the main games-list screen,
|
||||||
e.g., if the option is "Game Language", "English" in the
|
e.g., if the option is "Game Language", "English" in the
|
||||||
|
@ -2478,7 +2475,7 @@ public final class R {
|
||||||
public static final int summary_field=0x7f050143;
|
public static final int summary_field=0x7f050143;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int summary_gameover=0x7f05020a;
|
public static final int summary_gameover=0x7f050208;
|
||||||
/** The display of each networked game includes one of three
|
/** The display of each networked game includes one of three
|
||||||
states it can be in in the process of connecting to the
|
states it can be in in the process of connecting to the
|
||||||
relay. These next three strings are used to create those
|
relay. These next three strings are used to create those
|
||||||
|
@ -2505,19 +2502,19 @@ public final class R {
|
||||||
/** explanation of the above
|
/** explanation of the above
|
||||||
*/
|
*/
|
||||||
public static final int summary_sort_tiles=0x7f050163;
|
public static final int summary_sort_tiles=0x7f050163;
|
||||||
public static final int summary_studyon=0x7f05028c;
|
public static final int summary_studyon=0x7f05028a;
|
||||||
public static final int summary_thumbsize=0x7f05027d;
|
public static final int summary_thumbsize=0x7f05027b;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int summary_wait_guest=0x7f050209;
|
public static final int summary_wait_guest=0x7f050207;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int summary_wait_host=0x7f050208;
|
public static final int summary_wait_host=0x7f050206;
|
||||||
/** Used to indicate that a preference is not enabled, i.e. not
|
/** Used to indicate that a preference is not enabled, i.e. not
|
||||||
part of the game and that the user should ignore it.
|
part of the game and that the user should ignore it.
|
||||||
*/
|
*/
|
||||||
public static final int tell_unused=0x7f050135;
|
public static final int tell_unused=0x7f050135;
|
||||||
public static final int thumb_off=0x7f05027e;
|
public static final int thumb_off=0x7f05027c;
|
||||||
/** color of the tiles' background
|
/** color of the tiles' background
|
||||||
*/
|
*/
|
||||||
public static final int tile_back=0x7f050155;
|
public static final int tile_back=0x7f050155;
|
||||||
|
@ -2585,12 +2582,12 @@ public final class R {
|
||||||
i.e. after ever move.
|
i.e. after ever move.
|
||||||
*/
|
*/
|
||||||
public static final int title_sort_tiles=0x7f050162;
|
public static final int title_sort_tiles=0x7f050162;
|
||||||
public static final int title_studyon=0x7f05028b;
|
public static final int title_studyon=0x7f050289;
|
||||||
/** title of dialog allowing user to pick tiles "face up". (This
|
/** title of dialog allowing user to pick tiles "face up". (This
|
||||||
feature is not yet supported on Android.)
|
feature is not yet supported on Android.)
|
||||||
*/
|
*/
|
||||||
public static final int title_tile_picker=0x7f0501bd;
|
public static final int title_tile_picker=0x7f0501bd;
|
||||||
public static final int update_dicts_fmt=0x7f0502b6;
|
public static final int update_dicts_fmt=0x7f0502b4;
|
||||||
/** text of checkbox controlling whether there's a game timer
|
/** text of checkbox controlling whether there's a game timer
|
||||||
*/
|
*/
|
||||||
public static final int use_timer=0x7f0500d2;
|
public static final int use_timer=0x7f0500d2;
|
||||||
|
@ -2600,18 +2597,18 @@ public final class R {
|
||||||
public static final int vs_join=0x7f050122;
|
public static final int vs_join=0x7f050122;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int warn_nomobile_fmt=0x7f050223;
|
public static final int warn_nomobile_fmt=0x7f050221;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int warn_sms_disabled=0x7f05024a;
|
public static final int warn_sms_disabled=0x7f050248;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int warn_unlimited=0x7f05022a;
|
public static final int warn_unlimited=0x7f050228;
|
||||||
/**
|
/**
|
||||||
*/
|
*/
|
||||||
public static final int word_search_hint=0x7f0501f0;
|
public static final int word_search_hint=0x7f0501f0;
|
||||||
public static final int xlations_enabled_summary=0x7f0502a1;
|
public static final int xlations_enabled_summary=0x7f05029f;
|
||||||
public static final int xlations_enabled_title=0x7f0502a0;
|
public static final int xlations_enabled_title=0x7f05029e;
|
||||||
public static final int xlations_locale=0x7f05008a;
|
public static final int xlations_locale=0x7f05008a;
|
||||||
/** Empty in English, this should contain the name of the
|
/** Empty in English, this should contain the name of the
|
||||||
translator/creator of the strings.xml file for this
|
translator/creator of the strings.xml file for this
|
||||||
|
|
|
@ -26,7 +26,7 @@
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
>
|
>
|
||||||
<Button android:id="@+id/button_rescan"
|
<Button android:id="@+id/button_rescan"
|
||||||
android:text="@string/bt_pick_rescan_button"
|
android:text="@string/bt_pick_addall_button"
|
||||||
style="@style/evenly_spaced_horizontal"
|
style="@style/evenly_spaced_horizontal"
|
||||||
/>
|
/>
|
||||||
<!-- <Button android:id="@+id/button_reconfigure" -->
|
<!-- <Button android:id="@+id/button_reconfigure" -->
|
||||||
|
|
|
@ -1361,7 +1361,7 @@
|
||||||
many players are expected and only connects devices where the
|
many players are expected and only connects devices where the
|
||||||
numbers match. -->
|
numbers match. -->
|
||||||
<string name="str_reg_unexpected_user">Refused attempt to register
|
<string name="str_reg_unexpected_user">Refused attempt to register
|
||||||
unexpected user[s]</string>
|
unexpected user[s].</string>
|
||||||
|
|
||||||
<!-- Shown when a remote device tries to join a game and wants to
|
<!-- Shown when a remote device tries to join a game and wants to
|
||||||
play in a different language. As with the above, this should
|
play in a different language. As with the above, this should
|
||||||
|
@ -1834,15 +1834,11 @@
|
||||||
|
|
||||||
<string name="newgame_enable_bt">Turn Bluetooth on</string>
|
<string name="newgame_enable_bt">Turn Bluetooth on</string>
|
||||||
|
|
||||||
<!-- -->
|
<!-- In the Bluetooth invite device dialog -->
|
||||||
<string name="bt_pick_rescan_button">Rescan</string>
|
<string name="bt_pick_addall_button">Add all Paired</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="bt_pick_clear_button">Remove checked</string>
|
<string name="bt_pick_clear_button">Remove checked</string>
|
||||||
|
|
||||||
<!-- -->
|
|
||||||
<string name="scan_progress_title">Scanning...</string>
|
|
||||||
<string name="scan_progress_fmt">Scanning for Crosswords on %1$d
|
|
||||||
paired devices</string>
|
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="summary_wait_host">Waiting for connection[s]</string>
|
<string name="summary_wait_host">Waiting for connection[s]</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
|
@ -1866,9 +1862,9 @@
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="new_move_body">One or more moves has arrived</string>
|
<string name="new_move_body">One or more moves has arrived</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="invite_bt_desc_fmt">Please select the %1$d device[s] you
|
<string name="invite_bt_desc_fmt">Please select the %1$d device[s]
|
||||||
want to include in this game. Use the Rescan button if you
|
you want to include in this game. Use the \"Add all Paired\"
|
||||||
don\'t see a device you expect.</string>
|
button if you don\'t see a device you expect.</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="bt_resend_fmt">Bluetooth send to %1$s failed; retry %3$d in
|
<string name="bt_resend_fmt">Bluetooth send to %1$s failed; retry %3$d in
|
||||||
%2$d seconds.</string>
|
%2$d seconds.</string>
|
||||||
|
@ -2278,6 +2274,9 @@
|
||||||
|
|
||||||
<string name="bt_no_devs">You currently have no paired Bluetooth
|
<string name="bt_no_devs">You currently have no paired Bluetooth
|
||||||
devices. Would you like to open the Android Settings Panel to add
|
devices. Would you like to open the Android Settings Panel to add
|
||||||
one or more?\n\n(You may need to open it on the other device as
|
one or more?\n\n(You may also need to open it on the device you
|
||||||
well.)</string>
|
want to pair with.)</string>
|
||||||
|
<string name="app_not_found_fmt">Unable to connect to Crosswords
|
||||||
|
on the device %1$s. Please check that the device is within range
|
||||||
|
and that Crosswords is installed on it.</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -1165,7 +1165,7 @@
|
||||||
many players are expected and only connects devices where the
|
many players are expected and only connects devices where the
|
||||||
numbers match. -->
|
numbers match. -->
|
||||||
<string name="str_reg_unexpected_user">Desufer tpmetta ot retsiger
|
<string name="str_reg_unexpected_user">Desufer tpmetta ot retsiger
|
||||||
detcepxenu ]s[resu</string>
|
detcepxenu ]s[resu.</string>
|
||||||
<!-- Shown when a remote device tries to join a game and wants to
|
<!-- Shown when a remote device tries to join a game and wants to
|
||||||
play in a different language. As with the above, this should
|
play in a different language. As with the above, this should
|
||||||
be impossible when connecting via the relay. -->
|
be impossible when connecting via the relay. -->
|
||||||
|
@ -1572,15 +1572,11 @@
|
||||||
noisrev: \"%1$s\"; dna ledom/ekam fo ruoy enohp ro
|
noisrev: \"%1$s\"; dna ledom/ekam fo ruoy enohp ro
|
||||||
telbat.)</string>
|
telbat.)</string>
|
||||||
<string name="newgame_enable_bt">Nrut Htooteulb no</string>
|
<string name="newgame_enable_bt">Nrut Htooteulb no</string>
|
||||||
<!-- -->
|
<!-- In the Bluetooth invite device dialog -->
|
||||||
<string name="bt_pick_rescan_button">Nacser</string>
|
<string name="bt_pick_addall_button">Dda lla Deriap</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="bt_pick_clear_button">Evomer dekcehc</string>
|
<string name="bt_pick_clear_button">Evomer dekcehc</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="scan_progress_title">Gninnacs...</string>
|
|
||||||
<string name="scan_progress_fmt">Gninnacs rof Sdrowssorc no %1$d
|
|
||||||
deriap secived</string>
|
|
||||||
<!-- -->
|
|
||||||
<string name="summary_wait_host">Gnitiaw rof ]s[noitcennoc</string>
|
<string name="summary_wait_host">Gnitiaw rof ]s[noitcennoc</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="summary_wait_guest">Detcennocnu</string>
|
<string name="summary_wait_guest">Detcennocnu</string>
|
||||||
|
@ -1602,9 +1598,9 @@
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="new_move_body">Eno ro erom sevom sah devirra</string>
|
<string name="new_move_body">Eno ro erom sevom sah devirra</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="invite_bt_desc_fmt">Esaelp tceles eht %1$d ]s[ecived uoy
|
<string name="invite_bt_desc_fmt">Esaelp tceles eht %1$d ]s[ecived
|
||||||
tnaw ot edulcni ni siht emag. Esu eht Nacser nottub fi uoy
|
uoy tnaw ot edulcni ni siht emag. Esu eht \"Dda lla Deriap\"
|
||||||
nod\'t ees a ecived uoy tcepxe.</string>
|
nottub fi uoy nod\'t ees a ecived uoy tcepxe.</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="bt_resend_fmt">Htooteulb dnes ot %1$s deliaf; yrter %3$d ni
|
<string name="bt_resend_fmt">Htooteulb dnes ot %1$s deliaf; yrter %3$d ni
|
||||||
%2$d sdnoces.</string>
|
%2$d sdnoces.</string>
|
||||||
|
@ -1945,6 +1941,9 @@
|
||||||
<string name="bt_err_count_fmt">%1$d htooteulb srorre os raf</string>
|
<string name="bt_err_count_fmt">%1$d htooteulb srorre os raf</string>
|
||||||
<string name="bt_no_devs">Uoy yltnerruc evah on deriap Htooteulb
|
<string name="bt_no_devs">Uoy yltnerruc evah on deriap Htooteulb
|
||||||
secived. Dluow uoy ekil ot nepo eht Diordna Sgnittes Lenap ot dda
|
secived. Dluow uoy ekil ot nepo eht Diordna Sgnittes Lenap ot dda
|
||||||
eno ro ?erom\n\nuOy( yam deen ot nepo ti no eht rehto ecived sa
|
eno ro ?erom\n\nuOy( yam osla deen ot nepo ti no eht ecived uoy
|
||||||
llew.)</string>
|
tnaw ot riap htiw.)</string>
|
||||||
|
<string name="app_not_found_fmt">Elbanu ot tcennoc ot Sdrowssorc
|
||||||
|
no eht ecived %1$s. Esaelp kcehc taht eht ecived si nihtiw egnar
|
||||||
|
dna taht Sdrowssorc si dellatsni no ti.</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -1165,7 +1165,7 @@
|
||||||
many players are expected and only connects devices where the
|
many players are expected and only connects devices where the
|
||||||
numbers match. -->
|
numbers match. -->
|
||||||
<string name="str_reg_unexpected_user">REFUSED ATTEMPT TO REGISTER
|
<string name="str_reg_unexpected_user">REFUSED ATTEMPT TO REGISTER
|
||||||
UNEXPECTED USER[S]</string>
|
UNEXPECTED USER[S].</string>
|
||||||
<!-- Shown when a remote device tries to join a game and wants to
|
<!-- Shown when a remote device tries to join a game and wants to
|
||||||
play in a different language. As with the above, this should
|
play in a different language. As with the above, this should
|
||||||
be impossible when connecting via the relay. -->
|
be impossible when connecting via the relay. -->
|
||||||
|
@ -1572,15 +1572,11 @@
|
||||||
VERSION: \"%1$s\"; AND MAKE/MODEL OF YOUR PHONE OR
|
VERSION: \"%1$s\"; AND MAKE/MODEL OF YOUR PHONE OR
|
||||||
TABLET.)</string>
|
TABLET.)</string>
|
||||||
<string name="newgame_enable_bt">TURN BLUETOOTH ON</string>
|
<string name="newgame_enable_bt">TURN BLUETOOTH ON</string>
|
||||||
<!-- -->
|
<!-- In the Bluetooth invite device dialog -->
|
||||||
<string name="bt_pick_rescan_button">RESCAN</string>
|
<string name="bt_pick_addall_button">ADD ALL PAIRED</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="bt_pick_clear_button">REMOVE CHECKED</string>
|
<string name="bt_pick_clear_button">REMOVE CHECKED</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="scan_progress_title">SCANNING...</string>
|
|
||||||
<string name="scan_progress_fmt">SCANNING FOR CROSSWORDS ON %1$d
|
|
||||||
PAIRED DEVICES</string>
|
|
||||||
<!-- -->
|
|
||||||
<string name="summary_wait_host">WAITING FOR CONNECTION[S]</string>
|
<string name="summary_wait_host">WAITING FOR CONNECTION[S]</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="summary_wait_guest">UNCONNECTED</string>
|
<string name="summary_wait_guest">UNCONNECTED</string>
|
||||||
|
@ -1602,9 +1598,9 @@
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="new_move_body">ONE OR MORE MOVES HAS ARRIVED</string>
|
<string name="new_move_body">ONE OR MORE MOVES HAS ARRIVED</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="invite_bt_desc_fmt">PLEASE SELECT THE %1$d DEVICE[S] YOU
|
<string name="invite_bt_desc_fmt">PLEASE SELECT THE %1$d DEVICE[S]
|
||||||
WANT TO INCLUDE IN THIS GAME. USE THE RESCAN BUTTON IF YOU
|
YOU WANT TO INCLUDE IN THIS GAME. USE THE \"ADD ALL PAIRED\"
|
||||||
DON\'T SEE A DEVICE YOU EXPECT.</string>
|
BUTTON IF YOU DON\'T SEE A DEVICE YOU EXPECT.</string>
|
||||||
<!-- -->
|
<!-- -->
|
||||||
<string name="bt_resend_fmt">BLUETOOTH SEND TO %1$s FAILED; RETRY %3$d IN
|
<string name="bt_resend_fmt">BLUETOOTH SEND TO %1$s FAILED; RETRY %3$d IN
|
||||||
%2$d SECONDS.</string>
|
%2$d SECONDS.</string>
|
||||||
|
@ -1945,6 +1941,9 @@
|
||||||
<string name="bt_err_count_fmt">%1$d BLUETOOTH ERRORS SO FAR</string>
|
<string name="bt_err_count_fmt">%1$d BLUETOOTH ERRORS SO FAR</string>
|
||||||
<string name="bt_no_devs">YOU CURRENTLY HAVE NO PAIRED BLUETOOTH
|
<string name="bt_no_devs">YOU CURRENTLY HAVE NO PAIRED BLUETOOTH
|
||||||
DEVICES. WOULD YOU LIKE TO OPEN THE ANDROID SETTINGS PANEL TO ADD
|
DEVICES. WOULD YOU LIKE TO OPEN THE ANDROID SETTINGS PANEL TO ADD
|
||||||
ONE OR MORE?\n\n(YOU MAY NEED TO OPEN IT ON THE OTHER DEVICE AS
|
ONE OR MORE?\n\n(YOU MAY ALSO NEED TO OPEN IT ON THE DEVICE YOU
|
||||||
WELL.)</string>
|
WANT TO PAIR WITH.)</string>
|
||||||
|
<string name="app_not_found_fmt">UNABLE TO CONNECT TO CROSSWORDS
|
||||||
|
ON THE DEVICE %1$s. PLEASE CHECK THAT THE DEVICE IS WITHIN RANGE
|
||||||
|
AND THAT CROSSWORDS IS INSTALLED ON IT.</string>
|
||||||
</resources>
|
</resources>
|
||||||
|
|
|
@ -39,7 +39,9 @@ import android.widget.LinearLayout;
|
||||||
import android.widget.ListView;
|
import android.widget.ListView;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
|
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import junit.framework.Assert;
|
import junit.framework.Assert;
|
||||||
|
@ -88,7 +90,6 @@ public class BTInviteDelegate extends InviteDelegate {
|
||||||
post( new Runnable() {
|
post( new Runnable() {
|
||||||
public void run() {
|
public void run() {
|
||||||
synchronized( BTInviteDelegate.this ) {
|
synchronized( BTInviteDelegate.this ) {
|
||||||
stopProgress();
|
|
||||||
|
|
||||||
String[] btDevAddrs = null;
|
String[] btDevAddrs = null;
|
||||||
String[] btDevNames = null;
|
String[] btDevNames = null;
|
||||||
|
@ -102,9 +103,6 @@ public class BTInviteDelegate extends InviteDelegate {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( null == btDevNames && m_firstScan ) {
|
|
||||||
BTService.scan( m_activity );
|
|
||||||
}
|
|
||||||
m_setChecked = null != btDevNames
|
m_setChecked = null != btDevNames
|
||||||
&& m_nMissing == btDevNames.length;
|
&& m_nMissing == btDevNames.length;
|
||||||
m_adapter = new BTDevsAdapter( btDevAddrs, btDevNames );
|
m_adapter = new BTDevsAdapter( btDevAddrs, btDevNames );
|
||||||
|
@ -125,8 +123,6 @@ public class BTInviteDelegate extends InviteDelegate {
|
||||||
{
|
{
|
||||||
int count = BTService.getPairedCount( m_activity );
|
int count = BTService.getPairedCount( m_activity );
|
||||||
if ( 0 < count ) {
|
if ( 0 < count ) {
|
||||||
String msg = getString( R.string.scan_progress_fmt, count );
|
|
||||||
startProgress( R.string.scan_progress_title, msg );
|
|
||||||
BTService.scan( m_activity );
|
BTService.scan( m_activity );
|
||||||
} else {
|
} else {
|
||||||
showConfirmThen( R.string.bt_no_devs, R.string.button_go_settings,
|
showConfirmThen( R.string.bt_no_devs, R.string.button_go_settings,
|
||||||
|
@ -148,8 +144,8 @@ public class BTInviteDelegate extends InviteDelegate {
|
||||||
for ( int ii = 0; ii < count; ++ii ) {
|
for ( int ii = 0; ii < count; ++ii ) {
|
||||||
CheckBox box = (CheckBox)list.getChildAt( ii );
|
CheckBox box = (CheckBox)list.getChildAt( ii );
|
||||||
if ( box.isChecked() ) {
|
if ( box.isChecked() ) {
|
||||||
String btAddr = m_adapter.getBTAddr( ii );
|
String btAddr = m_adapter.getBTAddr( box );
|
||||||
String btName = m_adapter.getBTName( ii );
|
String btName = m_adapter.getBTName( box );
|
||||||
Assert.assertTrue( box.getText().toString().equals( btName ) );
|
Assert.assertTrue( box.getText().toString().equals( btName ) );
|
||||||
result[index++] = btAddr;
|
result[index++] = btAddr;
|
||||||
}
|
}
|
||||||
|
@ -167,9 +163,11 @@ public class BTInviteDelegate extends InviteDelegate {
|
||||||
private class BTDevsAdapter extends XWListAdapter {
|
private class BTDevsAdapter extends XWListAdapter {
|
||||||
private String[] m_devAddrs;
|
private String[] m_devAddrs;
|
||||||
private String[] m_devNames;
|
private String[] m_devNames;
|
||||||
|
private Map<CheckBox, String> m_boxAddrs;
|
||||||
public BTDevsAdapter( String[] btAddrs, String[] btNames )
|
public BTDevsAdapter( String[] btAddrs, String[] btNames )
|
||||||
{
|
{
|
||||||
super( null == btAddrs? 0 : btAddrs.length );
|
super( null == btAddrs? 0 : btAddrs.length );
|
||||||
|
m_boxAddrs = new HashMap<CheckBox, String>();
|
||||||
m_devAddrs = btAddrs;
|
m_devAddrs = btAddrs;
|
||||||
m_devNames = btNames;
|
m_devNames = btNames;
|
||||||
}
|
}
|
||||||
|
@ -179,6 +177,7 @@ public class BTInviteDelegate extends InviteDelegate {
|
||||||
ViewGroup parent ) {
|
ViewGroup parent ) {
|
||||||
CheckBox box = (CheckBox)inflate( R.layout.btinviter_item );
|
CheckBox box = (CheckBox)inflate( R.layout.btinviter_item );
|
||||||
box.setText( m_devNames[position] );
|
box.setText( m_devNames[position] );
|
||||||
|
m_boxAddrs.put( box, m_devAddrs[position] );
|
||||||
|
|
||||||
CompoundButton.OnCheckedChangeListener listener =
|
CompoundButton.OnCheckedChangeListener listener =
|
||||||
new CompoundButton.OnCheckedChangeListener() {
|
new CompoundButton.OnCheckedChangeListener() {
|
||||||
|
@ -203,8 +202,8 @@ public class BTInviteDelegate extends InviteDelegate {
|
||||||
return box;
|
return box;
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getBTAddr( int indx ) { return m_devAddrs[indx]; }
|
public String getBTAddr( CheckBox box ) { return m_boxAddrs.get(box); }
|
||||||
public String getBTName( int indx ) { return m_devNames[indx]; }
|
public String getBTName( CheckBox box ) { return box.getText().toString(); }
|
||||||
}
|
}
|
||||||
|
|
||||||
// DlgDelegate.DlgClickNotify interface
|
// DlgDelegate.DlgClickNotify interface
|
||||||
|
|
|
@ -275,8 +275,8 @@ public class BTService extends XWService {
|
||||||
? BluetoothAdapter.getDefaultAdapter() : null;
|
? BluetoothAdapter.getDefaultAdapter() : null;
|
||||||
if ( null != adapter && adapter.isEnabled() ) {
|
if ( null != adapter && adapter.isEnabled() ) {
|
||||||
m_adapter = adapter;
|
m_adapter = adapter;
|
||||||
DbgUtils.logf( "BTService.onCreate(); bt name = %s",
|
DbgUtils.logf( "BTService.onCreate(); bt name = %s; bt addr = %s",
|
||||||
adapter.getName() );
|
adapter.getName(), adapter.getAddress() );
|
||||||
initAddrs();
|
initAddrs();
|
||||||
listLocalBTGames( false );
|
listLocalBTGames( false );
|
||||||
startListener();
|
startListener();
|
||||||
|
@ -658,7 +658,7 @@ public class BTService extends XWService {
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SCAN:
|
case SCAN:
|
||||||
sendPings( null );
|
addAllToNames();
|
||||||
sendNames();
|
sendNames();
|
||||||
saveAddrs();
|
saveAddrs();
|
||||||
break;
|
break;
|
||||||
|
@ -776,18 +776,14 @@ public class BTService extends XWService {
|
||||||
}
|
}
|
||||||
socket.close();
|
socket.close();
|
||||||
|
|
||||||
if ( BTCmd.BAD_PROTO == reply ) {
|
if ( null == reply ) {
|
||||||
|
sendResult( MultiEvent.APP_NOT_FOUND, dev.getName() );
|
||||||
|
} else if ( BTCmd.BAD_PROTO == reply ) {
|
||||||
sendBadProto( socket );
|
sendBadProto( socket );
|
||||||
} else {
|
} else if ( BTCmd.INVITE_ACCPT == reply ) {
|
||||||
MultiEvent evt = null;
|
sendResult( MultiEvent.NEWGAME_SUCCESS, elem.m_gameID );
|
||||||
switch( reply ) {
|
} else {
|
||||||
case INVITE_ACCPT:
|
sendResult( MultiEvent.NEWGAME_FAILURE, elem.m_gameID );
|
||||||
evt = MultiEvent.NEWGAME_SUCCESS;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
evt = MultiEvent.NEWGAME_FAILURE;
|
|
||||||
}
|
|
||||||
sendResult( evt, elem.m_gameID );
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch ( IOException ioe ) {
|
} catch ( IOException ioe ) {
|
||||||
|
@ -929,6 +925,16 @@ public class BTService extends XWService {
|
||||||
|
|
||||||
} // class BTSenderThread
|
} // class BTSenderThread
|
||||||
|
|
||||||
|
private void addAllToNames()
|
||||||
|
{
|
||||||
|
Set<BluetoothDevice> pairedDevs = m_adapter.getBondedDevices();
|
||||||
|
synchronized( m_addrs ) {
|
||||||
|
for ( BluetoothDevice dev : pairedDevs ) {
|
||||||
|
m_addrs.add( dev.getAddress() );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void sendNames()
|
private void sendNames()
|
||||||
{
|
{
|
||||||
String[] btAddrs = getAddrs();
|
String[] btAddrs = getAddrs();
|
||||||
|
|
|
@ -131,9 +131,7 @@ public class BoardDelegate extends DelegateBase
|
||||||
private String m_pwdName;
|
private String m_pwdName;
|
||||||
private String m_getDict;
|
private String m_getDict;
|
||||||
|
|
||||||
// Join these two!!!
|
private int m_nMissing = -1;
|
||||||
private int m_nMissingPlayers = -1;
|
|
||||||
private int m_missing;
|
|
||||||
private boolean m_haveInvited = false;
|
private boolean m_haveInvited = false;
|
||||||
private boolean m_overNotShown;
|
private boolean m_overNotShown;
|
||||||
|
|
||||||
|
@ -485,10 +483,10 @@ public class BoardDelegate extends DelegateBase
|
||||||
case DLG_INVITE:
|
case DLG_INVITE:
|
||||||
AlertDialog ad = (AlertDialog)dialog;
|
AlertDialog ad = (AlertDialog)dialog;
|
||||||
String message =
|
String message =
|
||||||
getString( R.string.invite_msg_fmt, m_missing );
|
getString( R.string.invite_msg_fmt, m_nMissing );
|
||||||
|
|
||||||
String ps = null;
|
String ps = null;
|
||||||
if ( m_missing > 1 ) {
|
if ( m_nMissing > 1 ) {
|
||||||
ps = getString( R.string.invite_multiple );
|
ps = getString( R.string.invite_multiple );
|
||||||
} else {
|
} else {
|
||||||
boolean[] avail = NFCUtils.nfcAvail( m_activity );
|
boolean[] avail = NFCUtils.nfcAvail( m_activity );
|
||||||
|
@ -727,7 +725,7 @@ public class BoardDelegate extends DelegateBase
|
||||||
m_gsi.canUndo );
|
m_gsi.canUndo );
|
||||||
}
|
}
|
||||||
|
|
||||||
Utils.setItemVisible( menu, R.id.board_menu_invite, 0 < m_missing );
|
Utils.setItemVisible( menu, R.id.board_menu_invite, 0 < m_nMissing );
|
||||||
|
|
||||||
Utils.setItemVisible( menu, R.id.board_menu_trade_cancel, inTrade );
|
Utils.setItemVisible( menu, R.id.board_menu_trade_cancel, inTrade );
|
||||||
Utils.setItemVisible( menu, R.id.board_menu_trade_commit,
|
Utils.setItemVisible( menu, R.id.board_menu_trade_commit,
|
||||||
|
@ -845,7 +843,7 @@ public class BoardDelegate extends DelegateBase
|
||||||
showConfirmThen( R.string.confirm_undo_last, Action.UNDO_LAST_ACTION );
|
showConfirmThen( R.string.confirm_undo_last, Action.UNDO_LAST_ACTION );
|
||||||
break;
|
break;
|
||||||
case R.id.board_menu_invite:
|
case R.id.board_menu_invite:
|
||||||
showDialog( DlgID.DLG_INVITE );
|
inviteForMissing();
|
||||||
break;
|
break;
|
||||||
// small devices only
|
// small devices only
|
||||||
case R.id.board_menu_dict:
|
case R.id.board_menu_dict:
|
||||||
|
@ -933,11 +931,11 @@ public class BoardDelegate extends DelegateBase
|
||||||
doSyncMenuitem();
|
doSyncMenuitem();
|
||||||
break;
|
break;
|
||||||
case BT_PICK_ACTION:
|
case BT_PICK_ACTION:
|
||||||
BTInviteDelegate.launchForResult( m_activity, m_nMissingPlayers,
|
BTInviteDelegate.launchForResult( m_activity, m_nMissing,
|
||||||
BT_INVITE_RESULT );
|
BT_INVITE_RESULT );
|
||||||
break;
|
break;
|
||||||
case SMS_PICK_ACTION:
|
case SMS_PICK_ACTION:
|
||||||
SMSInviteDelegate.launchForResult( m_activity, m_nMissingPlayers,
|
SMSInviteDelegate.launchForResult( m_activity, m_nMissing,
|
||||||
SMS_INVITE_RESULT );
|
SMS_INVITE_RESULT );
|
||||||
break;
|
break;
|
||||||
case SMS_CONFIG_ACTION:
|
case SMS_CONFIG_ACTION:
|
||||||
|
@ -1161,13 +1159,12 @@ public class BoardDelegate extends DelegateBase
|
||||||
//////////////////////////////////////////////////
|
//////////////////////////////////////////////////
|
||||||
// NFCUtils.NFCActor
|
// NFCUtils.NFCActor
|
||||||
//////////////////////////////////////////////////
|
//////////////////////////////////////////////////
|
||||||
|
|
||||||
public String makeNFCMessage()
|
public String makeNFCMessage()
|
||||||
{
|
{
|
||||||
String data = null;
|
String data = null;
|
||||||
switch ( m_connType ) {
|
switch ( m_connType ) {
|
||||||
case COMMS_CONN_RELAY:
|
case COMMS_CONN_RELAY:
|
||||||
if ( 0 < m_missing ) { // Isn't there a better test??
|
if ( 0 < m_nMissing ) { // Isn't there a better test??
|
||||||
String room = m_summary.roomName;
|
String room = m_summary.roomName;
|
||||||
String inviteID = String.format( "%X", m_gi.gameID );
|
String inviteID = String.format( "%X", m_gi.gameID );
|
||||||
Assert.assertNotNull( room );
|
Assert.assertNotNull( room );
|
||||||
|
@ -1177,7 +1174,7 @@ public class BoardDelegate extends DelegateBase
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case COMMS_CONN_BT:
|
case COMMS_CONN_BT:
|
||||||
if ( 0 < m_nMissingPlayers ) {
|
if ( 0 < m_nMissing ) {
|
||||||
data = BTLaunchInfo.makeLaunchJSON( m_gi.gameID, m_gi.dictLang,
|
data = BTLaunchInfo.makeLaunchJSON( m_gi.gameID, m_gi.dictLang,
|
||||||
m_gi.dictName, m_gi.nPlayers );
|
m_gi.dictName, m_gi.nPlayers );
|
||||||
removeDialog( DlgID.CONFIRM_THEN );
|
removeDialog( DlgID.CONFIRM_THEN );
|
||||||
|
@ -1311,6 +1308,7 @@ public class BoardDelegate extends DelegateBase
|
||||||
int naMsg = 0;
|
int naMsg = 0;
|
||||||
int naKey = 0;
|
int naKey = 0;
|
||||||
String toastStr = null;
|
String toastStr = null;
|
||||||
|
m_nMissing = nMissing;
|
||||||
if ( allHere ) {
|
if ( allHere ) {
|
||||||
// All players have now joined the game. The device that
|
// All players have now joined the game. The device that
|
||||||
// created the room will assign tiles. Then it will be
|
// created the room will assign tiles. Then it will be
|
||||||
|
@ -1328,7 +1326,6 @@ public class BoardDelegate extends DelegateBase
|
||||||
if ( !m_haveInvited ) {
|
if ( !m_haveInvited ) {
|
||||||
m_haveInvited = true;
|
m_haveInvited = true;
|
||||||
m_room = room;
|
m_room = room;
|
||||||
m_missing = nMissing;
|
|
||||||
showDialog( DlgID.DLG_INVITE );
|
showDialog( DlgID.DLG_INVITE );
|
||||||
invalidateOptionsMenuIf();
|
invalidateOptionsMenuIf();
|
||||||
} else {
|
} else {
|
||||||
|
@ -1354,7 +1351,6 @@ public class BoardDelegate extends DelegateBase
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
m_missing = nMissing;
|
|
||||||
invalidateOptionsMenuIf();
|
invalidateOptionsMenuIf();
|
||||||
} // handleConndMessage
|
} // handleConndMessage
|
||||||
|
|
||||||
|
@ -1526,6 +1522,7 @@ public class BoardDelegate extends DelegateBase
|
||||||
public void turnChanged( int newTurn )
|
public void turnChanged( int newTurn )
|
||||||
{
|
{
|
||||||
if ( 0 <= newTurn ) {
|
if ( 0 <= newTurn ) {
|
||||||
|
m_nMissing = 0;
|
||||||
post( new Runnable() {
|
post( new Runnable() {
|
||||||
public void run() {
|
public void run() {
|
||||||
showNotAgainDlgThen( R.string.not_again_turnchanged,
|
showNotAgainDlgThen( R.string.not_again_turnchanged,
|
||||||
|
@ -1642,12 +1639,14 @@ public class BoardDelegate extends DelegateBase
|
||||||
// missing or not.
|
// missing or not.
|
||||||
@Override
|
@Override
|
||||||
public void informMissing( boolean isServer, CommsConnType connType,
|
public void informMissing( boolean isServer, CommsConnType connType,
|
||||||
final int nMissingPlayers )
|
final int nMissing )
|
||||||
{
|
{
|
||||||
m_connType = connType;
|
m_connType = connType;
|
||||||
|
Assert.assertTrue( isServer || 0 == nMissing );
|
||||||
|
m_nMissing = nMissing; // will be 0 unless isServer is true
|
||||||
|
|
||||||
Action action = null;
|
Action action = null;
|
||||||
if ( 0 < nMissingPlayers && isServer && !m_haveInvited ) {
|
if ( 0 < nMissing && isServer && !m_haveInvited ) {
|
||||||
switch( connType ) {
|
switch( connType ) {
|
||||||
case COMMS_CONN_BT:
|
case COMMS_CONN_BT:
|
||||||
action = Action.BT_PICK_ACTION;
|
action = Action.BT_PICK_ACTION;
|
||||||
|
@ -1658,27 +1657,7 @@ public class BoardDelegate extends DelegateBase
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ( null != action ) {
|
if ( null != action ) {
|
||||||
m_haveInvited = true;
|
nonRelayInvite( action );
|
||||||
final Action faction = action;
|
|
||||||
post( new Runnable() {
|
|
||||||
public void run() {
|
|
||||||
DbgUtils.showf( m_activity,
|
|
||||||
getString( R.string.players_miss_fmt,
|
|
||||||
nMissingPlayers ) );
|
|
||||||
m_nMissingPlayers = nMissingPlayers;
|
|
||||||
String msg = getString( R.string.invite_msg_fmt,
|
|
||||||
nMissingPlayers );
|
|
||||||
|
|
||||||
if ( Action.BT_PICK_ACTION == faction ) {
|
|
||||||
boolean[] avail = NFCUtils.nfcAvail( m_activity );
|
|
||||||
if ( avail[1] ) {
|
|
||||||
msg += "\n\n" + getString( R.string.invite_if_nfc );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
showConfirmThen( msg, R.string.newgame_invite, faction );
|
|
||||||
}
|
|
||||||
} );
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1786,6 +1765,43 @@ public class BoardDelegate extends DelegateBase
|
||||||
}
|
}
|
||||||
} // class BoardUtilCtxt
|
} // class BoardUtilCtxt
|
||||||
|
|
||||||
|
private void inviteForMissing() {
|
||||||
|
switch( m_connType ) {
|
||||||
|
case COMMS_CONN_BT:
|
||||||
|
nonRelayInvite( Action.BT_PICK_ACTION );
|
||||||
|
break;
|
||||||
|
case COMMS_CONN_SMS:
|
||||||
|
nonRelayInvite( Action.SMS_PICK_ACTION );
|
||||||
|
break;
|
||||||
|
case COMMS_CONN_RELAY:
|
||||||
|
showDialog( DlgID.DLG_INVITE );
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void nonRelayInvite( final Action action )
|
||||||
|
{
|
||||||
|
m_haveInvited = true;
|
||||||
|
post( new Runnable() {
|
||||||
|
public void run() {
|
||||||
|
DbgUtils.showf( m_activity,
|
||||||
|
getString( R.string.players_miss_fmt,
|
||||||
|
m_nMissing ) );
|
||||||
|
String msg = getString( R.string.invite_msg_fmt,
|
||||||
|
m_nMissing );
|
||||||
|
|
||||||
|
if ( Action.BT_PICK_ACTION == action ) {
|
||||||
|
boolean[] avail = NFCUtils.nfcAvail( m_activity );
|
||||||
|
if ( avail[1] ) {
|
||||||
|
msg += "\n\n" + getString( R.string.invite_if_nfc );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
showConfirmThen( msg, R.string.newgame_invite, action );
|
||||||
|
}
|
||||||
|
} );
|
||||||
|
}
|
||||||
|
|
||||||
private void loadGame()
|
private void loadGame()
|
||||||
{
|
{
|
||||||
if ( 0 == m_jniGamePtr ) {
|
if ( 0 == m_jniGamePtr ) {
|
||||||
|
|
|
@ -37,6 +37,7 @@ import android.widget.TextView;
|
||||||
|
|
||||||
import org.eehouse.android.xw4.DlgDelegate.Action;
|
import org.eehouse.android.xw4.DlgDelegate.Action;
|
||||||
import org.eehouse.android.xw4.loc.LocUtils;
|
import org.eehouse.android.xw4.loc.LocUtils;
|
||||||
|
import org.eehouse.android.xw4.MultiService.MultiEvent;
|
||||||
|
|
||||||
import junit.framework.Assert;
|
import junit.framework.Assert;
|
||||||
|
|
||||||
|
@ -445,7 +446,7 @@ public class DelegateBase implements DlgDelegate.DlgClickNotify,
|
||||||
//////////////////////////////////////////////////
|
//////////////////////////////////////////////////
|
||||||
// MultiService.MultiEventListener interface
|
// MultiService.MultiEventListener interface
|
||||||
//////////////////////////////////////////////////
|
//////////////////////////////////////////////////
|
||||||
public void eventOccurred( MultiService.MultiEvent event, final Object ... args )
|
public void eventOccurred( MultiEvent event, final Object ... args )
|
||||||
{
|
{
|
||||||
switch( event ) {
|
switch( event ) {
|
||||||
case BT_ERR_COUNT:
|
case BT_ERR_COUNT:
|
||||||
|
@ -457,7 +458,10 @@ public class DelegateBase implements DlgDelegate.DlgClickNotify,
|
||||||
DbgUtils.logf( "Bluetooth error count: %d", count );
|
DbgUtils.logf( "Bluetooth error count: %d", count );
|
||||||
break;
|
break;
|
||||||
case BAD_PROTO:
|
case BAD_PROTO:
|
||||||
final String msg = getString( R.string.bt_bad_proto_fmt, (String)args[0] );
|
case APP_NOT_FOUND:
|
||||||
|
final String msg = MultiEvent.BAD_PROTO == event
|
||||||
|
? getString( R.string.bt_bad_proto_fmt, (String)args[0] )
|
||||||
|
: getString( R.string.app_not_found_fmt, (String)args[0] );
|
||||||
runOnUiThread( new Runnable() {
|
runOnUiThread( new Runnable() {
|
||||||
public void run() {
|
public void run() {
|
||||||
showOKOnlyDialog( msg );
|
showOKOnlyDialog( msg );
|
||||||
|
|
|
@ -49,6 +49,7 @@ public class MultiService {
|
||||||
// these do not currently pass between devices so they can change.
|
// these do not currently pass between devices so they can change.
|
||||||
public enum MultiEvent { _INVALID,
|
public enum MultiEvent { _INVALID,
|
||||||
BAD_PROTO,
|
BAD_PROTO,
|
||||||
|
APP_NOT_FOUND,
|
||||||
BT_ENABLED,
|
BT_ENABLED,
|
||||||
BT_DISABLED,
|
BT_DISABLED,
|
||||||
SCAN_DONE,
|
SCAN_DONE,
|
||||||
|
|
Loading…
Add table
Reference in a new issue