Skip to content

Commit 4a1c326

Browse files
committed
fix(strings): drop em dashes from in-app English text
Twenty user-facing strings used an em dash as punctuation (protection test results, export messages, the area-block confirmation, sync completion and others). Each is now two sentences or a comma clause. Ranges such as "Mon–Fri" and "09:00–17:00" keep their en dash. SyncIntegrationTest asserted the old sync message verbatim; it now asserts the reworded one. Its four tests pass on an API 35 emulator, and lint, the unit tests and the translation check stay green.
1 parent f5bbc60 commit 4a1c326

2 files changed

Lines changed: 21 additions & 21 deletions

File tree

‎app/src/androidTest/java/com/sysadmindoc/callshield/data/SyncIntegrationTest.kt‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ class SyncIntegrationTest {
9191
val result = repo.syncFromGitHub(force = true)
9292

9393
assertTrue(result.message, result.success)
94-
assertEquals("Sync complete — numbers: 2, prefixes: 1", result.message)
94+
assertEquals("Sync complete. Numbers: 2, prefixes: 1", result.message)
9595
assertEquals(1, remote.fetchCount)
9696
assertEquals(1, remote.updateCheckCount)
9797

‎app/src/main/res/values/strings.xml‎

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@
143143
<string name="dashboard_spam_from_area">Spam count: %1$s | %2$s (%3$s)</string>
144144
<string name="dashboard_block_area">Block %s</string>
145145
<string name="dashboard_block_area_confirm_title">Block area code %s?</string>
146-
<string name="dashboard_block_area_confirm_body">This adds a rule that blocks every call and text from a +1 %1$s number (%2$s) — roughly 7.9 million numbers. You can remove it later from the blocklist.</string>
146+
<string name="dashboard_block_area_confirm_body">This adds a rule that blocks every call and text from a +1 %1$s number (%2$s). That\'s roughly 7.9 million numbers. You can remove it later from the blocklist.</string>
147147
<string name="dashboard_block_area_confirm_action">Block area code</string>
148148
<string name="dashboard_block_area_description">Area code %1$s (%2$s)</string>
149149
<string name="dashboard_block_area_added">Blocked area code %s</string>
@@ -630,7 +630,7 @@
630630
<string name="settings_urlhaus_privacy">Threat-feed privacy mode</string>
631631
<string name="settings_urlhaus_privacy_desc">Hide link query parameters in local evidence; remote checks always use the domain only</string>
632632
<string name="settings_urlhaus_remote_lookup">Share link domains with threat feeds</string>
633-
<string name="settings_urlhaus_remote_lookup_desc">Optional. Send only the registrable domain—not message text—to enabled threat feeds</string>
633+
<string name="settings_urlhaus_remote_lookup_desc">Optional. Only the registrable domain goes to the threat feeds you turn on, never the message text.</string>
634634
<string name="settings_sms_burst">SMS burst protection</string>
635635
<string name="settings_sms_burst_desc">Detect repeated unknown senders and message floods</string>
636636
<string name="settings_repeat_caller">Repeat caller auto-block</string>
@@ -697,7 +697,7 @@
697697
<string name="settings_export_csv">Export blocked log as CSV</string>
698698
<string name="settings_export_csv_desc">Export blocked calls/SMS as a CSV file. SMS message bodies are redacted by default.</string>
699699
<string name="settings_export_redress_csv">Export blocked calls for redress</string>
700-
<string name="settings_export_redress_csv_desc">Date, time, calling number, and reason only — no message bodies or contacts.</string>
700+
<string name="settings_export_redress_csv_desc">Date, time, calling number and reason only. No message bodies or contacts.</string>
701701
<string name="settings_export_raw_sms_csv">Export raw SMS bodies</string>
702702
<string name="settings_export_raw_sms_csv_desc">Creates a separate CSV that includes original blocked SMS text.</string>
703703
<string name="settings_export_raw_sms_confirm_title">Export raw SMS text?</string>
@@ -892,7 +892,7 @@
892892
<string name="more_star_github">Star on GitHub</string>
893893
<string name="more_report_spam_number">Report Spam Number</string>
894894
<string name="more_share_crash_log">Share crash log</string>
895-
<string name="more_no_crash_logs">No crashes logged — CallShield hasn\'t recorded an uncaught exception.</string>
895+
<string name="more_no_crash_logs">No crashes logged. CallShield hasn\'t recorded an uncaught exception.</string>
896896
<string name="more_section_tools">Protection Tools</string>
897897
<string name="more_section_release">Release &amp; Diagnostics</string>
898898
<string name="more_section_support">Project &amp; Support</string>
@@ -908,7 +908,7 @@
908908
<string name="link_no_browser">No browser available to open this link.</string>
909909
<string name="link_no_activity">This device can\'t open that screen.</string>
910910
<!-- Emergency contacts (Feature E) -->
911-
<string name="emergency_contacts_subtitle">Always ring through — bypasses blocklist, quiet hours, and aggressive mode.</string>
911+
<string name="emergency_contacts_subtitle">They always ring, even past your blocklist, quiet hours and aggressive mode.</string>
912912
<string name="emergency_contacts_add">Add Emergency Contact</string>
913913
<string name="emergency_contacts_added">Emergency contact added</string>
914914
<string name="emergency_contacts_mark_as">Mark as Emergency</string>
@@ -952,7 +952,7 @@
952952
<item quantity="other">Issues needing attention: %d</item>
953953
</plurals>
954954
<string name="protection_test_run_failed_title">Couldn\'t finish the tests</string>
955-
<string name="protection_test_run_failed_body">Something went wrong while running the checks. Try again — if it keeps failing, restart CallShield.</string>
955+
<string name="protection_test_run_failed_body">Something went wrong while running the checks. Try again, and if it keeps failing, restart CallShield.</string>
956956
<string name="protection_test_intro_title">What this checks</string>
957957
<string name="protection_test_intro_body">Runs locally without sending call or message data.</string>
958958
<string name="protection_test_intro_permissions">Required permissions and Android roles.</string>
@@ -1010,9 +1010,9 @@
10101010
<string name="protection_test_fix_notifications">Enable notification or listener access if you want alerts and RCS filtering.</string>
10111011
<string name="protection_test_db_empty">No spam data loaded yet</string>
10121012
<string name="protection_test_perm_granted">Granted</string>
1013-
<string name="protection_test_perm_not_granted">Not granted — feature may not work</string>
1013+
<string name="protection_test_perm_not_granted">Not granted, so this feature may not work</string>
10141014
<string name="protection_test_screener_yes">CallShield is the default call screener</string>
1015-
<string name="protection_test_screener_no">Not set — go to Settings to enable</string>
1015+
<string name="protection_test_screener_no">Not set. Turn it on in Settings.</string>
10161016
<string name="protection_test_db_count">Numbers loaded: %d</string>
10171017
<string name="protection_test_prefix_pass">Correctly blocked +1900 prefix (%s)</string>
10181018
<string name="protection_test_prefix_fail">Failed to detect premium rate number</string>
@@ -1023,18 +1023,18 @@
10231023
<string name="protection_test_ml_pass">Correctly flagged 555-0000 pattern</string>
10241024
<string name="protection_test_ml_fail">ML scorer may be disabled or weights not loaded</string>
10251025
<string name="protection_test_ml_fp_pass">Normal number correctly passed</string>
1026-
<string name="protection_test_ml_fp_fail">False positive — threshold may be too low</string>
1026+
<string name="protection_test_ml_fp_fail">False positive. The threshold may be too low.</string>
10271027
<string name="protection_test_hot_pass">Hot campaign ranges loaded</string>
1028-
<string name="protection_test_hot_fail">Empty — will populate on next 30-min sync</string>
1028+
<string name="protection_test_hot_fail">Empty until the next sync, which runs every 30 minutes</string>
10291029
<string name="protection_test_hot_unavailable_age">Hot data unavailable; last good update was %1$d hours ago</string>
10301030
<string name="protection_test_hot_unavailable_never">Hot data unavailable; no successful update yet</string>
10311031
<string name="protection_test_hot_stalled">Reachable, but the trending feed has not been regenerated in %1$d days</string>
10321032
<string name="protection_test_hot_refused">Reachable, but the last download failed its signature or freshness check, so the previous copy is still in use</string>
10331033
<string name="protection_test_hot_cleared">Reachable. The publisher reports nothing trending right now</string>
10341034
<string name="protection_test_overlay_pass">Can display caller ID overlay</string>
1035-
<string name="protection_test_overlay_fail">Not granted — overlay won\'t show</string>
1035+
<string name="protection_test_overlay_fail">Not granted, so the overlay won\'t show</string>
10361036
<string name="protection_test_notif_pass">RCS filter can monitor messages</string>
1037-
<string name="protection_test_notif_fail">Not granted — RCS filter won\'t work</string>
1037+
<string name="protection_test_notif_fail">Not granted, so the RCS filter won\'t work</string>
10381038
<string name="protection_test_perm_name_call_log">Call Log Permission</string>
10391039
<string name="protection_test_perm_name_contacts">Contacts Permission</string>
10401040
<string name="protection_test_perm_name_sms">SMS Permission</string>
@@ -1077,7 +1077,7 @@
10771077
<string name="permission_contract_degraded_overlay">Floating caller ID and live enrichment cards stay hidden until overlay access is allowed.</string>
10781078
<string name="permission_contract_degraded_notification_access">RCS filtering and push-alert caller trust cannot read trusted message notifications until listener access is enabled.</string>
10791079
<string name="permission_contract_post_notifications_name">Notification Permission</string>
1080-
<string name="permission_contract_post_notifications_denied">Denied — alerts and review actions may be hidden</string>
1080+
<string name="permission_contract_post_notifications_denied">Denied, so alerts and review actions may be hidden</string>
10811081
<string name="permission_contract_degraded_post_notifications">Blocked-call/SMS alerts, review actions, and daily summaries may be suppressed until notification permission is granted.</string>
10821082
<string name="permission_contract_post_notifications_not_required">Not required on this Android version</string>
10831083

@@ -1330,7 +1330,7 @@
13301330

13311331
<!-- Sync results -->
13321332
<string name="sync_database_up_to_date">Database is up to date</string>
1333-
<string name="sync_success_counts">Sync complete — numbers: %1$d, prefixes: %2$d</string>
1333+
<string name="sync_success_counts">Sync complete. Numbers: %1$d, prefixes: %2$d</string>
13341334
<string name="sync_unknown_error">Unknown sync error</string>
13351335
<string name="sync_remote_unavailable_existing">GitHub sync unavailable (%s). Your existing spam database is still active.</string>
13361336
<string name="sync_bundled_snapshot_loaded">Loaded bundled protection snapshot with %1$d numbers and %2$d prefixes while GitHub was unavailable.</string>
@@ -1467,10 +1467,10 @@
14671467
<string name="feedback_not_spam">Not Spam</string>
14681468
<string name="feedback_blocked">Number blocked and reported</string>
14691469
<string name="feedback_whitelisted">Number marked as safe</string>
1470-
<string name="notification_action_failed">Action failed — try again from the app</string>
1471-
<string name="export_share_failed">Couldn\'t create the export file — storage may be full</string>
1472-
<string name="export_log_empty">Nothing to export yet — no blocked calls or messages</string>
1473-
<string name="export_redress_empty">Nothing to export yet — no blocked calls</string>
1470+
<string name="notification_action_failed">That didn\'t work. Try again from the app.</string>
1471+
<string name="export_share_failed">Couldn\'t create the export file. Storage may be full.</string>
1472+
<string name="export_log_empty">Nothing to export yet. No calls or messages have been blocked.</string>
1473+
<string name="export_redress_empty">Nothing to export yet. No calls have been blocked.</string>
14741474
<string name="backup_restore_not_protected">This file isn\'t a passphrase-protected backup. Clear the passphrase field to restore it as-is.</string>
14751475
<string name="settings_post_call_screen">Android post-call screen</string>
14761476
<string name="settings_post_call_screen_desc">Optionally open CallShield after eligible calls with spam and save-contact actions. Off by default; rating notifications stay enabled.</string>
@@ -1601,8 +1601,8 @@
16011601
<string name="test_after_call_feedback">After-Call Feedback</string>
16021602
<string name="test_feedback_ready">Spam rating notifications ready</string>
16031603
<string name="test_security_patch">Device Security Patch</string>
1604-
<string name="test_security_patch_current">Patch level %1$s — current</string>
1605-
<string name="test_security_patch_stale">Patch level %1$s — over 90 days old</string>
1604+
<string name="test_security_patch_current">Patch level %1$s, current</string>
1605+
<string name="test_security_patch_stale">Patch level %1$s, over 90 days old</string>
16061606
<string name="test_security_patch_hint">Check for system updates in Settings → System → Software update</string>
16071607

16081608
<!-- Widget -->

0 commit comments

Comments
 (0)