diff options
Diffstat (limited to 'ui/src/main/res/values')
-rw-r--r-- | ui/src/main/res/values/attrs.xml | 10 | ||||
-rw-r--r-- | ui/src/main/res/values/bools.xml | 5 | ||||
-rw-r--r-- | ui/src/main/res/values/colors.xml | 63 | ||||
-rw-r--r-- | ui/src/main/res/values/dimens.xml | 9 | ||||
-rw-r--r-- | ui/src/main/res/values/ic_launcher_background.xml | 4 | ||||
-rw-r--r-- | ui/src/main/res/values/ids.xml | 4 | ||||
-rw-r--r-- | ui/src/main/res/values/logviewer_colors.xml | 6 | ||||
-rw-r--r-- | ui/src/main/res/values/strings.xml | 260 | ||||
-rw-r--r-- | ui/src/main/res/values/styles.xml | 45 | ||||
-rw-r--r-- | ui/src/main/res/values/themes.xml | 31 |
10 files changed, 437 insertions, 0 deletions
diff --git a/ui/src/main/res/values/attrs.xml b/ui/src/main/res/values/attrs.xml new file mode 100644 index 00000000..b91ac60e --- /dev/null +++ b/ui/src/main/res/values/attrs.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <declare-styleable name="Multiselected"> + <attr name="state_multiselected" format="boolean" /> + </declare-styleable> + <declare-styleable name="TvCardView"> + <attr name="state_isUp" format="boolean" /> + <attr name="state_isDeleting" format="boolean" /> + </declare-styleable> +</resources> diff --git a/ui/src/main/res/values/bools.xml b/ui/src/main/res/values/bools.xml new file mode 100644 index 00000000..288f85a5 --- /dev/null +++ b/ui/src/main/res/values/bools.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <bool name="light_status_bar">true</bool> + <bool name="light_navigation_bar">true</bool> +</resources> diff --git a/ui/src/main/res/values/colors.xml b/ui/src/main/res/values/colors.xml new file mode 100644 index 00000000..65e82389 --- /dev/null +++ b/ui/src/main/res/values/colors.xml @@ -0,0 +1,63 @@ +<resources> + <color name="seed">#1a73e8</color> + <color name="md_theme_light_primary">#005BC0</color> + <color name="md_theme_light_onPrimary">#FFFFFF</color> + <color name="md_theme_light_primaryContainer">#D8E2FF</color> + <color name="md_theme_light_onPrimaryContainer">#001A41</color> + <color name="md_theme_light_secondary">#565E71</color> + <color name="md_theme_light_onSecondary">#FFFFFF</color> + <color name="md_theme_light_secondaryContainer">#DBE2F9</color> + <color name="md_theme_light_onSecondaryContainer">#131B2C</color> + <color name="md_theme_light_tertiary">#715574</color> + <color name="md_theme_light_onTertiary">#FFFFFF</color> + <color name="md_theme_light_tertiaryContainer">#FBD7FC</color> + <color name="md_theme_light_onTertiaryContainer">#29132D</color> + <color name="md_theme_light_error">#BA1A1A</color> + <color name="md_theme_light_errorContainer">#FFDAD6</color> + <color name="md_theme_light_onError">#FFFFFF</color> + <color name="md_theme_light_onErrorContainer">#410002</color> + <color name="md_theme_light_background">#FEFBFF</color> + <color name="md_theme_light_onBackground">#1B1B1F</color> + <color name="md_theme_light_surface">#FEFBFF</color> + <color name="md_theme_light_onSurface">#1B1B1F</color> + <color name="md_theme_light_surfaceVariant">#E1E2EC</color> + <color name="md_theme_light_onSurfaceVariant">#44474F</color> + <color name="md_theme_light_outline">#74777F</color> + <color name="md_theme_light_inverseOnSurface">#F2F0F4</color> + <color name="md_theme_light_inverseSurface">#303033</color> + <color name="md_theme_light_inversePrimary">#ADC7FF</color> + <color name="md_theme_light_shadow">#000000</color> + <color name="md_theme_light_surfaceTint">#005BC0</color> + <color name="md_theme_light_outlineVariant">#C4C6D0</color> + <color name="md_theme_light_scrim">#000000</color> + <color name="md_theme_dark_primary">#ADC7FF</color> + <color name="md_theme_dark_onPrimary">#002E68</color> + <color name="md_theme_dark_primaryContainer">#004493</color> + <color name="md_theme_dark_onPrimaryContainer">#D8E2FF</color> + <color name="md_theme_dark_secondary">#BFC6DC</color> + <color name="md_theme_dark_onSecondary">#283041</color> + <color name="md_theme_dark_secondaryContainer">#3F4759</color> + <color name="md_theme_dark_onSecondaryContainer">#DBE2F9</color> + <color name="md_theme_dark_tertiary">#DEBCDF</color> + <color name="md_theme_dark_onTertiary">#402843</color> + <color name="md_theme_dark_tertiaryContainer">#583E5B</color> + <color name="md_theme_dark_onTertiaryContainer">#FBD7FC</color> + <color name="md_theme_dark_error">#FFB4AB</color> + <color name="md_theme_dark_errorContainer">#93000A</color> + <color name="md_theme_dark_onError">#690005</color> + <color name="md_theme_dark_onErrorContainer">#FFDAD6</color> + <color name="md_theme_dark_background">#1B1B1F</color> + <color name="md_theme_dark_onBackground">#E3E2E6</color> + <color name="md_theme_dark_surface">#1B1B1F</color> + <color name="md_theme_dark_onSurface">#E3E2E6</color> + <color name="md_theme_dark_surfaceVariant">#44474F</color> + <color name="md_theme_dark_onSurfaceVariant">#C4C6D0</color> + <color name="md_theme_dark_outline">#8E9099</color> + <color name="md_theme_dark_inverseOnSurface">#1B1B1F</color> + <color name="md_theme_dark_inverseSurface">#E3E2E6</color> + <color name="md_theme_dark_inversePrimary">#005BC0</color> + <color name="md_theme_dark_shadow">#000000</color> + <color name="md_theme_dark_surfaceTint">#ADC7FF</color> + <color name="md_theme_dark_outlineVariant">#44474F</color> + <color name="md_theme_dark_scrim">#000000</color> +</resources> diff --git a/ui/src/main/res/values/dimens.xml b/ui/src/main/res/values/dimens.xml new file mode 100644 index 00000000..8ea07dfb --- /dev/null +++ b/ui/src/main/res/values/dimens.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <dimen name="fab_margin">16dp</dimen> + <dimen name="bottom_sheet_item_height">56dp</dimen> + <dimen name="normal_margin">8dp</dimen> + <dimen name="bottom_sheet_top_padding">8dp</dimen> + <dimen name="bottom_sheet_icon_padding">16dp</dimen> + <dimen name="tunnel_list_placeholder_margin">16dp</dimen> +</resources> diff --git a/ui/src/main/res/values/ic_launcher_background.xml b/ui/src/main/res/values/ic_launcher_background.xml new file mode 100644 index 00000000..f8bad52e --- /dev/null +++ b/ui/src/main/res/values/ic_launcher_background.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <color name="ic_launcher_background">#871719</color> +</resources>
\ No newline at end of file diff --git a/ui/src/main/res/values/ids.xml b/ui/src/main/res/values/ids.xml new file mode 100644 index 00000000..7f34f808 --- /dev/null +++ b/ui/src/main/res/values/ids.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <item name="item_change_listener" type="id" /> +</resources> diff --git a/ui/src/main/res/values/logviewer_colors.xml b/ui/src/main/res/values/logviewer_colors.xml new file mode 100644 index 00000000..0d4b1a0d --- /dev/null +++ b/ui/src/main/res/values/logviewer_colors.xml @@ -0,0 +1,6 @@ +<resources> + <color name="debug_tag_color">#444444</color> + <color name="error_tag_color">#aa0000</color> + <color name="info_tag_color">#00aa00</color> + <color name="warning_tag_color">#aaaa00</color> +</resources> diff --git a/ui/src/main/res/values/strings.xml b/ui/src/main/res/values/strings.xml new file mode 100644 index 00000000..df3d3340 --- /dev/null +++ b/ui/src/main/res/values/strings.xml @@ -0,0 +1,260 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <plurals name="delete_error"> + <item quantity="one">Unable to delete %d tunnel: %s</item> + <item quantity="other">Unable to delete %d tunnels: %s</item> + </plurals> + <plurals name="delete_success"> + <item quantity="one">Successfully deleted %d tunnel</item> + <item quantity="other">Successfully deleted %d tunnels</item> + </plurals> + <plurals name="delete_title"> + <item quantity="one">%d tunnel selected</item> + <item quantity="other">%d tunnels selected</item> + </plurals> + <plurals name="import_partial_success"> + <item quantity="one">Imported %1$d of %2$d tunnels</item> + <item quantity="other">Imported %1$d of %2$d tunnels</item> + </plurals> + <plurals name="import_total_success"> + <item quantity="one">Imported %d tunnel</item> + <item quantity="other">Imported %d tunnels</item> + </plurals> + <plurals name="set_excluded_applications"> + <item quantity="one">%d Excluded Application</item> + <item quantity="other">%d Excluded Applications</item> + </plurals> + <plurals name="set_included_applications"> + <item quantity="one">%d Included Application</item> + <item quantity="other">%d Included Applications</item> + </plurals> + <plurals name="n_excluded_applications"> + <item quantity="one">%d excluded</item> + <item quantity="other">%d excluded</item> + </plurals> + <plurals name="n_included_applications"> + <item quantity="one">%d included</item> + <item quantity="other">%d included</item> + </plurals> + <string name="all_applications">All Applications</string> + <string name="exclude_from_tunnel">Exclude</string> + <string name="include_in_tunnel">Include only</string> + <plurals name="include_n_applications"> + <item quantity="one">Include %d app</item> + <item quantity="other">Include %d apps</item> + </plurals> + <plurals name="exclude_n_applications"> + <item quantity="one">Exclude %d app</item> + <item quantity="other">Exclude %d apps</item> + </plurals> + <plurals name="persistent_keepalive_seconds_unit"> + <item quantity="one">every second</item> + <item quantity="other">every %d seconds</item> + </plurals> + <plurals name="persistent_keepalive_seconds_suffix"> + <item quantity="one">second</item> + <item quantity="other">seconds</item> + </plurals> + <string name="use_all_applications">Use all apps</string> + <string name="add_peer">Add peer</string> + <string name="addresses">Addresses</string> + <string name="applications">Applications</string> + <string name="allow_remote_control_intents_summary_off">External apps may not toggle tunnels (recommended)</string> + <string name="allow_remote_control_intents_summary_on">External apps may toggle tunnels (advanced)</string> + <string name="allow_remote_control_intents_title">Allow remote control apps</string> + <string name="allowed_ips">Allowed IPs</string> + <string name="app_name" translatable="false">WireGuard</string> + <string name="bad_config_context">%1$s\'s %2$s</string> + <string name="bad_config_context_top_level">%s</string> + <string name="bad_config_error">%1$s in %2$s</string> + <string name="bad_config_explanation_pka">: Must be positive and no more than 65535</string> + <string name="bad_config_explanation_positive_number">: Must be positive</string> + <string name="bad_config_explanation_udp_port">: Must be a valid UDP port number</string> + <string name="bad_config_reason_invalid_key">Invalid key</string> + <string name="bad_config_reason_invalid_number">Invalid number</string> + <string name="bad_config_reason_invalid_value">Invalid value</string> + <string name="bad_config_reason_missing_attribute">Missing attribute</string> + <string name="bad_config_reason_missing_section">Missing section</string> + <string name="bad_config_reason_syntax_error">Syntax error</string> + <string name="bad_config_reason_unknown_attribute">Unknown attribute</string> + <string name="bad_config_reason_unknown_section">Unknown section</string> + <string name="bad_config_reason_value_out_of_range">Value out of range</string> + <string name="bad_extension_error">File must be .conf or .zip</string> + <string name="error_no_qr_found">QR code not found in image</string> + <string name="error_qr_checksum">QR code checksum verification failed</string> + <string name="cancel">Cancel</string> + <string name="config_delete_error">Cannot delete configuration file %s</string> + <string name="config_exists_error">Configuration for “%s” already exists</string> + <string name="config_file_exists_error">Configuration file “%s” already exists</string> + <string name="config_not_found_error">Configuration file “%s” not found</string> + <string name="config_rename_error">Cannot rename configuration file “%s”</string> + <string name="config_save_error">Cannot save configuration for “%1$s”: %2$s</string> + <string name="config_save_success">Successfully saved configuration for “%s”</string> + <string name="create_activity_title">Create WireGuard Tunnel</string> + <string name="create_bin_dir_error">Cannot create local binary directory</string> + <string name="create_downloads_file_error">Cannot create file in downloads directory</string> + <string name="create_empty">Create from scratch</string> + <string name="create_from_file">Import from file or archive</string> + <string name="create_from_qr_code">Scan from QR code</string> + <string name="create_output_dir_error">Cannot create output directory</string> + <string name="create_temp_dir_error">Cannot create local temporary directory</string> + <string name="create_tunnel">Create Tunnel</string> + <string name="copied_to_clipboard">%s copied to clipboard</string> + <string name="dark_theme_summary_off">Currently using light (day) theme</string> + <string name="dark_theme_summary_on">Currently using dark (night) theme</string> + <string name="dark_theme_title">Use dark theme</string> + <string name="delete">Delete</string> + <string name="tv_delete">Select tunnel to delete</string> + <string name="tv_select_a_storage_drive">Select a storage drive</string> + <string name="tv_no_file_picker">Please install a file management utility to browse files</string> + <string name="tv_add_tunnel_get_started">Add a tunnel to get started</string> + <string name="donate_title">♥ Donate to the WireGuard Project</string> + <string name="donate_summary">Every contribution helps</string> + <string name="donate_google_play_disappointment">Thank you for supporting the WireGuard Project!\n\nUnfortunately, due to Google\'s policies, we\'re not allowed to link to the part of the project webpage where you can make a donation. Hopefully you can figure this out!\n\nThanks again for your contribution.</string> + <string name="disable_config_export_title">Disable config exporting</string> + <string name="disable_config_export_description">Disabling config exporting makes private keys less accessible</string> + <string name="dns_servers">DNS servers</string> + <string name="dns_search_domains">Search domains</string> + <string name="edit">Edit</string> + <string name="endpoint">Endpoint</string> + <string name="error_down">Error bringing down tunnel: %s</string> + <string name="error_fetching_apps">Error fetching apps list: %s</string> + <string name="error_root">Please obtain root access and try again</string> + <string name="error_prepare">Error preparing tunnel: %s</string> + <string name="error_up">Error bringing up tunnel: %s</string> + <string name="exclude_private_ips">Exclude private IPs</string> + <string name="generate_new_private_key">Generate new private key</string> + <string name="generic_error">Unknown “%s” error</string> + <string name="hint_automatic">(auto)</string> + <string name="hint_generated">(generated)</string> + <string name="hint_optional">(optional)</string> + <string name="hint_optional_discouraged">(optional, not recommended)</string> + <string name="hint_random">(random)</string> + <string name="illegal_filename_error">Illegal file name “%s”</string> + <string name="import_error">Unable to import tunnel: %s</string> + <string name="import_from_qr_code">Import Tunnel from QR Code</string> + <string name="import_success">Imported “%s”</string> + <string name="interface_title">Interface</string> + <string name="key_contents_error">Bad characters in key</string> + <string name="key_length_error">Incorrect key length</string> + <string name="key_length_explanation_base64">: WireGuard base64 keys must be 44 characters (32 bytes)</string> + <string name="key_length_explanation_binary">: WireGuard keys must be 32 bytes</string> + <string name="key_length_explanation_hex">: WireGuard hex keys must be 64 characters (32 bytes)</string> + <string name="latest_handshake">Latest handshake</string> + <string name="latest_handshake_ago">%s ago</string> + <string name="listen_port">Listen port</string> + <string name="log_export_error">Unable to export log: %s</string> + <string name="log_export_subject">WireGuard Android Log File</string> + <string name="log_export_success">Saved to “%s”</string> + <string name="log_export_title">Export log file</string> + <string name="log_saver_activity_label">Save log</string> + <string name="log_viewer_pref_summary">Logs may assist with debugging</string> + <string name="log_viewer_pref_title">View application log</string> + <string name="log_viewer_title">Log</string> + <string name="logcat_error">Unable to run logcat: </string> + <string name="module_enabler_disabled_summary">The experimental kernel module can improve performance</string> + <string name="module_enabler_disabled_title">Enable kernel module backend</string> + <string name="module_enabler_enabled_summary">The slower userspace backend may improve stability</string> + <string name="module_enabler_enabled_title">Disable kernel module backend</string> + <string name="module_installer_error">Something went wrong. Please try again</string> + <string name="module_installer_initial">The experimental kernel module can improve performance</string> + <string name="module_installer_not_found">No modules are available for your device</string> + <string name="module_installer_title">Download and install kernel module</string> + <string name="module_installer_working">Downloading and installing…</string> + <string name="module_version_error">Unable to determine kernel module version</string> + <string name="mtu">MTU</string> + <string name="multiple_tunnels_summary_off">Turning on one tunnel will turn off others</string> + <string name="multiple_tunnels_summary_on">Multiple tunnels may be turned on simultaneously</string> + <string name="multiple_tunnels_title">Allow multiple simultaneous tunnels</string> + <string name="name">Name</string> + <string name="no_config_error">Trying to bring up a tunnel with no config</string> + <string name="no_configs_error">No configurations found</string> + <string name="no_tunnels_error">No tunnels exist</string> + <string name="parse_error_generic">string</string> + <string name="parse_error_inet_address">IP address</string> + <string name="parse_error_inet_endpoint">endpoint</string> + <string name="parse_error_inet_network">IP network</string> + <string name="parse_error_integer">number</string> + <string name="parse_error_reason">Cannot parse %1$s “%2$s”</string> + <string name="peer">Peer</string> + <string name="permission_description">control WireGuard tunnels, enabling and disabling tunnels at will, potentially misdirecting Internet traffic</string> + <string name="permission_label">control WireGuard tunnels</string> + <string name="persistent_keepalive">Persistent keepalive</string> + <string name="pre_shared_key">Pre-shared key</string> + <string name="pre_shared_key_enabled">enabled</string> + <string name="private_key">Private key</string> + <string name="public_key">Public key</string> + <string name="qr_code_hint">Tip: generate with `qrencode -t ansiutf8 < tunnel.conf`.</string> + <string name="quick_settings_tile_add_title">Add tile to quick settings panel</string> + <string name="quick_settings_tile_add_summary">The shortcut tile toggles the most recent tunnel</string> + <string name="quick_settings_tile_add_failure">Unable to add shortcut tile: error %d</string> + <string name="quick_settings_tile_action">Toggle tunnel</string> + <string name="restore_on_boot_summary_off">Will not bring up enabled tunnels at boot</string> + <string name="restore_on_boot_summary_on">Will bring up enabled tunnels at boot</string> + <string name="restore_on_boot_title">Restore on boot</string> + <string name="save">Save</string> + <string name="select_all">Select all</string> + <string name="settings">Settings</string> + <string name="shell_exit_status_read_error">Shell cannot read exit status</string> + <string name="shell_marker_count_error">Shell expected 4 markers, received %d</string> + <string name="shell_start_error">Shell failed to start: %d</string> + <string name="success_application_will_restart">Success. The application will now restart…</string> + <string name="toggle_all">Toggle All</string> + <string name="toggle_error">Error toggling WireGuard tunnel: %s</string> + <string name="tools_installer_already">wg and wg-quick are already installed</string> + <string name="tools_installer_failure">Unable to install command-line tools (no root?)</string> + <string name="tools_installer_initial">Install optional tools for scripting</string> + <string name="tools_installer_initial_magisk">Install optional tools for scripting as Magisk module</string> + <string name="tools_installer_initial_system">Install optional tools for scripting into the system partition</string> + <string name="tools_installer_success_magisk">wg and wg-quick installed as a Magisk module (reboot required)</string> + <string name="tools_installer_success_system">wg and wg-quick installed into the system partition</string> + <string name="tools_installer_title">Install command line tools</string> + <string name="tools_installer_working">Installing wg and wg-quick</string> + <string name="tools_unavailable_error">Required tools unavailable</string> + <string name="transfer">Transfer</string> + <string name="transfer_bytes">%d B</string> + <string name="transfer_gibibytes">%.2f GiB</string> + <string name="transfer_kibibytes">%.2f KiB</string> + <string name="transfer_mibibytes">%.2f MiB</string> + <string name="transfer_rx_tx">rx: %1$s, tx: %2$s</string> + <string name="transfer_tibibytes">%.2f TiB</string> + <string name="tun_create_error">Unable to create tun device</string> + <string name="tunnel_config_error">Unable to configure tunnel (wg-quick returned %d)</string> + <string name="tunnel_create_error">Unable to create tunnel: %s</string> + <string name="tunnel_create_success">Successfully created tunnel “%s”</string> + <string name="tunnel_error_already_exists">Tunnel “%s” already exists</string> + <string name="tunnel_error_invalid_name">Invalid name</string> + <string name="tunnel_list_placeholder">Add a tunnel using the button below</string> + <string name="tunnel_name">Tunnel Name</string> + <string name="tunnel_on_error">Unable to turn tunnel on (wgTurnOn returned %d)</string> + <string name="tunnel_dns_failure">Unable to resolve DNS hostname: “%s”</string> + <string name="tunnel_rename_error">Unable to rename tunnel: %s</string> + <string name="tunnel_rename_success">Successfully renamed tunnel to “%s”</string> + <string name="type_name_go_userspace">Go userspace</string> + <string name="type_name_kernel_module">Kernel module</string> + <string name="unknown_error">Unknown error</string> + <string name="updater_avalable">An application update is available. Please update now.</string> + <string name="updater_action">Download & Update</string> + <string name="updater_rechecking">Fetching update metadata…</string> + <string name="updater_download_progress">Downloading update: %1$s / %2$s (%3$.2f%%)</string> + <string name="updater_download_progress_nototal">Downloading update: %s</string> + <string name="updater_installing">Installing update…</string> + <string name="updater_failure">Update failure: %s. Will retry momentarily…</string> + <string name="updater_corrupt_title">Application Corrupt</string> + <string name="updater_corrupt_message">This application is corrupt. Please re-download the APK from the website linked below. After, uninstall this application, and reinstall it from the downloaded APK.</string> + <string name="updater_corrupt_navigate">Open Website</string> + <string name="version_summary">%1$s backend %2$s</string> + <string name="version_summary_checking">Checking %s backend version</string> + <string name="version_summary_unknown">Unknown %s version</string> + <string name="version_title">WireGuard for Android v%s</string> + <string name="vpn_not_authorized_error">VPN service not authorized by user</string> + <string name="vpn_start_error">Unable to start Android VPN service</string> + <string name="zip_export_error">Unable to export tunnels: %s</string> + <string name="zip_export_success">Saved to “%s”</string> + <string name="zip_export_summary">Zip file will be saved to downloads folder</string> + <string name="zip_export_title">Export tunnels to zip file</string> + <string name="biometric_prompt_zip_exporter_title">Authenticate to export tunnels</string> + <string name="biometric_prompt_private_key_title">Authenticate to view private key</string> + <string name="biometric_auth_error">Authentication failure</string> + <string name="biometric_auth_error_reason">Authentication failure: %s</string> +</resources> diff --git a/ui/src/main/res/values/styles.xml b/ui/src/main/res/values/styles.xml new file mode 100644 index 00000000..39c38247 --- /dev/null +++ b/ui/src/main/res/values/styles.xml @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources xmlns:android="http://schemas.android.com/apk/res/android"> + + <style name="WireGuardTheme.Toolbar" parent="Widget.Material3.Toolbar"> + <item name="android:background">?attr/colorSurface</item> + </style> + + <style name="AppThemeBase" parent="WireGuardTheme"> + <item name="materialCardViewStyle">@style/WireGuardTheme.MaterialCardView</item> + <item name="toolbarStyle">@style/WireGuardTheme.Toolbar</item> + <item name="bottomSheetDialogTheme">@style/WireGuardTheme.BottomSheetDialog</item> + <item name="android:statusBarColor">@null</item> + </style> + + <!-- Various additional API-specific features in values-v*/styles.xml --> + <style name="AppTheme" parent="AppThemeBase" /> + + <style name="WireGuardTheme.MaterialCardView" parent="Widget.Material3.CardView.Elevated"> + <item name="cornerRadius">4dp</item> + <item name="contentPadding">8dp</item> + </style> + + <style name="WireGuardTheme.BottomSheetDialog" parent="ThemeOverlay.Material3.BottomSheetDialog"> + <item name="android:windowIsFloating">false</item> + <item name="android:navigationBarColor">@android:color/transparent</item> + </style> + + <style name="NoBackgroundTheme" parent="AppTheme"> + <item name="android:windowIsTranslucent">true</item> + <item name="android:windowContentOverlay">@null</item> + <item name="android:windowNoTitle">true</item> + <item name="android:windowActionBar">false</item> + <item name="android:windowBackground">@android:color/transparent</item> + <item name="android:background">@android:color/transparent</item> + <item name="colorPrimaryDark">@android:color/transparent</item> + <item name="android:backgroundDimEnabled">true</item> + <item name="android:windowEnterAnimation">@android:anim/fade_in</item> + <item name="android:windowExitAnimation">@android:anim/fade_out</item> + </style> + + <style name="TvTheme" parent="AppTheme"> + <item name="windowActionBar">false</item> + <item name="windowNoTitle">true</item> + </style> +</resources> diff --git a/ui/src/main/res/values/themes.xml b/ui/src/main/res/values/themes.xml new file mode 100644 index 00000000..0153d346 --- /dev/null +++ b/ui/src/main/res/values/themes.xml @@ -0,0 +1,31 @@ +<resources> + + <style name="WireGuardTheme" parent="Theme.Material3.Light"> + <item name="colorPrimary">@color/md_theme_light_primary</item> + <item name="colorOnPrimary">@color/md_theme_light_onPrimary</item> + <item name="colorPrimaryContainer">@color/md_theme_light_primaryContainer</item> + <item name="colorOnPrimaryContainer">@color/md_theme_light_onPrimaryContainer</item> + <item name="colorSecondary">@color/md_theme_light_secondary</item> + <item name="colorOnSecondary">@color/md_theme_light_onSecondary</item> + <item name="colorSecondaryContainer">@color/md_theme_light_secondaryContainer</item> + <item name="colorOnSecondaryContainer">@color/md_theme_light_onSecondaryContainer</item> + <item name="colorTertiary">@color/md_theme_light_tertiary</item> + <item name="colorOnTertiary">@color/md_theme_light_onTertiary</item> + <item name="colorTertiaryContainer">@color/md_theme_light_tertiaryContainer</item> + <item name="colorOnTertiaryContainer">@color/md_theme_light_onTertiaryContainer</item> + <item name="colorError">@color/md_theme_light_error</item> + <item name="colorErrorContainer">@color/md_theme_light_errorContainer</item> + <item name="colorOnError">@color/md_theme_light_onError</item> + <item name="colorOnErrorContainer">@color/md_theme_light_onErrorContainer</item> + <item name="android:colorBackground">@color/md_theme_light_background</item> + <item name="colorOnBackground">@color/md_theme_light_onBackground</item> + <item name="colorSurface">@color/md_theme_light_surface</item> + <item name="colorOnSurface">@color/md_theme_light_onSurface</item> + <item name="colorSurfaceVariant">@color/md_theme_light_surfaceVariant</item> + <item name="colorOnSurfaceVariant">@color/md_theme_light_onSurfaceVariant</item> + <item name="colorOutline">@color/md_theme_light_outline</item> + <item name="colorOnSurfaceInverse">@color/md_theme_light_inverseOnSurface</item> + <item name="colorSurfaceInverse">@color/md_theme_light_inverseSurface</item> + <item name="colorPrimaryInverse">@color/md_theme_light_inversePrimary</item> + </style> +</resources> |