Increment 2 — authentication and account management. - Gmail OAuth 2.0 via AppAuth (Authorization Code + PKCE, restricted https://mail.google.com/ scope); redirect scheme derived from the client id. - Generic IMAP/SMTP manual setup (host/port/security) with an Advanced section. - Angus/Jakarta Mail IMAP client (password + XOAUTH2); "test connection" logs in and lists folders before an account is saved. - Android Keystore-backed AES-256-GCM credential store (encrypts the OAuth AuthState / IMAP password); accounts + secrets persisted in Room (schema v2). - AccountRepository + Hilt wiring; Settings accounts list (add / remove). - Tests: GreenMail-backed IMAP client unit test; instrumented Keystore round-trip and Angus Mail provider-resolution tests (green on the Android 17 emulator). - Remove the placeholder Compose smoke test (the API 37 Compose-UI-test library hits InputManager.getInstance); on-device rendering verified via screenshots. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
64 lines
3.1 KiB
XML
64 lines
3.1 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
|
|
<resources>
|
|
<string name="app_name">LibreMail</string>
|
|
|
|
<!-- Destinations -->
|
|
<string name="title_mailbox">Inbox</string>
|
|
<string name="title_reader">Message</string>
|
|
<string name="title_compose">Compose</string>
|
|
<string name="title_settings">Settings</string>
|
|
<string name="title_account_setup">Add account</string>
|
|
|
|
<!-- Navigation / actions -->
|
|
<string name="nav_mailbox">Mail</string>
|
|
<string name="nav_settings">Settings</string>
|
|
<string name="action_compose">Compose</string>
|
|
<string name="action_back">Back</string>
|
|
<string name="action_send">Send</string>
|
|
|
|
<!-- Mailbox -->
|
|
<string name="mailbox_empty">No messages yet</string>
|
|
<string name="mailbox_empty_subtitle">Add an account to start syncing your mail.</string>
|
|
|
|
<!-- Compose -->
|
|
<string name="compose_to">To</string>
|
|
<string name="compose_subject">Subject</string>
|
|
<string name="compose_body">Message</string>
|
|
<string name="compose_not_implemented">Sending is not available yet</string>
|
|
|
|
<!-- Account setup -->
|
|
<string name="account_setup_gmail">Sign in with Google</string>
|
|
<string name="account_setup_other">Other (IMAP/SMTP)</string>
|
|
<string name="account_setup_subtitle">Choose how you want to connect your mailbox.</string>
|
|
<string name="account_gmail_needs_client_id">Add your Google OAuth client ID first — see the README</string>
|
|
|
|
<!-- Manual IMAP/SMTP setup -->
|
|
<string name="manual_setup_title">IMAP / SMTP</string>
|
|
<string name="manual_email">Email address</string>
|
|
<string name="manual_password">Password or app password</string>
|
|
<string name="manual_incoming">Incoming mail (IMAP)</string>
|
|
<string name="manual_outgoing">Outgoing mail (SMTP)</string>
|
|
<string name="manual_imap_server">IMAP server</string>
|
|
<string name="manual_smtp_server">SMTP server</string>
|
|
<string name="manual_imap_port">IMAP port</string>
|
|
<string name="manual_smtp_port">SMTP port</string>
|
|
<string name="manual_imap_security">IMAP security</string>
|
|
<string name="manual_smtp_security">SMTP security</string>
|
|
<string name="manual_test_and_add">Test & add account</string>
|
|
|
|
<!-- Settings -->
|
|
<string name="settings_accounts">Accounts</string>
|
|
<string name="settings_no_accounts">No accounts yet</string>
|
|
<string name="account_remove">Remove</string>
|
|
<string name="settings_appearance">Appearance</string>
|
|
<string name="settings_dynamic_color">Use wallpaper colors</string>
|
|
<string name="settings_dynamic_color_summary">Material You dynamic theming (Android 12+)</string>
|
|
<string name="settings_add_account">Add account</string>
|
|
<string name="settings_advanced">Advanced Settings</string>
|
|
<string name="settings_advanced_summary">Power-user options for sync and connections</string>
|
|
<string name="settings_adv_idle">Push mail (IMAP IDLE)</string>
|
|
<string name="settings_adv_starttls">Allow STARTTLS</string>
|
|
<string name="settings_adv_remote_images">Load remote images by default</string>
|
|
</resources>
|