diff --git a/.projectile b/.projectile
index acf1e3e9a..e639096cc 100644
--- a/.projectile
+++ b/.projectile
@@ -1,6 +1,4 @@
-TAGS
--/xwords4/android/XWords4-dbg
+-/xwords4/android/app/build
-/xwords4/linux/discon_ok2.sh_logs
--/xwords4/android/XWords4/res_src/values-pt/strings.xml
--/xwords4/android/XWords4/res_src/values-ba_CK/strings.xml
-/xwords4/relay/xwrelay.log
diff --git a/xwords4/android/XWords4-dbg/.gitignore b/xwords4/android/XWords4-dbg/.gitignore
deleted file mode 100644
index 0681338cd..000000000
--- a/xwords4/android/XWords4-dbg/.gitignore
+++ /dev/null
@@ -1,7 +0,0 @@
-*.apk
-ant_out.txt
-local.properties
-bin
-gen
-proguard.cfg
-obj
diff --git a/xwords4/android/XWords4-dbg/archive/.gitignore b/xwords4/android/XWords4-dbg/archive/.gitignore
deleted file mode 100644
index d91be1b56..000000000
--- a/xwords4/android/XWords4-dbg/archive/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/R.java
diff --git a/xwords4/android/XWords4-dbg/assets/.gitignore b/xwords4/android/XWords4-dbg/assets/.gitignore
deleted file mode 100644
index 7ea20678c..000000000
--- a/xwords4/android/XWords4-dbg/assets/.gitignore
+++ /dev/null
@@ -1,5 +0,0 @@
-BasEnglish2to8.xwd
-CollegeEng_2to8.xwd
-Top5000.xwd
-changes.html
-gitvers.txt
diff --git a/xwords4/android/XWords4-dbg/build.xml b/xwords4/android/XWords4-dbg/build.xml
deleted file mode 100644
index dfc0150f1..000000000
--- a/xwords4/android/XWords4-dbg/build.xml
+++ /dev/null
@@ -1,111 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/xwords4/android/XWords4-dbg/img_src/.gitignore b/xwords4/android/XWords4-dbg/img_src/.gitignore
deleted file mode 100644
index 177ab2ad1..000000000
--- a/xwords4/android/XWords4-dbg/img_src/.gitignore
+++ /dev/null
@@ -1,25 +0,0 @@
-/clear_all.svg
-/search.svg
-/select_all.svg
-back.svg
-content_copy.svg
-content_discard.svg
-content_new.svg
-dict.svg
-down.svg
-download.svg
-email.svg
-new_group.svg
-prefs.svg
-relabel.svg
-reset.svg
-save.svg
-send.svg
-up.svg
-clear_all.svg
-search.svg
-select_all.svg
-content_new_net.svg
-content_new_solo.svg
-multigame.svg
-sologame.svg
diff --git a/xwords4/android/XWords4-dbg/jni/.gitignore b/xwords4/android/XWords4-dbg/jni/.gitignore
deleted file mode 100644
index 1c7bf1313..000000000
--- a/xwords4/android/XWords4-dbg/jni/.gitignore
+++ /dev/null
@@ -1,20 +0,0 @@
-anddict.c
-anddict.h
-andglobals.h
-Android.mk
-andutils.c
-andutils.h
-drawwrapper.c
-drawwrapper.h
-jniutlswrapper.c
-jniutlswrapper.h
-LocalizedStrIncludes.h
-utils.c
-utilwrapper.c
-utilwrapper.h
-xportwrapper.c
-xportwrapper.h
-xptypes.h
-xwjni.c
-paths.h
-Application.mk
diff --git a/xwords4/android/XWords4-dbg/libs/.gitignore b/xwords4/android/XWords4-dbg/libs/.gitignore
deleted file mode 100644
index 655bd701c..000000000
--- a/xwords4/android/XWords4-dbg/libs/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-gcm.jar
-armeabi
-x86
-android-support-v13.jar
diff --git a/xwords4/android/XWords4-dbg/libs/crittercism_v5_5_5_sdkonly.jar b/xwords4/android/XWords4-dbg/libs/crittercism_v5_5_5_sdkonly.jar
deleted file mode 100644
index d306fa0d1..000000000
Binary files a/xwords4/android/XWords4-dbg/libs/crittercism_v5_5_5_sdkonly.jar and /dev/null differ
diff --git a/xwords4/android/XWords4-dbg/project.properties b/xwords4/android/XWords4-dbg/project.properties
deleted file mode 100644
index 19c32e635..000000000
--- a/xwords4/android/XWords4-dbg/project.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-# This file is automatically generated by Android Tools.
-# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
-#
-# This file must be checked in Version Control Systems.
-#
-# To customize properties used by the Ant build system use,
-# "ant.properties", and override values to adapt the script to your
-# project structure.
-
-# Project target.
-target=android-23
diff --git a/xwords4/android/XWords4-dbg/res/drawable-hdpi/.gitignore b/xwords4/android/XWords4-dbg/res/drawable-hdpi/.gitignore
deleted file mode 100644
index 5fb73cd78..000000000
--- a/xwords4/android/XWords4-dbg/res/drawable-hdpi/.gitignore
+++ /dev/null
@@ -1,26 +0,0 @@
-/clear_all__gen.png
-/search__gen.png
-/select_all__gen.png
-back__gen.png
-content_copy__gen.png
-content_discard__gen.png
-content_edit.png
-content_new__gen.png
-dict__gen.png
-down__gen.png
-download__gen.png
-email__gen.png
-new_group__gen.png
-prefs__gen.png
-relabel__gen.png
-reset__gen.png
-save__gen.png
-send__gen.png
-up__gen.png
-clear_all__gen.png
-search__gen.png
-select_all__gen.png
-content_new_net__gen.png
-content_new_solo__gen.png
-multigame__gen.png
-sologame__gen.png
diff --git a/xwords4/android/XWords4-dbg/res/drawable-mdpi/.gitignore b/xwords4/android/XWords4-dbg/res/drawable-mdpi/.gitignore
deleted file mode 100644
index 5fb73cd78..000000000
--- a/xwords4/android/XWords4-dbg/res/drawable-mdpi/.gitignore
+++ /dev/null
@@ -1,26 +0,0 @@
-/clear_all__gen.png
-/search__gen.png
-/select_all__gen.png
-back__gen.png
-content_copy__gen.png
-content_discard__gen.png
-content_edit.png
-content_new__gen.png
-dict__gen.png
-down__gen.png
-download__gen.png
-email__gen.png
-new_group__gen.png
-prefs__gen.png
-relabel__gen.png
-reset__gen.png
-save__gen.png
-send__gen.png
-up__gen.png
-clear_all__gen.png
-search__gen.png
-select_all__gen.png
-content_new_net__gen.png
-content_new_solo__gen.png
-multigame__gen.png
-sologame__gen.png
diff --git a/xwords4/android/XWords4-dbg/res/drawable-xhdpi/.gitignore b/xwords4/android/XWords4-dbg/res/drawable-xhdpi/.gitignore
deleted file mode 100644
index 5fb73cd78..000000000
--- a/xwords4/android/XWords4-dbg/res/drawable-xhdpi/.gitignore
+++ /dev/null
@@ -1,26 +0,0 @@
-/clear_all__gen.png
-/search__gen.png
-/select_all__gen.png
-back__gen.png
-content_copy__gen.png
-content_discard__gen.png
-content_edit.png
-content_new__gen.png
-dict__gen.png
-down__gen.png
-download__gen.png
-email__gen.png
-new_group__gen.png
-prefs__gen.png
-relabel__gen.png
-reset__gen.png
-save__gen.png
-send__gen.png
-up__gen.png
-clear_all__gen.png
-search__gen.png
-select_all__gen.png
-content_new_net__gen.png
-content_new_solo__gen.png
-multigame__gen.png
-sologame__gen.png
diff --git a/xwords4/android/XWords4-dbg/res/drawable/.gitignore b/xwords4/android/XWords4-dbg/res/drawable/.gitignore
deleted file mode 100644
index b96f0091c..000000000
--- a/xwords4/android/XWords4-dbg/res/drawable/.gitignore
+++ /dev/null
@@ -1,30 +0,0 @@
-dicticon.png
-downarrow.png
-expander_ic_maximized.9.png
-expander_ic_minimized.9.png
-flip.png
-icon48x48.png
-ic_popup_sync_1.png
-netarrow_allconn.png
-netarrow_someconn.png
-netarrow_unconn.png
-next_hint.png
-origin.png
-prev_hint.png
-refresh.png
-relaygame.png
-rightarrow.png
-shuffle.png
-sologame.png
-stat_notify_chat.png
-stat_notify_sync.png
-undo.png
-values.png
-zoom.png
-bluetooth_active.png
-bluetooth_disabled.png
-in_arrow_active.png
-in_arrow.png
-out_arrow_active.png
-out_arrow.png
-notify.png
diff --git a/xwords4/android/XWords4-dbg/res/layout-small/.gitignore b/xwords4/android/XWords4-dbg/res/layout-small/.gitignore
deleted file mode 100644
index 060ef29f7..000000000
--- a/xwords4/android/XWords4-dbg/res/layout-small/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-board.xml
diff --git a/xwords4/android/XWords4-dbg/res/layout/.gitignore b/xwords4/android/XWords4-dbg/res/layout/.gitignore
deleted file mode 100644
index 92d5ca39b..000000000
--- a/xwords4/android/XWords4-dbg/res/layout/.gitignore
+++ /dev/null
@@ -1,54 +0,0 @@
-about_dlg.xml
-board.xml
-btinviter_item.xml.~1~
-chat_history_local.xml
-chat_history_remote.xml
-chat.xml
-color_display.xml
-color_edit.xml
-dflt_name.xml
-dict_browser.xml
-dict_browse.xml
-divider_view.xml
-force_remote.xml
-game_config.xml
-game_list_item.xml
-game_list.xml
-import_dict.xml
-list_item.xml
-lookup.xml
-new_game.xml
-passwd_view.xml
-player_edit.xml
-player_list_elem.xml
-prefs_w_buttons.xml
-relay_game_config.xml
-rename_game.xml
-select_dialog_item.xml
-confirm_sms.xml
-game_list_group.xml
-studylist.xml
-loc_list_item.xml
-loc_main.xml
-loc_item_edit.xml
-import_dict_item.xml
-list_group.xml
-conn_types_display.xml
-expander_header.xml
-msg_label_and_edit.xml
-not_again_view.xml
-relayinviter.xml
-remote_dict_details.xml
-toolbar.xml
-chat_row.xml
-fragact.xml
-main.xml
-dualcontainer.xml
-dict_browser_list.xml
-inviter_item.xml
-inviter.xml
-bt_buttons.xml
-relay_buttons.xml
-sms_buttons.xml
-inviter_item_frame.xml
-two_strs_item.xml
diff --git a/xwords4/android/XWords4-dbg/res/menu-small/.gitignore b/xwords4/android/XWords4-dbg/res/menu-small/.gitignore
deleted file mode 100644
index 275932284..000000000
--- a/xwords4/android/XWords4-dbg/res/menu-small/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-board_menu.xml
diff --git a/xwords4/android/XWords4-dbg/res/menu/.gitignore b/xwords4/android/XWords4-dbg/res/menu/.gitignore
deleted file mode 100644
index 07ed661b4..000000000
--- a/xwords4/android/XWords4-dbg/res/menu/.gitignore
+++ /dev/null
@@ -1,11 +0,0 @@
-board_menu.xml
-chat_menu.xml
-dicts_item_menu.xml
-games_list_menu.xml
-dicts_menu.xml
-studylist.xml
-loc_menu.xml
-empty.xml
-loc_item_menu.xml
-games_list_group_menu.xml
-games_list_game_menu.xml
diff --git a/xwords4/android/XWords4-dbg/res/raw/.gitignore b/xwords4/android/XWords4-dbg/res/raw/.gitignore
deleted file mode 100644
index 5c56af15d..000000000
--- a/xwords4/android/XWords4-dbg/res/raw/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-changes
diff --git a/xwords4/android/XWords4-dbg/res/values-large/.gitignore b/xwords4/android/XWords4-dbg/res/values-large/.gitignore
deleted file mode 100644
index 684760d58..000000000
--- a/xwords4/android/XWords4-dbg/res/values-large/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-styles.xml
diff --git a/xwords4/android/XWords4-dbg/res/values/.gitignore b/xwords4/android/XWords4-dbg/res/values/.gitignore
deleted file mode 100644
index c3f91e07d..000000000
--- a/xwords4/android/XWords4-dbg/res/values/.gitignore
+++ /dev/null
@@ -1,6 +0,0 @@
-strings.xml
-styles.xml
-common_rsrc.xml
-gen_strings.xml
-app_name.xml
-dimensions.xml
diff --git a/xwords4/android/XWords4-dbg/res/xml/.gitignore b/xwords4/android/XWords4-dbg/res/xml/.gitignore
deleted file mode 100644
index df69711b0..000000000
--- a/xwords4/android/XWords4-dbg/res/xml/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-xwprefs.xml
diff --git a/xwords4/android/XWords4-dbg/res_src/values-ba_CK/.gitignore b/xwords4/android/XWords4-dbg/res_src/values-ba_CK/.gitignore
deleted file mode 100644
index aa5ea40dd..000000000
--- a/xwords4/android/XWords4-dbg/res_src/values-ba_CK/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/strings.xml
-strings.xml
diff --git a/xwords4/android/XWords4-dbg/res_src/values-ca/.gitignore b/xwords4/android/XWords4-dbg/res_src/values-ca/.gitignore
deleted file mode 100644
index be5186f01..000000000
--- a/xwords4/android/XWords4-dbg/res_src/values-ca/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-strings.xml
diff --git a/xwords4/android/XWords4-dbg/res_src/values-ca_PS/.gitignore b/xwords4/android/XWords4-dbg/res_src/values-ca_PS/.gitignore
deleted file mode 100644
index aa5ea40dd..000000000
--- a/xwords4/android/XWords4-dbg/res_src/values-ca_PS/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/strings.xml
-strings.xml
diff --git a/xwords4/android/XWords4-dbg/res_src/values-cs/.gitignore b/xwords4/android/XWords4-dbg/res_src/values-cs/.gitignore
deleted file mode 100644
index be5186f01..000000000
--- a/xwords4/android/XWords4-dbg/res_src/values-cs/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-strings.xml
diff --git a/xwords4/android/XWords4-dbg/res_src/values-fr/.gitignore b/xwords4/android/XWords4-dbg/res_src/values-fr/.gitignore
deleted file mode 100644
index be5186f01..000000000
--- a/xwords4/android/XWords4-dbg/res_src/values-fr/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-strings.xml
diff --git a/xwords4/android/XWords4-dbg/res_src/values-ja/.gitignore b/xwords4/android/XWords4-dbg/res_src/values-ja/.gitignore
deleted file mode 100644
index be5186f01..000000000
--- a/xwords4/android/XWords4-dbg/res_src/values-ja/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-strings.xml
diff --git a/xwords4/android/XWords4-dbg/res_src/values-nl/.gitignore b/xwords4/android/XWords4-dbg/res_src/values-nl/.gitignore
deleted file mode 100644
index be5186f01..000000000
--- a/xwords4/android/XWords4-dbg/res_src/values-nl/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-strings.xml
diff --git a/xwords4/android/XWords4-dbg/res_src/values-pt/.gitignore b/xwords4/android/XWords4-dbg/res_src/values-pt/.gitignore
deleted file mode 100644
index be5186f01..000000000
--- a/xwords4/android/XWords4-dbg/res_src/values-pt/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-strings.xml
diff --git a/xwords4/android/XWords4-dbg/res_src/values-sk/.gitignore b/xwords4/android/XWords4-dbg/res_src/values-sk/.gitignore
deleted file mode 100644
index be5186f01..000000000
--- a/xwords4/android/XWords4-dbg/res_src/values-sk/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-strings.xml
diff --git a/xwords4/android/XWords4-dbg/src/org/eehouse/android/xw4dbg/.gitignore b/xwords4/android/XWords4-dbg/src/org/eehouse/android/xw4dbg/.gitignore
deleted file mode 100644
index 000c39a92..000000000
--- a/xwords4/android/XWords4-dbg/src/org/eehouse/android/xw4dbg/.gitignore
+++ /dev/null
@@ -1,148 +0,0 @@
-/DlgID.java
-/LookupAlert.java
-ABUtils.java
-BTInviteActivity.java
-BTReceiver.java
-BTService.java
-BoardActivity.java
-BoardCanvas.java
-BoardDims.java
-BoardView.java
-BuildConstants.java
-ChatActivity.java
-CommsTransport.java
-ConnStatusHandler.java
-DBHelper.java
-DBUtils.java
-DbgUtils.java
-DictBrowseActivity.java
-DictImportActivity.java
-DictLangCache.java
-DictListPreference.java
-DictUtils.java
-DictsActivity.java
-DispatchNotify.java
-DlgDelegate.java
-DlgState.java
-EditColorPreference.java
-ExpiringDelegate.java
-ExpiringLinearLayout.java
-ExpiringTextView.java
-FirstRunDialog.java
-GCMConsts.java
-GCMIntentService.java
-GameConfig.java
-GameListAdapter.java
-GameListGroup.java
-GameListItem.java
-GameLock.java
-GameNamer.java
-GameUtils.java
-GamesList.java
-GitVersion.java
-InviteActivity.java
-LookupActivity.java
-MountEventReceiver.java
-MultiMsgSink.java
-MultiService.java
-NBSReceiver.java
-NFCUtils.java
-NetLaunchInfo.java
-NetStateCache.java
-NetUtils.java
-NewGameActivity.java
-PollListPreference.java
-PrefsActivity.java
-ReceiveNBS.java
-RefreshNamesTask.java
-RelayGameActivity.java
-RelayMsgSink.java
-RelayReceiver.java
-RelayService.java
-SMSCheckBoxPreference.java
-SMSInviteActivity.java
-SMSReceiver.java
-SMSService.java
-SelectableItem.java
-StatusReceiver.java
-StudyList.java
-ThumbCanvas.java
-Toolbar.java
-UpdateCheckReceiver.java
-Utils.java
-XWActivity.java
-XWApp.java
-XWConstants.java
-XWEditTextPreference.java
-XWExpandableListActivity.java
-XWListActivity.java
-XWListAdapter.java
-XWListItem.java
-XWListPreference.java
-XWPrefs.java
-XWService.java
-XWSumListPreference.java
-XWThumbListPreference.java
-DelegateBase.java
-DlgID.java
-GamesListDelegate.java
-LookupAlert.java
-BoardDelegate.java
-ChatDelegate.java
-DictBrowseDelegate.java
-DictImportDelegate.java
-DictsDelegate.java
-DrawSelDelegate.java
-GameConfigActivity.java
-GameConfigDelegate.java
-NewGameDelegate.java
-RelayGameDelegate.java
-StudyListActivity.java
-StudyListDelegate.java
-BTInviteDelegate.java
-InviteDelegate.java
-ListDelegateBase.java
-PrefsDelegate.java
-SMSInviteDelegate.java
-DwnldActivity.java
-DwnldDelegate.java
-GroupStateListener.java
-ListGroup.java
-ConnViaViewLayout.java
-Delegator.java
-DevID.java
-HeaderWithExpander.java
-LangListPreference.java
-ListDelegator.java
-NagTurnReceiver.java
-NotAgainView.java
-OnBootReceiver.java
-RelayInviteActivity.java
-RelayInviteDelegate.java
-XWConnAddrPreference.java
-XWDevIDPreference.java
-XWExpListAdapter.java
-RequestCode.java
-BoardFrag.java
-ChatFrag.java
-DictBrowseFrag.java
-FragActivity.java
-GameConfigFrag.java
-GamesListFrag.java
-Main.java
-nohup.out
-StudyListFrag.java
-XWFragment.java
-ConfirmingCheckBoxPreference.java
-RelayCheckBoxPreference.java
-MainActivity.java
-DictsFrag.java
-DualpaneDelegate.java
-BoardContainer.java
-BiDiSockWrap.java
-WiDirService.java
-WiDirInviteActivity.java
-WiDirInviteDelegate.java
-XWPacket.java
-TwoStrsItem.java
-Perms23.java
diff --git a/xwords4/android/XWords4-dbg/src/org/eehouse/android/xw4dbg/jni/.gitignore b/xwords4/android/XWords4-dbg/src/org/eehouse/android/xw4dbg/jni/.gitignore
deleted file mode 100644
index 025de6a24..000000000
--- a/xwords4/android/XWords4-dbg/src/org/eehouse/android/xw4dbg/jni/.gitignore
+++ /dev/null
@@ -1,19 +0,0 @@
-BoardHandler.java
-CommonPrefs.java
-CommsAddrRec.java
-CurGameInfo.java
-DictInfo.java
-DrawCtx.java
-DrawScoreInfo.java
-GameSummary.java
-JNIThread.java
-JNIUtilsImpl.java
-JNIUtils.java
-LocalPlayer.java
-SyncedDraw.java
-TransportProcs.java
-UtilCtxtImpl.java
-UtilCtxt.java
-XwJNI.java
-BoardDims.java
-LastMoveInfo.java
diff --git a/xwords4/android/XWords4-dbg/src/org/eehouse/android/xw4dbg/loc/.gitignore b/xwords4/android/XWords4-dbg/src/org/eehouse/android/xw4dbg/loc/.gitignore
deleted file mode 100644
index a06b22eb8..000000000
--- a/xwords4/android/XWords4-dbg/src/org/eehouse/android/xw4dbg/loc/.gitignore
+++ /dev/null
@@ -1,13 +0,0 @@
-/LocItemEditActivity.java
-/LocItemEditDelegate.java
-LocActivity.java
-LocDelegate.java
-LocIDs.java
-LocIDsData.java
-LocListAdapter.java
-LocListItem.java
-LocSearcher.java
-LocUtils.java
-XlatingSpinnerAdapter.java
-LocItemEditActivity.java
-LocItemEditDelegate.java
diff --git a/xwords4/android/XWords4/.gitignore b/xwords4/android/XWords4/.gitignore
deleted file mode 100644
index 37af10ec2..000000000
--- a/xwords4/android/XWords4/.gitignore
+++ /dev/null
@@ -1,20 +0,0 @@
-*.apk
-.DS_Store
-.gradle
-/.idea/libraries
-/.idea/workspace.xml
-/build
-/captures
-/libs-debug
-/libs-release
-/local.properties
-/obj-debug
-/obj-release
-ant_out.txt
-bin
-gen
-obj
-proguard.cfg
-res/drawable*/*gen.png
-.idea/
-*.iml
diff --git a/xwords4/android/XWords4/app/.gitignore b/xwords4/android/XWords4/app/.gitignore
deleted file mode 100644
index 796b96d1c..000000000
--- a/xwords4/android/XWords4/app/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/build
diff --git a/xwords4/android/XWords4/app/build.gradle b/xwords4/android/XWords4/app/build.gradle
deleted file mode 100644
index 9018375db..000000000
--- a/xwords4/android/XWords4/app/build.gradle
+++ /dev/null
@@ -1,237 +0,0 @@
-def VARIANT_NAME = 'xw4'
-def INITIAL_CLIENT_VERS = 6
-def CHAT_ENABLED = true
-def LIBS_DEBUG = 'libs-debug'
-def LIBS_RELEASE = 'libs-release'
-def VERSION_CODE_BASE = 1
-def VARIANTS = [ "Xw4", "Xw4dbg" ]
-def BUILDS = [ "Debug", "Release" ]
-
-apply plugin: 'com.android.application'
-
-dependencies {
- compile files('../libs/gcm.jar')
- compile files('../libs/android-support-v13.jar')
-}
-
-android {
- compileSdkVersion 23
- buildToolsVersion "23.0.2"
- defaultConfig {
- minSdkVersion 7
- targetSdkVersion 23
- }
-
- // Rename all output artifacts to include version information
- // applicationVariants.all { variant ->
- // renameArtifact(variant)
- // variant.buildConfigField "String", "FIELD_NAME", "\"my String\""
- // }
-
- flavorDimensions "variant"//, "abi"
- productFlavors {
- xw4 {
- dimension "variant"
- applicationId "org.eehouse.android.xw4"
- }
- xw4dbg {
- dimension "variant"
- applicationId "org.eehouse.android.xw4dbg"
- }
-
- // WARNING: "all" breaks things. Seems to be a keyword. Need
- // to figure out how to express include-all-abis
- // all {
- // dimension "abi"
- // versionCode 0 + VERSION_CODE_BASE
- // }
- // armeabi {
- // dimension "abi"
- // versionCode 1 + VERSION_CODE_BASE
- // }
- // x86 {
- // dimension "abi"
- // versionCode 2 + VERSION_CODE_BASE
- // }
- // armeabiv7a {
- // dimension "abi"
- // versionCode 3 + VERSION_CODE_BASE
- // }
-
- }
-
- signingConfigs {
- release {
- storeFile file(System.getenv("HOME") + "/.keystore")
- keyAlias "mykey"
-
- // These two lines make gradle believe that the signingConfigs
- // section is complete. Without them, tasks like installRelease
- // will not be available!
- storePassword "notReal"
- keyPassword "notReal"
- }
- }
-
- buildTypes {
- release {
- signingConfig signingConfigs.release
- debuggable false
- minifyEnabled true
- proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
- }
- debug {
- debuggable true
- // This doesn't work on marshmallow: duplicate permission error
- // applicationIdSuffix ".debug"
- }
- }
-
- sourceSets {
- // Use symlinks instead of setting non-conventional
- // directories here. AS doesn't respect what's set here: it'll
- // compile, but post-install app launch and source-level
- // debugging don't work.
- release {
- jniLibs.srcDir "../$LIBS_RELEASE"
- }
- debug {
- jniLibs.srcDir "../$LIBS_DEBUG"
- }
- }
-
- lintOptions {
- abortOnError false
- }
-
- def gitrev = "git describe --tags".execute().text.trim()
- applicationVariants.all { variant ->
- variant.outputs.each { output ->
- output.outputFile =
- new File(output.outputFile.parent,
- output.outputFile.name.replace(".apk", "-${gitrev}.apk"))
- }
- }
-}
-
-// Prevent release builds. They haven't been tested, and now that
-// f-droid has been releasing them they're KNOWN not to work.
-android.applicationVariants.all { variant ->
- if ( variant.name.endsWith("Release") ) {
- String NAME = "check" + variant.name.capitalize() + "Manifest"
- task "$NAME"(overwrite: true) << {
- throw new RuntimeException('<<<<< Release builds should not be built '
- + 'using gradle! Please use ant for now. >>>>>');
- }
- }
-}
-
-dependencies {
- compile fileTree(dir: 'libs', include: ['*.jar'])
-}
-
-task genVers(type: Exec) {
- workingDir '../'
- commandLine '../scripts/genvers.sh', '--variant', VARIANT_NAME,
- '--client-vers', INITIAL_CLIENT_VERS,
- '--vers-outfile', "assets/gitvers.txt"
-}
-
-task mkImages(type: Exec) {
- workingDir '../'
- commandLine '../scripts/mkimages.sh'
-}
-
-task copyStrings(type: Exec) {
- workingDir '../'
- commandLine '../scripts/copy-strings.py'
-}
-
-task ndkSetup(type: Exec) {
- workingDir '../'
- commandLine "../scripts/ndksetup.sh"
-}
-
-task myPreBuild(dependsOn: ['genVers', 'ndkSetup', 'mkImages', 'copyStrings', 'mkXml']) {
-}
-preBuild.dependsOn myPreBuild
-
-task ndkBuildDebug(type: Exec) {
- workingDir '../'
- commandLine '../scripts/ndkbuild.sh', '-j3', "CHAT_ENABLED=$CHAT_ENABLED",
- 'BUILD_TARGET=debug', "INITIAL_CLIENT_VERS=$INITIAL_CLIENT_VERS",
- "VARIANT=$VARIANT_NAME", "NDK_LIBS_OUT=$LIBS_DEBUG", 'NDK_OUT=./obj-debug'
-}
-
-task ndkBuildRelease(type: Exec) {
- workingDir '../'
- commandLine '../scripts/ndkbuild.sh', '-j3', "CHAT_ENABLED=$CHAT_ENABLED",
- 'BUILD_TARGET=release', "INITIAL_CLIENT_VERS=$INITIAL_CLIENT_VERS",
- "VARIANT=$VARIANT_NAME", "NDK_LIBS_OUT=$LIBS_RELEASE", 'NDK_OUT=./obj-release'
-}
-
-task mkXml(type: Exec) {
- workingDir '../'
- commandLine '../scripts/mk_xml.py', '-o',
- "src/org/eehouse/android/$VARIANT_NAME/loc/LocIDsData.java",
- '-t', "debug", '-v', "$VARIANT_NAME"
-}
-
-afterEvaluate {
- VARIANTS.each { VARIANT ->
- String compileTask = "compile${VARIANT}ReleaseNdk"
- tasks.getByName(compileTask).dependsOn ndkBuildRelease
- compileTask = "compile${VARIANT}DebugNdk"
- tasks.getByName(compileTask).dependsOn ndkBuildDebug
- }
-}
-
-task askForPassword << {
- def password = System.getenv("ANDROID_KEY_PASS")
- if (null == password || 0 == password.length()) {
- if ( null != System.console() ) {
- password = new String(System.console()
- .readPassword("ANDROID_KEY_PASS not set; "
- + "Keystore password: "))
- } else {
- password = null
- println( "ANDROID_KEY_PASS not set and no console; " )
- println( "sign it yerself later. (Or you might try" )
- println( " running gradlew with the --no-daemon flag)" )
- }
- }
-
- if ( null != password ) {
- android.signingConfigs.release.storePassword = password
- android.signingConfigs.release.keyPassword = password
- }
-}
-
-tasks.whenTaskAdded { theTask ->
- if (theTask.name.equals("packageRelease")) {
- theTask.dependsOn "askForPassword"
- }
-}
-
-// def getVersionName() {
-// try {
-// def stdout = new ByteArrayOutputStream()
-// exec {
-// commandLine 'git', 'describe', '--dirty'
-// standardOutput = stdout
-// }
-// return stdout.toString().trim()
-// }
-// catch (ignored) {
-// return null;
-// }
-// }
-
-// def renameArtifact(variant) {
-// variant.outputs.each { output ->
-// def name = String.format( "XWords4-%s-%s.apk", variant.name,
-// getVersionName() )
-// output.outputFile = new File( (String)output.outputFile.parent,
-// (String)name )
-// }
-// }
diff --git a/xwords4/android/XWords4/app/src/main/AndroidManifest.xml b/xwords4/android/XWords4/app/src/main/AndroidManifest.xml
deleted file mode 120000
index 4db074ab1..000000000
--- a/xwords4/android/XWords4/app/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1 +0,0 @@
-../../../AndroidManifest.xml
\ No newline at end of file
diff --git a/xwords4/android/XWords4/app/src/main/assets b/xwords4/android/XWords4/app/src/main/assets
deleted file mode 120000
index f86487ffc..000000000
--- a/xwords4/android/XWords4/app/src/main/assets
+++ /dev/null
@@ -1 +0,0 @@
-../../../assets/
\ No newline at end of file
diff --git a/xwords4/android/XWords4/app/src/main/java b/xwords4/android/XWords4/app/src/main/java
deleted file mode 120000
index a1d005e30..000000000
--- a/xwords4/android/XWords4/app/src/main/java
+++ /dev/null
@@ -1 +0,0 @@
-../../../src/
\ No newline at end of file
diff --git a/xwords4/android/XWords4/app/src/main/res b/xwords4/android/XWords4/app/src/main/res
deleted file mode 120000
index fc8850136..000000000
--- a/xwords4/android/XWords4/app/src/main/res
+++ /dev/null
@@ -1 +0,0 @@
-../../../res
\ No newline at end of file
diff --git a/xwords4/android/XWords4/archive/R.java b/xwords4/android/XWords4/archive/R.java
deleted file mode 100644
index ecbda35c5..000000000
--- a/xwords4/android/XWords4/archive/R.java
+++ /dev/null
@@ -1,7038 +0,0 @@
-/* AUTO-GENERATED FILE. DO NOT MODIFY.
- *
- * This class was automatically generated by the
- * aapt tool from the resource data it found. It
- * should not be modified by hand.
- */
-
-package org.eehouse.android.xw4;
-
-public final class R {
- public static final class array {
- /** string name="dict_url">http://10.0.2.2/~eehouse/and_dictsÊtes-vous sûr de vouloir recommencer les %1$d
- parties sélectionnées ?\n\n(Recommencer fait perdre tous les coups et
-toutes les informations de connexion.)
- */
- public static final int confirm_reset_fmt=0x7f090002;
- /** Êtes-vous sûr de vouloir effacer les
-%1$d parties sélectionnées ? Cette action ne peut pas être annulée.
- */
- public static final int confirm_seldeletes_fmt=0x7f090001;
- /** Are you sure you want to
- delete the %1$d selected word[s]?\n\n(This action cannot be undone.)
-Êtes-vous sûr de vouloir effacer
-les %1$d mots sélectionnés ?\n\n(Cette action ne peut pas être annulée.)
- */
- public static final int confirm_studylist_clear_fmt=0x7f090014;
- /** %1$s (%2$d games)
-%1$s (%2$d parties)
- */
- public static final int group_name_fmt=0x7f090013;
- /** Are you sure you want to delete
- the %1$d selected group[s]?
-Êtes-vous sûr de vouloir effacer les
-%1$d groupes sélectionnés ?
- */
- public static final int groups_confirm_del_fmt=0x7f090011;
- /** \n\n(%1$d game[s] will
- also be deleted.)
-\n\n(%1$d parties seront aussi
-effacées.)
- */
- public static final int groups_confirm_del_games_fmt=0x7f090012;
- /**
-
-Please select the %1$d device[s]
- you want to include in this game. Use the \"%2$s\"
- button if you don\'t see a device you expect.
-Sélectionnez les %1$d périphériques que
-vous voulez intégrer dans cette partie. Utilisez le bouton \"%2$s\" si vous ne
-voyez pas un périphérique que vous attendez.
- */
- public static final int invite_bt_desc_fmt=0x7f09000b;
- /** If a networked game is opened and is not complete, i.e. if it
- is listed as expecting remote players who have not yet shown
- up, then the most likely explanation is that none has been
- invited. (It's also possible that an invitation has been
- sent, but I have no way of knowing that.) So every time I
- open such a game I give the user a chance to issue an
- invititation while trying to warn him not to send duplicates.
- The number of players missing is substituted for "%1$d".
- If a networked game is opened and is not complete, i.e. if it
- is listed as expecting remote players who have not yet shown
- up, then the most likely explanation is that none has been
- invited. (It's also possible that an invitation has been
- sent, but I have no way of knowing that.) So every time I
- open such a game I give the user a chance to issue an
- invititation while trying to warn him not to send duplicates.
- The number of players missing is substituted for "%1$d".
-This game is missing %1$d remote
- player[s]. Would you like to invite someone to join - assuming
- you haven\'t already?
-Il manque %1$d joueur[s] distant[s] à cette
-partie. Voulez-vous inviter quelqu\'un - - à moins que vous ne l\'ayez déjà
-fait ?
- */
- public static final int invite_msg_fmt=0x7f090004;
- /**
- */
- public static final int invite_p2p_desc_fmt=0x7f09000e;
- /**
- */
- public static final int invite_relay_desc_fmt=0x7f09000d;
- public static final int invite_sent_fmt=0x7f090005;
- /**
-
-Please check the %1$d phone
- number[s] you want to invite to your new game, then tap \"%2$s\".
-Vérifiez les %1$d numéros de téléphone
-que vous voulez inviter à votre partie, puis touchez \"%2$s\".
- */
- public static final int invite_sms_desc_fmt=0x7f09000c;
- /** %1$s (%2$d wordlists)
-%1$s (%2$d listes de mots)
- */
- public static final int lang_name_fmt=0x7f090017;
- /** %1$s played %2$s for %3$d points
-%1$s a joué %2$s pour %3$d points
- */
- public static final int lmi_move_fmt=0x7f09001b;
- /** %1$s traded %2$d tiles
-%1$s a échangé %2$d jetons
- */
- public static final int lmi_trade_fmt=0x7f09001c;
- /** Otherwise they're listed with this to give some indication of
- how far along they are. I may list "tiles left" someday
- instead...
- Otherwise they're listed with this to give some indication of
- how far along they are. I may list "tiles left" someday
- instead...
- */
- public static final int moves_fmt=0x7f090000;
- /** Text of "toast" (mini window briefly displayed) shown when a
- game first connects to the relay. The three substitutions
- are the device's order within the game (e.g. 2), the name of
- the room, and how many additional players have not yet
- registered with the relay in this game. This should be seen
- only once per game.
- Short for "points", this is shown at the right end of the
- tray in place of the first tile placed along with the points
- the current move would earn if committed.
-pts
- Text of "toast" (mini window briefly displayed) shown when a
- game first connects to the relay. The three substitutions
- are the device's order within the game (e.g. 2), the name of
- the room, and how many additional players have not yet
- registered with the relay in this game. This should be seen
- only once per game.
-Device %1$d connected to relay in
- room \"%2$s\". Waiting for %3$d player[s].
-Le périphérique %1$d est connecté au
-relai dans le salon \"%2$s\". En attente de %3$d joueur[s].
- */
- public static final int msg_relay_waiting_fmt=0x7f090006;
- /** %1$d day[s]
-%1$d jour[s]
- */
- public static final int nag_days_fmt=0x7f09001a;
- /** body of warning notification reminder message. First three
- 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],
- 4 hour[s] ago."
-%1$d minute[s]
-%1$d minute[s]
-%1$d hour[s]
-%1$d heure[s]
- */
- public static final int nag_hours_fmt=0x7f090019;
- /** body of warning notification reminder message. First three
- 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],
- 4 hour[s] ago."
- */
- public static final int nag_minutes_fmt=0x7f090018;
- /** Installed %1$d new translations
-%1$d nouvelles traductions installées
- */
- public static final int new_xlations_fmt=0x7f090016;
- /** XLATE-ME
-%1$d player[s]
-%1$d joueur[s]
- */
- public static final int nplayers_fmt=0x7f09001d;
- /** %1$d word[s] copied
-%1$d mots copiés
- */
- public static final int paste_done_fmt=0x7f090015;
- /** Text of dialog asking user to confirm a move that exchanges
- tiles (instead of forming a new word to earn points)
- Text of dialog asking user to confirm a move that exchanges
- tiles (instead of forming a new word to earn points)
-Are you sure you want to exchange the
- %1$d selected tiles (%2$s)?
-Êtes-vous sûr de vouloir échanger les %1$d
-jetons sélectionnés (%2$s) ?
- */
- public static final int query_trade_fmt=0x7f09000a;
- /** Shown after "resend messages" menuitem chosen
- */
- public static final int resent_msgs_fmt=0x7f09001e;
- /** Intro to the paragraph listing all of the tiles remaining
- Intro to the paragraph lisiting all of the tiles remaining
-%1$d tiles left in pool and all
- tray[s]:\n
-%1$d jetons restants dans le sac et
-tous les chevalets :\n
- */
- public static final int strd_remains_expl_fmt=0x7f090009;
- /** First line in the remaining tiles dialog (reached by tapping
- the number at left end of the scoreboard)
- First line in the remaining tiles dialog (reached by tapping
- the number at left end of the scoreboard)
-%1$d tiles left in pool.
-%1$d jetons restants dans le sac.
- */
- public static final int strd_remains_header_fmt=0x7f090008;
- /** Notifies user of a robot trade move
- returned by util_getUserString
- Notifies user of a robot trade move
-exchanged %1$d tiles.
-a échangé %1$d jetons.
- */
- public static final int strd_robot_traded_fmt=0x7f090007;
- public static final int warn_relay_games_fmt=0x7f090010;
- }
- public static final class string {
- /** copyright info
- %1$d torns jugats
- about dialog stuff
- about dialog stuff
- copyright info
-Copyright (C) 1998-2015 by Eric
- House. This free/open source software is released under the GNU Public
- License.
- copyright info
- */
- public static final int about_copyright=0x7f0501d2;
- /** Another paragraph giving credit for work done other than by
- Eric House and translators
- Another paragraph giving credit for work done other than by
- Eric House and translators
-Toolbar icons by Sarah Chu.
- Another paragraph giving credit for work done other than by
- Eric House and translators
- */
- public static final int about_credits=0x7f0501d5;
- /**
- ###########################################################
- # :Dialogs:
- # About dialog
- #
- # Dialog giving copyright and other basic info about # the app
- ###########################################################
-
- String giving version info, which is substituted in.
-
- ###########################################################
- # :Dialogs:
- # About dialog
- #
- # Dialog giving copyright and other basic info about # the app
- ###########################################################
-
- String giving version info, which is substituted in.
-Crosswords for Android, Version %1$s,
- rev %2$s, built on %3$s.
- Bylo zahráno %1$d tahů
- about dialog stuff
-
- ###########################################################
- # :Dialogs:
- # About dialog
- #
- # Dialog giving copyright and other basic info about # the app
- ###########################################################
-
- String giving version info, which is substituted in.
- */
- public static final int about_vers_fmt=0x7f0501d1;
- /** Another paragraph in the about dialog
- Another paragraph in the about dialog
-For a manual or sourcecode see:
- http://xwords.sf.net/android.php. To report bugs, suggest
- features, offer to help, etc., please email:
- xwords@eehouse.org.
- Another paragraph in the about dialog
- */
- public static final int about_web=0x7f0501d3;
- /** %1$s added to %2$s studylist
- */
- public static final int add_done_fmt=0x7f050291;
- /** Add %1$s to studylist
- */
- public static final int add_to_study_fmt=0x7f05028b;
- /** Debugging stuff. Localize if you think your langauge users will
- care.
-XLATE-ME
-For debugging
- */
- public static final int advanced=0x7f0502ff;
- /** This button takes you to the normal Game Configure screen
- This button takes you to the normal Game Configure screen
-Advanced game settings
- This button takes you to the normal Game Configure screen
- */
- public static final int advanced_config=0x7f05018e;
- /** XLATE-ME
-You should never need these...
- */
- public static final int advanced_summary=0x7f050300;
- public static final int after_restart=0x7f050356;
- /**
-
-The wordlist %1$s contains only
- tile information. There are no words to browse.
-
- */
- public static final int alert_empty_dict_fmt=0x7f0501f0;
- public static final int app_name=0x7f050083;
- /** 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.
- */
- public static final int app_not_found_fmt=0x7f0502d7;
- public static final int app_version=0x7f050000;
- /** the background color of the area outside the board,
- e.g. between entries in the scoreboard
- the background color of the area outside the board,
- e.g. between entries in the scoreboard
-Board background
- the background color of the area outside the board,
- e.g. between entries in the scoreboard
- */
- public static final int background=0x7f05014e;
- /** Appended to the above in the phonies_warn case. User may
- ignore the warning
- Appended to the above in the phonies_warn case. User may
- ignore the warning
-\u0020Do you still want to accept
- this move?
- Appended to the above in the phonies_warn case. User may
- ignore the warning
- */
- public static final int badwords_accept=0x7f0500f9;
- /** Appended to the above in the phonies_disallow case. User has
- lost his turn.
- Appended to the above in the phonies_disallow case. User has
- lost his turn.
- Turn lost.
- Appended to the above in the phonies_disallow case. User has
- lost his turn.
- */
- public static final int badwords_lost=0x7f0500fa;
- /** title of the dialog in which the above is posted.
- title of the dialog in which the above is posted.
-Illegal word[s]
- title of the dialog in which the above is posted.
- */
- public static final int badwords_title=0x7f0500fb;
- /** Blue
- */
- public static final int blue=0x7f050152;
- /** board menu for small devices only
- board menu for small devices only
-Browse wordlist
- board menu for small devices only
- */
- public static final int board_menu_dict=0x7f05022f;
- /**
- ############################################################
- # :Menus:
- # Board screen menu
- ############################################################
-
- This menu commits the current move as it's been laid out on
- the board
- system menu for main board view
- system menu for main board view
-
- ############################################################
- # :Menus:
- # Board screen menu
- ############################################################
-
- This menu commits the current move as it's been laid out on
- the board
- system menu for main board view
-
- ############################################################
- # :Menus:
- # Board screen menu
- ############################################################
-
- This menu commits the current move as it's been laid out on
- the board
- */
- public static final int board_menu_done=0x7f0500fc;
- /** Brings up "About Crosswords" dialog
- Brings up "About Crosswords" dialog
- Brings up "About Crosswords" dialog
- */
- public static final int board_menu_file_about=0x7f050099;
- /**
-
-Email author
-
- */
- public static final int board_menu_file_email=0x7f0501f5;
- /** menu on Game submenu: brings up dialog listing all tiles in
- the language of the game along with how many of each there
- are and how many points each is worth. This display is the
- same throughout the game.
- menu on Game submenu: brings up dialog listing all tiles in
- the language of the game along with how many of each there
- are and how many points each is worth. This display is the
- same throughout the game.
-Counts and values…
- menu on Game submenu: brings up dialog listing all tiles in
- the language of the game along with how many of each there
- are and how many points each is worth. This display is the
- same throughout the game.
- */
- public static final int board_menu_game_counts=0x7f050102;
- /** Brings up explanation of the game's final score. If the game
- is not yet over, gives you a choice whether to end it now,
- and if you decline does nothing.
- Brings up explanation of the game's final score. If the game
- is not yet over, gives you a choice whether to end it now,
- and if you decline does nothing.
-Final scores
- Brings up explanation of the game's final score. If the game
- is not yet over, gives you a choice whether to end it now,
- and if you decline does nothing.
- */
- public static final int board_menu_game_final=0x7f050105;
- /** Brings up listing of all moves played so far this game.
- Brings up listing of all moves played so far this game.
-Game history…
- Brings up listing of all moves played so far this game.
- */
- public static final int board_menu_game_history=0x7f050104;
- /** menu on Game submenu: brings up dialog listing all tiles not
- yet played and not in the rack of the player whose rack is
- visible (whose turn it is, generally). This display will
- change as tiles are used and depending on what player is
- asking.
- menu on Game submenu: brings up dialog listing all tiles not
- yet played and not in the rack of the player whose rack is
- visible (whose turn it is, generally). This display will
- change as tiles are used and depending on what player is
- asking.
-Tiles remaining…
- menu on Game submenu: brings up dialog listing all tiles not
- yet played and not in the rack of the player whose rack is
- visible (whose turn it is, generally). This display will
- change as tiles are used and depending on what player is
- asking.
- */
- public static final int board_menu_game_left=0x7f050103;
- /** XLATE-ME
-Network stats
- */
- public static final int board_menu_game_netstats=0x7f05030a;
- /** Meaningful only for networked games, this menu causes all
- messages that have not yet been acknowledged by a remote
- device in the game to be resent. Eventually I hope to be
- able to remove this from non-debug versions of the game
- because users should not have to do do this EVER.
- Meaningful only for networked games, this menu causes all
- messages that have not yet been acknowledged by a remote
- device in the game to be resent. Eventually I hope to be
- able to remove this from non-debug versions of the game
- because users should not have to do do this EVER.
-Resend messages
- Meaningful only for networked games, this menu causes all
- messages that have not yet been acknowledged by a remote
- device in the game to be resent. Eventually I hope to be
- able to remove this from non-debug versions of the game
- because users should not have to do do this EVER.
- */
- public static final int board_menu_game_resend=0x7f050107;
- /** Resign
- */
- public static final int board_menu_game_resign=0x7f050106;
- public static final int board_menu_game_showInvites=0x7f05030b;
- /** Invite
- */
- public static final int board_menu_invite=0x7f050284;
- /**
-
-Pass
-
- */
- public static final int board_menu_pass=0x7f0501e1;
- /** This menu begins an exchange of tiles: puts the board into
- trade mode.
- This menu begins an exchange of tiles: puts the board into
- trade mode.
- This menu begins an exchange of tiles: puts the board into
- trade mode.
- */
- public static final int board_menu_trade=0x7f0500fd;
- /** hide and shows the tray. On devices where there is enough
- room for the full board and tray to be shown then hiding the
- tray just "turns it over", i.e. shows tiles with '?'
- characters.
- hide and shows the tray. On devices where there is enough
- room for the full board and tray to be shown then hiding the
- tray just "turns it over", i.e. shows tiles with '?'
- characters.
- hide and shows the tray. On devices where there is enough
- room for the full board and tray to be shown then hiding the
- tray just "turns it over", i.e. shows tiles with '?'
- characters.
- */
- public static final int board_menu_tray_hide=0x7f0500fe;
- public static final int board_menu_tray_show=0x7f0500ff;
- /**
-
-Undo/Redo
-
- */
- public static final int board_menu_undo_current=0x7f050228;
- /** Undos the last *committed* turn. Note that this is different
- from the undo button that undoes or redoes an in-progress
- not-yet-committed turn. This is disabled for networked
- games.
- Undos the last *committed* turn. Note that this is different
- from the undo button that undoes or redoes an in-progress
- not-yet-committed turn. This is disabled for networked
- games.
-Undo last
- Undos the last *committed* turn. Note that this is different
- from the undo button that undoes or redoes an in-progress
- not-yet-committed turn. This is disabled for networked
- games.
- */
- public static final int board_menu_undo_last=0x7f050100;
- /** preference for board size (15x15, 13x13 etc.)
- default new-game setting for handline phonies (words not
- found in the word list)
- clarification on above
- Will new games, on default, randomly rearrange the start
- order of players.
- clarification on hints_allowed, whether new NETWORKED games
- will default to having the hint feature enabled(string
- elsewhere in this file)
- clarification on hints_allowed, whether new games will
- default to having the hint feature enabled(string elsewhere
- in this file)
- dictionary used by default for robot players when creating
- new game
- preference for board size (15x15, 13x13 etc.)
-Board size
- preference for board size (15x15, 13x13 etc.)
- */
- public static final int board_size=0x7f050135;
- /** Title of submenu
- Undos the last *committed* turn. Note that this is different
- from the undo button that undoes or redoes an in-progress
- not-yet-committed turn. This is disabled for networked
- games.
- hide and shows the tray. On devices where there is enough
- room for the full board and tray to be shown then hiding the
- tray just "turns it over", i.e. shows tiles with '?'
- characters.
- Title of submenu
- Title of submenu
- */
- public static final int board_submenu_game=0x7f050101;
- /** The remaining strings (down to the color edit dialog below)
- are showns as the names of editable colors and as the
- title of the color editor that comes up when the name is
- tapped.
- (color for) double-letter bonus squares on the board
- The remaining strings (down to the color edit dialog below)
- are showns as the names of editable colors and as the the
- title of the color editor that comes up when the name is
- tapped.
- (color for) double-letter bonus squares on the board
-Double letter
- The remaining strings (down to the color edit dialog below)
- are showns as the names of editable colors and as the the
- title of the color editor that comes up when the name is
- tapped.
- (color for) double-letter bonus squares on the board
- */
- public static final int bonus_l2x=0x7f050147;
- /** Bonus value hint that's displayed in gray text in the colored
- bonus square. Double-letter
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Double-letter
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Double-letter
- */
- public static final int bonus_l2x_summary=0x7f0500e4;
- /** (color for) triple-letter bonus squares on the board
- (color for) triple-letter bonus squares on the board
-Triple letter
- (color for) triple-letter bonus squares on the board
- */
- public static final int bonus_l3x=0x7f050148;
- /** Bonus value hint that's displayed in gray text in the colored
- bonus square. Triple-letter
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Triple-letter
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Triple-letter
- */
- public static final int bonus_l3x_summary=0x7f0500e6;
- /** (color for) double-word squares on the board
- (color for) double-word squares on the board
-Double word
- (color for) double-word squares on the board
- */
- public static final int bonus_w2x=0x7f050149;
- /** Bonus value hint that's displayed in gray text in the colored
- bonus square. Double-word
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Double-word
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Double-word
- */
- public static final int bonus_w2x_summary=0x7f0500e5;
- /** (color for) triple-word squares on the board
- (color for) triple-word squares on the board
-Triple word
- (color for) triple-word squares on the board
- */
- public static final int bonus_w3x=0x7f05014a;
- /** Bonus value hint that's displayed in gray text in the colored
- bonus square. Triple-word
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Triple-word
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Triple-word
- */
- public static final int bonus_w3x_summary=0x7f0500e7;
- /**
-
-The version of Crosswords on
- \"%1$s\" is incompatible with this one for play using
- Bluetooth. One of you may need to upgrade before you can
- continue.
-
- */
- public static final int bt_bad_proto_fmt=0x7f050205;
- /**
-
-Bluetooth sends to %1$s have failed too many
- times. Re-open the game to try again.
-
- */
- public static final int bt_fail_fmt=0x7f05020a;
- /** Title of device picker during invitation to a game via Bluetooth
- Title of device picker during invitation to a game via Bluetooth
-Bluetooth Invitation
- */
- public static final int bt_invite_title=0x7f05020c;
- /** You currently have no paired Bluetooth
- devices. Would you like to open the Android Settings Panel to add
- one or more?\n\n(You may also need to open it on the device you
- want to pair with.)
- */
- public static final int bt_no_devs=0x7f0502d6;
- /**
- */
- public static final int bt_pair_settings=0x7f0501fb;
- /** Turn Bluetooth on
- In the Bluetooth invite device dialog
- In the Bluetooth invite device dialog
-Add all Paired
- */
- public static final int bt_pick_addall_button=0x7f0501f9;
- /**
-
-Remove checked
-
-
- */
- public static final int bt_pick_clear_button=0x7f0501fa;
- /**
-
-Bluetooth send to %1$s failed; retry %3$d in
- %2$d seconds.
-Un envoi Bluetooth à %1$s a échoué ; essai
-%3$d dans %2$d secondes.
-
-
- */
- public static final int bt_resend_fmt=0x7f050209;
- /** text of button for adding new player to game
- text for separator above the list of players that's used for
- networked games. The numbers of local and non-local players
- are substituted for %1$d and %2$d.
- text of button for adding new player to game
-Add player
- text of button for adding new player to game
- */
- public static final int button_add_player=0x7f0500ba;
- /** In the permissions rationale explanation, means go ahead and
- have the OS ask for permission
- */
- public static final int button_ask_again=0x7f050362;
- /** The only button available when the above message is displayed
- The only button available when the above message is displayed
-Close game
- The only button available when the above message is displayed
- */
- public static final int button_close_game=0x7f05019f;
- /** Decline
- */
- public static final int button_decline=0x7f050264;
- /**
-
-
-
- */
- public static final int button_default_both=0x7f0500b0;
- /** These three strings are the text for three buttons giving
- choices in respose to the dialog launched in response to the
- dicts_item_select menu (see dicts_item_select above.)
- These three strings are the text for three buttons giving
- choices in respose to the dialog launched in response to the
- dicts_item_select menu (see dicts_item_select above.)
- text of confirmation dialog posted when the delete 'X' button
- beside the listing of a wordlist is tapped. The name of the
- wordlist is substituted for %s. Sometimes one of the two
- strings below is appended.
- Additional text appended to text confirm_delete_dictf in the
- wordlist delete confiration dialog in the case where the
- wordlist to be deleted is the last in its language. The name
- of the language is substituted for %s.
- \u0020É a única lista de
- palavras em %s instalada. Um ou mais jogos não poderão ser abertos
- sem ela.
- Additional text appended to text confirm_delete_dictf in the
- wordlist delete confiration dialog in the case where the
- wordlist to be deleted is NOT the last in its language. The
- name of the language is substituted for %s.
-
- ############################################################
- # :Dialogs:
- # Wordlists screen dialogs
- ############################################################
-
- Used as the text fo the confirming/querying dialog that goes
- up when the dicts_item_select menuitem is chosen. The
- possible answers are the three button text strings below.
- Para que jogadores essa lista
- de palavras deve ser a padrão para novos jogos? (o idioma %s será
- padrão para ambos.)
- These three strings are the text for three buttons giving
- choices in respose to the dialog launched in response to the
- dicts_item_select menu (see dicts_item_select above.)
- */
- public static final int button_default_human=0x7f0500ae;
- /**
-
- */
- public static final int button_default_robot=0x7f0500af;
- /** When you select the gamel_menu_delete_all menuitem or
- list_item_delete contextual menu, you are asked to confirm.
- This is the text of the first button ("Cancel" is the
- second).
- Bolo zahraných %1$d ťahov
- When you select the list_item_reset contextual menu, you are
- asked to confirm. This is the text of the first button
- ("Cancel" is the second).
- When you select the gamel_menu_delete_all menuitem or
- list_item_delete contextual menu, you are asked to confirm.
- This is the text of the first button ("Cancel" is the
- second).
- When you select the gamel_menu_delete_all menuitem or
- list_item_delete contextual menu, you are asked to confirm.
- This is the text of the first button ("Cancel" is the
- second).
- Otherwise they're listed with this to give some indication of
- how far along they are. I may list "tiles left" someday
- instead...
- %1$d turnos jogados
- When you select the gamel_menu_delete_all menuitem or
- list_item_delete contextual menu, you are asked to confirm.
- This is the text of the first button ("Cancel" is the
- second).
- */
- public static final int button_delete=0x7f050092;
- public static final int button_disable_relay=0x7f05024f;
- /** Used for button in dialog put up with the relay says the
- remote partner of this game has deleted it. Ok, meaning
- "don't discard", is the other option. This same button is
- used as an option in the Game config dialog, where "Save" is
- the other option, for discarding changes that would otherwise
- reset a game.
- Used for button in dialog put up with the relay says the
- remote partner of this game has deleted it. Ok, meaning
- "don't discard", is the other option. This same button is
- used as an option in the Game config dialog, where "Save" is
- the other option, for discarding changes that would otherwise
- reset a game.
-Discard
- Used for button in dialog put up with the relay says the
- remote partner of this game has deleted it. Ok, meaning
- "don't discard", is the other option. This same button is
- used as an option in the Game config dialog, where "Save" is
- the other option, for discarding changes that would otherwise
- reset a game.
- */
- public static final int button_discard=0x7f0501af;
- /** XLATE-ME
-Discard changes
- */
- public static final int button_discard_changes=0x7f0502f6;
- /**
-
-Done
-
- */
- public static final int button_done=0x7f0501de;
- /**
-
-Done with %1$s
-
- */
- public static final int button_done_fmt=0x7f0501df;
- /** Text of button displayed when downloading is an option
- This is an alternative message presented when there's also
- the option of downloading another wordlist. Game name,
- wordlist name and language are substituted in.
- If the missing wordlist is discovered when trying to open the
- game, we have more options. If there's another wordlist in
- the same language, we can offer to substitute without needing
- to download. Otherwise the user must choose between
- downloading and not opening the game. This first message
- takes wordlist name and language substituted in for %1$ and
- %2$
- The only button available when the above message is displayed
- If the wordlist disappears mid-game there are no choices,
- just an explanation and this button, after which the game
- closes.
- Text of button displayed when downloading is an option
-Download
- Text of button displayed when downloading is an option
- */
- public static final int button_download=0x7f0501a2;
- /** XLATE-ME
-Edit
- */
- public static final int button_edit=0x7f0502f5;
- public static final int button_enable=0x7f05033a;
- /** XLATE-ME
-Enable Bluetooth
- */
- public static final int button_enable_bt=0x7f05024d;
- public static final int button_enable_relay=0x7f05024e;
- /** XLATE-ME
-Enable SMS
- */
- public static final int button_enable_sms=0x7f05024c;
- public static final int button_go_settings=0x7f050286;
- /**
-
-Invite checked
-
- */
- public static final int button_invite=0x7f05020b;
- /** text of button to juggle (randomly rearrange order of) players
- text of button to juggle (randomly rearrange order of) players
-Shuffle players
- text of button to juggle (randomly rearrange order of) players
- */
- public static final int button_juggle_players=0x7f0500bb;
- /** XLATE-ME
-Later
- */
- public static final int button_later=0x7f050250;
- /** New strings that need to be documented and found a home
- above.
- New strings that need to be documented and found a home
- above.
-Look up words
- New strings that need to be documented and found a home
- above.
- */
- public static final int button_lookup=0x7f0501d8;
- /**
-
-Look up %1$s
-
- */
- public static final int button_lookup_fmt=0x7f0501da;
- /** Look up/study words
- */
- public static final int button_lookup_study=0x7f0501d9;
- /** Look up/study %1$s
- */
- public static final int button_lookup_study_fmt=0x7f0501db;
- /**
-
-Move
-
- */
- public static final int button_move=0x7f0501e3;
- /** What is \u200C? English strings are used as keys, so they all
- need to be unique. This glyph is non-printing and of
- zero-width, so it should do the trick:
- http://en.wikipedia.org/wiki/Zero-width_non-joiner
-
-
- ############################################################
- # :Screens:
- # Main screen (list of games)
- #
- # This is the first screen you see when you launch Crosswords
- ############################################################
-
- Text of menuitem in main games-list screen's menu
-
- DO NOT EDIT THIS FILE!!!!
- It was generated (from res_src/values-ca/strings.xml, by copy-strings.py).
- Any changes you make to it will be lost.
-
-
- DO NOT EDIT THIS FILE!!!!
- It was generated (from res_src/values-ja/strings.xml, by copy-strings.py).
- Any changes you make to it will be lost.
-
-
- DO NOT EDIT THIS FILE!!!!
- It was generated (from res_src/values-sk/strings.xml, by copy-strings.py).
- Any changes you make to it will be lost.
-
- Text of menuitem in main games-list screen's menu
-
- DO NOT EDIT THIS FILE!!!!
- It was generated (from res_src/values-nl/strings.xml, by copy-strings.py).
- Any changes you make to it will be lost.
-
-
- DO NOT EDIT THIS FILE!!!!
- It was generated (from res_src/values-fr/strings.xml, by copy-strings.py).
- Any changes you make to it will be lost.
-
- What is \u200C? English strings are used as keys, so they all
- need to be unique. This glyph is non-printing and of
- zero-width, so it should do the trick:
- http://en.wikipedia.org/wiki/Zero-width_non-joiner
-
-
- ############################################################
- # :Screens:
- # Main screen (list of games)
- #
- # This is the first screen you see when you launch Crosswords
- ############################################################
-
- Text of menuitem in main games-list screen's menu
-
- DO NOT EDIT THIS FILE!!!!
- It was generated (from res_src/values-cs/strings.xml, by copy-strings.py).
- Any changes you make to it will be lost.
-
-
- DO NOT EDIT THIS FILE!!!!
- It was generated (from res_src/values-pt/strings.xml, by copy-strings.py).
- Any changes you make to it will be lost.
-
-
- ############################################################
- # :Screens:
- # Main screen (list of games)
- #
- # This is the first screen you see when you launch Crosswords
- ############################################################
-
- Text of button at bottom of main games-list screen and of
- menuitem in main games-list screen's menu. (The botton can
- be hidden in the same way as the above text.)
- */
- public static final int button_new_game=0x7f050087;
- /** Games list screen menuitem text for creating a new group
- Games list screen menuitem text for creating a new group
- */
- public static final int button_new_group=0x7f050088;
- /** New group
- */
- public static final int button_newgroup=0x7f0501e4;
- /** No
- */
- public static final int button_no=0x7f0501ad;
- /** Text for button in new-user-info dialog with title just
- above.
- Text for button in new-user-info dialog with title just
- above.
-Do not show again
- Text for button in new-user-info dialog with title just
- above.
- */
- public static final int button_notagain=0x7f0501bb;
- /** Reconnect
- */
- public static final int button_reconnect=0x7f050276;
- public static final int button_reinvite=0x7f0502f0;
- /**
- */
- public static final int button_relay_add=0x7f050218;
- /** Button shown in game over dialog triggering creation of new
- game with the same players and parameters as the one that
- just ended.
- Button shown in game over dialog triggering creation of new
- game with the same players and parameters as the one that
- just ended.
-Rematch
- Button shown in game over dialog triggering creation of new
- game with the same players and parameters as the one that
- just ended.
- */
- public static final int button_rematch=0x7f050275;
- /** When you select the list_item_reset contextual menu, you are
- asked to confirm. This is the text of the first button
- ("Cancel" is the second).
- When you select the list_item_reset contextual menu, you are
- asked to confirm. This is the text of the first button
- ("Cancel" is the second).
- When you select the list_item_reset contextual menu, you are
- asked to confirm. This is the text of the first button
- ("Cancel" is the second).
- */
- public static final int button_reset=0x7f050093;
- /** Used for a button when informing user that his attempt to
- connect to the relay failed because the room named does not
- exist. (I believe this no longer occurs.)
- Used for a button when informing user that his attempt to
- connect to the relay failed because the room named does not
- exist. (I believe this no longer occurs.)
-Retry
- Used for a button when informing user that his attempt to
- connect to the relay failed because the room named does not
- exist. (I believe this no longer occurs.)
- */
- public static final int button_retry=0x7f0501b0;
- /**
- ############################################################
- # :Menus:
- # Preferences screen menus
- #
- # There are two menuitems availble via the menu key from this
- # screen
- ############################################################
-
- text of first menu item. Will revert all preferences to
- their default/original values
-
- ############################################################
- # :Menus:
- # Preferences screen menus
- #
- # There are two menuitems availble via the menu key from this
- # screen
- ############################################################
-
- text of first menu item. Will revert all preferences to
- their default/original values
-Restore all
-
- ############################################################
- # :Menus:
- # Preferences screen menus
- #
- # There are two menuitems availble via the menu key from this
- # screen
- ############################################################
-
- text of first menu item. Will revert all preferences to
- their default/original values
- */
- public static final int button_revert_all=0x7f05011d;
- /** Second menu item. Reverts only the colors to their
- default/original values
- Second menu item. Reverts only the colors to their
- default/original values
-Restore colors
- Second menu item. Reverts only the colors to their
- default/original values
- */
- public static final int button_revert_colors=0x7f05011f;
- /** Used in Game config dialog to confirm saving changes that reset a game
- Used in Game config dialog to confirm saving changes that reset a game
-Save
- Used in Game config dialog to confirm saving changes that reset a game
- */
- public static final int button_save=0x7f0501ae;
- /**
-
-Find
-
- */
- public static final int button_search=0x7f0501e5;
- /** In the permissions rationale explanation, means don't have the
- OS ask for permission: user is denying it implicitly
- */
- public static final int button_skip=0x7f050365;
- /**
-
-Import contact
-
-
- */
- public static final int button_sms_add=0x7f050217;
- /** Text of button allowing user to choose to open with a
- different (but same-language wordlist)
- Text of button allowing user to choose to open with a
- different (but same-language wordlist)
-Substitute
- Text of button allowing user to choose to open with a
- different (but same-language wordlist)
- */
- public static final int button_substdict=0x7f0501a3;
- /** Cancel trade
- */
- public static final int button_trade_cancel=0x7f0500e2;
- /**
- ############################################################
- # :Screens:
- # Board screen
- #
- #
- # (an open game, with the 15x15 grid of # squares, letters
- # played etc., is displayed here)
- ############################################################
-
- Buttons shown at bottom when board is in exchange mode,
- i.e. after user has picked board_menu_trade menu item
-
- ############################################################
- # :Screens:
- # Board screen
- #
- #
- # (an open game, with the 15x15 grid of # squares, letters
- # played etc., is displayed here)
- ############################################################
-
- Buttons shown at bottom when board is in exchange mode,
- i.e. after user has picked board_menu_trade menu item
-Commit trade
-
- ############################################################
- # :Screens:
- # Board screen
- #
- #
- # (an open game, with the 15x15 grid of # squares, letters
- # played etc., is displayed here)
- ############################################################
-
- Buttons shown at bottom when board is in exchange mode,
- i.e. after user has picked board_menu_trade menu item
- */
- public static final int button_trade_commit=0x7f0500e1;
- /** Button for alert with title above
- */
- public static final int button_wait=0x7f0502ef;
- /**
- ############################################################
- # Dialogs
- ############################################################
-
- Text for buttons at the bottom of dialogs. These first are
- in many places.
- Text of confirmation dialog for above
- Second menu item. Reverts only the colors to their
- default/original values
- Text of confirmation dialog for above
-
- ############################################################
- # :Menus:
- # Preferences screen menus
- #
- # There are two menuitems availble via the menu key from this
- # screen
- ############################################################
-
- text of first menu item. Will revert all preferences to
- their default/original values
-
- ############################################################
- # Dialogs
- ############################################################
-
- Text for buttons at the bottom of dialogs. These first are
- in many places.
-Yes
- When a move is fetched from the relay a Notification is
- posted. These are its title, which appears in the top bar of the
- device, and the body that appears when you pull the notifications
- down.
-
- ############################################################
- # Dialogs
- ############################################################
-
- Text for buttons at the bottom of dialogs. These first are
- in many places.
- */
- public static final int button_yes=0x7f0501ac;
- /** The group for new games, %1$s,
- cannot be deleted.
- */
- public static final int cannot_delete_default_group_fmt=0x7f050274;
- /** Move selected games to:
- */
- public static final int change_group=0x7f050279;
- /** text of button in About Crosswords dialog summoning above
- dialog
- text of button in About Crosswords dialog summoning above
- dialog
-Recent changes\u200C
- text of button in About Crosswords dialog summoning above
- dialog
- */
- public static final int changes_button=0x7f0501d7;
- /** text of dialog showing the set of changes made since the last
- release
- text of dialog showing the set of changes made since the last
- release
-Recent changes
- text of dialog showing the set of changes made since the last
- release
- */
- public static final int changes_title=0x7f0501d6;
- /** "Hint" in empty chat text field
- */
- public static final int chat_hint=0x7f05018b;
- /** Prefix for local messages
- Prefix for local messages
-Me:\u0020
- Prefix for local messages
- */
- public static final int chat_local_id=0x7f050188;
- /**
- ############################################################
- # :Menus:
- # Chat messages screen menu
- ############################################################
-
- This is the only menu item in the chat screen. Press it and
- all the chat messages are erased. There is no effect on
- other devices in the game: no "clear chat" message is
- transmitted.
-
- ############################################################
- # :Menus:
- # Chat messages screen menu
- ############################################################
-
- This is the only menu item in the chat screen. Press it and
- all the chat messages are erased. There is no effect on
- other devices in the game: no "clear chat" message is
- transmitted.
-Clear history
-
- ############################################################
- # :Menus:
- # Chat messages screen menu
- ############################################################
-
- This is the only menu item in the chat screen. Press it and
- all the chat messages are erased. There is no effect on
- other devices in the game: no "clear chat" message is
- transmitted.
- */
- public static final int chat_menu_clear=0x7f05018c;
- /** Prefix for remote messages
- Prefix for remote messages
-Not me:\u0020
- Prefix for remote messages
- */
- public static final int chat_other_id=0x7f050189;
- /** Text on the button that causes the contents of the
- message-composition field to be sent.
- Text on the button that causes the contents of the
- message-composition field to be sent.
-Send
- Text on the button that causes the contents of the
- message-composition field to be sent.
- */
- public static final int chat_send=0x7f05018a;
- public static final int chat_sender_fmt=0x7f05022d;
- /** ############################################################
- # :Screens:
- # Chat screen
- #
- # Shown when the chat button is pressed from the Board screen
- # or when a chat message (as opposed to a move message) comes
- # in from the relay. It displays a history of messages with
- # slightly different colored backgrounds and with prefixes to
- # indicate whether they are local or remote in origin.
- ############################################################
-
- title of the chat screen. The name of the current game is
- substituted for %1$s.
- ############################################################
- # :Screens:
- # Chat screen
- #
- # Shown when the chat button is pressed from the Board screen
- # or when a chat message (as opposed to a move message) comes
- # in from the relay. It displays a history of messages with
- # slightly different colored backgrounds and with prefixes to
- # indicate whether they are local or remote in origin.
- ############################################################
-
- title of the chat screen. The name of the current game is
- substituted for %1$s.
-%1$s message history
- Text of dialog asking user to confirm a move that exchanges
- tiles (instead of forming a new word to earn points)
- ############################################################
- # :Screens:
- # Chat screen
- #
- # Shown when the chat button is pressed from the Board screen
- # or when a chat message (as opposed to a move message) comes
- # in from the relay. It displays a history of messages with
- # slightly different colored backgrounds and with prefixes to
- # indicate whether they are local or remote in origin.
- ############################################################
-
- title of the chat screen. The name of the current game is
- substituted for %s.
- */
- public static final int chat_title_fmt=0x7f050187;
- /** Checking for wordlists in %1$s…
- */
- public static final int checking_for_fmt=0x7f050331;
- /** Checking
- */
- public static final int checking_title=0x7f050330;
- /** Everything is up-to-date.
- */
- public static final int checkupdates_none_found=0x7f050252;
- /** EXPERIMENTAL: "label" for invite on clipboard. If it's shown
- it's by some Android utility
- */
- public static final int clip_label=0x7f050344;
- /** color of the "crosshairs", lines drawn vertically and
- horizontally through the square the user is currently
- touching in order to guide the fat-fingered (most of us) in
- operations that require accurately selecting a single square
- on the board.
- color of the "crosshairs", lines drawn vertically and
- horizontally through the square the user is currently
- touching in order to guide the fat-fingered (most of us) in
- operations that require accurately selecting a single square
- on the board.
-Crosshairs color
- color of the "crosshairs", lines drawn vertically and
- horizontally through the square the user is currently
- touching in order to guide the fat-fingered (most of us) in
- operations that require accurately selecting a single square
- on the board.
- */
- public static final int clr_crosshairs=0x7f05014b;
- /** XLATE-ME
-This game has no way to connect
- and cannot be saved. Would you like to discard your changes, or
- edit to give it a way to connect?
- */
- public static final int config_no_connvia=0x7f0502f4;
- public static final int confirm_clear_chat=0x7f050346;
- public static final int confirm_clear_relay=0x7f050220;
- /** Additional text appended to text confirm_delete_dictf in the
- wordlist delete confiration dialog in the case where the
- wordlist to be deleted is the last in its language. The name
- of the language is substituted for %1$s.
- Additional text appended to text confirm_delete_dictf in the
- wordlist delete confiration dialog in the case where the
- wordlist to be deleted is the last in its language. The name
- of the language is substituted for %1$s.
- */
- public static final int confirm_deleteonly_dicts_fmt=0x7f0500ac;
- public static final int confirm_drop_relay=0x7f050336;
- public static final int confirm_drop_relay_bt=0x7f050338;
- public static final int confirm_drop_relay_sms=0x7f050339;
- /** Your device is set up for
- %1$s. Would you like to download a wordlist so you can play
- Crosswords in %1$s?
- */
- public static final int confirm_get_locdict_fmt=0x7f0502fe;
- /** Text of confirmation dialog for above
- Text of confirmation dialog for above
-Are you sure you want to restore
- all settings to their original values?
- Text of confirmation dialog for above
- */
- public static final int confirm_revert_all=0x7f050120;
- /** Text of confirmation dialog for above
- Text of confirmation dialog for above
-Are you sure you want to
- restore all color settings to their original values?
- Text of confirmation dialog for above
- */
- public static final int confirm_revert_colors=0x7f05011e;
- /** title of confirmation dialog put up when user has unlocked an
- in-progress game and wants to save changes (has hit the
- play button).
- title of confirmation dialog put up when user has unlocked an
- in-progress game and wants to save changes (has hit the
- play button).
-This game is in play. If you
- save these changes it must be restarted. Do you want to save
- these changes?
- title of confirmation dialog put up when user has unlocked an
- in-progress game and wants to save changes (has hit the
- play button).
- */
- public static final int confirm_save=0x7f0500d4;
- /** title of above confirmation dialog
-
- ############################################################
- # :Menus:
- # Wordlists screen menus
- ############################################################
-
- title of contextual menu item. If chosen it brings up a
- dialog that offers to move the selected wordlist from its
- current storage location to the other. This menuitem is
- hidden if the selected wordlist is built in or if there is
- only one possible storage location, e.g. if the device has no
- SD card slot.
- If you tap the download_dicts button and Android fails to
- find and launch an app that's registered to handle http
- downloads a Toast is posted with this message.
- Used to describe wordlists that are in the Downloads
- directory. Currently I don't look there so this is unused,
- but I will eventually do so. This should be the same name as
- the built-in Android web browser uses for the directory where
- it saves files it downloads.
- One of the strings used in the right column of the list of
- installed wordlists to describe those that are part of
- Crosswords and that cannot be uninstalled or moved.
- loc_internal and loc_external are the other possible strings
- in this column.
- title of above confirmation dialog
-Confirm save
- title of above confirmation dialog
- */
- public static final int confirm_save_title=0x7f0500d5;
- /**
-
-Warning: This feature is meant for
- phones with unlimited texting plans. Once you enable it dozens of
- SMS (text) messages will be sent (invisibly) for each game
- played. If you don\'t have an unlimited plan your carrier may
- charge you for each and every message!\n\nShould play via SMS be
- enabled?
-
- */
- public static final int confirm_sms_expl=0x7f050241;
- /**
-
-No: leave disabled
-
- */
- public static final int confirm_sms_leave=0x7f050243;
- /**
-
-Enable play via SMS?
-
- */
- public static final int confirm_sms_prompt=0x7f050242;
- /**
-
-Confirm your SMS plan
-
- */
- public static final int confirm_sms_title=0x7f050240;
- /**
-
-Yes: I have unlimited texting
-
- */
- public static final int confirm_sms_unlimited=0x7f050244;
- /**
-
-Yes: I\'ll pay all carrier charges
-
- */
- public static final int confirm_sms_willpay=0x7f050245;
- /** text of dialog shown when the menu item board_menu_undo_last
- is chosen.
- text of dialog shown when the menu item board_menu_undo_last
- is chosen.
-Are you sure you want to undo the
- last committed turn? (There is no redo option.)
- First line in the remaining tiles dialog (reached by tapping
- the number at left end of the scoreboard)
- Intro to the paragraph lisiting all of the tiles remaining
- text of dialog shown when the menu item board_menu_undo_last
- is chosen.
- */
- public static final int confirm_undo_last=0x7f05011b;
- /** Once every day
- */
- public static final int connect_daily=0x7f05016c;
- /** Every 15 minutes
- */
- public static final int connect_fifteen_mins=0x7f050168;
- /** Every 5 minutes
- */
- public static final int connect_five_mins=0x7f050167;
- /**
- ############################################################
- # :Screens:
- # Network game settings preference subscreen (within
- # Preferences screen)
- ############################################################
-
- When there are networked games connecting using the relay,
- Crosswords wakes up periodically to check if there are any
- new moves available and fetches them. This controls how
- frequently that check is done.
-
- ############################################################
- # :Screens:
- # Network game settings preference subscreen (within
- # Preferences screen)
- ############################################################
-
- When there are networked games connecting using the relay,
- Crosswords wakes up periodically to check if there are any
- new moves available and fetches them. This controls how
- frequently that check is done.
-Background move check
-
- ############################################################
- # :Screens:
- # Network game settings preference subscreen (within
- # Preferences screen)
- ############################################################
-
- When there are networked games connecting using the relay,
- Crosswords wakes up periodically to check if there are any
- new moves available and fetches them. This controls how
- frequently that check is done.
- */
- public static final int connect_frequency=0x7f050165;
- /** text of separator marking out the connection area of the dialog
-XLATE-ME
-Connection (via %1$s)
- */
- public static final int connect_label_fmt=0x7f0500be;
- /**
-
-
-Are you sure you want to delete the
- checked phone number[s]?
-
-Connection (via SMS/text)
-
- */
- public static final int connect_label_sms=0x7f050221;
- /** These are the possible values for the connect_frequency
- setting presented as a drop-down list.
- These are the possible values for the connect_frequency
- setting presented as a drop-down list.
-Never check
- These are the possible values for the connect_frequency
- setting presented as a drop-down list.
- */
- public static final int connect_never=0x7f050166;
- /** Every hour
- */
- public static final int connect_one_hour=0x7f05016a;
- /** Every six hours
- */
- public static final int connect_six_hours=0x7f05016b;
- /** Every 30 minutes
- */
- public static final int connect_thirty_mins=0x7f050169;
- /** XLATE-ME
-Change Communicate via
- */
- public static final int connection_via_label=0x7f0502e9;
- /**
-
-(Last failure was %1$s)
-
- */
- public static final int connstat_lastother_succ_fmt=0x7f050238;
- /**
-
-(Last successful send was
- %1$s)
-
- */
- public static final int connstat_lastother_unsucc_fmt=0x7f050239;
- /**
-
-Last receipt was %1$s
-
- */
- public static final int connstat_lastreceipt_fmt=0x7f05023a;
- /**
-
-Last send was %1$s (%2$s)
-
- */
- public static final int connstat_lastsend_fmt=0x7f050237;
- /**
-
-Network status for game connected via
- %1$s:
-
- */
- public static final int connstat_net_fmt=0x7f050233;
- public static final int connstat_net_noaddr=0x7f050232;
- /**
-
-No messages have been received.
-
- */
- public static final int connstat_noreceipt=0x7f05023b;
- /**
-
-internet/relay
-
- */
- public static final int connstat_relay=0x7f05023c;
- /**
-
-sms/texting
-
- */
- public static final int connstat_sms=0x7f05023d;
- /**
-
-successful
-
- */
- public static final int connstat_succ=0x7f050235;
- /**
-
-unsuccessful
-
- */
- public static final int connstat_unsucc=0x7f050236;
- public static final int contact_not_found=0x7f050363;
- public static final int contacts_rationale=0x7f05035f;
- /** title of dialog brought up in response to the
- board_menu_game_counts menu. The dialog lists all tiles in
- the language being used for the game together with how many
- of each there are are and how many points each is worth.
- title of dialog brought up in response to the
- board_menu_game_counts menu. The dialog lists all tiles in
- the language being used for the game together with how many
- of each there are are and how many points each is worth.
-Tile Counts and Values
- title of dialog brought up in response to the
- board_menu_game_counts menu. The dialog lists all tiles in
- the language being used for the game together with how many
- of each there are are and how many points each is worth.
- */
- public static final int counts_values_title=0x7f0501b5;
- /** %1$s (in use)
- */
- public static final int cur_menu_marker_fmt=0x7f050283;
- /**
-
-Tile picker\n(so far: %1$s)
-
- */
- public static final int cur_tiles_fmt=0x7f0501e9;
- /** SMS Data is only available on GSM phones.
- */
- public static final int data_gsm_only=0x7f0502a0;
- /** SD card write complete.
- */
- public static final int db_store_done=0x7f050332;
- /** XLATE-ME
-Enable debug features
- */
- public static final int debug_features=0x7f050306;
- /** XLATE-ME
-Menuitems etc. (release builds
- only)
- */
- public static final int debug_features_summary=0x7f050307;
- /** dictionary used by default for human players when creating
- new game
- clarification of above
- sub-preference for dictionaries (soon to be called "word lists")
- Used to indicate that a preference is not enabled, i.e. not
- part of the game and that the user should ignore it.
- Label for the fourth "player name" preference (unused)
- Label for the third "player name" preference (unused)
- Label for the second "player name" preference (unused)
- Label for the first "player name" preference
- clarification of the above
- sub-preference title for editing default player names.
- There's only enabled now, though.
- dictionary used by default for human players when creating
- new game
-Wordlist for humans
- dictionary used by default for human players when creating
- new game
- */
- public static final int default_dict=0x7f05012d;
- /** other
- */
- public static final int default_host=0x7f05007d;
- /** label within default wordlists in app preferences
- label within default wordlists in app preferences
-Default language
- */
- public static final int default_language=0x7f0502d8;
- /** Store wordlists internally
- */
- public static final int default_loc=0x7f050267;
- /** (Not in external/sdcard memory)
- */
- public static final int default_loc_summary=0x7f050268;
- /** Welcome dialog text
- Welcome dialog text
-Thanks for installing
- Crosswords!\n\nFeel free to enter your name here. It will be used
- when creating new games. (You can change it later in the \"New
- game default\" section of Settings.)
- Welcome dialog text
- */
- public static final int default_name_message=0x7f0501d0;
- /**
- ###########################################################
- # :Dialogs:
- # Welcome dialog
- #
- # Shown the first time a user launches Crosswords (and
- # again only if the preference for default first user
- # name is cleared). Its purpose is to encourage him to
- # enter the name of the most common non-robot player on
- # this device.
- ###########################################################
-
- Welcome dialog title
-
- ###########################################################
- # :Dialogs:
- # Welcome dialog
- #
- # Shown the first time a user launches Crosswords (and
- # again only if the preference for default first user
- # name is cleared). Its purpose is to encourage him to
- # enter the name of the most common non-robot player on
- # this device.
- ###########################################################
-
- Welcome dialog title
-Welcome
-
- ###########################################################
- # :Dialogs:
- # Welcome dialog
- #
- # Shown the first time a user launches Crosswords (and
- # again only if the preference for default first user
- # name is cleared). Its purpose is to encourage him to
- # enter the name of the most common non-robot player on
- # this device.
- ###########################################################
-
- Welcome dialog title
- */
- public static final int default_name_title=0x7f0501cf;
- /** default new-game setting for handline phonies (words not
- found in the word list)
- default new-game setting for handline phonies (words not
- found in the word list)
-Handle phonies
- default new-game setting for handline phonies (words not
- found in the word list)
- */
- public static final int default_phonies=0x7f050133;
- /** dictionary used by default for robot players when creating
- new game
- dictionary used by default for robot players when creating
- new game
-Wordlist for robots
- dictionary used by default for robot players when creating
- new game
- */
- public static final int default_robodict=0x7f05012e;
- public static final int default_update_url=0x7f050082;
- /** Delete wordlist[s]
- */
- public static final int delete_dicts=0x7f0502c2;
- public static final int devid_title=0x7f05030e;
- /**
- Playing via SMS is currently disabled.
- You can enable it in Settings->Network game settings.
-
-
-SMS Game %1$X
-
-
-
- */
- public static final int dft_sms_name_fmt=0x7f050215;
- /**
-
-No word in %1$s starts with
- %2$s.
-
-
-
- */
- public static final int dict_browse_nowords_fmt=0x7f0501ed;
- /**
-
-%1$s (%2$d words using %3$d
- tiles)
-%1$s (%2$d mots utilisant %3$d jetons)
- */
- public static final int dict_browse_title1_fmt=0x7f0501ec;
- /**
-
-%1$s (%2$d words using %3$d-%4$d
- tiles)
-%1$s (%2$d mots utilisant de %3$d à
-%4$d jetons)
- */
- public static final int dict_browse_title_fmt=0x7f0501eb;
- /** %1$s (%2$s/%3$d words)
- */
- public static final int dict_desc_fmt=0x7f0502c9;
- /** XLATE-ME
-Wordlist download URL
- */
- public static final int dict_host=0x7f050303;
- /** Number of words: %1$d\nDownload size:
- %2$dK\nNote: %3$s
- */
- public static final int dict_info_fmt=0x7f0502c6;
- /** label for dropdown by which wordlist is chosen that this
- player will use. The language the game will use (which
- constrains the choice of wordlists) is substituted in for
- "%1$s".
- label for dropdown by which wordlist is chosen that this
- player will use. The language the game will use (which
- constrains the choice of wordlists) is substituted in for
- "%1$s".
-Wordlist (in %1$s)
- label for dropdown by which wordlist is chosen that this
- player will use. The language the game will use (which
- constrains the choice of wordlists) is substituted in for
- "%s".
- */
- public static final int dict_lang_label_fmt=0x7f0500dd;
- /** Tap to download
- */
- public static final int dict_on_server=0x7f0502c8;
- /** string name="invite_mime">text/plainInstalled wordlists (in %1$s)
- If the dropdown is selected, this is the title displayed
- above the list of selectable items. The language the game
- will use is substituted in for "%s".
- */
- public static final int dicts_list_prompt_fmt=0x7f0500de;
- public static final int dicts_storage_rationale=0x7f05035a;
- public static final int disable_dualpane=0x7f050354;
- public static final int disable_nag_solo_title=0x7f0502fd;
- /** Do not notify me no matter
- how long it\'s been my turn
- */
- public static final int disable_nag_summary=0x7f0502fc;
- /** Disable turn reminders
- */
- public static final int disable_nag_title=0x7f0502fb;
- public static final int disable_nags_title=0x7f0502fa;
- public static final int disable_relay=0x7f050163;
- public static final int disable_relay_summary=0x7f050164;
- /** text of item at bottom of dicts choice spinner. It
- launches the browser pointed at the site where additional
- wordlists can be found.
- title of popup used to determine how words are handled that
- are not in the wordlist used for the game (or player if using
- different wordlists per player)
- Three possible choices presented in the popup above
- title of popup used to select how "smart" (how capable) the
- robot player will be.
- text of item at bottom of dicts choice spinner. It
- launches the browser pointed at the site where additional
- wordlists can be found.
- text of button at the bottom of the screen. It launches the
- browser pointed at the site where additional wordlists can be
- found.
- */
- public static final int download_dicts=0x7f0500a7;
- /** Download finished
- */
- public static final int download_done=0x7f050265;
- /** Download unsuccessful
- */
- public static final int download_failed=0x7f050266;
- /** Downloads Directory
- */
- public static final int download_path_title=0x7f050269;
- public static final int download_rationale=0x7f050358;
- /** Downloading %1$s…
- */
- public static final int downloading_dict_fmt=0x7f05019c;
- public static final int drop_relay_warning_fmt=0x7f050335;
- /** Display snapshots of games
- Display snapshots of games
-Invitation received but ignored: it
- has already been used to create a game.
- */
- public static final int dropped_dupe=0x7f050282;
- public static final int dualpane_exit_now=0x7f05034f;
- public static final int dualpane_restart=0x7f050355;
- /** Shown in the main screen when you launch Crosswords from an
- invitation (received in email or messaging app, say) and
- there's already a game running that matches that invitation.
- It's to prevent you from opening multiple games and getting
- confused. But some people who play together all the time use
- the same room name over and over so they'll get this warning
- and it's harmless to ignore it.
- Shown in the main screen when you launch Crosswords from an
- invitation (received in email or messaging app, say) and
- there's already a game running that matches that invitation.
- It's to prevent you from opening multiple games and getting
- confused. But some people who play together all the time use
- the same room name over and over so they'll get this warning
- and it's harmless to ignore it.
-You already have a game that seems
- to have been created (on %1$s) from the same invitation. Are you
- sure you want to create another?
- Shown in the main screen when you launch Crosswords from an
- invitation (received in email or messaging app, say) and
- there's already a game running that matches that invitation.
- It's to prevent you from opening multiple games and getting
- confused. But some people who play together all the time use
- the same room name over and over so they'll get this warning
- and it's harmless to ignore it.
- */
- public static final int dup_game_query_fmt=0x7f0501b1;
- /**
-
-Send comment via
-
- */
- public static final int email_author_chooser=0x7f0501f7;
- /** Nor is my email address
- */
- public static final int email_author_email=0x7f05007c;
- /**
-
- Should not be translated
-
- */
- public static final int email_author_subject=0x7f0501f6;
- /**
-
- Should not be translated
-
- */
- public static final int email_body_rev_fmt=0x7f0501f8;
- /** color of empty squares on the board (that are not bonus squares)
- color of empty squares on the board (that are not bonus squares)
-Empty cell/background
- color of empty squares on the board (that are not bonus squares)
- */
- public static final int empty=0x7f05014d;
- /** Shows in WiFiDirect Invite dialog when no known peers
- */
- public static final int empty_p2p_inviter=0x7f05021c;
- /**
- */
- public static final int empty_relay_inviter=0x7f05021d;
- /** Shows in SMS Invite dialog when no phone numbers have been saved previously
- Shows in SMS Invite dialog when no phone numbers have been saved previously
-This phone list is empty. Use the
- \"Import contact\" button to add people you want to invite, the +
- button to enter numbers directly.
-
- */
- public static final int empty_sms_inviter=0x7f05021b;
- public static final int enable_dualpane=0x7f050350;
- public static final int enable_dualpane_summary=0x7f0502ce;
- /** XLATE-ME
-Accept invitations more than once
- */
- public static final int enable_dupes_summary=0x7f050316;
- /** XLATE-ME
-Accept duplicate invites
- */
- public static final int enable_dupes_title=0x7f050314;
- /** NFC is turned off on this device. You
- can use the Android Settings app to turn it on .
- */
- public static final int enable_nfc=0x7f050285;
- /** XLATE-ME
-Fake invitation to aid debugging
- */
- public static final int enable_nfc_toself_summary=0x7f050319;
- /** XLATE-ME
-Enable NFC to self
- */
- public static final int enable_nfc_toself_title=0x7f050318;
- /** XLATE-ME
-Rooms others can see and join
- */
- public static final int enable_pubroom_summary=0x7f0502e8;
- /** XLATE-ME
-Enable public rooms
- */
- public static final int enable_pubroom_title=0x7f0502e7;
- public static final int enable_relay_toself_summary=0x7f050342;
- public static final int enable_relay_toself_title=0x7f050341;
- /**
-
-Allow games via SMS
-
-
- */
- public static final int enable_sms=0x7f05023e;
- /**
-
-Only if you have unlimited texting!
-
- */
- public static final int enable_sms_summary=0x7f05023f;
- /** XLATE-ME
-Skip radio when phone numbers same
- */
- public static final int enable_sms_toself_summary=0x7f05031b;
- /** XLATE-ME
-Short-circuit SMS to self
- */
- public static final int enable_sms_toself_title=0x7f05031a;
- /** Tap tiles to select…
- */
- public static final int entering_trade=0x7f0500e3;
- /** XLATE-ME
-Duplicate invitation rejected:
- device \"%1$s\" has already accepted an invitation to this
- game.
- */
- public static final int err_dup_invite_fmt=0x7f0502e2;
- /** XLATE-ME
-Update checks URL
- */
- public static final int expl_update_url=0x7f050325;
- /** if this preference is checked, a dialog will be posted every
- time a robot makes a move or a move is received from a remote
- player.
- clarification of above
- Checkbox that when set keeps the device screen from dimming
- if the board screen is what's displayed. This is to allow
- users to think about a move without having to touch the
- screen all the time.
- if this preference is checked, a dialog will be posted every
- time a robot makes a move or a move is received from a remote
- player.
-Explain other moves
- if this preference is checked, a dialog will be posted every
- time a robot makes a move or a move is received from a remote
- player.
- */
- public static final int explain_robot=0x7f050155;
- /** explanation of the above
- explanation of the above
-Display score summary after
- every robot or remote turn
- explanation of the above
- */
- public static final int explain_robot_summary=0x7f050156;
- public static final int fetching_from_relay=0x7f050348;
- /** title of dialog brought up in response to the
- board_menu_game_final menu. The dialog displays the final
- score and an accounting of it (including subtractions for
- running out the game timer if there is one.)
-
- title of dialog brought up in response to the
- board_menu_game_final menu. The dialog displays the final
- score and an accounting of it (including subtractions for
- running out the game timer if there is one.)
-
-Final scores\u200C
- title of dialog brought up in response to the
- board_menu_game_final menu. The dialog displays the final
- score and an accounting of it (including subtractions for
- running out the game timer if there is one.)
-
- */
- public static final int finalscores_title=0x7f0501b7;
- /** Explanatory text appears in the dialog
- Explanatory text appears in the dialog
-In a multi-device game there must be at
- least one player from and another not from this device. Please
- check off-device players.
- Explanatory text appears in the dialog
- */
- public static final int force_expl=0x7f0500d8;
- /** XLATE-ME
-Pretend to have radio
- */
- public static final int force_radio_title=0x7f05031c;
- /** Even if my screen is too small
- */
- public static final int force_tablet_summary=0x7f0502cd;
- /** Force tablet layout
- */
- public static final int force_tablet_title=0x7f0502cc;
- /**
- ############################################################
- # :Dialogs:
- # Force remote dialog
- #
-
- # This alert dialog comes up when you're it the player edit
- # dialog for a networked game and try to exit with none of the
- # players configured as a remote player. It forces you to mark
- # one of them (or marks one itself if you cancel it.)
- ############################################################
-
- title of this dialog
-
- ############################################################
- # :Dialogs:
- # Force remote dialog
- #
-
- # This alert dialog comes up when you're it the player edit
- # dialog for a networked game and try to exit with none of the
- # players configured as a remote player. It forces you to mark
- # one of them (or marks one itself if you cancel it.)
- ############################################################
-
- title of this dialog
-Off-device player[s]
-
- ############################################################
- # :Dialogs:
- # Force remote dialog
- #
-
- # This alert dialog comes up when you're it the player edit
- # dialog for a networked game and try to exit with none of the
- # players configured as a remote player. It forces you to mark
- # one of them (or marks one itself if you cancel it.)
- ############################################################
-
- title of this dialog
- */
- public static final int force_title=0x7f0500d7;
- /** Displayed as a "Toast" (mini window briefly displayed) if you
- didn't choose a remote player and I was forced to pick one. I
- always pick the first.
- Displayed as a "Toast" (mini window briefly displayed) if you
- didn't choose a remote player and I was forced to pick one. I
- always pick the first.
-Modified first player.
- Displayed as a "Toast" (mini window briefly displayed) if you
- didn't choose a remote player and I was forced to pick one. I
- always pick the first.
- */
- public static final int forced_consistent=0x7f0500d9;
- /** Games that have ended are listed with this string
- Displayed as a "Toast" (mini window briefly displayed) if you
- didn't choose a remote player and I was forced to pick one. I
- always pick the first.
- Games that have ended are listed with this string
- Games that have ended are listed with this string
- */
- public static final int gameOver=0x7f050091;
- /**
-
-Bluetooth game name
-
-
-
- */
- public static final int game_btname_title=0x7f050210;
- /** used to create default names of games (when user has not
- named them.)
- used to create default names of games (when user has not
- named them.)
- used to create default names of games (when user has not
- named them.)
-Game %1$d
- used to create default names of games (when user has not
- named them.)
- */
- public static final int game_fmt=0x7f0501a6;
- /**
- ############################################################
- # :Menus:
- # Context menu for main games-list screen
- ############################################################
-
- title of contextual menu. Name of the selected game is
- substituted in.
-
- ############################################################
- # :Menus:
- # Context menu for main games-list screen
- ############################################################
-
- title of contextual menu. Name of the selected game is
- substituted in.
-
- ############################################################
- # :Menus:
- # Context menu for main games-list screen
- ############################################################
-
- title of contextual menu. Name of the selected game is
- substituted in.
- */
- public static final int game_item_menu_title_fmt=0x7f05009a;
- /**
-
-Building game summary…
-
- */
- public static final int game_list_tmp=0x7f050230;
- /** text of checkbox at top of dialog allowing to unlock in-play
- game to make changes
- text of checkbox at top of dialog allowing to unlock in-play
- game to make changes
-Lock settings
- text of checkbox at top of dialog allowing to unlock in-play
- game to make changes
- */
- public static final int game_locked=0x7f0500b7;
- /** Name group
- */
- public static final int game_name_group_title=0x7f050273;
- /**
-XLATE-ME
-New game name:
- */
- public static final int game_name_label=0x7f050212;
- /**
-XLATE-ME
-Name your game
- */
- public static final int game_name_title=0x7f050211;
- /**
-
-
- */
- public static final int game_rename_title=0x7f0500a3;
- /** Put nothing in the summary space, so it just reads "Game 2"
- Put nothing in the summary space, so it just reads "Game 2"
-\u003CNothing\u003E
- Put nothing in the summary space, so it just reads "Game 2"
- */
- public static final int game_summary_field_empty=0x7f050139;
- /** XLATE-ME
-gameid
- */
- public static final int game_summary_field_gameid=0x7f050323;
- /** Put the language there, so it reads "Game 2 (English)"
- Put the language there, so it reads "Game 2 (English)"
-Game language\u200C
- Put the language there, so it reads "Game 2 (English)"
- */
- public static final int game_summary_field_language=0x7f05013a;
- /** XLATE-ME
-Pending packet count
- */
- public static final int game_summary_field_npackets=0x7f050324;
- /** List names of opponents (summarized), e.g. "Game 2 (vs Kati)"
- List names of opponents (summarized), e.g. "Game 2 (vs Kati)"
-Opponent name[s]
- List names of opponents (summarized), e.g. "Game 2 (vs Kati)"
- */
- public static final int game_summary_field_opponents=0x7f05013b;
- /** XLATE-ME
-rowid
- */
- public static final int game_summary_field_rowid=0x7f050322;
- /** List the state of the game, "Game over" or "10 moves made"
- etc.
- List the state of the game, "Game over" or "10 moves made"
- etc.
-Game state
- List the state of the game, "Game over" or "10 moves made"
- etc.
- */
- public static final int game_summary_field_state=0x7f05013c;
- /** Regardless of the setting of the connect_frequency
- preference, checks the relay immediately for any moves for
- networked games on this device and posts a notification if
- any is downloaded.
- Regardless of the setting of the connect_frequency
- preference, checks the relay immediately for any moves for
- networked games on this device and posts a notification if
- any is downloaded.
- Regardless of the setting of the connect_frequency
- preference, checks the relay immediately for any moves for
- networked games on this device and posts a notification if
- any is downloaded.
- */
- public static final int gamel_menu_checkmoves=0x7f050096;
- /**
-
-Check for updates
-
- */
- public static final int gamel_menu_checkupdates=0x7f050251;
- /**
- ############################################################
- # :Menus:
- # Main screen (Games list) menu
- #
- # One menu is not listed here because it appears elsewhere
- # and their text is reused: button_new_game.
- ############################################################
-
- Brings up the Wordlists (formerly Dictionaries) screen
- If you choose the above option and have no networked games
- you get this error message
- Text of progress indicator shown while check is being conducted
- Regardless of the setting of the connect_frequency
- preference, checks the relay immediately for any moves for
- networked games on this device and posts a notification if
- any is downloaded.
-
- ############################################################
- # :Menus:
- # Main screen (Games list) menu
- #
- # One menu is not listed here because it appears elsewhere
- # and their text is reused: button_new_game.
- ############################################################
-
- Brings up the Wordlists (formerly Dictionaries) screen
-
- ############################################################
- # :Menus:
- # Main screen (Games list) menu
- #
- # One menu is not listed here because it appears elsewhere
- # and their text is reused: button_new_game.
- ############################################################
-
- Brings up the Wordlists (formerly Dictionaries) screen
- */
- public static final int gamel_menu_dicts=0x7f050094;
- /** XLATE-ME
-Load DB from SD card
- */
- public static final int gamel_menu_loaddb=0x7f050313;
- /** XLATE-ME
-%1$s/%2$s
-XLATE-ME
-Write DB to SD card
- */
- public static final int gamel_menu_storedb=0x7f050312;
- /** Studylist…
- */
- public static final int gamel_menu_study=0x7f05028e;
- public static final int get_relay_number=0x7f05021f;
- /**
-
-Enter phone number:
-
- */
- public static final int get_sms_number=0x7f05021e;
- /** Get info
- */
- public static final int getinfo=0x7f0502c1;
- public static final int git_rev=0x7f050084;
- /** XLATE-ME
-Source version id
- */
- public static final int git_rev_title=0x7f05030d;
- /** Don\'t try a second time
- */
- public static final int got_langdict_summary=0x7f050327;
- /** Fetch default wordlist for language
- */
- public static final int got_langdict_title=0x7f050326;
- /** Green
- */
- public static final int green=0x7f050151;
- /** My games
- */
- public static final int group_cur_games=0x7f050270;
- /** New games
- */
- public static final int group_new_games=0x7f050271;
- /** Used as the default name for remote players displayed within
- the Game configure screen
- Final state: game is over.
- Third state: enough devices have connected in the room to
- form a complete game. We'll be in this state as long as the
- game exists.
- Second state: has been assigned to a room on the relay
- (meaning the network is working) but there are not yet as
- many players as expected: the game is not complete and play
- cannot happen.
- The display of each networked game includes one of three
- states it can be in in the process of connecting to the
- relay. These next three strings are used to create those
- three.
- First state: is configured to use a room but has not yet
- contacted the relay and been assigned that room.
- Used as a substitute for the names of remote players when
- they aren't available yet because the connection is not
- complete. Displayed in the lists of players found in each
- game listing.
- Used as the default name for remote players displayed within
- the Game configure screen
-(Off-device player)
- Used as the default name for remote players displayed within
- the Game configure screen
- */
- public static final int guest_name=0x7f0500d3;
- /** If this preference is checked the "crosshairs" (vertical and
- horzontal lines through the cell your finger is on that help
- you tell where the app thinks you're actually tapping) will
- not be shown. Some users have complained that this feature
- is distracting, presumably because they're using tablets with
- large enough screens that they always know where they're
- tapping.
- If this preference is checked the "crosshairs" (vertical and
- horzontal lines through the cell your finger is on that help
- you tell where the app thinks you're actually tapping) will
- not be shown. Some users have complained that this feature
- is distracting, presumably because they're using tablets with
- large enough screens that they always know where they're
- tapping.
-Disable crosshairs
- If this preference is checked the "crosshairs" (vertical and
- horzontal lines through the cell your finger is on that help
- you tell where the app thinks you're actually tapping) will
- not be shown. Some users have complained that this feature
- is distracting, presumably because they're using tablets with
- large enough screens that they always know where they're
- tapping.
- */
- public static final int hide_crosshairs=0x7f05015d;
- /** explanation of the above
- explanation of the above
-Do not visually indicate which board cell is touched
- explanation of the above
- */
- public static final int hide_crosshairs_summary=0x7f05015e;
- /** clarification of above
-XLATE-ME
-Hiding the newgame buttons in
- the main screen makes more games visible
- */
- public static final int hide_newgames_summary=0x7f050140;
- /** Checkbox that when set prevents showing the newgame buttons
- on the main screen to save space
-XLATE-ME
-Hide newgame buttons
- */
- public static final int hide_newgames_title=0x7f05013f;
- /** Checkbox that when set prevents showing a title bar in the
- game board window to save space
- Checkbox that when set prevents showing a title bar in the
- game board window to save space
-Hide titlebar
- Checkbox that when set prevents showing a title bar in the
- game board window to save space
- */
- public static final int hide_title=0x7f05013d;
- /** clarification of above
- clarification of above
-Hiding the game name lets the
- board be slightly larger
- clarification of above
- */
- public static final int hide_title_summary=0x7f05013e;
- /** text of checkbox. If this checkbox is checked, buttons will
- appear by which the user can get high- and low-scoring moves
- generated based on his tray. Can be used to cheat.
- text of checkbox. If this checkbox is checked, buttons will
- appear by which the user can get high- and low-scoring moves
- generated based on his tray. Can be used to cheat.
-Allow hints
- text of checkbox. If this checkbox is checked, buttons will
- appear by which the user can get high- and low-scoring moves
- generated based on his tray. Can be used to cheat.
- */
- public static final int hints_allowed=0x7f0500c6;
- /** clarification on hints_allowed, whether new games will
- default to having the hint feature enabled(string elsewhere
- in this file)
- clarification on hints_allowed, whether new games will
- default to having the hint feature enabled(string elsewhere
- in this file)
-Enable the hint feature
- clarification on hints_allowed, whether new games will
- default to having the hint feature enabled(string elsewhere
- in this file)
- */
- public static final int hints_allowed_sum=0x7f05012f;
- /** title of dialog brought up in response to the
- board_menu_game_history menu. A full history of the game up
- to the last turn is displayed, though details about what's in
- players' racks is left out if the game is not yet over.
- title of dialog brought up in response to the
- board_menu_game_history menu. A full history of the game up
- to the last turn is displayed, though details about what's in
- players' racks is left out if the game is not yet over.
-Game History
- title of dialog brought up in response to the
- board_menu_game_history menu. A full history of the game up
- to the last turn is displayed, though details about what's in
- players' racks is left out if the game is not yet over.
- */
- public static final int history_title=0x7f0501b6;
- /** Partial text of alert posted when phonies_warn or
- phonies_disallow is the current setting and a "phony" is
- played. One of the two following strings will be appended
-
- When a game has been connected and the relay is notified that
- a device in the game has deleted its part of the game, this
- message is posted when you connect your end of it to the
- relay. Once this happens there is no way to continue the
- game so you might as well delete it (unless you're saving it
- for its history etc.)
- Partial text of alert posted when phonies_warn or
- phonies_disallow is the current setting and a "phony" is
- played. One of the two following strings will be appended
-
-Word[s] %1$s not found in
- wordlist %2$s.
- Partial text of alert posted when phonies_warn or
- phonies_disallow is the current setting and a "phony" is
- played. One of the two following strings will be appended
-
- */
- public static final int ids_badwords_fmt=0x7f0500f8;
- /** text of confirmation dialog shown when user chooses the menu
- item with text board_menu_game_final and the game is not over
-
- text of confirmation dialog shown when user chooses the menu
- item with text board_menu_game_final and the game is not over
-
-Are you sure you want to resign?
- text of confirmation dialog shown when user chooses the menu
- item with text board_menu_game_final and the game is not over
-
- */
- public static final int ids_endnow=0x7f0501b8;
- /** Title of generic dialog used to display information
- If the dropdown is selected, this is the title displayed
- above the list of selectable items. The language the game
- will use is substituted in for "%1$s".
- label for dropdown by which wordlist is chosen that this
- player will use. The language the game will use (which
- constrains the choice of wordlists) is substituted in for
- "%1$s".
- Title of generic dialog used to display information
-FYI…
- Title of generic dialog used to display information
- */
- public static final int info_title=0x7f0501b2;
- /**
-
-You are using the wordlist
- %1$s but the game host is using %2$s. Would you like to use %3$s
- too?
-
- */
- public static final int inform_dict_diffdict_fmt=0x7f05025c;
- /**
-
-You and the host of this
- game are using different versions of the wordlist %1$s.
- Used in formatting final scores display
- Used in formatting final scores display
-
- */
- public static final int inform_dict_diffversion_fmt=0x7f05025a;
- /** \u0020(You will have to download it
- first.)
- */
- public static final int inform_dict_download=0x7f05025d;
- /** Wordlist mismatch
- */
- public static final int inform_dict_title=0x7f05025b;
- /** Will new games, on default, randomly rearrange the start
- order of players.
- Will new games, on default, randomly rearrange the start
- order of players.
-Juggle players
- Will new games, on default, randomly rearrange the start
- order of players.
- */
- public static final int init_autojuggle=0x7f050131;
- /** clarification on above
- clarification on above
-Randomly, for new games
- clarification on above
- */
- public static final int init_autojuggle_sum=0x7f050132;
- /** default number of minutes on timer for new games
- clarification of the above
-
- ############################################################
- # :Screens:
- # Behavior preference subscreen (within Preferences screen)
- ############################################################
-
- title of this sub-preference
- default number of minutes on timer for new games
-Timer minutes per player
- default number of minutes on timer for new games
- */
- public static final int initial_player_minutes=0x7f050134;
- public static final int invit_expl_bt_fmt=0x7f0500ed;
- public static final int invit_expl_notarget_fmt=0x7f0500ef;
- public static final int invit_expl_relay_fmt=0x7f0500ee;
- public static final int invit_expl_sms_fmt=0x7f0500ec;
- public static final int invite_choice_bt=0x7f05017c;
- public static final int invite_choice_email=0x7f05017b;
- /** Email
-Bluetooth
-NFC (\"Android beaming\")
- */
- public static final int invite_choice_nfc=0x7f05017d;
- public static final int invite_choice_p2p=0x7f05017f;
- public static final int invite_choice_relay=0x7f05017e;
- /** EXPLAIN ME
- Bluetooth is not available. This may
- mean that your device doesn\'t support it, or that it\'s been
- turned off.
- The invitation process begins with this query. The choice is
- between html and plaintext formatting but I also provide some
- explanation/guidance.
- The invitation process begins with this query. The choice is
- between html and plaintext formatting but I also provide some
- explanation/guidance.
-SMS (texting)
- */
- public static final int invite_choice_sms=0x7f05017a;
- /** Inviting players: How?
- */
- public static final int invite_choice_title=0x7f050180;
- public static final int invite_chooser_email=0x7f050185;
- /** When I've created the invitation, in text or html, I ask
- Android to launch an app that can send it, typically an email
- or messaging app. Android then asks the user to choose which
- of the installed apps that can process the request he'd like
- to have launched. This string is passed to Android and used
- as the title of the dialog that presents that choice.
- When I've created the invitation, in text or html, I ask
- Android to launch an app that can send it, typically an email
- or messaging app. Android then asks the user to choose which
- of the installed apps that can process the request he'd like
- to have launched. This string is passed to Android and used
- as the title of the dialog that presents that choice.
-Send invitation via %1$s
- When I've created the invitation, in text or html, I ask
- Android to launch an app that can send it, typically an email
- or messaging app. Android then asks the user to choose which
- of the installed apps that can process the request he'd like
- to have launched. This string is passed to Android and used
- as the title of the dialog that presents that choice.
- */
- public static final int invite_chooser_fmt=0x7f050184;
- /** email
-sms
- */
- public static final int invite_chooser_sms=0x7f050186;
- public static final int invite_copied=0x7f050343;
- /** %1$s has invited you to
- play Crosswords using the wordlist %2$s (for play in %3$s), but it
- is not installed. Would you like to download the wordlist or
- decline the invitation?
- */
- public static final int invite_dict_missing_body_fmt=0x7f050262;
- /** You have been
- invited to play Crosswords using the wordlist %2$s (for play in
- %3$s), but it is not installed. Would you like to download the
- wordlist?
- */
- public static final int invite_dict_missing_body_noname_fmt=0x7f050263;
- /** Missing wordlist
- */
- public static final int invite_dict_missing_title=0x7f050261;
- public static final int invite_dualpane=0x7f05034e;
- public static final int invite_host=0x7f05007f;
- /** This is the body of the html version of the invitation. A URL
- is created with parameters describing the game and
- substituted for "%1$s". (The funky \u003c and friends are
- encodings for the greater-than and less-than symbols which
- are not legal in xml strings.)
- This is the body of the html version of the invitation. A URL
- is created with parameters describing the game and
- substituted for "%1$s". (The funky \u003c and friends are
- encodings for the greater-than and less-than symbols which
- are not legal in xml strings.)
-\u003Ca href=\"%1$s\"\u003ETap
- here\u003C/a\u003E (or tap the full link below, or, if you already
- have Crosswords installed, open the attachment) to accept my
- invitation and join this game.
-
- \u003Cbr \\\u003E
- \u003Cbr \\\u003E
- (full link: %1$s )
-
- This is the body of the html version of the invitation. A URL
- is created with parameters describing the game and
- substituted for "%1$s". (The funky \u003c and friends are
- encodings for the greater-than and less-than symbols which
- are not legal in xml strings.)
- */
- public static final int invite_htm_fmt=0x7f050182;
- /** Appended to message above if local device has NFC available
- Appended to message above if local device has NFC available
-(Or just Tap to Invite - if the
- other device also has Android Beaming and is nearby.)
- */
- public static final int invite_if_nfc=0x7f0500ea;
- public static final int invite_mime=0x7f050080;
- /** XLATE-ME
-Invite more than one player per remote device
- */
- public static final int invite_multi_summary=0x7f0502e6;
- /** XLATE-ME
-Invite multiple
- */
- public static final int invite_multi_title=0x7f0502e5;
- /** Most users create games with only two players, which is the
- default, but Crosswords supports up to four. When I'm using
- the above string to encourage the opener of a game missing
- players to invite, IF the number of missing players is
- greater than one this text is appended to the above.
- Most users create games with only two players, which is the
- default, but Crosswords supports up to four. When I'm using
- the above string to encourage the opener of a game missing
- players to invite, IF the number of missing players is
- greater than one this text is appended to the above.
-\u0020(You are expecting multiple
- remote players. Be sure to address your invitation to
- that many people.)
- If a networked game is opened and is not complete, i.e. if it
- is listed as expecting remote players who have not yet shown
- up, then the most likely explanation is that none has been
- invited. (It's also possible that an invitation has been
- sent, but I have no way of knowing that.) So every time I
- open such a game I give the user a chance to issue an
- invititation while trying to warn him not to send duplicates.
- The number of players missing is substituted for "%1$d".
- Toast shown when players are missing, same time as above
- but more subtle.
- Most users create games with only two players, which is the
- default, but Crosswords supports up to four. When I'm using
- the above string to encourage the opener of a game missing
- players to invite, IF the number of missing players is
- greater than one this text is appended to the above.
- */
- public static final int invite_multiple=0x7f0500eb;
- /**
-
- */
- public static final int invite_notice_title=0x7f050202;
- public static final int invite_p2p_desc_extra=0x7f050219;
- public static final int invite_prefix=0x7f050086;
- /** Sending invitation to Crosswords on %1$s
- */
- public static final int invite_progress_fmt=0x7f0501fd;
- /**
-
-Connecting...
- */
- public static final int invite_progress_title=0x7f0501fc;
- /** XLATE-ME
-(This dialog will stay up until all
- remote players have connected. You can close the game if you
- expect it to take a while. They will still be able to
- connect.)
- */
- public static final int invite_stays=0x7f0502f1;
- /** Send invitation using SMS (texting) or
- via email?
- Send invitation using NFC (Android
- beaming – NEW) or via email?
- Send invitation using SMS
- (texting) or NFC (\"Android beaming\" – NEW) or via email?
- When an invitation is sent, the user gets to choose between
- plaintext and html formatting. These two strings are shown in the
- two buttons in the dialog.
- SMS/Text
- Email
- NFC
- This is the subject line of the email/text sent to invite
- someone to join a game.
- EXPLAIN ME
- Le Bluetooth n\'est pas disponible. Cela peut
- signifier que votre périphérique ne peut pas en faire, ou qu\'il a été éteint.
- This is the subject line of the email/text sent to invite
- someone to join a game.
-Let\'s play Crosswords (Room %1$s)
- EXPLAIN ME
- EXPLAIN ME
- The invitation process begins with this query. The choice is
- between html and plaintext formatting but I also provide some
- explanation/guidance.
- When an invitation is sent, the user gets to choose between
- plaintext and html formatting. These two strings are shown in the
- two buttons in the dialog.
- This is the subject line of the email/text sent to invite
- someone to join a game.
- */
- public static final int invite_subject_fmt=0x7f050181;
- /** This is the body of the text version of the invitation. A URL
- is created with parameters describing the game and
- substituted for "%1$s".
- This is the body of the text version of the invitation. A URL
- is created with parameters describing the game and
- substituted for "%1$s".
-Let\'s play Crosswords! Join this game:
- %1$s .
- This is the body of the text version of the invitation. A URL
- is created with parameters describing the game and
- substituted for "%1$s".
- */
- public static final int invite_txt_fmt=0x7f050183;
- public static final int invited_msg=0x7f0500e9;
- /** First line of debug-only Invites list dialog
- */
- public static final int invites_net_fmt=0x7f050234;
- /** text of checkbox asking if user wants to search for open
- public rooms
- text of checkbox asking if user wants to search for open
- public rooms
-Join public room
- text of separator marking out the connection area of the dialog
- text of checkbox asking if user wants to search for open
- public rooms
- */
- public static final int join_room=0x7f0500bf;
- /** Checkbox that when set keeps the device screen from dimming
- if the board screen is what's displayed. This is to allow
- users to think about a move without having to touch the
- screen all the time.
- Checkbox that when set keeps the device screen from dimming
- if the board screen is what's displayed. This is to allow
- users to think about a move without having to touch the
- screen all the time.
-Keep screen on
- Checkbox that when set keeps the device screen from dimming
- if the board screen is what's displayed. This is to allow
- users to think about a move without having to touch the
- screen all the time.
- */
- public static final int keep_screenon=0x7f050143;
- /** clarification of above
- clarification of above
-Keep board screen on 10 mins
- clarification of above
- */
- public static final int keep_screenon_summary=0x7f050144;
- public static final int key_addrs_pref=0x7f05003f;
- public static final int key_background=0x7f050019;
- public static final int key_board_size=0x7f050028;
- public static final int key_bonus_l2x=0x7f050013;
- public static final int key_bonus_l3x=0x7f050014;
- public static final int key_bonus_w2x=0x7f050015;
- public static final int key_bonus_w3x=0x7f050016;
- /** the color of text, e.g. "2L", shown on a bonus square on the
- board
- the color of text, e.g. "2L", shown on a bonus square on the
- board
-In-square bonus hint
- the color of text, e.g. "2L", shown on a bonus square on the
- board
- */
- public static final int key_bonushint=0x7f05014f;
- public static final int key_bt_addrs=0x7f050041;
- /** database keys whose entries aren't visible prefs
- */
- public static final int key_closed_langs=0x7f050040;
- public static final int key_clr_bonushint=0x7f05001b;
- public static final int key_clr_crosshairs=0x7f05001a;
- /** prefs keys
- */
- public static final int key_color_tiles=0x7f050001;
- public static final int key_connect_frequency=0x7f050031;
- public static final int key_connstat_data=0x7f050044;
- public static final int key_default_dict=0x7f05002b;
- public static final int key_default_group=0x7f050049;
- public static final int key_default_language=0x7f05002a;
- public static final int key_default_loc=0x7f05003b;
- public static final int key_default_phonies=0x7f05002f;
- public static final int key_default_robodict=0x7f05002e;
- public static final int key_default_timerenabled=0x7f050030;
- public static final int key_dev_id=0x7f050045;
- public static final int key_dict_host=0x7f050022;
- public static final int key_disable_nag=0x7f050006;
- public static final int key_disable_nag_solo=0x7f050007;
- public static final int key_disable_relay=0x7f050033;
- public static final int key_download_path=0x7f050070;
- public static final int key_empty=0x7f050018;
- public static final int key_enable_debug=0x7f05006a;
- public static final int key_enable_dualpane=0x7f05003d;
- public static final int key_enable_dup_invite=0x7f05006b;
- public static final int key_enable_nfc_toself=0x7f05006c;
- public static final int key_enable_pubroom=0x7f05000e;
- public static final int key_enable_relay_toself=0x7f05006e;
- public static final int key_enable_sms=0x7f050035;
- public static final int key_enable_sms_toself=0x7f05006d;
- public static final int key_explain_robot=0x7f050004;
- public static final int key_force_radio=0x7f05003e;
- public static final int key_force_tablet=0x7f05003c;
- public static final int key_gcmvers_regid=0x7f050046;
- public static final int key_got_langdict=0x7f050071;
- public static final int key_group_posns=0x7f05004a;
- public static final int key_hide_crosshairs=0x7f05000a;
- public static final int key_hide_newgames=0x7f05000d;
- public static final int key_hide_title=0x7f05000c;
- public static final int key_hide_values=0x7f05000b;
- public static final int key_init_autojuggle=0x7f050027;
- public static final int key_init_hintsallowed=0x7f050025;
- public static final int key_init_nethintsallowed=0x7f050026;
- public static final int key_initial_player_minutes=0x7f050029;
- public static final int key_invite_multi=0x7f050074;
- public static final int key_keep_screenon=0x7f050037;
- public static final int key_last_packet=0x7f05004b;
- public static final int key_logging_on=0x7f050023;
- public static final int key_na_browse=0x7f050063;
- public static final int key_na_browseall=0x7f050064;
- public static final int key_na_clip_expl=0x7f050068;
- public static final int key_na_comms_bt=0x7f050078;
- public static final int key_na_comms_p2p=0x7f050079;
- public static final int key_na_comms_relay=0x7f05007b;
- public static final int key_na_comms_sms=0x7f05007a;
- public static final int key_na_dicts=0x7f050069;
- public static final int key_na_fmt_expl=0x7f050067;
- public static final int key_na_lookup=0x7f050062;
- public static final int key_na_rematch_two_only=0x7f050076;
- public static final int key_na_studycopy=0x7f050066;
- public static final int key_na_values=0x7f050065;
- public static final int key_nag_intervals=0x7f05006f;
- public static final int key_network_behavior=0x7f050036;
- public static final int key_notagain_arrow=0x7f05005d;
- public static final int key_notagain_backclears=0x7f050050;
- public static final int key_notagain_chat=0x7f050051;
- public static final int key_notagain_conndall=0x7f05005a;
- public static final int key_notagain_conndfirst=0x7f05005b;
- public static final int key_notagain_conndmid=0x7f05005c;
- public static final int key_notagain_dfltname=0x7f050077;
- public static final int key_notagain_done=0x7f050058;
- public static final int key_notagain_dualpane=0x7f05004f;
- public static final int key_notagain_enablepublic=0x7f050075;
- public static final int key_notagain_flip=0x7f050056;
- public static final int key_notagain_hidenewgamebuttons=0x7f050061;
- public static final int key_notagain_hintnext=0x7f050054;
- public static final int key_notagain_hintprev=0x7f050053;
- public static final int key_notagain_juggle=0x7f050055;
- public static final int key_notagain_newfrom=0x7f05005f;
- /** key_notagain_sms_ready
- */
- public static final int key_notagain_newselect=0x7f05004e;
- public static final int key_notagain_relay=0x7f050052;
- public static final int key_notagain_sync=0x7f05004d;
- public static final int key_notagain_trading=0x7f050060;
- public static final int key_notagain_turnchanged=0x7f05005e;
- public static final int key_notagain_undo=0x7f050057;
- public static final int key_notagain_unlock=0x7f050059;
- public static final int key_notify_sound=0x7f050032;
- public static final int key_notify_vibrate=0x7f050034;
- public static final int key_peek_other=0x7f050009;
- public static final int key_player0=0x7f05000f;
- public static final int key_player1=0x7f050010;
- public static final int key_player1_name=0x7f05002c;
- public static final int key_player2=0x7f050011;
- public static final int key_player3=0x7f050012;
- public static final int key_proxy_port=0x7f050020;
- public static final int key_relay_host=0x7f05001c;
- public static final int key_relay_ids=0x7f050043;
- public static final int key_relay_port=0x7f05001d;
- public static final int key_relay_regid=0x7f050047;
- public static final int key_relay_regid_ackd=0x7f050048;
- public static final int key_robot_name=0x7f05002d;
- public static final int key_show_arrow=0x7f050002;
- public static final int key_show_sms=0x7f050024;
- public static final int key_skip_confirm=0x7f050005;
- public static final int key_sms_phones=0x7f050042;
- public static final int key_sms_port=0x7f050021;
- public static final int key_sort_tiles=0x7f050008;
- public static final int key_square_tiles=0x7f050003;
- public static final int key_studyon=0x7f050039;
- public static final int key_summary_field=0x7f05003a;
- public static final int key_thumbsize=0x7f050038;
- public static final int key_tile_back=0x7f050017;
- public static final int key_udp_interval=0x7f05004c;
- public static final int key_update_prerel=0x7f05001f;
- public static final int key_update_url=0x7f05001e;
- public static final int key_xlations_enabled=0x7f050073;
- public static final int key_xlations_locale=0x7f050072;
- /** text of separator marking out the language area of the
- dialog. First is used for single-device games, and second
- for networked games (where players aren't allowed to have
- different wordlists.)
- text of separator marking out the language area of the
- dialog. First is used for single-device games, and second
- for networked games (where players aren't allowed to have
- different wordlists.)
-Game language
- text of separator marking out the language area of the
- dialog. First is used for single-device games, and second
- for networked games (where players aren't allowed to have
- different wordlists.)
- */
- public static final int lang_label=0x7f0500bc;
- public static final int lang_name_arabic=0x7f0502ab;
- public static final int lang_name_catalan=0x7f0502b2;
- public static final int lang_name_czech=0x7f0502b5;
- public static final int lang_name_danish=0x7f0502af;
- public static final int lang_name_dutch=0x7f0502b1;
- public static final int lang_name_english=0x7f0502a7;
- public static final int lang_name_french=0x7f0502a8;
- public static final int lang_name_german=0x7f0502a9;
- public static final int lang_name_greek=0x7f0502b6;
- public static final int lang_name_italian=0x7f0502b0;
- public static final int lang_name_polish=0x7f0502ae;
- public static final int lang_name_portuguese=0x7f0502b3;
- public static final int lang_name_russian=0x7f0502b4;
- public static final int lang_name_slovak=0x7f0502b7;
- public static final int lang_name_spanish=0x7f0502ac;
- public static final int lang_name_swedish=0x7f0502ad;
- public static final int lang_name_turkish=0x7f0502aa;
- /** Unknown
- */
- public static final int lang_unknown=0x7f0502ca;
- /** Game language/wordlist
- */
- public static final int langdict_label=0x7f0500bd;
- /** Put new games here
- */
- public static final int list_group_default=0x7f05026d;
- /** Delete group
- */
- public static final int list_group_delete=0x7f05026b;
- /** Move down
- */
- public static final int list_group_movedown=0x7f05026f;
- /** Move up
- */
- public static final int list_group_moveup=0x7f05026e;
- /** Rename
- */
- public static final int list_group_rename=0x7f05026c;
- /** ############## menu items ##############
- pulls up dialog to configure the selected game
- Used to format game name plus some other information as the
- one-line summary for each game in the main screen. The name
- of the game is substituted for %1$s. Something else
- (language, player names, etc), is substituted for %2$s. This
- does not require translation unless the parentheses or
- ordering is wrong for your language.
- Games list screen menuitem text for creating a new group
- ############## menu items ##############
- pulls up dialog to configure the selected game
- ############## menu items ##############
- pulls up dialog to configure the selected game
- */
- public static final int list_item_config=0x7f05009b;
- /** makes a copy of the selected game. This is currently
- disabled for networked games since there would be problems if
- two identically configured games started trying to talk to a
- remote game that expected there was only one of them.
- makes a copy of the selected game. This is currently
- disabled for networked games since there would be problems if
- two identically configured games started trying to talk to a
- remote game that expected there was only one of them.
- makes a copy of the selected game. This is currently
- disabled for networked games since there would be problems if
- two identically configured games started trying to talk to a
- remote game that expected there was only one of them.
- */
- public static final int list_item_copy=0x7f0500a1;
- /** pulls up dialog to delete the selected game
- pulls up dialog to change the group of the selected game
- pulls up dialog to rename (change name of) the selected game
- pulls up dialog to delete the selected game
- pulls up dialog to delete the selected game
- */
- public static final int list_item_delete=0x7f05009e;
- public static final int list_item_deselect=0x7f05034b;
- /** pulls up dialog to change the group of the selected game
- pulls up dialog to change the group of the selected game
- pulls up dialog to change the group of the selected game
- */
- public static final int list_item_move=0x7f05009d;
- /** creates a new game with all configuation copied from the
- selected game
- creates a new game with all configuation copied from the
- selected game
- creates a new game with all configuation copied from the
- selected game
- */
- public static final int list_item_new_from=0x7f0500a0;
- /** pulls up dialog to rename (change name of) the selected game
- pulls up dialog to rename (change name of) the selected game
- pulls up dialog to rename (change name of) the selected game
- */
- public static final int list_item_rename=0x7f05009c;
- /** pulls up dialog to reset the selected game, that is to remove
- all moves so that it's the same as a newly created game
- except for any configuration.
- Text of confirmation dialog posted when list_item_reset menu
- is selected
- text within rename dialog (triggered by selecting
- list_item_rename)
-
- Title of dialog for renaming game (triggered by selecting
- list_item_rename)
- If you try to copy a networked game you get this error
- message.
- pulls up dialog to reset the selected game, that is to remove
- all moves so that it's the same as a newly created game
- except for any configuration.
- pulls up dialog to reset the selected game, that is to remove
- all moves so that it's the same as a newly created game
- except for any configuration.
- */
- public static final int list_item_reset=0x7f05009f;
- public static final int list_item_select=0x7f05034a;
- /** formatting for last move summary in notifications
- formatting for last move summary in notifications
-%1$s passed (0 points)
- */
- public static final int lmi_pass_fmt=0x7f0502d3;
- /** %1$s lost a turn
- */
- public static final int lmi_phony_fmt=0x7f0502d4;
- /** Tiles assigned to %1$s
- */
- public static final int lmi_tiles_fmt=0x7f0502d5;
- /** One of the strings used in the right column of the list of
- installed wordlists to describe those that are part of
- Crosswords and that cannot be uninstalled or moved.
- loc_internal and loc_external are the other possible strings
- in this column.
- One of the strings used in the right column of the list of
- installed wordlists to describe those that are part of
- Crosswords and that cannot be uninstalled or moved.
- loc_internal and loc_external are the other possible strings
- in this column.
- One of the strings used in the right column of the list of
- installed wordlists to describe those that are part of
- Crosswords and that cannot be uninstalled or moved.
- loc_internal and loc_external are the other possible strings
- in this column.
- */
- public static final int loc_builtin=0x7f0500a8;
- /** Used to describe wordlists that are in the Downloads
- directory. Currently I don't look there so this is unused,
- but I will eventually do so. This should be the same name as
- the built-in Android web browser uses for the directory where
- it saves files it downloads.
- Used to describe wordlists that are in the Downloads
- directory. Currently I don't look there so this is unused,
- but I will eventually do so. This should be the same name as
- the built-in Android web browser uses for the directory where
- it saves files it downloads.
- Used to describe wordlists that are in the Downloads
- directory. Currently I don't look there so this is unused,
- but I will eventually do so. This should be the same name as
- the built-in Android web browser uses for the directory where
- it saves files it downloads.
- */
- public static final int loc_downloads=0x7f0500a9;
- /**
-
-
- */
- public static final int loc_external=0x7f0500b3;
- /** All
- */
- public static final int loc_filters_all=0x7f0502a3;
- /** Latest menu
- */
- public static final int loc_filters_menu=0x7f0502a5;
- /** Modified by me
- */
- public static final int loc_filters_modified=0x7f0502a6;
- /** Filter by:
- */
- public static final int loc_filters_prompt=0x7f0502a1;
- /** Latest screen
- */
- public static final int loc_filters_screen=0x7f0502a4;
- /** Illegal translation: a translated
- string must have the same format specifiers (e.g. %1$s) as the
- original.
- */
- public static final int loc_fmts_mismatch=0x7f0502bc;
- /** see move_dictf above
- see move_dictf above
- see move_dictf above
- */
- public static final int loc_internal=0x7f0500b2;
- /** Check
- */
- public static final int loc_item_check=0x7f0502b9;
- /** for loc item edit menu
- for loc item edit menu
-Clear
- */
- public static final int loc_item_clear=0x7f0502b8;
- /** Copy official
- */
- public static final int loc_item_copy_bless=0x7f0502bb;
- /** Copy English
- */
- public static final int loc_item_copy_eng=0x7f0502ba;
- /** %1$s (official)
- */
- public static final int loc_lang_blessed=0x7f05029c;
- /** %1$s (yours)
- */
- public static final int loc_lang_local=0x7f05029d;
- /** Translate
- */
- public static final int loc_menu_xlate=0x7f05029b;
- /** Search for:
- */
- public static final int loc_search_prompt=0x7f0502a2;
- /** This is the "hint" printed in light text in the empty player
- name field
- ############################################################
- # :Screens:
- # RelayGameActivity screen
- #
- # This screen is a simple alternative to the Game Configure
- # screen. You'll get it when you choose the list_item_config
- # on certain unconfigured simple relay games (currently simple
- # means they have 2 players. These days about the only way to
- # get this screen is to create a relay game manually and to
- # abort after making the room name empty. That is, this is
- # left over from an older way of helping people connect, from
- # before invitations.
-
- # The dialog has a list of instructions, two text fields for
- # room name and local player name, and two buttons.
- ############################################################
-
- This is the "hint" printed in light text in the empty player
- name field
-Player name
- ############################################################
- # :Screens:
- # RelayGameActivity screen
- #
- # This screen is a simple alternative to the Game Configure
- # screen. You'll get it when you choose the list_item_config
- # on certain unconfigured simple relay games (currently simple
- # means they have 2 players. These days about the only way to
- # get this screen is to create a relay game manually and to
- # abort after making the room name empty. That is, this is
- # left over from an older way of helping people connect, from
- # before invitations.
-
- # The dialog has a list of instructions, two text fields for
- # room name and local player name, and two buttons.
- ############################################################
-
- This is the heading above the list of steps. The default
- language is substituted for %s.
- These four strings are displayed as step-by-step
- instructions
- This is the "hint" printed in light text in the empty player
- name field
- */
- public static final int local_name_hint=0x7f05018d;
- /** XLATE-ME
-Enable logging
- */
- public static final int logging_on=0x7f050304;
- /** XLATE-ME
-(release builds only)
- */
- public static final int logging_on_summary=0x7f050305;
- /** Word lookup
- */
- public static final int lookup_title=0x7f050297;
- /**
-
-Max length
-
- */
- public static final int max_len=0x7f0501f2;
- /**
-
-Chat
-
- */
- public static final int menu_chat=0x7f05022c;
- /**
-
-Flip board
-
- */
- public static final int menu_flip=0x7f05022a;
- /**
-
-Next hint
-
- */
- public static final int menu_hint_next=0x7f050227;
- /**
-
-Prev hint
-
- */
- public static final int menu_hint_prev=0x7f050226;
- /**
-
-Juggle rack
-
- */
- public static final int menu_juggle=0x7f050229;
- /** text of menu that brings up the Settings (preferences) dialog
- 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=0x7f050095;
- /** Rate Crosswords
- */
- public static final int menu_rateme=0x7f050289;
- /**
-
-Toggle values
-
- */
- public static final int menu_toggle_values=0x7f05022e;
- /**
-
-Zoom in/out
-
- */
- public static final int menu_zoom=0x7f05022b;
- /**
-
-Min length
-
- */
- public static final int min_len=0x7f0501f1;
- /** label for the field used to set the timer's inital value
- label for the field used to set the timer's inital value
-Minutes per player
- label for the field used to set the timer's inital value
- */
- public static final int minutes_label=0x7f0500c9;
- /** body of notification shown when invitation requires a
- wordslist that's not installed
- body of notification shown when invitation requires a
- wordslist that's not installed
-Tap to download missing wordlist
- */
- public static final int missing_dict_detail=0x7f050260;
- /** Title of notification shown when invitation requires a
- wordslist that's not installed
- Title of notification shown when invitation requires a
- wordslist that's not installed
-Game invitation pending
- */
- public static final int missing_dict_title=0x7f05025f;
- public static final int missing_perms=0x7f050357;
- /** Used as a substitute for the names of remote players when
- they aren't available yet because the connection is not
- complete. Displayed in the lists of players found in each
- game listing.
- Used to format game name plus some other information as the
- one-line summary for each game in the main screen. The name
- of the game is substituted for %1$s. Something else
- (language, player names, etc), is substituted for %2$s. This
- does not require translation unless the parentheses or
- ordering is wrong for your language.
- Used to format robot player names in the lists of players
- found in each game listing
- Used as a substitute for the names of remote players when
- they aren't available yet because the connection is not
- complete. Displayed in the lists of players found in each
- game listing.
- Used as a substitute for the names of remote players when
- they aren't available yet because the connection is not
- complete. Displayed in the lists of players found in each
- game listing.
- */
- public static final int missing_player=0x7f05008b;
- /** When the dicts_item_move menu is chosen, this text is used in
- the confirmation dialog. The name of the selected wordlist
- is substituted for %1$s. The strings loc_internal and
- loc_internal are substitued for %2$s and %3$s (or vice-versa,
- depending on the current location of the wordlist.)
- When the dicts_item_move menu is chosen, this text is used in
- the confirmation dialog. The name of the selected wordlist
- is substituted for %1$s. The strings loc_internal and
- loc_internal are substitued for %2$s and %3$s (or vice-versa,
- depending on the current location of the wordlist.)
- When the dicts_item_move menu is chosen, this text is used in
- the confirmation dialog. The name of the selected wordlist
- is substituted for %1$s. The strings loc_internal and
- loc_internal are substitued for %2$s and %3$s (or vice-versa,
- depending on the current location of the wordlist.)
- */
- public static final int move_dict_fmt=0x7f0500b1;
- public static final int move_dict_rationale=0x7f050360;
- /**
- ############################################################
- # :Dialogs:
- # Password dialog
- #
-
- # This alert is displayed when a local player has set a
- # password and is trying to see his tiles
- ############################################################
-
- Text of dialog. Player name is substituted
- If substituting an existing same-language wordlist by
- choosing button_substdict user gets to choose from a list of
- wordlists. This is the title of that list.
- Text of button allowing user to choose to open with a
- different (but same-language wordlist)
-
- ############################################################
- # :Dialogs:
- # Password dialog
- #
-
- # This alert is displayed when a local player has set a
- # password and is trying to see his tiles
- ############################################################
-
- Text of dialog. Player name is substituted
-Password for \"%1$s\":
-
- ############################################################
- # :Dialogs:
- # Password dialog
- #
-
- # This alert is displayed when a local player has set a
- # password and is trying to see his tiles
- ############################################################
-
- Text of dialog. Player name is substituted
- */
- public static final int msg_ask_password_fmt=0x7f0501a5;
- /** When a game has been connected and the relay is notified that
- a device in the game has deleted its part of the game, this
- message is posted when you connect your end of it to the
- relay. Once this happens there is no way to continue the
- game so you might as well delete it (unless you're saving it
- for its history etc.)
- When a game has been connected and the relay is notified that
- a device in the game has deleted its part of the game, this
- message is posted when you connect your end of it to the
- relay. Once this happens there is no way to continue the
- game so you might as well delete it (unless you're saving it
- for its history etc.)
-This game has been deleted on
- another device. You will not be able to play any
- further.
- When a game has been connected and the relay is notified that
- a device in the game has deleted its part of the game, this
- message is posted when you connect your end of it to the
- relay. Once this happens there is no way to continue the
- game so you might as well delete it (unless you're saving it
- for its history etc.)
- */
- public static final int msg_dev_deleted=0x7f0500f7;
- /** (I believe this can no longer occur)
- (I believe this can no longer occur)
-Another host has already registered a
- room using that name. Rename yours or retry later.
- (I believe this can no longer occur)
- */
- public static final int msg_dup_room=0x7f0500f5;
- /** (I believe this can no longer occur)
- (I believe this can no longer occur)
-The relay has lost contact with
- another device in this game.
- (I believe this can no longer occur)
- */
- public static final int msg_lost_other=0x7f0500f6;
- /** (I believe this can no longer occur)
- (I believe this can no longer occur)
-No host has registered a room by that name.
- (I believe this can no longer occur)
- */
- public static final int msg_no_room=0x7f0500f4;
- /** Text of "toast" shown when a game is notified by the relay
- that all expected players have registered. At this point
- play can begin.
- Text of "toast" shown when a game is notified by the relay
- that all expected players have registered. At this point
- play can begin.
-All players are here in room
- \"%1$s\".
- Text of "toast" (mini window briefly displayed) shown when a
- game first connects to the relay. The three substitutions
- are the device's order within the game (e.g. 2), the name of
- the room, and how many additional players have not yet
- registered with the relay in this game. This should be seen
- only once per game.
- Text of "toast" shown when a game is notified by the relay
- that all expected players have registered. At this point
- play can begin.
- */
- public static final int msg_relay_all_here_fmt=0x7f0500f1;
- /** (I believe this can no longer occur)
- (I believe this can no longer occur)
-You are providing more players than
- the host expects.
- (I believe this can no longer occur)
- */
- public static final int msg_too_many=0x7f0500f3;
- /** Text of progress indicator shown while check is being conducted
- 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=0x7f050097;
- /** %1$s moved more than %2$s ago.
- */
- public static final int nag_body_fmt=0x7f0502d0;
- /** XLATE-ME
-Reminder intervals (minutes1,minutes2,...)
- */
- public static final int nag_intervals=0x7f050317;
- /** Nagging: title of notification reminder message
- Nagging: title of notification reminder message
-Reminder: It\'s your turn
- */
- public static final int nag_title=0x7f0502cf;
- /** above is inserted in this the last time I warn
- above is inserted in this the last time I warn
-Last warning: %1$s
- */
- public static final int nag_warn_last_fmt=0x7f0502d1;
- /** XLATE-ME
-%1$s copy
- */
- public static final int name_copy_fmt=0x7f050213;
- public static final int name_dict_fmt=0x7f050311;
- public static final int nbs_port=0x7f050085;
- /** text of checkbox. If this checkbox is checked, games created
- for network play will by default have the hint feature
- enabled.
- text of checkbox. If this checkbox is checked, games created
- for network play will by default have the hint feature
- enabled.
-Allow hints (networked)
- text of checkbox. If this checkbox is checked, games created
- for network play will by default have the hint feature
- enabled.
- */
- public static final int nethints_allowed=0x7f0500c7;
- /** clarification on hints_allowed, whether new NETWORKED games
- will default to having the hint feature enabled(string
- elsewhere in this file)
- clarification on hints_allowed, whether new NETWORKED games
- will default to having the hint feature enabled(string
- elsewhere in this file)
-Enable hints for two-device games
- clarification on hints_allowed, whether new NETWORKED games
- will default to having the hint feature enabled(string
- elsewhere in this file)
- */
- public static final int nethints_allowed_sum=0x7f050130;
- /** XLATE-ME
-Game network stats
- */
- public static final int netstats_title=0x7f05030c;
- /** XLATE-ME
-For experienced players
- */
- public static final int network_advanced_summary=0x7f0502e4;
- /** XLATE-ME
-Advanced
- */
- public static final int network_advanced_title=0x7f0502e3;
- /** Network game settings
- */
- public static final int network_behavior=0x7f05015f;
- /** explanation of the above
- explanation of the above
-Settings that apply to
- networked games
- explanation of the above
- */
- public static final int network_behavior_summary=0x7f050160;
- /**
-
-Tap to download and install
-
- */
- public static final int new_app_avail=0x7f050256;
- /**
-
-New version of %1$s
-
- */
- public static final int new_app_avail_fmt=0x7f050255;
- /**
-
-New game via Bluetooth
-
-From a player on the device %1$s wants to start a game
-
-
- */
- public static final int new_bt_body_fmt=0x7f050203;
- /**
-
- */
- public static final int new_btmove_title=0x7f050207;
- /**
-
-New wordlist available
-
- */
- public static final int new_dict_avail=0x7f050253;
- /**
-
-Tap to update %1$s
-
- */
- public static final int new_dict_avail_fmt=0x7f050254;
- /** XLATE-ME
-New one-device game
- */
- public static final int new_game=0x7f0502da;
- /** XLATE-ME
-Would you like to create this game
- using default settings?\n\nOr would you like to configure it
- first?
- */
- public static final int new_game_message=0x7f0502dd;
- /** XLATE-ME
-(You will have a chance to
- invite other players when it is open.)
- */
- public static final int new_game_message_net=0x7f0502df;
- /** XLATE-ME
-This game must be
- configured before it can be opened.
- */
- public static final int new_game_message_nodflt=0x7f0502de;
- /** XLATE-ME
-New networked game
- */
- public static final int new_game_networked=0x7f0502db;
- /**
-
-
-One or more moves has arrived
-
- */
- public static final int new_move_body=0x7f050208;
- /**
-
-%1$s has invited you to play
-
- */
- public static final int new_name_body_fmt=0x7f050216;
- public static final int new_relay_body=0x7f050204;
- /** hint (text shown when field is empty) for room name field
- hint (text shown when field is empty) for room name field
-Room name
- hint (text shown when field is empty) for room name field
- */
- public static final int new_room_hint=0x7f0500c0;
- /**
- ###########################################################
- # :Dialogs:
- # New user info dialog
- #
- # This dialog pops up in places I think new users need an
- # explanation of something. It always has a button allowing
- # the user to say he doesn't need to see it again.
- ###########################################################
-
- Title of New user info dialog
-
- ###########################################################
- # :Dialogs:
- # New user info dialog
- #
- # This dialog pops up in places I think new users need an
- # explanation of something. It always has a button allowing
- # the user to say he doesn't need to see it again.
- ###########################################################
-
- Title of New user info dialog
-Here\'s a tip
-
- ###########################################################
- # :Dialogs:
- # New user info dialog
- #
- # This dialog pops up in places I think new users need an
- # explanation of something. It always has a button allowing
- # the user to say he doesn't need to see it again.
- ###########################################################
-
- Title of New user info dialog
- */
- public static final int newbie_title=0x7f0501ba;
- /** section separator (white-on-gray bar) for third section:
- bluetooth games
- section separator (white-on-gray bar) for third section:
- bluetooth games
-New Bluetooth game
- section separator (white-on-gray bar) for third section:
- bluetooth games
- */
- public static final int newgame_bt_header=0x7f050179;
- /** Text of second of two buttons for new standalone games. Tap
- this and you'll get taken to the "Game configure" screen
- Text of second of two buttons for new standalone games. Tap
- this and you'll get taken to the "Game configure" screen
-Configure first
- */
- public static final int newgame_configure_first=0x7f050173;
- public static final int newgame_drop_relay=0x7f050178;
- /** Text of first of two buttons for new networked games. Tap
- this and a game will be created, but you probably won't see
- it immediately because an email or messaging app will be
- launched to send your invitation.
- Text of first of two buttons for new networked games. Tap
- this and a game will be created, but you probably won't see
- it immediately because an email or messaging app will be
- launched to send your invitation.
-Invite now
- Text of first of two buttons for new networked games. Tap
- this and a game will be created, but you probably won't see
- it immediately because an email or messaging app will be
- launched to send your invitation.
- */
- public static final int newgame_invite=0x7f050176;
- public static final int newgame_invite_more=0x7f050177;
- /** Text of first of two buttons for new standalone games. Tap
- this and a new game will be created and opened. If the first
- player is a robot it will immediately take its turn.
- Text of first of two buttons for new standalone games. Tap
- this and a new game will be created and opened. If the first
- player is a robot it will immediately take its turn.
-Play now
- Text of first of two buttons for new standalone games. Tap
- this and a new game will be created and opened. If the first
- player is a robot it will immediately take its turn.
- */
- public static final int newgame_local=0x7f050172;
- /** This is one of two descriptions on this screen. It explains
- what standalone games are and describes the two buttons used
- to create them. The name of the language of the default
- wordlist is substituted in for %1$s.
- This is one of two descriptions on this screen. It explains
- what standalone games are and describes the two buttons used
- to create them. The name of the language of the default
- wordlist is substituted in for %1$s.
-Create a new game where all
- players will be on this device. To play against a robot and
- with your default settings (in %1$s, etc.) just press \"Play
- now\". To add players or change game settings, press
- \"Configure first\".
- This is one of two descriptions on this screen. It explains
- what standalone games are and describes the two buttons used
- to create them. The name of the language of the default
- wordlist is substituted in for %1$s.
- */
- public static final int newgame_local_desc_fmt=0x7f050171;
- /** ############################################################
- # :Screens:
- # New game screen
- #
- # This comes up when you tap the "new game" button on the
- # main screen or the new game menuitem in the main screen's
- # menu. It has descriptions and buttons for creating the two
- # types of supported games, standalone and networked.
- ############################################################
-
- section separator (white-on-gray bar) for first section:
- standalone games
- ############################################################
- # :Screens:
- # New game screen
- #
- # This comes up when you tap the "new game" button on the
- # main screen or the new game menuitem in the main screen's
- # menu. It has descriptions and buttons for creating the two
- # types of supported games, standalone and networked.
- ############################################################
-
- section separator (white-on-gray bar) for first section:
- standalone games
-New Local-only game
- ############################################################
- # :Screens:
- # New game screen
- #
- # This comes up when you tap the "new game" button on the
- # main screen or the new game menuitem in the main screen's
- # menu. It has descriptions and buttons for creating the two
- # types of supported games, standalone and networked.
- ############################################################
-
- section separator (white-on-gray bar) for first section:
- standalone games
- */
- public static final int newgame_local_header=0x7f050170;
- /** This is the second of two descriptions on this screen. It
- explains what networked games are and describes the two
- buttons used to create them.
- This is the second of two descriptions on this screen. It
- explains what networked games are and describes the two
- buttons used to create them.
-Create a game that will be
- played over the network. The \"Invite now\" button starts a
- two-device game and helps you invite a friend to join it. Or
- press \"Configure first\" to change some of the defaults before
- you start your networked game. (You\'ll have a chance to send
- invites later.)
- This is the second of two descriptions on this screen. It
- explains what networked games are and describes the two
- buttons used to create them.
- */
- public static final int newgame_networked_desc=0x7f050175;
- /** section separator (white-on-gray bar) for second section:
- networked games
- section separator (white-on-gray bar) for second section:
- networked games
-New Networked game
- section separator (white-on-gray bar) for second section:
- networked games
- */
- public static final int newgame_networked_header=0x7f050174;
- /**
-
-New SMS Game
-
-
-
- */
- public static final int newgame_sms_header=0x7f050214;
- /** Name your new group:
- */
- public static final int newgroup_label=0x7f05026a;
- /** XLATE-ME
-To invite via NFC just touch the back
- of this device against the one you want to invite—any time the
- game is open.
- */
- public static final int nfc_just_tap=0x7f0502f2;
- /** XLATE-ME
-GSM
-XLATE-ME
-CDMA
-XLATE-ME
-Send via NFC to self?
- */
- public static final int nfc_to_self=0x7f050321;
- /** Title of dialog for renaming game (triggered by selecting
- list_item_rename)
- If you try to copy a networked game you get this error
- message.
- Title of dialog for renaming game (triggered by selecting
- list_item_rename)
- If you try to copy a networked game you get this error
- message.
- Title of dialog for renaming game (triggered by selecting
- list_item_rename)
- If you try to copy a networked game you get this error
- message.
- */
- public static final int no_copy_network=0x7f0500a2;
- /** If the wordlist disappears mid-game there are no choices,
- just an explanation and this button, after which the game
- closes.
- If the wordlist disappears mid-game there are no choices,
- just an explanation and this button, after which the game
- closes.
-A wordlist this game is using has
- disappeared. (Usually this means it\'s on an external card that
- is no longer available.)
- If the wordlist disappears mid-game there are no choices,
- just an explanation and this button, after which the game
- closes.
- */
- public static final int no_dict_finish=0x7f05019e;
- /** If the missing wordlist is discovered when trying to open the
- game, we have more options. If there's another wordlist in
- the same language, we can offer to substitute without needing
- to download. Otherwise the user must choose between
- downloading and not opening the game. This first message
- takes wordlist name and language substituted in for %1$ and
- %2$
- If the missing wordlist is discovered when trying to open the
- game, we have more options. If there's another wordlist in
- the same language, we can offer to substitute without needing
- to download. Otherwise the user must choose between
- downloading and not opening the game. This first message
- takes wordlist name and language substituted in for %1$ and
- %2$
-Game \"%1$s\" requires a %2$s wordlist.
- Please download one before opening.
- If the missing wordlist is discovered when trying to open the
- game, we have more options. If there's another wordlist in
- the same language, we can offer to substitute without needing
- to download. Otherwise the user must choose between
- downloading and not opening the game. This first message
- takes wordlist name and language substituted in for %1$ and
- %2$
- */
- public static final int no_dict_fmt=0x7f0501a0;
- /** This is an alternative message presented when there's also
- the option of downloading another wordlist. Game name,
- wordlist name and language are substituted in.
- This is an alternative message presented when there's also
- the option of downloading another wordlist. Game name,
- wordlist name and language are substituted in.
-Unable to open game \"%1$s\" because
- wordlist %2$s not found. (It may have been deleted, or stored
- on an external card that is no longer available.)\n\nYou can
- download a replacement or substitute another %3$s
- wordlist.
- This is an alternative message presented when there's also
- the option of downloading another wordlist. Game name,
- wordlist name and language are substituted in.
- */
- public static final int no_dict_subst_fmt=0x7f0501a1;
- /**
- ############################################################
- # :Dialogs:
- # Missing wordlist alert
- #
- # This alert is displayed when you try to open a game whose
- # wordlist cannot be found.
- ############################################################
-
- title of alert
- Display snapshots of games
- Button shown in game over dialog triggering creation of new
- game with the same players and parameters as the one that
- just ended.
- Shown in toast when relaunching after switching dicts
-
-
- Used in formatting final scores display
- Used in formatting final scores display
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- board menu for small devices only
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- New strings that need to be documented and found a home
- above.
- text of button in About Crosswords dialog summoning above
- dialog
- text of dialog showing the set of changes made since the last
- release
- Another paragraph giving credit for work done other than by
- Eric House and translators
-
- ############################################################
- # :Dialogs:
- # Missing wordlist alert
- #
- # This alert is displayed when you try to open a game whose
- # wordlist cannot be found.
- ############################################################
-
- title of alert
-Wordlist not found
-
- ############################################################
- # :Dialogs:
- # Missing wordlist alert
- #
- # This alert is displayed when you try to open a game whose
- # wordlist cannot be found.
- ############################################################
-
- title of alert
- */
- public static final int no_dict_title=0x7f05019d;
- /** If you click on the Play button without having entered a room
- name you get an alert with this error message.
- If you click on the Play button without having entered a room
- name you get an alert with this error message.
-This game cannot connect without a
- room name.
- If you click on the Play button without having entered a room
- name you get an alert with this error message.
- */
- public static final int no_empty_rooms=0x7f05018f;
- /** If you choose the above option and have no networked games
- you get this error message
- If you choose the above option and have no networked games
- you get this error message
- If you choose the above option and have no networked games
- you get this error message
- */
- public static final int no_games_to_refresh=0x7f050098;
- public static final int no_invites=0x7f05034d;
- /** Google Play app not found
- */
- public static final int no_market=0x7f05028a;
- /** displayed when you long-tap a scoreboard entry and there's no
- most recent score to show
- displayed when you long-tap a scoreboard entry and there's no
- most recent score to show
-(No moves yet)
- displayed when you long-tap a scoreboard entry and there's no
- most recent score to show
- */
- public static final int no_moves_made=0x7f0500e8;
- /** If the query returns no rooms, this message is displayed,
- with the number of players in the game and its language
- substituted.
- If the query returns no rooms, this message is displayed,
- with the number of players in the game and its language
- substituted.
-No public rooms found for
- %1$d-player games in %2$s. Try refreshing or creating your
- own.
- If the query returns no rooms, this message is displayed,
- with the number of players in the game and its language
- substituted.
- */
- public static final int no_name_found_fmt=0x7f0500c4;
- public static final int no_relay_conn=0x7f050334;
- /** This is not currently shown
- Crosswords wordlists, which are
- just compressed lists of words plus tile information, determine
- what language a game is played in and how \"smart\" the robot
- is. You can download different sized wordlists in many
- languages here. Email me at eehouse@eehouse.org for information
- on building and installing your own wordlists.
- Shown the first time the board arrow is drawn on the current
- Board screen. The idea is that you're tapping around
- figuring out how to play and when you tap an empty cell the
- arrow appears. This explains it.
- This is not currently shown
- Crosswords wordlists, which are
- just compressed lists of words plus tile information, determine
- what language a game is played in and how \"smart\" the robot
- is. You can download different sized wordlists in many
- languages here. Email me at eehouse@eehouse.org for information
- on building and installing your own wordlists.
- Shown the first time the board arrow is drawn on the current
- Board screen. The idea is that you're tapping around
- figuring out how to play and when you tap an empty cell the
- arrow appears. This explains it.
-Moving tiles to the board:\nYou can
- drag tiles between the rack and the board, or you can tap an
- empty square to place the board arrow. Rack tiles you tap will
- replace the arrow (moving it one square in the direction it
- points.) Tap the arrow once to change its orientation; a second
- time, to hide it. A checkbox in the Appearance section of
- Settings will hide it permanently.
- This is not currently shown
- Crosswords wordlists, which are
- just compressed lists of words plus tile information, determine
- what language a game is played in and how \"smart\" the robot
- is. You can download different sized wordlists in many
- languages here. Email me at eehouse@eehouse.org for information
- on building and installing your own wordlists.
- Shown the first time the board arrow is drawn on the current
- Board screen. The idea is that you're tapping around
- figuring out how to play and when you tap an empty cell the
- arrow appears. This explains it.
- */
- public static final int not_again_arrow=0x7f0501cc;
- /** The back button clears any
- selection instead of exiting. Hit it again to exit the
- app.
- */
- public static final int not_again_backclears=0x7f05027d;
- /**
-
-This button opens the wordlist
- browser on the current player\'s wordlist.
-
- */
- public static final int not_again_browse=0x7f0501ee;
- /**
-
-This button opens the wordlist
- browser on the wordlist of your choice.
- */
- public static final int not_again_browseall=0x7f0501ef;
- /** Shown when you tap the chat button on the toolbar of the
- main Board screen
- Shown when you tap the chat button on the toolbar of the
- main Board screen
-This button opens the screen for
- messaging between devices in this game. Messages will be kept
- until you delete the game that contains them.
- Shown when you tap the chat button on the toolbar of the
- main Board screen
- */
- public static final int not_again_chat=0x7f0501c5;
- /** EXPERIMENTAL: Newbie hint next when invite_choice_clip shown
- when chosen
- */
- public static final int not_again_clip_expl_fmt=0x7f050345;
- public static final int not_again_comms_bt=0x7f05033d;
- public static final int not_again_comms_p2p=0x7f05033e;
- public static final int not_again_comms_relay=0x7f05033b;
- public static final int not_again_comms_sms=0x7f05033c;
- /** This is shown in the Board screen when you successfully
- connecting a game to the relay and are the last device in the
- game to do so, i.e. the game is now complete and you should
- expect play to begin.
- This is shown in the Board screen when you successfully
- connecting a game to the relay and are the last device in the
- game to do so, i.e. the game is now complete and you should
- expect play to begin.
-You have connected and joined a
- game on the relay; the room is now full. The device that
- created the room will now assign your initial tiles and play can
- begin.
- This is shown in the Board screen when you successfully
- connecting a game to the relay and are the last device in the
- game to do so, i.e. the game is now complete and you should
- expect play to begin.
- */
- public static final int not_again_conndall=0x7f0501cb;
- /** This is shown in the Board screen when you successfully
- connect a game to the relay and are the first device in the
- game to do so.
- This is shown in the Board screen when you successfully
- connect a game to the relay and are the first device in the
- game to do so.
-You have connected and started
- a game in a new room. Once the remaining devices have joined
- your room and Crosswords has assigned them tiles the game can
- begin.
- This is shown in the Board screen when you successfully
- connect a game to the relay and are the first device in the
- game to do so.
- */
- public static final int not_again_conndfirst=0x7f0501c9;
- /** This is shown in the Board screen when you successfully
- connecting a game to the relay and are not the first device
- in the game but not the last either. So it will only occur
- for games with more than two devices, which are rare.
- This is shown in the Board screen when you successfully
- connecting a game to the relay and are not the first device
- in the game but not the last either. So it will only occur
- for games with more than two devices, which are rare.
-You have connected and joined a
- game on the relay. You will be notified when the remaining
- device[s] have joined your room and play can begin.
- This is shown in the Board screen when you successfully
- connecting a game to the relay and are not the first device
- in the game but not the last either. So it will only occur
- for games with more than two devices, which are rare.
- */
- public static final int not_again_conndmid=0x7f0501ca;
- public static final int not_again_dfltname_fmt=0x7f05034c;
- /** This screen lets you install new
- wordslists and view the ones you already have.\n\nWhat wordlists
- you have installed determines:\n• What languages you can play
- in\n• How smart the robot player is\n• What words are
- legal.\n\nCheck the \"Show downloadable\" box at the top to see
- what\'s available.
- */
- public static final int not_again_dicts=0x7f0502cb;
- /** 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
- the same thing.
- 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
- the same thing.
-Tapping the \"pts\" counter that
- appears at the right end of the rack is the easiest way to
- commit a move.
- 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
- the same thing.
- */
- public static final int not_again_done=0x7f0501c7;
- /** XLATE-ME
-Public rooms have been made
- an \"advanced\" feature in this release. If you were using them
- and want them back, enable them now. You can turn them off again
- in Settings.
- */
- public static final int not_again_enablepublic=0x7f0502f9;
- /** Shown when you tap the flip button on the toolbar of the main
- Board screen
- Shown when you tap the flip button on the toolbar of the main
- Board screen
-This button flips the board across a
- diagonal axis.
- Shown when you tap the flip button on the toolbar of the main
- Board screen
- */
- public static final int not_again_flip=0x7f0501c3;
- /** This string has special format
- specifiers (e.g. %1$s). Please be sure that your translation has
- the same ones as the original.\n\n(You will not be able to save it
- unless it does.)
- */
- public static final int not_again_fmt_expl=0x7f0502bd;
- /** XLATE-ME
-These two buttons do
- the same thing as the first two items in this window\'s Action Bar
- (or menu). If you like you can hide the buttons to make more games
- visible.\n\n(If you later want to unhide them go to the Appearance
- section of App settings).
-
- */
- public static final int not_again_hidenewgamebuttons=0x7f0502eb;
- /** Shown when you tap the next hint button on the toolbar of the
- main Board screen
- Shown when you tap the next hint button on the toolbar of the
- main Board screen
-This button shows all possible
- moves in descending order (using tiles to the right of the rack
- divider.)
- Shown when you tap the next hint button on the toolbar of the
- main Board screen
- */
- public static final int not_again_hintnext=0x7f0501c1;
- /** Currently not used
- The new game you have created has
- two players. Player 1 is a robot; Player 2 is you. Tap the game
- to play; long-tap (hold your finger on the game) to change its
- settings or for other options.
- Shown when you tap the Previous Hint button on the toolbar of
- the main Board screen
- Currently not used
- The new game you have created has
- two players. Player 1 is a robot; Player 2 is you. Tap the game
- to play; long-tap (hold your finger on the game) to change its
- settings or for other options.
- Shown when you tap the Previous Hint button on the toolbar of
- the main Board screen
-This button shows all possible
- moves in ascending order (using tiles to the right of the rack
- divider.)
- Currently not used
- The new game you have created has
- two players. Player 1 is a robot; Player 2 is you. Tap the game
- to play; long-tap (hold your finger on the game) to change its
- settings or for other options.
- Shown when you tap the Previous Hint button on the toolbar of
- the main Board screen
- */
- public static final int not_again_hintprev=0x7f0501c0;
- /** Shown when you tap the juggle button on the toolbar of the
- main Board screen
- Shown when you tap the juggle button on the toolbar of the
- main Board screen
-This button randomly rearranges
- tiles in the rack.
- Shown when you tap the juggle button on the toolbar of the
- main Board screen
- */
- public static final int not_again_juggle=0x7f0501c2;
- /**
-
-This button lets you look up,
- online, the words just played.
-
- */
- public static final int not_again_lookup=0x7f0501e2;
- /** Shown when you first pick the list_item_new_from menuitem
- Shown when you first pick the list_item_new_from menuitem
-Create a new ready-to-play game
- using all the settings from this one. That is, treat this game
- as a template.
- Shown when you first pick the list_item_new_from menuitem
- */
- public static final int not_again_newfrom=0x7f0501ce;
- /** Tapping a game opens it.\n\nYou
- can instead tap the icons at the left to select or deselect games,
- then act on selected games, e.g. to delete them, using the menu or
- \"Actionbar.\"
- */
- public static final int not_again_newselect=0x7f05027c;
- public static final int not_again_rematch_two_only=0x7f050340;
- /** The selected words will be
- copied to the system clipboard. You can then paste them into any
- app that supports pasting text, e.g. an email app.
- */
- public static final int not_again_studycopy=0x7f050296;
- /** The following strings (all whose names start with
- "not_again") appear in the New user info dialog.
-
- shown when user chooses the gamel_menu_checkmoves menu
- The following strings (all whose names start with
- "not_again") appear in the New user info dialog.
-
- shown when user chooses the gamel_menu_checkmoves menu
-This action checks the relay for
- pending moves/messages for all networked games and flags those
- with pending moves. When you open a flagged game it will connect
- and sync. (In a later release these moves will be downloaded in
- the background.)
- The following strings (all whose names start with
- "not_again") appear in the New user info dialog.
-
- shown when user chooses the gamel_menu_checkmoves menu
- */
- public static final int not_again_sync=0x7f0501bc;
- /** Shown when the user chooses the "board_menu_trade" menu
- Shown when the user chooses the "board_menu_trade" menu
-You are entering tile-exchange
- mode.\n\nTap tiles to add/remove them from the set to be
- exchanged.\n\n
- Shown when the user chooses the "board_menu_trade" menu
- */
- public static final int not_again_trading=0x7f0501bd;
- /** Use the buttons to
- commit your turn or exit exchange mode.
- */
- public static final int not_again_trading_buttons=0x7f0501be;
- /** Use the menu or action bar
- to commit your turn or exit exchange mode.
- */
- public static final int not_again_trading_menu=0x7f0501bf;
- /** Shown when the board screen is visible and it's just become
- another players turn. The idea is to give a hint about how to
- find out about recent moves.
- Shown when the board screen is visible and it's just become
- another players turn. The idea is to give a hint about how to
- find out about recent moves.
-The player whose turn it is
- is drawn large in the scoreboard.\n\nHold your finger on a name in
- the scoreboard to get details about that player\'s most recent
- move.
- Shown when the board screen is visible and it's just become
- another players turn. The idea is to give a hint about how to
- find out about recent moves.
- */
- public static final int not_again_turnchanged=0x7f0501cd;
- /** Shown when you tap the undo/redo button on the toolbar of the
- main Board screen
- Shown when you tap the zoom (+/-) button on the toolbar of
- the main Board screen
-This button toggles the board
- between zoomed and regular size. Drag it when it is zoomed to
- see parts that are hidden.
- Shown when you tap the undo/redo button on the toolbar of the
- main Board screen
-This button undos or redoes the
- current turn.
- Shown when you tap the zoom (+/-) button on the toolbar of
- the main Board screen
- Shown when you tap the undo/redo button on the toolbar of the
- main Board screen
- */
- public static final int not_again_undo=0x7f0501c4;
- /** Shown in the Game configure screen when the game_locked
- checkbox is checked and you uncheck it.
- Shown in the Game configure screen when the game_locked
- checkbox is checked and you uncheck it.
-This game is in play. Some
- settings, e.g. the number of players, cannot be changed without
- restarting it. When you leave this page you will have a chance
- to discard changes to avoid a restart.
- Shown in the Game configure screen when the game_locked
- checkbox is checked and you uncheck it.
- */
- public static final int not_again_unlock=0x7f0501c8;
- /** Shown when you tap the values button on the toolbar of the
- main Board screen. This is intended to allow players to
- remind themselves how much played tiles are worth while
- planning a move.
- Shown when you tap the values button on the toolbar of the
- main Board screen. This is intended to allow players to
- remind themselves how much played tiles are worth while
- planning a move.
-This button changes whether the
- board shows letters on placed tiles or their point values.
- Use it to remind yourself what a tile is worth.
- Shown when you tap the values button on the toolbar of the
- main Board screen. This is intended to allow players to
- remind themselves how much played tiles are worth while
- planning a move.
- */
- public static final int not_again_values=0x7f0501c6;
- /** (None)
- */
- public static final int note_none=0x7f0502c7;
- public static final int notify_chat_body_fmt=0x7f0501ab;
- public static final int notify_chat_title_fmt=0x7f0501aa;
- /** This text is displayed as the "summary" for both of the
- notify choices above, as extra information. (There could be
- different strings if it makes more sense in your language.)
-
- This text is displayed as the "summary" for both of the
- notify choices above, as extra information. (There could be
- different strings if it makes more sense in your language.)
-
-When opponent moves arrive
- This text is displayed as the "summary" for both of the
- notify choices above, as extra information. (There could be
- different strings if it makes more sense in your language.)
-
- */
- public static final int notify_other_summary=0x7f05016f;
- /** When one or more new moves is found, should I play a
- notification sound
- When one or more new moves is found, should I play a
- notification sound
-Play sound
- When one or more new moves is found, should I play a
- notification sound
- */
- public static final int notify_sound=0x7f05016d;
- /** When a move is fetched from the relay a Notification is
- posted. These are its title, which appears in the top bar of the
- device, and the body that appears when you pull the notifications
- down.
- When a move is fetched from the relay a Notification is
- posted. These are its title, which appears in the top bar of the
- device, and the body that appears when you pull the notifications
- down.
-Move in game %1$s
- */
- public static final int notify_title_fmt=0x7f0501a8;
- public static final int notify_title_turn_fmt=0x7f0501a9;
- /** When one or more new moves is found, should I vibrate the
- device
- When one or more new moves is found, should I vibrate the
- device
-Vibrate
- When one or more new moves is found, should I vibrate the
- device
- */
- public static final int notify_vibrate=0x7f05016e;
- /** XLATE-ME
-Number on this device
- */
- public static final int nplayers_prompt=0x7f0502e1;
- public static final int p2p_invite_title=0x7f05020f;
- /** text of label identifying the field where human players can
- enter an option password. The label and field disappear when
- the robot player checkbox is checked because it makes no
- sense for a robot to have a password. In fact, passwords
- only make sense where there's more than one local human
- player on a device, so they are infrequently used in network
- games as well.
- text of label identifying the field where human players can
- enter an option password. The label and field disappear when
- the robot player checkbox is checked because it makes no
- sense for a robot to have a password. In fact, passwords
- only make sense where there's more than one local human
- player on a device, so they are infrequently used in network
- games as well.
-Password
- text of label identifying the field where human players can
- enter an option password. The label and field disappear when
- the robot player checkbox is checked because it makes no
- sense for a robot to have a password. In fact, passwords
- only make sense where there's more than one local human
- player on a device, so they are infrequently used in network
- games as well.
- */
- public static final int password_label=0x7f0500e0;
- /** You have NFC enabled. That
- means that any time a board that\'s missing a player is open, you
- can tap a nearby person\'s device to invite him/her to
- play – if he/she is also using NFC.
-\u0020pct.
- */
- public static final int pct_suffix=0x7f050288;
- /** If this preference is checked, tapping on the scoreboard
- entry for any player reveals that player's tiles and any
- pending move (after asking for his password if one is set.)
- This feature, which is disabled by default, is meant for the
- case where serveral human players are sharing a device: it
- might make sense for one to be able to study the board even
- though it's not his turn e.g. while the player whose turn it
- is is temporarily unable to play.
- if this preference is checked, the hardware volume keys will
- work to zoom the board in and out (and will not control
- volume) This only applies when the Board screen is
- frontmost.
-Volume keys zoom
- explanation of the above
-Zoom board using volume keys
- If this preference is checked, tapping on the scoreboard
- entry for any player reveals that player's tiles and any
- pending move (after asking for his password if one is set.)
- This feature, which is disabled by default, is meant for the
- case where serveral human players are sharing a device: it
- might make sense for one to be able to study the board even
- though it's not his turn e.g. while the player whose turn it
- is is temporarily unable to play.
-View tiles out-of-turn
- if this preference is checked, the hardware volume keys will
- work to zoom the board in and out (and will not control
- volume) This only applies when the Board screen is
- frontmost.
- explanation of the above
- If this preference is checked, tapping on the scoreboard
- entry for any player reveals that player's tiles and any
- pending move (after asking for his password if one is set.)
- This feature, which is disabled by default, is meant for the
- case where serveral human players are sharing a device: it
- might make sense for one to be able to study the board even
- though it's not his turn e.g. while the player whose turn it
- is is temporarily unable to play.
- */
- public static final int peek_other=0x7f05015b;
- /** explanation of the above
- explanation of the above
-Tapping on scoreboard name shows
- that player\'s tiles
- explanation of the above
- */
- public static final int peek_other_summary=0x7f05015c;
- public static final int perms_rationale_title=0x7f050366;
- /**
-
-Connected number[s]:
-
- */
- public static final int phone_label=0x7f050222;
- public static final int phone_lookup_rationale=0x7f05035c;
- /** Case where SMS is the only way the game can communicate
- */
- public static final int phone_lookup_rationale_drop=0x7f05035d;
- /** Case where SMS is NOT the only way the game can communicate
- */
- public static final int phone_lookup_rationale_others=0x7f05035e;
- public static final int phone_state_rationale=0x7f05035b;
- /** Don't warn, but simply force to skip turn (give 0 points)
- when user attempts to play word not in the wordlist.
- Don't warn, but simply force to skip turn (give 0 points)
- when user attempts to play word not in the wordlist.
-Disallow phonies
- Don't warn, but simply force to skip turn (give 0 points)
- when user attempts to play word not in the wordlist.
- */
- public static final int phonies_disallow=0x7f0500d1;
- /** These are the three choices in the popup above whose text is
- phonies_spinner_prompt
- Don't care if words played are in the wordlist or not
- explanation of the above
- If this preference is checked, tiles in the rack will be
- re-ordered alphabetically whenever tiles are added,
- i.e. after ever move.
- If you click on the Play button without having entered a room
- name you get an alert with this error message.
- This button takes you to the normal Game Configure screen
- This is the "hint" printed in light text in the empty player
- name field
- These four strings are displayed as step-by-step
- instructions
- ############################################################
- # :Screens:
- # RelayGameActivity screen
- #
- # This screen is a simple alternative to the Game Configure
- # screen. You'll get it when you choose the list_item_config
- # on certain unconfigured simple relay games (currently simple
- # means they have 2 players. These days about the only way to
- # get this screen is to create a relay game manually and to
- # abort after making the room name empty. That is, this is
- # left over from an older way of helping people connect, from
- # before invitations.
-
- # The dialog has a list of instructions, two text fields for
- # room name and local player name, and two buttons.
- ############################################################
-
- This is the heading above the list of steps. The default
- language is substituted for %1$s.
-
- ############################################################
- # :Menus:
- # Chat messages screen menu
- ############################################################
-
- This is the only menu item in the chat screen. Press it and
- all the chat messages are erased. There is no effect on
- other devices in the game: no "clear chat" message is
- transmitted.
- Text on the button that causes the contents of the
- message-composition field to be sent.
- Prefix for remote messages
- Prefix for local messages
- ############################################################
- # :Screens:
- # Chat screen
- #
- # Shown when the chat button is pressed from the Board screen
- # or when a chat message (as opposed to a move message) comes
- # in from the relay. It displays a history of messages with
- # slightly different colored backgrounds and with prefixes to
- # indicate whether they are local or remote in origin.
- ############################################################
-
- title of the chat screen. The name of the current game is
- substituted for %1$s.
- Text of dialog asking user to confirm a move that exchanges
- tiles (instead of forming a new word to earn points)
- When I've created the invitation, in text or html, I ask
- Android to launch an app that can send it, typically an email
- or messaging app. Android then asks the user to choose which
- of the installed apps that can process the request he'd like
- to have launched. This string is passed to Android and used
- as the title of the dialog that presents that choice.
- This is the body of the text version of the invitation. A URL
- is created with parameters describing the game and
- substituted for "%1$s".
- This is the body of the html version of the invitation. A URL
- is created with parameters describing the game and
- substituted for "%1$s". (The funky \u003c and friends are
- encodings for the greater-than and less-than symbols which
- are not legal in xml strings.)
- This is the subject line of the email/text sent to invite
- someone to join a game.
- When an invitation is sent, the user gets to choose between
- plaintext and html formatting. These two strings are shown in the
- two buttons in the dialog.
- The invitation process begins with this query. The choice is
- between html and plaintext formatting but I also provide some
- explanation/guidance.
- EXPLAIN ME
- EXPLAIN ME
- section separator (white-on-gray bar) for third section:
- bluetooth games
- Text of first of two buttons for new networked games. Tap
- this and a game will be created, but you probably won't see
- it immediately because an email or messaging app will be
- launched to send your invitation.
- This is the second of two descriptions on this screen. It
- explains what networked games are and describes the two
- buttons used to create them.
- section separator (white-on-gray bar) for second section:
- networked games
- Text of first of two buttons for new standalone games. Tap
- this and a new game will be created and opened. If the first
- player is a robot it will immediately take its turn.
- This is one of two descriptions on this screen. It explains
- what standalone games are and describes the two buttons used
- to create them. The name of the language of the default
- wordlist is substituted in for %1$s.
- ############################################################
- # :Screens:
- # New game screen
- #
- # This comes up when you tap the "new game" button on the
- # main screen or the new game menuitem in the main screen's
- # menu. It has descriptions and buttons for creating the two
- # types of supported games, standalone and networked.
- ############################################################
-
- section separator (white-on-gray bar) for first section:
- standalone games
- This text is displayed as the "summary" for both of the
- notify choices above, as extra information. (There could be
- different strings if it makes more sense in your language.)
-
- When one or more new moves is found, should I vibrate the
- device
- When one or more new moves is found, should I play a
- notification sound
- These are the possible values for the connect_frequency
- setting presented as a drop-down list.
-
- ############################################################
- # :Screens:
- # Network game settings preference subscreen (within
- # Preferences screen)
- ############################################################
-
- When there are networked games connecting using the relay,
- Crosswords wakes up periodically to check if there are any
- new moves available and fetches them. This controls how
- frequently that check is done.
- explanation of the above
- explanation of the above
- If this preference is checked the "crosshairs" (vertical and
- horzontal lines through the cell your finger is on that help
- you tell where the app thinks you're actually tapping) will
- not be shown. Some users have complained that this feature
- is distracting, presumably because they're using tablets with
- large enough screens that they always know where they're
- tapping.
- explanation of the above
- If this preference is checked, tapping on the scoreboard
- entry for any player reveals that player's tiles and any
- pending move (after asking for his password if one is set.)
- This feature, which is disabled by default, is meant for the
- case where serveral human players are sharing a device: it
- might make sense for one to be able to study the board even
- though it's not his turn e.g. while the player whose turn it
- is is temporarily unable to play.
- These are the three choices in the popup above whose text is
- phonies_spinner_prompt
- Don't care if words played are in the wordlist or not
-Ignore phonies
- These are the three choices in the popup above whose text is
- phonies_spinner_prompt
- Don't care if words played are in the wordlist or not
- */
- public static final int phonies_ignore=0x7f0500cf;
- /** title of popup used to determine how words are handled that
- are not in the wordlist used for the game (or player if using
- different wordlists per player)
- title of popup used to determine how words are handled that
- are not in the wordlist used for the game (or player if using
- different wordlists per player)
-How to handle \"phonies\"
- (words not in wordlist)
- title of popup used to determine how words are handled that
- are not in the wordlist used for the game (or player if using
- different wordlists per player)
- */
- public static final int phonies_spinner_prompt=0x7f0500ce;
- /** warn player when word played is not in the wordlist, but
- allow him to play it.
- warn player when word played is not in the wordlist, but
- allow him to play it.
-Warn if phonies
- warn player when word played is not in the wordlist, but
- allow him to play it.
- */
- public static final int phonies_warn=0x7f0500d0;
- /**
-
-Pick tiles face-up
-
- */
- public static final int pick_faceup=0x7f0501ea;
- /**
-
-Look up %1$s at
-
- */
- public static final int pick_url_title_fmt=0x7f0501e0;
- /** Text of button at bottom. Press it and you exit this
- configure screen and open the game into the Board screen
- Text of button at bottom. Press it and you exit this
- configure screen and open the game into the Board screen
-Play game
- Text of button at bottom. Press it and you exit this
- configure screen and open the game into the Board screen
- */
- public static final int play=0x7f0500d6;
- /**
- ############################################################
- # :Dialogs:
- # Player edit dialog
- #
- # This comes up when you tap on a player within the Game
- # config screen
- ############################################################
-
- dialog title
- Text of "toast" shown when a game is notified by the relay
- that all expected players have registered. At this point
- play can begin.
- Text of "toast" (mini window briefly displayed) shown when a
- game first connects to the relay. The three substitutions
- are the device's order within the game (e.g. 2), the name of
- the room, and how many additional players have not yet
- registered with the relay in this game. This should be seen
- only once per game.
- Short for "points", this is shown at the right end of the
- tray in place of the first tile placed along with the points
- the current move would earn if committed.
- Most users create games with only two players, which is the
- default, but Crosswords supports up to four. When I'm using
- the above string to encourage the opener of a game missing
- players to invite, IF the number of missing players is
- greater than one this text is appended to the above.
- displayed when you long-tap a scoreboard entry and there's no
- most recent score to show
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Triple-word
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Triple-letter
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Double-word
- Bonus value hint that's displayed in gray text in the colored
- bonus square. Double-letter
-
- ############################################################
- # :Screens:
- # Board screen
- #
- #
- # (an open game, with the 15x15 grid of # squares, letters
- # played etc., is displayed here)
- ############################################################
-
- Buttons shown at bottom when board is in exchange mode,
- i.e. after user has picked board_menu_trade menu item
-
- ############################################################
- # :Dialogs:
- # Player edit dialog
- #
- # This comes up when you tap on a player within the Game
- # config screen
- ############################################################
-
- dialog title
-Edit player
-
- ############################################################
- # :Dialogs:
- # Player edit dialog
- #
- # This comes up when you tap on a player within the Game
- # config screen
- ############################################################
-
- dialog title
- */
- public static final int player_edit_title=0x7f0500da;
- /** used to create default player names. Number between 1 and 4
- is substituted
- When a move is fetched from the relay a Notification is
- posted. These are its title, which appears in the top bar of the
- device, and the body that appears when you pull the notifications
- down.
- used to create default player names. Number between 1 and 4
- is substituted
- used to create default player names. Number between 1 and 4
- is substituted
-Player %1$d
- used to create default player names. Number between 1 and 4
- is substituted
- */
- public static final int player_fmt=0x7f0501a7;
- /** text of lable identifying the field in which player's name is
- set/displayed
- Shown in the main screen when you launch Crosswords from an
- invitation (received in email or messaging app, say) and
- there's already a game running that matches that invitation.
- It's to prevent you from opening multiple games and getting
- confused. But some people who play together all the time use
- the same room name over and over so they'll get this warning
- and it's harmless to ignore it.
- Used for a button when informing user that his attempt to
- connect to the relay failed because the room named does not
- exist. (I believe this no longer occurs.)
- text of lable identifying the field in which player's name is
- set/displayed
-Name:
- text of lable identifying the field in which player's name is
- set/displayed
- */
- public static final int player_label=0x7f0500dc;
- /** text for separator above the list of players that's used for
- networked games. The numbers of local and non-local players
- are substituted for %1$d and %2$d.
- text for separator above the list of players that's used for
- networked games. The numbers of local and non-local players
- are substituted for %1$d and %2$d.
-Players (%1$d local, %2$d
- off-device)
- text for separator above the list of players that's used for
- networked games. The numbers of local and non-local players
- are substituted for %1$d and %2$d.
- */
- public static final int players_label_host_fmt=0x7f0500b9;
- /** text for separator above the list of players that's used for
- non-networked games
- text for separator above the list of players that's used for
- non-networked games
-Players (tap to edit)
- text for separator above the list of players that's used for
- non-networked games
- */
- public static final int players_label_standalone=0x7f0500b8;
- public static final int post_dualpane_off_body=0x7f050353;
- public static final int post_dualpane_on_body=0x7f050352;
- public static final int post_dualpane_title=0x7f050351;
- /** Prefs related to in-app localization
- */
- public static final int pref_group_l10n_summary=0x7f05032d;
- /** Localization Stuff
- */
- public static final int pref_group_l10n_title=0x7f05032c;
- /** Prefs related to play via internet/relay
- */
- public static final int pref_group_relay_summary=0x7f05032b;
- /** Relay Stuff
- */
- public static final int pref_group_relay_title=0x7f05032a;
- /** Prefs related to play-via-sms
- */
- public static final int pref_group_sms_summary=0x7f050329;
- /** SMS Stuff
- */
- public static final int pref_group_sms_title=0x7f050328;
- /** Label for the first "human player" name preference
- Label for the first "human player" name preference
-Human player
- */
- public static final int pref_human_name=0x7f050129;
- /** Get intermediate builds
- */
- public static final int pref_item_update_summary=0x7f05032f;
- /** Update between releases
- */
- public static final int pref_item_update_title=0x7f05032e;
- /** Label for the first player color preference
- Label for the first player color preference
-First player
- Label for the first "player name" preference
- */
- public static final int pref_player1_name=0x7f050125;
- /** Label for the second player color preference
- Label for the second player color preference
-Second player
- Label for the second "player name" preference (unused)
- */
- public static final int pref_player2_name=0x7f050126;
- /** Label for the third player color preference
- Label for the third player color preference
-Third player
- Label for the third "player name" preference (unused)
- */
- public static final int pref_player3_name=0x7f050127;
- /** Label for the fourth player color preference
- Label for the fourth player color preference
-Fourth player
- Label for the fourth "player name" preference (unused)
- */
- public static final int pref_player4_name=0x7f050128;
- /**
- ############################################################
- # :Screens:
- # Appearances subscreen of Preferences screen
- ############################################################
-
- title of this sub-preference
-
- ############################################################
- # :Screens:
- # Appearances subscreen of Preferences screen
- ############################################################
-
- title of this sub-preference
-Appearance
-
- ############################################################
- # :Screens:
- # Appearances subscreen of Preferences screen
- ############################################################
-
- title of this sub-preference
- */
- public static final int prefs_appearance=0x7f050136;
- /** clarification of the above
- clarification of the above
-Settings controlling
- appearance
- clarification of the above
- */
- public static final int prefs_appearance_summary=0x7f050137;
- /**
- ############################################################
- # :Screens:
- # Behavior preference subscreen (within Preferences screen)
- ############################################################
-
- title of this sub-preference
-
- ############################################################
- # :Screens:
- # Behavior preference subscreen (within Preferences screen)
- ############################################################
-
- title of this sub-preference
-Behavior
-
- ############################################################
- # :Screens:
- # Behavior preference subscreen (within Preferences screen)
- ############################################################
-
- title of this sub-preference
- */
- public static final int prefs_behavior=0x7f050153;
- /** clarification of the above
- clarification of the above
-Settings controlling app behavior
- clarification of the above
- */
- public static final int prefs_behavior_summary=0x7f050154;
- /**
- ############################################################
- # :Screens:
- # Individual Colors preference subscreen (within Appearances
- # subscreen)
- ############################################################
-
- title of this sub-preference
- clarification of above
- Checkbox that when set prevents showing a title bar in the
- game board window to save space
- List the state of the game, "Game over" or "10 moves made"
- etc.
- List names of opponents (summarized), e.g. "Game 2 (vs Kati)"
- Put the language there, so it reads "Game 2 (English)"
- Put nothing in the summary space, so it just reads "Game 2"
- Preference to control what's listed next to game name in the
- first line of a game summary in the main games-list screen,
- e.g., if the option is "Game Language", "English" in the
- listing "Game 2 (English)"
-
- The following strings beginning with "game_summary_field_" are
- possible values
- clarification of the above
-
- ############################################################
- # :Screens:
- # Appearances subscreen of Preferences screen
- ############################################################
-
- title of this sub-preference
-
- ############################################################
- # :Screens:
- # Individual Colors preference subscreen (within Appearances
- # subscreen)
- ############################################################
-
- title of this sub-preference
-Individual colors
-
- ############################################################
- # :Screens:
- # Individual Colors preference subscreen (within Appearances
- # subscreen)
- ############################################################
-
- title of this sub-preference
- */
- public static final int prefs_colors=0x7f050145;
- /** clarification of the above
- clarification of the above
-Edit colors used on the board
- clarification of the above
- */
- public static final int prefs_colors_summary=0x7f050146;
- /**
- ############################################################
- # :Screens:
- # New-game defaults subscreen of Preferences screen
- ############################################################
-
- title of this sub-preference
-
- ############################################################
- # :Screens:
- # New-game defaults subscreen of Preferences screen
- ############################################################
-
- title of this sub-preference
-New game defaults
-
- ############################################################
- # :Screens:
- # New-game defaults subscreen of Preferences screen
- ############################################################
-
- title of this sub-preference
- */
- public static final int prefs_defaults=0x7f050121;
- /** clarification of the above
- clarification of the above
-Default settings for new
- games
- clarification of the above
- */
- public static final int prefs_defaults_summary=0x7f050122;
- /** sub-preference for dictionaries (soon to be called "word lists")
- sub-preference for dictionaries (soon to be called "word lists")
-Wordlists
- sub-preference for dictionaries (soon to be called "word lists")
- */
- public static final int prefs_dicts=0x7f05012b;
- /** clarification of above
- clarification of above
-Default wordlists
- clarification of above
- */
- public static final int prefs_dicts_summary=0x7f05012c;
- /** sub-preference title for editing default player names.
- There's only enabled now, though.
- sub-preference title for editing default player names.
- There's only enabled now, though.
-Player names
- sub-preference title for editing default player names.
- There's only enabled now, though.
- */
- public static final int prefs_names=0x7f050123;
- /** clarification of the above
- clarification of the above
-Default player names
- clarification of the above
- */
- public static final int prefs_names_summary=0x7f050124;
- /** Used when prev player's name can't be looked up
- Used when prev player's name can't be looked up
-Your opponent
- */
- public static final int prev_player=0x7f0502d2;
- public static final int processing_games=0x7f050349;
- /** Downloading
- */
- public static final int progress_title=0x7f0502c5;
- /**
-
-Words no longer than
-
- */
- public static final int prompt_max_len=0x7f0501f4;
- /**
-
-Words no shorter than
-
- */
- public static final int prompt_min_len=0x7f0501f3;
- /** XLATE-ME
-Relay device port
- */
- public static final int proxy_port=0x7f050310;
- /** Short for "points", this is shown at the right end of the
- tray in place of the first tile placed along with the points
- the current move would earn if committed.
- Short for "points", this is shown at the right end of the
- tray in place of the first tile placed along with the points
- the current move would earn if committed.
- */
- public static final int pts=0x7f0500f0;
- /** If you check the join_room checkbox Crosswords queries the
- relay. This is the text of the progress indicator displayed what
- that's going on. (It's often visible for only a very short
- time.)
- If you check the join_room checkbox Crosswords queries the
- relay. This is the text of the progress indicator displayed what
- that's going on. (It's often visible for only a very short
- time.)
-Fetching public rooms for
- %1$d-player games in %2$s.
- If you check the join_room checkbox Crosswords queries the
- relay. This is the text of the progress indicator displayed what
- that's going on. (It's often visible for only a very short
- time.)
- */
- public static final int public_names_progress_fmt=0x7f0500c3;
- /** Title for generic dialog asking a question, usually in the
- middle of a game, like "do you want to commit this move?"
- Title for generic dialog asking a question, usually in the
- middle of a game, like "do you want to commit this move?"
-A question…
- Title for generic dialog asking a question, usually in the
- middle of a game, like "do you want to commit this move?"
- */
- public static final int query_title=0x7f0501b9;
- public static final int radio_name_cdma=0x7f050320;
- public static final int radio_name_gsm=0x7f05031f;
- /** XLATE-ME
-Don\'t pretend
- */
- public static final int radio_name_real=0x7f05031d;
- /** XLATE-ME
-Tablet/no radio
- */
- public static final int radio_name_tablet=0x7f05031e;
- /**
- ############################################################
- # :Dialogs:
- # Color edit dialog
- #
- # A sub-sub preference, this is displayed each time the user
- # wants to edit a color described by the strings above
- ############################################################
-
- Names of the three colors by which colors can be edited in
- the color preferences dialog
-
- ############################################################
- # :Dialogs:
- # Color edit dialog
- #
- # A sub-sub preference, this is displayed each time the user
- # wants to edit a color described by the strings above
- ############################################################
-
- Names of the three colors by which colors can be edited in
- the color preferences dialog
-Red
-
- ############################################################
- # :Dialogs:
- # Color edit dialog
- #
- # A sub-sub preference, this is displayed each time the user
- # wants to edit a color described by the strings above
- ############################################################
-
- Names of the three colors by which colors can be edited in
- the color preferences dialog
- */
- public static final int red=0x7f050150;
- /** XLATE-ME
-Invite redirect host
- */
- public static final int redir_host=0x7f050302;
- public static final int rel_invite_title=0x7f050347;
- /** Title of dialog used to alert players to relay-related
- problems with the current game.
- the color of text, e.g. "2L", shown on a bonus square on the
- board
- the background color of the area outside the board,
- e.g. between entries in the scoreboard
- Title of dialog used to alert players to relay-related
- problems with the current game.
-Connection problem
- Title of dialog used to alert players to relay-related
- problems with the current game.
- */
- public static final int relay_alert=0x7f0500f2;
- /** Message from relay
- */
- public static final int relay_alert_title=0x7f05027b;
- public static final int relay_behavior=0x7f050161;
- /** explanation of the above
- */
- public static final int relay_behavior_summary=0x7f050162;
- /** XLATE-ME
-Relay host
- */
- public static final int relay_host=0x7f050301;
- public static final int relay_invite_title=0x7f05020e;
- /** XLATE-ME
-Relay game port
- */
- public static final int relay_port=0x7f05030f;
- /** Shown in toast when relaunching after switching dicts
- Shown in toast when relaunching after switching dicts
-Reloading game with %1$s
- Shown in toast when relaunching after switching dicts
- */
- public static final int reload_new_dict_fmt=0x7f05025e;
- /** XLATE-ME
-Issuing rematch invitation. You will
- see this message until it has been accepted.\n\nYou do not need to
- keep this game open while waiting. You will be notified when the
- game is ready to play.
- */
- public static final int rematch_msg=0x7f0502f8;
- public static final int rematch_name_fmt=0x7f0502dc;
- public static final int rematch_sent_toast=0x7f0502f7;
- /** Processing wordlist information…
- */
- public static final int remote_digesting=0x7f0502bf;
- /** Fetching wordlist information from server…
- */
- public static final int remote_empty=0x7f0502be;
- /** checkbox determining of this player is on this device or
- remote. If remote, then the rest of the fields disappear
- (since they will be set by the remote device.)
- checkbox determining of this player is on this device or
- remote. If remote, then the rest of the fields disappear
- (since they will be set by the remote device.)
-Off-device player
- checkbox determining of this player is on this device or
- remote. If remote, then the rest of the fields disappear
- (since they will be set by the remote device.)
- */
- public static final int remote_label=0x7f0500db;
- /** Unable to fetch wordlist information
- from server.
- */
- public static final int remote_no_net=0x7f0502c0;
- /**
-
-Remote device undid a turn.
-
- */
- public static final int remote_undone=0x7f050225;
- public static final int remove_sms=0x7f050361;
- /** Change the name of this group to:
- */
- public static final int rename_group_label=0x7f050272;
- /** text within rename dialog (triggered by selecting
- list_item_rename)
- text within rename dialog (triggered by selecting
- list_item_rename)
- text within rename dialog (triggered by selecting
- list_item_rename)
- */
- public static final int rename_label=0x7f0500a4;
- /** XLATE-ME
-Change the name of this game
- (on this device only) to:
- */
- public static final int rename_label_caveat=0x7f0500a5;
- /** checkbox determining if player is robot/automated or human
- checkbox determining if player is robot/automated or human
-Robot player
- checkbox determining if player is robot/automated or human
- */
- public static final int robot_label=0x7f0500df;
- /** Used to format robot player names in the lists of players
- found in each game listing
- Used to format game name plus some other information as the
- one-line summary for each game in the main screen. The name
- of the game is substituted for %1$s. Something else
- (language, player names, etc), is substituted for %2$s. This
- does not require translation unless the parentheses or
- ordering is wrong for your language.
- Used to format robot player names in the lists of players
- found in each game listing
- */
- public static final int robot_name_fmt=0x7f05008a;
- /** Three possible choices presented in the popup above
- Three possible choices presented in the popup above
-Smart robot
- Three possible choices presented in the popup above
- */
- public static final int robot_smart=0x7f0500cb;
- /** Smarter robot
- */
- public static final int robot_smarter=0x7f0500cc;
- /** Smartest robot
- */
- public static final int robot_smartest=0x7f0500cd;
- /** title of popup used to select how "smart" (how capable) the
- robot player will be.
- title of popup used to select how "smart" (how capable) the
- robot player will be.
-How smart is the robot player?
- title of popup used to select how "smart" (how capable) the
- robot player will be.
- */
- public static final int robot_spinner_prompt=0x7f0500ca;
- /** text of checkbox
- text of checkbox
-Make new room public
- text of checkbox
- */
- public static final int room_public=0x7f0500c1;
- /** title for popup of public rooms found on server
- title for popup of public rooms found on server
-Select public room
- title for popup of public rooms found on server
- */
- public static final int room_public_prompt=0x7f0500c2;
- public static final int seeking_relay=0x7f050333;
- /** Games: %1$d
- */
- public static final int sel_games_fmt=0x7f05027e;
- /** Groups: %1$d
- */
- public static final int sel_groups_fmt=0x7f05027f;
- /** Selected: %1$d
- */
- public static final int sel_items_fmt=0x7f05029a;
- /**
- ############################################################
- # :Dialogs:
- # Wordlists screen dialogs
- ############################################################
-
- Used as the text fo the confirming/querying dialog that goes
- up when the dicts_item_select menuitem is chosen. The
- possible answers are the three button text strings below.
-
- ############################################################
- # :Dialogs:
- # Wordlists screen dialogs
- ############################################################
-
- Used as the text fo the confirming/querying dialog that goes
- up when the dicts_item_select menuitem is chosen. The
- possible answers are the three button text strings below.
- */
- public static final int set_default_message_fmt=0x7f0500ad;
- /** XLATE-ME
-Hide buttons
- */
- public static final int set_pref=0x7f0502ea;
- /** text of separator marking out other-setting area of the dialog
-
- see move_dictf above
- When the dicts_item_move menu is chosen, this text is used in
- the confirmation dialog. The name of the selected wordlist
- is substituted for %1$s. The strings loc_internal and
- loc_internal are substitued for %2$s and %3$s (or vice-versa,
- depending on the current location of the wordlist.)
-
-
- These three strings are the text for three buttons giving
- choices in respose to the dialog launched in response to the
- dicts_item_select menu (see dicts_item_select above.)
-
- ############################################################
- # :Dialogs:
- # Wordlists screen dialogs
- ############################################################
-
- Used as the text fo the confirming/querying dialog that goes
- up when the dicts_item_select menuitem is chosen. The
- possible answers are the three button text strings below.
- Additional text appended to text confirm_delete_dictf in the
- wordlist delete confiration dialog in the case where the
- wordlist to be deleted is NOT the last in its language. The
- name of the language is substituted for %1$s.
- text of confirmation dialog posted when the delete 'X' button
- beside the listing of a wordlist is tapped. The name of the
- wordlist is substituted for %1$s. Sometimes one of the two
- strings below is appended.
- text of separator marking out other-setting area of the dialog
-Other settings
- text of separator marking out other-setting area of the dialog
- */
- public static final int settings_label=0x7f0500c5;
- /** Checkbox that when set makes taps on the board manipulate an
- arrow that then directs where tiles go when tapped in the
- tray.
- Checkbox that when set makes taps on the board manipulate an
- arrow that then directs where tiles go when tapped in the
- tray.
-Show board arrow
- Checkbox that when set makes taps on the board manipulate an
- arrow that then directs where tiles go when tapped in the
- tray.
- */
- public static final int show_arrow=0x7f050141;
- /** clarification of above
- clarification of above
-Tapped rack tiles land on this
- arrow when it is visible
- clarification of above
- */
- public static final int show_arrow_summary=0x7f050142;
- /** Show downloadable
- */
- public static final int show_remote=0x7f0502c3;
- /** Wordlist browser
- */
- public static final int show_wordlist_browser=0x7f05027a;
- /** If this preference is checked, the user will not be asked to
- confirm after selecting the "Turn done" menu (or tapping the
- points display at the right end of the tray)
- If this preference is checked, the user will not be asked to
- confirm after selecting the "Turn done" menu (or tapping the
- points display at the right end of the tray)
-Skip confirming turn
- If this preference is checked, the user will not be asked to
- confirm after selecting the "Turn done" menu (or tapping the
- points display at the right end of the tray)
- */
- public static final int skip_confirm_turn=0x7f050157;
- /** explanation of the above
- explanation of the above
-Do NOT display score
- summary after every human turn
- explanation of the above
- */
- public static final int skip_confirm_turn_summary=0x7f050158;
- /** Delete selected
- */
- public static final int slmenu_clear_sel=0x7f050290;
- /** Copy to clipboard
- */
- public static final int slmenu_copy_sel=0x7f05028f;
- /** Unselect all
- */
- public static final int slmenu_deselect_all=0x7f050299;
- /** Select all
- */
- public static final int slmenu_select_all=0x7f050298;
- /** XLATE-ME
-The version of Crosswords on the
- phone with number \"%1$s\" is incompatible with this one for play
- using SMS. One of you may need to upgrade before you can
- continue.
- */
- public static final int sms_bad_proto_fmt=0x7f050206;
- public static final int sms_invite_rationale=0x7f050359;
- /** Title of phone number picker during invitation to a game via SMS
- Title of phone number picker during invitation to a game via SMS
-SMS Invitation
- */
- public static final int sms_invite_title=0x7f05020d;
- /** Tap the receiving device now
- */
- public static final int sms_ready_text=0x7f050287;
- /** Displayed as a toast
- */
- public static final int sms_send_failed=0x7f050364;
- /** Square rack tiles
- */
- public static final int square_tiles=0x7f050277;
- /** Even if they can be taller
- */
- public static final int square_tiles_summary=0x7f050278;
- /** Used in formatting moves and history
- Used to separate names of players when listing them on one
- line in a game summary. The \u0020 is a space in xml.
- Used, with remote player's name substituted for %1$s, to
- indicate that the player is remote.
- Used in formatting moves and history
-Bonus for using all tiles: 50\n
- Used to separate names of players when listing them on one
- line in a game summary. The \u0020 is a space in xml.
- Used in formatting moves and history
- */
- public static final int str_bonus_all=0x7f050119;
- /** Using the hint feature is cheating by some players, and it
- can be disabled via the hints_allowed preference. I should
- be disabling the buttons in this case, but if I don't and you
- try to get a hint you'll get this message instead.
- Using the hint feature is cheating by some players, and it
- can be disabled via the hints_allowed preference. I should
- be disabling the buttons in this case, but if I don't and you
- try to get a hint you'll get this message instead.
-The hint feature is
- disabled for this game. Enable it for a new game using the
- Settings dialog.
- Using the hint feature is cheating by some players, and it
- can be disabled via the hints_allowed preference. I should
- be disabling the buttons in this case, but if I don't and you
- try to get a hint you'll get this message instead.
- */
- public static final int str_cant_hint_while_disabled=0x7f050199;
- /** Displayed if you try to use the undo menuitem or button and
- there are no tiles on the board (no move has yet been made.)
- [If I'm being clever and disabling those features in this
- case there may be no way to see this.]
- Displayed if you try to use the undo menuitem or button and
- there are no tiles on the board (no move has yet been made.)
- [If I'm being clever and disabling those features in this
- case there may be no way to see this.]
-Tile assignment can\'t be
- undone.
- Displayed if you try to use the undo menuitem or button and
- there are no tiles on the board (no move has yet been made.)
- [If I'm being clever and disabling those features in this
- case there may be no way to see this.]
- */
- public static final int str_cant_undo_tileassign=0x7f050198;
- /** Beginning of the message presented to a user when asking him
- to confirm committing the current turn
- Used in formatting reports of trades (exchanges of tiles).
- Number of tiles traded is substituted for %1$d
- Beginning of the message presented to a user when asking him
- to confirm committing the current turn
-Commit the current move?\n
- Used in formatting exchange move summaries: passed means the
- user skipped his turn, or made a move involving 0 tiles for 0
- points
- formats tiles and score together, and probably doesn't need
- translation unless the colon ':' needs to be replaced
- Used in formatting reports of trades (exchanges of tiles).
- Number of tiles traded is substituted for %d
- Used in formatting history and move reports; means user
- skipped a turn because of an attempted illegal move/play of a
- phony
- Beginning of the message presented to a user when asking him
- to confirm committing the current turn
- */
- public static final int str_commit_confirm=0x7f050116;
- /** Used to format game name plus some other information as the
- one-line summary for each game in the main screen. The name
- of the game is substituted for %1$s. Something else
- (language, player names, etc), is substituted for %2$s. This
- does not require translation unless the parentheses or
- ordering is wrong for your language.
- */
- public static final int str_game_name_fmt=0x7f050089;
- /** Displayed when you try to commit a turn that is illegal
- because there is empty space between some of the tiles
- placed, i.e. they do not form a single word.
- Displayed when you try to commit a turn that is illegal
- because there is empty space between some of the tiles
- placed, i.e. they do not form a single word.
-Empty squares cannot
- separate tiles played.
- Displayed when you try to commit a turn that is illegal
- because there is empty space between some of the tiles
- placed, i.e. they do not form a single word.
- */
- public static final int str_no_empties_in_turn=0x7f050191;
- public static final int str_no_hint_found=0x7f05033f;
- /** Same as above, but used when you try to show tiles belonging
- to a player on another device (a remote player.)
- Same as above, but used when you try to show tiles belonging
- to a player on another device (a remote player.)
-No peeking at remote
- players\' tiles!
- Same as above, but used when you try to show tiles belonging
- to a player on another device (a remote player.)
- */
- public static final int str_no_peek_remote_tiles=0x7f050196;
- /** Displayed when you try to reveal a robot player's tiles,
- either by tapping on its "hidden" rack (marked by "?"
- characters) or by tapping on its scoreboard entry. (The
- ability to reveal another players tiles this way is
- controlled by the peek_other preference and is disabled by
- default.)
- Displayed when you try to reveal a robot player's tiles,
- either by tapping on its "hidden" rack (marked by "?"
- characters) or by tapping on its scoreboard entry. (The
- ability to reveal another players tiles this way is
- controlled by the peek_other preference and is disabled by
- default.)
-No peeking at the robot\'s
- tiles!
- Displayed when you try to reveal a robot player's tiles,
- either by tapping on its "hidden" rack (marked by "?"
- characters) or by tapping on its scoreboard entry. (The
- ability to reveal another players tiles this way is
- controlled by the peek_other preference and is disabled by
- default.)
- */
- public static final int str_no_peek_robot_tiles=0x7f050195;
- /** Used, with remote player's name substituted for %1$s, to
- indicate that the player is remote.
- Used, with remote player's name substituted for %1$s, to
- indicate that the player is remote.
-%1$s (remote)
- Used, with remote player's name substituted for %s, to
- indicate that the player is remote.
- */
- public static final int str_nonlocal_name_fmt=0x7f050117;
- /** Displyed when you try to commit a move and it's not your
- turn.
- Displyed when you try to commit a move and it's not your
- turn.
-You can\'t do that; it\'s not
- your turn!
- Displyed when you try to commit a move and it's not your
- turn.
- */
- public static final int str_not_your_turn=0x7f050194;
- /** Used in formatting game history and move summaries
- Used in formatting game history and move summaries
-pass\n
- */
- public static final int str_pass=0x7f050110;
- /** Used to alert user to loss of turn when a move is made and
- phonies is set to lose turn when word used not in wordlist
-
- Used to alert user to loss of turn when a move is made and
- phonies is set to lose turn when word used not in wordlist
-
-Illegal word in move; turn lost!
- Used to alert user to loss of turn when a move is made and
- phonies is set to lose turn when word used not in wordlist
-
- */
- public static final int str_phony_rejected=0x7f050115;
- /** [#%d] %s: %d
- */
- public static final int str_placer_fmt=0x7f050259;
- /** Shown when using the Game configure screen to configure a
- networked game and you try to make all players local.
- Shown when using the the Game configure screen to configure a
- networked game and you try to make all players local.
-At least one player must
- be marked \"Remote\" for a game started as Host.
- Shown when using the the Game configure screen to configure a
- networked game and you try to make all players local.
- */
- public static final int str_reg_server_sans_remote=0x7f0500d2;
- /** This error message is shown when a remote device tries to
- join a game and is providing more players than that game
- expects. I do not believe it is possible to see this message
- when playing via the relay because the relay is aware of how
- many players are expected and only connects devices where the
- numbers match.
- This error message is shown when a remote device tries to
- join a game and is providing more players than that game
- expects. I do not believe it is possible to see this message
- when playing via the relay because the relay is aware of how
- many players are expected and only connects devices where the
- numbers match.
-Refused attempt to register
- unexpected user[s].
- This error message is shown when a remote device tries to
- join a game and is providing more players than that game
- expects. I do not believe it is possible to see this message
- when playing via the relay because the relay is aware of how
- many players are expected and only connects devices where the
- numbers match.
- */
- public static final int str_reg_unexpected_user=0x7f05019a;
- /** Used in formatting remote player move summaries
- Used in formatting remote player move summaries
-Remote player %1$s made this
- move:\u0020
- Used in formatting remote player move summaries
- */
- public static final int str_remote_moved_fmt=0x7f05010e;
- /** [Resigned] %s: %d
- */
- public static final int str_resigned_fmt=0x7f050258;
- /**
- ############################################################
- # Board info/error dialog messages
- #
- # These strings are used to create dialogs that appear during
- # games while the Board screen is visible
- ############################################################
-
- Notifies user of a normal robot move
-Resend finished; sent %1$d message[s].
-Renvoi fini ; %1$d message[s] envoyé[s].
-
- ############################################################
- # Board info/error dialog messages
- #
- # These strings are used to create dialogs that appear during
- # games while the Board screen is visible
- ############################################################
-
- Notifies user of a normal robot move
-The robot %1$s made this move:\u0020
- */
- public static final int str_robot_moved_fmt=0x7f050108;
- /** Shown when a remote device tries to join a game and wants to
- play in a different language. As with the above, this should
- be impossible when connecting via the relay.
- Shown when a remote device tries to join a game and wants to
- play in a different language. As with the above, this should
- be impossible when connecting via the relay.
-Conflict between Host and
- Guest wordlists; Host wins.
- Shown when a remote device tries to join a game and wants to
- play in a different language. As with the above, this should
- be impossible when connecting via the relay.
- */
- public static final int str_server_dict_wins=0x7f05019b;
- /** Displayed when you try to commit a turn that is illegal
- because tiles played do not touch other tiles already on the
- board (or the middle/star square in the case of the initial
- move.)
- Displayed when you try to commit a turn that is illegal
- because tiles played do not touch other tiles already on the
- board (or the middle/star square in the case of the initial
- move.)
-New pieces must contact
- others already in place (or the middle square on the first
- move)
- Displayed when you try to commit a turn that is illegal
- because tiles played do not touch other tiles already on the
- board (or the middle/star square in the case of the initial
- move.)
- */
- public static final int str_tiles_must_contact=0x7f050193;
- /**
- error messages
-
- Displayed when you try to commit a turn that is illegal
- because the tiles placed are not all in the same row or
- column.
- error messages
- text of dialog shown when the menu item board_menu_undo_last
- is chosen.
- First line in the remaining tiles dialog (reached by tapping
- the number at left end of the scoreboard)
- error messages
-
- error messages
-
- Displayed when you try to commit a turn that is illegal
- because the tiles placed are not all in the same row or
- column.
-All tiles played must be in a
- line.
- error messages
-
- error messages
-
- Displayed when you try to commit a turn that is illegal
- because the tiles placed are not all in the same row or
- column.
- */
- public static final int str_tiles_not_in_line=0x7f050190;
- /** Displayed when you try to begin a trade but there are not
- seven or more tiles in the pool. The rules don't allow
- trading in this case.
- Displayed when you try to begin a trade but there are not
- seven or more tiles in the pool. The rules don't allow
- trading in this case.
-Too few tiles left
- to exchange.
- Displayed when you try to begin a trade but there are not
- seven or more tiles in the pool. The rules don't allow
- trading in this case.
- */
- public static final int str_too_few_tiles_left_to_trade=0x7f050197;
- /** Displayed when you try to commit the first move of the game
- and are playing a single tile. The first move must include
- two or more tiles.
- Displayed when you try to commit the first move of the game
- and are playing a single tile. The first move must include
- two or more tiles.
-Must play two or more
- pieces on the first move.
- Displayed when you try to commit the first move of the game
- and are playing a single tile. The first move must include
- two or more tiles.
- */
- public static final int str_two_tiles_first_move=0x7f050192;
- /** Used in formatting final scores display
- Used in formatting final scores display
-[Winner] %s: %d
- */
- public static final int str_winner_fmt=0x7f050257;
- /** Used in formatting game history (not move summaries since
- information about the current rack is hidden then)
- Used in formatting game history (not move summaries since
- information about the current rack is hidden then)
-Cumulative score: %1$d\n
- Used in formatting game history (not move summaries since
- information about the current rack is hidden then)
- */
- public static final int strd_cumulative_score_fmt=0x7f05010d;
- /** Used in formatting game history and move summaries
- Used in formatting game history and move summaries
-+ %1$d [all remaining tiles]
- Used in formatting game history and move summaries
- */
- public static final int strd_remaining_tiles_add_fmt=0x7f05010a;
- /** I don't know how this is used. :-)
- I don't know how this is used. :-)
- - %1$d [time]
- I don't know how this is used. :-)
- */
- public static final int strd_time_penalty_sub_fmt=0x7f05010f;
- /** Used in formatting moves and history. The total score for
- one turn is substituted for %1$d.
- Used in formatting moves and history. The total score for
- one turn is substituted for %1$d.
-Score for turn: %1$d\n
- Used in formatting moves and history. The total score for
- one turn is substituted for %d.
- */
- public static final int strd_turn_score_fmt=0x7f05011a;
- /** Used in formatting game history and move summaries
- Used in formatting game history and move summaries
-- %1$d [unused tiles]
- Used in formatting game history and move summaries
- */
- public static final int strd_unused_tiles_sub_fmt=0x7f05010b;
- /** Used in formatting game history and move summaries
- Used in formatting game history and move summaries
-move (from %1$s across)\n
- Used in formatting game history and move summaries
- */
- public static final int strs_move_across_fmt=0x7f050111;
- /** Used in formatting game history and move summaries
- Used in formatting game history and move summaries
-move (from %1$s down)\n
- Used in formatting game history and move summaries
- */
- public static final int strs_move_down_fmt=0x7f050112;
- /** Used in formatting game history and move summaries
- Used in formatting remote player move summaries
- Used in formatting game history and move summaries
-New tiles: %1$s
- Used in formatting game history and move summaries
- */
- public static final int strs_new_tiles_fmt=0x7f05010c;
- /** Used in formatting game history and move summaries
- Used in formatting game history and move summaries
-Rack at start: %1$s\n
- Used in formatting game history and move summaries
- */
- public static final int strs_tray_at_start_fmt=0x7f050113;
- /** title for window you get when you select menu with text
- board_menu_game_counts
-string name="str_robot_moved">El robot ha fet aquesta jugada:Robot uskutočnil tento ťah:%1$s counts/values:\n
- returned by util_getUserString
-string name="str_robot_moved">Robot provedl tento tah:O robô fez esta jogada:\u0020Exchanged %1$s for %2$s.
- Used in formatting exchange move summaries
- */
- public static final int strss_traded_for_fmt=0x7f050114;
- /** Your words for:
- */
- public static final int study_langpick=0x7f050293;
- /** You have not yet saved any words
- into a studylist for %1$s.
- */
- public static final int study_no_lang_fmt=0x7f050294;
- /** You have not yet saved any words
- into a studylist.
- */
- public static final int study_no_lists=0x7f050295;
- /** Studylist for %1$s
- */
- public static final int studylist_title_fmt=0x7f050292;
- /** If substituting an existing same-language wordlist by
- choosing button_substdict user gets to choose from a list of
- wordlists. This is the title of that list.
- If substituting an existing same-language wordlist by
- choosing button_substdict user gets to choose from a list of
- wordlists. This is the title of that list.
-Substitute wordlist (wordcount)
- If substituting an existing same-language wordlist by
- choosing button_substdict user gets to choose from a list of
- wordlists. This is the title of that list.
- */
- public static final int subst_dict_title=0x7f0501a4;
- public static final int summary_busy=0x7f050231;
- /**
-
-Game in play
-
- */
- public static final int summary_conn=0x7f050201;
- /**
-
-Game in play with %1$s
-
- */
- public static final int summary_conn_sms_fmt=0x7f050223;
- /** Preference to control what's listed next to game name in the
- first line of a game summary in the main games-list screen,
- e.g., if the option is "Game Language", "English" in the
- listing "Game 2 (English)"
-
- The following strings beginning with "game_summary_field_" are
- possible values
- Preference to control what's listed next to game name in the
- first line of a game summary in the main games-list screen,
- e.g., if the option is "Game Language", "English" in the
- listing "Game 2 (English)"
-
- The following strings beginning with "game_summary_field_" are
- possible values
-Include in game listing
- Preference to control what's listed next to game name in the
- first line of a game summary in the main games-list screen,
- e.g., if the option is "Game Language", "English" in the
- listing "Game 2 (English)"
-
- The following strings beginning with "game_summary_field_" are
- possible values
- */
- public static final int summary_field=0x7f050138;
- /**
-
-Game over\u200C
-
- */
- public static final int summary_gameover=0x7f050200;
- public static final int summary_invites_out=0x7f050090;
- /** The display of each networked game includes one of three
- states it can be in in the process of connecting to the
- relay. These next three strings are used to create those
- three.
- First state: is configured to use a room but has not yet
- contacted the relay and been assigned that room.
- The display of each networked game includes one of three
- states it can be in in the process of connecting to the
- relay. These next three strings are used to create those
- three.
- First state: is configured to use a room but has not yet
- contacted the relay and been assigned that room.
- The display of each networked game includes one of three
- states it can be in in the process of connecting to the
- relay. These next three strings are used to create those
- three.
- First state: is configured to use a room but has not yet
- contacted the relay and been assigned that room.
- */
- public static final int summary_relay_conf_fmt=0x7f05008c;
- /** Third state: enough devices have connected in the room to
- form a complete game. We'll be in this state as long as the
- game exists.
- Third state: enough devices have connected in the room to
- form a complete game. We'll be in this state as long as the
- game exists.
- Third state: enough devices have connected in the room to
- form a complete game. We'll be in this state as long as the
- game exists.
- */
- public static final int summary_relay_conn_fmt=0x7f05008e;
- /** Final state: game is over.
- Final state: game is over.
- Final state: game is over.
- */
- public static final int summary_relay_gameover_fmt=0x7f05008f;
- /** Second state: has been assigned to a room on the relay
- (meaning the network is working) but there are not yet as
- many players as expected: the game is not complete and play
- cannot happen.
- Second state: has been assigned to a room on the relay
- (meaning the network is working) but there are not yet as
- many players as expected: the game is not complete and play
- cannot happen.
- Second state: has been assigned to a room on the relay
- (meaning the network is working) but there are not yet as
- many players as expected: the game is not complete and play
- cannot happen.
- */
- public static final int summary_relay_wait_fmt=0x7f05008d;
- /** XLATE-ME
-(GSM phones only)
- */
- public static final int summary_send_data_sms=0x7f050309;
- /** explanation of the above
- explanation of the above
-Sort racks whenever new tiles
- are added
- explanation of the above
- */
- public static final int summary_sort_tiles=0x7f05015a;
- /** Offer to add to and display lists
- of words to remember
- */
- public static final int summary_studyon=0x7f05028d;
- /** Thumbnail size
- */
- public static final int summary_thumbsize=0x7f050280;
- /**
-
-Unconnected
-
- */
- public static final int summary_wait_guest=0x7f0501ff;
- /**
-
-Waiting for connection[s]
-
-
-
- */
- public static final int summary_wait_host=0x7f0501fe;
- /** Used to indicate that a preference is not enabled, i.e. not
- part of the game and that the user should ignore it.
- Used to indicate that a preference is not enabled, i.e. not
- part of the game and that the user should ignore it.
-Not used yet…
- Used to indicate that a preference is not enabled, i.e. not
- part of the game and that the user should ignore it.
- */
- public static final int tell_unused=0x7f05012a;
- /** Disabled
- */
- public static final int thumb_off=0x7f050281;
- /** color of the tiles' background
- color of the "crosshairs", lines drawn vertically and
- horizontally through the square the user is currently
- touching in order to guide the fat-fingered (most of us) in
- operations that require accurately selecting a single square
- on the board.
- color of the tiles' background
-Tile background
- color of the tiles' background
- */
- public static final int tile_back=0x7f05014c;
- /**
-
-Pick for me
-
- */
- public static final int tilepick_all=0x7f0501e8;
- /**
-
-Undo last\u200C
-
- */
- public static final int tilepick_undo=0x7f0501e7;
- /** title of dialog brought up in response to the
- board_menu_game_left menu. The dialog lists all tiles
- remaining in the pool, i.e. not on the board or in the rack
- of the player whose turn it is.
- title of dialog brought up in response to the
- board_menu_game_left menu. The dialog lists all tiles
- remaining in the pool, i.e. not on the board or in the rack
- of the player whose turn it is.
-Remaining tiles
- title of dialog brought up in response to the
- board_menu_game_left menu. The dialog lists all tiles
- remaining in the pool, i.e. not on the board or in the rack
- of the player whose turn it is.
- */
- public static final int tiles_left_title=0x7f0501b4;
- /** Title of preference in which you select which addressing
- modes network games will use to communicate
- Title of preference in which you select which addressing
- modes network games will use to communicate
-Communicate via
- */
- public static final int title_addrs_pref=0x7f0502d9;
- /**
- ############################################################
- # :Screens:
- # Wordlists screen
- #
- # list of installed wordlists (formerly called dictionaries)
- ############################################################
-
- window title
-
- ############################################################
- # :Screens:
- # Wordlists screen
- #
- # list of installed wordlists (formerly called dictionaries)
- ############################################################
-
- window title
-
- ############################################################
- # :Screens:
- # Wordlists screen
- #
- # list of installed wordlists (formerly called dictionaries)
- ############################################################
-
- window title
- */
- public static final int title_dicts_list=0x7f0500a6;
- /**
- ############################################################
- # :Screens:
- # Game configure screen
- ############################################################
-
- window title (game name substituted for %1$s)
-
- ############################################################
- # :Screens:
- # Game configure screen
- ############################################################
-
- window title (game name substituted for %1$s)
-Settings for %1$s
-
- ############################################################
- # :Screens:
- # Game configure screen
- ############################################################
-
- window title (game name substituted for %s)
- */
- public static final int title_game_config_fmt=0x7f0500b4;
- /** alternate window title used when game is networked
- alternate window title used when game is networked
-%1$s settings (networked)
- alternate window title used when game is networked
- */
- public static final int title_gamenet_config_fmt=0x7f0500b5;
- /** title for popup list of langugages from which user picks
- title for popup list of langugages from which user picks
-Languages (based on installed
- wordlists)
-
- title for popup list of langugages from which user picks
- */
- public static final int title_langs_list=0x7f0500b6;
- /**
-
-Tap to look up
-
- */
- public static final int title_lookup=0x7f0501dc;
- /** Tap to look up or study
- */
- public static final int title_lookup_study=0x7f0501dd;
- /**
- ############################################################
- # :Screens:
- # Preferences screen(s)
- #
- # There are four screens plus one for debugging that isn't
- # translated: New-game defaults, Appearances, Behavior, and
- # Network Game settings
- ############################################################
-
- window title
- text of checkbox at top of dialog allowing to unlock in-play
- game to make changes
- title for popup list of langugages from which user picks
- alternate window title used when game is networked
-
- ############################################################
- # :Screens:
- # Preferences screen(s)
- #
- # There are four screens plus one for debugging that isn't
- # translated: New-game defaults, Appearances, Behavior, and
- # Network Game settings
- ############################################################
-
- window title
-Crosswords Settings
-
- ############################################################
- # :Screens:
- # Preferences screen(s)
- #
- # There are four screens plus one for debugging that isn't
- # translated: New-game defaults, Appearances, Behavior, and
- # Network Game settings
- ############################################################
-
- window title
- */
- public static final int title_prefs=0x7f05011c;
- /** XLATE-ME
-Send SMS as data
- */
- public static final int title_send_data_sms=0x7f050308;
- /** If this preference is checked, tiles in the rack will be
- re-ordered alphabetically whenever tiles are added,
- i.e. after ever move.
- If this preference is checked, tiles in the rack will be
- re-ordered alphabetically whenever tiles are added,
- i.e. after ever move.
-Sort new tiles
- If this preference is checked, tiles in the rack will be
- re-ordered alphabetically whenever tiles are added,
- i.e. after ever move.
- */
- public static final int title_sort_tiles=0x7f050159;
- /** Enable studylists
- */
- public static final int title_studyon=0x7f05028c;
- /** title of dialog allowing user to pick tiles "face up". (This
- feature is not yet supported on Android.)
-
- ###########################################################
- # :Dialogs:
- # About dialog
- #
- # Dialog giving copyright and other basic info about # the app
- ###########################################################
-
- String giving version info, which is substituted in.
- Welcome dialog text
-
- ###########################################################
- # :Dialogs:
- # Welcome dialog
- #
- # Shown the first time a user launches Crosswords (and
- # again only if the preference for default first user
- # name is cleared). Its purpose is to encourage him to
- # enter the name of the most common non-robot player on
- # this device.
- ###########################################################
-
- Welcome dialog title
- Shown when you first pick the list_item_new_from menuitem
- Shown when the board screen is visible and it's just become
- another players turn. The idea is to give a hint about how to
- find out about recent moves.
- This is not currently shown
- Crosswords wordlists, which are
- just compressed lists of words plus tile information, determine
- what language a game is played in and how \"smart\" the robot
- is. You can download different sized wordlists in many
- languages here. Email me at eehouse@eehouse.org for information
- on building and installing your own wordlists.
- Shown the first time the board arrow is drawn on the current
- Board screen. The idea is that you're tapping around
- figuring out how to play and when you tap an empty cell the
- arrow appears. This explains it.
- This is shown in the Board screen when you successfully
- connecting a game to the relay and are the last device in the
- game to do so, i.e. the game is now complete and you should
- expect play to begin.
- This is shown in the Board screen when you successfully
- connecting a game to the relay and are not the first device
- in the game but not the last either. So it will only occur
- for games with more than two devices, which are rare.
- This is shown in the Board screen when you successfully
- connect a game to the relay and are the first device in the
- game to do so.
- Shown in the Game configure screen when the game_locked
- checkbox is checked and you uncheck it.
- 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
- the same thing.
- Shown when you tap the values button on the toolbar of the
- main Board screen. This is intended to allow players to
- remind themselves how much played tiles are worth while
- planning a move.
- Shown when you tap the chat button on the toolbar of the
- main Board screen
- Shown when you tap the undo/redo button on the toolbar of the
- main Board screen
- Shown when you tap the zoom (+/-) button on the toolbar of
- the main Board screen
- Shown when you tap the flip button on the toolbar of the main
- Board screen
- Shown when you tap the juggle button on the toolbar of the
- main Board screen
- Shown when you tap the next hint button on the toolbar of the
- main Board screen
- Currently not used
- The new game you have created has
- two players. Player 1 is a robot; Player 2 is you. Tap the game
- to play; long-tap (hold your finger on the game) to change its
- settings or for other options.
- Shown when you tap the Previous Hint button on the toolbar of
- the main Board screen
- Shown when the user chooses the "board_menu_trade" menu
- The following strings (all whose names start with
- "not_again") appear in the New user info dialog.
-
- shown when user chooses the gamel_menu_checkmoves menu
- Text for button in new-user-info dialog with title just
- above.
-
- ###########################################################
- # :Dialogs:
- # New user info dialog
- #
- # This dialog pops up in places I think new users need an
- # explanation of something. It always has a button allowing
- # the user to say he doesn't need to see it again.
- ###########################################################
-
- Title of New user info dialog
- title of dialog allowing user to pick tiles "face up". (This
- feature is not yet supported on Android.)
-Letter for blank
- title of dialog allowing user to pick tiles "face up". (This
- feature is not yet supported on Android.)
- */
- public static final int title_tile_picker=0x7f0501b3;
- public static final int toast_no_permission=0x7f050367;
- /** Updates are available for one or more
- installed wordlists. Would you like to download the new
- version[s] of %1$s now?
- */
- public static final int update_dicts_fmt=0x7f0502c4;
- /** XLATE-ME
-Use defaults
- */
- public static final int use_defaults=0x7f0502e0;
- /** text of checkbox controlling whether there's a game timer
- text of checkbox. If this checkbox is checked, games created
- for network play will by default have the hint feature
- enabled.
- text of checkbox controlling whether there's a game timer
-Enable game timer
- text of checkbox controlling whether there's a game timer
- */
- public static final int use_timer=0x7f0500c8;
- /** Used to separate names of players when listing them on one
- line in a game summary. The \u0020 is a space in xml.
- Used to separate names of players when listing them on one
- line in a game summary. The \u0020 is a space in xml.
-\u0020vs.\u0020
- */
- public static final int vs_join=0x7f050118;
- /** Button for alert with title above
- */
- public static final int waiting_invite_title=0x7f0502ed;
- public static final int waiting_rematch_title=0x7f0502ee;
- /** XLATE-ME
-Waiting for players
- */
- public static final int waiting_title=0x7f0502ec;
- /** XLATE-ME
-Bluetooth is currently off on this
- device. No moves will be sent via Bluetooth.\n\nYou can enable
- Bluetooth now, or later.
-
- */
- public static final int warn_bt_disabled=0x7f050247;
- /** XLATE-ME
-Every networked game must have at
- least one way of communicating. If you have no default connection
- options every new networked game will have to be configured
- manually.
- */
- public static final int warn_no_comms=0x7f0502f3;
- /**
-
-(Not in contacts)
-
-The number %1$s for %2$s is not
- a \"mobile\" number. Import anyway?
-
-
-
- */
- public static final int warn_nomobile_fmt=0x7f05021a;
- public static final int warn_relay_disabled=0x7f050248;
- public static final int warn_relay_havegames=0x7f05024b;
- public static final int warn_relay_later=0x7f050249;
- public static final int warn_relay_remove=0x7f05024a;
- /**
-
-Play via SMS is currently
- disabled, so no moves will be sent for this game. (If you want to
- enable play via SMS, go to Settings->Network game settings.)
-
-Les parties par SMS sont actuellement
-désactivées, donc aucun coup ne sera envoyé pour cette partie. (Si vous voulez
-activer les parties par SMS, allez dans Paramètres->Paramètres des parties en
-réseau.)
-
- */
- public static final int warn_sms_disabled=0x7f050246;
- /**
-
-Are you certain this number is on an
- account with unlimited texting? Click cancel if you are not.
-
- */
- public static final int warn_unlimited=0x7f050224;
- public static final int wifi_warning=0x7f050337;
- /**
-
-First letters
-
- */
- public static final int word_search_hint=0x7f0501e6;
- /** Add option to every screen menu
- */
- public static final int xlations_enabled_summary=0x7f05029f;
- /** Enable local translating
- */
- public static final int xlations_enabled_title=0x7f05029e;
- /** XLATE-ME
-Fake locale for translation
- */
- public static final int xlations_locale=0x7f050315;
- /** Empty in English, this should contain the name of the
- translator/creator of the strings.xml file for this
- language
- fill this in other than in English
- fill this in other than in English
- Empty in English, this should contain the name of the
- translator/creator of the strings.xml file for this
- language
- fill this in other than in English
- Empty in English, this should contain the name of the
- translator/creator of the strings.xml file for this
- language
- */
- public static final int xlator=0x7f0501d4;
- public static final int xwords_nfc_mime=0x7f05007e;
- }
- public static final class style {
- public static final int about_items=0x7f0a0005;
- public static final int color_edit_text=0x7f0a0003;
- public static final int color_seek_bar=0x7f0a0002;
- public static final int config_separator=0x7f0a0000;
- public static final int evenly_spaced_horizontal=0x7f0a0008;
- public static final int expander_button=0x7f0a0009;
- public static final int expander_label=0x7f0a000a;
- public static final int group_items=0x7f0a0006;
- public static final int new_game_buttons=0x7f0a000c;
- public static final int newgame_connicon=0x7f0a000b;
- public static final int relay_explain=0x7f0a0007;
- public static final int role_config_hint=0x7f0a0001;
- public static final int toolbar_button=0x7f0a0004;
- }
- public static final class xml {
- public static final int xwprefs=0x7f040000;
- }
-}
diff --git a/xwords4/android/XWords4/assets/.gitignore b/xwords4/android/XWords4/assets/.gitignore
deleted file mode 100644
index 67ac80fcf..000000000
--- a/xwords4/android/XWords4/assets/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-gitvers.txt
diff --git a/xwords4/android/XWords4/build.xml b/xwords4/android/XWords4/build.xml
deleted file mode 100644
index f1ce52211..000000000
--- a/xwords4/android/XWords4/build.xml
+++ /dev/null
@@ -1,112 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/xwords4/android/XWords4/build_unchecked.xml b/xwords4/android/XWords4/build_unchecked.xml
deleted file mode 100644
index 071bf90b8..000000000
--- a/xwords4/android/XWords4/build_unchecked.xml
+++ /dev/null
@@ -1,516 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Converting compiled files and external libraries into ${intermediate.dex.file}...
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Running zip align on final apk...
-
-
-
-
-
-
-
-
-
-
-
-
-
- Installing ${out.debug.package} onto default emulator or device...
-
-
-
-
-
-
-
-
-
-
-
-
-
- Creating output directories if needed...
-
-
-
-
-
-
-
-
-
- Generating R.java / Manifest.java from the resources...
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Compiling aidl files into Java classes...
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Packaging resources
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Debug Package: ${out.debug.package}
-
-
-
-
-
-
-
-
-
-
-
-
- No key.store and key.alias properties found in build.properties.
- Please sign ${out.unsigned.package} manually
- and run zipalign from the Android SDK tools.
-
-
-
-
-
-
-
-
- Signing final apk...
-
-
-
-
- Release Package: ${out.release.package}
-
-
-
-
-
-
-
-
-
-
-
-
-
- Unable to run 'ant uninstall', manifest.package property is not defined.
-
-
-
-
-
- Uninstalling ${manifest.package} from the default emulator or device...
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Instrumenting classes from ${out.absolute.dir}/classes...
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Android Ant Build. Available targets:
- help: Displays this help.
- clean: Removes output files created by other targets.
- compile: Compiles project's .java files into .class files.
- debug: Builds the application and signs it with a debug key.
- release: Builds the application. The generated apk file must be
- signed before it is published.
- install: Installs/reinstalls the debug package onto a running
- emulator or device.
- If the application was previously installed, the
- signatures must match.
- uninstall: Uninstalls the application from a running emulator or
- device.
-
-
-
diff --git a/xwords4/android/XWords4/libs/.gitignore b/xwords4/android/XWords4/libs/.gitignore
deleted file mode 100644
index e3f56da7c..000000000
--- a/xwords4/android/XWords4/libs/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/armeabi
-/x86
diff --git a/xwords4/android/XWords4/proguard-project.txt b/xwords4/android/XWords4/proguard-project.txt
deleted file mode 100644
index f2fe1559a..000000000
--- a/xwords4/android/XWords4/proguard-project.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-# To enable ProGuard in your project, edit project.properties
-# to define the proguard.config property as described in that file.
-#
-# Add project specific ProGuard rules here.
-# By default, the flags in this file are appended to flags specified
-# in ${sdk.dir}/tools/proguard/proguard-android.txt
-# You can edit the include path and order by changing the ProGuard
-# include property in project.properties.
-#
-# For more details, see
-# http://developer.android.com/guide/developing/tools/proguard.html
-
-# Add any project specific keep options here:
-
-# If your project uses WebView with JS, uncomment the following
-# and specify the fully qualified class name to the JavaScript interface
-# class:
-#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
-# public *;
-#}
diff --git a/xwords4/android/XWords4/project.properties b/xwords4/android/XWords4/project.properties
deleted file mode 100644
index 28caf312e..000000000
--- a/xwords4/android/XWords4/project.properties
+++ /dev/null
@@ -1,14 +0,0 @@
-# This file is automatically generated by Android Tools.
-# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
-#
-# This file must be checked in Version Control Systems.
-#
-# To customize properties used by the Ant build system edit
-# "ant.properties", and override values to adapt the script to your
-# project structure.
-#
-# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
-# proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
-
-# Project target.
-target=android-23
diff --git a/xwords4/android/XWords4/res/.gitignore b/xwords4/android/XWords4/res/.gitignore
deleted file mode 100644
index 1e3315a64..000000000
--- a/xwords4/android/XWords4/res/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-values-??/strings.xml
diff --git a/xwords4/android/XWords4/res/values/app_name.xml b/xwords4/android/XWords4/res/values/app_name.xml
deleted file mode 100644
index d09ebdb08..000000000
--- a/xwords4/android/XWords4/res/values/app_name.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
- 4.4.115
-
diff --git a/xwords4/android/XWords4/res/values/config.xml b/xwords4/android/XWords4/res/values/config.xml
deleted file mode 100644
index 0388f10a8..000000000
--- a/xwords4/android/XWords4/res/values/config.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
- false
-
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/.gitignore b/xwords4/android/XWords4/src/org/eehouse/android/xw4/.gitignore
deleted file mode 100644
index 7573cf142..000000000
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-/GitVersion.java
-BuildConstants.java
-GCMConsts.java
-nohup.out
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/loc/.gitignore b/xwords4/android/XWords4/src/org/eehouse/android/xw4/loc/.gitignore
deleted file mode 100644
index 3b7051b88..000000000
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/loc/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-LocIDsData.java
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4dbg/.gitignore b/xwords4/android/XWords4/src/org/eehouse/android/xw4dbg/.gitignore
deleted file mode 100644
index c33c29aa8..000000000
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4dbg/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-BuildConstants.java
-Utils.java
diff --git a/xwords4/android/XWords4/src/xw4/assets/.gitignore b/xwords4/android/XWords4/src/xw4/assets/.gitignore
deleted file mode 100644
index 67ac80fcf..000000000
--- a/xwords4/android/XWords4/src/xw4/assets/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-gitvers.txt
diff --git a/xwords4/android/XWords4/src/xw4dbg/assets/.gitignore b/xwords4/android/XWords4/src/xw4dbg/assets/.gitignore
deleted file mode 100644
index 67ac80fcf..000000000
--- a/xwords4/android/XWords4/src/xw4dbg/assets/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-gitvers.txt
diff --git a/xwords4/android/app/build.gradle b/xwords4/android/app/build.gradle
new file mode 100644
index 000000000..7af8a65e8
--- /dev/null
+++ b/xwords4/android/app/build.gradle
@@ -0,0 +1,290 @@
+import groovy.swing.SwingBuilder
+
+def INITIAL_CLIENT_VERS = 8
+def VERSION_CODE_BASE = 111
+def VERSION_NAME = '4.4.115'
+def VARIANTS = [ "xw4", "xw4dbg" ]
+def BUILDS = [ "Debug", "Release" ]
+
+apply plugin: 'com.android.application'
+
+android {
+ buildToolsVersion '23.0.2'
+ defaultConfig {
+ minSdkVersion 7
+ targetSdkVersion 23
+ versionCode VERSION_CODE_BASE
+ versionName VERSION_NAME
+ }
+
+ // Rename all output artifacts to include version information
+ applicationVariants.all { variant ->
+ // renameArtifact(variant)
+ // variant.buildConfigField "String", "FIELD_NAME", "\"my String\""
+ def GCM_SENDER_ID = System.getenv("GCM_SENDER_ID")
+ variant.buildConfigField "String", "SENDER_ID", "\"$GCM_SENDER_ID\""
+ def CRITTERCISM_APP_ID = System.getenv("CRITTERCISM_APP_ID")
+ variant.buildConfigField "String", "CRITTERCISM_APP_ID", "\"$CRITTERCISM_APP_ID\""
+
+ def gitHash = "../scripts/gitversion.sh".execute().text.trim()
+ resValue "string", "git_rev", "$gitHash"
+ variant.buildConfigField "String", "GIT_REV", "\"$gitHash\""
+
+ // def stamp = Long.valueOf('date +\'%s\''.execute().text.trim());
+ def stamp = Math.round(System.currentTimeMillis() / 1000)
+ variant.buildConfigField "long", "BUILD_STAMP", "$stamp"
+
+ // FIX ME
+ variant.buildConfigField "String", "STRINGS_HASH", "\"00000\""
+ variant.buildConfigField "boolean", "WIDIR_ENABLED", "false"
+
+ def senderID = System.getenv("GCM_SENDER_ID")
+ variant.buildConfigField "String", "GCM_SENDER_ID", "\"$senderID\""
+
+ variant.buildConfigField "short", "CLIENT_VERS_RELAY", "$INITIAL_CLIENT_VERS"
+ }
+
+ flavorDimensions "variant"//, "abi"
+ productFlavors {
+ xw4 {
+ dimension "variant"
+ applicationId "org.eehouse.android.${VARIANTS[0]}"
+ manifestPlaceholders = [ APP_ID: applicationId ]
+ resValue "string", "app_name", "CrossWords"
+ resValue "string", "nbs_port", "3344"
+ resValue "string", "invite_prefix", "/and/"
+ }
+ xw4dbg {
+ dimension "variant"
+ applicationId "org.eehouse.android.${VARIANTS[1]}"
+ manifestPlaceholders = [ APP_ID: applicationId ]
+ resValue "string", "app_name", "CrossDbg"
+ resValue "string", "nbs_port", "3345"
+ resValue "string", "invite_prefix", "/anddbg/"
+ }
+
+ // WARNING: "all" breaks things. Seems to be a keyword. Need
+ // to figure out how to express include-all-abis
+ // all {
+ // dimension "abi"
+ // versionCode 0 + VERSION_CODE_BASE
+ // }
+ // armeabi {
+ // dimension "abi"
+ // versionCode 1 + VERSION_CODE_BASE
+ // }
+ // x86 {
+ // dimension "abi"
+ // versionCode 2 + VERSION_CODE_BASE
+ // }
+ // armeabiv7a {
+ // dimension "abi"
+ // versionCode 3 + VERSION_CODE_BASE
+ // }
+ }
+
+ signingConfigs {
+ release {
+ storeFile file(System.getenv("HOME") + "/.keystore")
+ keyAlias "mykey"
+
+ // These two lines make gradle believe that the signingConfigs
+ // section is complete. Without them, tasks like installRelease
+ // will not be available!
+ storePassword "notReal"
+ keyPassword "notReal"
+ }
+ }
+
+ buildTypes {
+ release {
+ signingConfig signingConfigs.release
+ debuggable false
+ minifyEnabled false // PENDING
+ proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
+ }
+ debug {
+ debuggable true
+ // This doesn't work on marshmallow: duplicate permission error
+ // applicationIdSuffix ".debug"
+ }
+ }
+
+ sourceSets {
+ // Use symlinks instead of setting non-conventional
+ // directories here. AS doesn't respect what's set here: it'll
+ // compile, but post-install app launch and source-level
+ // debugging don't work.
+ xw4 {
+ release {
+ jniLibs.srcDir "../libs-release-xw4"
+ }
+ debug {
+ jniLibs.srcDir "../libs-debug-xw4"
+ }
+ }
+ xw4dbg {
+ release {
+ jniLibs.srcDir "../libs-release-xw4dbg"
+ }
+ debug {
+ jniLibs.srcDir "../libs-debug-xw4dbg"
+ }
+ }
+ }
+
+ lintOptions {
+ abortOnError false
+ }
+
+ def gitrev = "git describe --tags".execute().text.trim()
+ applicationVariants.all { variant ->
+ variant.outputs.each { output ->
+ output.outputFile =
+ new File(output.outputFile.parent,
+ output.outputFile.name.replace(".apk", "-${gitrev}.apk"))
+ }
+ }
+}
+
+dependencies {
+ // Look into replacing this with a fetch too PENDING
+ compile files('../libs/gcm.jar')
+
+ // Should probably choose a version rather than risk having it
+ // upgraded on me. PENDING
+ compile 'com.android.support:support-v4:+'
+ // compile files('../libs/android-support-v13.jar')
+
+ xw4dbgCompile 'com.crittercism:crittercism-android-agent:+'
+}
+
+task mkImages(type: Exec) {
+ workingDir '../'
+ commandLine './scripts/mkimages.sh'
+}
+
+task copyStrings(type: Exec) {
+ workingDir '../'
+ commandLine './scripts/copy-strings.py'
+}
+
+task ndkSetup(type: Exec) {
+ workingDir '../'
+ commandLine "./scripts/ndksetup.sh", "--with-clang"
+}
+
+task myPreBuild(dependsOn: ['ndkSetup', 'mkImages', 'copyStrings', 'mkXml']) {
+}
+preBuild.dependsOn myPreBuild
+
+task mkXml(type: Exec) {
+ workingDir '../'
+ commandLine './scripts/mk_xml.py', '-o',
+ "app/src/main/java/org/eehouse/android/xw4/loc/LocIDsData.java",
+ '-t', "debug"
+}
+
+afterEvaluate {
+ VARIANTS.each { VARIANT ->
+ String variantCaps = VARIANT.capitalize()
+ BUILDS.each { BUILD ->
+ String nameLC = BUILD.toLowerCase()
+ String lib = "libs-${nameLC}-${VARIANT}"
+ String ndkBuildTask = "ndkBuild${variantCaps}${BUILD}"
+ task "$ndkBuildTask"(type: Exec) {
+ workingDir '../'
+ commandLine './scripts/ndkbuild.sh', '-j3',
+ "BUILD_TARGET=${nameLC}", "INITIAL_CLIENT_VERS=$INITIAL_CLIENT_VERS",
+ "VARIANT=$VARIANT", "NDK_LIBS_OUT=${lib}", "NDK_OUT=./obj-${nameLC}-${VARIANT}"
+ }
+
+ String compileTask = "compile${variantCaps}${BUILD}Ndk"
+ tasks.getByName(compileTask).dependsOn ndkBuildTask
+ }
+ }
+
+ String copyStringsTask = "copyStringsXw4Dbg"
+ task "$copyStringsTask"(type: Exec) {
+ workingDir './'
+ environment.put('APPNAME', 'CrossDbg')
+ commandLine 'make', '-f', '../scripts/Variant.mk',
+ "src/xw4dbg/res/values/strings.xml"
+ }
+ preBuild.dependsOn copyStringsTask
+}
+
+clean.dependsOn 'cleanNDK'
+task cleanNDK(type: Exec) {
+ ArrayList lst = new ArrayList(["rm", "-rf"]);
+ BUILDS.each { BUILD ->
+ String buildLC = BUILD.toLowerCase()
+ VARIANTS.each { VARIANT ->
+ lst.add("libs-${buildLC}-${VARIANT}")
+ lst.add("obj-${buildLC}-${VARIANT}")
+ }
+ }
+
+ workingDir '../'
+ commandLine lst
+}
+
+gradle.taskGraph.whenReady { taskGraph ->
+ if ( taskGraph.hasTask(':app:validateReleaseSigning') ) {
+ def pass
+ if (System.getenv("ANDROID_RELEASE_PASSWORD")) {
+ pass = System.getenv("ANDROID_RELEASE_PASSWORD")
+ } else if ( null != System.console() ) {
+ pass = System.console().readPassword("\nPlease enter key passphrase: ")
+ pass = new String(pass)
+ } else {
+ new SwingBuilder().edt {
+ dialog(modal: true, // Otherwise the build will continue running before you closed the dialog
+ title: 'Enter password', // Dialog title
+ alwaysOnTop: true, // pretty much what the name says
+ resizable: false, // Don't allow the user to resize the dialog
+ locationRelativeTo: null, // Place dialog in center of the screen
+ pack: true, // We need to pack the dialog (so it will take the size of it's children
+ show: true // Let's show it
+ ) {
+ vbox { // Put everything below each other
+ label(text: "Please enter key passphrase:")
+ input = passwordField();
+ button(defaultButton: true, text: 'OK', actionPerformed: {
+ pass = new String(input.password); // Set pass variable to value of input field
+ // println "myPass: $myPass"
+
+ dispose(); // Close dialog
+ })
+ }
+ }
+ }
+ }
+
+ android.signingConfigs.release.storePassword = pass
+ android.signingConfigs.release.keyPassword = pass
+ }
+}
+
+// def getVersionName() {
+// try {
+// def stdout = new ByteArrayOutputStream()
+// exec {
+// commandLine 'git', 'describe', '--dirty'
+// standardOutput = stdout
+// }
+// return stdout.toString().trim()
+// }
+// catch (ignored) {
+// return null;
+// }
+// }
+
+// def renameArtifact(variant) {
+// variant.outputs.each { output ->
+// def name = String.format( "XWords4-%s-%s.apk", variant.name,
+// getVersionName() )
+// output.outputFile = new File( (String)output.outputFile.parent,
+// (String)name )
+// }
+// }
diff --git a/xwords4/android/XWords4/AndroidManifest.xml b/xwords4/android/app/src/main/AndroidManifest.xml
similarity index 97%
rename from xwords4/android/XWords4/AndroidManifest.xml
rename to xwords4/android/app/src/main/AndroidManifest.xml
index 8639077ce..5f67e9bde 100644
--- a/xwords4/android/XWords4/AndroidManifest.xml
+++ b/xwords4/android/app/src/main/AndroidManifest.xml
@@ -8,7 +8,6 @@
-
-
+
@@ -236,7 +235,7 @@
-
+
diff --git a/xwords4/android/XWords4/assets/BasEnglish2to8.xwd b/xwords4/android/app/src/main/assets/BasEnglish2to8.xwd
similarity index 100%
rename from xwords4/android/XWords4/assets/BasEnglish2to8.xwd
rename to xwords4/android/app/src/main/assets/BasEnglish2to8.xwd
diff --git a/xwords4/android/XWords4/assets/CollegeEng_2to8.xwd b/xwords4/android/app/src/main/assets/CollegeEng_2to8.xwd
similarity index 100%
rename from xwords4/android/XWords4/assets/CollegeEng_2to8.xwd
rename to xwords4/android/app/src/main/assets/CollegeEng_2to8.xwd
diff --git a/xwords4/android/XWords4/assets/Top5000.xwd b/xwords4/android/app/src/main/assets/Top5000.xwd
similarity index 100%
rename from xwords4/android/XWords4/assets/Top5000.xwd
rename to xwords4/android/app/src/main/assets/Top5000.xwd
diff --git a/xwords4/android/XWords4/assets/changes.html b/xwords4/android/app/src/main/assets/changes.html
similarity index 93%
rename from xwords4/android/XWords4/assets/changes.html
rename to xwords4/android/app/src/main/assets/changes.html
index d1936d199..23ff3c29d 100644
--- a/xwords4/android/XWords4/assets/changes.html
+++ b/xwords4/android/app/src/main/assets/changes.html
@@ -30,6 +30,8 @@
Request permissions when they're needed, e.g. ask to send
SMS messages when a game is being configured to communicate
using SMS
+
Change order of games to put oldest in which it's your turn
+ at the top
New two-color icon for notifications (required by the newer
Android that supports just-in-time permissions)
Use less battery by being smarter about how often to check
@@ -37,6 +39,7 @@
installing from F-Droid.)
Stop mis-identifying tablets as data-SMS-capable (only GSM
phones are)
+
Shorten default rematch game name
Allow board "squares" to be wider than tall if it
fills the screen better
Improvements in localization for French, Catalan, Dutch,
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ABUtils.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ABUtils.java
similarity index 97%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ABUtils.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ABUtils.java
index 98037a7f7..c1576892a 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ABUtils.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ABUtils.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2010 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BTInviteActivity.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTInviteActivity.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BTInviteActivity.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTInviteActivity.java
index a69c86e3f..3297c33d0 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BTInviteActivity.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTInviteActivity.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2014 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BTInviteDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTInviteDelegate.java
similarity index 98%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BTInviteDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTInviteDelegate.java
index 3591f0b90..6cdbbab7c 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BTInviteDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTInviteDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2016 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BTReceiver.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTReceiver.java
similarity index 97%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BTReceiver.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTReceiver.java
index 07e52f55f..437c6f812 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BTReceiver.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTReceiver.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2012 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BTService.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTService.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BTService.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTService.java
index fb6859965..9726f2073 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BTService.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BTService.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2010 - 2014 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BiDiSockWrap.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BiDiSockWrap.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BiDiSockWrap.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BiDiSockWrap.java
index 99c703fc6..020050d10 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BiDiSockWrap.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BiDiSockWrap.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2016 by Eric House (xwords@eehouse.org). All rights reserved.
*
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardActivity.java
similarity index 97%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardActivity.java
index 1669a64e0..8edb2a324 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardActivity.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardActivity.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2013 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardCanvas.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardCanvas.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardCanvas.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardCanvas.java
index 9f0d3b7f1..1c9f1ec77 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardCanvas.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardCanvas.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2013 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardContainer.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardContainer.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardContainer.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardContainer.java
index f6b4b1c6c..9d492211a 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardContainer.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardContainer.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2016 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardDelegate.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardDelegate.java
index 05a9fd926..f26a1de21 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2017 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardFrag.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardFrag.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardFrag.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardFrag.java
index b100f715e..79076d97d 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardFrag.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardFrag.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2014 - 2016 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardView.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardView.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardView.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardView.java
index 710e0e04e..4fbab0d87 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/BoardView.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/BoardView.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2012 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ChatActivity.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ChatActivity.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ChatActivity.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ChatActivity.java
index dc3843d7b..bb7c6aca9 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ChatActivity.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ChatActivity.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2011 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ChatDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ChatDelegate.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ChatDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ChatDelegate.java
index 9eb85a33c..df9dd9892 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ChatDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ChatDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2011 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ChatFrag.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ChatFrag.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ChatFrag.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ChatFrag.java
index ac6309e3f..f7591f008 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ChatFrag.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ChatFrag.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2016 by Eric House (xwords@eehouse.org). All rights reserved.
*
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/CommsTransport.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/CommsTransport.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/CommsTransport.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/CommsTransport.java
index 18b20d8f0..828d83b51 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/CommsTransport.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/CommsTransport.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2012 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ConfirmingCheckBoxPreference.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConfirmingCheckBoxPreference.java
similarity index 96%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ConfirmingCheckBoxPreference.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConfirmingCheckBoxPreference.java
index 10c8395b1..c9d47901e 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ConfirmingCheckBoxPreference.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConfirmingCheckBoxPreference.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2016 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ConnStatusHandler.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConnStatusHandler.java
similarity index 98%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ConnStatusHandler.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConnStatusHandler.java
index 6266e3169..0be93dd72 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ConnStatusHandler.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConnStatusHandler.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2010 by Eric House (xwords@eehouse.org). All
* rights reserved.
@@ -566,7 +566,9 @@ public class ConnStatusHandler {
if ( BuildConfig.DEBUG ) {
switch ( typ ) {
case COMMS_CONN_RELAY:
- result = String.format( "(DevID: %d) ", DevID.getRelayDevIDInt(context) );
+ result = String.format( "(DevID: %d; host: %s) ",
+ DevID.getRelayDevIDInt(context),
+ XWPrefs.getDefaultRelayHost(context) );
break;
case COMMS_CONN_P2P:
result = WiDirService.formatNetStateInfo();
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ConnViaViewLayout.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConnViaViewLayout.java
similarity index 98%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ConnViaViewLayout.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConnViaViewLayout.java
index 9ba49eb8a..ed765e656 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ConnViaViewLayout.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ConnViaViewLayout.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2015 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DBHelper.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DBHelper.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DBHelper.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DBHelper.java
index 46e0dbdfe..8f40878ab 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DBHelper.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DBHelper.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2016 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DBUtils.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DBUtils.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DBUtils.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DBUtils.java
index 09a08c425..892ca9684 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DBUtils.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DBUtils.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2012 by Eric House (xwords@eehouse.org). All
* rights reserved.
@@ -1663,7 +1663,7 @@ public class DBUtils {
initDB( context );
String[] columns = { ROW_ID };
String selection = String.format( "%s=%d", DBHelper.GROUPID, groupID );
- String orderBy = String.format( "%s,%s DESC,%s DESC", DBHelper.GAME_OVER,
+ String orderBy = String.format( "%s,%s DESC,%s", DBHelper.GAME_OVER,
DBHelper.TURN_LOCAL, DBHelper.LASTMOVE );
synchronized( s_dbHelper ) {
SQLiteDatabase db = s_dbHelper.getReadableDatabase();
@@ -2543,7 +2543,7 @@ public class DBUtils {
private static String getVariantDBName()
{
return String.format( "%s_%s", DBHelper.getDBName(),
- BuildConstants.VARIANT );
+ BuildConfig.FLAVOR );
}
// private static void clearChatHistoryString( Context context, long rowid )
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DbgUtils.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DbgUtils.java
similarity index 98%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DbgUtils.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DbgUtils.java
index d55f59c5c..89aa2b331 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DbgUtils.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DbgUtils.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2011 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DelegateBase.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DelegateBase.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DelegateBase.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DelegateBase.java
index 14a6e64e8..38401e2f6 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DelegateBase.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DelegateBase.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2014 by Eric House (xwords@eehouse.org). All rights reserved.
*
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/Delegator.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/Delegator.java
similarity index 95%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/Delegator.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/Delegator.java
index 108eeba4f..6dd9c54ba 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/Delegator.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/Delegator.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2014 by Eric House (xwords@eehouse.org). All rights reserved.
*
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DevID.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DevID.java
similarity index 98%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DevID.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DevID.java
index 6c4d36694..f72bf5b74 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DevID.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DevID.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2010 - 2015 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictBrowseActivity.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictBrowseActivity.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DictBrowseActivity.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictBrowseActivity.java
index acf7ceecc..9d4e2e961 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictBrowseActivity.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictBrowseActivity.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2011 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictBrowseDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictBrowseDelegate.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DictBrowseDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictBrowseDelegate.java
index f1eb670d1..1aac7b22b 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictBrowseDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictBrowseDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2011 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictBrowseFrag.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictBrowseFrag.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DictBrowseFrag.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictBrowseFrag.java
index 5af311b33..5373120e9 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictBrowseFrag.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictBrowseFrag.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2016 by Eric House (xwords@eehouse.org). All rights reserved.
*
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictLangCache.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictLangCache.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DictLangCache.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictLangCache.java
index 348c6bfd1..371083aeb 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictLangCache.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictLangCache.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2010 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictListPreference.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictListPreference.java
similarity index 97%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DictListPreference.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictListPreference.java
index b7dbf1326..4b8747c22 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictListPreference.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictListPreference.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2010 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictUtils.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictUtils.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DictUtils.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictUtils.java
index af44aac03..81b666ffc 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictUtils.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictUtils.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2011 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictsActivity.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictsActivity.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DictsActivity.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictsActivity.java
index 44306e1f2..0dfa5441c 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictsActivity.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictsActivity.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2014 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictsDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictsDelegate.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DictsDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictsDelegate.java
index 641ec5c19..eab9579b0 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictsDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictsDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2012 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictsFrag.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictsFrag.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DictsFrag.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictsFrag.java
index e6fabfc9a..e39ae4b98 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DictsFrag.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DictsFrag.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2016 by Eric House (xwords@eehouse.org). All rights reserved.
*
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DispatchNotify.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DispatchNotify.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DispatchNotify.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DispatchNotify.java
index 6d97333e4..ffb602e07 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DispatchNotify.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DispatchNotify.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2010 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgDelegate.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgDelegate.java
index 7f0fa3660..9bf70159c 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2012 by Eric House (xwords@eehouse.org). All
* rights reserved.
@@ -631,10 +631,10 @@ public class DlgDelegate {
DateFormat df = DateFormat.getDateTimeInstance( DateFormat.FULL,
DateFormat.FULL );
String dateString
- = df.format( new Date( BuildConstants.BUILD_STAMP * 1000 ) );
+ = df.format( new Date( BuildConfig.BUILD_STAMP * 1000 ) );
vers.setText( getString( R.string.about_vers_fmt,
getString( R.string.app_version ),
- BuildConstants.GIT_REV, dateString ) );
+ BuildConfig.GIT_REV, dateString ) );
TextView xlator = (TextView)view.findViewById( R.id.about_xlator );
String str = getString( R.string.xlator );
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgID.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgID.java
similarity index 96%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgID.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgID.java
index 53f0e559d..7f1bc7a7f 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgID.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgID.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2014 by Eric House (xwords@eehouse.org). All rights reserved.
*
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgState.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgState.java
similarity index 98%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgState.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgState.java
index 74f06e5e7..a5b81db02 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DlgState.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DlgState.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2013 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DrawSelDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DrawSelDelegate.java
similarity index 95%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DrawSelDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DrawSelDelegate.java
index 81c7454c2..85c79091f 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DrawSelDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DrawSelDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2014 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DualpaneDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DualpaneDelegate.java
similarity index 97%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DualpaneDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DualpaneDelegate.java
index d24c1f982..6a45b3a58 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DualpaneDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DualpaneDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2016 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DwnldActivity.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DwnldActivity.java
similarity index 95%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DwnldActivity.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DwnldActivity.java
index 66b2d9d50..f4e05e978 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DwnldActivity.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DwnldActivity.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2012 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DwnldDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DwnldDelegate.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/DwnldDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/DwnldDelegate.java
index 71d0ba7ca..580e26073 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/DwnldDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/DwnldDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2012 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/EditColorPreference.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/EditColorPreference.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/EditColorPreference.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/EditColorPreference.java
index 729f7e8f8..b15db76bd 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/EditColorPreference.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/EditColorPreference.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2010 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ExpiringDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ExpiringDelegate.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ExpiringDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ExpiringDelegate.java
index 886239dfc..595def57a 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ExpiringDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ExpiringDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2012 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ExpiringLinearLayout.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ExpiringLinearLayout.java
similarity index 96%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ExpiringLinearLayout.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ExpiringLinearLayout.java
index 3c82fe77e..06ecacf2a 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ExpiringLinearLayout.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ExpiringLinearLayout.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2012 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ExpiringTextView.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ExpiringTextView.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/ExpiringTextView.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/ExpiringTextView.java
index 4aa8f25ae..40d831d44 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/ExpiringTextView.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/ExpiringTextView.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2012 by Eric House (xwords@eehouse.org). All rights
* reserved.
@@ -25,7 +25,7 @@ import android.os.Handler;
import android.util.AttributeSet;
import android.widget.TextView;
-class ExpiringTextView extends TextView {
+public class ExpiringTextView extends TextView {
private ExpiringDelegate m_delegate = null;
private Context m_context;
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/FirstRunDialog.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/FirstRunDialog.java
similarity index 97%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/FirstRunDialog.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/FirstRunDialog.java
index cc1b7a181..c1721ca08 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/FirstRunDialog.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/FirstRunDialog.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2010 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/FragActivity.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/FragActivity.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/FragActivity.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/FragActivity.java
index 8b7edae98..fd0030918 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/FragActivity.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/FragActivity.java
@@ -1,4 +1,4 @@
-// /* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+// /* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
// /*
// * Copyright 2014-2016 by Eric House (xwords@eehouse.org). All rights
// * reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GCMIntentService.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GCMIntentService.java
similarity index 95%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GCMIntentService.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GCMIntentService.java
index a6858987f..067456fc9 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GCMIntentService.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GCMIntentService.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2012 by Eric House (xwords@eehouse.org). All rights
* reserved.
@@ -34,7 +34,7 @@ public class GCMIntentService extends GCMBaseIntentService {
public GCMIntentService()
{
- super( BuildConstants.GCM_SENDER_ID );
+ super( BuildConfig.GCM_SENDER_ID );
}
@Override
@@ -121,13 +121,13 @@ public class GCMIntentService extends GCMBaseIntentService {
public static void init( Application app )
{
int sdkVersion = Integer.valueOf( android.os.Build.VERSION.SDK );
- if ( 8 <= sdkVersion && 0 < BuildConstants.GCM_SENDER_ID.length() ) {
+ if ( 8 <= sdkVersion && 0 < BuildConfig.GCM_SENDER_ID.length() ) {
try {
GCMRegistrar.checkDevice( app );
// GCMRegistrar.checkManifest( app );
String regId = DevID.getGCMDevID( app );
if ( regId.equals("") ) {
- GCMRegistrar.register( app, BuildConstants.GCM_SENDER_ID );
+ GCMRegistrar.register( app, BuildConfig.GCM_SENDER_ID );
}
} catch ( UnsupportedOperationException uoe ) {
DbgUtils.logw( TAG, "Device can't do GCM." );
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameConfigActivity.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameConfigActivity.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GameConfigActivity.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameConfigActivity.java
index ba5095dc0..603e69479 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameConfigActivity.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameConfigActivity.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2010 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameConfigDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameConfigDelegate.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GameConfigDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameConfigDelegate.java
index 40aaf1d85..24ab26a07 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameConfigDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameConfigDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2016 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameConfigFrag.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameConfigFrag.java
similarity index 94%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GameConfigFrag.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameConfigFrag.java
index 8cc70b57d..d9230f955 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameConfigFrag.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameConfigFrag.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2016 by Eric House (xwords@eehouse.org). All rights reserved.
*
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameListGroup.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameListGroup.java
similarity index 98%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GameListGroup.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameListGroup.java
index 2a41e73f4..2e4e77019 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameListGroup.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameListGroup.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2012 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameListItem.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameListItem.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GameListItem.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameListItem.java
index e7d901d60..3243824eb 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameListItem.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameListItem.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2012 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameLock.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameLock.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GameLock.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameLock.java
index 719945a49..a509f78f2 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameLock.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameLock.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2010 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameNamer.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameNamer.java
similarity index 96%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GameNamer.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameNamer.java
index f661d8b37..d2d748ccc 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameNamer.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameNamer.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2011 by Eric House (xwords@eehouse.org). All
* rights reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameUtils.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameUtils.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GameUtils.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameUtils.java
index c9deaf81f..72e459c6a 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GameUtils.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GameUtils.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009-2015 by Eric House (xwords@eehouse.org). All rights
* reserved.
diff --git a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GamesListDelegate.java b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GamesListDelegate.java
similarity index 99%
rename from xwords4/android/XWords4/src/org/eehouse/android/xw4/GamesListDelegate.java
rename to xwords4/android/app/src/main/java/org/eehouse/android/xw4/GamesListDelegate.java
index a1c67b822..a1cab5706 100644
--- a/xwords4/android/XWords4/src/org/eehouse/android/xw4/GamesListDelegate.java
+++ b/xwords4/android/app/src/main/java/org/eehouse/android/xw4/GamesListDelegate.java
@@ -1,4 +1,4 @@
-/* -*- compile-command: "find-and-ant.sh debug install"; -*- */
+/* -*- compile-command: "find-and-gradle.sh installXw4Debug"; -*- */
/*
* Copyright 2009 - 2016 by Eric House (xwords@eehouse.org). All
* rights reserved.
@@ -143,7 +143,12 @@ public class GamesListDelegate extends ListDelegateBase
if ( ggi.m_expanded ) {
List