Compare commits

...

44 Commits
v0.7 ... v0.8

Author SHA1 Message Date
Moxie Marlinspike
d8cd09d46b Bumped version to 0.8 2012-11-03 14:36:49 -07:00
Moxie Marlinspike
09dcb9ac66 Updated translation files from Transifex 2012-10-31 18:18:45 -07:00
Moxie Marlinspike
acffda1ab8 formatting 2012-10-31 18:03:09 -07:00
Moxie Marlinspike
6b18f66e19 disambiguate send 2012-10-31 18:00:59 -07:00
Moxie Marlinspike
f26dbb2f34 disambiguate 2012-10-31 17:56:39 -07:00
Moxie Marlinspike
93c0fffc31 We need to force plaintext on key exchange messages. 2012-10-29 20:53:04 -07:00
Moxie Marlinspike
c5ed820590 Create DB indexes for optimized queries. 2012-10-29 18:01:09 -07:00
Moxie Marlinspike
3a9908b40d formatting 2012-10-29 17:34:14 -07:00
Moxie Marlinspike
187ec95817 Add collating support for group SMS/MMS messages.
1) When sending an SMS or MMS to multiple recipients, only show one
ConversationItem, but provide statistics on the number of recipients
delivered to.

2) Still break up the messages for secure and insecure messages.
2012-10-29 16:51:42 -07:00
Moxie Marlinspike
3a8d29e279 Major reorganization of view/model interactions.
Mostly, the inheritance graph for MessageRecord/MmsMessageRecord was
all messed up, and each class was overloaded for things it shouldn't
have been.

1) Broke MessageRecord/MmsMessageRecord up into: DisplayRecord, ThreadRecord,
MessageRecord, SmsMessageRecord, NotificationMmsMessageRecord, and
MediaMmsMessageRecord.

2) Updated all the adapters/views to keep pace with that change.
2012-10-28 18:24:21 -07:00
Moxie Marlinspike
0b3e939ac8 Improve support for "me" contact.
1) Add >= ICS profile support (the system-supported "me" contact).

2) Improve <= Gingerbread support for me contact by auto-detecting
contacts that have the same number as the SIM card.

3) Tie in identity key import/export support to the "me" contact.

4) Don't display a "me" selection option in preference if it can
be auto-detected.

5) Refactor out the ContactAccessorNewApi back into the base class.
2012-10-22 19:17:08 -07:00
Moxie Marlinspike
c13a3a8181 Fix "Group Threads" so that messages are encrypted when possible.
1) Change the MessageSender logic so that individual SMS messages
are encrypted whenever there is a secure session, unless the UI
explicitly specifies otherwise.

2) Change the MMS logic so that messages to a recipient with a
secure session are all sent individually, instead of including
those recipients into the batch plaintext message.
2012-10-21 17:41:44 -07:00
Moxie Marlinspike
1bd260b981 Improve UI for group SMS ConversationActivity
1) Change title to indicate it's a group message, and specify
the number of recipients.

2) Add an ActionBar icon to display a list of the recipients.
2012-10-21 14:34:09 -07:00
Moxie Marlinspike
05ce6d6cac Added Play Store description to strings file (for translation). 2012-10-15 19:58:16 -07:00
Moxie Marlinspike
e29993e48f Bump version to 0.7.4 2012-10-15 19:56:12 -07:00
Moxie Marlinspike
f2aa393974 Updated completed language translations. 2012-10-15 18:31:15 -07:00
Moxie Marlinspike
2c82e7b343 Updated PDU processing code.
The code we use for PDU parsing and composing comes straight from
the Android framework, but it's an internal API, so we duplicate
the code here.  These changes represent updates that have been
made as of the JB release.
2012-10-13 10:33:56 -07:00
Moxie Marlinspike
7beb8e489b Merge pull request #76 from thoughtbox/Localisation-change
Support translation of 'FWD' prefix.
2012-10-12 19:22:36 -07:00
Tor Houghton
73bde7accd Localisation change
Localisation of the message prefix when forwarding a message (in
Norwegian, this would be "VS:" for instance).
2012-10-12 12:00:34 +02:00
Tor Houghton
192ffb4d2f Ignore .DS_Store 2012-10-12 11:55:43 +02:00
Moxie Marlinspike
82f8ba3584 Removed tabs 2012-09-30 19:56:29 -07:00
Moxie Marlinspike
030b39cd9c Updated attachment selection dialog.
1) Added nice-looking holo-themed graphics for each attachment type.

2) Removed old un-scaled graphics.

3) Stringified the attachment types.
2012-09-30 18:58:40 -07:00
Moxie Marlinspike
3cf77b6fd0 Display contact icons correctly in MMS ConversationItems 2012-09-30 12:28:03 -07:00
Moxie Marlinspike
cf9dc51f31 Initial fixes for MMS retrieval.
1) Parse the APN information based on what the ConnectionManager
tells us.

2) Accept email addresses as a valid Recipient format.
2012-09-30 11:46:45 -07:00
Moxie Marlinspike
59e7226183 Support ant signing builds 2012-09-29 16:14:13 -07:00
Moxie Marlinspike
f743af32de javac wants us to be more explicit 2012-09-28 16:11:11 -07:00
Moxie Marlinspike
090068ea66 Update version to 0.7.3 for repackaging. 2012-09-28 14:31:15 -07:00
Moxie Marlinspike
1b6c9eb2c1 Bump version to 0.7.2 2012-09-27 21:54:08 -07:00
Moxie Marlinspike
a8b2f5f9ee Make lint happy. 2012-09-27 21:53:53 -07:00
Moxie Marlinspike
61b0f2aa8c Fix region encoding on resource directory names. 2012-09-27 21:39:03 -07:00
Moxie Marlinspike
ba033ab801 Added Transifex translations.
Supporting ~100% translation for:
1) Arabic
2) German
3) Spanish
4) Italian
5) Norwegian
2012-09-27 18:29:09 -07:00
Moxie Marlinspike
d98da6dc06 Merge pull request #71 from thoughtbox/Missing_localisation_strings
Missing localisation strings
2012-09-23 11:19:41 -07:00
Moxie Marlinspike
245afa5020 Merge pull request #70 from thoughtbox/Sparebank1_OTP
Fix for Sparebank1 OTP application
2012-09-22 15:15:58 -07:00
Tor Houghton
ff878c09db More localisation
I knew there were some I missed out.
2012-09-22 23:34:05 +02:00
Tor Houghton
46fb1b1db9 Fix for Sparebank1 OTP application
Now in its own branch. Dear $deity, hope this is correct.
2012-09-22 22:17:57 +02:00
Moxie Marlinspike
ba84059b67 Merge pull request #69 from thoughtbox/master
Localisation changes
2012-09-22 13:00:18 -07:00
Tor Houghton
b89a72dbeb Localisation commit
You know, it's much more fun listening to you in a lecture theatre. :-P

Right; any nit picks now might have to wait 3 weeks, depending on
available connectivity. Hope I did not screw this one up.
2012-09-22 21:53:56 +02:00
Moxie Marlinspike
ab4f25704d Merge pull request #64 from thoughtbox/patch-2
Update src/org/thoughtcrime/securesms/ConversationListFragment.java
2012-09-21 20:35:01 -07:00
thoughtbox
999ec7606c Update src/org/thoughtcrime/securesms/ConversationListFragment.java
Fix for removing notification when deleting an unread thread.
2012-09-21 08:34:57 +03:00
Moxie Marlinspike
bb0ec65744 Include source origin in string key name.
This should help eliminate string duplicates, as well as provide
visibility into where strings in a resource file are being used.
2012-09-19 19:56:04 -07:00
Moxie Marlinspike
faad1e57ea Resolved some duplicate strings 2012-09-17 19:27:53 -07:00
Moxie Marlinspike
00e2e62c10 Bump version to 0.7.1 2012-09-14 10:45:40 -07:00
Moxie Marlinspike
edb466ae86 Fix for self-photo lookup bug on 2.3 2012-09-14 10:45:11 -07:00
Moxie Marlinspike
6acf4ba3f6 Add note about translation to README 2012-09-13 20:50:31 -07:00
174 changed files with 6959 additions and 2941 deletions

3
.gitignore vendored
View File

@@ -9,3 +9,6 @@ TextSecure.iml
out
tests
lint.xml
local.properties
ant.properties
.DS_Store

View File

@@ -1,5 +1,7 @@
[main]
host = https://www.transifex.com
lang_map = fr_CA:fr-rCA,pt_BR:pt-rBR,pt_PT:pt,zh_CN:zh-rCN,zh_HK:zh-rHK,zh_TW:zh-rTW,da_DK:da-rDK,de_DE:de,fr_FR:fr,es_ES:es,hu_HU:hu,sv_SE:sv-rSE
[textsecure-official.master]
file_filter = res/values-<lang>/strings.xml

View File

@@ -1,32 +1,34 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="org.thoughtcrime.securesms"
android:versionCode="25"
android:versionName="0.7">
android:versionCode="30"
android:versionName="0.8">
<uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16"/>
<permission android:name="org.thoughtcrime.securesms.ACCESS_SECRETS"
android:label="Access to TextSecure Secrets"
android:protectionLevel="signature" />
android:label="Access to TextSecure Secrets"
android:protectionLevel="signature" />
<uses-permission android:name="org.thoughtcrime.securesms.ACCESS_SECRETS"></uses-permission>
<uses-permission android:name="android.permission.BROADCAST_WAP_PUSH"></uses-permission>
<uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_MMS"></uses-permission>
<uses-permission android:name="android.permission.READ_SMS"></uses-permission>
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_SMS"></uses-permission>
<uses-permission android:name="android.permission.VIBRATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_PROFILE"></uses-permission>
<uses-permission android:name="android.permission.WRITE_PROFILE"></uses-permission>
<uses-permission android:name="android.permission.BROADCAST_WAP_PUSH"></uses-permission>
<uses-permission android:name="android.permission.READ_CONTACTS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_CONTACTS"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission>
<uses-permission android:name="android.permission.RECEIVE_MMS"></uses-permission>
<uses-permission android:name="android.permission.READ_SMS"></uses-permission>
<uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
<uses-permission android:name="android.permission.WRITE_SMS"></uses-permission>
<uses-permission android:name="android.permission.VIBRATE"></uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application android:icon="@drawable/icon"
android:label="@string/app_name"
@@ -58,58 +60,58 @@
<activity android:name=".PassphraseCreateActivity"
android:theme="@style/Theme.Sherlock.Light.Dialog"
android:label="@string/create_passphrase"
android:label="@string/AndroidManifest__create_passphrase"
android:launchMode="singleInstance"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".PassphrasePromptActivity"
android:theme="@style/Theme.Sherlock.Light.Dialog"
android:label="@string/enter_passphrase"
android:label="@string/AndroidManifest__enter_passphrase"
android:launchMode="singleInstance"
android:windowSoftInputMode="stateVisible"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".ContactSelectionActivity"
android:label="@string/select_contacts"
android:label="@string/AndroidManifest__select_contacts"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".AutoInitiateActivity"
android:theme="@style/Theme.Sherlock.Light.Dialog"
android:label="@string/textsecure_detected"
android:label="@string/AndroidManifest__textsecure_detected"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".ViewIdentityActivity"
android:theme="@style/Theme.Sherlock.Light.Dialog"
android:label="@string/public_identity_key"
android:label="@string/AndroidManifest__public_identity_key"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".PassphraseChangeActivity"
android:theme="@style/Theme.Sherlock.Light.Dialog"
android:label="@string/change_passphrase2"
android:label="@string/AndroidManifest__change_passphrase"
android:launchMode="singleInstance"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".VerifyKeysActivity"
android:label="@string/verify_session"
android:label="@string/AndroidManifest__verify_session"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".VerifyIdentityActivity"
android:label="@string/verify_identity"
android:label="@string/AndroidManifest__verify_identity"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".SaveIdentityActivity"
android:theme="@style/Theme.Sherlock.Light.Dialog"
android:label="@string/save_identity"
android:label="@string/AndroidManifest__save_identity"
android:windowSoftInputMode="stateVisible"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".ReviewIdentitiesActivity"
android:label="@string/manage_identity_keys2"
android:label="@string/AndroidManifest__manage_identity_keys"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".ReceiveKeyActivity"
android:theme="@style/Theme.Sherlock.Light.Dialog"
android:label="@string/complete_key_exchange"
android:label="@string/AndroidManifest__complete_key_exchange"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<activity android:name=".ApplicationPreferencesActivity"
@@ -117,7 +119,7 @@
<activity android:name=".VerifyImportedIdentityActivity"
android:theme="@style/Theme.Sherlock.Light.Dialog"
android:label="@string/verify_imported_identity"
android:label="@string/AndroidManifest__verify_imported_identity"
android:configChanges="touchscreen|keyboard|keyboardHidden|orientation|screenLayout|screenSize"/>
<service android:enabled="true" android:name=".service.ApplicationMigrationService"/>

View File

@@ -32,6 +32,13 @@ whispersystems@lists.riseup.net
https://lists.riseup.net/www/info/whispersystems
Translation
------------
Interested in helping to translate TextSecure? Contribute here:
https://www.transifex.com/projects/p/textsecure-official/
Cryptography Notice
------------

25
build.xml Normal file
View File

@@ -0,0 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="TextSecure" default="help">
<property file="local.properties" />
<property file="ant.properties" />
<property environment="env" />
<condition property="sdk.dir" value="${env.ANDROID_HOME}">
<isset property="env.ANDROID_HOME" />
</condition>
<loadproperties srcFile="project.properties" />
<fail
message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable."
unless="sdk.dir"
/>
<import file="custom_rules.xml" optional="true" />
<!-- version-tag: 1 -->
<import file="${sdk.dir}/tools/ant/build.xml" />
</project>

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 858 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 869 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 680 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 723 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

View File

@@ -12,7 +12,7 @@
android:layout_marginTop="5dip"
android:layout_marginBottom="5dip"
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session"/>
android:text="@string/auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session"/>
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
@@ -28,11 +28,11 @@
<Button android:id="@+id/initiate_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/initiate_exchange"
android:text="@string/auto_initiate_activity__initiate_exchange"
android:gravity="center"/>
<Button android:id="@+id/cancel_button"
android:text="@string/cancel"
android:text="@android:string/cancel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"/>

View File

@@ -13,7 +13,7 @@
<TextView
android:padding="3dip"
android:text="@string/old_passphrase"
android:text="@string/change_passphrase_activity__old_passphrase"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
@@ -27,7 +27,7 @@
<TextView
android:padding="3dip"
android:text="@string/new_passphrase"
android:text="@string/change_passphrase_activity__new_passphrase"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceMedium" />
@@ -43,7 +43,7 @@
android:padding="3dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/repeat_new_passphrase"
android:text="@string/change_passphrase_activity__repeat_new_passphrase"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
@@ -74,7 +74,7 @@
android:layout_height="wrap_content"
android:layout_marginLeft="16dip"
android:layout_marginRight="15dip"
android:text="@string/cancel" />
android:text="@android:string/cancel" />
<Button
android:id="@+id/ok_button"

View File

@@ -16,7 +16,7 @@
<TextView android:id="@+id/emptyText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/no_contacts"
android:text="@string/contact_selection_group_activity__no_contacts"
android:textSize="20sp"
android:textColor="?android:attr/textColorSecondary"
android:paddingLeft="10dip"

View File

@@ -16,7 +16,7 @@
<TextView android:id="@+id/emptyText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/no_contacts"
android:text="@string/contact_selection_group_activity__no_contacts"
android:textSize="20sp"
android:textColor="?android:attr/textColorSecondary"
android:paddingLeft="10dip"

View File

@@ -18,7 +18,7 @@
<TextView android:id="@+id/emptyText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/no_recent_calls"
android:text="@string/contact_selection_recent_activity__no_recent_calls"
android:textSize="20sp"
android:textColor="?android:attr/textColorSecondary"
android:paddingLeft="10dip"

View File

@@ -64,7 +64,7 @@
style="?android:attr/buttonStyleSmall"
android:layout_width="100dip"
android:layout_height="50dip"
android:text="@string/remove" />
android:text="@string/conversation_activity__remove" />
</LinearLayout>
@@ -94,7 +94,7 @@
android:autoText="true"
android:capitalize="sentences"
android:nextFocusRight="@+id/send_button"
android:hint="@string/type_message"
android:hint="@string/conversation_activity__type_message"
android:maxLines="4"
android:inputType="textShortMessage|textAutoCorrect|textCapSentences|textMultiLine"
android:imeOptions="actionSend|flagNoEnterAction"
@@ -107,7 +107,7 @@
android:layout_height="fill_parent"
android:layout_gravity="center_vertical"
android:nextFocusLeft="@+id/embedded_text_editor"
android:text="@string/send2"
android:text="@string/conversation_activity__send"
android:padding="8dip"
/>
</LinearLayout>

View File

@@ -8,7 +8,7 @@
<TextView
android:id="@+id/title"
android:text="@string/batch_selection_mode"
android:text="@string/conversation_fragment_cab__batch_selection_mode"
android:maxLines="1"
android:singleLine="true"
android:layout_gravity="center_vertical"

View File

@@ -77,7 +77,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="Download"
android:text="@string/conversation_item_received__download"
android:visibility="gone" />
<TextView android:id="@+id/mms_label_downloading"
@@ -86,21 +86,39 @@
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:gravity="center"
android:text="Downloading"
android:text="@string/conversation_item_received__downloading"
android:visibility="gone" />
</LinearLayout>
<TextView android:id="@+id/conversation_item_date"
android:autoLink="all"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:linksClickable="false"
android:textAppearance="?android:attr/textAppearanceSmall"
android:gravity="left"
android:textColor="#ffcccccc"
android:paddingTop="1dip"/>
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="left">
<TextView android:id="@+id/group_message_status"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:linksClickable="false"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_gravity="left"
android:textColor="#ffcccccc"
android:visibility="gone"
android:layout_marginRight="8dip"
android:paddingTop="1dip"/>
<TextView android:id="@+id/conversation_item_date"
android:autoLink="all"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:linksClickable="false"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_gravity="left"
android:textColor="#ffcccccc"
android:paddingTop="1dip"/>
</LinearLayout>
</LinearLayout>
<LinearLayout android:id="@+id/indicators_parent"

View File

@@ -99,7 +99,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="Download"
android:text="@string/conversation_item_sent__download"
android:visibility="gone" />
<TextView android:id="@+id/mms_label_downloading"
@@ -108,21 +108,40 @@
android:layout_marginLeft="5dp"
android:layout_marginRight="5dp"
android:gravity="center"
android:text="Downloading"
android:text="@string/conversation_item_sent__downloading"
android:visibility="gone" />
</LinearLayout>
<TextView android:id="@+id/conversation_item_date"
android:autoLink="all"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:linksClickable="false"
android:textAppearance="?android:attr/textAppearanceSmall"
android:gravity="right"
android:textColor="#ffcccccc"
android:paddingTop="1dip"/>
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="right">
<TextView android:id="@+id/group_message_status"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:linksClickable="false"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_gravity="right"
android:textColor="#ffcccccc"
android:visibility="gone"
android:layout_marginRight="8dip"
android:paddingTop="1dip"/>
<TextView android:id="@+id/conversation_item_date"
android:autoLink="all"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:linksClickable="false"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_gravity="right"
android:textColor="#ffcccccc"
android:paddingTop="1dip"/>
</LinearLayout>
</LinearLayout>
<view xmlns:android="http://schemas.android.com/apk/res/android"

View File

@@ -12,14 +12,14 @@
android:paddingRight="16dip"
android:orientation="vertical">
<TextView android:text="@string/please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase"
<TextView android:text="@string/create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dip"
android:layout_marginBottom="10dip"/>
<TextView android:text="@string/passphrase"
<TextView android:text="@string/create_passphrase_activity__passphrase"
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
@@ -37,7 +37,7 @@
android:textAppearance="?android:attr/textAppearanceMedium"
android:layout_marginBottom="5dip"
android:layout_marginTop="10dip"
android:text="@string/repeat"/>
android:text="@string/create_passphrase_activity__repeat"/>
<EditText
android:layout_height="wrap_content"
@@ -57,7 +57,7 @@
<TableRow>
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="@string/cancel"
android:text="@android:string/cancel"
android:id="@+id/cancel_button"
android:layout_marginRight="15dip"
android:layout_marginLeft="16dip"/>

View File

@@ -16,7 +16,7 @@
android:singleLine="true"
android:ellipsize="marquee"
android:fadingEdge="horizontal"
android:text="@string/passphrase_cached"
android:text="@string/KeyCachingService_passphrase_cached"
/>
<TextView android:id="@+id/text2"
@@ -28,7 +28,7 @@
android:singleLine="true"
android:fadingEdge="horizontal"
android:ellipsize="marquee"
android:text="@string/textsecure_passphrase_cached"
android:text="@string/KeyCachingService_textsecure_passphrase_cached"
/>
</LinearLayout>

View File

@@ -23,7 +23,7 @@
<TableRow>
<Button android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:text="@string/cancel"
android:text="@android:string/cancel"
android:id="@+id/cancel_button"
android:layout_marginRight="15dip"
android:layout_marginLeft="16dip"/>

View File

@@ -30,21 +30,21 @@
<Button android:id="@+id/verify_session_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/session"
android:text="@string/receive_key_activity__session"
android:visibility="gone"
android:gravity="center" />
<Button android:id="@+id/verify_identity_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/identities"
android:text="@string/receive_key_activity__identities"
android:visibility="gone"
android:gravity="center" />
<Button android:id="@+id/ok_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/complete_exchange"
android:text="@string/receive_key_activity__complete_exchange"
android:gravity="center"/>
<Button android:id="@+id/cancel_button"

View File

@@ -16,7 +16,7 @@
android:capitalize="sentences"
android:autoText="true"
android:singleLine="true"
android:hint="@string/to"
android:hint="@string/recipients_panel__to"
android:paddingRight="45dip"
android:textColor="#000000"
android:layout_width="fill_parent"/>

View File

@@ -17,7 +17,7 @@
<TextView android:id="@id/android:empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/you_don_t_currently_have_any_identity_keys_in_your_trust_database"
android:text="@string/review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database"
android:textAppearance="?android:attr/textAppearanceMedium"
android:padding="20dip" />

View File

@@ -12,7 +12,7 @@
android:layout_marginLeft="16dip"
android:layout_marginRight="16dip"
android:layout_marginTop="5dip"
android:text="@string/identity_name"
android:text="@string/save_identity_activity__identity_name"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
@@ -43,7 +43,7 @@
android:layout_height="wrap_content"
android:layout_marginLeft="16dip"
android:layout_marginRight="15dip"
android:text="@string/cancel" />
android:text="@android:string/cancel" />
<Button
android:id="@+id/ok_button"

View File

@@ -14,7 +14,7 @@
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/their_identity_they_read"
android:text="@string/verify_identity_activity__their_identity_they_read"
android:padding="7dip" />
<TextView
@@ -29,7 +29,7 @@
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/your_identity_you_read"
android:text="@string/verify_identity_activity__your_identity_you_read"
android:textAppearance="?android:attr/textAppearanceLarge"
android:padding="7dip" />

View File

@@ -10,7 +10,7 @@
<TableRow>
<TextView
android:textSize="12sp"
android:text="@string/identity_name_n"
android:text="@string/verify_import_identity_activity__identity_name_n"
android:padding="3dip" />
<EditText
android:id="@+id/identity_name"
@@ -22,7 +22,7 @@
<TableRow>
<TextView
android:textSize="12sp"
android:text="@string/imported_identity_n"
android:text="@string/verify_import_identity_activity__imported_identity_n"
android:padding="3dip" />
<TextView
android:textSize="20sp"
@@ -43,19 +43,19 @@
android:padding="15dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/verified5"/>
android:text="@string/verify_import_identity_activity__verified"/>
<Button android:id="@+id/compare_button"
android:padding="15dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/compare5"/>
android:text="@string/verify_import_identity_activity__compare"/>
<Button android:id="@+id/cancel_button"
android:padding="15dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/cancel" />
android:text="@android:string/cancel" />
</LinearLayout>
</TableRow>

View File

@@ -14,7 +14,7 @@
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/they_read_this"
android:text="@string/verify_keys_activity__they_read_this"
android:padding="7dip" />
<TextView
@@ -31,7 +31,7 @@
android:layout_height="wrap_content"
android:layout_width="fill_parent"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="@string/you_read_this"
android:text="@string/verify_keys_activity__you_read_this"
android:padding="7dip" />
<TextView

View File

@@ -12,7 +12,7 @@
<TableRow>
<TextView
android:textAppearance="?android:attr/textAppearanceMedium"
android:text="@string/identity5"
android:text="@string/view_identity_activity__identity"
android:layout_marginRight="7dip" />
<TextView
android:textAppearance="?android:attr/textAppearanceLarge"
@@ -34,7 +34,7 @@
android:padding="5dip"
android:layout_width="100dip"
android:layout_height="wrap_content"
android:text="@string/qr_code" />
android:text="@string/view_identity_activity__qr_code" />
<Button android:id="@+id/ok_button"
android:layout_margin="10dip"

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_finished"
<item android:title="@string/contact_selection__menu_finished"
android:id="@+id/menu_selection_finished"
android:icon="@drawable/ic_menu_done_holo_dark"
android:showAsAction="ifRoom"

View File

@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_select_all"
<item android:title="@string/contact_selection_list__menu_select_all"
android:id="@+id/menu_select_all" />
<item android:title="@string/menu_unselect_all"
<item android:title="@string/contact_selection_list__menu_unselect_all"
android:id="@+id/menu_unselect_all" />
</menu>

View File

@@ -1,11 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_add_attachment"
<item android:title="@string/conversation__menu_add_attachment"
android:id="@+id/menu_add_attachment"
android:icon="@drawable/ic_menu_attach" />
<item android:title="@string/menu_delete_thread"
<item android:title="@string/conversation__menu_delete_thread"
android:id="@+id/menu_delete_thread"
android:icon="@android:drawable/ic_menu_delete" />

View File

@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_send_unencrypted"
<item android:title="@string/conversation_button_context__menu_send_unencrypted"
android:id="@+id/menu_context_send_unencrypted" />
</menu>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_call"
<item android:title="@string/conversation_callable__menu_call"
android:id="@+id/menu_call"
android:icon="@drawable/ic_menu_call"
android:showAsAction="ifRoom" />

View File

@@ -1,14 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_copy_text"
<item android:title="@string/conversation_context__menu_copy_text"
android:id="@+id/menu_context_copy" />
<item android:title="@string/menu_delete_message"
<item android:title="@string/conversation_context__menu_delete_message"
android:id="@+id/menu_context_delete_message" />
<item android:title="@string/menu_message_details"
<item android:title="@string/conversation_context__menu_message_details"
android:id="@+id/menu_context_details" />
<item android:title="@string/menu_forward_message"
<item android:title="@string/conversation_context__menu_forward_message"
android:id="@+id/menu_context_forward" />
</menu>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/convesation_group_options__recipients_list"
android:id="@+id/menu_group_recipients"
android:icon="@drawable/ic_groups_holo_dark"
android:showAsAction="ifRoom" />
</menu>

View File

@@ -5,7 +5,7 @@
android:icon="@drawable/ic_menu_lock_holo_dark"
android:showAsAction="ifRoom">
<menu>
<item android:title="@string/menu_start_secure_session"
<item android:title="@string/conversation_insecure__menu_start_secure_session"
android:id="@+id/menu_start_secure_session" />
</menu>

View File

@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_search"
<item android:title="@string/conversation_list__menu_search"
android:id="@+id/menu_search"
android:icon="@drawable/ic_menu_search_holo_dark"
android:actionViewClass="android.widget.SearchView"

View File

@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_delete_selected"
<item android:title="@string/conversation_list_batch__menu_delete_selected"
android:id="@+id/menu_delete_selected"
android:icon="@drawable/ic_menu_trash_holo_dark"
android:showAsAction="ifRoom" />
<item android:title="@string/menu_select_all"
<item android:title="@string/conversation_list_batch__menu_select_all"
android:id="@+id/menu_select_all"
android:icon="@drawable/ic_menu_selectall_holo_dark" />

View File

@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_security"
<item android:title="@string/conversation_secure_verified__menu_security"
android:id="@+id/menu_security"
android:icon="@drawable/ic_menu_lock_unverified_holo_dark"
android:showAsAction="ifRoom">
<menu>
<item android:title="@string/menu_verify_session"
<item android:title="@string/conversation_secure_verified__menu_verify_session"
android:id="@+id/menu_verify_session" />
<item android:title="@string/menu_verify_recipient"
<item android:title="@string/conversation_secure_verified__menu_verify_recipient"
android:id="@+id/menu_verify_recipient"/>
<item android:title="@string/menu_abort_secure_session"
<item android:title="@string/conversation_secure_verified__menu_abort_secure_session"
android:id="@+id/menu_abort_session"/>
</menu>

View File

@@ -1,17 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_security"
<item android:title="@string/conversation_secure_verified__menu_security"
android:id="@+id/menu_security"
android:icon="@drawable/ic_menu_lock_verified_holo_dark"
android:showAsAction="ifRoom">
<menu>
<item android:title="@string/menu_verify_session"
<item android:title="@string/conversation_secure_verified__menu_verify_session"
android:id="@+id/menu_verify_session" />
<item android:title="@string/menu_verify_recipient"
<item android:title="@string/conversation_secure_verified__menu_verify_recipient"
android:id="@+id/menu_verify_recipient"/>
<item android:title="@string/menu_abort_secure_session"
<item android:title="@string/conversation_secure_verified__menu_abort_secure_session"
android:id="@+id/menu_abort_session"/>
</menu>

View File

@@ -1,16 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_compare"
<item android:title="@string/key_scanning__menu_compare"
android:id="@+id/menu_barcode"
android:icon="@drawable/ic_menu_barcode"
android:showAsAction="ifRoom">
<menu>
<item android:title="@string/menu_scan_to_compare"
<item android:title="@string/key_scanning__menu_scan_to_compare"
android:id="@+id/menu_scan"/>
<item android:title="@string/menu_get_scanned_to_compare"
<item android:title="@string/key_scanning__menu_get_scanned_to_compare"
android:id="@+id/menu_get_scanned"/>
</menu>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_unlock"
<item android:title="@string/text_secure_locked__menu_unlock"
android:id="@+id/menu_unlock"
android:showAsAction="ifRoom" />

View File

@@ -1,28 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_new_message"
<item android:title="@string/text_secure_normal__menu_new_message"
android:id="@+id/menu_new_message"
android:icon="@drawable/ic_menu_msg_compose_holo_dark"
android:showAsAction="ifRoom" />
<item android:title="@string/menu_settings"
<item android:title="@string/text_secure_normal__menu_settings"
android:id="@+id/menu_settings"
android:icon="@android:drawable/ic_menu_preferences" />
<item android:title="@string/menu_import_export"
<item android:title="@string/text_secure_normal__menu_import_export"
android:icon="@android:drawable/ic_menu_save">
<menu>
<item android:title="@string/menu_import"
<item android:title="@string/text_secure_normal__menu_import"
android:id="@+id/menu_import"
android:icon="@android:drawable/ic_menu_revert" />
<item android:title="@string/menu_export"
<item android:title="@string/text_secure_normal__menu_export"
android:id="@+id/menu_export"
android:icon="@android:drawable/ic_menu_save" />
</menu>
</item>
<item android:title="@string/menu_clear_passphrase"
<item android:title="@string/text_secure_normal__menu_clear_passphrase"
android:id="@+id/menu_clear_passphrase"
android:icon="@android:drawable/ic_menu_close_clear_cancel" />

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="@string/menu_verified"
<item android:title="@string/verify_keys__menu_verified"
android:id="@+id/menu_session_verified"
android:icon="@drawable/ic_menu_done_holo_dark"
android:showAsAction="ifRoom" />

362
res/values-ar/strings.xml Normal file
View File

@@ -0,0 +1,362 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="app_name">تكت سيكيور</string>
<string name="yes">نعم</string>
<string name="no">لا</string>
<string name="delete">حذف</string>
<!--ApplicationExportManager-->
<string name="ApplicationExportManager_import_database_and_settings_title">استيراد قاعدة البيانات و الاعدادات؟</string>
<string name="ApplicationExportManager_import_database_and_settings_message">استيراد قاعدة البيانات و المفاتيح و الاعدادات من كرت الذاكرة؟\n\nتحذير: سيتم تغيير الرسائل و المفاتييح و الاعدادات!</string>
<string name="ApplicationExportManager_importing_database_and_keys">استيراد قاعدة البيانات و المفاتيح</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">يتم استيراد قاعدة البيانات و المفاتيح و الاعدادات...</string>
<string name="ApplicationExportManager_export_database_question">تصدير قاعدة البيانات؟</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">تصدير قاعدة البيانات و المفاتيح و الاعدادات لكرت الذاكرة؟</string>
<string name="ApplicationExportManager_exporting_database_and_keys">تصدير قاعدة البيانات و المفاتيح</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">يتم تصدير قاعدة بيانات الرسائل و المفاتيح و الاعدادات..</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">لا يوجد أي كرت ذاكرة</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">خطأ أثناء التصدير لكرت الذاكرة</string>
<string name="ApplicationExportManager_import_successful_exclamation">تم الاستيراد بنجاح</string>
<string name="ApplicationExportManager_export_successful_exclamation">تم التصدير بنجاح</string>
<string name="ApplicationExportManager_import">استيراد</string>
<string name="ApplicationExportManager_export">تصدير</string>
<!--ApplicationMigrationManager-->
<string name="ApplicationMigrationManager_migrating_database">نقل قواعد البيانات</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">يتم الان نقل قواعد بيانات رسائلك القصيرة...</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">هل أنقل الرسائل القصيرة المخزنة بالنظام لديك؟</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">النسخة الحالية من تكست سيكيور تستخدم قاعدة بيانات مشفرة للرسائل القصيرة تختلف عن قاعدة البيانات العادية بالنظام للرسائل القصيرة. هل تريد نسخ الرسائل القصيرة من النظام إلى قاعدة بيانات تكست سيكيور المشفرة؟ لن تتأثر قاعدة البيانات الأصلية بنظامك.</string>
<string name="ApplicationMigrationManager_copy">انسخ</string>
<string name="ApplicationMigrationManager_dont_copy">لا تنسخ</string>
<!--ApplicationPreferencesActivity-->
<string name="ApplicationPreferenceActivity_not_found_exclamation">غير موجود!</string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">لا يوجد مفتاح هوية صالح لجهة الاتصال المحددة</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">لا يوجد لديك مفتاح هوية</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">لم تحدد بعد ملف اتصال خاص بك. اختر واحداً من قائمة الاعدادات.</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">تم التصدير إلى قائمة جهات الاتصال!</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">يجب عليك إدخال العبارة السرية قبل استيراد المفاتيح السرية</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">يجب عليك إدخال العبارة السرية قبل ضبط المفاتيح السرية</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">لم تقم بتحديد عبارة سرية بعد!</string>
<!--AttachmentTypeSelectorAdapter-->
<!--ConversationItem-->
<string name="ConversationItem_message_size_d_kb">حجم الرسالة: %d كيلوبايت</string>
<string name="ConversationItem_expires_s">تاريخ الانتهاء: %s</string>
<string name="ConversationItem_error_sending_message">خطأ بالارسال</string>
<string name="ConversationItem_sending">ارسال...</string>
<string name="ConversationItem_saving_attachment">حفظ الإضافة</string>
<string name="ConversationItem_saving_attachment_to_sd_card">حفظ الإضافة على كرت الذاكرة</string>
<string name="ConversationItem_save_to_sd_card">حفظ على كرت الذاكرة؟</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">تم حفظ هذه الوسائط بقاعدة بيانات مشفرة. النسخة التي تريد حفظها بكرت الذاكرة لن تكون مشفرة.هل تريد الاستمرار؟</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">خطأ أثناء حفظ الاضافات على كرت الذاكرة!</string>
<string name="ConversationItem_success_exclamation">نجحت!</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">غير قادر على الكتابة على كرت الذاكرة!</string>
<string name="ConversationItem_view_secure_media_question">عرض الوسائط المشفرة؟</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">تم حفظ هذه الوسائط بقاعدة بيانات مشفرة. لعرضها بمصدر عرض خارجي، يجب أن يتم فك تشفيرها و تخزينها مؤقتاً بالذاكرة. هل تريد الاستمرار؟</string>
<string name="ConversationItem_key_exchange_message">رسالة تبادل المفاتيح</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">تم استقبال و معالجة رسالة تبادل المفاتيح</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">خطأ، تم استقبال رسالة تبادل مفاتيح غير صالحة</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">تم استقبال رسالة تبادل مفاتيح، اضغط للمعالجة</string>
<!--ConversationActivity-->
<string name="ConversationActivity_initiate_secure_session_question">هل أفتح قناة تشفير؟</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">فتح قناة تشفير مع %s ؟</string>
<string name="ConversationActivity_abort_secure_session_confirmation">تأكيد انهاء قناة التشفير</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">هل أنت متأكد من انهاء قناة التشفير؟</string>
<string name="ConversationActivity_delete_thread_confirmation">تأكيد حذف المحادثة</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">هل تريد حقاَ حذف هذه المحادثة نهائياً؟</string>
<string name="ConversationActivity_add_attachment">إضافات</string>
<string name="ConversationActivity_compose_message">كتابة رسالة</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">عذراً، حصل خطأ أثناء رفع إضافتك</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">عذراً، حجم هذا الفيديو يزيد عن الحد المسموح بالرسالة.</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">عذراً، حجم هذا التسجيل يزيد عن الحد المسموح بالرسالة.</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">الطرف الآخر ليس رقم هاتف أو عنوان بريد الكتروني صحيح!</string>
<string name="ConversationActivity_message_is_empty_exclamation">الرسالة فارغة</string>
<!--ConversationFragment-->
<string name="ConversationFragment_message_details">تفاصيل الرسالة</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">المرسل: %1$s\nالاتصال: %2$s\nارسال/استقبال: %3$s</string>
<string name="ConversationFragment_confirm_message_delete">تأكيد حذف الرسالة</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">هل أنت متأكد من حذف هذه الرسالة نهائياً؟</string>
<!--ConversationListAdapter-->
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">الرسالة مشفرة، أدخل العبارة السرية لفك التشفير...</string>
<string name="ConversationListAdapter_key_exchange_message">رسالة تبادل المفاتيح</string>
<!--ConversationListFragment-->
<string name="ConversationListFragment_delete_threads_question">حذف المحادثة؟</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">هل تريد حذف كل المحادثات المختارة نهائياَ؟</string>
<!--ConversationListItem-->
<string name="ConversationListItem_key_exchange_message">رسالة تبادل المفاتيح</string>
<!--KeyScanningActivity-->
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">لم يتم العثور على مفتاح!</string>
<!--PassphraseChangeActivity-->
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">العبارة السرية غير متطابقة!</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">العبارة السرية القديمة غير صحيحة!</string>
<!--PassphraseCreateActivity-->
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">العبارة السرية غير متطابقة!</string>
<string name="PassphraseCreateActivity_generating_keypair">إنشاء زوج مفاتيح سرية</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">إنشاء زوج مفاتيح تشفير محلي</string>
<!--PassphrasePromptActivity-->
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">عبارة سرية غير صحيحة!</string>
<!--ReceiveKeyActivity-->
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">خطأ:\n\nلقد استقبلت مفتاح عام خطأ. لا يمكن الاستمرار بهذا المفتاح، من فضلك أعد بدء قناة التشفير</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">خطأ:\n\nلقد استقبلت مفتاح عام من نوعية غير مدعومة، لا يمكن الاستمرار. من فضلك أعد بدء قناة التشفير.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">رسالة تبادل المفاتيح هذه لا تحتوي على توقيع هوية الكترونية.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">رسالة تبادل المفاتيح هذه تحتوي على توقيع هوية الكترونية، لكنك لا تثق بها.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">رسالة تبادل المفاتيح هذه تحتوي على توقيع هوية الكترونية موثوق بها و تخص: %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">هذه هو المفتاح الذي أرسلته لبدء قناة التشفير %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">هذه هو المفتاح الذي استقبلته لبدء قناة التشفير %s</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">لقد استقبلت رسالة تبادل مفاتيح من %s.\n\nتحذير: يوجد لديك قناة تشفير مفتوحة مع جهة الاتصال هذه. اذا قبلت برسالة تبادل المفاتيح هذه، فستقوم بإنهاء قناة التشفير الحالية و ستحتاج لإعادة فتحها و التحقق منها. هل تود إكمال عملية تبادل المفاتيح؟</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">لقد استقبلت رسالة تبادل مفاتيح من %s. لقد قمت مسبقاً ببدء قناة تشفير مع جهة الاتصال هذه، و بقبولك لهذا المفتاح سوف تقوم بإكمال تبادل مفاتيح التشفير. هل تود إكمال عملية تبادل المفاتيح؟</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">لقد قمت بإرسال رسالة تبادل مفاتيح مع %s و لكنك لم تحصل على رد حتى الان.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">لقد استقبلت رسالة تبادل مفاتيح من %s . لا يوجد لديك قنوات تشفير حالية مع جهة الاتصال هذه، هل تريد اكمال عملية تبادل المفاتيح؟</string>
<!--ReviewIdentitiesActivity-->
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">غير قادر على عرض مفتاح الهوية المحتوي على أخطاء!</string>
<string name="ReviewIdentitiesActivity_delete_identity">حذف الهوية؟</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">هل أنت متأكد من حذف هذه الهوية نهائياً؟</string>
<string name="ReviewIdentitiesActivity_invalid_identity">هوية غير صالحة!</string>
<!--SaveIdentityActivity-->
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">يجب أن تحدد اسماً لهذه الهوية!</string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">اسم الهوية مكرر!</string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">يوجد مفتاح هوية خاص بهذا الاسم.</string>
<string name="SaveIdentityActivity_manage_identities">ضبط الهويات</string>
<!--VerifyIdentityActivity-->
<string name="VerifyIdentityActivity_mark_identity_verified_question">اعتبار التحقق من الهوية؟</string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">هل أنت متأكد من تحققك من هويات المستقبلين و تود اعتبارها مؤكدة؟</string>
<string name="VerifyIdentityActivity_mark_verified">اعتبار الهوية مؤكدة</string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">لا يوجد لديك مفتاح هوية!</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">لا يوجد لدى الطرف الاخر مفتاح هوية!</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">لا يوجد لدى الطرف الاخر مفتاح هوية!</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">قم بالمسح الضوئي لمفتاحهم للمقارنة</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">قم بالمسح الضوئي لمفتاحي</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">تحذير: المفتاح الذي تم مسحه ضوئياً لا يتطابق! تأكد من بصمة المفتاح بحذر.</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">لم يتم التحقق!</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">مفتاحهم صحيح. يجب أيضاً أن تقوم بالتحقق من مفتاحك لديهم أيضاً.</string>
<string name="VerifyIdentityActivity_verified_exclamation">تم التحقق!</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">لا يوجد لديك مفتاح هوية</string>
<!--VerifyImportedIdentityActivity-->
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">يجب أن تحدد إسماَ لجهة الاتصال هذه!</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">حفظ مفتاح الهوية؟</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">خطأ أثناء حفظ مفتاح الهوية!</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">يوجد مفتاح هوية مطابق لهذا المفتاح أو مفتاح هوية لهذا الاسم مسبقاً. قم بتعديل قاعدة بيانات مفاتيحك.</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">قم بالمسح الضوئي للمقارنة</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">قم بالمسح الضوئي للمقارنة</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">لم يتم التحقق!</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">تحذير: المفتاح الذي تم مسحه ضوئياً لا يتطابق!</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">المفتاح الذي تم مسحه ضوئياً متطابق!</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">تم التحقق!</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">هل تريد فعلاً اعتبار هذه الهوية صالحة لكل المحادثات بالمستقبل مع %s ؟ يجب أن تقوم بهذا فقط إذا تحققت من بصمة المفتاح.</string>
<!--VerifyKeysActivity-->
<string name="VerifyKeysActivity_mark_session_verified_question">اعتبار القناة مؤكدة؟</string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">هل أنت متأكد من تحققك لبصمات مفاتيحهم وتود أن توثق هذه المحادثة بأنها محققة؟</string>
<string name="VerifyKeysActivity_mark_verified">اعتبار الهوية مؤكدة</string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">قم بالمسح الضوئي لبصمة مفتاحي</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">قم بالمسح الضوئي لبصمة مفتاحهم</string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">تحذير: المفتاح الذي تم مسحه ضوئياً لا يتطابق! تأكد من بصمة المفتاح بحذر.</string>
<string name="VerifyKeysActivity_not_verified_exclamation">لم يتم التحقق!</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">مفتاحهم صحيح. يجب أيضاً أن تقوم بالمسح الضوئي لبصمة مفتاحك.</string>
<string name="VerifyKeysActivity_verified_exclamation">تم التحقق!</string>
<!--ViewIdentityActivity-->
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">لا يوجد لديك مفتاح هوية!</string>
<string name="ViewIdentityActivity_scan_to_compare">قم بالمسح الضوئي للمقارنة</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">قم بالمسح الضوئي للمقارنة</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">تحذير: المفتاح الذي تم مسحه ضوئياً لا يتطابق!</string>
<string name="ViewIdentityActivity_not_verified_exclamation">لم يتم التحقق!</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">المفتاح الذي تم مسحه ضوئياً متطابق!</string>
<string name="ViewIdentityActivity_verified_exclamation">تم التحقق!</string>
<!--KeyExchangeInitiator-->
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">البدء بالاتصال رغم وجود طلب مسبق؟</string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">لقد قمت بارسال طلب انشاء قناة اتصال مسبقاً لجهة الاتصال هذه، هل تريد ارسال طلب آخر؟ هذه العملية ستلغي الطلب السابق.</string>
<string name="KeyExchangeInitiator_send">ارسال</string>
<!--MessageDisplayHelper-->
<string name="MessageDisplayHelper_bad_encrypted_message">خطأ بالرسالة المشفرة...</string>
<string name="MessageDisplayHelper_decrypting_please_wait">انتظر، يتم فك التشفير...</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">الرسالة مشفرة دون وجود قناة اتصال...</string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">خطأ بفك التشفير: الرسالة غير صحيحة، شفرة التحقق لا تنطبق. احتمال تزوير للرسالة؟</string>
<!--MmsDatabase-->
<string name="MmsDatabase_connecting_to_mms_server"> الاتصال مع مزود خدمة رسالة الوسائط المتعددة...</string>
<string name="MmsDatabase_downloading_mms">تحميل رسالة الوسائط المتعددة...</string>
<string name="MmsDatabase_mms_download_failed">خطأ بتحميل رسالة الوسائط المتعددة!</string>
<string name="MmsDatabase_downloading">تحميل...</string>
<string name="MmsDatabase_anonymous">مجهول الهوية</string>
<!--MmsMessageRecord-->
<string name="MmsMessageRecord_decrypting_mms_please_wait">انتظر، يتم فك تشفير رسالة الوسائط المتعددة...</string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">خطأ بالرسالة المشفرة...</string>
<string name="MmsMessageRecord_mms_message_encrypted_for_non_existing_session">الرسالة مشفرة دون وجود قناة اتصال...</string>
<!--ApplicationMigrationService-->
<string name="ApplicationMigrationService_migrating">يتم النقل...</string>
<string name="ApplicationMigrationService_migrating_system_text_messages">يتم الان نقل قواعد بيانات رسائلك القصيرة...</string>
<!--KeyCachingService-->
<string name="KeyCachingService_textsecure_passphrase_cached">تم حفظ العبارة السرية مؤقتاً</string>
<string name="KeyCachingService_passphrase_cached">تم حفظ العبارة السرية مؤقتاً</string>
<!--MessageNotifier-->
<string name="MessageNotifier_d_new_messages">(%d) رسائل جديدة</string>
<string name="MessageNotifier_d_new_messages_most_recent_from_s">(%1$d) رسائل جديدة، آخر رسالة من: %2$s</string>
<string name="MessageNotifier_most_recent_from_s">آخر رسالة من: %s</string>
<!--auto_initiate_activity-->
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">وصلتك رسالة من شخص لديه القدرة على بدء قناة تشفير. هل تريد بدء قناة تشفير حتى يكون الاتصال سري و آمن؟</string>
<string name="auto_initiate_activity__initiate_exchange">البدء بتبادل المفاتيح</string>
<!--change_passphrase_activity-->
<string name="change_passphrase_activity__old_passphrase">العبارة السرية القديمة:</string>
<string name="change_passphrase_activity__new_passphrase">العبارة السرية الجديدة:</string>
<string name="change_passphrase_activity__repeat_new_passphrase">تكرار العبارة السرية الجديدة:</string>
<!--contact_selection_group_activity-->
<!--contact_selection_list_activity-->
<string name="contact_selection_group_activity__no_contacts">لا توجد جهات اتصال.</string>
<!--ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">اختيار من أجل</string>
<!--contact_selection_recent_activity-->
<string name="contact_selection_recent_activity__no_recent_calls">لا توجد مكالمات حديثة.</string>
<!--conversation_activity-->
<string name="conversation_activity__type_message">اكتب الرسالة</string>
<string name="conversation_activity__send">ارسال</string>
<string name="conversation_activity__remove">إزالة</string>
<!--conversation_fragment_cab-->
<string name="conversation_fragment_cab__batch_selection_mode">وضع الدفعات</string>
<!--create_passphrase_activity-->
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">الرجاء اختيار عبارة سرية ليتم استخدامها بتشفير البيانات المحلية. يجب أن تكون عبارة سرية قوية و صعبة التخمين.</string>
<string name="create_passphrase_activity__passphrase">العبارة السرية:</string>
<string name="create_passphrase_activity__repeat">تكرار:</string>
<!--receive_key_activity-->
<string name="receive_key_activity__session">قناة اتصال</string>
<string name="receive_key_activity__identities">الهويات</string>
<string name="receive_key_activity__complete_exchange">انهاء التبادل</string>
<!--recipients_panel-->
<string name="recipients_panel__to">إلى</string>
<!--review_identities-->
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">لا يوجد لديك أي مفاتيح هوية مسجلة</string>
<!--save_identity_activity-->
<string name="save_identity_activity__identity_name">اسم الهوية:</string>
<!--verify_identity_activity-->
<string name="verify_identity_activity__their_identity_they_read">هويتهم (كما يقرؤونها هم):</string>
<string name="verify_identity_activity__your_identity_you_read">هويتك (كما تقرأها أنت):</string>
<!--verify_import_identity_activity-->
<string name="verify_import_identity_activity__identity_name_n">اسم الهوية:\n</string>
<string name="verify_import_identity_activity__imported_identity_n">الهوية المستوردة:\n</string>
<string name="verify_import_identity_activity__verified">تم التحقق!</string>
<string name="verify_import_identity_activity__compare">قارن</string>
<!--verify_keys_activity-->
<string name="verify_keys_activity__they_read_this">هم يقرؤون:</string>
<string name="verify_keys_activity__you_read_this">أنت تقرأ:</string>
<!--view_identity_activity-->
<string name="view_identity_activity__identity">اسم الهوية:</string>
<string name="view_identity_activity__qr_code">كود QR</string>
<!--AndroidManifest.xml-->
<string name="AndroidManifest__create_passphrase">انشاء عبارة سرية</string>
<string name="AndroidManifest__enter_passphrase">ادخل العبارة السرية</string>
<string name="AndroidManifest__select_contacts">اختيار جهات الاتصال</string>
<string name="AndroidManifest__textsecure_detected">تم العثور على تكست سيكيور</string>
<string name="AndroidManifest__public_identity_key">مفتاح الهوية العام</string>
<string name="AndroidManifest__change_passphrase">غير العبارة السرية</string>
<string name="AndroidManifest__verify_session">تحقق من قناة الاتصال</string>
<string name="AndroidManifest__verify_identity">تحقق من الهوية</string>
<string name="AndroidManifest__save_identity">حفظ الهوية</string>
<string name="AndroidManifest__manage_identity_keys">إدارة مفاتيح الهوية</string>
<string name="AndroidManifest__complete_key_exchange">اكمال تبادل المفاتيح</string>
<string name="AndroidManifest__verify_imported_identity">تحقق من الهوية المستوردة</string>
<!--preferences.xml-->
<string name="preferences__use_settings">استخدم الاعدادات</string>
<string name="preferences__pref_all_sms_title">استخدام لكل الرسائل القصيرة</string>
<string name="preferences__pref_all_mms_title">استخدام لكل رسائل الوسائط المتعددة</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">استخدم تكست سيكيور لمشاهدة و حفظ كل الرسائل القصيرة الواردة</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">استخدم تكست سيكيور لمشاهدة وحفظ كل رسائل الوسائط المتعددة الواردة</string>
<string name="preferences__input_settings">خيارات الادخال</string>
<string name="preferences__pref_enter_sends_title">زر الرجوع Enter يرسل الرسالة</string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">ضغط مفتاح الرجوع Enter سيرسل الرسالة</string>
<string name="preferences__display_settings">اعدادات العرض</string>
<string name="preferences__choose_identity">اختر هوية</string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">اختر جهة الاتصال من القائمة</string>
<string name="preferences__encryption_settings">اعدادات التشفير</string>
<string name="preferences__change_passphrase">غير العبارة السرية</string>
<string name="preferences__change_my_passphrase">غير عبارتي السرية</string>
<string name="preferences__complete_key_exchanges">اكمال تبادل المفاتيح</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">أكمل تبادل المفاتيح اوتوماتيكياً لمحادثات جديدة او قديمة بنفس مفتاح الهوية</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">أضف وسم مسافة فارغة بنهاية كل رسالة غير مشفرة</string>
<string name="preferences__include_whitespace_tag">أضف وسم مسافة فارغة</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">وقع تبادل المفاتيح الكترونياً بمفتاح الهوية</string>
<string name="preferences__sign_key_exchange">وقع تبادل المفاتيح الكترونياً</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">انسى العبارة السرية من ذاكرة الجهاز بعد فترة</string>
<string name="preferences__timeout_passphrase">نسيان العبارة السرية بعد فترة</string>
<string name="preferences__pref_timeout_interval_dialogtitle">اختيار مدة حفظ العبارة السرية مؤقتاً</string>
<string name="preferences__pref_timeout_interval_title">مدة الصلاحية</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">الوقت اللازم ليتم مسح العبارة السرية من الذاكرة</string>
<string name="preferences__identity_key_settings">اعدادات مفتاح الهوية</string>
<string name="preferences__view_my_identity_key">اعرض مفتاح هويتي</string>
<string name="preferences__export_my_identity_key">تصدير مفتاح الهوية الخاص بي</string>
<string name="preferences__import_contacts_key">استيراد مفتاح خاص بجهة اتصال</string>
<string name="preferences__import_an_identity_key_from_a_contact">استيراد مفتاح هوية من جهة اتصال</string>
<string name="preferences__manage_identity_keys">إدارة مفاتيح الهوية</string>
<string name="preferences__manage_configured_identity_keys">إدارة مفاتيح الهوية التي تم ضبطها</string>
<string name="preferences__notification_settings">خيارات التنبيه</string>
<string name="preferences__notifications">التنبيهات</string>
<string name="preferences__display_message_notifications_in_status_bar">عرض تنبيهات الرسائل بشريط التنبيهات</string>
<string name="preferences__led_color">لون ضوء التنبيه LED</string>
<string name="preferences__change_notification_led_color">تغيير لون ضوء التنبيه LED</string>
<string name="preferences__pref_led_blink_title">اسلوب وميض LED</string>
<string name="preferences__change_notification_blink_pattern">تغيير اسلوب وميض تنبيهات LED</string>
<string name="preferences__pref_led_blink_dialogtitle">اختيار اسلوب وميض LED</string>
<string name="preferences__select_led_color">اختيار لون ضوء التنبيه LED</string>
<string name="preferences__select_ringtone">اختر نغمة</string>
<string name="preferences__vibrate">هزاز</string>
<string name="preferences__also_vibrate_when_notified">شغل الهزاز عند وصول تنبيه</string>
<string name="preferences__minutes">دقائق</string>
<string name="preferences__hours">ساعات</string>
<string name="preferences__green">أخضر</string>
<string name="preferences__red">أحمر</string>
<string name="preferences__blue">أزرق</string>
<string name="preferences__orange">برتقالي</string>
<string name="preferences__cyan">سماوي</string>
<string name="preferences__magenta">وردي</string>
<string name="preferences__fast">سريع</string>
<string name="preferences__normal">طبيعي</string>
<string name="preferences__slow">بطىء</string>
<string name="preferences__custom">مخصص</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->
<!--contact_selection_list-->
<string name="contact_selection_list__menu_select_all">اختيار الكل</string>
<string name="contact_selection_list__menu_unselect_all">إزالة اختيار الكل</string>
<!--contact_selection-->
<string name="contact_selection__menu_finished">تم الانتهاء</string>
<!--conversation_button_context-->
<string name="conversation_button_context__menu_send_unencrypted">أرسل من دون تشفير</string>
<!--conversation_callable-->
<string name="conversation_callable__menu_call">اتصال</string>
<!--conversation_context-->
<string name="conversation_context__menu_message_details">تفاصيل الرسالة</string>
<string name="conversation_context__menu_copy_text">نسخ النص</string>
<string name="conversation_context__menu_delete_message">مسح الرسالة</string>
<string name="conversation_context__menu_forward_message">إعادة ارسال الرسالة</string>
<!--conversation_insecure-->
<string name="conversation_insecure__menu_start_secure_session">بدء قناة تشفير</string>
<!--conversation_list_batch-->
<string name="conversation_list_batch__menu_delete_selected">امسح الاختيارات</string>
<string name="conversation_list_batch__menu_select_all">اختيار الكل</string>
<!--conversation_list-->
<string name="conversation_list__menu_search">بحث</string>
<!--conversation_secure_verified-->
<!--conversation_secure_unverified-->
<string name="conversation_secure_verified__menu_security">الأمن</string>
<string name="conversation_secure_verified__menu_verify_session">تحقق من قناة الاتصال</string>
<string name="conversation_secure_verified__menu_verify_recipient">تحقق من مستقبل الرسالة</string>
<string name="conversation_secure_verified__menu_abort_secure_session">انهاء قناة التشفير</string>
<!--conversation-->
<string name="conversation__menu_add_attachment">إضافات</string>
<string name="conversation__menu_delete_thread">مسح المحاذفة</string>
<string name="conversation__menu_compare">قارن</string>
<!--conversation_group_options-->
<!--key_scanning-->
<string name="key_scanning__menu_compare">قارن</string>
<string name="key_scanning__menu_get_scanned_to_compare">قم بالمسح الضوئي للمقارنة</string>
<string name="key_scanning__menu_scan_to_compare">قم بالمسح الضوئي للمقارنة</string>
<!--text_secure_locked-->
<string name="text_secure_locked__menu_unlock">فتح القفل</string>
<!--text_secure_normal-->
<string name="text_secure_normal__menu_new_message">رسالة جديدة</string>
<string name="text_secure_normal__menu_settings">الاعدادات</string>
<string name="text_secure_normal__menu_import_export">استيراد/تصدير</string>
<string name="text_secure_normal__menu_import">استيراد</string>
<string name="text_secure_normal__menu_export">تصدير</string>
<string name="text_secure_normal__menu_clear_passphrase">مسح العبارة السرية</string>
<!--verify_keys-->
<string name="verify_keys__menu_verified">تم التحقق!</string>
<!--Misc. piggybacking-->
<!--EOF-->
<string name="conversation_item_sent__download">تحميل</string>
<string name="conversation_item_received__download">تحميل</string>
</resources>

353
res/values-bo/strings.xml Normal file
View File

@@ -0,0 +1,353 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="app_name">འཕྲིན་ཐུང་བདེ་འཇགས།</string>
<string name="yes">གཏན་འཁེལ།</string>
<string name="no">རྩིས་མེད་གཏོང་།</string>
<string name="delete">སུབ།</string>
<!--ApplicationExportManager-->
<string name="ApplicationExportManager_import_database_and_settings_title">གཞི་གྲངས་དང་སྒྲིག་བཟོ་རྣམས་ནང་འཇུག་བྱེད་རྒྱུ་ཡིན་ནམ།</string>
<string name="ApplicationExportManager_import_database_and_settings_message">SD Card ནས་བདེ་འཇགས་འཕྲིན་ཐུང་གི་གཞི་གྲངས། ལྡེ་མིག་དང་སྒྲིག་བཟོ་རྣམས་ནང་འཇུག་བྱེད་རྒྱུ་ཡིན་ནམ།\nཉེན་བརྡ།: འདི་ཡིས་ད་ཡོད་འཕྲིན་ཐུང་དང་ལྡེ་མིག སྒྲིག་བཟོ་སོགས་གསུབ་གི་རེད།</string>
<string name="ApplicationExportManager_importing_database_and_keys">གཞི་གྲངས་དང་ལྡེ་མིག་རྣམས་ནང་འཇུག་བྱེད་བཞིན་ཡོད།</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">ཁྱོད་ཀྱི་འཕྲིན་ཐུང་གི་གཞི་གྲངས། ལྡེ་མིག་དང་སྒྲིག་བཟོ་རྣམས་ནང་འཇུག་བྱེད་བཞིན་ཡོད།</string>
<string name="ApplicationExportManager_export_database_question">གཞི་གྲངས་ཕྱིར་འདོན་བྱེད་རྒྱུ་ཡིན་ནམ།</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">SD Card ནས་བདེ་འཇགས་འཕྲིན་ཐུང་གི་གཞི་གྲངས། ལྡེ་མིག་དང་སྒྲིག་བཟོ་རྣམས་ཕྱིར་འདོན་བྱེད་རྒྱུ་ཡིན་ནམ།</string>
<string name="ApplicationExportManager_exporting_database_and_keys">གཞི་གྲངས་དང་ལྡེ་མིག་ཕྱིར་འདོན་བྱེད་བཞིན་ཡོད།</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">ཁྱོད་ཀྱི་འཕྲིན་ཐུང་གི་གཞི་གྲངས། ལྡེ་མིག་དང་སྒྲིག་བཟོ་རྣམས་ཕྱིར་འདོན་བྱེད་བཞིན་ཡོད།</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">SD Card མི་འདུག</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">SD Card ཕྱིར་འདོན་བྱེད་སྐབས་ནོར་འཁྲུལ་བྱུང་།</string>
<string name="ApplicationExportManager_import_successful_exclamation">ནང་འཇུག་གྲུབ་འབྲས་ལེགས་པོ་བྱུང་།</string>
<string name="ApplicationExportManager_export_successful_exclamation">ཕྱིར་འདོན་གྲུབ་འབྲས་ལེགས་པོ་བྱུང་།</string>
<string name="ApplicationExportManager_import">ནང་འཇུག་བྱོས།</string>
<string name="ApplicationExportManager_export">ཕྱིར་འདོན་བྱེད།</string>
<!--ApplicationMigrationManager-->
<string name="ApplicationMigrationManager_migrating_database">གཞི་གྲངས་གནས་སྤོས་བྱེད་བཞིན་་ཡོད།</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">འཕྲིན་ཐུང་གི་གཞི་གྲངས་གནས་སྤོས་བྱེད་བཞིན་་ཡོད།</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">མ་ལག་འཕྲིན་ཐུང་གི་གཞི་གྲངས་དེ་འདྲ་བཟོ་བྱེད་རྒྱུ་ཡིན་ནམ།</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">ཡི་གེའི་ཉེན་སྲུང་གི་པར་གཞི་དེས། གཏན་འཇགས་མ་ལག་གཞི་གྲངས་མཛོད་ལས་ལོགས་སུ་ཡིན་པའི་གསང་སྡོམ་གྱི་གཞི་གྲངས་མཛོད་ཞིག་བེད་སྤྱོད་གཏོང་གི་ཡོད། ཁྱེད་རང་སོ་སོའི་ད་ཡོད་འཕྲིན་ཐུང་རྣམས་བདེ་འཇགས་འཕྲིན་ཐུང་གི་གསང་སྡོམ་གྱི་གཞི་གྲངས་མཛོད་དེའི་ཁོངས་སུ་བཤུ་ན་འདོད་དམ། ཁྱེད་རང་གི་གཏན་འཇགས་མ་ལག་གི་གཞི་གྲངས་མཛོད་དེ་ནུས་མེད་ཆགས་གི་མ་རེད།</string>
<string name="ApplicationMigrationManager_copy">འདྲ་བཟོ་བྱེད།</string>
<string name="ApplicationMigrationManager_dont_copy">འདྲ་བཟོ་མ་བྱེད།</string>
<!--ApplicationPreferencesActivity-->
<string name="ApplicationPreferenceActivity_not_found_exclamation">རྙེད་མ་སོང་། </string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">འགྲེལ་བརྗོད་བྱས་པའི་འབྲེལ་གཏུག་ནས་ཁུངས་ཐུབ་པའི་ངོས་འཛིན་བྱེད་ཀྱི་ལྡེ་མིག་མི་རྙེད།</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">ཁྱེད་ལ་ངོས་འཛིན་བྱེད་ཀྱི་ལྡེ་མིག་མི་འདུག</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">ཁྱེད་ཀྱིས་འབྲེལ་ལམ་བྱ་ཡུལ་གསལ་བཤད་བྱས་མི་འདུག སྒྲིག་བཀོད་འདེམ་ཐོ་ལས་བདམས་པར་ཞུ༏</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">འབྲེལ་མིང་ཆ་ཚང་གཞི་གྲངས་མཛོད་ནང་ཕྱིར་འདོན་བྱས།</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">ཁྱོད་ཀྱིས་ལྡེ་མིག་ནང་འཇུག་མ་བྱས་སྔོན་ལ་གསང་གྲངས་འཇོག་དགོས།</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">ཁྱོད་ཀྱིས་ལྡེ་མིག་དོ་དམ་མ་བྱས་སྔོན་ལ་གསང་གྲངས་འཇོག་དགོས།</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">ཁྱོད་ཀྱིས་གསང་ཡིག་བཟོས་མི་འདུག</string>
<!--AttachmentTypeSelectorAdapter-->
<string name="AttachmentTypeSelectorAdapter_picture">འདྲ་པར།</string>
<string name="AttachmentTypeSelectorAdapter_video">བརྙན་པར།</string>
<!--ConversationItem-->
<string name="ConversationItem_message_size_d_kb">འཕྲིན་ཐུང་ཆ་ཚད།: %d KB</string>
<string name="ConversationItem_expires_s">དུས་ཚོད་རྫོགས།: %s</string>
<string name="ConversationItem_error_sending_message">གཏོང་བཞིན་པའི་འཕྲིན་ཐུང་དེར་ནོར་འཁྲུལ་ཞིག་འདུག </string>
<string name="ConversationItem_sending">གཏོང་བཞིན་ཡོད། </string>
<string name="ConversationItem_saving_attachment">ཟུར་སྣོན་ཉར་ཚགས་བྱེད་བཞིན་ཡོད།</string>
<string name="ConversationItem_saving_attachment_to_sd_card">SD card ནང་ཟུར་སྣོན་ཉར་ཚགས་བྱེད་བཞིན་ཡོད།</string>
<string name="ConversationItem_save_to_sd_card">SD card ནང་ཉར་ཚགས་བྱེད་རྒྱུ་ཡིན་ནམ།</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">བརྒྱུད་ལམ་འདི་གཞི་གྲངས་མཛོད་ཀྱི་གསང་སྡོམ་ཁོངས་སུ་ཉར་ཡོད་། ཁྱེད་ནས་ SD card ནང་དུ་ཉར་ཚགས་བྱས་བའི་པར་གཞི་དེ་གསང་སྡོམ་བྱས་མི་འདུག ཁྱེད་ནས་མུ་མཐུད་ན་འདོད་དམ།</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">SD Card ནང་ཟུར་སྣོན་ཉར་ཚགས་བྱེད་སྐབས་ནོར་འཁྲུལ་བྱུང་།</string>
<string name="ConversationItem_success_exclamation">གྲུབ་འབྲས་ལེགས།</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">SD Card ནང་འདྲ་བཤུས་བྱེད་མི་ཐུབ།</string>
<string name="ConversationItem_view_secure_media_question">ཉེན་སྲུང་ཡོད་པའི་སྨྱན་གཟུགས་ལ་བལྟ།</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">བརྒྱུད་ལམ་འདི་གཞི་གྲངས་མཛོད་ཀྱི་གསང་སྡོམ་ཁོངས་སུ་ཉར་ཡོད། Unfortunately, to view it with an external content viewer currently requires the data to be temporarily decrypted and written to disk. Are you sure that you would like to do this?</string>
<string name="ConversationItem_key_exchange_message">ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན།</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན་འབྱོར་བ་དང་ལས་སྣོན་བྱས།</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">ནོར་འཁྲུལ། ལྡེ་མིག་འབྱོར་བ་དེ་རྙིང་པ་རེད་འདུག</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན་འབྱོར་བྱུང་། ལས་སྣོན་བྱ་རྒྱུའི་སྒང་གནོན།</string>
<!--ConversationActivity-->
<string name="ConversationActivity_initiate_secure_session_question">བདེ་འཇགས་ཀྱི་གཏམ་གླེང་འགོ་བརྩམ་གྱི་ཡིན་ནམ།</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">%s དང་ལྷན་དུ་བདེ་འཇགས་ཀྱི་གཏམ་གླེང་འགོ་བརྩམ་གྱི་ཡིན་ནམ།</string>
<string name="ConversationActivity_abort_secure_session_confirmation">བདེ་འཇགས་གཏམ་གླེང་གི་ར་སྤྲོད་མཚམས་འཇོག</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">ཁྱོད་ཀྱིས་བདེ་འཇགས་གཏམ་དངོས་སུ་གླེང་མཚམས་འཇོག་རྒྱུ་ཡིན་ནམ།</string>
<string name="ConversationActivity_delete_thread_confirmation">འཕྲིན་ཐུང་སྐུད་རིམ་ཆ་ཚང་སུབ་ན་སྒྲིག་ཀྱི་རེད་དམ།</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">ཁྱོད་ཀྱིས་དངོས་གནས་འཕྲིན་ཐུང་སྐུད་རིམ་ཆ་ཚང་གཏན་དུ་གསུབ་རྒྱུ་ཡིན་ནམ།</string>
<string name="ConversationActivity_add_attachment">ཟུར་སྣོན་འཇོག</string>
<string name="ConversationActivity_compose_message">འཕྲིན་ཐུང་བྲིས།</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">དགོངས་དག ཁྱོད་ཀྱི་ཟུར་སྣོན་ལ་སྒྲིག་བཟོ་བྱེད་པར་ནོར་འཁྲུལ་ཞིག་འདུག</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">དགོངས་དག ཁྱོད་ཀྱིས་བདམས་པའི་བརྙན་རིས་དེ་གཏན་ཁེལ་བྱས་ཡོད་པའི་ཚད་ལས་བརྒལ་འདུག</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">ཁྱོད་ཀྱིས་བདམས་པའི་སྒྲ་ཟློས་དེ་གཏན་ཁེལ་བྱས་ཡོད་པའི་ཚད་ལས་བརྒལ་འདུག</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">གཏོང་ས་དེ་གློག་འཕྲིན་ཁ་བྱང་ངམ་འཕྲིན་ཐུང་ཁ་བྱང་ཚད་ལྡན་མི་འདུག </string>
<string name="ConversationActivity_message_is_empty_exclamation">འཕྲིན་ཐུང་མི་འདུག</string>
<string name="ConversationActivity_group_conversation">མཉམ་འདུས་གླེང་མོལ། </string>
<!--ConversationFragment-->
<string name="ConversationFragment_message_details">འཕྲིན་ཐུང་ཞིབ་ཆ།</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">གཏོང་མཁན།:%1$s དབོར་བ།:%2$s བཏང་།/འབྱོར།:%3$s</string>
<string name="ConversationFragment_confirm_message_delete">འཕྲིན་ཐུང་སུབ་ན་སྒྲིག་ཀྱི་རེད་དམ།</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">ཁྱོད་ཀྱིས་དངོས་གནས་འཕྲིན་ཐུང་འདི་གཏན་དུ་གསུབ་རྒྱུ་ཡིན་ནམ།</string>
<!--ConversationListAdapter-->
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">གསང་སྡོམ་བྱེད་པའི་འཕྲིན་ཐུང་རེད། གསང་ཡིག་འཇོག</string>
<string name="ConversationListAdapter_key_exchange_message">ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན།</string>
<!--ConversationListFragment-->
<string name="ConversationListFragment_delete_threads_question">འཕྲིན་ཐུང་སྐུད་རིམ་གསུབ་རྒྱུ་ཡིན་ནམ།</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">ཁྱོད་ཀྱིས་དངོས་གནས་འཕྲིན་ཐུང་སྐུད་རིམ་འདེམས་པ་ཆ་ཚང་གསུབ་རྒྱུ་ཡིན་ནམ།</string>
<!--ConversationListItem-->
<string name="ConversationListItem_key_exchange_message">ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན།</string>
<!--KeyScanningActivity-->
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">ཞིབ་བརྟག་བྱེད་པའི་ལྡེ་མིག་རྙེད་མི་ཐུབ།</string>
<!--PassphraseChangeActivity-->
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">གསང་ཡིག་མཚུངས་ཀྱི་མི་འདུག</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">གསང་ཡིག་རྙིང་པ་མ་དག་པ་དེ་འདིར་བྲིས།</string>
<!--PassphraseCreateActivity-->
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">གསང་ཡིག་མཚུངས་ཀྱི་མི་འདུག</string>
<string name="PassphraseCreateActivity_generating_keypair">ལྡེ་མིག་གི་ཆ་བསྐྲུན་གྱི་ཡོད།</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">རང་སའི་གསང་སྡོམ་གྱི་ལྡེ་མིག་ཆ་ཞིག་སྐྱེད་སྒྲུབ།</string>
<!--PassphrasePromptActivity-->
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">གསང་ཡིག་ཁུངས་ལྡན་མིན།</string>
<!--ReceiveKeyActivity-->
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">ནོར་འཁྲུལ།: ཁྱེད་ལ་མི་གཞན་ནས་ངན་ལྷད་ཅན་གྱི་ལྡེ་མིག་ཞིག་འབྱོར་འདུག ལྡེ་མིག་འདིས་ལས་སྣོན་བྱེད་མི་ཐུབ། བདེ་འཇགས་ཀྱི་གཏམ་གླེང་བསྐྱར་དུ་འགོ་བརྩམ་རོགས།</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">ནོར་འཁྲུལ།: ཁྱེད་ལ་པར་གཞི་གྲོས་མཐུན་གྱིས་རྒྱབ་སྐྱོར་མ་བྱས་བའི་སྤྱི་སྤྱོད་ལྡེ་མིག་ཞིག་འབྱོར་གི་རེད། ལྡེ་མིག་དེས་ལས་ཀ་བྱེད་ཐུབ་གི་མ་རེད། སྐུ་མཁྱེན། ཉེན་སྲུང་གི་སྡེ་ཚན་ཞིག་བསྐྱར་དུ་འགོ་ཚུགས། </string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན་འདིའི་ནང་ངོས་འཛིན་མིང་རྟགས་མེད།</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན་འདིའི་ནང་ངོས་འཛིན་མིང་རྟགས་ཡོད། ཡིན་ནའང་ད་ལྟ་ཁྱོད་ཀྱི་དེར་བློ་འགེལ་མེད།</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན་འདིའི་ནང་ངོས་འཛིན་མིང་རྟགས་ཡོད་པ་དེ་རྒྱུ་མཚན་གང་གི་དོན་དུ་བློ་འགེལ་ཡོད། : %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">%s དང་ལྷན་དུ་འགོ་འཛུགས་པའི་བདེ་འཇགས་ཀྱི་གཏམ་གླེང་བྱེད་བཞིན་པ་དེའི་ལྡེ་མིག་འདི་རེད།</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">%s དང་ལྷན་དུ་འགོ་འཛུགས་པའི་བདེ་འཇགས་ཀྱི་གཏམ་གླེང་བྱེད་བཞིན་པ་དེའི་ལྡེ་མིག་འབྱོར་བ་འདི་རེད།</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">ཁྱེད་ལ་(%s.⏎ ⏎ )ནས་ཕན་ཚུན་བརྗེ་ལེན་གྱི་གསང་བའི་འཕྲིན་ཐུང་ཞིག་འབྱོར་འདུག \nཉེན་བརྡ།: འབྲེལ་བ་འདི་དང་མཉམ་དུ་ཁྱོད་ལ་གསང་རྒྱ་ཅན་གྱི་སྡེ་ཚན་ཞིག་འདུག གལ་སྲིད་ཁྱོད་ནས་ཕན་ཚུན་བརྗེ་ལེན་གྱི་གསང་བའི་འཕྲིན་ཐུང་འདི་ངོས་ལེན་བྱས་ཚེ། དེས་ཁྱེད་ཀྱི་ད་ཡོད་སྡེ་ཚན་དེ་གཏོར་བཤིག་གཏོང་བ་མ་ཟད་ཁྱེད་ནས་ཡང་བསྐྱར་ཁུངས་སྐྱེལ་བྱེད་དགོས། ཁྱེད་ནས་གསང་བའི་བརྗེ་ལེན་འདི་ལེགས་འགྲུབ་བྱེད་འདོད་དམ། </string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">%s ནས་ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན་འབྱོར་འདུག ཁྱེད་ཀྱི་འབྲེལ་མིང་འདིའི་ལྷན་དུ་གཏམ་གླེང་འགོ་འཛུགས་འདུག ལྡེ་མིག་འདི་ལེན་མ་ཐག་ཏུ་ལྡེ་མིག་བརྗེ་ལེན་གྱི་རིམ་པ་ཆ་ཚང་བ་ཡིན། ཁྱེད་རང་ནས་ལྡེ་མིག་འདིའི་བརྗེ་བསྒྱུར་ལེགས་འགྲུབ་བྱེད་འདོད་འདུག་གམ།</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">ཁྱོད་ཀྱི་ %d ལྡེ་མིག་བརྗེ་ལེན་བྱ་རྒྱུའི་བརྡ་ལེན་བཏང་ཟིན་འདུག ཡིན་ནའང་དེར་ད་ལྟ་ཡ་ལན་མིན་འདུག</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">%s ནས་ལྡེ་མིག་བརྗེ་ལེན་བྱེད་རྒྱུའི་བརྡ་ལན་འབྱོར་འདུག You have no existing session with this contact, ཁྱེད་རང་ནས་ལྡེ་མིག་འདིའི་བརྗེ་བསྒྱུར་ལེགས་འགྲུབ་བྱེད་འདོད་འདུག་གམ།</string>
<!--ReviewIdentitiesActivity-->
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">ངན་ལྷད་ཅན་གྱི་ངོས་འཛིན་ལྡེ་མིག་དེར་བལྟ་མི་ཐུབ།</string>
<string name="ReviewIdentitiesActivity_delete_identity">ངོས་འཛིན་ལྡེ་མིག་གསུབ་རྒྱུ་ཡིན་ནམ།</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">ཁྱེད་ཀྱིས་དངོས་གནས་ངོས་འཛིན་ལྡེ་མིག་དེ་གཏན་དུ་གསུབ་རྒྱུ་ཡིན་ནམ།</string>
<string name="ReviewIdentitiesActivity_invalid_identity">ངོ་སྤྲོད་ཁུངས་ལྡན་མིན།</string>
<!--SaveIdentityActivity-->
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">ངོ་རྟགས་འདི་ལ་མིང་དམིགས་བསལ་བ་ཞིག་ཐོགས། </string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">ངོ་རྟགས་གི་མིང་འདུག </string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">མིང་ཁ་གསལ་སྟོན་པའི་ངོས་འཛིན་ལྡེ་མིག་ཅིག་སྔོན་ནས་འདུག</string>
<string name="SaveIdentityActivity_manage_identities">ངོ་རྟགས་རྣམས་བཟོ་སྒྲིག་བྱོས། </string>
<!--VerifyIdentityActivity-->
<string name="VerifyIdentityActivity_mark_identity_verified_question">ངོ་རྟགས་བདེན་དབང་གི་རྟགས་བཀོད་དམ། </string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">ཁྱེད་ལ་ཁུངས་ཐུབ་ཀྱི་ངོ་རྟགས་དེའི་མཛུབ་ཐེལ་ཡོད་པ་མ་ཟད་དེ་ལ་ཁུངས་ཐུབ་ཀྱི་རྟགས་རྒྱག་ཐུབ་བམ། </string>
<string name="VerifyIdentityActivity_mark_verified">ཁུངས་ཐུབ་ཀྱི་རྟགས་བཀོད། </string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">ཁྱེད་ལ་ངོས་འཛིན་བྱེད་ཀྱི་ལྡེ་མིག་མི་འདུག</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">སྦྱོར་ཡུལ་ལ་ངོས་འཛིན་བྱེད་ཀྱི་ལྡེ་མིག་མི་འདུག</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">སྦྱོར་ཡུལ་ལ་ངོས་འཛིན་བྱེད་ཀྱི་ལྡེ་མིག་མི་འདུག</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">གཞན་གྱི་ལྡེ་མིག་འགྲན་ཆེད་ཞིབ་བརྟག་བྱེད།</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">ངའི་ལྡེ་མིག་ཞིབ་བརྟག་བྱོས།</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">ཉེན་བརྡ། ཞིབ་བརྟག་བྱས་པའི་ལྡེ་མིག་དེ་མི་མཚུངས། མཛུབ་རིས་ཡི་གེ་དེ་གཟབ་ནན་ངང་ཞིབ་བཤེར་བྱོས།</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">ར་སྤྲོད་བྱས་མི་འདུག</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">གཞན་གྱི་ལྡེ་མིག་ཏག་ཏག་རེད། ཁྱེད་ཀྱི་ལྡེ་མིག་གཞན་གྱིས་ར་སྤྲོད་བྱེད་དགོས་ངེས།</string>
<string name="VerifyIdentityActivity_verified_exclamation">ར་སྤྲོད་བྱས་ཟིན།</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">ཁྱེད་ལ་ངོས་འཛིན་བྱེད་ཀྱི་ལྡེ་མིག་མི་འདུག</string>
<!--VerifyImportedIdentityActivity-->
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">འབྲེལ་བ་བྱ་ཡུལ་དེའི་མིང་ངེས་པར་དུ་ཁ་གསལ་སྟོན་དགོས།</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">ངོས་འཛིན་ལྡེ་མིག་དེ་ཉར་ཚགས་བྱེད་རྒྱུ་ཡིན་ནམ།</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">ངོས་འཛིན་ལྡེ་མིག་ཉར་ཚགས་བྱེད་སྐབས་ནོར་འཁྲུལ་བྱུང་།</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">ངོས་འཛིན་ལྡེ་མིག་འདི་འམ། ཡང་ན་མིང་མཚུངས་ཅན་གྱི་ལྡེ་མིག་ཞིག་སྔོན་ནས་འདུག ལྡེ་མིག་གི་གཞི་གྲངས་དེ་རྩོམ་སྒྲིག་བྱེད།</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">འགྲན་ཆེད་ཞིབ་བརྟག་བྱེད།</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">ལྡེ་མིག་འགྲན་ཆེད་ཞིབ་བརྟག་བྱེད།</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">ར་སྤྲོད་བྱས་མི་འདུག</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ཉེན་བརྡ། ཞིབ་བརྟག་བྱས་པའི་ལྡེ་མིག་དེ་མི་མཚུངས།</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">ཞིབ་བརྟག་བྱས་པའི་ལྡེ་མིག་དེ་མཚུངས།</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">ར་སྤྲོད་བྱས་ཟིན།</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">ཁྱེད་ཀྱིས་འབྱུང་འགྱུར་གྱི་ཡིག་འབྲེལ་ཚང་མའི་མཉམ་དུ། ཁུངས་ཐུབ་ཀྱི་ངོ་རྟགས་འདིའི་ལྡེ་མིག་ལ་རྟགས་རྒྱག་འདོད་ཡོད་དམ། སྤྱིར་བཏང་ནས་ཁྱེད་ཀྱིས་མཛུབ་ཐེལ་ཁུངས་སྐྱེལ་བྱས་ཡོད་ན། དེ་གཟོད་འདི་འདི་ལྟར་བྱེད་དགོས་རེད། </string>
<!--VerifyKeysActivity-->
<string name="VerifyKeysActivity_mark_session_verified_question">ཁུངས་ཐུབ་ཀྱི་སྡེ་ཚན་ལ་རྟགས་བཀོད། </string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">ཁྱེད་ཀྱིས་མཛུབ་ཐེལ་འདི་ཚོ་ཁུངས་སྐྱེལ་བྱས་ཡོད་པ་མ་ཟད་སྡེ་ཚན་འདི་ལ་བདེན་དཔང་ཡིན་པའི་རྟགས་རྒྱག་གི་ཡིན་ནམ། </string>
<string name="VerifyKeysActivity_mark_verified">རྒྱབ་གཉེར་གྱི་རྟགས་བཀོད། </string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">ངའི་མཛུབ་རིས་ཞིབ་བརྟག་བྱེད།</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">གཞན་གྱི་མཛུབ་རིས་ཞིབ་བརྟག་བྱེད།</string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">ཉེན་བརྡ། ཞིབ་བརྟག་བྱས་པའི་ལྡེ་མིག་དེ་མི་མཚུངས། མཛུབ་རིས་ཡི་གེ་དེ་གཟབ་ནན་ངང་ཞིབ་བཤེར་བྱོས།</string>
<string name="VerifyKeysActivity_not_verified_exclamation">ར་སྤྲོད་བྱས་མི་འདུག</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">གཞན་གྱི་ལྡེ་མིག་ཏག་ཏག་རེད། ཁྱེད་ཀྱི་མཛུབ་རིས་ཞིབ་བརྟག་བྱེད་དགོས་ངེས།</string>
<string name="VerifyKeysActivity_verified_exclamation">ར་སྤྲོད་བྱས་ཟིན།</string>
<!--ViewIdentityActivity-->
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">ཁྱེད་ལ་ངོས་འཛིན་བྱེད་ཀྱི་ལྡེ་མིག་མི་འདུག</string>
<string name="ViewIdentityActivity_scan_to_compare">འགྲན་ཆེད་ཞིབ་བརྟག་བྱེད།</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">ལྡེ་མིག་འགྲན་ཆེད་ཞིབ་བརྟག་བྱེད།</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ཉེན་བརྡ། ཞིབ་བརྟག་བྱས་པའི་ལྡེ་མིག་དེ་མི་མཚུངས།</string>
<string name="ViewIdentityActivity_not_verified_exclamation">ར་སྤྲོད་བྱས་མི་འདུག</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">ཞིབ་བརྟག་བྱས་པའི་ལྡེ་མིག་དེ་མཚུངས།</string>
<string name="ViewIdentityActivity_verified_exclamation">ར་སྤྲོད་བྱས་ཟིན།</string>
<!--KeyExchangeInitiator-->
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">ད་ཡོད་ཀྱི་རེ་སྐུལ་ལ་མ་ལྟོས་པར་འགོ་རྩོམ། </string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">ཁྱེད་ཀྱིས་གཏོང་ས་དེར་རེ་སྐུལ་གྱི་སྡེ་ཚན་ཞིག་བཏང་ཚར་འདུག ཁྱེད་ཀྱིས་ཡང་བསྐྱར་གཅིག་གཏོང་འདོད་འདུག་གམ འདི་ཡིས་ཁྱེད་ཀྱི་རེ་སྐུལ་དང་པོ་དེ་རྩིས་མེད་གཏོང་གི་རེད། </string>
<string name="KeyExchangeInitiator_send">གཏོང་།</string>
<!--MessageDisplayHelper-->
<string name="MessageDisplayHelper_bad_encrypted_message">གསང་སྡོམ་འཕྲིན་ཐུང་ཕན་མེད་ཞིག </string>
<string name="MessageDisplayHelper_decrypting_please_wait">གསང་སྡོམ་བཤིག་བཞིན་ཡོད། ཅུང་སྒུག་དང་།</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">རྙེད་རྒྱུ་མེད་པའི་སྡེ་ཚན་ཞིག་གི་ཆེད་དུ་འཕྲིན་ཐུང་གསང་སྡོམ་བྱས་ཡོད། </string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">གསང་གྲོལ་ནོར་སྐྱོན། </string>
<!--MmsDatabase-->
<string name="MmsDatabase_connecting_to_mms_server">MMS ཞབས་ཞུའི་ཡོ་ཆས་ལ་མཐུད་བཞིན་པ། </string>
<string name="MmsDatabase_downloading_mms">MMS ཕབ་ལེན་བྱེད་བཞིན་ཡོད།</string>
<string name="MmsDatabase_mms_download_failed">MMS ཕབ་ལེན་བྱེད་མི་ཐུབ།</string>
<string name="MmsDatabase_downloading">ཕབ་ལེན་བྱེད་བཞིན་པ། </string>
<string name="MmsDatabase_anonymous">མིང་མེད། </string>
<!--MmsMessageRecord-->
<string name="MmsMessageRecord_decrypting_mms_please_wait">MMS གསང་གྲོལ་བྱེད་བཞིན་ཡོད། ཅུང་སྒུག་རོགས། </string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">མཁོ་མེད་གསང་སྡོམ་ཅན་གྱི་MMSའཕྲིན་ཐུང་། </string>
<!--ApplicationMigrationService-->
<string name="ApplicationMigrationService_migrating">གནས་སྤོས།</string>
<!--KeyCachingService-->
<string name="KeyCachingService_textsecure_passphrase_cached">ཡི་གེའི་ཉེན་སྲུང་གི་གསང་ཚིག་དེ་སྦས།</string>
<string name="KeyCachingService_passphrase_cached">གསང་ཚིག་དེ་སྦས།</string>
<!--MessageNotifier-->
<string name="MessageNotifier_d_new_messages">(%d) འཕྲིན་ཐུང་གསར་པ་རྣམས།</string>
<string name="MessageNotifier_most_recent_from_s">%: ནས་ཉེ་ཆར་གྱི་དེ། </string>
<!--auto_initiate_activity-->
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">འཕྲིན་ཐུང་བདེ་འཇགས་ཀྱི་བདེ་འཇགས་གཏམ་གླེང་ལ་རྒྱབ་སྐྱོར་བྱེད་མཁན་ཞིག་ནས་ཁྱེད་ལ་འཕྲིན་ཐུང་ཅིག་འབྱོར་འདུག ཁོང་གི་ལྷན་དུ་འབྲེལ་བ་བཙན་པོ་ཡོང་ཆེད་ལྡེ་མིག་བརྗེ་ལེན་རྒྱུ་ཡིན་ནམ།</string>
<string name="auto_initiate_activity__initiate_exchange">བརྗེ་ལེན་འགོ་བཙུགས།</string>
<!--change_passphrase_activity-->
<string name="change_passphrase_activity__old_passphrase">གསང་ཚིག་རྙིང་པ།</string>
<string name="change_passphrase_activity__new_passphrase">གསང་ཡིག་གསར་པ།</string>
<string name="change_passphrase_activity__repeat_new_passphrase">གསང་ཡིག་གསར་པ་བསྐྱར་དུ་བྲིས།</string>
<!--contact_selection_group_activity-->
<!--contact_selection_list_activity-->
<string name="contact_selection_group_activity__no_contacts">འབྲེལ་མིང་མི་འདུག</string>
<!--ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">ཆེད་དུ་འདེམས།</string>
<!--contact_selection_recent_activity-->
<string name="contact_selection_recent_activity__no_recent_calls">ཉེ་ཆར་ཁ་པར་གཏོང་བ་མི་འདུག</string>
<!--conversation_activity-->
<string name="conversation_activity__type_message">འཕྲིན་ཐུང་བྲིས།</string>
<string name="conversation_activity__send">གཏོང་།</string>
<string name="conversation_activity__remove">ཕྱིར་ཕུད། </string>
<!--conversation_fragment_cab-->
<!--create_passphrase_activity-->
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">རྒྱུན་ལྡན་ནས་ཁྱེད་ཀྱིས་གསང་སྡོམ་རེའུ་མིག་ལ་བེད་སྤྱོད་པའི་གསང་ཚིག་དེ་དང་། དེ་གསང་ཚིག་བརྟན་པོ་ཆགས་གི་རེད། </string>
<string name="create_passphrase_activity__passphrase">གསང་ཡིག :</string>
<string name="create_passphrase_activity__repeat">བསྐྱར་དུ། :</string>
<!--receive_key_activity-->
<string name="receive_key_activity__session">གཏམ་གླེང་།</string>
<string name="receive_key_activity__identities">ངོ་རྟགས། </string>
<string name="receive_key_activity__complete_exchange">བརྗེ་ལེན་ལེགས་འགྲུབ་བྱོས། </string>
<!--recipients_panel-->
<string name="recipients_panel__to">ལ། </string>
<!--review_identities-->
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">གནས་སྐབས་རིང་། ཁྱེད་ཀྱི་གཞི་གྲངས་མཛོད་ཀྱི་ཁོངས་སུ་ཁྱེད་ལ་ངོ་རྟགས་ལྡེ་མིག་མི་འདུག </string>
<!--save_identity_activity-->
<string name="save_identity_activity__identity_name">ངོ་རྟགས་ཀྱི་མིང་། </string>
<!--verify_identity_activity-->
<string name="verify_identity_activity__their_identity_they_read">གཞན་གྱི་ངོས་འཛིན།:\\n(གཞན་གྱི་ཀློག)</string>
<string name="verify_identity_activity__your_identity_you_read">ཁྱེད་ཀྱི་ངོས་འཛིན།:\\n༼ཁྱེད་ཀྱི་ཀློག༽</string>
<!--verify_import_identity_activity-->
<string name="verify_import_identity_activity__identity_name_n">ངོས་འཛིན་གྱི་མིང་།</string>
<string name="verify_import_identity_activity__imported_identity_n">ནང་འཇུག་བྱས་པའི་ངོས་འཛིན།:</string>
<string name="verify_import_identity_activity__verified">ར་སྤྲོད་བྱས་ཟིན།</string>
<string name="verify_import_identity_activity__compare">བསྡུར། </string>
<!--verify_keys_activity-->
<string name="verify_keys_activity__they_read_this">གཞན་གྱི་འདི་ཀློགས།</string>
<string name="verify_keys_activity__you_read_this">ཁྱེད་ཀྱི་འདི་ཀློགས:</string>
<!--view_identity_activity-->
<string name="view_identity_activity__identity">ངོ་རྟགས། </string>
<!--AndroidManifest.xml-->
<string name="AndroidManifest__create_passphrase">གསང་ཚིག་གསར་བཟོ་བྱོས། </string>
<string name="AndroidManifest__enter_passphrase">གསང་ཡིག་འཇོག</string>
<string name="AndroidManifest__select_contacts">འབྲེལ་བ་བྱེད་ས་འདེམས། </string>
<string name="AndroidManifest__public_identity_key">སྤྱི་བའི་ངོ་རྟགས་ལྡེ་མིག </string>
<string name="AndroidManifest__change_passphrase">གསང་ཚིག་བརྗེ་བོ་རྒྱོབས།</string>
<string name="AndroidManifest__verify_session">གཏམ་གླེང་སྤྲོད་བྱོས།</string>
<string name="AndroidManifest__verify_identity">ངོ་རྟགས་ར་སྤྲོད་བྱོས། </string>
<string name="AndroidManifest__save_identity">ངོ་རྟགས་སྲུང་། </string>
<string name="AndroidManifest__manage_identity_keys">ངོ་རྟགས་ཀྱི་ལྡེ་མིག་ལ་དོ་དམ་བྱོས། </string>
<string name="AndroidManifest__complete_key_exchange">ལྡེ་མིག་བརྗེ་ལེན་ལེགས་འགྲུབ་བྱོསས྄་</string>
<string name="AndroidManifest__verify_imported_identity">ནང་འདྲེན་ངོ་རྟགས་ར་སྤྲོད་བྱོས། </string>
<!--preferences.xml-->
<string name="preferences__use_settings">སྒྲིག་བཟོ་བཀོལ།</string>
<string name="preferences__pref_all_sms_title">SMS ཚང་མའི་ཆེད་དུ་བེད་སྤྱོད་ཐོངས།</string>
<string name="preferences__pref_all_mms_title">MMS ཆ་ཚང་གི་ཆེད་དུ་བེད་སྤྱོད་ཐོངས།</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">ནང་ཡོང་འཕྲིན་ཐུང་ཚང་མར་བལྟ་བ་དང་ཉར་བ་ལ། ཡི་གེའི་ཉེན་སྲུང་བེད་སྤྱོད་ཐོངས།</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">སྣ་མང་འཕྲིན་ཐུང་རིགས་ལ་ཉར་ཚགས་དང་ཞིབ་ལྟའི་ཆེད་དུ། ཡི་གེའི་ཉེན་སྲུང་བེད་སྤྱོད་ཐོངས།</string>
<string name="preferences__input_settings">སྒྲིག་བཟོ་ནང་དུ་འཇུག</string>
<string name="preferences__pref_enter_sends_title">གཏོང་བའི་སྒང་ལ་བསྣུན། </string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">ནང་འཛུལ་ལྡེ་མིག་ལ་བསྣུན་ནས་འཕྲིན་ཐུང་གཏོང་།</string>
<string name="preferences__display_settings">སྒྲིག་བཀོད་བྱེད་ས་སྟོན།</string>
<string name="preferences__choose_identity">ངོ་རྟགས་འདེམས། </string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">འབྲེལ་ཐོ་ནས་ཁྱེད་ཀྱིས་འབྲེལ་བ་བྱེད་ས་དེ་གདམ།</string>
<string name="preferences__encryption_settings">གསང་སྡོམ་སྒྲིག་བཟོ།</string>
<string name="preferences__change_passphrase">གསང་ཚིག་བརྗེ་བོ་རྒྱོབས།</string>
<string name="preferences__change_my_passphrase">ངའི་གསང་ཚིག་བརྗེ་བོ་རྒྱོབས།</string>
<string name="preferences__complete_key_exchanges">ལྡེ་མིག་བརྗེ་ལེན་ཚར་བ་བྱོས།</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">ལྡེ་མིག་གི་ངོ་རྟགས་གཅིག་པའི་ད་ཡོད་སྡེ་ཚན་ཞིག་གམ་ཡང་ན་སྡེ་ཚན་གསར་བ་ཞིག་གི་སླད་དུ། རང་བཞིན་ནས་ལྡེ་མིག་བརྗེ་ལེན་དེ་འགྲུབ་པ་བྱོས།</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">གསང་སྡོམ་མ་ཡིན་པའི་འཕྲིན་ཐུང་རེ་རེའི་རྗེས་སུ། དཀར་ངོས་ཀྱི་འཛེར་མ་དེ་སྦྱར།</string>
<string name="preferences__include_whitespace_tag">དཀར་ངོས་ཀྱི་འཛེར་མ་དེ་མཉམ་དུ་སྦྱར།</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">ཡོང་མཐུན་གྱི་ལྡེ་མིག་དེའི་མཉམ་དུ། འཕྲིན་ཐུང་བརྗེ་བསྒྱུར་གྱི་ལྡེ་མིག་དེར་སྲིབ་རྟགས་རྒྱོབས།</string>
<string name="preferences__sign_key_exchange">ལྡེ་མིག་བརྗེ་བསྒྱུར་དེར་སྲིབ་རྟགས་རྒྱོབས།</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">དུས་བརྒལ་གྱི་དབར་ནས། དྲན་ཐོ་ནས་གསང་ཚིག་བརྗེད།</string>
<string name="preferences__timeout_passphrase">གསང་ཚིག་གི་དུས་ཚོད་ཡོལ་འདུག</string>
<string name="preferences__pref_timeout_interval_title">བར་སེང་མཚམས་འཇོག</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">དྲན་ཐོ་ནས་གསང་ཚིག་མ་བརྗེད་གོང་སྒུག་ཡུན་དུས་ཚོད།</string>
<string name="preferences__identity_key_settings">ངོ་རྟགས་ཀྱི་ལྡེ་མིག་སྒྲིག་བཟོ། </string>
<string name="preferences__view_my_identity_key">ངའི་ངོས་འཛིན་ལྡེ་མིག་ལྡེ་མིག་ལ་བལྟ།</string>
<string name="preferences__export_my_identity_key">ངའི་ངོས་འཛིན་བྱེད་ཀྱི་ལྡེ་མིག་དེ་ཕྱིར་འདོན་བྱེད།</string>
<string name="preferences__import_contacts_key">འབྲེལ་བ་བྱེད་སའི་ལྡེ་མིག་ནང་འདྲེན་བྱོས། </string>
<string name="preferences__import_an_identity_key_from_a_contact">འབྲེལ་བ་བྱེད་ས་ནས་ངོ་རྟགས་ལྡེ་མིག་ནང་འདྲེན་བྱོས། </string>
<string name="preferences__manage_identity_keys">ངོ་རྟགས་ཀྱི་ལྡེ་མིག་དོ་དམ་བྱོས། </string>
<string name="preferences__manage_configured_identity_keys">སྡེབ་སྒྲིག་ཟིན་པའི་ངོ་རྟགས་ལྡེ་མིག་དོ་དམ་བྱོས། </string>
<string name="preferences__notification_settings">བརྡ་གཏོང་སྒྲིག་བཟོ།</string>
<string name="preferences__notifications">བརྡ་གཏོང་།</string>
<string name="preferences__led_color">LED ཡི་ཚོན།</string>
<string name="preferences__change_notification_led_color">LED ཡི་ཚོན་གྱི་བརྡ་གཏོང་བརྗེས།</string>
<string name="preferences__pref_led_blink_title">LED ཡི་རྒྱན་རིས།</string>
<string name="preferences__change_notification_blink_pattern">LED རྒྱན་རིས་ཀྱི་བརྡ་གཏོང་བརྗེས།</string>
<string name="preferences__select_ringtone">དྲིལ་སྒྲ་གདམ།</string>
<string name="preferences__vibrate"> འདར་བཅུག</string>
<string name="preferences__also_vibrate_when_notified">བརྡ་གཏོང་སྐབས་ཡང་འདར་བཅུག</string>
<string name="preferences__minutes">སྐར་མ།</string>
<string name="preferences__hours">ཆུ་ཚོད།</string>
<string name="preferences__green">ལྗང་ཁུ།</string>
<string name="preferences__red">དམར་པོ།</string>
<string name="preferences__blue">སྔོན་པོ།</string>
<string name="preferences__orange">ལི་ཁྲི།</string>
<string name="preferences__cyan">སྔོ་དཀར།</string>
<string name="preferences__magenta">རྒྱ་ཚོས་ཀྱི་ཚོས་གཞི།</string>
<string name="preferences__fast">མགྱོགས་པོ།</string>
<string name="preferences__normal">འཆར་ཅན།</string>
<string name="preferences__slow">དལ་བུ།</string>
<string name="preferences__custom">རང་གྲུབ།</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->
<!--contact_selection_list-->
<string name="contact_selection_list__menu_select_all">ཚང་མ་འདེམས།</string>
<string name="contact_selection_list__menu_unselect_all">འདེམས་པ་ཡོངས་རྫོགས་མེད་པར་ཟོས།</string>
<!--contact_selection-->
<string name="contact_selection__menu_finished">མཇུག་རྫོགས་སོ།</string>
<!--conversation_button_context-->
<string name="conversation_button_context__menu_send_unencrypted">གསང་སྡོམ་མ་བྱེད་པའི་འཕྲིན་ཐུང་བསྐུར།</string>
<!--conversation_callable-->
<string name="conversation_callable__menu_call">ཁ་པར་གཏོང་།</string>
<!--conversation_context-->
<string name="conversation_context__menu_message_details">འཕྲིན་ཐུང་ཞིབ་ཆ།</string>
<string name="conversation_context__menu_copy_text">འཕྲིན་ཐུང་འདྲ་བཟོ་བྱེད།</string>
<string name="conversation_context__menu_delete_message">འཕྲིན་ཐུང་སུབ།</string>
<string name="conversation_context__menu_forward_message">འཕྲིན་ཐུང་བརྒྱུད་འགྲེམ་བྱེད།</string>
<!--conversation_insecure-->
<string name="conversation_insecure__menu_start_secure_session">བདེ་འཇགས་གཏམ་གླེང་འགོ་བརྩམ།</string>
<!--conversation_list_batch-->
<string name="conversation_list_batch__menu_delete_selected">འདེམས་པ་རྣམས་སུབ།</string>
<string name="conversation_list_batch__menu_select_all">ཚང་མ་འདེམས།</string>
<!--conversation_list-->
<string name="conversation_list__menu_search">འཚོལ།</string>
<!--conversation_secure_verified-->
<!--conversation_secure_unverified-->
<string name="conversation_secure_verified__menu_security">ཉེན་སྲུང་།</string>
<string name="conversation_secure_verified__menu_verify_session">གཏམ་གླེང་ར་སྤྲོད་བྱེད།</string>
<string name="conversation_secure_verified__menu_verify_recipient">འཕྲིན་ཐུང་འབྱོར་ཡུལ་དེ་ར་སྤྲོད་བྱོས།</string>
<string name="conversation_secure_verified__menu_abort_secure_session">བདེ་འཇགས་གཏམ་གླེང་མཚམས་འཇོག</string>
<!--conversation-->
<string name="conversation__menu_add_attachment">ཟུར་སྣོན་འཇོག</string>
<string name="conversation__menu_delete_thread">འཕྲིན་ཐུང་སྐུད་རིམ་སུབ།</string>
<string name="conversation__menu_compare">བསྡུར། </string>
<!--conversation_group_options-->
<!--key_scanning-->
<string name="key_scanning__menu_compare">བསྡུར། </string>
<string name="key_scanning__menu_get_scanned_to_compare">ལྡེ་མིག་འགྲན་ཆེད་ཞིབ་བརྟག་བྱོས།</string>
<string name="key_scanning__menu_scan_to_compare">ལྡེ་མིག་འགྲན་ཆེད་ཞིབ་བརྟག་བྱོས།</string>
<!--text_secure_locked-->
<string name="text_secure_locked__menu_unlock">སྒོ་ཕྱེས། </string>
<!--text_secure_normal-->
<string name="text_secure_normal__menu_new_message">འཕྲིན་ཐུང་གསར་པ།</string>
<string name="text_secure_normal__menu_settings">སྒྲིག་བཟོ།</string>
<string name="text_secure_normal__menu_import_export">ནང་འཇུག/ཕྱིར་འདོན།</string>
<string name="text_secure_normal__menu_import">ནང་འཇུག་བྱོས།</string>
<string name="text_secure_normal__menu_export">ཕྱིར་འདོན་བྱེད།</string>
<string name="text_secure_normal__menu_clear_passphrase">གསང་ཡིག་མེད་པ་བཟོས།</string>
<!--verify_keys-->
<string name="verify_keys__menu_verified">ར་སྤྲོད་བྱས་ཟིན།</string>
<!--Misc. piggybacking-->
<!--EOF-->
</resources>

362
res/values-de/strings.xml Normal file
View File

@@ -0,0 +1,362 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="app_name">TextSecure</string>
<string name="yes">Ja</string>
<string name="no">Nein</string>
<string name="delete">Löschen</string>
<!--ApplicationExportManager-->
<string name="ApplicationExportManager_import_database_and_settings_title">Sollen die Datenbank und die Einstellungen importiert werden?</string>
<string name="ApplicationExportManager_import_database_and_settings_message">Sollen die TextSecure Datenbank, Schlüssel und Einstellungen von der SD-Karte importiert werden?\n\nACHTUNG: Alle existierenden Nachrichten, Schlüssel und Einstellungen werden dadurch überschrieben. </string>
<string name="ApplicationExportManager_importing_database_and_keys">Datenbank und Schlüssel importieren</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">SMS Datenbank, Schlüssel und Einstellungen werden importiert...</string>
<string name="ApplicationExportManager_export_database_question">Soll die Datenbank exportiert werden?</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">Sollen die TextSecure Datenbank, Schlüssel und Einstellungen auf die SD-Karte exportiert werden?</string>
<string name="ApplicationExportManager_exporting_database_and_keys">Datenbank und Schlüssel exportieren</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">SMS Datenbank, Schlüssel und Einstellungen werden exportiert...</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">Keine SD-Karte vorhanden!</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">Fehler beim Exportieren auf die SD-Karte!</string>
<string name="ApplicationExportManager_import_successful_exclamation">Import erfolgreich abgeschlossen!</string>
<string name="ApplicationExportManager_export_successful_exclamation">Export erfolgreich abgeschlossen!</string>
<string name="ApplicationExportManager_import">Import</string>
<string name="ApplicationExportManager_export">Export</string>
<!--ApplicationMigrationManager-->
<string name="ApplicationMigrationManager_migrating_database">Datenbank migrieren</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">SMS Datenbank wird migriert...</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">Soll die System SMS Datenbank kopiert werden?</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">TextSecure verwendet eine verschlüsselte Datenbank, die unabhängig von der System Datenbank ist. Möchten Sie ihre vorhandenen SMS in die verschlüsselte TextSecure Datenbank kopieren? Die System Datenbank bleibt dadurch unverändert.</string>
<string name="ApplicationMigrationManager_copy">Kopieren</string>
<string name="ApplicationMigrationManager_dont_copy">Nicht kopieren</string>
<!--ApplicationPreferencesActivity-->
<string name="ApplicationPreferenceActivity_not_found_exclamation">Nicht gefunden!</string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">Es wurde kein gültiger Schlüssel zur Identifizierung für den ausgewählten Kontakt gefunden.</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">Sie haben keinen persönlichen Schlüssel!</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">Sie haben für sich selbst noch keine Kontaktinformation hinterlegt. Bitte wählen Sie einen entsprechenden Kontakt im Einstellungsmenü.</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">In die Kontakte Datenbank exportiert!</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">Bevor Sie Schlüssel importieren können, müssen Sie ihr Passwort eingeben...</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">Bevor Sie Schlüssel verwalten können, müssen Sie ihr Passwort eingeben...</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">Sie haben noch kein Passwort festgelegt!</string>
<!--AttachmentTypeSelectorAdapter-->
<!--ConversationItem-->
<string name="ConversationItem_message_size_d_kb">Größe der Nachricht: %d KB</string>
<string name="ConversationItem_expires_s">Läuft ab in: %s</string>
<string name="ConversationItem_error_sending_message">Fehler beim Senden der Nachricht</string>
<string name="ConversationItem_sending">Wird gesendet...</string>
<string name="ConversationItem_saving_attachment">Anhang speichern</string>
<string name="ConversationItem_saving_attachment_to_sd_card">Anhang wird auf die SD-Karte gespeichert...</string>
<string name="ConversationItem_save_to_sd_card">Auf der SD-Karte speichern?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">Diese Datei wurde in einer verschlüsselten Datenbank gespeichert. Die Version, die Sie auf der SD Karte speichern wird nicht mehr verschlüsselt sein. Möchten Sie trotzdem fortfahren?</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">Fehler beim Speichern des Anhangs auf der SD-Karte!</string>
<string name="ConversationItem_success_exclamation">Erfolgreich!</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">Es kann nicht auf die SD-Karte geschrieben werden!</string>
<string name="ConversationItem_view_secure_media_question">Sichere Datei anzeigen?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">Diese Datei wurde in einer verschlüsselten Datenbank gespeichert. Damit die Datei mit einem externen Anzeigeprogramm geöffnet werden kann, muss die Datei zuvor entschlüsselt und temporär im Speicher abgelegt werden. Sind Sie sicher, dass Sie fortfahren möchten?</string>
<string name="ConversationItem_key_exchange_message">Schlüsselaustausch Nachricht</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">Schlüsselaustausch Nachricht empfangen und verarbeitet.</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">Fehler: Es wurde eine abgelaufene Schlüsselaustausch-Nachricht empfangen.</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">Schlüsselaustausch Nachricht empfangen, zum Verarbeiten bitte klicken.</string>
<!--ConversationActivity-->
<string name="ConversationActivity_initiate_secure_session_question">Soll eine sichere Sitzung aufgebaut werden?</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">Eine sichere Sitzung mit %s aufbauen?</string>
<string name="ConversationActivity_abort_secure_session_confirmation">Sichere Sitzung beenden</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">Wollen sie die sichere Sitzung wirklich beenden?</string>
<string name="ConversationActivity_delete_thread_confirmation">Bestätigung zum Löschen der Unterhaltung</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">Sind Sie sicher, dass sie die Unterhaltung unwiderruflich löschen möchten?</string>
<string name="ConversationActivity_add_attachment">Anhang hinzufügen</string>
<string name="ConversationActivity_compose_message">Nachricht erstellen</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">Leider ist ein Fehler beim Hinzufügen des Anhangs aufgetreten.</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">Das ausgewählte Video überschreitet leider die maximal mögliche Nachrichtengröße.</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">Die ausgewählte Audiodatei überschreitet leider die maximal mögliche Nachrichtengröße.</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">Der angegeben Empfänger ist keine gültige SMS oder E-Mail Adresse!</string>
<string name="ConversationActivity_message_is_empty_exclamation">Die Nachricht ist leer!</string>
<!--ConversationFragment-->
<string name="ConversationFragment_message_details">Nachrichtendetails</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">Sender: %1$s Transport: %2$s Gesendet/Empfangen:%3$s</string>
<string name="ConversationFragment_confirm_message_delete">Nachricht löschen bestätigen</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">Sind Sie sicher, dass Sie diese Nachricht unwiderruflich löschen möchten?</string>
<!--ConversationListAdapter-->
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">Verschlüsselte Nachricht, bitte Passwort eingeben...</string>
<string name="ConversationListAdapter_key_exchange_message">Schlüsselaustausch Nachricht</string>
<!--ConversationListFragment-->
<string name="ConversationListFragment_delete_threads_question">Unterhaltungen löschen?</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">Sind Sie sicher, dass Sie alle ausgewählten Unterhaltungen löschen möchten?</string>
<!--ConversationListItem-->
<string name="ConversationListItem_key_exchange_message">Schlüsselaustausch Nachricht</string>
<!--KeyScanningActivity-->
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">Kein eingelesener Schlüssel gefunden!</string>
<!--PassphraseChangeActivity-->
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">Passwörter stimmen nicht überein!</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">Das eingegebene alte Passwort ist falsch!</string>
<!--PassphraseCreateActivity-->
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">Passwörter stimmen nicht überein!</string>
<string name="PassphraseCreateActivity_generating_keypair">Schlüsselpaar erzeugen</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">Erzeugen eines Schlüsselpaars zur lokalen Verschlüsselung...</string>
<!--PassphrasePromptActivity-->
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">Ungültiges Passwort!</string>
<!--ReceiveKeyActivity-->
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">FEHLER:\n\nSie haben einen beschädigten öffentlichen Schlüssel erhalten. Dieser Schlüssel kann nicht weiter verarbeitet werden, bitte initieren Sie eine neue sichere Sitzung.</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">FEHLER:\n\nSie haben einen öffentlichen Schlüssl erhalten der eine nicht unterstütze Version des Protokolls verwendet. Dieser Schlüssel kann nicht weiter verarbeitet werden, bitte initieren Sie eine neue sichere Sitzung.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">Diese Schlüsselaustauschnachricht ist nicht signiert.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">Diese Schlüsselaustauschnachricht ist von einer Quelle signiert, der Sie noch nicht vertrauen.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">Diese Schlüsselaustauschnachricht enthält eine vertraute Signatur von: %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">Dies ist der Schlüssel, den Sie sendet, damit eine verschlüsselte Sitzung mit %s aufgebaut wird.</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">Dies ist der Schlüssel, den Sie empfangen haben, damit eine verschlüsselte Sitzung mit %s aufgebaut wird.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">Sie haben eine Schlüsselaustauschnachricht von %s erhalten.\n\nACHTUNG: Es existiert bereits eine verschlüsselte Sitzung mit diesem Kontakt. Wenn Sie die Anfrage akzeptieren, wird die vorhandene Sitzung\nbeendet und muss neu aufgebaut werden. Wollen Sie den Schlüsselaustausch durchführen?\n</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">Sie haben eine Schlüsselaustauschnachricht von %s erhalten. Sie haben schonmal ein Sitzung mit diesem Kontakt initiiert. Wenn sie den Schlüssel akzeptieren, wird der Schlüsselaustausch abgeschlossen. Wollen Sie den Schlüsselaustausch nun abschließen?</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">Sie haben eine Schlüsselaustauschnachricht an %s gesendet, aber noch keine Antwort erhalten.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">Sie haben eine Schlüsselaustauschnachricht von %s erhalten. Es existiert momentan keine Sitzung mit diesem Kontakt. Wollen die den Schlüsselaustausch abschließen?</string>
<!--ReviewIdentitiesActivity-->
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">Der beschädigte Schlüssel kann nicht angezeigt werden!</string>
<string name="ReviewIdentitiesActivity_delete_identity">Identität löschen?</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">Sind Sie sicher, dass Sie diesen persönlichen Schlüssel unwiderruflich löschen möchten?</string>
<string name="ReviewIdentitiesActivity_invalid_identity">Ungültige Identität</string>
<!--SaveIdentityActivity-->
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">Sie müssen für diese Identität einen Namen angeben!</string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">Identität mit diesem Namen existiert bereits!</string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">Ein Schlüssel mit dem angegebenen Namen existiert bereits!</string>
<string name="SaveIdentityActivity_manage_identities">Identitäten verwalten</string>
<!--VerifyIdentityActivity-->
<string name="VerifyIdentityActivity_mark_identity_verified_question">Identität als verifiziert markieren?</string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">Haben Sie die Fingerabdruck des Schlüssels des Empfängers überprüft und wollen ihn wirklich als überprüft markieren?</string>
<string name="VerifyIdentityActivity_mark_verified">Als verifiziert markieren</string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">Sie haben keinen Schlüssel.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">Der Empfänger hat keinen Schlüssel.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">Empfänger hat keinen zugeordneten Schlüssel!</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">Schlüssel zum Vergleich einlesen</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">Eigenen Schlüssel einlesen</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">ACHTUNG: Der gescannte Schlüssel stimmt nicht überein! Bitte überprüfen Sie den Fingerabdruck des Schlüssels sorgfältig.</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">NICHT verifiziert!</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">Der Schlüssel ist korrekt. Sie sollten den Empfänger auch Ihren eigenen Schlüssel überprüfen lassen.</string>
<string name="VerifyIdentityActivity_verified_exclamation">Verifiziert!</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">Sie haben keinen persönlichen Schlüssel!</string>
<!--VerifyImportedIdentityActivity-->
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">Sie müssen für diesen Kontakt einen Namen angeben!</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">Schlüssel speichern?</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">Fehler beim Speichern des Schlüssels!</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">Dieser Schlüssel oder ein Schlüssel mit gleichem Namen existiert bereits. Bitte passen Sie ihre Schlüsseldatenbank an.</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">Zum Vergleich einlesen</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">Zum Vergleich einlesen lassen</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">NICHT verifiziert!</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ACHTUNG, der gescannte Schlüssel stimmt nicht überein.</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">Der gescannte Schlüssel stimmt überein!</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">Verifiziert!</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">Sind Sie sicher, dass Sie diesen Schlüssel für die gesamte zukünftige Kommunikation mit %s als gültigen Identitätsnachweis markieren möchten? Sie sollten dies nur tun, wenn Sie den Fingerabdruck überprüft haben.</string>
<!--VerifyKeysActivity-->
<string name="VerifyKeysActivity_mark_session_verified_question">Sitzung als verifiziert markieren?</string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">Sind Sie sicher, dass Sie die Fingerabdrücke überprüft haben und diese Sitzung als verifiziert markieren möchten?</string>
<string name="VerifyKeysActivity_mark_verified">Als verifiziert markieren</string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">Eigenen Fingerabdruck einlesen lassen</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">Scanne den Fingerabdruck ihrer Schlüssel </string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">ACHTUNG: Der gescannte Schlüssel stimmt nicht überein! Bitte überprüfen sie den Fingerabdruck des Schlüssels sorgfältig.</string>
<string name="VerifyKeysActivity_not_verified_exclamation">NICHT verifiziert!</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">Dieser Schlüssel ist korrekt. Sie sollten auch Ihren eigenen Fingerabdruck einlesen lassen.</string>
<string name="VerifyKeysActivity_verified_exclamation">Verifiziert!</string>
<!--ViewIdentityActivity-->
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">Sie haben keinen Schlüssel.</string>
<string name="ViewIdentityActivity_scan_to_compare">Zum Vergleich einlesen</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">Zum Vergleich einlesen lassen</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ACHTUNG, der gescannte Schlüssel stimmt nicht überein.</string>
<string name="ViewIdentityActivity_not_verified_exclamation">NICHT verifiziert!</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">Der gescannte Schlüssel stimmt überein!</string>
<string name="ViewIdentityActivity_verified_exclamation">Verifiziert!</string>
<!--KeyExchangeInitiator-->
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">Trotz vorhandener Anfragen initiieren?</string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">Sie haben bereits eine Sitzungsaufbau Nachricht an den Empfänger gesendet, sind Sie sicher dass Sie eine weitere senden wollen? Dies macht die erste Nachricht ungültig.</string>
<string name="KeyExchangeInitiator_send">Senden</string>
<!--MessageDisplayHelper-->
<string name="MessageDisplayHelper_bad_encrypted_message">Fehlerhafte, verschlüsselte Nachricht...</string>
<string name="MessageDisplayHelper_decrypting_please_wait">Entschlüsselung läuft, bitte warten...</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">Nachricht wurde für eine nicht existierende Sitzung verschlüsselt...</string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">Fehler bei der Entschlüsselung: lokale Nachricht fehlerhaft, MAC stimmt nicht überein. Eventuell manipuliert?</string>
<!--MmsDatabase-->
<string name="MmsDatabase_connecting_to_mms_server">Verbindung zu MMS Server wird aufgebaut...</string>
<string name="MmsDatabase_downloading_mms">MMS werden heruntergeladen...</string>
<string name="MmsDatabase_mms_download_failed">MMS Download fehlgeschlagen!</string>
<string name="MmsDatabase_downloading">Herunterladen...</string>
<string name="MmsDatabase_anonymous">Anonym</string>
<!--MmsMessageRecord-->
<string name="MmsMessageRecord_decrypting_mms_please_wait">MMS wird entschlüsselt, bitte warten...</string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">Falsch verschlüsselte MMS...</string>
<string name="MmsMessageRecord_mms_message_encrypted_for_non_existing_session">MMS wurde für einen nicht existierende Sitzung verschlüsselt...</string>
<!--ApplicationMigrationService-->
<string name="ApplicationMigrationService_migrating">Migration</string>
<string name="ApplicationMigrationService_migrating_system_text_messages">SMS werden migriert</string>
<!--KeyCachingService-->
<string name="KeyCachingService_textsecure_passphrase_cached">TextSecure Passwort gecached</string>
<string name="KeyCachingService_passphrase_cached">Passwort gecached</string>
<!--MessageNotifier-->
<string name="MessageNotifier_d_new_messages">(%d) Neue Nachrichten</string>
<string name="MessageNotifier_d_new_messages_most_recent_from_s">(%1$d) Neue Nachrichten, letzte von: %2$s</string>
<string name="MessageNotifier_most_recent_from_s">Letzte Nachricht von: %s</string>
<!--auto_initiate_activity-->
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">Sie haben eine Nachricht von jemand empfangen, der verschlüsselte Sitzungen über TextSecure unterstützt. Wollen Sie jetzt eine sicher Sitzung aufbauen?</string>
<string name="auto_initiate_activity__initiate_exchange">Austausch initieren</string>
<!--change_passphrase_activity-->
<string name="change_passphrase_activity__old_passphrase">Altes Passwort:</string>
<string name="change_passphrase_activity__new_passphrase">Neues Passwort:</string>
<string name="change_passphrase_activity__repeat_new_passphrase">Neues Passwort wiederholen:</string>
<!--contact_selection_group_activity-->
<!--contact_selection_list_activity-->
<string name="contact_selection_group_activity__no_contacts">Keine Kontakte</string>
<!--ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">Auswählen für</string>
<!--contact_selection_recent_activity-->
<string name="contact_selection_recent_activity__no_recent_calls">Keine letzten Anrufe</string>
<!--conversation_activity-->
<string name="conversation_activity__type_message">Nachricht schreiben</string>
<string name="conversation_activity__send">Senden</string>
<string name="conversation_activity__remove">Löschen</string>
<!--conversation_fragment_cab-->
<string name="conversation_fragment_cab__batch_selection_mode">Mehrfachauswahl</string>
<!--create_passphrase_activity-->
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">Bitte wählen Sie ein starkes Passwort aus, dass dazu genutzt wird ihre Daten lokal zu verschlüsseln.</string>
<string name="create_passphrase_activity__passphrase">Passwort:</string>
<string name="create_passphrase_activity__repeat">Wiederholen:</string>
<!--receive_key_activity-->
<string name="receive_key_activity__session">Sitzung</string>
<string name="receive_key_activity__identities">Identitäten</string>
<string name="receive_key_activity__complete_exchange">Vollständiger Austausch</string>
<!--recipients_panel-->
<string name="recipients_panel__to">An</string>
<!--review_identities-->
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">Sie haben momentan keine Schlüssel denen Sie vertrauen in ihrer Datenbank.</string>
<!--save_identity_activity-->
<string name="save_identity_activity__identity_name">Name der Identität:</string>
<!--verify_identity_activity-->
<string name="verify_identity_activity__their_identity_they_read">Identität des Kontakts:</string>
<string name="verify_identity_activity__your_identity_you_read">Eigene Identität (Sie lesen):</string>
<!--verify_import_identity_activity-->
<string name="verify_import_identity_activity__identity_name_n">Name der Identität:</string>
<string name="verify_import_identity_activity__imported_identity_n">Importierte Identität:</string>
<string name="verify_import_identity_activity__verified">Verifiziert!</string>
<string name="verify_import_identity_activity__compare">Vergleichen</string>
<!--verify_keys_activity-->
<string name="verify_keys_activity__they_read_this">Die lesen dies:</string>
<string name="verify_keys_activity__you_read_this">Sie lesen dies:</string>
<!--view_identity_activity-->
<string name="view_identity_activity__identity">Identität</string>
<string name="view_identity_activity__qr_code">QR Code</string>
<!--AndroidManifest.xml-->
<string name="AndroidManifest__create_passphrase">Passwort erstellen</string>
<string name="AndroidManifest__enter_passphrase">Passwort eingeben</string>
<string name="AndroidManifest__select_contacts">Kontakt auswählen</string>
<string name="AndroidManifest__textsecure_detected">TextSecure erkannt.</string>
<string name="AndroidManifest__public_identity_key">Öffentlicher Schlüssel</string>
<string name="AndroidManifest__change_passphrase">Passwort ändern</string>
<string name="AndroidManifest__verify_session">Sitzung verifizieren</string>
<string name="AndroidManifest__verify_identity">Identität verifizieren</string>
<string name="AndroidManifest__save_identity">Identität speichern</string>
<string name="AndroidManifest__manage_identity_keys">Schlüssel verwalten</string>
<string name="AndroidManifest__complete_key_exchange">Vollständiger Schlüsselaustausch</string>
<string name="AndroidManifest__verify_imported_identity">Importierte Identität verifizieren</string>
<!--preferences.xml-->
<string name="preferences__use_settings">Nutzungs-Einstellungen</string>
<string name="preferences__pref_all_sms_title">Für alle SMS benutzen</string>
<string name="preferences__pref_all_mms_title">Für alle MMS benutzen</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">TextSecure zur Anzeige und Speicherung aller eingehenden SMS verwenden.</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">TextSecure zur Anzeige und Speicherung aller eingehenden MMS verwenden.</string>
<string name="preferences__input_settings">Eingabe-Einstellungen</string>
<string name="preferences__pref_enter_sends_title">Enter schickt ab</string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">Enter Taste versendet Nachrichten</string>
<string name="preferences__display_settings">Anzeige-Einstellungen</string>
<string name="preferences__choose_identity">Identität auswählen</string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">Wählen Sie den Kontakt Eintrag aus der Kontakliste.</string>
<string name="preferences__encryption_settings">Verschlüsselungs-Einstellungen</string>
<string name="preferences__change_passphrase">Passwort ändern</string>
<string name="preferences__change_my_passphrase">Mein Passwort ändern</string>
<string name="preferences__complete_key_exchanges">Vollständiger Schlüsselaustausch</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">Automatischer Schlüsselaustausch für neue Sitzungen und bestehende Sitzungen mit demselben persönlichen Schlüssel</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">Leerzeichen am Ende jeder unverschlüsselten Nachricht einfügen</string>
<string name="preferences__include_whitespace_tag">Leerzeichen einfügen</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">Schlüsselaustausch Nachrichten mit eigenem Schlüssel signieren</string>
<string name="preferences__sign_key_exchange">Schlüsselaustausch signieren</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">Passwort im Speicher nach einer gewissen Zeit vergessen</string>
<string name="preferences__timeout_passphrase">Passwort im Speicher vergessen</string>
<string name="preferences__pref_timeout_interval_dialogtitle">Auswahl des Passwort-Timeouts</string>
<string name="preferences__pref_timeout_interval_title">Timeout-Dauer</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">Länge des Zeitraums, während dessen das Passwort im Speicher gehalten wird</string>
<string name="preferences__identity_key_settings">Einstellungen für den persönlichen Schlüssel</string>
<string name="preferences__view_my_identity_key">Meinen persönlichen Schlüssel anzeigen</string>
<string name="preferences__export_my_identity_key">Meinen persönlichen Schlüssel exportieren</string>
<string name="preferences__import_contacts_key">Schlüssel eines Kontakts importieren</string>
<string name="preferences__import_an_identity_key_from_a_contact">Schlüssel eines Kontakts importieren</string>
<string name="preferences__manage_identity_keys">Schlüssel verwalten</string>
<string name="preferences__manage_configured_identity_keys">Konfigurierte Schlüssel verwalten</string>
<string name="preferences__notification_settings">Benachrichtigungs-Einstellungen</string>
<string name="preferences__notifications">Benachrichtigungen</string>
<string name="preferences__display_message_notifications_in_status_bar">Benachrichtigung in der Statuszeile anzeigen</string>
<string name="preferences__led_color">LED Farbe</string>
<string name="preferences__change_notification_led_color">LED Farbe anpassen</string>
<string name="preferences__pref_led_blink_title">LED Blinkmuster</string>
<string name="preferences__change_notification_blink_pattern">Ändern des LED Blinkmusters für Benachrichtigungen</string>
<string name="preferences__pref_led_blink_dialogtitle">LED Blinkmuster auswählen</string>
<string name="preferences__select_led_color">LED Farbe auswählen</string>
<string name="preferences__select_ringtone">Klingelton auswählen</string>
<string name="preferences__vibrate">Vibrieren</string>
<string name="preferences__also_vibrate_when_notified">Bei Benachrichtigung vibrieren</string>
<string name="preferences__minutes">Minuten</string>
<string name="preferences__hours">Stunden</string>
<string name="preferences__green">Grün</string>
<string name="preferences__red">Rot</string>
<string name="preferences__blue">Blau</string>
<string name="preferences__orange">Orange</string>
<string name="preferences__cyan">Cyan</string>
<string name="preferences__magenta">Magenta</string>
<string name="preferences__fast">Schnell</string>
<string name="preferences__normal">Mittel</string>
<string name="preferences__slow">Langsam</string>
<string name="preferences__custom">Benutzerdefiniert</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->
<!--contact_selection_list-->
<string name="contact_selection_list__menu_select_all">Alle auswählen</string>
<string name="contact_selection_list__menu_unselect_all">Alle abwählen</string>
<!--contact_selection-->
<string name="contact_selection__menu_finished">Fertig</string>
<!--conversation_button_context-->
<string name="conversation_button_context__menu_send_unencrypted">Unverschlüsselt senden</string>
<!--conversation_callable-->
<string name="conversation_callable__menu_call">Anrufen</string>
<!--conversation_context-->
<string name="conversation_context__menu_message_details">Nachrichtendetails</string>
<string name="conversation_context__menu_copy_text">Text kopieren</string>
<string name="conversation_context__menu_delete_message">Nachricht löschen</string>
<string name="conversation_context__menu_forward_message">Nachricht weiterleiten</string>
<!--conversation_insecure-->
<string name="conversation_insecure__menu_start_secure_session">Sicher Sitzung starten</string>
<!--conversation_list_batch-->
<string name="conversation_list_batch__menu_delete_selected">Ausgewählte löschen</string>
<string name="conversation_list_batch__menu_select_all">Alle auswählen</string>
<!--conversation_list-->
<string name="conversation_list__menu_search">Suche</string>
<!--conversation_secure_verified-->
<!--conversation_secure_unverified-->
<string name="conversation_secure_verified__menu_security">Sicherheit</string>
<string name="conversation_secure_verified__menu_verify_session">Sitzung verifizieren</string>
<string name="conversation_secure_verified__menu_verify_recipient">Empfänger verifizieren</string>
<string name="conversation_secure_verified__menu_abort_secure_session">Sichere Sitzung beenden</string>
<!--conversation-->
<string name="conversation__menu_add_attachment">Anhang hinzufügen</string>
<string name="conversation__menu_delete_thread">Thread löschen</string>
<string name="conversation__menu_compare">Vergleichen</string>
<!--conversation_group_options-->
<!--key_scanning-->
<string name="key_scanning__menu_compare">Vergleichen</string>
<string name="key_scanning__menu_get_scanned_to_compare">Zum Vergleich eingelesen werden</string>
<string name="key_scanning__menu_scan_to_compare">Zum Vergleich einlesen</string>
<!--text_secure_locked-->
<string name="text_secure_locked__menu_unlock">Entsperren</string>
<!--text_secure_normal-->
<string name="text_secure_normal__menu_new_message">Neue Nachricht</string>
<string name="text_secure_normal__menu_settings">Einstellungen</string>
<string name="text_secure_normal__menu_import_export">Import/Export</string>
<string name="text_secure_normal__menu_import">Import</string>
<string name="text_secure_normal__menu_export">Export</string>
<string name="text_secure_normal__menu_clear_passphrase">Passwort löschen</string>
<!--verify_keys-->
<string name="verify_keys__menu_verified">Verifiziert</string>
<!--Misc. piggybacking-->
<!--EOF-->
<string name="conversation_item_sent__download">Download</string>
<string name="conversation_item_received__download">Download</string>
</resources>

360
res/values-es/strings.xml Normal file
View File

@@ -0,0 +1,360 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="app_name">TextSecure</string>
<string name="yes">Si</string>
<string name="no">No</string>
<string name="delete">Borrar</string>
<!--ApplicationExportManager-->
<string name="ApplicationExportManager_import_database_and_settings_title">¿Importar la base de datos y las preferencias?</string>
<string name="ApplicationExportManager_import_database_and_settings_message">¿Desea importar la base de datos TextSecure, claves y preferencias desde la tarjeta SD?\n\nADVERTENCIA: Esto escribirá sobre cualquier mensaje existente, claves y preferencias anteriores.</string>
<string name="ApplicationExportManager_importing_database_and_keys">Importando base de datos y claves</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">Importando su base de datos SMS, claves y preferencias...</string>
<string name="ApplicationExportManager_export_database_question">¿Exportar la base de datos?</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">¿Exportar la base de datos TextSecure, claves y preferencias a la tarjeta SD?</string>
<string name="ApplicationExportManager_exporting_database_and_keys">Exportando la base de datos y claves</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">Exportando su base de datos SMS, claves y preferencias...</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">¡No se encontró ninguna tarjeta SD!</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">¡Error al exportar a la tarjeta SD!</string>
<string name="ApplicationExportManager_import_successful_exclamation">¡Importación exitosa!</string>
<string name="ApplicationExportManager_export_successful_exclamation">¡Exportación exitosa!</string>
<string name="ApplicationExportManager_import">Importar</string>
<string name="ApplicationExportManager_export">Exportar</string>
<!--ApplicationMigrationManager-->
<string name="ApplicationMigrationManager_migrating_database">MIgrando la base de datos</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">Migrando la base de datos de mensajes de texto...</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">¿Desea copiar la base de datos de mensajes de texto del sistema?</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">TextSecure usa una base de datos cifrada, separa de la base de datos predeterminada por el sistema. ¿Le gustaría copiar sus mensajes de texto existentes en la base cifrada de TextSecure? Su base de datos predeterminada en el sistema no será afectada. </string>
<string name="ApplicationMigrationManager_copy">Copiar</string>
<string name="ApplicationMigrationManager_dont_copy">No copiar</string>
<!--ApplicationPreferencesActivity-->
<string name="ApplicationPreferenceActivity_not_found_exclamation">¡No encontrado!</string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">No se ha encontrado una clave de identidad válida en el contacto especificado.</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">¡Aún no tiene una clave de identidad!</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">No ha definido aún un contacto para usted mismo. Seleccione uno en el menú de Preferencias</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">Exportado a la base de datos de contactos</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">Necesita ingresar una frase de contraseña antes de importar claves...</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">Necesita ingresar su frase de contraseña antes de gestionar sus claves...</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">¡No ha elegido aún una frase de contraseña!</string>
<!--AttachmentTypeSelectorAdapter-->
<!--ConversationItem-->
<string name="ConversationItem_message_size_d_kb">Tamaño del mensaje: %d KB</string>
<string name="ConversationItem_expires_s">Expira: %s</string>
<string name="ConversationItem_error_sending_message">Error al enviar el mensaje</string>
<string name="ConversationItem_sending">Enviando...</string>
<string name="ConversationItem_saving_attachment">Guardando el archivo adjunto</string>
<string name="ConversationItem_saving_attachment_to_sd_card">Guardando el archivo adjunto a la tarjeta SD</string>
<string name="ConversationItem_save_to_sd_card">¿Guardar a la tarjeta SD?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">Este archivo ha sido guardado en una base de datos cifrada. La versión que usted guardará en la tarjeta SD ya no estará cifrada. ¿Desea continuar?</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">Error al guardar el archivo adjunto en la tarjeta SD</string>
<string name="ConversationItem_success_exclamation">¡Éxito!</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">No es posible escribir en la tarjeta SD</string>
<string name="ConversationItem_view_secure_media_question">¿Ver archivos de medios seguros?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">Este archivo se ha guardado en una base de datos cifrada. Desafortunadamente, para verlo necesita un visualizador de contenidos externo que requiere que los datos sean temporalmente descifrados y copiados en el disco. ¿Está seguro que desea hacer esto?</string>
<string name="ConversationItem_key_exchange_message">Mensaje de intercambio de claves</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">Mensaje de intercambio de claves recibido y procesado.</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">Error, recibió un mensaje de intercambio de claves expirado.</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">Ha recibido un mensaje de intercambio de claves, haga clic para proceder</string>
<!--ConversationActivity-->
<string name="ConversationActivity_initiate_secure_session_question">¿Iniciar una sesión segura?</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">¿Iniciar sesión segura con %s?</string>
<string name="ConversationActivity_abort_secure_session_confirmation">Abandonar la confirmación de sesión segura</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">¿Está seguro de que desea abandonar esta sesión segura?</string>
<string name="ConversationActivity_delete_thread_confirmation">Confirmar borrado de conversación</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">¿Está seguro de que desea borrar esta conversación permanentemente?</string>
<string name="ConversationActivity_add_attachment">Añadir archivo adjunto</string>
<string name="ConversationActivity_compose_message">Escribir mensaje</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">Lo sentimos, hubo un error en su archivo adjunto.</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">Lo sentimos, el video seleccionado excede las restricciones de tamaño del mensaje.</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">Lo sentimos, el audio seleccionado excede las restricciones de tamaño del mensaje.</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">El destinatario no es un SMS o correo electrónico válido</string>
<string name="ConversationActivity_message_is_empty_exclamation">¡El mensaje está vacío!</string>
<!--ConversationFragment-->
<string name="ConversationFragment_message_details">Detalles del mensaje</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">Remitente: %1$s\nTransporte: %2$s\nEnviado/Recibido:%3$s</string>
<string name="ConversationFragment_confirm_message_delete">Confirmar borrado del mensaje</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">¿Está seguro que desea borrar permanentemente este mensaje?</string>
<!--ConversationListAdapter-->
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">Mensaje cifrado, ingrese la frase de contraseña...</string>
<string name="ConversationListAdapter_key_exchange_message">Mensaje de intercambio de claves...</string>
<!--ConversationListFragment-->
<string name="ConversationListFragment_delete_threads_question">¿Borrar las conversaciones?</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">¿Está seguro de que quiere borrar TODAS las conversaciones seleccionadas?</string>
<!--ConversationListItem-->
<string name="ConversationListItem_key_exchange_message">Mensaje de intercambio de claves...</string>
<!--KeyScanningActivity-->
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">¡No se encontró una clave escaneada!</string>
<!--PassphraseChangeActivity-->
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">¡Las frases de contraseña no coinciden!</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">¡Frase de contraseña anterior incorrecta!</string>
<!--PassphraseCreateActivity-->
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">¡Las frases de contraseña no coinciden!</string>
<string name="PassphraseCreateActivity_generating_keypair">Generando Par de Claves</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">Generando un par de claves de cifrado local...</string>
<!--PassphrasePromptActivity-->
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">Frase de contraseña inválida</string>
<!--ReceiveKeyActivity-->
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">ERROR:\n\nHa recibido una clave pública dañada. Esta clave no puede ser procesada, por favor reinicie su sesión segura. </string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">ERROR:\n\nHa recibido una clave pública de una versión no soportada del protocolo. Esta clave no puede ser procesada, por favor reinicie la sesión segura.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">Este mensaje de intercambio de claves no incluye una firma de identidad.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">Este mensaje de intercambio de claves incluye una firma de identidad, pero aún no la considera de confianza.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">Este mensaje de intercambio de claves incluye una firma de identidad en la que usted confía para: %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">Esta es la clave que ha enviado para iniciar la sesión cifrada actual con %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">Esta es la clave que ha recibido para iniciar la sesión cifrada actual con %s</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">Ha recibido un mensaje de intercambio de claves de %s.\n\nADVERTENCIA: Usted ya tiene una sesión cifrada con este contacto. Si elige aceptar este mensaje de intercambio de claves, destruirá su sesión existente y deberá re-autentificarse. ¿Le gustaría completar este intercambio de claves? </string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">Ha recibido un mensaje de intercambio de claves de %s. Usted ha iniciado una sesión con este contacto previamente, y al aceptar esta clave completará el intercambio. ¿Le gustaría completar este intercambio de claves?</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">Ha iniciado un mensaje de intercambio de claves con %s pero aún no ha recibido una respuesta.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">Ha recibido un mensaje de intercambio de claves de %s. Aún no ha iniciado una sesión con este contacto. ¿Le gustaría completar este intercambio de claves?</string>
<!--ReviewIdentitiesActivity-->
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">¡No es posible ver la clave de identidad dañada!</string>
<string name="ReviewIdentitiesActivity_delete_identity">¿Borrar identidad?</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">¿Está seguro que desea eliminar permanentemente esta clave de identidad?</string>
<string name="ReviewIdentitiesActivity_invalid_identity">¡Identidad inválida!</string>
<!--SaveIdentityActivity-->
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">Debe especificar un nombre para esta identidad</string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">El nombre de la identidad ya existe</string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">Una clave de identidad con el nombre especificado ya existe.</string>
<string name="SaveIdentityActivity_manage_identities">Gestionar identidades</string>
<!--VerifyIdentityActivity-->
<string name="VerifyIdentityActivity_mark_identity_verified_question">¿Marcar identidad como verificada?</string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">¿Está seguro de que ha validado la huella de identidad de este destinatario y desea marcarlo como verificado?</string>
<string name="VerifyIdentityActivity_mark_verified">Marcar como verificado</string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">No tiene ninguna clave de identidad.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">El destinatario no tiene clave de identidad.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">¡El destinatario no tiene clave de identidad!</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">Escanear la clave de ellos, para comparar</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">Escanear mi clave</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">ADVERTENCIA: la clave escaneada NO coincide. Por favor verifique el texto de la huella cuidadosamente.</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">¡NO verificado!</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">La clave de ellos es correcta. También es necesario verificar su clave con ellos.</string>
<string name="VerifyIdentityActivity_verified_exclamation">¡Verificado!</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">¡No tiene ninguna clave de identidad!</string>
<!--VerifyImportedIdentityActivity-->
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">¡Debe especificar un nombre para este contacto!</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">¿Guardar clave de identidad?</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">Error al guardar la clave de identidad</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">Esta clave de identidad o una clave de identidad con el mismo nombre ya existe. Por favor edite su base de datos de claves.</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">Escanear para comparar</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">Escanear para comparar</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">¡NO verificado!</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ADVERTENCIA, ¡la clave escaneada NO coincide!</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">¡La clave escaneada coincide!</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">¡Verificado!</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">¿Está seguro de que desa marcar como válida esta clave de identidad para toda la correspondencia futura con %s? Sólo debe hacer esto si realmente ha verificado su huella digital.</string>
<!--VerifyKeysActivity-->
<string name="VerifyKeysActivity_mark_session_verified_question">¿Marcar la sesión como verificada?</string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">¿Está seguro de que desea validar estas huellas digitales y quisiera marcar esta sesión como verificada?</string>
<string name="VerifyKeysActivity_mark_verified">Marcar como verificado</string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">Escanear mi huella digital</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">Escanear su huella digital</string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">ADVERTENCIA, la clave escaneada NO coincide. Por favor verifique cuidadosamente el texto de la huella digital. </string>
<string name="VerifyKeysActivity_not_verified_exclamation">¡NO verificado!</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">La clave es correcta. Es también necesario escanear su huella digital.</string>
<string name="VerifyKeysActivity_verified_exclamation">¡Verificado!</string>
<!--ViewIdentityActivity-->
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">Usted no tiene una clave de identidad.</string>
<string name="ViewIdentityActivity_scan_to_compare">Escanear para comparar</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">Escanear su clave para comparar</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ADVERTENCIA, la clave escaneada NO coincide</string>
<string name="ViewIdentityActivity_not_verified_exclamation">¡NO verificado!</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">¡La clave escaneada coincide!</string>
<string name="ViewIdentityActivity_verified_exclamation">¡Verificado!</string>
<!--KeyExchangeInitiator-->
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">¿Iniciar a pesar de la petición existente?</string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">Ya ha enviado una petición de inicio de sesión a este destinatario, ¿está seguro de que quiere enviar otra? Esto invalidará la primera petición. </string>
<string name="KeyExchangeInitiator_send">Enviar</string>
<!--MessageDisplayHelper-->
<string name="MessageDisplayHelper_bad_encrypted_message">Mensaje cifrado incorrecto...</string>
<string name="MessageDisplayHelper_decrypting_please_wait">Descifrando, por favor espere...</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">Mensaje cifrado para una sesión no existente...</string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">Error de descifrado: mensaje local dañado, MAC no coincide. ¿Posible manipulación?</string>
<!--MmsDatabase-->
<string name="MmsDatabase_connecting_to_mms_server">Conectando con el servidor MMS...</string>
<string name="MmsDatabase_downloading_mms">Descargado MMS...</string>
<string name="MmsDatabase_mms_download_failed">Falló la descarga del MMS</string>
<string name="MmsDatabase_downloading">Descargando...</string>
<string name="MmsDatabase_anonymous">Anónimo</string>
<!--MmsMessageRecord-->
<string name="MmsMessageRecord_decrypting_mms_please_wait">Descifrando MMS, por favor espere...</string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">Mensaje MMS mal cifrado</string>
<string name="MmsMessageRecord_mms_message_encrypted_for_non_existing_session">Mensaje MMS cifrado para sesión no existente...</string>
<!--ApplicationMigrationService-->
<string name="ApplicationMigrationService_migrating">Migrando</string>
<string name="ApplicationMigrationService_migrating_system_text_messages">Migrando los mensajes de texto del sistema</string>
<!--KeyCachingService-->
<string name="KeyCachingService_textsecure_passphrase_cached">Frase de contraseña de TextSecure en memoria caché</string>
<string name="KeyCachingService_passphrase_cached">Frase de contraseña en memoria caché</string>
<!--MessageNotifier-->
<string name="MessageNotifier_d_new_messages">(%d) Nuevos mensajes</string>
<string name="MessageNotifier_d_new_messages_most_recent_from_s">(%1$d) Nuevos mensajes, el más reciente de: %2$s</string>
<string name="MessageNotifier_most_recent_from_s">Mensaje más reciente de: %s</string>
<!--auto_initiate_activity-->
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">Ha recibido un mensaje de alguien que tiene soporte para sesiones cifradas de TextSecure. ¿Desea iniciar una sesión segura?</string>
<string name="auto_initiate_activity__initiate_exchange">Iniciar intercambio</string>
<!--change_passphrase_activity-->
<string name="change_passphrase_activity__old_passphrase">Frase de contraseña anterior:</string>
<string name="change_passphrase_activity__new_passphrase">Nueva frase de contraseña:</string>
<string name="change_passphrase_activity__repeat_new_passphrase">Repita la nueva frase de contraseña:</string>
<!--contact_selection_group_activity-->
<!--contact_selection_list_activity-->
<string name="contact_selection_group_activity__no_contacts">No hay contactos.</string>
<!--ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">Seleccionar para</string>
<!--contact_selection_recent_activity-->
<string name="contact_selection_recent_activity__no_recent_calls">No hay llamadas recientes.</string>
<!--conversation_activity-->
<string name="conversation_activity__type_message">Escribir mensaje</string>
<string name="conversation_activity__send">Enviar</string>
<string name="conversation_activity__remove">Eliminar</string>
<!--conversation_fragment_cab-->
<string name="conversation_fragment_cab__batch_selection_mode">Modo de selección múltiple</string>
<!--create_passphrase_activity-->
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">Por favor escoja una frase de contraseña que se usará de forma local para cifrar sus datos. Debe elegir una clave de contraseña fuerte. </string>
<string name="create_passphrase_activity__passphrase">Frase de contraseña:</string>
<string name="create_passphrase_activity__repeat">Repetir:</string>
<!--receive_key_activity-->
<string name="receive_key_activity__session">Sesión</string>
<string name="receive_key_activity__identities">Identidades</string>
<string name="receive_key_activity__complete_exchange">Completar el intercambio</string>
<!--recipients_panel-->
<string name="recipients_panel__to">Para</string>
<!--review_identities-->
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">En este momento no tiene ninguna clave de identidad en su base de datos de confianza.</string>
<!--save_identity_activity-->
<string name="save_identity_activity__identity_name">Nombre de la identidad:</string>
<!--verify_identity_activity-->
<string name="verify_identity_activity__their_identity_they_read">Identidad de ellos (ellos leen):</string>
<string name="verify_identity_activity__your_identity_you_read">Su identidad (usted lee):</string>
<!--verify_import_identity_activity-->
<string name="verify_import_identity_activity__identity_name_n">Nombre de la identidad:\\n</string>
<string name="verify_import_identity_activity__imported_identity_n">Identidad importada:\\n</string>
<string name="verify_import_identity_activity__verified">¡Verificado!</string>
<string name="verify_import_identity_activity__compare">Comparar</string>
<!--verify_keys_activity-->
<string name="verify_keys_activity__they_read_this">Ellos leen esto:</string>
<string name="verify_keys_activity__you_read_this">Usted lee esto:</string>
<!--view_identity_activity-->
<string name="view_identity_activity__identity">Identidad:</string>
<string name="view_identity_activity__qr_code">Código QR</string>
<!--AndroidManifest.xml-->
<string name="AndroidManifest__create_passphrase">Crear frase de contraseña</string>
<string name="AndroidManifest__enter_passphrase">Ingresar frase de contraseña</string>
<string name="AndroidManifest__select_contacts">Seleccionar Contactos</string>
<string name="AndroidManifest__textsecure_detected">TextSecure detectado</string>
<string name="AndroidManifest__public_identity_key">Clave de Identidad Pública</string>
<string name="AndroidManifest__change_passphrase">Cambiar la frase de contraseña</string>
<string name="AndroidManifest__verify_session">Verificar sesión</string>
<string name="AndroidManifest__verify_identity">Verificar identidad</string>
<string name="AndroidManifest__save_identity">Guardar identidad</string>
<string name="AndroidManifest__manage_identity_keys">Gestionar claves de identidad</string>
<string name="AndroidManifest__complete_key_exchange">Completar el intercambio de claves</string>
<string name="AndroidManifest__verify_imported_identity">Ver identidad importada</string>
<!--preferences.xml-->
<string name="preferences__use_settings">Preferencias de uso</string>
<string name="preferences__pref_all_sms_title">Usar para todos los SMS</string>
<string name="preferences__pref_all_mms_title">Usar para todos los MMS</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">Usar TextSecure para ver y guardar todos los mensajes de texto entrantes</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">Usar TextSecure para ver y guardar todos los mensajes multimedia entrantes</string>
<string name="preferences__input_settings">Preferencias de escritura</string>
<string name="preferences__pref_enter_sends_title">Envío con la tecla de entrada</string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">Presionar la tecla de entrada enviará sus mensajes de texto</string>
<string name="preferences__display_settings">Mostrar preferencias</string>
<string name="preferences__choose_identity">Elegir identidad</string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">Elija su registro de contacto de la lista de contactos.</string>
<string name="preferences__encryption_settings">Preferencias de cifrado</string>
<string name="preferences__change_passphrase">Cambiar frase de contraseña</string>
<string name="preferences__change_my_passphrase">Cambiar mi frase de contraseña</string>
<string name="preferences__complete_key_exchanges">Completar intercambios de clave</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">Completar automáticamente los intercambios de clave para nuevas sesiones o para sesiones existentes con la misma clave de identidad</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">Incluir una etiqueta de espacio en blanco al final de cada mensaje no cifrado</string>
<string name="preferences__include_whitespace_tag">Incluir etiqueta de espacio en blanco</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">Firmar los mensajes de intercambio de claves con su clave de identidad</string>
<string name="preferences__sign_key_exchange">Firmar el intercambio de claves</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">Olvidar la frase de contraseña de la memoria después de un intervalo de tiempo</string>
<string name="preferences__timeout_passphrase">Expirar la frase de contraseña</string>
<string name="preferences__pref_timeout_interval_dialogtitle">Seleccionar la expiración de la frase de contraseña</string>
<string name="preferences__pref_timeout_interval_title">Intervalo de expiración</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">El intervalo de tiempo a esperar antes de olvidar la frase de contraseña de la memoria</string>
<string name="preferences__identity_key_settings">Preferencias de clave de identidad</string>
<string name="preferences__view_my_identity_key">Ver mi clave de identidad</string>
<string name="preferences__export_my_identity_key">Exportar mi clave de identidad</string>
<string name="preferences__import_contacts_key">Importar la clave del contacto</string>
<string name="preferences__import_an_identity_key_from_a_contact">Importar una clave de identidad de un contacto</string>
<string name="preferences__manage_identity_keys">Gestionar las claves de identidad</string>
<string name="preferences__manage_configured_identity_keys">Gestionar las claves de identidad configuradas</string>
<string name="preferences__notification_settings">Preferencias de notificación</string>
<string name="preferences__notifications">Notificaciones</string>
<string name="preferences__display_message_notifications_in_status_bar">Desplegar notificaciones de mensaje en la barra de estado</string>
<string name="preferences__led_color">Color LED</string>
<string name="preferences__change_notification_led_color">Cambiar el color LED de la notificación</string>
<string name="preferences__pref_led_blink_title">Patrón de parpadeo del LED</string>
<string name="preferences__change_notification_blink_pattern">Cambiar el patrón de parpadeo de la notificación LED</string>
<string name="preferences__pref_led_blink_dialogtitle">Seleccionar un patrón e parpadeo del LED</string>
<string name="preferences__select_led_color">Seleccionar color LED</string>
<string name="preferences__select_ringtone">Seleccionar tono</string>
<string name="preferences__vibrate">Vibración</string>
<string name="preferences__also_vibrate_when_notified">También vibrar con notificaciones</string>
<string name="preferences__minutes">minutos</string>
<string name="preferences__hours">horas</string>
<string name="preferences__green">Verde</string>
<string name="preferences__red">Rojo</string>
<string name="preferences__blue">Azul</string>
<string name="preferences__orange">Naranja</string>
<string name="preferences__cyan">Turquesa</string>
<string name="preferences__magenta">Magenta</string>
<string name="preferences__fast">Rápido</string>
<string name="preferences__normal">Normal</string>
<string name="preferences__slow">Despacio</string>
<string name="preferences__custom">Personalizado</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->
<!--contact_selection_list-->
<string name="contact_selection_list__menu_select_all">Seleccionar todo</string>
<string name="contact_selection_list__menu_unselect_all">Deseleccionar todo</string>
<!--contact_selection-->
<string name="contact_selection__menu_finished">Terminado</string>
<!--conversation_button_context-->
<string name="conversation_button_context__menu_send_unencrypted">Enviar sin cifrado</string>
<!--conversation_callable-->
<string name="conversation_callable__menu_call">Llamar</string>
<!--conversation_context-->
<string name="conversation_context__menu_message_details">Detalles del mensaje</string>
<string name="conversation_context__menu_copy_text">Copiar texto</string>
<string name="conversation_context__menu_delete_message">Borrar mensaje</string>
<string name="conversation_context__menu_forward_message">Reenviar mensaje</string>
<!--conversation_insecure-->
<string name="conversation_insecure__menu_start_secure_session">Iniciar sesión segura</string>
<!--conversation_list_batch-->
<string name="conversation_list_batch__menu_delete_selected">Borrar lo seleccionado</string>
<string name="conversation_list_batch__menu_select_all">Seleccionar todo</string>
<!--conversation_list-->
<string name="conversation_list__menu_search">Buscar</string>
<!--conversation_secure_verified-->
<!--conversation_secure_unverified-->
<string name="conversation_secure_verified__menu_security">Seguridad</string>
<string name="conversation_secure_verified__menu_verify_session">Verificar sesión</string>
<string name="conversation_secure_verified__menu_verify_recipient">Verificar destinatario</string>
<string name="conversation_secure_verified__menu_abort_secure_session">Abandonar la sesión segura</string>
<!--conversation-->
<string name="conversation__menu_add_attachment">Añadir archivo adjunto</string>
<string name="conversation__menu_delete_thread">Borrar conversación</string>
<string name="conversation__menu_compare">Comparar</string>
<!--conversation_group_options-->
<!--key_scanning-->
<string name="key_scanning__menu_compare">Comparar</string>
<string name="key_scanning__menu_get_scanned_to_compare">Escanear mi clave para comparar</string>
<string name="key_scanning__menu_scan_to_compare">Escanear para comparar</string>
<!--text_secure_locked-->
<string name="text_secure_locked__menu_unlock">Desbloquear</string>
<!--text_secure_normal-->
<string name="text_secure_normal__menu_new_message">Nuevo mensaje</string>
<string name="text_secure_normal__menu_settings">Preferencias</string>
<string name="text_secure_normal__menu_import_export">Importar/Exportar</string>
<string name="text_secure_normal__menu_import">Importar</string>
<string name="text_secure_normal__menu_export">Exportar</string>
<string name="text_secure_normal__menu_clear_passphrase">Eliminar frase de contraseña</string>
<!--verify_keys-->
<string name="verify_keys__menu_verified">Verificado</string>
<!--Misc. piggybacking-->
<!--EOF-->
</resources>

371
res/values-fr/strings.xml Normal file
View File

@@ -0,0 +1,371 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="app_name">TextSecure</string>
<string name="yes">Oui</string>
<string name="no">Non</string>
<string name="delete">Effacer</string>
<!--ApplicationExportManager-->
<string name="ApplicationExportManager_import_database_and_settings_title">Importer la base de données et les paramètres ?</string>
<string name="ApplicationExportManager_import_database_and_settings_message">Importer la base de données, les clés et les paramètres de TextSecure depuis la carte SD ?\n\nAVERTISSEMENT: Cela détruira tous les messages, clés et paramètres existant !</string>
<string name="ApplicationExportManager_importing_database_and_keys">Importation de la base de données et des clés</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">Importation de votre base de données SMS, des clés et des paramètres…</string>
<string name="ApplicationExportManager_export_database_question">Exporter la base de données ?</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">Exporter la base de données TextSecure, les clés et les paramètres vers la carte SD ?</string>
<string name="ApplicationExportManager_exporting_database_and_keys">Exportation de la base de donnée et des clés</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">Exportation de votre base de données SMS, des clés et des paramètres…</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">Aucune carte SD trouvée !</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">Erreur dexportation vers carte SD !</string>
<string name="ApplicationExportManager_import_successful_exclamation">Importation réussie !</string>
<string name="ApplicationExportManager_export_successful_exclamation">Exportation réussie !</string>
<string name="ApplicationExportManager_import">Importer</string>
<string name="ApplicationExportManager_export">Exporter</string>
<!--ApplicationMigrationManager-->
<string name="ApplicationMigrationManager_migrating_database">Migration de la base de données</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">Migration de la base de données des messages…</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">Copier la base de données de messages du système ?</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">TextSecure utilise une base de données chiffrée qui est séparée de la base de données par défaut du système. Voulez-vous copier vos messages existant dans la base de données chiffrée de TextSecure ? Votre base de données par défaut ne sera pas affectée.</string>
<string name="ApplicationMigrationManager_copy">Copier</string>
<string name="ApplicationMigrationManager_dont_copy">Ne pas copier</string>
<!--ApplicationPreferencesActivity-->
<string name="ApplicationPreferenceActivity_not_found_exclamation">Introuvable !</string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">Aucune clé didentité valide na été trouvée dans le contact indiqué.</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">Vous navez aucune clé didentité !</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">Vous n\'avez pas défini de contact pour vous même. Choisissez en un dans le menu Paramètres.</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">Exporté dans la base de données de contacts!</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">Il est nécessaire davoir entré votre phrase de passe avant dimporter des clés…</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">Il est nécessaire davoir entré votre phrase de passe avant de gérer les clés…</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">Vous navez pas encore défini de phrase de passe !</string>
<!--AttachmentTypeSelectorAdapter-->
<string name="AttachmentTypeSelectorAdapter_picture">Image</string>
<string name="AttachmentTypeSelectorAdapter_video">Vidéo</string>
<string name="AttachmentTypeSelectorAdapter_audio">Audio</string>
<!--ConversationItem-->
<string name="ConversationItem_message_size_d_kb">Taille du message : %d KB</string>
<string name="ConversationItem_expires_s">Expiration : %s</string>
<string name="ConversationItem_error_sending_message">Erreur denvoi du message</string>
<string name="ConversationItem_sending">Envoi…</string>
<string name="ConversationItem_saving_attachment">Sauver la pièce jointe</string>
<string name="ConversationItem_saving_attachment_to_sd_card">Enregistrement de pièce jointe sur la carte SD…</string>
<string name="ConversationItem_save_to_sd_card">Enregistrer sur la carte SD ?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">Ce média est stocké dans une base de données chiffrée. La version que vous sauvez sur carte SD ne sera plus chiffrée, voulez-vous continuer ?</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">Erreur denregistrement de la pièce jointe sur la carte SD !</string>
<string name="ConversationItem_success_exclamation">Réussite !</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">Impossible décrire sur la carte SD !</string>
<string name="ConversationItem_view_secure_media_question">Visualiser le média sécurisé ?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">Ce média est stocké dans une base de données chiffrée. Malheureusement, le voir avec un visualisateur de contenu externe nécessite pour le moment que les données soient temporairement déchiffrées et écrites sur le disque. Êtes-vous sûr de vouloir faire cela ?</string>
<string name="ConversationItem_key_exchange_message">Message déchange de clés</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">Message déchange de clés reçu et traité.</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">Erreur, un message déchange de clés périmé a été reçu.</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">Message déchange de clés reçu, cliquez pour le traiter</string>
<!--ConversationActivity-->
<string name="ConversationActivity_initiate_secure_session_question">Initier une session sécurisée ?</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">Initer une session sécurisée avec %s ?</string>
<string name="ConversationActivity_abort_secure_session_confirmation">Confirmer l\'interruption de la session sécurisée</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">Êtes-vous sûr de vouloir interrompre cette session sécurisée ?</string>
<string name="ConversationActivity_delete_thread_confirmation">Confirmation de la suppression du fil</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">Êtes-vous sûr de vouloir supprimer définitivement cette conversation ?</string>
<string name="ConversationActivity_add_attachment">Ajouter une pièce jointe</string>
<string name="ConversationActivity_compose_message">Rédiger le message</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">Désolé, il y a eu une erreur en ajoutant votre pièce jointe.</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">Désolé, la vidéo sélectionnée dépasse les restrictions de taille du message.</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">Désolé, le fichier audio sélectionné dépasse les restrictions de taille du message.</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">Le destinataire nest pas une adresse SMS ou e-mail valide !</string>
<string name="ConversationActivity_message_is_empty_exclamation">Le message est vide !</string>
<string name="ConversationActivity_forward_message_prefix">FWD</string>
<string name="ConversationActivity_group_conversation_recipients">Destinataires Conversation de Groupe</string>
<string name="ConversationActivity_group_conversation">Conversation de Groupe</string>
<string name="ConversationActivity_d_recipients_in_group">%d destinataires dans le groupe</string>
<!--ConversationFragment-->
<string name="ConversationFragment_message_details">Détails du message</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">Expéditeur : %1$s\nTransport : %2$s\nEnvoyé / Reçu : %3$s</string>
<string name="ConversationFragment_confirm_message_delete">Confirmer la suppression du message</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">Êtes-vous sûr de vouloir supprimer définitivement ce message ?</string>
<!--ConversationListAdapter-->
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">Message chiffré, entrez la phrase de passe…</string>
<string name="ConversationListAdapter_key_exchange_message">Message déchange de clés…</string>
<!--ConversationListFragment-->
<string name="ConversationListFragment_delete_threads_question">Supprimer les fils ?</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">Êtes-vous sûr de vouloir supprimer TOUS les fils de discussion sélectionnés ?</string>
<!--ConversationListItem-->
<string name="ConversationListItem_key_exchange_message">Message déchange de clés…</string>
<!--KeyScanningActivity-->
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">Aucune clé scannée na été trouvée !</string>
<!--PassphraseChangeActivity-->
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">Les phrases de passe ne correspondent pas !</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">Ancienne phrase de passe incorrecte !</string>
<!--PassphraseCreateActivity-->
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">Les phrases de passe ne correspondent pas !</string>
<string name="PassphraseCreateActivity_generating_keypair">Génération de la KeyPair</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">Génération dune paire de clés locale de chiffrement…</string>
<!--PassphrasePromptActivity-->
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">Phrase de passe incorrecte !</string>
<!--ReceiveKeyActivity-->
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">ERREUR:\n\nVous avez reçu une clef publique corrompue. Cette clef est inutilisable, veuillez renouveler la session sécurisée.</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">ERREUR:\n\nVous avez reçu une clef publique issue d\'une version de protocole non supportée. Cette clef est inutilisable, veuillez renouveler la session sécurisée.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">Ce message d\'échange de clef ne contient aucune signature d\'identité</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">Ce message d\'échange de clefs inclus une signature d\'identité, mais vous ne l\'avez pas encore approuvée.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">Ce message d\'échange de clefs inclus une signature d\'identité approuvée de: %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">Ceci est la clef que vous avez envoyé pour initier une session sécurisée avec %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">Ceci est la clef que vous avez reçue pour initier une session sécurisée avec %s</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">Vous avez reçu un message d\'échange de clefs de %s.\n\nATTENTION: Vous avez déjà une session cryptée avec ce contact. Si vous choisissez d\'accepter cet échange de clefs, votre session actuelle sera détruite et vous devrez vous authentifier de nouveau. Voulez vous compléter cet échange de clefs?</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">Vous avez reçu un message d\'échange de clefs de %s. Vous avez déjà commencé une session avec ce contact, et en acceptant cette clef, vous allez compléter l\'échange de clef. Voulez vous compléter cet échange de clefs?</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">Vous avez commencé un échange de clefs avec %s mais n\'avez toujours pas reçu de réponse.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">Vous avez reçu un message d\'échange de clefs de %s. Vous n\'avez pas encore de session avec ce contact, voulez vous compléter cet échange de clefs?</string>
<!--ReviewIdentitiesActivity-->
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">Impossible de visualiser une clé didentité corrompue !</string>
<string name="ReviewIdentitiesActivity_delete_identity">Supprimer lidentité ?</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">Êtes-vous sûr de vouloir supprimer définitivement cette clef didentité ?</string>
<string name="ReviewIdentitiesActivity_invalid_identity">Identité invalide !</string>
<!--SaveIdentityActivity-->
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">Vous devez renseigner un nom pour cette identité !</string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">Le nom didentité existe !</string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">Une identité avec le nom renseigné existe déjà.</string>
<string name="SaveIdentityActivity_manage_identities">Gérer les identités</string>
<!--VerifyIdentityActivity-->
<string name="VerifyIdentityActivity_mark_identity_verified_question">Marquer l\'identité comme vérifiée?</string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">Êtes vous sûr de reconnaître l\'empreinte d\'identité du destinataire et la marquer comme vérifiée?</string>
<string name="VerifyIdentityActivity_mark_verified">Marquer comme vérifié</string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">Vous navez pas de clé didentité.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">Le destinataire na pas de clé didentité.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">Le destinataire na pas de clé didentité !</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">Analyser leur clef pour comparer</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">Analyser mes clefs</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">ATTENTION, les clefs scannées sont DIFFERENTES. Veuillez vérifier scrupuleusement le texte de l\'empreinte de clefs.</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">NON vérifié !</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">Leur clef est correcte. Il est aussi nécessaire de vérifier votre clef avec la leur</string>
<string name="VerifyIdentityActivity_verified_exclamation">Vérifié !</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">Vous navez aucune clé didentité !</string>
<!--VerifyImportedIdentityActivity-->
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">Vous devez donner un nom à ce contact !</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">Enregistrer la clef d\'identité ?</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">Erreur d\'enregistrement de la clef d\'identité</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">Cette clef d\'identité ou une clef soociée au même nom existe déjà. Veuillez éditer votre base de données de clefs.</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">Analyser pour comparer</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">Être analysé pour comparer</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">NON vérifié !</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ATTENTION: les clefs analysées ne sont CORRESPONDENT PAS!</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">Les clefs analysées correspondent.</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">Vérifié !</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">Êtes vous sûr de vouloir valider cette clef d\'identité pour tout échange futur avec %s ? Vous ne devriez faire cela que si vous avez effectivement vérifié cette empreinte.</string>
<!--VerifyKeysActivity-->
<string name="VerifyKeysActivity_mark_session_verified_question">Marquer cette session comme vérifiée?</string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">Êtes vous sûr d\'avoir validé ces empreintes et désirez marquer cette session comme vérifiée?</string>
<string name="VerifyKeysActivity_mark_verified">Marquer comme vérifié</string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">Analyser mon empreinte</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">Analyser leur empreinte</string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">ATTENTION: les clefs analysées ne correspondent PAS! Veuillez vérifier scrupuleusement le texte de l\'empreinte</string>
<string name="VerifyKeysActivity_not_verified_exclamation">NON vérifié !</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">Leur clef est valide. Il est aussi nécessaire d\'analyser votre empreinte.</string>
<string name="VerifyKeysActivity_verified_exclamation">Vérifié !</string>
<!--ViewIdentityActivity-->
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">Vous navez pas de clé didentité.</string>
<string name="ViewIdentityActivity_scan_to_compare">Analyser pour comparer</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">Être analysé pour comparer</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ATTENTION, les clefs analysées ne correspondent PAS!</string>
<string name="ViewIdentityActivity_not_verified_exclamation">NON vérifié !</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">Les clefs analysées correspondent!</string>
<string name="ViewIdentityActivity_verified_exclamation">Vérifié !</string>
<!--KeyExchangeInitiator-->
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">Initier malgré la demande existante ?</string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">Vous avez déjà envoyé une demande dinitiation de session à ce destinataire, êtes-vous sûr de vouloir en envoyer une autre ? Cela invalidera la première demande.</string>
<string name="KeyExchangeInitiator_send">Envoyer</string>
<!--MessageDisplayHelper-->
<string name="MessageDisplayHelper_bad_encrypted_message">Message mal chiffré…</string>
<string name="MessageDisplayHelper_decrypting_please_wait">Déchiffrage, veuillez patienter…</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">Message chiffré pour une session non-existante…</string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">Erreur de déchiffrage : message local corrompu, la MAC ne correspond pas. Tentative de manipulation ?</string>
<!--MmsDatabase-->
<string name="MmsDatabase_connecting_to_mms_server">Connexion au serveur MMS…</string>
<string name="MmsDatabase_downloading_mms">Téléchargement du MMS…</string>
<string name="MmsDatabase_mms_download_failed">Échec de téléchargement du MMS !</string>
<string name="MmsDatabase_downloading">Téléchargement</string>
<string name="MmsDatabase_anonymous">Anonyme</string>
<!--MmsMessageRecord-->
<string name="MmsMessageRecord_decrypting_mms_please_wait">Déchiffrage du MMS, veuillez patienter…</string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">Message MMS mal chiffré…</string>
<string name="MmsMessageRecord_mms_message_encrypted_for_non_existing_session">Message MMS chiffré pour une session non-existante…</string>
<!--ApplicationMigrationService-->
<string name="ApplicationMigrationService_migrating">Migration</string>
<string name="ApplicationMigrationService_migrating_system_text_messages">Migration des messages texte du système</string>
<!--KeyCachingService-->
<string name="KeyCachingService_textsecure_passphrase_cached">Phrase de passe TextSecure en cache</string>
<string name="KeyCachingService_passphrase_cached">Phrase de passe en cache</string>
<!--MessageNotifier-->
<string name="MessageNotifier_d_new_messages">(%d) Nouveaux messages</string>
<string name="MessageNotifier_d_new_messages_most_recent_from_s">(%1$d) Nouveaux messages, le dernier est de : %2$s</string>
<string name="MessageNotifier_most_recent_from_s">Dernier de : %s</string>
<!--auto_initiate_activity-->
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">Vous avez reçu un message de quelqu\'un qui utilise les sessions chiffrées TextSecure. Voulez vous commencer une session chiffrée avec lui?</string>
<string name="auto_initiate_activity__initiate_exchange">Commencer l\'échange</string>
<!--change_passphrase_activity-->
<string name="change_passphrase_activity__old_passphrase">Ancienne phrase de passe :</string>
<string name="change_passphrase_activity__new_passphrase">Nouvelle phrase de passe :</string>
<string name="change_passphrase_activity__repeat_new_passphrase">Répéter la nouvelle phrase de passe :</string>
<!--contact_selection_group_activity-->
<!--contact_selection_list_activity-->
<string name="contact_selection_group_activity__no_contacts">Aucun contact.</string>
<!--ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">Sélectionner pour</string>
<!--contact_selection_recent_activity-->
<string name="contact_selection_recent_activity__no_recent_calls">Aucun appel récent.</string>
<!--conversation_activity-->
<string name="conversation_activity__type_message">Entrez le message</string>
<string name="conversation_activity__send">Envoyer</string>
<string name="conversation_activity__remove">Supprimer</string>
<!--conversation_fragment_cab-->
<string name="conversation_fragment_cab__batch_selection_mode">Mode de sélection par lot</string>
<!--create_passphrase_activity-->
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">Veuillez choisir une phrase de passe pour chiffrer localement vos données. Cette phrase de passe doit être complexe.</string>
<string name="create_passphrase_activity__passphrase">Phrase de passe :</string>
<string name="create_passphrase_activity__repeat">Répétez :</string>
<!--receive_key_activity-->
<string name="receive_key_activity__session">Session</string>
<string name="receive_key_activity__identities">Identités</string>
<string name="receive_key_activity__complete_exchange">Finaliser l\'échange</string>
<!--recipients_panel-->
<string name="recipients_panel__to">À</string>
<!--review_identities-->
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">Vous n\'avez pour linstant pas de clef d\'identité dans votre base de données de confiance.</string>
<!--save_identity_activity-->
<string name="save_identity_activity__identity_name">Nom de l\'identité :</string>
<!--verify_identity_activity-->
<string name="verify_identity_activity__their_identity_they_read">Leur identité (ce qu\'ils lisent) :</string>
<string name="verify_identity_activity__your_identity_you_read">Votre identité (ce que vous lisez) :</string>
<!--verify_import_identity_activity-->
<string name="verify_import_identity_activity__identity_name_n">Nom d\'identité :\\n</string>
<string name="verify_import_identity_activity__imported_identity_n">Identité importée :\\n</string>
<string name="verify_import_identity_activity__verified">Vérifié !</string>
<string name="verify_import_identity_activity__compare">Comparer</string>
<!--verify_keys_activity-->
<string name="verify_keys_activity__they_read_this">Ils lisent ceci :</string>
<string name="verify_keys_activity__you_read_this">Vous lisez ceci :</string>
<!--view_identity_activity-->
<string name="view_identity_activity__identity">Identité</string>
<string name="view_identity_activity__qr_code">QR Code</string>
<!--AndroidManifest.xml-->
<string name="AndroidManifest__create_passphrase">Créer une phrase de passe</string>
<string name="AndroidManifest__enter_passphrase">Saisir la phrase de passe</string>
<string name="AndroidManifest__select_contacts">Sélectionner des contacts</string>
<string name="AndroidManifest__textsecure_detected">TextSecure détecté</string>
<string name="AndroidManifest__public_identity_key">Clef d\'Identité Publique</string>
<string name="AndroidManifest__change_passphrase">Modifier la phrase de passe</string>
<string name="AndroidManifest__verify_session">Vérifier la session</string>
<string name="AndroidManifest__verify_identity">Vérifier lidentité</string>
<string name="AndroidManifest__save_identity">Sauvegarder lidentité</string>
<string name="AndroidManifest__manage_identity_keys">Gérer les clefs d\'identité</string>
<string name="AndroidManifest__complete_key_exchange">Finaliser l\'échange de clefs</string>
<string name="AndroidManifest__verify_imported_identity">Vérifier lidentité importée</string>
<!--preferences.xml-->
<string name="preferences__use_settings">Paramètres dutilisation</string>
<string name="preferences__pref_all_sms_title">Utiliser pour tous les SMS</string>
<string name="preferences__pref_all_mms_title">Utiliser pour tous les MMS</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">Utiliser TextSecure pour consulter et stocker tous les messages texte entrant ?</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">Utiliser TextSecure pour consulter et stocker tous les messages multimédia entrant ?</string>
<string name="preferences__input_settings">Paramètres de saisie</string>
<string name="preferences__pref_enter_sends_title">La touche Entrée envoie</string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">La touche entrée enverra les messages texte</string>
<string name="preferences__display_settings">Paramètres d\'affichage</string>
<string name="preferences__choose_identity">Choisir une identité</string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">Choisissez votre entrée de contact dans le répertoire</string>
<string name="preferences__encryption_settings">Paramètres de chiffrement</string>
<string name="preferences__change_passphrase">Modifier le Mot de Passe</string>
<string name="preferences__change_my_passphrase">Modifier mon mot de passe</string>
<string name="preferences__complete_key_exchanges">Finaliser l\'échange de clefs</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">Finaliser automatiquement les échanges de clés pour les sessions, nouvelles ou existantes, avec la même clef d\'identité.</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">Ajouter un caractère espace vide à la fin de tous les messages en clair</string>
<string name="preferences__include_whitespace_tag">Ajouter un caractère espace vide</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">Signer le message d\'échange de clés avec la clef d\'identité</string>
<string name="preferences__sign_key_exchange">Signer l\'échange de clés</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">Oublier le mot de passe en mémoire après une certaine durée</string>
<string name="preferences__timeout_passphrase">Expiration du mot de passe</string>
<string name="preferences__pref_timeout_interval_dialogtitle">Choisir la durée de validité du mot de passe</string>
<string name="preferences__pref_timeout_interval_title">Durée d\'expiration</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">Durée avant doublier le mot de passe en mémoire</string>
<string name="preferences__identity_key_settings">Paramètres des clés d\'identité</string>
<string name="preferences__view_my_identity_key">Afficher ma clé d\'identité</string>
<string name="preferences__export_my_identity_key">Exporter ma clé d\'identité</string>
<string name="preferences__import_contacts_key">Importer la clé du contact</string>
<string name="preferences__import_an_identity_key_from_a_contact">Importer une clé d\'identité depuis un contact</string>
<string name="preferences__manage_identity_keys">Gérer les clés d\'identité</string>
<string name="preferences__manage_configured_identity_keys">Gérer les clés d\'identité configurées</string>
<string name="preferences__notification_settings">Paramètres de notification</string>
<string name="preferences__notifications">Notifications</string>
<string name="preferences__display_message_notifications_in_status_bar">Afficher les notifications dans la barre de statut</string>
<string name="preferences__led_color">Couleur de la LED</string>
<string name="preferences__change_notification_led_color">Modifier la couleur de la LED de notification</string>
<string name="preferences__pref_led_blink_title">Rythme de clignotement de la LED</string>
<string name="preferences__change_notification_blink_pattern">Modifier le rythme de clignotement de la LED de notification</string>
<string name="preferences__pref_led_blink_dialogtitle">Choisir le rythme de clignotement de la LED</string>
<string name="preferences__select_led_color">Choisir la couleur de la LED</string>
<string name="preferences__select_ringtone">Choisir une sonnerie</string>
<string name="preferences__vibrate">Vibrer</string>
<string name="preferences__also_vibrate_when_notified">Vibrer aussi lors des notifications</string>
<string name="preferences__minutes">minutes</string>
<string name="preferences__hours">heures</string>
<string name="preferences__green">Vert</string>
<string name="preferences__red">Rouge</string>
<string name="preferences__blue">Bleu</string>
<string name="preferences__orange">Orange</string>
<string name="preferences__cyan">Cyan</string>
<string name="preferences__magenta">Magenta</string>
<string name="preferences__fast">Rapide</string>
<string name="preferences__normal">Normal</string>
<string name="preferences__slow">Lent</string>
<string name="preferences__custom">Personnalisé</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->
<!--contact_selection_list-->
<string name="contact_selection_list__menu_select_all">Sélectionner tout</string>
<string name="contact_selection_list__menu_unselect_all">Désélectionner tout</string>
<!--contact_selection-->
<string name="contact_selection__menu_finished">Terminé</string>
<!--conversation_button_context-->
<string name="conversation_button_context__menu_send_unencrypted">Envoyer en clair</string>
<!--conversation_callable-->
<string name="conversation_callable__menu_call">Appeler</string>
<!--conversation_context-->
<string name="conversation_context__menu_message_details">Détails du message</string>
<string name="conversation_context__menu_copy_text">Copier le texte</string>
<string name="conversation_context__menu_delete_message">Supprimer le message</string>
<string name="conversation_context__menu_forward_message">Faire suivre le message</string>
<!--conversation_insecure-->
<string name="conversation_insecure__menu_start_secure_session">Commencer une session sécurisée</string>
<!--conversation_list_batch-->
<string name="conversation_list_batch__menu_delete_selected">Supprimer la sélection</string>
<string name="conversation_list_batch__menu_select_all">Sélectionner tout</string>
<!--conversation_list-->
<string name="conversation_list__menu_search">Chercher</string>
<!--conversation_secure_verified-->
<!--conversation_secure_unverified-->
<string name="conversation_secure_verified__menu_security">Sécurité</string>
<string name="conversation_secure_verified__menu_verify_session">Vérifier la Session</string>
<string name="conversation_secure_verified__menu_verify_recipient">Vérifier le Destinataire</string>
<string name="conversation_secure_verified__menu_abort_secure_session">Interrompre la session sécurisée</string>
<!--conversation-->
<string name="conversation__menu_add_attachment">Ajouter une pièce jointe</string>
<string name="conversation__menu_delete_thread">Supprimer le fil de discussion</string>
<string name="conversation__menu_compare">Comparer</string>
<!--conversation_group_options-->
<string name="convesation_group_options__recipients_list">Liste des destinataires</string>
<!--key_scanning-->
<string name="key_scanning__menu_compare">Comparer</string>
<string name="key_scanning__menu_get_scanned_to_compare">Être analysé pour comparer</string>
<string name="key_scanning__menu_scan_to_compare">Analyser pour comparer</string>
<!--text_secure_locked-->
<string name="text_secure_locked__menu_unlock">Débloquer</string>
<!--text_secure_normal-->
<string name="text_secure_normal__menu_new_message">Nouveau Message</string>
<string name="text_secure_normal__menu_settings">Paramètres</string>
<string name="text_secure_normal__menu_import_export">Importer / Exporter</string>
<string name="text_secure_normal__menu_import">Importer</string>
<string name="text_secure_normal__menu_export">Exporter</string>
<string name="text_secure_normal__menu_clear_passphrase">Oublier le mot de passe</string>
<!--verify_keys-->
<string name="verify_keys__menu_verified">Vérifié</string>
<!--Misc. piggybacking-->
<string name="PlayStoreListing">TextSecure est une application de messagerie texte avec une sécurité améliorée, qui constitue une alternative complète à lapplication de messagerie texte par défaut. Les messages à dautres utilisateurs de TextSecure sont chiffrés à la volée, et tous les messages sont stockés dans une base de données chiffrée sur lappareil. Si votre téléphone est perdu ou volé, vos messages seront en sécurité, et les communications avec dautres utilisateurs de TextSecure ne peuvent pas être espionnées à la volée.</string>
<!--EOF-->
<string name="conversation_item_sent__download">Télécharger</string>
<string name="conversation_item_received__download">Télécharger</string>
</resources>

360
res/values-it/strings.xml Normal file
View File

@@ -0,0 +1,360 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="app_name">TextSecur</string>
<string name="yes"></string>
<string name="no">No</string>
<string name="delete">Cancella</string>
<!--ApplicationExportManager-->
<string name="ApplicationExportManager_import_database_and_settings_title">Importare il Database e le Impostazioni?</string>
<string name="ApplicationExportManager_import_database_and_settings_message">Importare il Database, le chiavi e le impostazioni di TextSecure dalla memoria SD?\nATTENZIONE: Questa operazione sovrascriverà ogni messaggio, chiave e impostazione esistente!</string>
<string name="ApplicationExportManager_importing_database_and_keys">Stò importando il Database e le chiavi</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">Stò importando il database degli SMS, le chiavi e le impostazioni...</string>
<string name="ApplicationExportManager_export_database_question">Esportare il Database?</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">Esportare il Database, le chiavi e le impostazioni di TextSecure nella memoria SD?</string>
<string name="ApplicationExportManager_exporting_database_and_keys">Stò esportando il Database e le chiavi</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">Stò esportando il database degli SMS, le chiavi e le impostazioni...</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">Nessuna memoria SD trovata!</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">Errore durante l\'esportazione sulla memoria SD!</string>
<string name="ApplicationExportManager_import_successful_exclamation">Importazione completata!</string>
<string name="ApplicationExportManager_export_successful_exclamation">Esportazione completata!</string>
<string name="ApplicationExportManager_import">Importa</string>
<string name="ApplicationExportManager_export">Esporta</string>
<!--ApplicationMigrationManager-->
<string name="ApplicationMigrationManager_migrating_database">Cambio del Database!</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">Cambio del Database di messaggi!</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">Vuoi copiare il Database dei messaggi di testo di sistema?</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">TextSecure utilizza un database cifrato che è separato dal database di default. Vorresti copiare i tuoi messaggi esistenti nel database cifrato di TextSecure? Il tuoi database di default non subità modifiche.</string>
<string name="ApplicationMigrationManager_copy">Copia</string>
<string name="ApplicationMigrationManager_dont_copy">Non copiare</string>
<!--ApplicationPreferencesActivity-->
<string name="ApplicationPreferenceActivity_not_found_exclamation">Non trovato!</string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">Nessuna chiave di identità valida trovata nel contatto selezionato.</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">Non hai una chiave di identità!</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">Non hai ancora definito un contatto per te stesso!! Selezionane uno dalle Impostazioni.</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">Database dei contatti esportato!</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">Devi inserire la tua password prima di importare le chiavi...</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">Devi inserire la tua password prima di controllare le chiavi...</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">Non hai ancora impostato una password!</string>
<!--AttachmentTypeSelectorAdapter-->
<!--ConversationItem-->
<string name="ConversationItem_message_size_d_kb">Dimensione Messaggio: %d KB</string>
<string name="ConversationItem_expires_s">Scadenza: %s</string>
<string name="ConversationItem_error_sending_message">Errore durante l\'invio del messaggio</string>
<string name="ConversationItem_sending">Invio...</string>
<string name="ConversationItem_saving_attachment">Salvataggio Allegato</string>
<string name="ConversationItem_saving_attachment_to_sd_card">Salvataggio allegato sulla memoria SD...</string>
<string name="ConversationItem_save_to_sd_card">Salvare sulla memoria SD?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">Questo file multimediale è stato salvato in un database cifrato. La versione del file salvata sulla memoria SD non sarà più cifrata, vuoi continuare?</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">Errore durante il salvataggio dell\'allegato nella memoria SD!</string>
<string name="ConversationItem_success_exclamation">Completato!</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">Impossibile scrivere nella memoria SD!</string>
<string name="ConversationItem_view_secure_media_question">Vuoi vedere il file multimediale?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">Questo file multimediale è salvato in un database cifrato. Sfortunatamente, per vederlo con un programma esterno è necessario che il file venga decifrato e riscritto su disco. Vuoi procedere?</string>
<string name="ConversationItem_key_exchange_message">Messaggio per la contrattazione della chiave</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">Contrattazione della chiave ricevuta e completata.</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">Errore, ricevuto messaggio per la contrattazione della chiave scaduto.</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">Ricevuto messaggio per la contrattazione della chiave, cliccare per procedere</string>
<!--ConversationActivity-->
<string name="ConversationActivity_initiate_secure_session_question">Iniziare una sessione sicura?</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">Iniziare una sessione sicura con %s?</string>
<string name="ConversationActivity_abort_secure_session_confirmation">Terminare la sessione sicura?</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">Sei sicuro di voler terminare questa sessione sicura?</string>
<string name="ConversationActivity_delete_thread_confirmation">Confermi di voler cancellare il thread?</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">Sei sicuro di voler cancellare permanentemente questa conversazione?</string>
<string name="ConversationActivity_add_attachment">Aggiungi allegato</string>
<string name="ConversationActivity_compose_message">Scrivi un messaggio</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">Attenzione, c\'è stato un errore nell\'inviare il tuo allegato.</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">Attenzione, il video selezionato supera la grandezza massima consentita.</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">Attenzione, il file audio selezionato supera la grandezza massima consentita.</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">Il destinatario non è un indirizzo valido per l\'SMS o per l\'email!</string>
<string name="ConversationActivity_message_is_empty_exclamation">Il messaggio è vuoto!</string>
<!--ConversationFragment-->
<string name="ConversationFragment_message_details">Dettagli messaggio</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">Mittente: %1$s\nTrasportato: %2$s\nInviato/Ricevuto: %3$s</string>
<string name="ConversationFragment_confirm_message_delete">Conferma l\'eliminazione del messaggio</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">Sicuro di voler cancellare definitivamente questo messaggio?</string>
<!--ConversationListAdapter-->
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">Messaggio cifrato, inserire la password...</string>
<string name="ConversationListAdapter_key_exchange_message">Messaggio di scambio della chiave...</string>
<!--ConversationListFragment-->
<string name="ConversationListFragment_delete_threads_question">Cancellare i threads?</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">Sei sicuro di voler cancellare TUTTE le conversazioni selezionate?</string>
<!--ConversationListItem-->
<string name="ConversationListItem_key_exchange_message">Messaggio di scambio della chiave...</string>
<!--KeyScanningActivity-->
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">Nessuna chiave scansionata trovata!</string>
<!--PassphraseChangeActivity-->
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">Le passwords non corrispondono!</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">Vecchia password errata!</string>
<!--PassphraseCreateActivity-->
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">Le passwords non corrispondono!</string>
<string name="PassphraseCreateActivity_generating_keypair">Generazione del paio di chiavi</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">Generazione di un paio di chiavi per la cifratura locale...</string>
<!--PassphrasePromptActivity-->
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">Password errata!</string>
<!--ReceiveKeyActivity-->
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">ERRORE:\n\nHai ricevuto una chiave pubblica corrotta. Questa chiave non può essere utilizzata, inizia una nuova sessione sicura.</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">ERRORE:\n\nHai ricevuto una chiave pubblica da una versione non supportata del protocollo. Questa chiave non può essere utilizzata, inizia una nuova sessione sicura.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">Questo messaggio per lo scambio della chiave non include la firma dell\'identità.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">Questo messaggio per lo scambio della chiave include la firma dell\'identità ma non ne hai ancora impostato la fiducia.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">Questo messaggio per lo scambio della chiave include la firma dell\'identità di cui ti fidi per: %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">Questa è la chiave che hai inviato per la sessione cifrata con %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">Questa è la chiave che hai ricevuto per la sessione cifrata con %s</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">Hai ricevuto un messaggio per lo scambio della chiave da %s.\n\nATTENZIONE: Hai già una sessione cifrata con questo contatto. Se scegli di accettare questo messaggio per lo scambio della chiave cancellerai la tua sessione corrente e dovrai ri-autenticarti. Vuoi completare questo scambio di chiave?</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">Hai ricevuto un messaggio per lo scambio della chiave da %s. Avevi già iniziato una sessione con questo contatto e accettando questa chiave completerai lo scambio. Vuoi completare questo scambio di chiave?</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">Hai iniziato uno scambio di chiave con %s ma non hai ancora ricevuto una risposta.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">Hai ricevuto un messaggio per lo scambio della chiave da %s. Non hai ancora una sessione esistente con questo contatto, vuoi completare questo scambio di chiave?</string>
<!--ReviewIdentitiesActivity-->
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">Impossibile vedere la chiave di identità corrotta!</string>
<string name="ReviewIdentitiesActivity_delete_identity">Cancellare identità?</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">Sicuro di voler cancellare definitivamente questa chiave di identità?</string>
<string name="ReviewIdentitiesActivity_invalid_identity">Identità invalida!</string>
<!--SaveIdentityActivity-->
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">Devi specificare un nome per questa identità!</string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">Il nome è già esistente!</string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">La chiave di identità con il nome selezionato esiste già!</string>
<string name="SaveIdentityActivity_manage_identities">Controllo delle Identità</string>
<!--VerifyIdentityActivity-->
<string name="VerifyIdentityActivity_mark_identity_verified_question">Impostare l\'identità come verificata?</string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">Sei sicuro di controllato l\'identità del destinatario e vuoi impostarla come verificata?</string>
<string name="VerifyIdentityActivity_mark_verified">Impostata come verificata!</string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">Non hai una chiave di identità.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">Il destinatario non ha una chiave di identità.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">Il destinatario non ha una chiave di identità.</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">Scansiona la chiave per controllare</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">Scansione la mia chiave</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">ATTENZIONE, la chiave scansionata non corrisponde! Controlla il testo della chiave con attenzione.</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">Non verificata!</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">La chiave è corretta. È anche necessario verificare la tua chiave.</string>
<string name="VerifyIdentityActivity_verified_exclamation">Verificato!</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">Non hai una chiave per l\'identità!</string>
<!--VerifyImportedIdentityActivity-->
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">Devi specificare un nome per questo contatto!</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">Salvare la chiave dell\'identità?</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">Errore durante il salvataggio della chiave dell\'identità!</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">Questa chiave dell\'identità or una chiave con lo stesso nome esiste già. Modifica la tua chiave nel database.</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">Scansione per verificare</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">Scansionato per la verifica</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">NON Verificato!!</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ATTENZIONE, la chiave scansionata NON corrisponde!</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">La chiave scansionata corrisponde!</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">Verificato!</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">Sicuro di voler impostare questa chiave di identità come valida per tutte le future conversazioni con %s? Dovresti farlo solo se hai verificato la chiave personalmente.</string>
<!--VerifyKeysActivity-->
<string name="VerifyKeysActivity_mark_session_verified_question">Impostare la sessione come verificata?</string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">Sicuro di aver controllato le chiavi e vuoi impostare la sessione come verificata?</string>
<string name="VerifyKeysActivity_mark_verified">Impostata come verificata</string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">Impronte della chiave scansionate</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">Scansiona le impronte della chiave</string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">ATTENZIONE, la chiave scansionata non corrisponde! Controlla l\'impronta con attenzione.</string>
<string name="VerifyKeysActivity_not_verified_exclamation">NON Verificato</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">La chiave è corretta. È necessario ottenere anche l\'impronta della tua chiave.</string>
<string name="VerifyKeysActivity_verified_exclamation">Verificato!</string>
<!--ViewIdentityActivity-->
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">Non hai una chiave di identità.</string>
<string name="ViewIdentityActivity_scan_to_compare">Scansione per controllare</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">Scansionato per controllare</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ATTENZIONE, la chiave scansionata non corrisponde!</string>
<string name="ViewIdentityActivity_not_verified_exclamation">NON verificata!</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">La chiave scansionata corrisponde!</string>
<string name="ViewIdentityActivity_verified_exclamation">Verificata!</string>
<!--KeyExchangeInitiator-->
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">Iniziare comunque una richiesta esistente?</string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">Hai giò inviata una richiesta di inizio di sessione a questo contatto, sei sicuro di volerne inviare un\'altra? Questo renderà invalida la precedente.</string>
<string name="KeyExchangeInitiator_send">Inviata</string>
<!--MessageDisplayHelper-->
<string name="MessageDisplayHelper_bad_encrypted_message">Cifratura messaggio errata...</string>
<string name="MessageDisplayHelper_decrypting_please_wait">Decifratura in corso...</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">Messaggio cifrato per una sessione non esistente...</string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">Errore di decifratura: messaggio locale corrotto, il MAC non corrisponde. Potenziale manomissione?</string>
<!--MmsDatabase-->
<string name="MmsDatabase_connecting_to_mms_server">Connessione al server MMS...</string>
<string name="MmsDatabase_downloading_mms">Download MMS...</string>
<string name="MmsDatabase_mms_download_failed">Download MMS fallito</string>
<string name="MmsDatabase_downloading">Scaricamento...</string>
<string name="MmsDatabase_anonymous">Anonimo</string>
<!--MmsMessageRecord-->
<string name="MmsMessageRecord_decrypting_mms_please_wait">Decifratura MMS in corso, attendere...</string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">Cifratura MMS invalida..</string>
<string name="MmsMessageRecord_mms_message_encrypted_for_non_existing_session">Messaggio MMS cifrato per una sessione non esistente</string>
<!--ApplicationMigrationService-->
<string name="ApplicationMigrationService_migrating">Spostamento</string>
<string name="ApplicationMigrationService_migrating_system_text_messages">Cambio sistema di messaggio di testo</string>
<!--KeyCachingService-->
<string name="KeyCachingService_textsecure_passphrase_cached">Password di TextSecure salvata in cache</string>
<string name="KeyCachingService_passphrase_cached">Password salvata in cache</string>
<!--MessageNotifier-->
<string name="MessageNotifier_d_new_messages">(%d) Nuovi messaggi</string>
<string name="MessageNotifier_d_new_messages_most_recent_from_s">(%1$d) Nuovi messaggio, il più recente da %2$s</string>
<string name="MessageNotifier_most_recent_from_s">Più recente da: %s</string>
<!--auto_initiate_activity-->
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">Hai ricevuto un messaggio da qualcuno che supporta una sessione cifrata di TextSecure. Vuoi iniziare una sessione sicura?</string>
<string name="auto_initiate_activity__initiate_exchange">Inizio scambio delle chiavi</string>
<!--change_passphrase_activity-->
<string name="change_passphrase_activity__old_passphrase">Vecchia password:</string>
<string name="change_passphrase_activity__new_passphrase">Nuova password:</string>
<string name="change_passphrase_activity__repeat_new_passphrase">Ripeti nuova password:</string>
<!--contact_selection_group_activity-->
<!--contact_selection_list_activity-->
<string name="contact_selection_group_activity__no_contacts">Nessun contatto.</string>
<!--ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">Seleziona per</string>
<!--contact_selection_recent_activity-->
<string name="contact_selection_recent_activity__no_recent_calls">Nessuna chiamata recente.</string>
<!--conversation_activity-->
<string name="conversation_activity__type_message">Inserisci il messaggio</string>
<string name="conversation_activity__send">Invia</string>
<string name="conversation_activity__remove">Elimina</string>
<!--conversation_fragment_cab-->
<string name="conversation_fragment_cab__batch_selection_mode">Modalità di selezione di gruppo</string>
<!--create_passphrase_activity-->
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">Scegli una password che verrà usata per cifrata i tuoi dati localmente. Attenzione a scegliere una password robusta.</string>
<string name="create_passphrase_activity__passphrase">Password:</string>
<string name="create_passphrase_activity__repeat">Ripeti:</string>
<!--receive_key_activity-->
<string name="receive_key_activity__session">Sessione</string>
<string name="receive_key_activity__identities">Identità</string>
<string name="receive_key_activity__complete_exchange">Completa lo scambio</string>
<!--recipients_panel-->
<string name="recipients_panel__to">A</string>
<!--review_identities-->
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">Attualmente non hai nessuna chiave di identità nel tuo database di fiducia.</string>
<!--save_identity_activity-->
<string name="save_identity_activity__identity_name">Nome dell\'identità:</string>
<!--verify_identity_activity-->
<string name="verify_identity_activity__their_identity_they_read">La sua identità ( legge ):</string>
<string name="verify_identity_activity__your_identity_you_read">La tua identità ( leggi ):</string>
<!--verify_import_identity_activity-->
<string name="verify_import_identity_activity__identity_name_n">Nome dell\'identità:\n</string>
<string name="verify_import_identity_activity__imported_identity_n">Identità importata:\n</string>
<string name="verify_import_identity_activity__verified">Verificata!</string>
<string name="verify_import_identity_activity__compare">Controlla</string>
<!--verify_keys_activity-->
<string name="verify_keys_activity__they_read_this">Si legge questo:</string>
<string name="verify_keys_activity__you_read_this">Tu leggi questo:</string>
<!--view_identity_activity-->
<string name="view_identity_activity__identity">Identità:</string>
<string name="view_identity_activity__qr_code">Codice QR</string>
<!--AndroidManifest.xml-->
<string name="AndroidManifest__create_passphrase">Crea una password</string>
<string name="AndroidManifest__enter_passphrase">Inserisci la password</string>
<string name="AndroidManifest__select_contacts">Seleziona i contatti</string>
<string name="AndroidManifest__textsecure_detected">TextSecure trovato!</string>
<string name="AndroidManifest__public_identity_key">Chiave dell\'identità pubblica</string>
<string name="AndroidManifest__change_passphrase">Cambia password</string>
<string name="AndroidManifest__verify_session">Verifica sessione</string>
<string name="AndroidManifest__verify_identity">Verifica identità</string>
<string name="AndroidManifest__save_identity">Salva identità</string>
<string name="AndroidManifest__manage_identity_keys">Controlla le chiavi di identità</string>
<string name="AndroidManifest__complete_key_exchange">Completa lo scambio della chiave</string>
<string name="AndroidManifest__verify_imported_identity">Verifica le identità importate</string>
<!--preferences.xml-->
<string name="preferences__use_settings">Usa le impostazioni</string>
<string name="preferences__pref_all_sms_title">Utilizza per tutti gli SMS</string>
<string name="preferences__pref_all_mms_title">Utilizza per tutti gli MMS</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">Usa TextSecure per vedere e salvare tutti i messaggi in arrivo</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">Usa TextSecure per vedere e salvare tutti gli MMS in arrivo</string>
<string name="preferences__input_settings">Impostazioni di Input</string>
<string name="preferences__pref_enter_sends_title">Inserisci inviati</string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">Premere il tasto Invio manderà i messaggi</string>
<string name="preferences__display_settings">Impostazioni Display</string>
<string name="preferences__choose_identity">Scegli un\'identità</string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">Scegli il tuo contatto dalla rubrica.</string>
<string name="preferences__encryption_settings">Impostazioni di cifratura</string>
<string name="preferences__change_passphrase">Cambia password</string>
<string name="preferences__change_my_passphrase">Cambia la mia password</string>
<string name="preferences__complete_key_exchanges">Scambio della chiave completato</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">Completa lo scambio della chiave automaticamente per le nuove sessione con la stessa chiave di identità</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">Includi un tag \'spazio\' al termine di ogni messaggio non cifrato</string>
<string name="preferences__include_whitespace_tag">Include un tag \'spazio\'</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">Firma il messaggio di scambio della chiave con la mia identità</string>
<string name="preferences__sign_key_exchange">Firma lo scambio della chiave</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">Dimentica la password dalla cache dopo un intervallo di tempo</string>
<string name="preferences__timeout_passphrase">Tempo per dimenticare la password</string>
<string name="preferences__pref_timeout_interval_dialogtitle">Seleziona un timeout per la password</string>
<string name="preferences__pref_timeout_interval_title">Intervallo di tempo</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">La quantità di tempo prima di dimenticare la password</string>
<string name="preferences__identity_key_settings">Impostazioni chiave di identità</string>
<string name="preferences__view_my_identity_key">La mia chiave di identità</string>
<string name="preferences__export_my_identity_key">Esporta la mia chiave di identità</string>
<string name="preferences__import_contacts_key">Importa la chiave di un contatto</string>
<string name="preferences__import_an_identity_key_from_a_contact">Importa una chiave di identità da un contatto</string>
<string name="preferences__manage_identity_keys">Controlla le chiavi di identità</string>
<string name="preferences__manage_configured_identity_keys">Controlla le chiavi di identità configurate</string>
<string name="preferences__notification_settings">Impostazioni notifiche</string>
<string name="preferences__notifications">Notifiche</string>
<string name="preferences__display_message_notifications_in_status_bar">Mostra messaggio di notifica nella barra di stato</string>
<string name="preferences__led_color">Colore del LED</string>
<string name="preferences__change_notification_led_color">Cambia il colore del LED di notifica</string>
<string name="preferences__pref_led_blink_title">Impostazioni LED</string>
<string name="preferences__change_notification_blink_pattern">Cambia il lampeggio del LED di notifica</string>
<string name="preferences__pref_led_blink_dialogtitle">Seleziona un impostazione per il LED di notifica</string>
<string name="preferences__select_led_color">Selezione il colore del LED</string>
<string name="preferences__select_ringtone">Seleziona una suoneria</string>
<string name="preferences__vibrate">Vibrazione</string>
<string name="preferences__also_vibrate_when_notified">Vibra anche durante l\'arrivo di una notifica</string>
<string name="preferences__minutes">minuti</string>
<string name="preferences__hours">ore</string>
<string name="preferences__green">Verde</string>
<string name="preferences__red">Rosso</string>
<string name="preferences__blue">Blu</string>
<string name="preferences__orange">Arancione</string>
<string name="preferences__cyan">Azzurro</string>
<string name="preferences__magenta">Magenta</string>
<string name="preferences__fast">Veloce</string>
<string name="preferences__normal">Normale</string>
<string name="preferences__slow">Lento</string>
<string name="preferences__custom">Personalizzato</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->
<!--contact_selection_list-->
<string name="contact_selection_list__menu_select_all">Seleziona tutto</string>
<string name="contact_selection_list__menu_unselect_all">Deseleziona tutto</string>
<!--contact_selection-->
<string name="contact_selection__menu_finished">Finito</string>
<!--conversation_button_context-->
<string name="conversation_button_context__menu_send_unencrypted">Invia in chiaro</string>
<!--conversation_callable-->
<string name="conversation_callable__menu_call">Chiama</string>
<!--conversation_context-->
<string name="conversation_context__menu_message_details">Dettagli messaggio</string>
<string name="conversation_context__menu_copy_text">Copia testo</string>
<string name="conversation_context__menu_delete_message">Cancella messaggio</string>
<string name="conversation_context__menu_forward_message">Inoltra messaggio</string>
<!--conversation_insecure-->
<string name="conversation_insecure__menu_start_secure_session">Inizia una sessione sicura</string>
<!--conversation_list_batch-->
<string name="conversation_list_batch__menu_delete_selected">Cancella selezionati</string>
<string name="conversation_list_batch__menu_select_all">Seleziona tutto</string>
<!--conversation_list-->
<string name="conversation_list__menu_search">Cerca</string>
<!--conversation_secure_verified-->
<!--conversation_secure_unverified-->
<string name="conversation_secure_verified__menu_security">Sicurezza</string>
<string name="conversation_secure_verified__menu_verify_session">Verifica la sessione</string>
<string name="conversation_secure_verified__menu_verify_recipient">Verifica il destinatario</string>
<string name="conversation_secure_verified__menu_abort_secure_session">Cancella la sessione sicura</string>
<!--conversation-->
<string name="conversation__menu_add_attachment">Aggiungi allegato</string>
<string name="conversation__menu_delete_thread">Cancella conversazione</string>
<string name="conversation__menu_compare">Controlla</string>
<!--conversation_group_options-->
<!--key_scanning-->
<string name="key_scanning__menu_compare">Controlla</string>
<string name="key_scanning__menu_get_scanned_to_compare">Scansionato per controllare</string>
<string name="key_scanning__menu_scan_to_compare">Scansiona per controllare</string>
<!--text_secure_locked-->
<string name="text_secure_locked__menu_unlock">Sblocca</string>
<!--text_secure_normal-->
<string name="text_secure_normal__menu_new_message">Nuovo messaggio</string>
<string name="text_secure_normal__menu_settings">Impostazioni</string>
<string name="text_secure_normal__menu_import_export">Importa/Esporta</string>
<string name="text_secure_normal__menu_import">Importa</string>
<string name="text_secure_normal__menu_export">Esporta</string>
<string name="text_secure_normal__menu_clear_passphrase">Cancella password</string>
<!--verify_keys-->
<string name="verify_keys__menu_verified">Verificato</string>
<!--Misc. piggybacking-->
<!--EOF-->
</resources>

374
res/values-nl/strings.xml Normal file
View File

@@ -0,0 +1,374 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="app_name">TextSecure</string>
<string name="yes">Ja</string>
<string name="no">Nee</string>
<string name="delete">Verwijder</string>
<!--ApplicationExportManager-->
<string name="ApplicationExportManager_import_database_and_settings_title">Importeer Database en Instellingen?</string>
<string name="ApplicationExportManager_import_database_and_settings_message">Importeer TextSecure database, sleutels en instellingen vanaf de SD-kaart?\n\nWAARSCHUWING: Dit kan bestaande berichten, sleutels en instellingen aantasten!</string>
<string name="ApplicationExportManager_importing_database_and_keys">Importeren van Database en Sleutels</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">SMS database, sleutels en instellingen aan het importeren...</string>
<string name="ApplicationExportManager_export_database_question">Exporteer Database?</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">Exporteer TextSecure database, sleutels en instellingen naar de SD-kaart?</string>
<string name="ApplicationExportManager_exporting_database_and_keys">Exporteren van Database en Sleutels</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">SMS database, sleutels en instellingen aan het exporteren...</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">Geen SD-kaart gevonden!</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">Fout bij het exporteren naar SD!</string>
<string name="ApplicationExportManager_import_successful_exclamation">Importeren Succesvol!</string>
<string name="ApplicationExportManager_export_successful_exclamation">Exporteren Succesvol!</string>
<string name="ApplicationExportManager_import">Importeer</string>
<string name="ApplicationExportManager_export">Exporteer</string>
<!--ApplicationMigrationManager-->
<string name="ApplicationMigrationManager_migrating_database">Migreren Database</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">Berichten database aan het migreren...</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">Kopieer Systeem Tekstberichten Database?</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">TextSecure gebruikt een versleutelde database die afgescheiden is van de standaard systeemdatabase. Wilt u uw bestaande tekstberichten kopiëren naar TextSecure\'s versleutelde database? Uw standaard systeemdatabase blijft onaangetast.</string>
<string name="ApplicationMigrationManager_copy">Kopiëren</string>
<string name="ApplicationMigrationManager_dont_copy">Niet kopiëren</string>
<!--ApplicationPreferencesActivity-->
<string name="ApplicationPreferencesActivity_currently_s">Momenteel: %s</string>
<string name="ApplicationPreferenceActivity_not_found_exclamation">Niet gevonden!</string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">Geen geldige identiteitssleutel gevonden bij de gespecificeerde contactpersoon.</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">U heeft geen identiteitssleutel!</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">U heeft nog geen contact voor uzelf ingesteld! Selecteer deze in het Instellingen menu.</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">Geëxporteerd naar contactendatabase!</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">U moet uw wachtwoord opgegeven voor het importeren van sleutels...</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">U moet uw wachtwoord opgegeven voor het beheren van sleutels...</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">U heeft nog geen wachtwoord ingesteld!</string>
<!--AttachmentTypeSelectorAdapter-->
<string name="AttachmentTypeSelectorAdapter_picture">Afbeelding</string>
<string name="AttachmentTypeSelectorAdapter_video">Video</string>
<string name="AttachmentTypeSelectorAdapter_audio">Audio</string>
<!--ConversationItem-->
<string name="ConversationItem_message_size_d_kb">Bericht grootte: %d KB</string>
<string name="ConversationItem_expires_s">Verloopt: %s</string>
<string name="ConversationItem_error_sending_message">Fout bij versturen bericht</string>
<string name="ConversationItem_sending">Versturen...</string>
<string name="ConversationItem_saving_attachment">Bijlage Opslaan</string>
<string name="ConversationItem_saving_attachment_to_sd_card">Bijlage aan het opslaan op de SD-kaart...</string>
<string name="ConversationItem_save_to_sd_card">Opslaan op SD-kaart?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">Deze media is opgeslagen in een versleutelde database. De versie die u opslaat op de SD-kaart is niet langer versleuteld, wilt u doorgaan?</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">Fout tijdens het opslaan van de bijlage naar de SD-kaart!</string>
<string name="ConversationItem_success_exclamation">Succesvol!</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">SD-kaart niet beschrijfbaar!</string>
<string name="ConversationItem_view_secure_media_question">Bekijk veilige media?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">Deze media is opgeslagen in een versleutelde database. Deze data moet helaas tijdelijk ontsleuteld en naar de opslagruimte geschrijven worden om deze te bekijken met een externe applicatie. Weet u zeker dat u dit wilt?</string>
<string name="ConversationItem_key_exchange_message">Sleuteluitwisselingsbericht</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">Sleuteluitwisselingsbericht ontvangen en verwerkt.</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">Fout, verouderd steuteluitwisselingsbericht ontvangen.</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">Sleuteluitwisselingsbericht ontvangen, klik hier om te verwerken</string>
<!--ConversationActivity-->
<string name="ConversationActivity_initiate_secure_session_question">Initieer veilige sessie?</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">Initieer veilige sessie met %s?</string>
<string name="ConversationActivity_abort_secure_session_confirmation">Bevestiging Afbreken Beveiligde Sessie</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">Weet u zeker dat u deze beveiligde sessie wilt stopzetten?</string>
<string name="ConversationActivity_delete_thread_confirmation">Bevestiging Verwijderen Conversatie</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">Weet u zeker dat u deze conversatie permanent wilt verwijderen?</string>
<string name="ConversationActivity_add_attachment">Voeg bijlage toe</string>
<string name="ConversationActivity_compose_message">Bericht Opstellen</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">Excuses, er trad een fout op bij het instellen van uw bijlage.</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">Excuses, de geselecteerde video overschrijdt de berichtgrootte restricties.</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">Excuses, de geselecteerde audio overschrijdt de berichtgrootte restricties.</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">Ontvanger is niet een geldig SMS of e-mailadres!</string>
<string name="ConversationActivity_message_is_empty_exclamation">Bericht is leeg!</string>
<string name="ConversationActivity_forward_message_prefix">FWD</string>
<string name="ConversationActivity_group_conversation_recipients">Groepsconversatie Ontvangers</string>
<string name="ConversationActivity_group_conversation">Groepsconversatie</string>
<string name="ConversationActivity_d_recipients_in_group">%d ontvangers in groep</string>
<!--ConversationFragment-->
<string name="ConversationFragment_message_details">Bericht details</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">Verzender: %1$s\nTransport: %2$s\nVerstuurd/Ontvangen:%3$s</string>
<string name="ConversationFragment_confirm_message_delete">Bevestig Bericht Verwijdering</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">Weet u zeker dat u dit bericht permanent wilt verwijderen?</string>
<!--ConversationListAdapter-->
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">Versleuteld bericht, voer wachtwoord in...</string>
<string name="ConversationListAdapter_key_exchange_message">Sleuteluitwisselingsbericht...</string>
<!--ConversationListFragment-->
<string name="ConversationListFragment_delete_threads_question">Meerdere conversaties verwijderen?</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">Weet u zeker dat u ALLE geselecteerde conversaties wilt verwijderen?</string>
<!--ConversationListItem-->
<string name="ConversationListItem_key_exchange_message">Sleuteluitwisselingsbericht...</string>
<!--KeyScanningActivity-->
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">Geen gescande sleutel gevonden!</string>
<!--PassphraseChangeActivity-->
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">Wachtwoorden komen niet overeen!</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">Incorrect oud wachtwoord!</string>
<!--PassphraseCreateActivity-->
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">Wachtwoorden komen niet overeen!</string>
<string name="PassphraseCreateActivity_generating_keypair">Sleutelpaar Genereren</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">Lokaal encryptie sleutelpaar aan het genereren...</string>
<!--PassphrasePromptActivity-->
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">Ongeldig Wachtwoord!</string>
<!--ReceiveKeyActivity-->
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">FOUT: U heeft een corrupte publieke sleutel ontvangen. Deze sleutel kan niet verwerkt worden, herinitiëer alstublieft een beveiligde sessie.</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">FOUT: U heeft een publieke sleutel ontvangen van een niet ondersteunde versie van het protocol. Deze sleutel kan niet verwerkt worden, herinitiëer alstublieft een beveiligde sessie.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">Dit sleuteluitwisselingsbericht bevat geen identiteitshandtekening.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">Dit sleuteluitwisselingsbericht bevat een identiteitshandtekening, maar u vertrouwt deze nog niet.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">Dit sleuteluitwisselingsbericht bevat een identiteitshandtekening welke u vertrouwt voor: %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">Dit is de sleutel die u verzond om de huidige versleutelde sessie te starten met %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">Dit is de sleutel die u ontving om de huidige versleutelde sessie te starten met %s</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">U heeft een Sleuteluitwisselingsbericht ontvangen van %s. \n\nWAARSCHUWING: U heeft reeds een versleutelde sessie met deze contactpersoon. Indien u kiest om dit sleuteluitwisselingsbericht te accepteren, stopt uw huidige sessie en moet u opnieuw authentificeren. Wilt u deze sleuteluitwisseling voltooien?</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">U heeft een Sleuteluitwisselingsbericht ontvangen van %s. U heeft voorheen een sessie geïnitieerd met deze contactpersoon en door deze sleutel te accepteren voltooid u de sleuteluitwisseling. Wilt u de sleuteluitwisseling voltooien?</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">U heeft een Sleuteluitwisselingsbericht verstuurd naar %s en heeft nog geen reactie ontvangen.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">U heeft een Sleuteluitwisselingsbericht ontvangen van %s. U heeft geen bestaande sessie met deze contactpersoon, wilt u deze sleuteluitwisseling voltooien?</string>
<!--ReviewIdentitiesActivity-->
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">Niet in staat de corrupte identiteitssleutel te bekijken!</string>
<string name="ReviewIdentitiesActivity_delete_identity">Verwijder identiteit?</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">Weet u zeker dat u deze identiteitssleutel permanent wilt verwijderen?</string>
<string name="ReviewIdentitiesActivity_invalid_identity">Ongeldige Identiteit!</string>
<!--SaveIdentityActivity-->
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">U moet een naam opgeven voor deze identiteit!</string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">Identiteitsnaam bestaat al!</string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">Een identiteitssleutel met de gespecificeerde naam bestaat reeds.</string>
<string name="SaveIdentityActivity_manage_identities">Beheer Identiteiten</string>
<!--VerifyIdentityActivity-->
<string name="VerifyIdentityActivity_mark_identity_verified_question">Markeer Identiteit Als Geverifieerd?</string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">Weet u zeker dat u de handtekening van de identiteit van de ontvanger valide is en u deze als geverifieerd wilt markeren?</string>
<string name="VerifyIdentityActivity_mark_verified">Markeer Geverifieerd</string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">U heeft geen identiteitssleutel.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">De ontvanger heeft geen identiteitssleutel.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">De ontvanger heeft geen identiteitssleutel!</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">Scan de sleutel om te vergelijken</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">Laat mijn sleutel scannen</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">WAARSCHUWING, de gescande sleutel komt NIET overeen! Controleert u alstublieft de vingerafdruk zorgvuldig.</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">NIET Geverifieerd!</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">Sleutel partner is correct. Het is ook nodig om uw sleutel door de partner te laten verifiëren.</string>
<string name="VerifyIdentityActivity_verified_exclamation">Geverifieerd</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">U heeft geen identiteitssleutel!</string>
<!--VerifyImportedIdentityActivity-->
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">U moet een naam opgeven voor dit contact!</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">Identiteitssleutel Opslaan?</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">Fout bij opslaan identiteitssleutel!</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">Deze identiteitssleutel of een identiteitssleutel met dezelfde naam bestaat reeds. Bewerk alstublieft uw sleuteldatabase.</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">Scan om te vergelijken</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">Wordt gescand om te vergelijken</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">NIET geverifieerd!</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">WAARSCHUWING, de gescande sleutel komt NIET overeen!</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">De gescande sleutel komt overeen!</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">Geverifieerd</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">Weet u zeker dat u deze identiteitssleutel als valide wilt markeren voor toekomstige correspondentie met %s? U zou dit alleen moeten doen als u de vingerafdruk geverifieerd heeft.</string>
<!--VerifyKeysActivity-->
<string name="VerifyKeysActivity_mark_session_verified_question">Markeer Sessie Als Geverifieerd?</string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">Weet u zeker dat u deze vingerafdrukken gevalideerd heeft en deze sessie als geverifiëerd wilt markeren?</string>
<string name="VerifyKeysActivity_mark_verified">Markeer Geverifieerd</string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">Mijn sleutel vingerafdruk laten scannen</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">Scan sleutel vingerafdruk partner</string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">WAARSCHUWING, de gescande sleutel komt NIET overeen! Controleert u alstublieft de vingerafdruk zorgvuldig.</string>
<string name="VerifyKeysActivity_not_verified_exclamation">NIET Geverifieerd!</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">De sleutel van de gesprekspartner is correct. Het is ook nodig om uw sleutel vingerafdruk te laten scannen.</string>
<string name="VerifyKeysActivity_verified_exclamation">Geverifieerd!</string>
<!--ViewIdentityActivity-->
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">U heeft geen identiteitssleutel.</string>
<string name="ViewIdentityActivity_scan_to_compare">Scan om te vergelijken</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">Wordt gescand om te vergelijken</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">WAARSCHUWING, de gescande sleutel komt NIET overeen!</string>
<string name="ViewIdentityActivity_not_verified_exclamation">NIET Geverifieerd!</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">De gescande sleutel komt overeen!</string>
<string name="ViewIdentityActivity_verified_exclamation">Geverifieerd!</string>
<!--KeyExchangeInitiator-->
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">Initiëren Ondanks Bestaand Verzoek?</string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">U heeft reeds een sessieinititatieverzoek verstuurd naar deze ontvanger, weet u zeker dat u er nog een wilt sturen? Dit maakt het eerdere verzoek ongeldig.</string>
<string name="KeyExchangeInitiator_send">Verstuur</string>
<!--MessageDisplayHelper-->
<string name="MessageDisplayHelper_bad_encrypted_message">Verkeerd versleuteld bericht...</string>
<string name="MessageDisplayHelper_decrypting_please_wait">Ontsleutelen, een moment...</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">Bericht ontsleuteld voor niet bestaande sessie...</string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">Onsleutelingsfout: lokaal bericht beschadigd, MAC komt niet overeen. Mogelijke sabotage?</string>
<!--MmsDatabase-->
<string name="MmsDatabase_connecting_to_mms_server">Verbinden met MMS server...</string>
<string name="MmsDatabase_downloading_mms">Downloaden van MMS...</string>
<string name="MmsDatabase_mms_download_failed">MMS Download mislukt!</string>
<string name="MmsDatabase_downloading">Downloaden...</string>
<string name="MmsDatabase_anonymous">Anoniem</string>
<!--MmsMessageRecord-->
<string name="MmsMessageRecord_decrypting_mms_please_wait">MMS ontsleutelen, een moment...</string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">Verkeerd versleuteld MMS-bericht...</string>
<string name="MmsMessageRecord_mms_message_encrypted_for_non_existing_session">MMS-bericht versleuteld voor niet bestaande sessie...</string>
<!--ApplicationMigrationService-->
<string name="ApplicationMigrationService_migrating">Migreren</string>
<string name="ApplicationMigrationService_migrating_system_text_messages">Migreren Systeem Tekstberichten</string>
<!--KeyCachingService-->
<string name="KeyCachingService_textsecure_passphrase_cached">TextSecure Wachtwoord In Cache</string>
<string name="KeyCachingService_passphrase_cached">Wachtwoord In Cache</string>
<!--MessageNotifier-->
<string name="MessageNotifier_d_new_messages">(%d) Nieuwe berichten</string>
<string name="MessageNotifier_d_new_messages_most_recent_from_s">(%1$d) Nieuwe berichten, meest recente van: %2$s</string>
<string name="MessageNotifier_most_recent_from_s">Meest recente van: %s</string>
<!--auto_initiate_activity-->
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">U heeft een bericht ontvangen van iemand die versleutelde TextSecure sessies ondersteunt. Wilt u een beveiligde sessie initiëren?</string>
<string name="auto_initiate_activity__initiate_exchange">Initieer Uitwisseling</string>
<!--change_passphrase_activity-->
<string name="change_passphrase_activity__old_passphrase">Oud wachtwoord:</string>
<string name="change_passphrase_activity__new_passphrase">Nieuw wachtwoord:</string>
<string name="change_passphrase_activity__repeat_new_passphrase">Herhaal nieuw wachtwoord:</string>
<!--contact_selection_group_activity-->
<!--contact_selection_list_activity-->
<string name="contact_selection_group_activity__no_contacts">Geen contacten.</string>
<!--ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">Selecteer voor</string>
<!--contact_selection_recent_activity-->
<string name="contact_selection_recent_activity__no_recent_calls">Geen recente gesprekken.</string>
<!--conversation_activity-->
<string name="conversation_activity__type_message">Typ bericht</string>
<string name="conversation_activity__send">Verstuur</string>
<string name="conversation_activity__remove">Verwijder</string>
<!--conversation_fragment_cab-->
<string name="conversation_fragment_cab__batch_selection_mode">Selecteer Meerdere Tegelijk</string>
<!--create_passphrase_activity-->
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">Kiest u alstublieft een wachtwoord welke gebruikt zal worden om lokaal uw data te versleutelen. Een sterk wachtwoord wordt aangeraden.</string>
<string name="create_passphrase_activity__passphrase">Wachtwoord:</string>
<string name="create_passphrase_activity__repeat">Herhaal:</string>
<!--receive_key_activity-->
<string name="receive_key_activity__session">Sessie</string>
<string name="receive_key_activity__identities">Identiteiten</string>
<string name="receive_key_activity__complete_exchange">Voltooi Uitwisseling</string>
<!--recipients_panel-->
<string name="recipients_panel__to">Aan</string>
<!--review_identities-->
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">U heeft momenteel geen identiteitssleutels in uw vertrouwensdatabase.</string>
<!--save_identity_activity-->
<string name="save_identity_activity__identity_name">Identiteitsnaam:</string>
<!--verify_identity_activity-->
<string name="verify_identity_activity__their_identity_they_read">Identiteit partner (partner leest):</string>
<string name="verify_identity_activity__your_identity_you_read">Uw identiteit (u leest):</string>
<!--verify_import_identity_activity-->
<string name="verify_import_identity_activity__identity_name_n">Identiteitsnaam:\\n</string>
<string name="verify_import_identity_activity__imported_identity_n">Geïmporteerde identiteit:\\n</string>
<string name="verify_import_identity_activity__verified">Geverifieerd!</string>
<string name="verify_import_identity_activity__compare">Vergelijk</string>
<!--verify_keys_activity-->
<string name="verify_keys_activity__they_read_this">Partner leest dit:</string>
<string name="verify_keys_activity__you_read_this">U leest dit:</string>
<!--view_identity_activity-->
<string name="view_identity_activity__identity">Identiteit:</string>
<string name="view_identity_activity__qr_code">QR Code</string>
<!--AndroidManifest.xml-->
<string name="AndroidManifest__create_passphrase">Creëer Wachtwoord</string>
<string name="AndroidManifest__enter_passphrase">Voer Wachtwoord In</string>
<string name="AndroidManifest__select_contacts">Selecteer Contacten</string>
<string name="AndroidManifest__textsecure_detected">TextSecure gedetecteerd</string>
<string name="AndroidManifest__public_identity_key">Publieke Identiteitssleutel</string>
<string name="AndroidManifest__change_passphrase">Wachtwoord Veranderen</string>
<string name="AndroidManifest__verify_session">Verifieer Sessie</string>
<string name="AndroidManifest__verify_identity">Identiteit Verifiëren</string>
<string name="AndroidManifest__save_identity">Identiteit Opslaan</string>
<string name="AndroidManifest__manage_identity_keys">Identiteitssleutels Beheren</string>
<string name="AndroidManifest__complete_key_exchange">Sleuteluitwisseling Voltooien</string>
<string name="AndroidManifest__verify_imported_identity">Geïmporteerde Identiteit Verifiëren</string>
<!--preferences.xml-->
<string name="preferences__use_settings">Gebruiksinstellingen</string>
<string name="preferences__pref_all_sms_title">Gebruik voor alle SMS</string>
<string name="preferences__pref_all_mms_title">Gebruik voor alle MMS</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">Gebruik TextSecure voor het bekijken en opslaan van alle inkomende tekstberichten</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">Gebruik TextSecure voor het bekijken en opslaan van alle inkomende multimediaberichten</string>
<string name="preferences__input_settings">Invoer Instellingen</string>
<string name="preferences__pref_enter_sends_title">Enter verstuurt</string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">De \'Enter\' toets gebruiken voor versturen tekstberichten</string>
<string name="preferences__display_settings">Beeldscherminstellingen</string>
<string name="preferences__choose_identity">Kies Identiteit</string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">Kies uw contactinformatie uit de contactpersonenlijst.</string>
<string name="preferences__encryption_settings">Encryptie Instellingen</string>
<string name="preferences__change_passphrase">Wachtwoord Veranderen</string>
<string name="preferences__change_my_passphrase">Verander mijn wachtwoord</string>
<string name="preferences__complete_key_exchanges">Sleuteluitwisseling Voltooien</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">Automatisch sleuteluitwisselingen voltooien voor nieuwe sessies of voor bestaande sessies met dezelfde identiteitssleutel</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">Op het einde van ieder onversleuteld bericht een spatie toevoegen</string>
<string name="preferences__include_whitespace_tag">Spatie toevoegen</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">Teken sleuteluitwisselingsberichten met identiteitssleutel</string>
<string name="preferences__sign_key_exchange">Onderteken Sleuteluitwisseling</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">Vergeet het wachtwoord uit het geheugen na een bepaalde tijd</string>
<string name="preferences__timeout_passphrase">Time-out wachtwoord</string>
<string name="preferences__pref_timeout_interval_dialogtitle">Selecteer Wachtwoord Time-out</string>
<string name="preferences__pref_timeout_interval_title">Time-out interval</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">Hoe lang te wachten voor het vergeten van het wachtwoord uit het geheugen</string>
<string name="preferences__identity_key_settings">Identiteitssleutel Instellingen</string>
<string name="preferences__view_my_identity_key">Bekijk mijn identiteitssleutel</string>
<string name="preferences__export_my_identity_key">Exporteer mijn identiteitssleutel</string>
<string name="preferences__import_contacts_key">Sleutel van contact importeren</string>
<string name="preferences__import_an_identity_key_from_a_contact">Importeer een identiteitssleutel van een contact</string>
<string name="preferences__manage_identity_keys">Beheer Identiteitssleutels</string>
<string name="preferences__manage_configured_identity_keys">Beheer ingestelde identiteitssleutels</string>
<string name="preferences__notification_settings">Notificatie instellingen</string>
<string name="preferences__notifications">Notificaties</string>
<string name="preferences__display_message_notifications_in_status_bar">Toon berichtmeldingen in notificatiebalk</string>
<string name="preferences__led_color">LED Kleur</string>
<string name="preferences__change_notification_led_color">Wijzig notificatie LED kleur</string>
<string name="preferences__pref_led_blink_title">LED Knipperpatroon</string>
<string name="preferences__change_notification_blink_pattern">Verander notificatie LED knipperpatroon</string>
<string name="preferences__pref_led_blink_dialogtitle">Selecteer LED Knipperpatroon</string>
<string name="preferences__select_led_color">Selecteer LED Kleur</string>
<string name="preferences__select_ringtone">Selecteer ringtone</string>
<string name="preferences__vibrate">Trillen</string>
<string name="preferences__also_vibrate_when_notified">Ook trillen bij notificaties</string>
<string name="preferences__minutes">minuten</string>
<string name="preferences__hours">uren</string>
<string name="preferences__green">Groen</string>
<string name="preferences__red">Rood</string>
<string name="preferences__blue">Blauw</string>
<string name="preferences__orange">Oranje</string>
<string name="preferences__cyan">Cyaan</string>
<string name="preferences__magenta">Magenta</string>
<string name="preferences__fast">Snel</string>
<string name="preferences__normal">Normaal</string>
<string name="preferences__slow">Langzaam</string>
<string name="preferences__custom">Aangepast</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->
<!--contact_selection_list-->
<string name="contact_selection_list__menu_select_all">Alles Selecteren</string>
<string name="contact_selection_list__menu_unselect_all">Alles Deselecteren</string>
<!--contact_selection-->
<string name="contact_selection__menu_finished">Voltooid</string>
<!--conversation_button_context-->
<string name="conversation_button_context__menu_send_unencrypted">Verstuur onversleuteld</string>
<!--conversation_callable-->
<string name="conversation_callable__menu_call">Bel</string>
<!--conversation_context-->
<string name="conversation_context__menu_message_details">Bericht details</string>
<string name="conversation_context__menu_copy_text">Tekst kopiëren</string>
<string name="conversation_context__menu_delete_message">Bericht verwijderen</string>
<string name="conversation_context__menu_forward_message">Bericht doorsturen</string>
<!--conversation_insecure-->
<string name="conversation_insecure__menu_start_secure_session">Begin Beveiligde Sessie</string>
<!--conversation_list_batch-->
<string name="conversation_list_batch__menu_delete_selected">Verwijder Geselecteerde</string>
<string name="conversation_list_batch__menu_select_all">Alles Selecteren</string>
<!--conversation_list-->
<string name="conversation_list__menu_search">Zoeken</string>
<!--conversation_secure_verified-->
<!--conversation_secure_unverified-->
<string name="conversation_secure_verified__menu_security">Veiligheid</string>
<string name="conversation_secure_verified__menu_verify_session">Verifieer Sessie</string>
<string name="conversation_secure_verified__menu_verify_recipient">Verifieer Ontvanger</string>
<string name="conversation_secure_verified__menu_abort_secure_session">Stop Beveiligde Sessie</string>
<!--conversation-->
<string name="conversation__menu_add_attachment">Voeg bijlage toe</string>
<string name="conversation__menu_delete_thread">Verwijder gehele gesprek</string>
<string name="conversation__menu_compare">Vergelijk</string>
<!--conversation_group_options-->
<string name="convesation_group_options__recipients_list">Lijst met ontvangers</string>
<!--key_scanning-->
<string name="key_scanning__menu_compare">Vergelijken</string>
<string name="key_scanning__menu_get_scanned_to_compare">Wordt gescand om te vergelijken</string>
<string name="key_scanning__menu_scan_to_compare">Scan om te vergelijken</string>
<!--text_secure_locked-->
<string name="text_secure_locked__menu_unlock">Ontgrendel</string>
<!--text_secure_normal-->
<string name="text_secure_normal__menu_new_message">Nieuw Bericht</string>
<string name="text_secure_normal__menu_settings">Instellingen</string>
<string name="text_secure_normal__menu_import_export">Importeer/Exporteer</string>
<string name="text_secure_normal__menu_import">Importeer</string>
<string name="text_secure_normal__menu_export">Exporteer</string>
<string name="text_secure_normal__menu_clear_passphrase">Vergrendelen</string>
<!--verify_keys-->
<string name="verify_keys__menu_verified">Geverifieerd</string>
<!--Misc. piggybacking-->
<string name="PlayStoreListing">TextSecure is een tekstberichtapplicatie met verbeterde beveiliging die dient als een volledige vervanger voor de standaard tekstberichtapplicatie. Berichten naar andere TextSecure gebruikers worden versleuteld en alle tekstberichten worden opgeslagen in een versleutelde database op uw telefoon. Wanneer uw telefoon kwijt of gestolen is, zijn uw berichten veilig en communicatie met andere TextSecure gebruikers kan niet afgeluisterd worden.</string>
<!--EOF-->
<string name="conversation_item_sent__download">Download</string>
<string name="conversation_item_sent__downloading">Downloaden</string>
<string name="conversation_item_received__download">Download</string>
<string name="conversation_item_received__downloading">Downloaden</string>
</resources>

367
res/values-no/strings.xml Normal file
View File

@@ -0,0 +1,367 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="app_name">TextSecure</string>
<string name="yes">Ja</string>
<string name="no">Nei</string>
<string name="delete">Slett</string>
<!--ApplicationExportManager-->
<string name="ApplicationExportManager_import_database_and_settings_title">Importer database og instillinger?</string>
<string name="ApplicationExportManager_import_database_and_settings_message">Importer TextSecure meldingsdatabase, nøkler og innstillinger fra SD-kort? \n\nADVARSEL: Dette vil overskrive eksisterende meldinger, nøkler og innstillinger!</string>
<string name="ApplicationExportManager_importing_database_and_keys">Importerer database og nøkler</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">Importerer meldingsdatabasen din, nøkler og instillinger...</string>
<string name="ApplicationExportManager_export_database_question">Eksporter database?</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">Eksporter TextSecure meldingsdatabase, nøkler og instillinger til SD-kort?</string>
<string name="ApplicationExportManager_exporting_database_and_keys">Eksporterer database og nøkler</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">Eksporterer meldingsdatabasen din, nøkler og instillinger...</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">SD-kort ikke funnet!</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">Feil ved export til SD-kort!</string>
<string name="ApplicationExportManager_import_successful_exclamation">Import vellykket!</string>
<string name="ApplicationExportManager_export_successful_exclamation">Eksport vellykket!</string>
<string name="ApplicationExportManager_import">Importer</string>
<string name="ApplicationExportManager_export">Eksporter</string>
<!--ApplicationMigrationManager-->
<string name="ApplicationMigrationManager_migrating_database">Migrerer databasen</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">Migrerer SMS databasen...</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">Kopiere systemets SMS database?</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">TextSecure bruker en kryptert meldingsdatabase som er adskilt fra systemets SMS database. Vil du kopiere dine eksisterende tekstmeldinger til TextSecures krypterte database? Systemets SMS database vil ikke påvirkes.</string>
<string name="ApplicationMigrationManager_copy">Kopier</string>
<string name="ApplicationMigrationManager_dont_copy">Ikke kopier</string>
<!--ApplicationPreferencesActivity-->
<string name="ApplicationPreferenceActivity_not_found_exclamation">Ikke funnet!</string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">Ingen gyldig ID-nøkkel ble funnet i den angitte kontakten.</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">Du har ingen ID-nøkkel!</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">Du har ennå ikke definert en kontakt for deg selv! Velg en i Innstillinger-menyen.</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">Eksportert til kontakt-databasen!</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">Du må taste inn passordet før du importerer nøkler...</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">Du må taste inn passordet før du administrerer nøkler...</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">Du har ikke definert et passord ennå!</string>
<!--AttachmentTypeSelectorAdapter-->
<string name="AttachmentTypeSelectorAdapter_picture">Bilde</string>
<string name="AttachmentTypeSelectorAdapter_video">Video</string>
<string name="AttachmentTypeSelectorAdapter_audio">Audio</string>
<!--ConversationItem-->
<string name="ConversationItem_message_size_d_kb">Meldingsstørrelse: %d KB</string>
<string name="ConversationItem_expires_s">Utløper: %s</string>
<string name="ConversationItem_error_sending_message">Kunne ikke sende melding</string>
<string name="ConversationItem_sending">Sender...</string>
<string name="ConversationItem_saving_attachment">Lagrer vedlegg</string>
<string name="ConversationItem_saving_attachment_to_sd_card">Lagrer vedlegg til SD-kort...</string>
<string name="ConversationItem_save_to_sd_card">Lagre til SD-kort?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">Dette vedlegget har blitt lagret i en kryptert database. Den versjonen du lagrer på SD-kortet vil ikke lenger være kryptert, ønsker du å fortsette?</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">Kunne ikke lagre vedlegg til SD-kort!</string>
<string name="ConversationItem_success_exclamation">Suksess!</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">Kunne ikke skrive til SD-kort!</string>
<string name="ConversationItem_view_secure_media_question">Vise kryptert vedlegg?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">Dette vedlegget har blitt lagret i en kryptert database. For å vise det med en ekstern fremviser må vedlegget dessverre midlertidig dekrypteres og lagres til et usikkert område. Er du sikker på at du ønsker å gjøre dette?</string>
<string name="ConversationItem_key_exchange_message">Nøkkelutvekslingsmelding</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">Nøkkelutvekslingsmelding mottatt og behandlet.</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">Feil, fikk en gammel nøkkelutvekslingsmelding.</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">Nøkkelutvekslingsmelding mottatt, klikk for å behandle</string>
<!--ConversationActivity-->
<string name="ConversationActivity_initiate_secure_session_question">Starte sikker sesjon?</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">Starte sikker sesjon med %s?</string>
<string name="ConversationActivity_abort_secure_session_confirmation">Bekreft avbrudd av sikker sesjon</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">Er du sikker på at du ønsker å avbryte denne sikre sesjonen?</string>
<string name="ConversationActivity_delete_thread_confirmation">Bekreft sletting av tråd</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">Er du sikker på at du ønsker å slette denne samtalen?</string>
<string name="ConversationActivity_add_attachment">Legg til vedlegg</string>
<string name="ConversationActivity_compose_message">Skriv melding</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">Beklager, en feil oppstod ved behandling av vedlegg.</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">Beklager, den valgte videofilen overstiger begrensningene til meldingsstørrelse.</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">Beklager, den valgte lydfilen overstiger begrensningene til meldingsstørrelse.</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">Mottakeren er ikke en gyldig SMS- eller e-postadresse!</string>
<string name="ConversationActivity_message_is_empty_exclamation">Meldingen er tom!</string>
<string name="ConversationActivity_forward_message_prefix">VS</string>
<!--ConversationFragment-->
<string name="ConversationFragment_message_details">Meldingsdetaljer</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">Sender: %1$s⏎ Transport: %2$s⏎ Sendt/Mottatt:%3$s</string>
<string name="ConversationFragment_confirm_message_delete">Bekreft sletting av melding</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">Er du sikker på at du ønsker å slette denne meldingen?</string>
<!--ConversationListAdapter-->
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">Kryptert melding, tast inn passord...</string>
<string name="ConversationListAdapter_key_exchange_message">Nøkkelutvekslingsmelding...</string>
<!--ConversationListFragment-->
<string name="ConversationListFragment_delete_threads_question">Slette trådene?</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">Er du sikker på at du vil slette ALLE valgte samtaletråder?</string>
<!--ConversationListItem-->
<string name="ConversationListItem_key_exchange_message">Nøkkelutvekslingsmelding...</string>
<!--KeyScanningActivity-->
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">Ingen skannet nøkkel funnet!</string>
<!--PassphraseChangeActivity-->
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">Passordene er ikke like!</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">Gammelt passord er feil!</string>
<!--PassphraseCreateActivity-->
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">Passordene er ikke like!</string>
<string name="PassphraseCreateActivity_generating_keypair">Genererer nøkkelpar</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">Genererer et lokalt nøkkelpar for kryptering...</string>
<!--PassphrasePromptActivity-->
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">Feil passord!</string>
<!--ReceiveKeyActivity-->
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">EN FEIL HAR OPPSTÅTT:\n\nDu har mottatt en korrupt offentlig nøkkel. Denne nøkkelen kan ikke prosesseres; vær vennlig å gjenoppta en sikker sesjon.</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">EN FEIL HAR OPPSTÅTT: \n\nDu har mottatt en offentlig nøkkel fra en usupportert versjon av protokollen. Denne nøkkelen kan ikke prosesseres; vær vennlig å gjenoppta en sikker sesjon.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">Denne nøkkelutvekslingsmeldingen inneholder ikke en ID-signatur.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">Denne nøkkelutvekslingsmeldingen inneholder en ID-signatur, men du har valgt å ikke stole på den ennå.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">Denne nøkkelutvekslingsmeldingen inneholder en ID-signatur som du stoler på for: %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">Dette er nøkkelen du sendte for å starte din nåværende krypterte sesjon med %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">Dette er nøkkelen du mottok for å starte din nåværende kryptere sesjon med %s</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">Du har mottatt en nøkkelutvekslingsmelding fra %s.\n\nADVARSEL: Du har allerede en pågående kryptert sesjon med denne kontakten. Dersom du godtar denne nøkkelutvekslingen vil din eksisterende sesjon avbrytes og du vil være nødt til å re-autentisere. Ønsker du å fullføre nøkkelutvekslingen?</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">Du har mottatt en nøkkelutvekslingsmelding fra %s. Du har tidligere initiert en sesjon med denne kontakten. Ved å akseptere denne nøkkelen vil du fullføre nøkkelutvekslingen. Ønsker du å fullføre denne nøkkelutvekslingen?</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">Du har initiert en nøkkelutveksling med %s men du har ennå ikke fått noe svar på denne.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">Du har mottatt en nøkkelutvekslingsmelding fra %s. Du har ingen eksisterende sesjon med denne kontakten. Ønsker du å fullføre nøkkelutvekslingen?</string>
<!--ReviewIdentitiesActivity-->
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">Klarer ikke å vise korrupt ID-nøkkel!</string>
<string name="ReviewIdentitiesActivity_delete_identity">Slett ID?</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">Er du sikker på at du ønsker å slette denne ID-nøkkelen?</string>
<string name="ReviewIdentitiesActivity_invalid_identity">Ukjent ID!</string>
<!--SaveIdentityActivity-->
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">Du må gi denne identiten et navn!</string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">Navnet på denne identiten finnes fra før!</string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">En ID-nøkkel med det angitte navnet finnes fra før.</string>
<string name="SaveIdentityActivity_manage_identities">Administrere identiteter</string>
<!--VerifyIdentityActivity-->
<string name="VerifyIdentityActivity_mark_identity_verified_question">Merk ID som bekreftet?</string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">Er du sikker på at du har validert mottakerens ID-fingeravtrykk og ønsker å markere det som bekreftet?</string>
<string name="VerifyIdentityActivity_mark_verified">Merk som bekreftet</string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">Du har ingen ID-nøkkel.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">Mottakeren har ingen ID-nøkkel.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">Mottakeren har ingen ID-nøkkel!</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">Skann deres nøkkel for å sammenligne</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">Få min nøkkel skannet</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">ADVARSEL. Den skannede nøkkelen er IKKE DEN SAMME! Vær vennlig å sjekke fingeravtrykkets tekst nøye.</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">IKKE bekreftet!</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">Nøkkelen deres er korrekt. Det er også nødvendig å bekrefte nøkkelen din med dem også.</string>
<string name="VerifyIdentityActivity_verified_exclamation">Bekreftet!</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">Du har ingen ID-nøkkel!</string>
<!--VerifyImportedIdentityActivity-->
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">Du må gi denne kontakten et navn!</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">Lagre ID-nøkkel?</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">Feil ved lagring av ID-nøkkel!</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">Denne ID-nøkkelen, eller en annen ID-nøkkel med samme navn, finnes allerede. Vær vennlig å redigere nøkkeldatabasen.</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">Skann for å sammenligne</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">Få den skannet for å sammenligne</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">IKKE bekreftet!</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ADVARSEL. Den skannede nøkkelen er IKKE DEN SAMME!</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">Den skannede nøkkelen stemmer overens!</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">Bekreftet!</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">Er du sikker på at du ønsker å markere denne som en gyldig ID-nøkkel for videre korrespondanse med %s? Du bør bare gjøre dette hvis du faktisk har bekreftet fingeravtrykket.</string>
<!--VerifyKeysActivity-->
<string name="VerifyKeysActivity_mark_session_verified_question">Merk sesjonen som bekreftet?</string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">Er du sikker på at du har validert disse fingeravtrykkene og ønsker å markere denne sesjonen som bekreftet?</string>
<string name="VerifyKeysActivity_mark_verified">Merk som bekreftet</string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">Få mitt fingeravtrykk skannet</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">Skann motpartens fingeravtrykk</string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">ADVARSEL. Den skannede nøkkelen er IKKE DEN SAMME! Vær vennlig å sjekke fingeravtrykkets tekst nøye.</string>
<string name="VerifyKeysActivity_not_verified_exclamation">IKKE bekreftet!</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">Motpartens nøkkel er korrekt. Det er også nødvendig å få ditt fingeravtrykk skannet.</string>
<string name="VerifyKeysActivity_verified_exclamation">Bekreftet!</string>
<!--ViewIdentityActivity-->
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">Du har ingen ID-nøkkel.</string>
<string name="ViewIdentityActivity_scan_to_compare">Skann for å sammenligne</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">Få den skannet for å sammenlikne</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">ADVARSEL. Den skannede nøkkelen er IKKE DEN SAMME!</string>
<string name="ViewIdentityActivity_not_verified_exclamation">IKKE bekreftet!</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">Den skannede nøkkelen stemmer overens!</string>
<string name="ViewIdentityActivity_verified_exclamation">Bekreftet!</string>
<!--KeyExchangeInitiator-->
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">Initiere til tross for eksisterende forespørsel?</string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">Du har allerede sendt en forespørsel om å initiere en sesjon til denne mottakeren. Er du sikker på at du vil sende en til? Dette vil ugyldiggjøre tidligere forespørsel.</string>
<string name="KeyExchangeInitiator_send">Send</string>
<!--MessageDisplayHelper-->
<string name="MessageDisplayHelper_bad_encrypted_message">Ugyldig kryptert melding...</string>
<string name="MessageDisplayHelper_decrypting_please_wait">Dekrypterer, vennligst vent...</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">Melding kryptert for en ikke-eksisterende sesjon...</string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">Feil ved dekryptering: Lokal melding korrupt, MAC\'en stemmer ikke. Potensiell tukling?</string>
<!--MmsDatabase-->
<string name="MmsDatabase_connecting_to_mms_server">Kobler til MMS tjener...</string>
<string name="MmsDatabase_downloading_mms">Laster ned MMS...</string>
<string name="MmsDatabase_mms_download_failed">MMS nedlasting feilet!</string>
<string name="MmsDatabase_downloading">Laster ned...</string>
<string name="MmsDatabase_anonymous">Anonym</string>
<!--MmsMessageRecord-->
<string name="MmsMessageRecord_decrypting_mms_please_wait">Dekrypterer MMS, vennligst vent...</string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">Ugyldig kryptert MMS...</string>
<string name="MmsMessageRecord_mms_message_encrypted_for_non_existing_session">MMS kryptert for en ikke-eksisterende sesjon...</string>
<!--ApplicationMigrationService-->
<string name="ApplicationMigrationService_migrating">Migrerer</string>
<string name="ApplicationMigrationService_migrating_system_text_messages">Migrerer systemets SMS meldinger</string>
<!--KeyCachingService-->
<string name="KeyCachingService_textsecure_passphrase_cached">TextSecure passordet er bufret</string>
<string name="KeyCachingService_passphrase_cached">Passord bufret</string>
<!--MessageNotifier-->
<string name="MessageNotifier_d_new_messages">(%d) Nye meldinger</string>
<string name="MessageNotifier_d_new_messages_most_recent_from_s">(%1$d) Nye meldinger, sist mottatt fra: %2$s</string>
<string name="MessageNotifier_most_recent_from_s">Sist mottatt fra: %s</string>
<!--auto_initiate_activity-->
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">Du har mottatt en melding fra noen som støtter TextSecure krypterte sesjoner. Ønsker du å initiere en sikker sesjon?</string>
<string name="auto_initiate_activity__initiate_exchange">Start nøkkelutveksling</string>
<!--change_passphrase_activity-->
<string name="change_passphrase_activity__old_passphrase">Gammelt passord:</string>
<string name="change_passphrase_activity__new_passphrase">Nytt passord:</string>
<string name="change_passphrase_activity__repeat_new_passphrase">Gjenta nytt passord:</string>
<!--contact_selection_group_activity-->
<!--contact_selection_list_activity-->
<string name="contact_selection_group_activity__no_contacts">Ingen kontakter.</string>
<!--ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">Velg for</string>
<!--contact_selection_recent_activity-->
<string name="contact_selection_recent_activity__no_recent_calls">Ingen nye samtaler.</string>
<!--conversation_activity-->
<string name="conversation_activity__type_message">Skriv melding</string>
<string name="conversation_activity__send">Send</string>
<string name="conversation_activity__remove">Slett</string>
<!--conversation_fragment_cab-->
<string name="conversation_fragment_cab__batch_selection_mode">Batch-valg modus</string>
<!--create_passphrase_activity-->
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">Velg et passord som skal brukes til kryptering av dine lokale data. Dette bør være et sterkt passord.</string>
<string name="create_passphrase_activity__passphrase">Passord:</string>
<string name="create_passphrase_activity__repeat">Repeter:</string>
<!--receive_key_activity-->
<string name="receive_key_activity__session">Sesjon</string>
<string name="receive_key_activity__identities">Identiteter</string>
<string name="receive_key_activity__complete_exchange">Fullfør utveksling</string>
<!--recipients_panel-->
<string name="recipients_panel__to">Til</string>
<!--review_identities-->
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">Du har ingen ID-nøkler som du stoler på.</string>
<!--save_identity_activity-->
<string name="save_identity_activity__identity_name">Identitetens navn:</string>
<!--verify_identity_activity-->
<string name="verify_identity_activity__their_identity_they_read">Deres identitet (de leser):</string>
<string name="verify_identity_activity__your_identity_you_read">Din identitet (du leser):</string>
<!--verify_import_identity_activity-->
<string name="verify_import_identity_activity__identity_name_n">Identitetens navn:\\n</string>
<string name="verify_import_identity_activity__imported_identity_n">Importert identitet:\\n</string>
<string name="verify_import_identity_activity__verified">Bekreftet!</string>
<string name="verify_import_identity_activity__compare">Sammenlign</string>
<!--verify_keys_activity-->
<string name="verify_keys_activity__they_read_this">De leser dette:</string>
<string name="verify_keys_activity__you_read_this">Du leser dette:</string>
<!--view_identity_activity-->
<string name="view_identity_activity__identity">Identitet:</string>
<string name="view_identity_activity__qr_code">QR kode</string>
<!--AndroidManifest.xml-->
<string name="AndroidManifest__create_passphrase">Opprett passord</string>
<string name="AndroidManifest__enter_passphrase">Tast inn passord</string>
<string name="AndroidManifest__select_contacts">Velg kontakter</string>
<string name="AndroidManifest__textsecure_detected">TextSecure oppdaget</string>
<string name="AndroidManifest__public_identity_key">Offentlig ID-nøkkel</string>
<string name="AndroidManifest__change_passphrase">Bytt passord</string>
<string name="AndroidManifest__verify_session">Bekreft sesjon</string>
<string name="AndroidManifest__verify_identity">Bekreft identitet</string>
<string name="AndroidManifest__save_identity">Lagre identitet</string>
<string name="AndroidManifest__manage_identity_keys">Administrer ID-nøkler</string>
<string name="AndroidManifest__complete_key_exchange">Fullfør nøkkelutveksling</string>
<string name="AndroidManifest__verify_imported_identity">Bekreft importert identitet</string>
<!--preferences.xml-->
<string name="preferences__use_settings">Innstillinger for bruk</string>
<string name="preferences__pref_all_sms_title">Benytt for all SMS</string>
<string name="preferences__pref_all_mms_title">Benytt for all MMS</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">Benytt TextSecure for å lese og lagre alle innkommende SMS meldinger.</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">Benytt TextSecure for å lese og lagre alle innkommende MMS meldinger.</string>
<string name="preferences__input_settings">Innstillinger for inndata</string>
<string name="preferences__pref_enter_sends_title">\"Enter\" sender</string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">Inntasting av \"Enter\" fører til at meldingen blir sendt</string>
<string name="preferences__display_settings">Innstillinger for visning</string>
<string name="preferences__choose_identity">Velg identitet</string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">Velg din kontakt fra kontaktlisten.</string>
<string name="preferences__encryption_settings">Innstillinger for kryptering</string>
<string name="preferences__change_passphrase">Bytt passord</string>
<string name="preferences__change_my_passphrase">Endre mitt passord</string>
<string name="preferences__complete_key_exchanges">Fullfør nøkkelutvekslinger</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">Automatisk fullføre nøkkelutvekslinger for nye sesjoner eller sesjoner med samme ID-nøkkel</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">Inkluder en \"whitespace tag\" på slutten av alle ukrypterte meldinger</string>
<string name="preferences__include_whitespace_tag">Inkluder \"whitespace tag\"</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">Signer nøkkelutvekslingsmeldinger med ID-nøkkel</string>
<string name="preferences__sign_key_exchange">Signer nøkkelutveksling</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">Fjern passord fra minnet etter et gitt intervall</string>
<string name="preferences__timeout_passphrase">Passordtimeout</string>
<string name="preferences__pref_timeout_interval_dialogtitle">Velg passord timeout</string>
<string name="preferences__pref_timeout_interval_title">Timeoutintervall</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">Hvor lang tid det skal gå før passordet slettes fra minnet</string>
<string name="preferences__identity_key_settings">Innstillinger for ID-nøkkel</string>
<string name="preferences__view_my_identity_key">Vis min ID-nøkkel</string>
<string name="preferences__export_my_identity_key">Eksporter min ID-nøkkel</string>
<string name="preferences__import_contacts_key">Importer kontaktens ID-nøkkel</string>
<string name="preferences__import_an_identity_key_from_a_contact">Importer en ID-nøkkel fra en kontaktperson</string>
<string name="preferences__manage_identity_keys">Administrer ID-nøkler</string>
<string name="preferences__manage_configured_identity_keys">Administrer konfigurerte ID-nøkler</string>
<string name="preferences__notification_settings">Innstillinger for varsling</string>
<string name="preferences__notifications">Varsling</string>
<string name="preferences__display_message_notifications_in_status_bar">Vis varsel om meldinger i status feltet</string>
<string name="preferences__led_color">LED farge</string>
<string name="preferences__change_notification_led_color">Endre farge på LED varsling</string>
<string name="preferences__pref_led_blink_title">LED blinkemønster</string>
<string name="preferences__change_notification_blink_pattern">Endre LED-varslingens blinkemønster</string>
<string name="preferences__pref_led_blink_dialogtitle">Velg LED blinkemønster</string>
<string name="preferences__select_led_color">Velg LED farge</string>
<string name="preferences__select_ringtone">Velg varslingstone</string>
<string name="preferences__vibrate">Vibrasjon</string>
<string name="preferences__also_vibrate_when_notified">Også vibrere ved varsling</string>
<string name="preferences__minutes">minutter</string>
<string name="preferences__hours">timer</string>
<string name="preferences__green">Grønn</string>
<string name="preferences__red">Rød</string>
<string name="preferences__blue">Blå</string>
<string name="preferences__orange">Orange</string>
<string name="preferences__cyan">Turkis</string>
<string name="preferences__magenta">Magenta</string>
<string name="preferences__fast">Hurtig</string>
<string name="preferences__normal">Normal</string>
<string name="preferences__slow">Sakte</string>
<string name="preferences__custom">Tilpasset</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->
<!--contact_selection_list-->
<string name="contact_selection_list__menu_select_all">Merk alt</string>
<string name="contact_selection_list__menu_unselect_all">Avmarker alt</string>
<!--contact_selection-->
<string name="contact_selection__menu_finished">Avslutt</string>
<!--conversation_button_context-->
<string name="conversation_button_context__menu_send_unencrypted">Send ukryptert</string>
<!--conversation_callable-->
<string name="conversation_callable__menu_call">Ring</string>
<!--conversation_context-->
<string name="conversation_context__menu_message_details">Meldingsdetaljer</string>
<string name="conversation_context__menu_copy_text">Kopier tekst</string>
<string name="conversation_context__menu_delete_message">Slett melding</string>
<string name="conversation_context__menu_forward_message">Videresend melding</string>
<!--conversation_insecure-->
<string name="conversation_insecure__menu_start_secure_session">Start sikker sesjon</string>
<!--conversation_list_batch-->
<string name="conversation_list_batch__menu_delete_selected">Slett merkede</string>
<string name="conversation_list_batch__menu_select_all">Merk alt</string>
<!--conversation_list-->
<string name="conversation_list__menu_search">Søk</string>
<!--conversation_secure_verified-->
<!--conversation_secure_unverified-->
<string name="conversation_secure_verified__menu_security">Sikkerhet</string>
<string name="conversation_secure_verified__menu_verify_session">Bekreft sesjon</string>
<string name="conversation_secure_verified__menu_verify_recipient">Bekreft mottaker</string>
<string name="conversation_secure_verified__menu_abort_secure_session">Abryt sikker sesjon</string>
<!--conversation-->
<string name="conversation__menu_add_attachment">Legg til vedlegg</string>
<string name="conversation__menu_delete_thread">Slett tråd</string>
<string name="conversation__menu_compare">Sammenlign</string>
<!--conversation_group_options-->
<!--key_scanning-->
<string name="key_scanning__menu_compare">Sammenlign</string>
<string name="key_scanning__menu_get_scanned_to_compare">Få den skannet for å sammenlikne</string>
<string name="key_scanning__menu_scan_to_compare">Skann for å sammenligne</string>
<!--text_secure_locked-->
<string name="text_secure_locked__menu_unlock">Lås opp</string>
<!--text_secure_normal-->
<string name="text_secure_normal__menu_new_message">Ny melding</string>
<string name="text_secure_normal__menu_settings">Innstillinger</string>
<string name="text_secure_normal__menu_import_export">Importere/eksportere</string>
<string name="text_secure_normal__menu_import">Importer</string>
<string name="text_secure_normal__menu_export">Eksporter</string>
<string name="text_secure_normal__menu_clear_passphrase">Fjern passord</string>
<!--verify_keys-->
<string name="verify_keys__menu_verified">Bekreftet</string>
<!--Misc. piggybacking-->
<string name="PlayStoreListing">TextSecure er en tekstmeldingsapplikasjon hvor sikkerheten er forbedret. TextSecure fungerer som en full erstatning for mobilterminalens standard SMS/MMS applikasjon. Meldinger til andre TextSecure brukere sendes kryptert, og alle meldinger lagres i en kryptert database på mobilterminalen. Dersom telefonen blir stjålet eller mistet, vil meldingene være trygge, og kommunikasjon med andre TextSecure brukere kan ikke overvåkes.</string>
<!--EOF-->
<string name="conversation_item_sent__download">Last ned</string>
<string name="conversation_item_received__download">Last ned</string>
</resources>

364
res/values-pt/strings.xml Normal file
View File

@@ -0,0 +1,364 @@
<?xml version='1.0' encoding='UTF-8'?>
<resources>
<string name="app_name">TextSecure</string>
<string name="yes">Sim</string>
<string name="no">Não</string>
<string name="delete">Apagar</string>
<!--ApplicationExportManager-->
<string name="ApplicationExportManager_import_database_and_settings_title">Importar base de dados e configurações?</string>
<string name="ApplicationExportManager_import_database_and_settings_message">Importar a base de dados, chaves e configurações TextSecure a partir do Cartão SD?⏎ ⏎ AVISO: Isto vai sobreescrever as mensagens, chaves e configurações existentes!</string>
<string name="ApplicationExportManager_importing_database_and_keys">Importar base de dados e chaves</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">A importar a base de dados de SMS, chaves e configurações...</string>
<string name="ApplicationExportManager_export_database_question">Exportar base de dados?</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">Exportar a base de dados, chaves e configurações TextSecure para o Cartão SD?</string>
<string name="ApplicationExportManager_exporting_database_and_keys">Exportar base de dados e chaves</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">A exportar a base de dados de SMS, chaves e configurações...</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">Não foi encontrado um cartão SD!</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">Erro na exportação para SD!</string>
<string name="ApplicationExportManager_import_successful_exclamation">Importação com sucesso!</string>
<string name="ApplicationExportManager_export_successful_exclamation">Exportação com sucesso!</string>
<string name="ApplicationExportManager_import">Importar</string>
<string name="ApplicationExportManager_export">Exportar</string>
<!--ApplicationMigrationManager-->
<string name="ApplicationMigrationManager_migrating_database">A migrar a base de dados</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">A migrar a base de dados de mensagens...</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">Copiar a base de dados de mensagens do sistema?</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">Text secure usa uma base de dados cifrada que é independente da base de dados por omissão do sistema.\nGostaria de copiar as mensagens existentes para a base de dados cifrada do TextSecure?\nA base de dados por omissão não será afectada por esta operação.</string>
<string name="ApplicationMigrationManager_copy">Copiar</string>
<string name="ApplicationMigrationManager_dont_copy">Não copiar</string>
<!--ApplicationPreferencesActivity-->
<string name="ApplicationPreferenceActivity_not_found_exclamation">Não encontrado!</string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">Não foi encontrada uma chave de identidade válida para o contacto especificado.</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">Não tem uma chave de identidade!</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">Ainda não definiu um contacto próprio. Selecione um no menu de Configurações.</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">Exportar para a base de dados de contactos!</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">Necessita de inserir a frase-chave antes de importar chaves...</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">Necessita de inserir a frase-chave antes de gerir chaves...</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">Ainda não definiu uma frase-chave!</string>
<!--AttachmentTypeSelectorAdapter-->
<string name="AttachmentTypeSelectorAdapter_picture">Imagem</string>
<string name="AttachmentTypeSelectorAdapter_video">Vídeo</string>
<string name="AttachmentTypeSelectorAdapter_audio">Áudio</string>
<!--ConversationItem-->
<string name="ConversationItem_message_size_d_kb">Tamanho da mensagem: %d KB</string>
<string name="ConversationItem_expires_s">Expira: %s</string>
<string name="ConversationItem_error_sending_message">Erro no envio da mensagem</string>
<string name="ConversationItem_sending">A enviar...</string>
<string name="ConversationItem_saving_attachment">A guardar anexo</string>
<string name="ConversationItem_saving_attachment_to_sd_card">A guardar anexo para o cartão SD...</string>
<string name="ConversationItem_save_to_sd_card">Guardar para o cartão SD?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">Este ficheiro foi armazenado numa base de dados cifrada. A versão que gravar no cartão SD deixará de estar cifrada, pretende continuar?</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">Erro a gravar anexo para o cartão SD...</string>
<string name="ConversationItem_success_exclamation">Sucesso!</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">Não é possível escrever no cartão SD...</string>
<string name="ConversationItem_view_secure_media_question">Ver ficheiro seguro?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">Este ficheiro foi armazenado numa base de dados cifrada. Infelizmente, para o visualizar com um visualizador externo, é necessário que os dados sejam decifrados temporariamente e escritos para o disco.\nTem a certeza que pretende fazer isto?</string>
<string name="ConversationItem_key_exchange_message">Mensagem de intercâmbio de chaves</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">Mensagem de intercâmbio de chaves recebida e processada.</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">Erro, foi recebida uma mensagem de intercâmbio de chaves desactualizada.</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">Foi recebida uma mensagem de intercâmbio de chaves, clique para a processar</string>
<!--ConversationActivity-->
<string name="ConversationActivity_initiate_secure_session_question">Iniciar sessão segura?</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">Iniciar sessão segura com %s?</string>
<string name="ConversationActivity_abort_secure_session_confirmation">Confirmação de término de sessão segura</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">Tem a certeza que pretende terminar esta sessão segura?</string>
<string name="ConversationActivity_delete_thread_confirmation">Confirme apagar a conversa</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">Tem a certeza que pretende apagar permanentemente esta conversa?</string>
<string name="ConversationActivity_add_attachment">Adicionar anexo</string>
<string name="ConversationActivity_compose_message">Compor mensagem</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">Lamento, ocorreu um erro no envio do seu anexo</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">Lamento, o vídeo seleccionado excede as restrições de tamanho da mensagem</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">Lamento, o áudio seleccionado excede as restrições de tamanho da mensagem</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">Destinatário não é um endereço SMS ou email válido!</string>
<string name="ConversationActivity_message_is_empty_exclamation">A mensagem está vazia!</string>
<string name="ConversationActivity_forward_message_prefix">FWD</string>
<!--ConversationFragment-->
<string name="ConversationFragment_message_details">Detalhes da mensagem</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">Remetente: %1$s⏎ Transporte: %2$s⏎ Enviadas/Recebidas:%3$s</string>
<string name="ConversationFragment_confirm_message_delete">Confirme apagar a mensagem</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">Tem a certeza que pretende apagar permanentemente esta mensagem?</string>
<!--ConversationListAdapter-->
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">Mensagem cifrada, introduza frase-chave...</string>
<string name="ConversationListAdapter_key_exchange_message">Mensagem de intercâmbio de chaves...</string>
<!--ConversationListFragment-->
<string name="ConversationListFragment_delete_threads_question">Apagar conversas?</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">Tem a certeza que pretende apagar TODAS as conversas seleccionadas?</string>
<!--ConversationListItem-->
<string name="ConversationListItem_key_exchange_message">Mensagem de intercâmbio de chaves...</string>
<!--KeyScanningActivity-->
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">Não foi encontrada nenhuma chave lida!</string>
<!--PassphraseChangeActivity-->
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">As frases-chave não coincidem!</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">Frase-chave anterior incorrecta!</string>
<!--PassphraseCreateActivity-->
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">As frases-chave não coincidem!</string>
<string name="PassphraseCreateActivity_generating_keypair">A gerar par-chave</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">A gerar um par-chave de cifra local...</string>
<!--PassphrasePromptActivity-->
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">Frase-chave inválida!</string>
<!--ReceiveKeyActivity-->
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">ERRO:⏎ ⏎ Recebeu uma chave pública corrompida. Esta chave não pode ser processada, por favor reinicie uma sessão segura.</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">ERRO:⏎ ⏎ Recebeu uma chave pública de uma versão do protocolo não suportada. Esta chave não pode ser processada, por favor reinicie uma sessão segura.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">Esta mensagem de intercâmbio de chaves não inclúi uma assinatura de identidade.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">Esta mensagem de intercâmbio de chaves inclúi uma assinatura de identidade, mas ainda não confia nela.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">Esta mensagem de intercâmbio de chaves inclúi uma assinatura de identidade confiada para: %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">Esta é a chave que enviou para iniciar a sessão cifrada corrente com %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">Esta é a chave que recebeu para iniciar a sessão cifrada corrente com %s</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">Recebeu uma mensagem de intercâmbio de chaves de %s.⏎ ⏎ AVISO: Já tem uma sessão cifrada com este contacto. Se aceitar esta mensagem de intercâmbio de chaves, a sessão existente vai ser destruída e terá de se re-autenticar. Deseja completar este intercâmbio de chaves?</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">Recebeu uma mensagem de intercâmbio de chaves de %s. Já tem uma sessão cifrada prévia com este contacto e ao aceitar esta chave, completará o intercâmbio de chaves. Deseja completar este intercâmbio de chaves?</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">Iniciou uma mensagem de intercâmbio de chaves com %s mas ainda não recebeu resposta.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">Recebeu uma mensagem de intercâmbio de chaves de %s. Não tem nenhuma sessão prévia estabelecida com este contacto, deseja completar este intercâmbio de chaves?</string>
<!--ReviewIdentitiesActivity-->
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">Não é possível visualizar a chave de identidade corrompida!</string>
<string name="ReviewIdentitiesActivity_delete_identity">Apagar identidade?</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">Tem a certeza que pretende apagar permanentemente esta chave de identidade?</string>
<string name="ReviewIdentitiesActivity_invalid_identity">Identidade inválida!</string>
<!--SaveIdentityActivity-->
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">Tem de especificar um nome para esta identidade!</string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">O nome de identidade já existe!</string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">Uma chave de identidade com o nome especificado já existe.</string>
<string name="SaveIdentityActivity_manage_identities">Gerir identidades</string>
<!--VerifyIdentityActivity-->
<string name="VerifyIdentityActivity_mark_identity_verified_question">Marcar identidades como verificadas?</string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">Tem a certeza que validou a identidade dos destinatários e pretende marcá-la como verificada?</string>
<string name="VerifyIdentityActivity_mark_verified">Marcar como validade</string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">Não tem uma chave de identidade.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">Destinatário não tem chave de identidade.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">Destinatário não tem chave de identidade!</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">Ler a chave do destinatário para comparação</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">Ler a minha chave</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">AVISO, a chave lida NÃO corresponde. Por favor verifique a impressão digital da chave cuidadosamente.</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">NÃO verificado!</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">A chave do destinatário está correcta. É igualmente necessário verificar a sua chave perante ele.</string>
<string name="VerifyIdentityActivity_verified_exclamation">Verificado!</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">Não tem uma chave de identidade!</string>
<!--VerifyImportedIdentityActivity-->
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">Tem de especificar um nome para este contacto!</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">Guardar chave de identidade?</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">Erro ao gravar chave de identidade!</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">Esta chave de identidade ou uma chave com o mesmo nome já existe. Por favor edite a sua base de dados de chaves.</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">Leia o código QR para comparar</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">Apresente o código QR para comparar</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">Não verificado!</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">AVISO, a chave lida NÃO coincide!</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">A chave lida coincide!</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">Verificado!</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">Tem a certeza que pretende marcar esta chave como válida para toda a futura correspondência com %s? Apenas deve fazer isto se verificou a impressão digital da chave.</string>
<!--VerifyKeysActivity-->
<string name="VerifyKeysActivity_mark_session_verified_question">Marcar sessão como verificada?</string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">Tem a certeza que validou estas impressões digitais e pretende marcar esta sessão como verificada?</string>
<string name="VerifyKeysActivity_mark_verified">Marcar como verificada</string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">Apresentar a minha impressão digital para leitura</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">Ler a impressão digital do destinatário</string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">AVISO, a chave lida NÃO coincide. Por favor verifique a impressão digital cuidadosamente.</string>
<string name="VerifyKeysActivity_not_verified_exclamation">NÃO verificado!</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">A chave está correcta. É igualmente necessário que o destinatário valide a sua impressão digital.</string>
<string name="VerifyKeysActivity_verified_exclamation">Verificado!</string>
<!--ViewIdentityActivity-->
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">Você não tem uma chave de identidade.</string>
<string name="ViewIdentityActivity_scan_to_compare">Leia o código QR para comparar</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">Apresente o código QR para comparar</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">AVISO, a chave lida NÃO coincide.</string>
<string name="ViewIdentityActivity_not_verified_exclamation">NÃO verificado!</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">A chave lida coincide!</string>
<string name="ViewIdentityActivity_verified_exclamation">Verificado!</string>
<!--KeyExchangeInitiator-->
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">Iniciar apesar de pedido existente?</string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">Já enviou um pedido de início de sessão para este destinatário, tem a certeza que pretende enviar outro? Isto invalidará o pedido anterior.</string>
<string name="KeyExchangeInitiator_send">Enviar</string>
<!--MessageDisplayHelper-->
<string name="MessageDisplayHelper_bad_encrypted_message">Mensagem cifrada corrompida...</string>
<string name="MessageDisplayHelper_decrypting_please_wait">A decifrar, por favor aguarde...</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">Mensagem cifrada para sessão inexistente...</string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">Erro de decifração: Mensagem local corrompida, MAC não coincide. Potencial modificação?</string>
<!--MmsDatabase-->
<string name="MmsDatabase_connecting_to_mms_server">A ligar ao servidor de MMS...</string>
<string name="MmsDatabase_downloading_mms">A transferir MMS...</string>
<string name="MmsDatabase_mms_download_failed">Transferência de MMS falhou!</string>
<string name="MmsDatabase_downloading">A transferir...</string>
<string name="MmsDatabase_anonymous">Anónimo</string>
<!--MmsMessageRecord-->
<string name="MmsMessageRecord_decrypting_mms_please_wait">A decifrar MMS, por favor aguarde...</string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">Mensagem MMS cifrada corrompida...</string>
<string name="MmsMessageRecord_mms_message_encrypted_for_non_existing_session">Mensagem MMS cifrada para sessão inexistente...</string>
<!--ApplicationMigrationService-->
<string name="ApplicationMigrationService_migrating">A migrar</string>
<string name="ApplicationMigrationService_migrating_system_text_messages">A migrar mensagens de texto do sistema</string>
<!--KeyCachingService-->
<string name="KeyCachingService_textsecure_passphrase_cached">Frase-chave TextSecure guardada em memória cache</string>
<string name="KeyCachingService_passphrase_cached">Frase-chave guardada em cache</string>
<!--MessageNotifier-->
<string name="MessageNotifier_d_new_messages">(%d) novas mensagens</string>
<string name="MessageNotifier_d_new_messages_most_recent_from_s">(%1$d) novas mensagens, a mais recente de: %2$s</string>
<string name="MessageNotifier_most_recent_from_s">Mais recente de: %s</string>
<!--auto_initiate_activity-->
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">Recebeu uma mensagem de alguém que suporta sessões cifradas TextSecure. Deseja iniciar uma sessão segura?</string>
<string name="auto_initiate_activity__initiate_exchange">Iniciar intercâmbio</string>
<!--change_passphrase_activity-->
<string name="change_passphrase_activity__old_passphrase">Frase-chave anterior:</string>
<string name="change_passphrase_activity__new_passphrase">Frase-chave nova:</string>
<string name="change_passphrase_activity__repeat_new_passphrase">Repetir a frase-chave nova:</string>
<!--contact_selection_group_activity-->
<!--contact_selection_list_activity-->
<string name="contact_selection_group_activity__no_contacts">Sem contactos.</string>
<!--ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">Seleccionar para</string>
<!--contact_selection_recent_activity-->
<string name="contact_selection_recent_activity__no_recent_calls">Sem chamadas recentes.</string>
<!--conversation_activity-->
<string name="conversation_activity__type_message">Digite a mensagem</string>
<string name="conversation_activity__send">Enviar</string>
<string name="conversation_activity__remove">Remover</string>
<!--conversation_fragment_cab-->
<string name="conversation_fragment_cab__batch_selection_mode">Modo de selecção em grupo</string>
<!--create_passphrase_activity-->
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">Por favor escolha uma frase-chave que será usada para cifrar os seus dados localmente. Esta deve ser uma frase-chave forte.</string>
<string name="create_passphrase_activity__passphrase">Frase-chave:</string>
<string name="create_passphrase_activity__repeat">Repetir:</string>
<!--receive_key_activity-->
<string name="receive_key_activity__session">Sessão</string>
<string name="receive_key_activity__identities">Identidades</string>
<string name="receive_key_activity__complete_exchange">Completar intercâmbio</string>
<!--recipients_panel-->
<string name="recipients_panel__to">Para</string>
<!--review_identities-->
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">Não tem, presentemente, nenhuma chave de identidade na sua base de dados de confianças.</string>
<!--save_identity_activity-->
<string name="save_identity_activity__identity_name">Nome de identidade:</string>
<!--verify_identity_activity-->
<string name="verify_identity_activity__their_identity_they_read">A identidade do destinatário (ele lê):</string>
<string name="verify_identity_activity__your_identity_you_read">A sua identidade (você lê):</string>
<!--verify_import_identity_activity-->
<string name="verify_import_identity_activity__identity_name_n">Nome de identidade:\n\n</string>
<string name="verify_import_identity_activity__imported_identity_n">Identidade importada:\n\n</string>
<string name="verify_import_identity_activity__verified">Verificado!</string>
<string name="verify_import_identity_activity__compare">Comparar</string>
<!--verify_keys_activity-->
<string name="verify_keys_activity__they_read_this">O destinatário lê:</string>
<string name="verify_keys_activity__you_read_this">Você lê:</string>
<!--view_identity_activity-->
<string name="view_identity_activity__identity">Identidade:</string>
<string name="view_identity_activity__qr_code">Código QR</string>
<!--AndroidManifest.xml-->
<string name="AndroidManifest__create_passphrase">Criar frase-chave</string>
<string name="AndroidManifest__enter_passphrase">Introduzir frase-chave</string>
<string name="AndroidManifest__select_contacts">Seleccionar contactos</string>
<string name="AndroidManifest__textsecure_detected">TextSecure detectado</string>
<string name="AndroidManifest__public_identity_key">Chave de identidade pública</string>
<string name="AndroidManifest__change_passphrase">Mudar frase-chave</string>
<string name="AndroidManifest__verify_session">Verificar sessão</string>
<string name="AndroidManifest__verify_identity">Verificar identidade</string>
<string name="AndroidManifest__save_identity">Guardar identidade</string>
<string name="AndroidManifest__manage_identity_keys">Gerir chaves de identidade</string>
<string name="AndroidManifest__complete_key_exchange">Completar intercâmbio de chaves</string>
<string name="AndroidManifest__verify_imported_identity">Verificar identidade importada</string>
<!--preferences.xml-->
<string name="preferences__use_settings">Utilizar configurações</string>
<string name="preferences__pref_all_sms_title">Utilizar para todas as SMS</string>
<string name="preferences__pref_all_mms_title">Utilizar para todas as MMS</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">Utilizar TextSecure para visualizar e armazenar todas as mensagens de texto recebidas</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">Utilizar TextSecure para visualizar e armazenar todas as mensagens multimédia recebidas</string>
<string name="preferences__input_settings">Configurações de introdução</string>
<string name="preferences__pref_enter_sends_title">Tecla de enter envia</string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">Pressionar a tecla Enter envia mensagem de texto</string>
<string name="preferences__display_settings">Configurações de apresentação</string>
<string name="preferences__choose_identity">Escolher identidade</string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">Escolha o seu próprio contacto da lista de contactos.</string>
<string name="preferences__encryption_settings">Configurações de cifra</string>
<string name="preferences__change_passphrase">Mudar frase-chave</string>
<string name="preferences__change_my_passphrase">Mudar a minha frase-chave</string>
<string name="preferences__complete_key_exchanges">Completar intercâmbios de chaves</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">Completar automaticamente intercâmbios de chaves para novas sessões ou para sessões existentes com a mesma chave de identidade</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">Incluir uma etiqueta de caracteres invisíveis no fim de todas as mensagens não cifradas</string>
<string name="preferences__include_whitespace_tag">Incluir etiqueta de caracteres invisíveis</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">Assinar mensagens de intercâmbio de chaves com a chave de identidade</string>
<string name="preferences__sign_key_exchange">Assinar intercâmbio de chaves</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">Esquecer a frase-chave após algum intervalo</string>
<string name="preferences__timeout_passphrase">Expirar frase-chave</string>
<string name="preferences__pref_timeout_interval_dialogtitle">Seleccionar tempo de expiração da frase-chave</string>
<string name="preferences__pref_timeout_interval_title">Intervalo de expiração</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">Tempo a esperar antes de remover a frase-chave da memória</string>
<string name="preferences__identity_key_settings">Configurações de chave de identidade</string>
<string name="preferences__view_my_identity_key">Visualizar a minha chave de identidade</string>
<string name="preferences__export_my_identity_key">Exportar a minha chave de identidade</string>
<string name="preferences__import_contacts_key">Importar a chave do contacto</string>
<string name="preferences__import_an_identity_key_from_a_contact">Importar uma chave de identidade a partir de um contacto</string>
<string name="preferences__manage_identity_keys">Gerir chaves de identidade</string>
<string name="preferences__manage_configured_identity_keys">Gerir chaves de identidade configuradas</string>
<string name="preferences__notification_settings">Configurações de notificação</string>
<string name="preferences__notifications">Notificações</string>
<string name="preferences__display_message_notifications_in_status_bar">Apresentar notificações de mensagens na barra de estado</string>
<string name="preferences__led_color">Cor do LED</string>
<string name="preferences__change_notification_led_color">Mudar a cor do LED de notificação</string>
<string name="preferences__pref_led_blink_title">Padrão de pisca do LED</string>
<string name="preferences__change_notification_blink_pattern">Alterar padrão de pisca do LED</string>
<string name="preferences__pref_led_blink_dialogtitle">Seleccionar padrão de pisca do LED</string>
<string name="preferences__select_led_color">Seleccionar cor do LED</string>
<string name="preferences__select_ringtone">Seleccionar toque</string>
<string name="preferences__vibrate">Vibrar</string>
<string name="preferences__also_vibrate_when_notified">Vibrar também quando notificado</string>
<string name="preferences__minutes">minutos</string>
<string name="preferences__hours">horas</string>
<string name="preferences__green">Verde</string>
<string name="preferences__red">Vermelho</string>
<string name="preferences__blue">Azul</string>
<string name="preferences__orange">Laranja</string>
<string name="preferences__cyan">Cíano</string>
<string name="preferences__magenta">Magenta</string>
<string name="preferences__fast">Rápido</string>
<string name="preferences__normal">Normal</string>
<string name="preferences__slow">Lento</string>
<string name="preferences__custom">Personalizado</string>
<!--****************************************-->
<!--menus-->
<!--****************************************-->
<!--contact_selection_list-->
<string name="contact_selection_list__menu_select_all">Seleccionar tudo</string>
<string name="contact_selection_list__menu_unselect_all">Desseleccionar tudo</string>
<!--contact_selection-->
<string name="contact_selection__menu_finished">Terminado</string>
<!--conversation_button_context-->
<string name="conversation_button_context__menu_send_unencrypted">Enviar não cifrado</string>
<!--conversation_callable-->
<string name="conversation_callable__menu_call">Chamar</string>
<!--conversation_context-->
<string name="conversation_context__menu_message_details">Detalhes da mensagem</string>
<string name="conversation_context__menu_copy_text">Copiar texto</string>
<string name="conversation_context__menu_delete_message">Apagar mensagem</string>
<string name="conversation_context__menu_forward_message">Reencaminhar mensagem</string>
<!--conversation_insecure-->
<string name="conversation_insecure__menu_start_secure_session">Iniciar sessão segura</string>
<!--conversation_list_batch-->
<string name="conversation_list_batch__menu_delete_selected">Apagar seleccionado</string>
<string name="conversation_list_batch__menu_select_all">Seleccionar tudo</string>
<!--conversation_list-->
<string name="conversation_list__menu_search">Procurar</string>
<!--conversation_secure_verified-->
<!--conversation_secure_unverified-->
<string name="conversation_secure_verified__menu_security">Segurança</string>
<string name="conversation_secure_verified__menu_verify_session">Verificar sessão</string>
<string name="conversation_secure_verified__menu_verify_recipient">Verificar destinatário</string>
<string name="conversation_secure_verified__menu_abort_secure_session">Abortar sessão segura</string>
<!--conversation-->
<string name="conversation__menu_add_attachment">Adicionar anexo</string>
<string name="conversation__menu_delete_thread">Apagar conversa</string>
<string name="conversation__menu_compare">Comparar</string>
<!--conversation_group_options-->
<!--key_scanning-->
<string name="key_scanning__menu_compare">Comparar</string>
<string name="key_scanning__menu_get_scanned_to_compare">Apresente o código QR para comparar</string>
<string name="key_scanning__menu_scan_to_compare">Leia o código QR para comparar</string>
<!--text_secure_locked-->
<string name="text_secure_locked__menu_unlock">Desbloquear</string>
<!--text_secure_normal-->
<string name="text_secure_normal__menu_new_message">Mensagem nova</string>
<string name="text_secure_normal__menu_settings">Configurações</string>
<string name="text_secure_normal__menu_import_export">Importar/Exportar</string>
<string name="text_secure_normal__menu_import">Importar</string>
<string name="text_secure_normal__menu_export">Exportar</string>
<string name="text_secure_normal__menu_clear_passphrase">Limpar frase-chave</string>
<!--verify_keys-->
<string name="verify_keys__menu_verified">Verificado</string>
<!--Misc. piggybacking-->
<!--EOF-->
</resources>

View File

@@ -2,17 +2,17 @@
<resources>
<string-array name="minutes_hours">
<item>minutes</item>
<item>hours</item>
<item>@string/preferences__minutes</item>
<item>@string/preferences__hours</item>
</string-array>
<string-array name="pref_led_color_entries">
<item>Green</item>
<item>Red</item>
<item>Blue</item>
<item>Orange</item>
<item>Cyan</item>
<item>Magenta</item>
<item>@string/preferences__green</item>
<item>@string/preferences__red</item>
<item>@string/preferences__blue</item>
<item>@string/preferences__orange</item>
<item>@string/preferences__cyan</item>
<item>@string/preferences__magenta</item>
</string-array>
@@ -26,10 +26,10 @@
</string-array>
<string-array name="pref_led_blink_pattern_entries">
<item>Fast</item>
<item>Normal</item>
<item>Slow</item>
<item>Custom</item>
<item>@string/preferences__fast</item>
<item>@string/preferences__normal</item>
<item>@string/preferences__slow</item>
<item>@string/preferences__custom</item>
</string-array>
<string-array name="pref_led_blink_pattern_values"
translatable="false">

View File

@@ -3,387 +3,440 @@
<string name="app_name">TextSecure</string>
<string name="yes">Yes</string>
<string name="no">No</string>
<string name="delete">Delete</string>
<!-- ApplicationExportManager -->
<string name="import_database_and_settings_title">Import Database and Settings?</string>
<string name="import_database_and_settings_message">Import TextSecure database, keys, and settings from the SD Card?\n\nWARNING: This will clobber any existing messages, keys, and settings!</string>
<string name="importing_database_and_keys">Importing Database and Keys</string>
<string name="importing_your_sms_database_keys_and_settings">Importing your SMS database, keys, and settings...</string>
<string name="export_database_question">Export Database?</string>
<string name="export_textsecure_database_keys_and_settings_prompt">Export TextSecure database, keys, and settings to the SD Card?</string>
<string name="exporting_database_and_keys">Exporting Database and Keys</string>
<string name="exporting_your_sms_database_keys_and_settings">Exporting your SMS database, keys, and settings...</string>
<string name="no_sd_card_found_exclamation">No SD card found!</string>
<string name="error_exporting_to_sd_exclamation">Error exporting to SD!</string>
<string name="import_successful_exclamation">Import Successful!</string>
<string name="export_successful_exclamation">Export Successful!</string>
<string name="ApplicationExportManager_import_database_and_settings_title">Import Database and Settings?</string>
<string name="ApplicationExportManager_import_database_and_settings_message">Import TextSecure database, keys, and settings from the SD Card?\n\nWARNING: This will clobber any existing messages, keys, and settings!</string>
<string name="ApplicationExportManager_importing_database_and_keys">Importing Database and Keys</string>
<string name="ApplicationExportManager_importing_your_sms_database_keys_and_settings">Importing your SMS database, keys, and settings...</string>
<string name="ApplicationExportManager_export_database_question">Export Database?</string>
<string name="ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt">Export TextSecure database, keys, and settings to the SD Card?</string>
<string name="ApplicationExportManager_exporting_database_and_keys">Exporting Database and Keys</string>
<string name="ApplicationExportManager_exporting_your_sms_database_keys_and_settings">Exporting your SMS database, keys, and settings...</string>
<string name="ApplicationExportManager_no_sd_card_found_exclamation">No SD card found!</string>
<string name="ApplicationExportManager_error_exporting_to_sd_exclamation">Error exporting to SD!</string>
<string name="ApplicationExportManager_import_successful_exclamation">Import Successful!</string>
<string name="ApplicationExportManager_export_successful_exclamation">Export Successful!</string>
<string name="ApplicationExportManager_import">Import</string>
<string name="ApplicationExportManager_export">Export</string>
<!-- ApplicationMigrationManager -->
<string name="migrating_database">Migrating Database</string>
<string name="migrating_text_message_database">Migrating text message database...</string>
<string name="copy_system_text_message_database_question">Copy System Text Message Database?</string>
<string name="copy_system_text_message_database_explanation">TextSecure uses an encrypted database that is separate from the default system database. Would you like to copy your existing text messages into TextSecure\'s encrypted database? Your default system database will be unaffected.</string>
<string name="copy">Copy</string>
<string name="dont_copy">Don\'t copy</string>
<string name="ApplicationMigrationManager_migrating_database">Migrating Database</string>
<string name="ApplicationMigrationManager_migrating_text_message_database">Migrating text message database...</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_question">Copy System Text Message Database?</string>
<string name="ApplicationMigrationManager_copy_system_text_message_database_explanation">TextSecure uses an encrypted database that is separate from the default system database. Would you like to copy your existing text messages into TextSecure\'s encrypted database? Your default system database will be unaffected.</string>
<string name="ApplicationMigrationManager_copy">Copy</string>
<string name="ApplicationMigrationManager_dont_copy">Don\'t copy</string>
<!-- ApplicationPreferencesActivity -->
<string name="not_found_exclamation">Not found!</string>
<string name="no_valid_identity_key_was_found_in_the_specified_contact">No valid identity key was found in the specified contact.</string>
<string name="you_don_t_have_an_identity_key_exclamation">You don\'t have an identity key!</string>
<string name="you_have_not_yet_defined_a_contact_for_yourself">You have not yet defined a contact for yourself! Select one in the Settings menu.</string>
<string name="exported_to_contacts_database">Exported to contacts database!</string>
<string name="you_need_to_have_entered_your_passphrase_before_importing_keys">You need to have entered your passphrase before importing keys...</string>
<string name="you_need_to_have_entered_your_passphrase_before_managing_keys">You need to have entered your passphrase before managing keys...</string>
<string name="you_havent_set_a_passphrase_yet">You haven\'t set a passphrase yet!</string>
<string name="ApplicationPreferencesActivity_currently_s">Currently: %s</string>
<string name="ApplicationPreferenceActivity_not_found_exclamation">Not found!</string>
<string name="ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact">No valid identity key was found in the specified contact.</string>
<string name="ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation">You don\'t have an identity key!</string>
<string name="ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself">You have not yet defined a contact for yourself! Select one in the Settings menu.</string>
<string name="ApplicationPreferenceActivity_exported_to_contacts_database">Exported to contacts database!</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys">You need to have entered your passphrase before importing keys...</string>
<string name="ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys">You need to have entered your passphrase before managing keys...</string>
<string name="ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet">You haven\'t set a passphrase yet!</string>
<!-- AttachmentTypeSelectorAdapter -->
<string name="AttachmentTypeSelectorAdapter_picture">Picture</string>
<string name="AttachmentTypeSelectorAdapter_video">Video</string>
<string name="AttachmentTypeSelectorAdapter_audio">Audio</string>
<!-- ConversationItem -->
<string name="message_size_d_kb">Message size: %d KB</string>
<string name="expires_s">Expires: %s</string>
<string name="error_sending_message">Error sending message</string>
<string name="sending">Sending...</string>
<string name="saving_attachment">Saving Attachment</string>
<string name="saving_attachment_to_sd_card">Saving attachment to SD card...</string>
<string name="save_to_sd_card">Save to SD Card?</string>
<string name="this_media_has_been_stored_in_an_encrypted_database_warning">This media has been stored in an encrypted database. The version you save to the SD card will no longer be encrypted, would you like to continue?</string>
<string name="error_while_saving_attachment_to_sd_card">Error while saving attachment to SD card!</string>
<string name="success_exclamation">Success!</string>
<string name="unable_to_write_to_sd_card_exclamation">Unable to write to SD Card!</string>
<string name="view_secure_media_question">View secure media?</string>
<string name="this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">This media has been stored in an encrypted database. Unfortunately, to view it with an external content viewer currently requires the data to be temporarily decrypted and written to disk. Are you sure that you would like to do this?</string>
<string name="key_exchange_message2">Key exchange message</string>
<string name="received_and_processed_key_exchange_message">Received and processed key exchange message.</string>
<string name="error_received_stale_key_exchange_message">Error, received stale key exchange message.</string>
<string name="received_key_exchange_message_click_to_process">Received key exchange message, click to process</string>
<string name="ConversationItem_message_size_d_kb">Message size: %d KB</string>
<string name="ConversationItem_expires_s">Expires: %s</string>
<string name="ConversationItem_error_sending_message">Error sending message</string>
<string name="ConversationItem_sending">Sending...</string>
<string name="ConversationItem_saving_attachment">Saving Attachment</string>
<string name="ConversationItem_saving_attachment_to_sd_card">Saving attachment to SD card...</string>
<string name="ConversationItem_save_to_sd_card">Save to SD Card?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning">This media has been stored in an encrypted database. The version you save to the SD card will no longer be encrypted, would you like to continue?</string>
<string name="ConversationItem_error_while_saving_attachment_to_sd_card">Error while saving attachment to SD card!</string>
<string name="ConversationItem_success_exclamation">Success!</string>
<string name="ConversationItem_unable_to_write_to_sd_card_exclamation">Unable to write to SD Card!</string>
<string name="ConversationItem_view_secure_media_question">View secure media?</string>
<string name="ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning">This media has been stored in an encrypted database. Unfortunately, to view it with an external content viewer currently requires the data to be temporarily decrypted and written to disk. Are you sure that you would like to do this?</string>
<string name="ConversationItem_key_exchange_message">Key exchange message</string>
<string name="ConversationItem_received_and_processed_key_exchange_message">Received and processed key exchange message.</string>
<string name="ConversationItem_error_received_stale_key_exchange_message">Error, received stale key exchange message.</string>
<string name="ConversationItem_received_key_exchange_message_click_to_process">Received key exchange message, click to process</string>
<!-- ConversationActivity -->
<string name="initiate_secure_session_question">Initiate Secure Session?</string>
<string name="initiate_secure_session_with_s_question">Initiate secure session with %s?</string>
<string name="abort_secure_session_confirmation">Abort Secure Session Confirmation</string>
<string name="are_you_sure_that_you_want_to_abort_this_secure_session_question">Are you sure that you want to abort this secure session?</string>
<string name="delete_thread_confirmation">Delete Thread Confirmation</string>
<string name="are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">Are you sure that you want to permanently delete this conversation?</string>
<string name="add_attachment">Add attachment</string>
<string name="compose_message">Compose Message</string>
<string name="sorry_there_was_an_error_setting_your_attachment">Sorry, there was an error setting your attachment.</string>
<string name="sorry_the_selected_video_exceeds_message_size_restrictions">Sorry, the selected video exceeds message size restrictions.</string>
<string name="sorry_the_selected_audio_exceeds_message_size_restrictions">Sorry, the selected audio exceeds message size restrictions.</string>
<string name="recipient_is_not_a_valid_sms_or_email_address_exclamation">Recipient is not a valid SMS or email address!</string>
<string name="message_is_empty_exclamation">Message is empty!</string>
<string name="ConversationActivity_initiate_secure_session_question">Initiate Secure Session?</string>
<string name="ConversationActivity_initiate_secure_session_with_s_question">Initiate secure session with %s?</string>
<string name="ConversationActivity_abort_secure_session_confirmation">Abort Secure Session Confirmation</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question">Are you sure that you want to abort this secure session?</string>
<string name="ConversationActivity_delete_thread_confirmation">Delete Thread Confirmation</string>
<string name="ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question">Are you sure that you want to permanently delete this conversation?</string>
<string name="ConversationActivity_add_attachment">Add attachment</string>
<string name="ConversationActivity_compose_message">Compose Message</string>
<string name="ConversationActivity_sorry_there_was_an_error_setting_your_attachment">Sorry, there was an error setting your attachment.</string>
<string name="ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions">Sorry, the selected video exceeds message size restrictions.</string>
<string name="ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions">Sorry, the selected audio exceeds message size restrictions.</string>
<string name="ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation">Recipient is not a valid SMS or email address!</string>
<string name="ConversationActivity_message_is_empty_exclamation">Message is empty!</string>
<string name="ConversationActivity_forward_message_prefix">FWD</string>
<string name="ConversationActivity_group_conversation_recipients">Group Conversation Recipients</string>
<string name="ConversationActivity_group_conversation">Group Conversation</string>
<string name="ConversationActivity_d_recipients_in_group">%d recipients in group</string>
<!-- ConversationFragment -->
<string name="message_details">Message details</string>
<string name="sender_s_transport_s_sent_received_s">Sender: %1$s\nTransport: %2$s\nSent/Received:%3$s</string>
<string name="ConversationFragment_message_details">Message details</string>
<string name="ConversationFragment_sender_s_transport_s_sent_received_s">Sender: %1$s\nTransport: %2$s\nSent/Received:%3$s</string>
<string name="ConversationFragment_confirm_message_delete">Confirm Message Delete</string>
<string name="ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message">Are you sure that you want to permanently delete this message?</string>
<!-- ConversationListAdapter -->
<string name="encrypted_message_enter_passphrase">"Encrypted message, enter passphrase... "</string>
<string name="key_exchange_message">Key exchange message...</string>
<string name="ConversationListAdapter_encrypted_message_enter_passphrase">"Encrypted message, enter passphrase... "</string>
<string name="ConversationListAdapter_key_exchange_message">Key exchange message...</string>
<!-- ConversationListFragment -->
<string name="delete_threads_question">Delete threads?</string>
<string name="are_you_sure_you_wish_to_delete_all_selected_conversation_threads">Are you sure you wish to delete ALL selected conversation threads?</string>
<string name="delete">Delete</string>
<string name="cancel">Cancel</string>
<string name="ConversationListFragment_delete_threads_question">Delete threads?</string>
<string name="ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads">Are you sure you wish to delete ALL selected conversation threads?</string>
<!-- ConversationListItem -->
<string name="ConversationListItem_key_exchange_message">Key exchange message...</string>
<!-- KeyScanningActivity -->
<string name="no_scanned_key_found_exclamation">No scanned key found!</string>
<string name="KeyScanningActivity_no_scanned_key_found_exclamation">No scanned key found!</string>
<!-- PassphraseChangeActivity -->
<string name="passphrases_dont_match_exclamation">Passphrases Don\'t Match!</string>
<string name="incorrect_old_passphrase_exclamation">Incorrect old passphrase!</string>
<string name="PassphraseChangeActivity_passphrases_dont_match_exclamation">Passphrases Don\'t Match!</string>
<string name="PassphraseChangeActivity_incorrect_old_passphrase_exclamation">Incorrect old passphrase!</string>
<!-- PassphraseCreateActivity -->
<string name="generating_keypair">Generating KeyPair</string>
<string name="generating_a_local_encryption_keypair">Generating a local encryption keypair...</string>
<string name="PassphraseCreateActivity_passphrases_dont_match_exclamation">Passphrases Don\'t Match!</string>
<string name="PassphraseCreateActivity_generating_keypair">Generating KeyPair</string>
<string name="PassphraseCreateActivity_generating_a_local_encryption_keypair">Generating a local encryption keypair...</string>
<!-- PassphrasePromptActivity -->
<string name="invalid_passphrase_exclamation">Invalid Passphrase!</string>
<string name="PassphrasePromptActivity_invalid_passphrase_exclamation">Invalid Passphrase!</string>
<!-- ReceiveKeyActivity -->
<string name="error_you_have_received_a_corrupted_public_key">ERROR:\n\nYou have received a corrupted public key. This key can not be processed, please re-initiate a secure session.</string>
<string name="error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">ERROR:\n\nYou have received a public key from an unsupported version of the protocol. This key can not be processed, please re-initiate a secure session.</string>
<string name="this_key_exchange_message_does_not_include_an_identity_signature">This key exchange message does not include an identity signature.</string>
<string name="this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">This key exchange message includes an identity signature, but you do not yet trust it.</string>
<string name="this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">This key exchange message includes an identity signature which you trust for: %s</string>
<string name="this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">This is the key that you sent to start your current encrypted session with %s</string>
<string name="this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">This is the key that you received to start your current encrypted session with %s</string>
<string name="you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">You have received a Key Exchange message from %s.\n\nWARNING: You already have an encrypted session with this contact. If you choose to accept this key exchange message, it will destroy your existing session and you will have to re-authenticate. Would you like to complete this key exchange?</string>
<string name="you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">You have received a Key Exchange message from %s. You have previously initiated a session with this contact, and by accepting this key you will complete the key exchange. Would you like to complete this key exchange?</string>
<string name="you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">You have initiated a Key Exchange message with %s but have not yet received a reply.</string>
<string name="you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">You have received a Key Exchange message from %s. You have no existing session with this contact, would you like to complete this key exchange?</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key">ERROR:\n\nYou have received a corrupted public key. This key can not be processed, please re-initiate a secure session.</string>
<string name="ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol">ERROR:\n\nYou have received a public key from an unsupported version of the protocol. This key can not be processed, please re-initiate a secure session.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature">This key exchange message does not include an identity signature.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it">This key exchange message includes an identity signature, but you do not yet trust it.</string>
<string name="ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s">This key exchange message includes an identity signature which you trust for: %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s">This is the key that you sent to start your current encrypted session with %s</string>
<string name="ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s">This is the key that you received to start your current encrypted session with %s</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session">You have received a Key Exchange message from %s.\n\nWARNING: You already have an encrypted session with this contact. If you choose to accept this key exchange message, it will destroy your existing session and you will have to re-authenticate. Would you like to complete this key exchange?</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated">You have received a Key Exchange message from %s. You have previously initiated a session with this contact, and by accepting this key you will complete the key exchange. Would you like to complete this key exchange?</string>
<string name="ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply">You have initiated a Key Exchange message with %s but have not yet received a reply.</string>
<string name="ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session">You have received a Key Exchange message from %s. You have no existing session with this contact, would you like to complete this key exchange?</string>
<!-- ReviewIdentitiesActivity -->
<string name="unable_to_view_corrupted_identity_key_exclamation">Unable to view corrupted identity key!</string>
<string name="ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation">Unable to view corrupted identity key!</string>
<string name="ReviewIdentitiesActivity_delete_identity">Delete identity?</string>
<string name="ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key">Are you sure that you wish to permanently delete this identity key?</string>
<string name="ReviewIdentitiesActivity_invalid_identity">Invalid Identity!</string>
<!-- SaveIdentityActivity -->
<string name="you_must_specify_a_name_for_this_identity_exclamation">You must specify a name for this identity!</string>
<string name="identity_name_exists_exclamation">Identity Name Exists!</string>
<string name="an_identity_key_with_the_specified_name_already_exists">An identity key with the specified name already exists.</string>
<string name="manage_identities">Manage Identities</string>
<string name="SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation">You must specify a name for this identity!</string>
<string name="SaveIdentityActivity_identity_name_exists_exclamation">Identity Name Exists!</string>
<string name="SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists">An identity key with the specified name already exists.</string>
<string name="SaveIdentityActivity_manage_identities">Manage Identities</string>
<!-- VerifyIdentityActivity -->
<string name="mark_identity_verified_question">Mark Identity Verified?</string>
<string name="are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">Are you sure you have validated the recipients\' identity fingerprint and would like to mark it as verified?</string>
<string name="mark_verified">Mark Verified</string>
<string name="you_do_not_have_an_identity_key">You do not have an identity key.</string>
<string name="recipient_has_no_identity_key">Recipient has no identity key.</string>
<string name="recipient_has_no_identity_key_exclamation">Recipient has no identity key!</string>
<string name="scan_their_key_to_compare">Scan their key to compare</string>
<string name="get_my_key_scanned">Get my key scanned</string>
<string name="warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">WARNING, the scanned key DOES NOT match! Please check the fingerprint text carefully.</string>
<string name="not_verified_exclamation">NOT Verified!</string>
<string name="their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">Their key is correct. It is also necessary to verify your key with them as well.</string>
<string name="verified_exclamation">Verified!</string>
<string name="VerifyIdentityActivity_mark_identity_verified_question">Mark Identity Verified?</string>
<string name="VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified">Are you sure you have validated the recipients\' identity fingerprint and would like to mark it as verified?</string>
<string name="VerifyIdentityActivity_mark_verified">Mark Verified</string>
<string name="VerifyIdentityActivity_you_do_not_have_an_identity_key">You do not have an identity key.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key">Recipient has no identity key.</string>
<string name="VerifyIdentityActivity_recipient_has_no_identity_key_exclamation">Recipient has no identity key!</string>
<string name="VerifyIdentityActivity_scan_their_key_to_compare">Scan their key to compare</string>
<string name="VerifyIdentityActivity_get_my_key_scanned">Get my key scanned</string>
<string name="VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully">WARNING, the scanned key DOES NOT match! Please check the fingerprint text carefully.</string>
<string name="VerifyIdentityActivity_not_verified_exclamation">NOT Verified!</string>
<string name="VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well">Their key is correct. It is also necessary to verify your key with them as well.</string>
<string name="VerifyIdentityActivity_verified_exclamation">Verified!</string>
<string name="VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation">You don\'t have an identity key!</string>
<!-- VerifyImportedIdentityActivity -->
<string name="you_must_specify_a_name_for_this_contact_exclamation">You must specify a name for this contact!</string>
<string name="save_identity_key_question">Save Identity Key?</string>
<string name="error_saving_identity_key_exclamation">Error saving identity key!</string>
<string name="this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">This identity key or an identity key with the same name already exists. Please edit your key database.</string>
<string name="scan_to_compare">Scan to compare</string>
<string name="get_scanned_to_compare">Get scanned to compare</string>
<string name="not_verified_exclamation2">NOT Verified!</string>
<string name="warning_the_scanned_key_does_not_match_exclamation">WARNING, the scanned key DOES NOT match!</string>
<string name="the_scanned_key_matches_exclamation">The scanned key matches!</string>
<string name="verified_exclamation2">Verified!</string>
<string name="are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">Are you sure that you would like to mark this as a valid identity key for all future correspondence with %s? You should only do this if you have actually verified the fingerprint.</string>
<string name="VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation">You must specify a name for this contact!</string>
<string name="VerifyImportedIdentityActivity_save_identity_key_question">Save Identity Key?</string>
<string name="VerifyImportedIdentityActivity_error_saving_identity_key_exclamation">Error saving identity key!</string>
<string name="VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database">This identity key or an identity key with the same name already exists. Please edit your key database.</string>
<string name="VerifyImportedIdentityActivity_scan_to_compare">Scan to compare</string>
<string name="VerifyImportedIdentityActivity_get_scanned_to_compare">Get scanned to compare</string>
<string name="VerifyImportedIdentityActivity_not_verified_exclamation">NOT Verified!</string>
<string name="VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">WARNING, the scanned key DOES NOT match!</string>
<string name="VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation">The scanned key matches!</string>
<string name="VerifyImportedIdentityActivity_verified_exclamation">Verified!</string>
<string name="VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s">Are you sure that you would like to mark this as a valid identity key for all future correspondence with %s? You should only do this if you have actually verified the fingerprint.</string>
<!-- VerifyKeysActivity -->
<string name="mark_session_verified_question">Mark Session Verified?</string>
<string name="are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">Are you sure that you have validated these fingerprints and would like to mark this session as verified?</string>
<string name="mark_verified2">Mark Verified</string>
<string name="get_my_fingerprint_scanned">Get my fingerprint scanned</string>
<string name="scan_their_fingerprint">Scan their fingerprint</string>
<string name="warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">WARNING, the scanned key DOES NOT match! Please check the fingerprint text carefully.</string>
<string name="not_verified_exclamation3">NOT Verified!</string>
<string name="their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">Their key is correct. It is also necessary to get your fingerprint scanned as well.</string>
<string name="verified_exclamation3">Verified!</string>
<string name="VerifyKeysActivity_mark_session_verified_question">Mark Session Verified?</string>
<string name="VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified">Are you sure that you have validated these fingerprints and would like to mark this session as verified?</string>
<string name="VerifyKeysActivity_mark_verified">Mark Verified</string>
<string name="VerifyKeysActivity_get_my_fingerprint_scanned">Get my fingerprint scanned</string>
<string name="VerifyKeysActivity_scan_their_fingerprint">Scan their fingerprint</string>
<string name="VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2">WARNING, the scanned key DOES NOT match! Please check the fingerprint text carefully.</string>
<string name="VerifyKeysActivity_not_verified_exclamation">NOT Verified!</string>
<string name="VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well">Their key is correct. It is also necessary to get your fingerprint scanned as well.</string>
<string name="VerifyKeysActivity_verified_exclamation">Verified!</string>
<!-- ViewIdentityActivity -->
<string name="you_do_not_have_an_identity_key2">You do not have an identity key.</string>
<string name="scan_to_compare2">Scan to compare</string>
<string name="get_scanned_to_compare2">Get scanned to compare</string>
<string name="warning_the_scanned_key_does_not_match_exclamation2">WARNING, the scanned key DOES NOT match!</string>
<string name="not_verified_exclamation4">NOT Verified!</string>
<string name="the_scanned_key_matches_exclamation2">The scanned key matches!</string>
<string name="verified_exclamation4">Verified!</string>
<string name="ViewIdentityActivity_you_do_not_have_an_identity_key">You do not have an identity key.</string>
<string name="ViewIdentityActivity_scan_to_compare">Scan to compare</string>
<string name="ViewIdentityActivity_get_scanned_to_compare">Get scanned to compare</string>
<string name="ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation">WARNING, the scanned key DOES NOT match!</string>
<string name="ViewIdentityActivity_not_verified_exclamation">NOT Verified!</string>
<string name="ViewIdentityActivity_the_scanned_key_matches_exclamation">The scanned key matches!</string>
<string name="ViewIdentityActivity_verified_exclamation">Verified!</string>
<!-- KeyExchangeInitiator -->
<string name="initiate_despite_existing_request_question">Initiate Despite Existing Request?</string>
<string name="youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">You\'ve already sent a session initiation request to this recipient, are you sure you\'d like to send another? This will invalidate the first request.</string>
<string name="send">Send</string>
<string name="KeyExchangeInitiator_initiate_despite_existing_request_question">Initiate Despite Existing Request?</string>
<string name="KeyExchangeInitiator_youve_already_sent_a_session_initiation_request_to_this_recipient_are_you_sure">You\'ve already sent a session initiation request to this recipient, are you sure you\'d like to send another? This will invalidate the first request.</string>
<string name="KeyExchangeInitiator_send">Send</string>
<!-- MessageDisplayHelper -->
<string name="bad_encrypted_message">Bad encrypted message...</string>
<string name="decrypting_please_wait">Decrypting, please wait...</string>
<string name="message_encrypted_for_non_existing_session">Message encrypted for non-existing session...</string>
<string name="decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">Decryption error: local message corrupted, MAC doesn\'t match. Potential tampering?</string>
<string name="MessageDisplayHelper_bad_encrypted_message">Bad encrypted message...</string>
<string name="MessageDisplayHelper_decrypting_please_wait">Decrypting, please wait...</string>
<string name="MessageDisplayHelper_message_encrypted_for_non_existing_session">Message encrypted for non-existing session...</string>
<string name="MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question">Decryption error: local message corrupted, MAC doesn\'t match. Potential tampering?</string>
<!-- MmsDatabase -->
<string name="connecting_to_mms_server">Connecting to MMS server...</string>
<string name="downloading_mms">Downloading MMS...</string>
<string name="mms_download_failed">MMS Download failed!</string>
<string name="downloading">Downloading...</string>
<string name="anonymous">Anonymous</string>
<string name="MmsDatabase_connecting_to_mms_server">Connecting to MMS server...</string>
<string name="MmsDatabase_downloading_mms">Downloading MMS...</string>
<string name="MmsDatabase_mms_download_failed">MMS Download failed!</string>
<string name="MmsDatabase_downloading">Downloading...</string>
<string name="MmsDatabase_anonymous">Anonymous</string>
<!-- MmsMessageRecord -->
<string name="decrypting_mms_please_wait">Decrypting MMS, please wait...</string>
<string name="bad_encrypted_mms_message">Bad encrypted MMS message...</string>
<string name="mms_message_encrypted_for_non_existing_session">MMS message encrypted for non-existing session...</string>
<string name="MmsMessageRecord_decrypting_mms_please_wait">Decrypting MMS, please wait...</string>
<string name="MmsMessageRecord_bad_encrypted_mms_message">Bad encrypted MMS message...</string>
<string name="MmsMessageRecord_mms_message_encrypted_for_non_existing_session">MMS message encrypted for non-existing session...</string>
<!-- ApplicationMigrationService -->
<string name="migrating">Migrating</string>
<string name="migrating_system_text_messages">Migrating System Text Messages</string>
<string name="ApplicationMigrationService_migrating">Migrating</string>
<string name="ApplicationMigrationService_migrating_system_text_messages">Migrating System Text Messages</string>
<!-- KeyCachingService -->
<string name="textsecure_passphrase_cached">TextSecure Passphrase Cached</string>
<string name="passphrase_cached">Passphrase Cached</string>
<string name="KeyCachingService_textsecure_passphrase_cached">TextSecure Passphrase Cached</string>
<string name="KeyCachingService_passphrase_cached">Passphrase Cached</string>
<!-- MessageNotifier -->
<string name="_d_new_messages">(%d) New messages</string>
<string name="_d_new_messages_most_recent_from_s">(%1$d) New messages, most recent from: %2$s</string>
<string name="most_recent_from_s">Most recent from: %s</string>
<string name="MessageNotifier_d_new_messages">(%d) New messages</string>
<string name="MessageNotifier_d_new_messages_most_recent_from_s">(%1$d) New messages, most recent from: %2$s</string>
<string name="MessageNotifier_most_recent_from_s">Most recent from: %s</string>
<!-- auto_initiate_activity -->
<string name="you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">You have received a message from someone who supports TextSecure encrypted sessions. Would you like to initiate a secure session?</string>
<string name="initiate_exchange">Initiate Exchange</string>
<string name="auto_initiate_activity__you_have_received_a_message_from_someone_who_supports_textsecure_encrypted_sessions_would_you_like_to_initiate_a_secure_session">You have received a message from someone who supports TextSecure encrypted sessions. Would you like to initiate a secure session?</string>
<string name="auto_initiate_activity__initiate_exchange">Initiate Exchange</string>
<!-- change_passphrase_activity -->
<string name="old_passphrase">Old passphrase:</string>
<string name="new_passphrase">New passphrase:</string>
<string name="repeat_new_passphrase">Repeat new passphrase:</string>
<string name="change_passphrase_activity__old_passphrase">Old passphrase:</string>
<string name="change_passphrase_activity__new_passphrase">New passphrase:</string>
<string name="change_passphrase_activity__repeat_new_passphrase">Repeat new passphrase:</string>
<!-- contact_selection_group_activity -->
<!-- contact_selection_list_activity -->
<string name="no_contacts">No contacts.</string>
<string name="contact_selection_group_activity__no_contacts">No contacts.</string>
<!-- ContactSelectionListFragment-->
<string name="ContactSelectionlistFragment_select_for">Select for</string>
<!-- contact_selection_recent_activity -->
<string name="no_recent_calls">No recent calls.</string>
<string name="contact_selection_recent_activity__no_recent_calls">No recent calls.</string>
<!-- conversation_activity -->
<string name="type_message">Type message</string>
<string name="send2">Send</string>
<string name="remove">Remove</string>
<string name="conversation_activity__type_message">Type message</string>
<string name="conversation_activity__send">Send</string>
<string name="conversation_activity__remove">Remove</string>
<!-- conversation_fragment_cab -->
<string name="batch_selection_mode">Batch Selection Mode</string>
<string name="conversation_fragment_cab__batch_selection_mode">Batch Selection Mode</string>
<!-- create_passphrase_activity -->
<string name="please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">Please choose a passphrase that will be used to locally encrypt your data. This should be a strong passphrase.</string>
<string name="passphrase">Passphrase:</string>
<string name="repeat">Repeat:</string>
<!-- mms_download_view -->
<string name="download">Download</string>
<string name="downloading">Downloading</string>
<string name="create_passphrase_activity__please_choose_a_passphrase_that_will_be_used_to_locally_encrypt_your_data_this_should_be_a_strong_passphrase">Please choose a passphrase that will be used to locally encrypt your data. This should be a strong passphrase.</string>
<string name="create_passphrase_activity__passphrase">Passphrase:</string>
<string name="create_passphrase_activity__repeat">Repeat:</string>
<!-- receive_key_activity -->
<string name="session">Session</string>
<string name="identities">Identities</string>
<string name="complete_exchange">Complete Exchange</string>
<string name="receive_key_activity__session">Session</string>
<string name="receive_key_activity__identities">Identities</string>
<string name="receive_key_activity__complete_exchange">Complete Exchange</string>
<!-- recipients_panel -->
<string name="to">To</string>
<string name="recipients_panel__to">To</string>
<!-- review_identities -->
<string name="you_don_t_currently_have_any_identity_keys_in_your_trust_database">You don\'t currently have any identity keys in your trust database.</string>
<string name="review_identities__you_don_t_currently_have_any_identity_keys_in_your_trust_database">You don\'t currently have any identity keys in your trust database.</string>
<!-- save_identity_activity -->
<string name="identity_name">Identity Name:</string>
<string name="save_identity_activity__identity_name">Identity Name:</string>
<!-- verify_identity_activity -->
<string name="their_identity_they_read">Their identity (they read):</string>
<string name="your_identity_you_read">Your identity (you read):</string>
<string name="verify_identity_activity__their_identity_they_read">Their identity (they read):</string>
<string name="verify_identity_activity__your_identity_you_read">Your identity (you read):</string>
<!-- verify_import_identity_activity -->
<string name="identity_name_n">Identity name:\\n</string>
<string name="imported_identity_n">Imported identity:\\n</string>
<string name="verified5">Verified!</string>
<string name="compare5">Compare</string>
<string name="verify_import_identity_activity__identity_name_n">Identity name:\\n</string>
<string name="verify_import_identity_activity__imported_identity_n">Imported identity:\\n</string>
<string name="verify_import_identity_activity__verified">Verified!</string>
<string name="verify_import_identity_activity__compare">Compare</string>
<!-- verify_keys_activity -->
<string name="they_read_this">They read this:</string>
<string name="you_read_this">You read this:</string>
<string name="verify_keys_activity__they_read_this">They read this:</string>
<string name="verify_keys_activity__you_read_this">You read this:</string>
<!-- view_identity_activity -->
<string name="identity5">Identity:</string>
<string name="qr_code">QR Code</string>
<string name="view_identity_activity__identity">Identity:</string>
<string name="view_identity_activity__qr_code">QR Code</string>
<!-- AndroidManifest.xml -->
<string name="create_passphrase">Create Passphrase</string>
<string name="enter_passphrase">Enter Passphrase</string>
<string name="select_contacts">Select Contacts</string>
<string name="textsecure_detected">TextSecure Detected</string>
<string name="public_identity_key">Public Identity Key</string>
<string name="change_passphrase2">Change Passphrase</string>
<string name="verify_session">Verify Session</string>
<string name="verify_identity">Verify Identity</string>
<string name="save_identity">Save Identity</string>
<string name="manage_identity_keys2">Manage Identity Keys</string>
<string name="complete_key_exchange">Complete Key Exchange</string>
<string name="verify_imported_identity">Verify Imported Identity</string>
<string name="AndroidManifest__create_passphrase">Create Passphrase</string>
<string name="AndroidManifest__enter_passphrase">Enter Passphrase</string>
<string name="AndroidManifest__select_contacts">Select Contacts</string>
<string name="AndroidManifest__textsecure_detected">TextSecure Detected</string>
<string name="AndroidManifest__public_identity_key">Public Identity Key</string>
<string name="AndroidManifest__change_passphrase">Change Passphrase</string>
<string name="AndroidManifest__verify_session">Verify Session</string>
<string name="AndroidManifest__verify_identity">Verify Identity</string>
<string name="AndroidManifest__save_identity">Save Identity</string>
<string name="AndroidManifest__manage_identity_keys">Manage Identity Keys</string>
<string name="AndroidManifest__complete_key_exchange">Complete Key Exchange</string>
<string name="AndroidManifest__verify_imported_identity">Verify Imported Identity</string>
<!-- preferences.xml -->
<string name="use_settings">Use Settings</string>
<string name="use_textsecure_for_viewing_and_storing_all_incoming_text_messages">Use TextSecure for viewing and storing all incoming text messages</string>
<string name="use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">Use TextSecure for viewing and storing all incoming multimedia messages</string>
<string name="input_settings">Input Settings</string>
<string name="pressing_the_enter_key_will_send_text_messages">Pressing the enter key will send text messages</string>
<string name="display_settings">Display Settings</string>
<string name="choose_identity">Choose Identity</string>
<string name="choose_your_contact_entry_from_the_contacts_list">Choose your contact entry from the contacts list.</string>
<string name="encryption_settings">Encryption Settings</string>
<string name="change_passphrase">Change Passphrase</string>
<string name="change_my_passphrase">Change my passphrase</string>
<string name="complete_key_exchanges">Complete Key Exchanges</string>
<string name="automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">Automatically complete key exchanges for new sessions or for existing sessions with the same identity key</string>
<string name="include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">Include a whitespace tag at the end of every non-encrypted message</string>
<string name="include_whitespace_tag">Include whitespace tag</string>
<string name="sign_key_exchange_messages_with_identity_key">Sign key exchange messages with identity key</string>
<string name="sign_key_exchange">Sign Key Exchange</string>
<string name="forget_passphrase_from_memory_after_some_interval">Forget passphrase from memory after some interval</string>
<string name="timeout_passphrase">Timeout passphrase</string>
<string name="identity_key_settings">Identity Key Settings</string>
<string name="view_my_identity_key">View my identity key</string>
<string name="export_my_identity_key">Export my identity key</string>
<string name="import_contacts_key">Import Contact\'s Key</string>
<string name="import_an_identity_key_from_a_contact">Import an identity key from a contact</string>
<string name="manage_identity_keys">Manage Identity Keys</string>
<string name="manage_configured_identity_keys">Manage configured identity keys</string>
<string name="notification_settings">Notification Settings</string>
<string name="notifications">Notifications</string>
<string name="display_message_notifications_in_status_bar">Display message notifications in status bar</string>
<string name="led_color">LED Color</string>
<string name="change_notification_led_color">Change notification LED color</string>
<string name="select_led_color">Select LED Color</string>
<string name="select_ringtone">Select ringtone</string>
<string name="vibrate">Vibrate</string>
<string name="also_vibrate_when_notified">Also vibrate when notified</string>
<string name="preferences__use_settings">Use Settings</string>
<string name="preferences__pref_all_sms_title">Use for all SMS</string>
<string name="preferences__pref_all_mms_title">Use for all MMS</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages">Use TextSecure for viewing and storing all incoming text messages</string>
<string name="preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages">Use TextSecure for viewing and storing all incoming multimedia messages</string>
<string name="preferences__input_settings">Input Settings</string>
<string name="preferences__pref_enter_sends_title">Enter sends</string>
<string name="preferences__pressing_the_enter_key_will_send_text_messages">Pressing the enter key will send text messages</string>
<string name="preferences__display_settings">Display Settings</string>
<string name="preferences__choose_identity">Choose Identity</string>
<string name="preferences__choose_your_contact_entry_from_the_contacts_list">Choose your contact entry from the contacts list.</string>
<string name="preferences__encryption_settings">Encryption Settings</string>
<string name="preferences__change_passphrase">Change Passphrase</string>
<string name="preferences__change_my_passphrase">Change my passphrase</string>
<string name="preferences__complete_key_exchanges">Complete Key Exchanges</string>
<string name="preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key">Automatically complete key exchanges for new sessions or for existing sessions with the same identity key</string>
<string name="preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message">Include a whitespace tag at the end of every non-encrypted message</string>
<string name="preferences__include_whitespace_tag">Include whitespace tag</string>
<string name="preferences__sign_key_exchange_messages_with_identity_key">Sign key exchange messages with identity key</string>
<string name="preferences__sign_key_exchange">Sign Key Exchange</string>
<string name="preferences__forget_passphrase_from_memory_after_some_interval">Forget passphrase from memory after some interval</string>
<string name="preferences__timeout_passphrase">Timeout passphrase</string>
<string name="preferences__pref_timeout_interval_dialogtitle">Select Passphrase Timeout</string>
<string name="preferences__pref_timeout_interval_title">Timeout interval</string>
<string name="preferences__the_amount_of_time_to_wait_before_forgetting_passphrase">The amount of time to wait before forgetting passphrase from memory</string>
<string name="preferences__identity_key_settings">Identity Key Settings</string>
<string name="preferences__view_my_identity_key">View my identity key</string>
<string name="preferences__export_my_identity_key">Export my identity key</string>
<string name="preferences__import_contacts_key">Import Contact\'s Key</string>
<string name="preferences__import_an_identity_key_from_a_contact">Import an identity key from a contact</string>
<string name="preferences__manage_identity_keys">Manage Identity Keys</string>
<string name="preferences__manage_configured_identity_keys">Manage configured identity keys</string>
<string name="preferences__notification_settings">Notification Settings</string>
<string name="preferences__notifications">Notifications</string>
<string name="preferences__display_message_notifications_in_status_bar">Display message notifications in status bar</string>
<string name="preferences__led_color">LED Color</string>
<string name="preferences__change_notification_led_color">Change notification LED color</string>
<string name="preferences__pref_led_blink_title">LED Blink Pattern</string>
<string name="preferences__change_notification_blink_pattern">Change notification LED blink pattern</string>
<string name="preferences__pref_led_blink_dialogtitle">Select LED Blink Pattern</string>
<string name="preferences__select_led_color">Select LED Color</string>
<string name="preferences__select_ringtone">Select Ringtone</string>
<string name="preferences__vibrate">Vibrate</string>
<string name="preferences__also_vibrate_when_notified">Also vibrate when notified</string>
<string name="preferences__minutes">minutes</string>
<string name="preferences__hours">hours</string>
<string name="preferences__green">Green</string>
<string name="preferences__red">Red</string>
<string name="preferences__blue">Blue</string>
<string name="preferences__orange">Orange</string>
<string name="preferences__cyan">Cyan</string>
<string name="preferences__magenta">Magenta</string>
<string name="preferences__fast">Fast</string>
<string name="preferences__normal">Normal</string>
<string name="preferences__slow">Slow</string>
<string name="preferences__custom">Custom</string>
<!-- **************************************** -->
<!-- menus -->
<!-- **************************************** -->
<!-- contact_selection_list -->
<string name="menu_select_all">Select All</string>
<string name="menu_unselect_all">Unselect All</string>
<string name="contact_selection_list__menu_select_all">Select All</string>
<string name="contact_selection_list__menu_unselect_all">Unselect All</string>
<!-- contact_selection -->
<string name="menu_finished">Finished</string>
<string name="contact_selection__menu_finished">Finished</string>
<!-- conversation_button_context -->
<string name="menu_send_unencrypted">Send unencrypted</string>
<string name="conversation_button_context__menu_send_unencrypted">Send unencrypted</string>
<!-- conversation_callable -->
<string name="menu_call">Call</string>
<string name="conversation_callable__menu_call">Call</string>
<!-- conversation_context -->
<string name="menu_message_details">Message details</string>
<string name="menu_copy_text">Copy text</string>
<string name="menu_delete_message">Delete message</string>
<string name="menu_forward_message">Forward message</string>
<string name="conversation_context__menu_message_details">Message details</string>
<string name="conversation_context__menu_copy_text">Copy text</string>
<string name="conversation_context__menu_delete_message">Delete message</string>
<string name="conversation_context__menu_forward_message">Forward message</string>
<!-- conversation_insecure -->
<string name="menu_start_secure_session">Start Secure Session</string>
<string name="conversation_insecure__menu_start_secure_session">Start Secure Session</string>
<!-- conversation_list_batch -->
<string name="menu_delete_selected">Delete Selected</string>
<string name="menu_select_all">Select All</string>
<string name="conversation_list_batch__menu_delete_selected">Delete Selected</string>
<string name="conversation_list_batch__menu_select_all">Select All</string>
<!-- conversation_list -->
<string name="menu_search">Search</string>
<string name="conversation_list__menu_search">Search</string>
<!-- conversation_secure_verified -->
<!-- conversation_secure_unverified -->
<string name="menu_security">Security</string>
<string name="menu_verify_session">Verify Session</string>
<string name="menu_verify_recipient">Verify Recipient</string>
<string name="menu_abort_secure_session">Abort Secure Session</string>
<string name="conversation_secure_verified__menu_security">Security</string>
<string name="conversation_secure_verified__menu_verify_session">Verify Session</string>
<string name="conversation_secure_verified__menu_verify_recipient">Verify Recipient</string>
<string name="conversation_secure_verified__menu_abort_secure_session">Abort Secure Session</string>
<!-- conversation -->
<string name="menu_add_attachment">Add attachment</string>
<string name="menu_delete_thread">Delete thread</string>
<string name="menu_compare">Compare</string>
<string name="conversation__menu_add_attachment">Add attachment</string>
<string name="conversation__menu_delete_thread">Delete thread</string>
<string name="conversation__menu_compare">Compare</string>
<!-- conversation_group_options -->
<string name="convesation_group_options__recipients_list">Recipients list</string>
<!-- key_scanning -->
<string name="menu_get_scanned_to_compare">Get scanned to compare</string>
<string name="menu_scan_to_compare">Scan to compare</string>
<string name="key_scanning__menu_compare">Compare</string>
<string name="key_scanning__menu_get_scanned_to_compare">Get scanned to compare</string>
<string name="key_scanning__menu_scan_to_compare">Scan to compare</string>
<!-- text_secure_locked -->
<string name="menu_unlock">Unlock</string>
<string name="text_secure_locked__menu_unlock">Unlock</string>
<!-- text_secure_normal -->
<string name="menu_new_message">New Message</string>
<string name="menu_settings">Settings</string>
<string name="menu_import_export">Import/Export</string>
<string name="menu_import">Import</string>
<string name="menu_export">Export</string>
<string name="menu_clear_passphrase">Clear Passphrase</string>
<string name="text_secure_normal__menu_new_message">New Message</string>
<string name="text_secure_normal__menu_settings">Settings</string>
<string name="text_secure_normal__menu_import_export">Import/Export</string>
<string name="text_secure_normal__menu_import">Import</string>
<string name="text_secure_normal__menu_export">Export</string>
<string name="text_secure_normal__menu_clear_passphrase">Clear Passphrase</string>
<!-- verify_keys -->
<string name="menu_verified">Verified</string>
<string name="verify_keys__menu_verified">Verified</string>
<!-- Misc. piggybacking -->
<string name="PlayStoreListing">TextSecure is a security enhanced text messaging application that serves as a full replacement for the default text messaging application. Messages to other TextSecure users are encrypted over the air, and all text messages are stored in an encrypted database on the device. If your phone is lost or stolen, your messages will be safe, and communication with other TextSecure users can\'t be monitored over the air.</string>
<!-- EOF -->
<string name="conversation_item_sent__download">Download</string>
<string name="conversation_item_sent__downloading">Downloading</string>
<string name="conversation_item_received__download">Download</string>
<string name="conversation_item_received__downloading">Downloading</string>
</resources>

View File

@@ -18,126 +18,126 @@
*/
-->
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory android:title="@string/use_settings">
<PreferenceCategory android:title="@string/preferences__use_settings">
<CheckBoxPreference android:defaultValue="true"
android:key="pref_all_sms"
android:summary="@string/use_textsecure_for_viewing_and_storing_all_incoming_text_messages"
android:title="Use for all SMS" />
android:summary="@string/preferences__use_textsecure_for_viewing_and_storing_all_incoming_text_messages"
android:title="@string/preferences__pref_all_sms_title" />
<CheckBoxPreference android:defaultValue="true"
android:key="pref_all_mms"
android:summary="@string/use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages"
android:title="Use for all MMS" />
android:summary="@string/preferences__use_textsecure_for_viewing_and_storing_all_incoming_multimedia_messages"
android:title="@string/preferences__pref_all_mms_title" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/input_settings">
<PreferenceCategory android:title="@string/preferences__input_settings">
<CheckBoxPreference android:defaultValue="false"
android:key="pref_enter_sends"
android:summary="@string/pressing_the_enter_key_will_send_text_messages"
android:title="Enter Sends" />
android:summary="@string/preferences__pressing_the_enter_key_will_send_text_messages"
android:title="@string/preferences__pref_enter_sends_title" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/display_settings">
<PreferenceCategory android:title="@string/preferences__display_settings" android:key="pref_display_category">
<Preference android:key="pref_choose_identity"
android:title="@string/choose_identity"
android:summary="@string/choose_your_contact_entry_from_the_contacts_list"/>
android:title="@string/preferences__choose_identity"
android:summary="@string/preferences__choose_your_contact_entry_from_the_contacts_list"/>
</PreferenceCategory>
<PreferenceCategory android:title="@string/encryption_settings">
<PreferenceCategory android:title="@string/preferences__encryption_settings">
<Preference android:key="pref_change_passphrase"
android:title="@string/change_passphrase"
android:summary="@string/change_my_passphrase"/>
android:title="@string/preferences__change_passphrase"
android:summary="@string/preferences__change_my_passphrase"/>
<CheckBoxPreference android:defaultValue="true"
android:key="pref_auto_complete_key_exchange"
android:title="@string/complete_key_exchanges"
android:summary="@string/automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key" />
android:title="@string/preferences__complete_key_exchanges"
android:summary="@string/preferences__automatically_complete_key_exchanges_for_new_sessions_or_for_existing_sessions_with_the_same_identity_key" />
<CheckBoxPreference android:defaultValue="true"
android:key="pref_key_tag_whitespace"
android:summary="@string/include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message"
android:title="@string/include_whitespace_tag" />
android:summary="@string/preferences__include_a_whitespace_tag_at_the_end_of_every_non_encrypted_message"
android:title="@string/preferences__include_whitespace_tag" />
<CheckBoxPreference android:defaultValue="true"
android:key="pref_send_identity_key"
android:summary="@string/sign_key_exchange_messages_with_identity_key"
android:title="@string/sign_key_exchange" />
android:summary="@string/preferences__sign_key_exchange_messages_with_identity_key"
android:title="@string/preferences__sign_key_exchange" />
<CheckBoxPreference android:defaultValue="false"
android:key="pref_timeout_passphrase"
android:summary="@string/forget_passphrase_from_memory_after_some_interval"
android:title="@string/timeout_passphrase" />
android:summary="@string/preferences__forget_passphrase_from_memory_after_some_interval"
android:title="@string/preferences__timeout_passphrase" />
<org.thoughtcrime.securesms.preferences.PassphraseTimeoutPreference
android:key="pref_timeout_interval"
android:defaultValue="300"
android:title="Timeout interval"
android:summary="The amount of time to wait before forgetting passphrase from memory"
android:title="@string/preferences__pref_timeout_interval_title"
android:summary="@string/preferences__the_amount_of_time_to_wait_before_forgetting_passphrase"
android:dependency="pref_timeout_passphrase"
android:dialogTitle="Select Passphrase Timeout" />
android:dialogTitle="@string/preferences__pref_timeout_interval_dialogtitle" />
</PreferenceCategory>
<PreferenceCategory android:title="@string/identity_key_settings">
<PreferenceCategory android:title="@string/preferences__identity_key_settings">
<Preference android:key="pref_view_identity"
android:title="@string/view_my_identity_key"
android:summary="@string/view_my_identity_key"/>
android:title="@string/preferences__view_my_identity_key"
android:summary="@string/preferences__view_my_identity_key"/>
<Preference android:key="pref_export_identity"
android:title="@string/export_my_identity_key"
android:summary="@string/export_my_identity_key"/>
android:title="@string/preferences__export_my_identity_key"
android:summary="@string/preferences__export_my_identity_key"/>
<Preference android:key="pref_import_identity"
android:title="@string/import_contacts_key"
android:summary="@string/import_an_identity_key_from_a_contact"/>
android:title="@string/preferences__import_contacts_key"
android:summary="@string/preferences__import_an_identity_key_from_a_contact"/>
<Preference android:key="pref_manage_identity"
android:title="@string/manage_identity_keys"
android:summary="@string/manage_configured_identity_keys"/>
android:title="@string/preferences__manage_identity_keys"
android:summary="@string/preferences__manage_configured_identity_keys"/>
</PreferenceCategory>
<PreferenceCategory android:title="@string/notification_settings">
<PreferenceCategory android:title="@string/preferences__notification_settings">
<CheckBoxPreference android:key="pref_key_enable_notifications"
android:title="@string/notifications"
android:summary="@string/display_message_notifications_in_status_bar"
android:title="@string/preferences__notifications"
android:summary="@string/preferences__display_message_notifications_in_status_bar"
android:defaultValue="true" />
<ListPreference
android:key="pref_led_color"
android:defaultValue="green"
android:title="@string/led_color"
android:title="@string/preferences__led_color"
android:dependency="pref_key_enable_notifications"
android:summary="@string/change_notification_led_color"
android:summary="@string/preferences__change_notification_led_color"
android:entries="@array/pref_led_color_entries"
android:entryValues="@array/pref_led_color_values"
android:dialogTitle="@string/select_led_color" />
android:dialogTitle="@string/preferences__select_led_color" />
<org.thoughtcrime.securesms.preferences.LedBlinkPatternListPreference
android:key="pref_led_blink"
android:defaultValue="500,2000"
android:title="LED Blink Pattern"
android:title="@string/preferences__pref_led_blink_title"
android:dependency="pref_key_enable_notifications"
android:summary="Change notification LED blink pattern"
android:summary="@string/preferences__change_notification_blink_pattern"
android:entries="@array/pref_led_blink_pattern_entries"
android:entryValues="@array/pref_led_blink_pattern_values"
android:dialogTitle="LED Blink Pattern" />
android:dialogTitle="@string/preferences__pref_led_blink_dialogtitle" />
<RingtonePreference android:layout="?android:attr/preferenceLayoutChild"
android:dependency="pref_key_enable_notifications"
android:key="pref_key_ringtone"
android:title="@string/select_ringtone"
android:title="@string/preferences__select_ringtone"
android:ringtoneType="notification"
android:defaultValue="content://settings/system/notification_sound" />
<CheckBoxPreference android:layout="?android:attr/preferenceLayoutChild"
android:dependency="pref_key_enable_notifications"
android:key="pref_key_vibrate"
android:defaultValue="true"
android:title="@string/vibrate"
android:summary="@string/also_vibrate_when_notified" />
android:title="@string/preferences__vibrate"
android:summary="@string/preferences__also_vibrate_when_notified" />
</PreferenceCategory>
</PreferenceScreen>

View File

@@ -39,16 +39,16 @@ public class ApplicationExportManager extends Handler implements Runnable {
public void importDatabase() {
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(context);
alertBuilder.setTitle(R.string.import_database_and_settings_title);
alertBuilder.setMessage(R.string.import_database_and_settings_message);
alertBuilder.setTitle(R.string.ApplicationExportManager_import_database_and_settings_title);
alertBuilder.setMessage(R.string.ApplicationExportManager_import_database_and_settings_message);
alertBuilder.setCancelable(false);
alertBuilder.setPositiveButton("Import", new DialogInterface.OnClickListener() {
alertBuilder.setPositiveButton(R.string.ApplicationExportManager_import, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
task = TASK_IMPORT;
progressDialog = new ProgressDialog(context);
progressDialog.setTitle(context.getString(R.string.importing_database_and_keys));
progressDialog.setTitle(context.getString(R.string.ApplicationExportManager_importing_database_and_keys));
progressDialog.setMessage(context
.getString(R.string.importing_your_sms_database_keys_and_settings));
.getString(R.string.ApplicationExportManager_importing_your_sms_database_keys_and_settings));
progressDialog.setCancelable(false);
progressDialog.setIndeterminate(true);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
@@ -61,7 +61,7 @@ public class ApplicationExportManager extends Handler implements Runnable {
}
});
alertBuilder.setNegativeButton("Cancel", null);
alertBuilder.setNegativeButton(android.R.string.cancel, null);
alertBuilder.create().show();
}
@@ -69,17 +69,17 @@ public class ApplicationExportManager extends Handler implements Runnable {
public void exportDatabase() {
Log.w("ApplicationExportManager", "Context: " + context);
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(context);
alertBuilder.setTitle(R.string.export_database_question);
alertBuilder.setMessage(R.string.export_textsecure_database_keys_and_settings_prompt);
alertBuilder.setTitle(R.string.ApplicationExportManager_export_database_question);
alertBuilder.setMessage(R.string.ApplicationExportManager_export_textsecure_database_keys_and_settings_prompt);
alertBuilder.setCancelable(false);
alertBuilder.setPositiveButton("Export", new DialogInterface.OnClickListener() {
alertBuilder.setPositiveButton(R.string.ApplicationExportManager_export, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
task = TASK_EXPORT;
progressDialog = new ProgressDialog(context);
progressDialog.setTitle(context.getString(R.string.exporting_database_and_keys));
progressDialog.setTitle(context.getString(R.string.ApplicationExportManager_exporting_database_and_keys));
progressDialog.setMessage(context
.getString(R.string.exporting_your_sms_database_keys_and_settings));
.getString(R.string.ApplicationExportManager_exporting_your_sms_database_keys_and_settings));
progressDialog.setCancelable(false);
progressDialog.setIndeterminate(true);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
@@ -89,7 +89,7 @@ public class ApplicationExportManager extends Handler implements Runnable {
}
});
alertBuilder.setNegativeButton("Cancel", null);
alertBuilder.setNegativeButton(android.R.string.cancel, null);
alertBuilder.create().show();
}
@@ -117,18 +117,22 @@ public class ApplicationExportManager extends Handler implements Runnable {
public void handleMessage(Message message) {
switch (message.what) {
case ERROR_NO_SD:
Toast.makeText(context, R.string.no_sd_card_found_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(context, R.string.ApplicationExportManager_no_sd_card_found_exclamation,
Toast.LENGTH_LONG).show();
break;
case ERROR_IO:
Toast.makeText(context, R.string.error_exporting_to_sd_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(context, R.string.ApplicationExportManager_error_exporting_to_sd_exclamation,
Toast.LENGTH_LONG).show();
break;
case COMPLETE:
switch (task) {
case TASK_IMPORT:
Toast.makeText(context, R.string.import_successful_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(context, R.string.ApplicationExportManager_import_successful_exclamation,
Toast.LENGTH_LONG).show();
break;
case TASK_EXPORT:
Toast.makeText(context, R.string.export_successful_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(context, R.string.ApplicationExportManager_export_successful_exclamation,
Toast.LENGTH_LONG).show();
break;
}
break;

View File

@@ -35,8 +35,8 @@ public class ApplicationMigrationManager extends Handler {
private void displayMigrationProgress() {
progressDialog = new ProgressDialog(context);
progressDialog.setTitle(context.getString(R.string.migrating_database));
progressDialog.setMessage(context.getString(R.string.migrating_text_message_database));
progressDialog.setTitle(context.getString(R.string.ApplicationMigrationManager_migrating_database));
progressDialog.setMessage(context.getString(R.string.ApplicationMigrationManager_migrating_text_message_database));
progressDialog.setMax(10000);
progressDialog.setCancelable(false);
progressDialog.setIndeterminate(false);
@@ -51,11 +51,12 @@ public class ApplicationMigrationManager extends Handler {
private void displayMigrationPrompt() {
AlertDialog.Builder alertBuilder = new AlertDialog.Builder(context);
alertBuilder.setTitle(R.string.copy_system_text_message_database_question);
alertBuilder.setMessage(R.string.copy_system_text_message_database_explanation);
alertBuilder.setTitle(R.string.ApplicationMigrationManager_copy_system_text_message_database_question);
alertBuilder.setMessage(R.string.ApplicationMigrationManager_copy_system_text_message_database_explanation);
alertBuilder.setCancelable(false);
alertBuilder.setPositiveButton(R.string.copy, new DialogInterface.OnClickListener() {
alertBuilder.setPositiveButton(R.string.ApplicationMigrationManager_copy,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
displayMigrationProgress();
Intent intent = new Intent(context, ApplicationMigrationService.class);
@@ -65,7 +66,8 @@ public class ApplicationMigrationManager extends Handler {
}
});
alertBuilder.setNegativeButton(R.string.dont_copy, new DialogInterface.OnClickListener() {
alertBuilder.setNegativeButton(R.string.ApplicationMigrationManager_dont_copy,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
context.getSharedPreferences("SecureSMS", Context.MODE_PRIVATE)
.edit()

View File

@@ -23,12 +23,14 @@ import android.net.Uri;
import android.os.Bundle;
import android.preference.Preference;
import android.preference.PreferenceManager;
import android.provider.ContactsContract;
import android.widget.Toast;
import com.actionbarsherlock.app.SherlockPreferenceActivity;
import com.actionbarsherlock.view.MenuItem;
import org.thoughtcrime.securesms.contacts.ContactAccessor;
import org.thoughtcrime.securesms.contacts.ContactIdentityManager;
import org.thoughtcrime.securesms.crypto.IdentityKey;
import org.thoughtcrime.securesms.crypto.IdentityKeyUtil;
import org.thoughtcrime.securesms.crypto.MasterSecret;
@@ -36,6 +38,8 @@ import org.thoughtcrime.securesms.service.KeyCachingService;
import org.thoughtcrime.securesms.util.Dialogs;
import org.thoughtcrime.securesms.util.MemoryCleaner;
import java.util.List;
/**
* The Activity for application preference display and management.
*
@@ -62,6 +66,8 @@ public class ApplicationPreferencesActivity extends SherlockPreferenceActivity {
public static final String PASSPHRASE_TIMEOUT_PREF = "pref_timeout_passphrase";
public static final String AUTO_KEY_EXCHANGE_PREF = "pref_auto_complete_key_exchange";
private static final String DISPLAY_CATEGORY_PREF = "pref_display_category";
private static final String VIEW_MY_IDENTITY_PREF = "pref_view_identity";
private static final String EXPORT_MY_IDENTITY_PREF = "pref_export_identity";
private static final String IMPORT_CONTACT_IDENTITY_PREF = "pref_import_identity";
@@ -76,12 +82,18 @@ public class ApplicationPreferencesActivity extends SherlockPreferenceActivity {
addPreferencesFromResource(R.xml.preferences);
this.findPreference(IDENTITY_PREF).setOnPreferenceClickListener(new IdentityPreferenceClickListener());
this.findPreference(VIEW_MY_IDENTITY_PREF).setOnPreferenceClickListener(new ViewMyIdentityClickListener());
this.findPreference(EXPORT_MY_IDENTITY_PREF).setOnPreferenceClickListener(new ExportMyIdentityClickListener());
this.findPreference(IMPORT_CONTACT_IDENTITY_PREF).setOnPreferenceClickListener(new ImportContactIdentityClickListener());
this.findPreference(MANAGE_IDENTITIES_PREF).setOnPreferenceClickListener(new ManageIdentitiesClickListener());
this.findPreference(CHANGE_PASSPHRASE_PREF).setOnPreferenceClickListener(new ChangePassphraseClickListener());
initializeIdentitySelection();
this.findPreference(VIEW_MY_IDENTITY_PREF)
.setOnPreferenceClickListener(new ViewMyIdentityClickListener());
this.findPreference(EXPORT_MY_IDENTITY_PREF)
.setOnPreferenceClickListener(new ExportMyIdentityClickListener());
this.findPreference(IMPORT_CONTACT_IDENTITY_PREF)
.setOnPreferenceClickListener(new ImportContactIdentityClickListener());
this.findPreference(MANAGE_IDENTITIES_PREF)
.setOnPreferenceClickListener(new ManageIdentitiesClickListener());
this.findPreference(CHANGE_PASSPHRASE_PREF)
.setOnPreferenceClickListener(new ChangePassphraseClickListener());
}
@Override
@@ -127,10 +139,38 @@ public class ApplicationPreferencesActivity extends SherlockPreferenceActivity {
return false;
}
private void initializeIdentitySelection() {
ContactIdentityManager identity = ContactIdentityManager.getInstance(this);
if (identity.isSelfIdentityAutoDetected()) {
Preference preference = this.findPreference(DISPLAY_CATEGORY_PREF);
this.getPreferenceScreen().removePreference(preference);
} else {
Uri contactUri = identity.getSelfIdentityUri();
if (contactUri != null) {
String contactName = ContactAccessor.getInstance().getNameFromContact(this, contactUri);
this.findPreference(IDENTITY_PREF)
.setSummary(String.format(getString(R.string.ApplicationPreferencesActivity_currently_s),
contactName));
}
this.findPreference(IDENTITY_PREF)
.setOnPreferenceClickListener(new IdentityPreferenceClickListener());
}
}
private void handleIdentitySelection(Intent data) {
Uri contactData = data.getData();
if (contactData != null)
PreferenceManager.getDefaultSharedPreferences(this).edit().putString(IDENTITY_PREF, contactData.toString()).commit();
Uri contactUri = data.getData();
if (contactUri != null) {
SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(this);
String contactUriString = contactUri.toString();
preferences.edit().putString(IDENTITY_PREF, contactUriString).commit();
initializeIdentitySelection();
}
}
private void importIdentityKey(Uri uri) {
@@ -139,8 +179,8 @@ public class ApplicationPreferencesActivity extends SherlockPreferenceActivity {
if (identityKey == null) {
Dialogs.displayAlert(this,
getString(R.string.not_found_exclamation),
getString(R.string.no_valid_identity_key_was_found_in_the_specified_contact),
getString(R.string.ApplicationPreferenceActivity_not_found_exclamation),
getString(R.string.ApplicationPreferenceActivity_no_valid_identity_key_was_found_in_the_specified_contact),
android.R.drawable.ic_dialog_alert);
return;
}
@@ -154,7 +194,8 @@ public class ApplicationPreferencesActivity extends SherlockPreferenceActivity {
private class IdentityPreferenceClickListener implements Preference.OnPreferenceClickListener {
public boolean onPreferenceClick(Preference preference) {
Intent intent = ContactAccessor.getInstance().getIntentForContactSelection();
Intent intent = new Intent(Intent.ACTION_PICK);
intent.setType(ContactsContract.Contacts.CONTENT_TYPE);
startActivityForResult(intent, PICK_IDENTITY_CONTACT);
return true;
}
@@ -172,28 +213,29 @@ public class ApplicationPreferencesActivity extends SherlockPreferenceActivity {
private class ExportMyIdentityClickListener implements Preference.OnPreferenceClickListener {
public boolean onPreferenceClick(Preference preference) {
String contactUri = PreferenceManager.getDefaultSharedPreferences(ApplicationPreferencesActivity.this)
.getString(IDENTITY_PREF, null);
if (!IdentityKeyUtil.hasIdentityKey(ApplicationPreferencesActivity.this)) {
Toast.makeText(ApplicationPreferencesActivity.this,
R.string.you_don_t_have_an_identity_key_exclamation,
R.string.ApplicationPreferenceActivity_you_don_t_have_an_identity_key_exclamation,
Toast.LENGTH_LONG).show();
return true;
}
if (contactUri == null) {
List<Long> rawContactIds = ContactIdentityManager
.getInstance(ApplicationPreferencesActivity.this)
.getSelfIdentityRawContactIds();
if (rawContactIds== null) {
Toast.makeText(ApplicationPreferencesActivity.this,
R.string.you_have_not_yet_defined_a_contact_for_yourself,
R.string.ApplicationPreferenceActivity_you_have_not_yet_defined_a_contact_for_yourself,
Toast.LENGTH_LONG).show();
return true;
}
ContactAccessor.getInstance().insertIdentityKey(ApplicationPreferencesActivity.this, Uri.parse(contactUri),
ContactAccessor.getInstance().insertIdentityKey(ApplicationPreferencesActivity.this, rawContactIds,
IdentityKeyUtil.getIdentityKey(ApplicationPreferencesActivity.this));
Toast.makeText(ApplicationPreferencesActivity.this,
R.string.exported_to_contacts_database,
R.string.ApplicationPreferenceActivity_exported_to_contacts_database,
Toast.LENGTH_LONG).show();
return true;
@@ -205,11 +247,12 @@ public class ApplicationPreferencesActivity extends SherlockPreferenceActivity {
MasterSecret masterSecret = (MasterSecret)getIntent().getParcelableExtra("master_secret");
if (masterSecret != null) {
Intent importIntent = ContactAccessor.getInstance().getIntentForContactSelection();
Intent importIntent = new Intent(Intent.ACTION_PICK);
importIntent.setType(ContactsContract.Contacts.CONTENT_TYPE);
startActivityForResult(importIntent, IMPORT_IDENTITY_ID);
} else {
Toast.makeText(ApplicationPreferencesActivity.this,
R.string.you_need_to_have_entered_your_passphrase_before_importing_keys,
R.string.ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_importing_keys,
Toast.LENGTH_LONG).show();
}
@@ -227,7 +270,7 @@ public class ApplicationPreferencesActivity extends SherlockPreferenceActivity {
startActivity(manageIntent);
} else {
Toast.makeText(ApplicationPreferencesActivity.this,
R.string.you_need_to_have_entered_your_passphrase_before_managing_keys,
R.string.ApplicationPreferenceActivity_you_need_to_have_entered_your_passphrase_before_managing_keys,
Toast.LENGTH_LONG).show();
}
@@ -243,7 +286,7 @@ public class ApplicationPreferencesActivity extends SherlockPreferenceActivity {
startActivity(new Intent(ApplicationPreferencesActivity.this, PassphraseChangeActivity.class));
} else {
Toast.makeText(ApplicationPreferencesActivity.this,
R.string.you_havent_set_a_passphrase_yet,
R.string.ApplicationPreferenceActivity_you_havent_set_a_passphrase_yet,
Toast.LENGTH_LONG).show();
}

View File

@@ -154,9 +154,9 @@ public class ContactSelectionListFragment extends SherlockListFragment
}
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Select for " + contactData.name);
builder.setTitle(R.string.ContactSelectionlistFragment_select_for + " " + contactData.name);
builder.setMultiChoiceItems(options, null, new DiscriminatorClickedListener(contactData));
builder.setPositiveButton("Ok", new DiscriminatorFinishedListener(contactData, textView));
builder.setPositiveButton(android.R.string.ok, new DiscriminatorFinishedListener(contactData, textView));
builder.setOnCancelListener(new DiscriminatorFinishedListener(contactData, textView));
builder.show();
}
@@ -292,11 +292,7 @@ public class ContactSelectionListFragment extends SherlockListFragment
if (!isChecked)
throw new AssertionError("We shouldn't be unchecking data that doesn't exist.");
existing = new ContactData();
existing.id = contactData.id;
existing.name = contactData.name;
existing.numbers = new LinkedList<NumberData>();
existing = new ContactData(contactData.id, contactData.name);
selectedContacts.put(existing.id, existing);
}

View File

@@ -182,13 +182,7 @@ public class ContactSelectionRecentFragment extends SherlockListFragment
else if (type == Calls.OUTGOING_TYPE || type == RedPhoneCallTypes.OUTGOING) callTypeIcon.setImageDrawable(getResources().getDrawable(R.drawable.ic_call_log_list_outgoing_call));
else if (type == Calls.MISSED_TYPE || type == RedPhoneCallTypes.MISSED) callTypeIcon.setImageDrawable(getResources().getDrawable(R.drawable.ic_call_log_list_missed_call));
this.contactData = new ContactData();
if (name != null)
this.contactData.name = name;
this.contactData.id = id;
this.contactData.numbers = new LinkedList<ContactAccessor.NumberData>();
this.contactData = new ContactData(id, name);
this.contactData.numbers.add(new NumberData(null, number));
if (selectedContacts.containsKey(id))

View File

@@ -73,6 +73,8 @@ import org.thoughtcrime.securesms.util.MemoryCleaner;
import ws.com.google.android.mms.MmsException;
import java.io.IOException;
import java.util.LinkedList;
import java.util.List;
/**
* Activity for displaying a message thread, as well as
@@ -104,7 +106,7 @@ public class ConversationActivity extends SherlockFragmentActivity
private Recipients recipients;
private long threadId;
private boolean sendEncrypted;
private boolean isEncryptedConversation;
private CharacterCalculator characterCalculator = new CharacterCalculator();
@@ -186,7 +188,7 @@ public class ConversationActivity extends SherlockFragmentActivity
MenuInflater inflater = this.getSupportMenuInflater();
menu.clear();
if (isSingleConversation() && sendEncrypted)
if (isSingleConversation() && isEncryptedConversation)
{
if (isAuthenticatedSession()) {
inflater.inflate(R.menu.conversation_secure_verified, menu);
@@ -199,6 +201,8 @@ public class ConversationActivity extends SherlockFragmentActivity
if (isSingleConversation()) {
inflater.inflate(R.menu.conversation_callable, menu);
} else if (isGroupConversation()) {
inflater.inflate(R.menu.conversation_group_options, menu);
}
inflater.inflate(R.menu.conversation, menu);
@@ -217,6 +221,7 @@ public class ConversationActivity extends SherlockFragmentActivity
case R.id.menu_abort_session: handleAbortSecureSession(); return true;
case R.id.menu_verify_recipient: handleVerifyRecipient(); return true;
case R.id.menu_verify_session: handleVerifySession(); return true;
case R.id.menu_group_recipients: handleDisplayGroupRecipients(); return true;
case android.R.id.home: finish(); return true;
}
@@ -225,7 +230,7 @@ public class ConversationActivity extends SherlockFragmentActivity
@Override
public void onCreateContextMenu (ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
if (sendEncrypted) {
if (isEncryptedConversation) {
android.view.MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.conversation_button_context, menu);
}
@@ -234,7 +239,7 @@ public class ConversationActivity extends SherlockFragmentActivity
@Override
public boolean onContextItemSelected(android.view.MenuItem item) {
switch (item.getItemId()) {
case R.id.menu_context_send_unencrypted: sendMessage(false); return true;
case R.id.menu_context_send_unencrypted: sendMessage(true); return true;
}
return false;
@@ -260,10 +265,11 @@ public class ConversationActivity extends SherlockFragmentActivity
final Recipient recipient = getRecipients().getPrimaryRecipient();
String recipientName = (recipient.getName() == null ? recipient.getNumber() : recipient.getName());
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.initiate_secure_session_question);
builder.setTitle(R.string.ConversationActivity_initiate_secure_session_question);
builder.setIcon(android.R.drawable.ic_dialog_info);
builder.setCancelable(true);
builder.setMessage(String.format(getString(R.string.initiate_secure_session_with_s_question), recipientName));
builder.setMessage(String.format(getString(R.string.ConversationActivity_initiate_secure_session_with_s_question),
recipientName));
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
@@ -278,10 +284,10 @@ public class ConversationActivity extends SherlockFragmentActivity
private void handleAbortSecureSession() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.abort_secure_session_confirmation);
builder.setTitle(R.string.ConversationActivity_abort_secure_session_confirmation);
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setCancelable(true);
builder.setMessage(R.string.are_you_sure_that_you_want_to_abort_this_secure_session_question);
builder.setMessage(R.string.ConversationActivity_are_you_sure_that_you_want_to_abort_this_secure_session_question);
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
@@ -304,12 +310,28 @@ public class ConversationActivity extends SherlockFragmentActivity
startActivity(dialIntent);
}
private void handleDisplayGroupRecipients() {
List<String> recipientStrings = new LinkedList<String>();
for (Recipient recipient : getRecipients().getRecipientsList()) {
recipientStrings.add(recipient.getName());
}
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.ConversationActivity_group_conversation_recipients);
builder.setIcon(R.drawable.ic_groups_holo_dark);
builder.setCancelable(true);
builder.setItems(recipientStrings.toArray(new String[]{}), null);
builder.setPositiveButton(android.R.string.ok, null);
builder.show();
}
private void handleDeleteThread() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle(R.string.delete_thread_confirmation);
builder.setTitle(R.string.ConversationActivity_delete_thread_confirmation);
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setCancelable(true);
builder.setMessage(R.string.are_you_sure_that_you_want_to_permanently_delete_this_conversation_question);
builder.setMessage(R.string.ConversationActivity_are_you_sure_that_you_want_to_permanently_delete_this_conversation_question);
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
@@ -327,7 +349,7 @@ public class ConversationActivity extends SherlockFragmentActivity
private void handleAddAttachment() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setIcon(R.drawable.ic_dialog_attach);
builder.setTitle(R.string.add_attachment);
builder.setTitle(R.string.ConversationActivity_add_attachment);
builder.setAdapter(attachmentAdapter, new AttachmentTypeListener());
builder.show();
}
@@ -340,7 +362,7 @@ public class ConversationActivity extends SherlockFragmentActivity
if (isSingleConversation()) {
if (sendEncrypted) {
if (isEncryptedConversation) {
title = AuthenticityCalculator.getAuthenticatedName(this,
getRecipients().getPrimaryRecipient(),
masterSecret);
@@ -355,8 +377,12 @@ public class ConversationActivity extends SherlockFragmentActivity
} else {
subtitle = getRecipients().getPrimaryRecipient().getNumber();
}
} else if (isGroupConversation()) {
title = getString(R.string.ConversationActivity_group_conversation);
subtitle = String.format(getString(R.string.ConversationActivity_d_recipients_in_group),
getRecipients().getRecipientsList().size());
} else {
title = getString(R.string.compose_message);
title = getString(R.string.ConversationActivity_compose_message);
subtitle = "";
}
@@ -374,12 +400,12 @@ public class ConversationActivity extends SherlockFragmentActivity
{
sendButton.setCompoundDrawablesWithIntrinsicBounds(0, 0, R.drawable.ic_menu_lock_holo_light, 0);
sendButton.setCompoundDrawablePadding(15);
this.sendEncrypted = true;
this.characterCalculator = new EncryptedCharacterCalculator();
this.isEncryptedConversation = true;
this.characterCalculator = new EncryptedCharacterCalculator();
} else {
sendButton.setCompoundDrawablesWithIntrinsicBounds(0, 0, 0, 0);
this.sendEncrypted = false;
this.characterCalculator = new CharacterCalculator();
this.isEncryptedConversation = false;
this.characterCalculator = new CharacterCalculator();
}
calculateCharactersRemaining();
@@ -410,7 +436,7 @@ public class ConversationActivity extends SherlockFragmentActivity
registerForContextMenu(sendButton);
if (getIntent().getStringExtra("forwarded_message") != null)
composeText.setText("FWD: " + getIntent().getStringExtra("forwarded_message"));
composeText.setText(R.string.ConversationActivity_forward_message_prefix+": " + getIntent().getStringExtra("forwarded_message"));
}
private void initializeRecipientsInput() {
@@ -473,7 +499,7 @@ public class ConversationActivity extends SherlockFragmentActivity
attachmentManager.setImage(imageUri);
} catch (IOException e) {
attachmentManager.clear();
Toast.makeText(this, R.string.sorry_there_was_an_error_setting_your_attachment,
Toast.makeText(this, R.string.ConversationActivity_sorry_there_was_an_error_setting_your_attachment,
Toast.LENGTH_LONG).show();
Log.w("ComposeMessageActivity", e);
}
@@ -484,12 +510,12 @@ public class ConversationActivity extends SherlockFragmentActivity
attachmentManager.setVideo(videoUri);
} catch (IOException e) {
attachmentManager.clear();
Toast.makeText(this, R.string.sorry_there_was_an_error_setting_your_attachment,
Toast.makeText(this, R.string.ConversationActivity_sorry_there_was_an_error_setting_your_attachment,
Toast.LENGTH_LONG).show();
Log.w("ComposeMessageActivity", e);
} catch (MediaTooLargeException e) {
attachmentManager.clear();
Toast.makeText(this, R.string.sorry_the_selected_video_exceeds_message_size_restrictions,
Toast.makeText(this, R.string.ConversationActivity_sorry_the_selected_video_exceeds_message_size_restrictions,
Toast.LENGTH_LONG).show();
Log.w("ComposeMessageActivity", e);
}
@@ -500,12 +526,12 @@ public class ConversationActivity extends SherlockFragmentActivity
attachmentManager.setAudio(audioUri);
} catch (IOException e) {
attachmentManager.clear();
Toast.makeText(this, R.string.sorry_there_was_an_error_setting_your_attachment,
Toast.makeText(this, R.string.ConversationActivity_sorry_there_was_an_error_setting_your_attachment,
Toast.LENGTH_LONG).show();
Log.w("ComposeMessageActivity", e);
} catch (MediaTooLargeException e) {
attachmentManager.clear();
Toast.makeText(this, R.string.sorry_the_selected_audio_exceeds_message_size_restrictions,
Toast.makeText(this, R.string.ConversationActivity_sorry_the_selected_audio_exceeds_message_size_restrictions,
Toast.LENGTH_LONG).show();
Log.w("ComposeMessageActivity", e);
}
@@ -525,6 +551,10 @@ public class ConversationActivity extends SherlockFragmentActivity
return getRecipients() != null && getRecipients().isSingleRecipient();
}
private boolean isGroupConversation() {
return getRecipients() != null && !getRecipients().isSingleRecipient();
}
private boolean isAuthenticatedSession() {
return AuthenticityCalculator.isAuthenticated(this,
getRecipients().getPrimaryRecipient(),
@@ -545,9 +575,9 @@ public class ConversationActivity extends SherlockFragmentActivity
String rawText = composeText.getText().toString();
if (rawText.length() < 1 && !attachmentManager.isAttachmentPresent())
throw new InvalidMessageException(getString(R.string.message_is_empty_exclamation));
throw new InvalidMessageException(getString(R.string.ConversationActivity_message_is_empty_exclamation));
if (!sendEncrypted && Tag.isTaggable(this, rawText))
if (!isEncryptedConversation && Tag.isTaggable(this, rawText))
rawText = Tag.getTaggedMessage(rawText);
return rawText;
@@ -574,7 +604,7 @@ public class ConversationActivity extends SherlockFragmentActivity
}
}
private void sendMessage(boolean sendEncrypted) {
private void sendMessage(boolean forcePlaintext) {
try {
Recipients recipients = getRecipients();
@@ -587,24 +617,24 @@ public class ConversationActivity extends SherlockFragmentActivity
if (attachmentManager.isAttachmentPresent()) {
allocatedThreadId = MessageSender.sendMms(ConversationActivity.this, masterSecret, recipients,
threadId, attachmentManager.getSlideDeck(), message,
sendEncrypted);
forcePlaintext);
} else if (recipients.isEmailRecipient()) {
allocatedThreadId = MessageSender.sendMms(ConversationActivity.this, masterSecret, recipients,
threadId, new SlideDeck(), message, sendEncrypted);
threadId, new SlideDeck(), message, forcePlaintext);
} else {
allocatedThreadId = MessageSender.send(ConversationActivity.this, masterSecret, recipients,
threadId, message, sendEncrypted);
threadId, message, forcePlaintext);
}
sendComplete(recipients, allocatedThreadId);
MessageNotifier.updateNotification(ConversationActivity.this, false);
} catch (RecipientFormattingException ex) {
Toast.makeText(ConversationActivity.this,
R.string.recipient_is_not_a_valid_sms_or_email_address_exclamation,
R.string.ConversationActivity_recipient_is_not_a_valid_sms_or_email_address_exclamation,
Toast.LENGTH_LONG).show();
Log.w("compose", ex);
} catch (InvalidMessageException ex) {
Toast.makeText(ConversationActivity.this, R.string.message_is_empty_exclamation,
Toast.makeText(ConversationActivity.this, R.string.ConversationActivity_message_is_empty_exclamation,
Toast.LENGTH_SHORT).show();
Log.w("compose", ex);
} catch (MmsException e) {
@@ -649,7 +679,7 @@ public class ConversationActivity extends SherlockFragmentActivity
private class SendButtonListener implements OnClickListener, TextView.OnEditorActionListener {
public void onClick(View v) {
sendMessage(sendEncrypted);
sendMessage(false);
}
public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {

View File

@@ -30,17 +30,26 @@ import org.thoughtcrime.securesms.crypto.MasterCipher;
import org.thoughtcrime.securesms.crypto.MasterSecret;
import org.thoughtcrime.securesms.crypto.MessageDisplayHelper;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.MessageRecord;
import org.thoughtcrime.securesms.database.MmsDatabase;
import org.thoughtcrime.securesms.database.MmsSmsDatabase;
import org.thoughtcrime.securesms.database.SmsDatabase;
import org.thoughtcrime.securesms.mms.MmsFactory;
import org.thoughtcrime.securesms.database.model.MediaMmsMessageRecord;
import org.thoughtcrime.securesms.database.model.MessageRecord;
import org.thoughtcrime.securesms.database.model.MessageRecord.GroupData;
import org.thoughtcrime.securesms.database.model.NotificationMmsMessageRecord;
import org.thoughtcrime.securesms.database.model.SmsMessageRecord;
import org.thoughtcrime.securesms.mms.SlideDeck;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.recipients.RecipientFactory;
import org.thoughtcrime.securesms.recipients.RecipientFormattingException;
import org.thoughtcrime.securesms.recipients.Recipients;
import org.thoughtcrime.securesms.service.MessageNotifier;
import org.thoughtcrime.securesms.util.InvalidMessageException;
import ws.com.google.android.mms.MmsException;
import ws.com.google.android.mms.pdu.MultimediaMessagePdu;
import ws.com.google.android.mms.pdu.NotificationInd;
import ws.com.google.android.mms.pdu.PduHeaders;
import java.util.LinkedHashMap;
@@ -68,7 +77,9 @@ public class ConversationAdapter extends CursorAdapter {
private boolean dataChanged;
public ConversationAdapter(Recipients recipients, long threadId, Context context, MasterSecret masterSecret, Handler failedIconClickHandler) {
public ConversationAdapter(Recipients recipients, long threadId, Context context,
MasterSecret masterSecret, Handler failedIconClickHandler)
{
super(context, null);
this.context = context;
this.recipients = recipients;
@@ -85,27 +96,15 @@ public class ConversationAdapter extends CursorAdapter {
MessageNotifier.updateNotification(context, false);
}
private Recipient buildRecipient(String address) {
Recipient recipient;
try {
if (address == null) recipient = recipients.getPrimaryRecipient();
else recipient = RecipientFactory.getRecipientsFromString(context, address).getPrimaryRecipient();
} catch (RecipientFormattingException e) {
Log.w("ConversationAdapter", e);
recipient = new Recipient("Unknown", "Unknown", null);
}
return recipient;
}
@Override
public void bindView(View view, Context context, Cursor cursor) {
ConversationItem item = (ConversationItem)view;
long id = cursor.getLong(cursor.getColumnIndexOrThrow(SmsDatabase.ID));
String type = cursor.getString(cursor.getColumnIndexOrThrow(SmsDatabase.TRANSPORT));
String type = cursor.getString(cursor.getColumnIndexOrThrow(MmsSmsDatabase.TRANSPORT));
MessageRecord messageRecord = getMessageRecord(id, cursor, type);
((ConversationItem)view).set(masterSecret, messageRecord, failedIconClickHandler);
item.set(masterSecret, messageRecord, failedIconClickHandler);
view.setOnTouchListener(touchListener);
}
@@ -135,35 +134,107 @@ public class ConversationAdapter extends CursorAdapter {
private int getItemViewType(Cursor cursor) {
long id = cursor.getLong(cursor.getColumnIndexOrThrow(SmsDatabase.ID));
String type = cursor.getString(cursor.getColumnIndexOrThrow(SmsDatabase.TRANSPORT));
String type = cursor.getString(cursor.getColumnIndexOrThrow(MmsSmsDatabase.TRANSPORT));
MessageRecord messageRecord = getMessageRecord(id, cursor, type);
if (messageRecord.isOutgoing()) return 0;
else return 1;
}
private MessageRecord getNewMmsMessageRecord(long messageId, Cursor cursor) {
MessageRecord messageRecord = getNewSmsMessageRecord(messageId, cursor);
long mmsType = cursor.getLong(cursor.getColumnIndexOrThrow(MmsDatabase.MESSAGE_TYPE));
long mmsBox = cursor.getLong(cursor.getColumnIndexOrThrow(MmsDatabase.MESSAGE_BOX));
private MediaMmsMessageRecord getMediaMmsMessageRecord(long messageId, Cursor cursor) {
long id = cursor.getLong(cursor.getColumnIndexOrThrow(MmsDatabase.ID));
long date = cursor.getLong(cursor.getColumnIndexOrThrow(MmsDatabase.DATE));
long box = cursor.getLong(cursor.getColumnIndexOrThrow(MmsDatabase.MESSAGE_BOX));
Recipient recipient = getIndividualRecipientFor(null);
GroupData groupData = null;
SlideDeck slideDeck;
try {
return MmsFactory.getMms(context, masterSecret, messageRecord, mmsType, mmsBox);
MultimediaMessagePdu pdu = DatabaseFactory.getEncryptingMmsDatabase(context, masterSecret).getMediaMessage(messageId);
slideDeck = new SlideDeck(context, masterSecret, pdu.getBody());
if (recipients != null && !recipients.isSingleRecipient()) {
int groupSize = pdu.getTo().length;
int groupSent = MmsDatabase.Types.isFailedMmsBox(box) ? 0 : groupSize;
int groupSendFailed = groupSize - groupSent;
if (groupSize <= 1) {
groupSize = cursor.getInt(cursor.getColumnIndexOrThrow(MmsSmsDatabase.GROUP_SIZE));
groupSent = cursor.getInt(cursor.getColumnIndexOrThrow(MmsSmsDatabase.MMS_GROUP_SENT_COUNT));
groupSendFailed = cursor.getInt(cursor.getColumnIndexOrThrow(MmsSmsDatabase.MMS_GROUP_SEND_FAILED_COUNT));
}
Log.w("ConversationAdapter", "MMS GroupSize: " + groupSize + " , GroupSent: " + groupSent + " , GroupSendFailed: " + groupSendFailed);
groupData = new MessageRecord.GroupData(groupSize, groupSent, groupSendFailed);
}
} catch (MmsException me) {
Log.w("ConversationAdapter", me);
return messageRecord;
slideDeck = null;
}
return new MediaMmsMessageRecord(context, id, recipients, recipient,
date, threadId, slideDeck, box, groupData);
}
private MessageRecord getNewSmsMessageRecord(long messageId, Cursor cursor) {
long date = cursor.getLong(cursor.getColumnIndexOrThrow(SmsDatabase.DATE));
long type = cursor.getLong(cursor.getColumnIndexOrThrow(SmsDatabase.TYPE));
String address = cursor.getString(cursor.getColumnIndexOrThrow(SmsDatabase.ADDRESS));
Recipient recipient = buildRecipient(address);
MessageRecord messageRecord = new MessageRecord(messageId, recipients, date, type, threadId);
private NotificationMmsMessageRecord getNotificationMmsMessageRecord(long messageId, Cursor cursor) {
Recipient recipient = getIndividualRecipientFor(null);
long id = cursor.getLong(cursor.getColumnIndexOrThrow(MmsDatabase.ID));
long date = cursor.getLong(cursor.getColumnIndexOrThrow(MmsDatabase.DATE));
messageRecord.setMessageRecipient(recipient);
setBody(cursor, messageRecord);
NotificationInd notification;
try {
notification = DatabaseFactory.getMmsDatabase(context).getNotificationMessage(messageId);
} catch (MmsException me) {
Log.w("ConversationAdapter", me);
notification = new NotificationInd(new PduHeaders());
}
return new NotificationMmsMessageRecord(id, recipients, recipient, date, threadId,
notification.getContentLocation(),
notification.getMessageSize(),
notification.getExpiry(),
notification.getStatus(),
notification.getTransactionId());
}
private SmsMessageRecord getSmsMessageRecord(long messageId, Cursor cursor) {
long date = cursor.getLong(cursor.getColumnIndexOrThrow(SmsDatabase.DATE));
long type = cursor.getLong(cursor.getColumnIndexOrThrow(SmsDatabase.TYPE));
String body = cursor.getString(cursor.getColumnIndexOrThrow(SmsDatabase.BODY));
String address = cursor.getString(cursor.getColumnIndexOrThrow(SmsDatabase.ADDRESS));
Recipient recipient = getIndividualRecipientFor(address);
MessageRecord.GroupData groupData = null;
if (recipients != null && !recipients.isSingleRecipient()) {
int groupSize = cursor.getInt(cursor.getColumnIndexOrThrow(MmsSmsDatabase.GROUP_SIZE));
int groupSent = cursor.getInt(cursor.getColumnIndexOrThrow(MmsSmsDatabase.SMS_GROUP_SENT_COUNT));
int groupSendFailed = cursor.getInt(cursor.getColumnIndexOrThrow(MmsSmsDatabase.SMS_GROUP_SEND_FAILED_COUNT));
Log.w("ConversationAdapter", "GroupSize: " + groupSize + " , GroupSent: " + groupSent + " , GroupSendFailed: " + groupSendFailed);
groupData = new MessageRecord.GroupData(groupSize, groupSent, groupSendFailed);
}
SmsMessageRecord messageRecord = new SmsMessageRecord(context, messageId, recipients,
recipient, date, type, threadId,
groupData);
if (body == null) {
body = "";
}
try {
String decryptedBody = MessageDisplayHelper.getDecryptedMessageBody(masterCipher, body);
messageRecord.setBody(decryptedBody);
} catch (InvalidMessageException ime) {
Log.w("ConversationAdapter", ime);
messageRecord.setBody(context.getString(R.string.MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question));
messageRecord.setEmphasis(true);
}
return messageRecord;
}
@@ -174,22 +245,35 @@ public class ConversationAdapter extends CursorAdapter {
MessageRecord messageRecord;
if (type.equals("mms")) messageRecord = getNewMmsMessageRecord(messageId, cursor);
else messageRecord = getNewSmsMessageRecord(messageId, cursor);
if (type.equals("mms")) {
long mmsType = cursor.getLong(cursor.getColumnIndexOrThrow(MmsDatabase.MESSAGE_TYPE));
if (mmsType == PduHeaders.MESSAGE_TYPE_NOTIFICATION_IND) {
messageRecord = getNotificationMmsMessageRecord(messageId, cursor);
} else {
messageRecord = getMediaMmsMessageRecord(messageId, cursor);
}
} else {
messageRecord = getSmsMessageRecord(messageId, cursor);
}
messageRecordCache.put(type + messageId, messageRecord);
return messageRecord;
}
protected void setBody(Cursor cursor, MessageRecord message) {
String body = cursor.getString(cursor.getColumnIndexOrThrow(SmsDatabase.BODY));
private Recipient getIndividualRecipientFor(String address) {
Recipient recipient;
if (body == null)
message.setBody("");
else
MessageDisplayHelper.setDecryptedMessageBody(context, body, message, masterCipher);
try {
if (address == null) recipient = recipients.getPrimaryRecipient();
else recipient = RecipientFactory.getRecipientsFromString(context, address).getPrimaryRecipient();
} catch (RecipientFormattingException e) {
Log.w("ConversationAdapter", e);
recipient = new Recipient("Unknown", "Unknown", null);
}
return recipient;
}
@Override
protected void onContentChanged() {
super.onContentChanged();

View File

@@ -21,8 +21,8 @@ import com.actionbarsherlock.app.SherlockListFragment;
import org.thoughtcrime.securesms.crypto.MasterSecret;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.MessageRecord;
import org.thoughtcrime.securesms.database.loaders.ConversationLoader;
import org.thoughtcrime.securesms.database.model.MessageRecord;
import org.thoughtcrime.securesms.recipients.Recipients;
import java.sql.Date;
@@ -98,20 +98,19 @@ public class ConversationFragment extends SherlockListFragment
clipboard.setText(body);
}
private void handleDeleteMessage(MessageRecord message) {
private void handleDeleteMessage(final MessageRecord message) {
final long messageId = message.getId();
final String transport = message.isMms() ? "mms" : "sms";
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle("Delete Message Confirmation");
builder.setTitle(R.string.ConversationFragment_confirm_message_delete);
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setCancelable(true);
builder.setMessage("Are you sure that you want to permanently delete this message?");
builder.setMessage(R.string.ConversationFragment_are_you_sure_you_want_to_permanently_delete_this_message);
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
if (transport.equals("mms")) {
if (message.isMms()) {
DatabaseFactory.getMmsDatabase(getActivity()).delete(messageId);
} else {
DatabaseFactory.getSmsDatabase(getActivity()).deleteMessage(messageId);
@@ -130,10 +129,11 @@ public class ConversationFragment extends SherlockListFragment
SimpleDateFormat dateFormatter = new SimpleDateFormat("EEE MMM d, yyyy 'at' hh:mm:ss a zzz");
AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
builder.setTitle(R.string.message_details);
builder.setTitle(R.string.ConversationFragment_message_details);
builder.setIcon(android.R.drawable.ic_dialog_info);
builder.setCancelable(false);
builder.setMessage(String.format(getSherlockActivity().getString(R.string.sender_s_transport_s_sent_received_s),
builder.setMessage(String.format(getSherlockActivity()
.getString(R.string.ConversationFragment_sender_s_transport_s_sent_received_s),
sender, transport.toUpperCase(),
dateFormatter.format(new Date(date))));
builder.setPositiveButton(android.R.string.ok, null);
@@ -164,7 +164,8 @@ public class ConversationFragment extends SherlockListFragment
@Override
public Loader<Cursor> onCreateLoader(int arg0, Bundle arg1) {
return new ConversationLoader(getActivity(), threadId);
return new ConversationLoader(getActivity(), threadId,
(recipients != null && !recipients.isSingleRecipient()));
}
@Override

View File

@@ -26,10 +26,8 @@ import android.net.Uri;
import android.os.Environment;
import android.os.Handler;
import android.os.Message;
import android.preference.PreferenceManager;
import android.provider.Contacts.Intents;
import android.provider.ContactsContract.QuickContact;
import android.telephony.TelephonyManager;
import android.text.Spannable;
import android.text.format.DateUtils;
import android.text.style.ForegroundColorSpan;
@@ -43,16 +41,18 @@ import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
import org.thoughtcrime.securesms.contacts.ContactIdentityManager;
import org.thoughtcrime.securesms.crypto.MasterSecret;
import org.thoughtcrime.securesms.database.MessageRecord;
import org.thoughtcrime.securesms.database.MmsDatabase;
import org.thoughtcrime.securesms.database.MmsMessageRecord;
import org.thoughtcrime.securesms.database.model.MediaMmsMessageRecord;
import org.thoughtcrime.securesms.database.model.MessageRecord;
import org.thoughtcrime.securesms.database.model.MessageRecord.GroupData;
import org.thoughtcrime.securesms.database.model.NotificationMmsMessageRecord;
import org.thoughtcrime.securesms.mms.Slide;
import org.thoughtcrime.securesms.mms.SlideDeck;
import org.thoughtcrime.securesms.protocol.Tag;
import org.thoughtcrime.securesms.recipients.Recipient;
import org.thoughtcrime.securesms.recipients.RecipientFactory;
import org.thoughtcrime.securesms.recipients.RecipientFormattingException;
import org.thoughtcrime.securesms.service.SendReceiveService;
import java.io.File;
@@ -79,6 +79,7 @@ public class ConversationItem extends LinearLayout {
private TextView bodyText;
private TextView dateText;
private TextView groupStatusText;
private ImageView secureImage;
private ImageView failedImage;
private ImageView keyImage;
@@ -109,6 +110,7 @@ public class ConversationItem extends LinearLayout {
this.bodyText = (TextView) findViewById(R.id.conversation_item_body);
this.dateText = (TextView) findViewById(R.id.conversation_item_date);
this.groupStatusText = (TextView) findViewById(R.id.group_message_status);
this.secureImage = (ImageView)findViewById(R.id.sms_secure_indicator);
this.failedImage = (ImageView)findViewById(R.id.sms_failed_indicator);
this.keyImage = (ImageView)findViewById(R.id.key_exchange_indicator);
@@ -128,33 +130,102 @@ public class ConversationItem extends LinearLayout {
this.masterSecret = masterSecret;
this.failedIconHandler = failedIconHandler;
// Double-dispatch back to methods below.
messageRecord.setOnConversationItem(this);
setBodyText(messageRecord);
setStatusIcons(messageRecord);
setContactPhoto(messageRecord);
setGroupMessageStatus(messageRecord);
setEvents(messageRecord);
if (messageRecord instanceof NotificationMmsMessageRecord) {
setNotificationMmsAttributes((NotificationMmsMessageRecord)messageRecord);
} else if (messageRecord instanceof MediaMmsMessageRecord) {
setMediaMmsAttributes((MediaMmsMessageRecord)messageRecord);
}
}
public MessageRecord getMessageRecord() {
return messageRecord;
}
public void setMessageRecord(MessageRecord messageRecord) {
setBody(messageRecord);
setStatusIcons(messageRecord);
setEvents(messageRecord);
public void setHandler(Handler failedIconHandler) {
this.failedIconHandler = failedIconHandler;
}
public void setMessageRecord(MmsMessageRecord messageRecord) {
setMessageRecord((MessageRecord)messageRecord);
/// MessageRecord Attribute Parsers
if (messageRecord.isNotification())
setMmsNotificationAttributes(messageRecord);
else
setMmsMediaAttributes(messageRecord);
private void setBodyText(MessageRecord messageRecord) {
String body = messageRecord.getBody();
if (messageRecord.isKeyExchange() && messageRecord.isOutgoing()) body = "\n" + getContext().getString(R.string.ConversationItem_key_exchange_message);
else if (messageRecord.isProcessedKeyExchange() && !messageRecord.isOutgoing()) body = "\n" + getContext().getString(R.string.ConversationItem_received_and_processed_key_exchange_message);
else if (messageRecord.isStaleKeyExchange()) body = "\n" + getContext().getString(R.string.ConversationItem_error_received_stale_key_exchange_message);
else if (messageRecord.isKeyExchange() && !messageRecord.isOutgoing()) body = "\n" + getContext().getString(R.string.ConversationItem_received_key_exchange_message_click_to_process);
else if (messageRecord.isOutgoing() && Tag.isTagged(body)) body = Tag.stripTag(body);
bodyText.setText(body, TextView.BufferType.SPANNABLE);
if (messageRecord.isKeyExchange() || messageRecord.getEmphasis()) {
((Spannable)bodyText.getText()).setSpan(new ForegroundColorSpan(context.getResources().getColor(android.R.color.darker_gray)), 0, body.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
((Spannable)bodyText.getText()).setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 0, body.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}
private void setMmsNotificationAttributes(MmsMessageRecord messageRecord) {
String messageSize = String.format(getContext().getString(R.string.message_size_d_kb),
private void setContactPhoto(MessageRecord messageRecord) {
if (messageRecord.isOutgoing()) {
setContactPhotoForUserIdentity();
} else {
setContactPhotoForRecipient(messageRecord.getIndividualRecipient());
}
}
private void setStatusIcons(MessageRecord messageRecord) {
failedImage.setVisibility(messageRecord.isFailed() ? View.VISIBLE : View.GONE);
secureImage.setVisibility(messageRecord.isSecure() ? View.VISIBLE : View.GONE);
keyImage.setVisibility(messageRecord.isKeyExchange() ? View.VISIBLE : View.GONE);
mmsThumbnail.setVisibility(View.GONE);
mmsDownloadButton.setVisibility(View.GONE);
mmsDownloadingLabel.setVisibility(View.GONE);
if (messageRecord.isFailed()) dateText.setText(R.string.ConversationItem_error_sending_message);
else if (messageRecord.isPending()) dateText.setText(R.string.ConversationItem_sending);
else dateText.setText(DateUtils.getRelativeTimeSpanString(getContext(),
messageRecord.getDate(),
false));
}
private void setEvents(MessageRecord messageRecord) {
setClickable(messageRecord.isKeyExchange() && !messageRecord.isOutgoing());
if (!messageRecord.isOutgoing() && messageRecord.getRecipients().isSingleRecipient()) {
checkForAutoInitiate(messageRecord.getIndividualRecipient(),
messageRecord.getBody(),
messageRecord.getThreadId());
}
}
private void setGroupMessageStatus(MessageRecord messageRecord) {
GroupData groupData = messageRecord.getGroupData();
if (groupData != null) {
String status = String.format("Sent (%d/%d)", groupData.groupSentCount, groupData.groupSize);
if (groupData.groupSendFailedCount != 0)
status = status + String.format(", Failed (%d/%d)", groupData.groupSendFailedCount, groupData.groupSize);
this.groupStatusText.setText(status);
this.groupStatusText.setVisibility(View.VISIBLE);
} else {
this.groupStatusText.setVisibility(View.GONE);
}
}
private void setNotificationMmsAttributes(NotificationMmsMessageRecord messageRecord) {
String messageSize = String.format(getContext()
.getString(R.string.ConversationItem_message_size_d_kb),
messageRecord.getMessageSize());
String expires = String.format(getContext().getString(R.string.expires_s),
String expires = String.format(getContext()
.getString(R.string.ConversationItem_expires_s),
DateUtils.getRelativeTimeSpanString(getContext(),
messageRecord.getExpiration(),
false));
@@ -169,146 +240,84 @@ public class ConversationItem extends LinearLayout {
mmsDownloadButton.setVisibility(View.GONE);
mmsDownloadingLabel.setVisibility(View.VISIBLE);
}
if (MmsDatabase.Types.isHardError(messageRecord.getStatus()))
failedImage.setVisibility(View.VISIBLE);
}
private void setMmsMediaAttributes(MmsMessageRecord messageRecord) {
private void setMediaMmsAttributes(MediaMmsMessageRecord messageRecord) {
SlideDeck slideDeck = messageRecord.getSlideDeck();
List<Slide> slides = slideDeck.getSlides();
Iterator<Slide> iterator = slides.iterator();
if (slideDeck != null) {
List<Slide> slides = slideDeck.getSlides();
while (iterator.hasNext()) {
Slide slide = iterator.next();
if (slide.hasImage()) {
mmsThumbnail.setImageBitmap(slide.getThumbnail());
mmsThumbnail.setOnClickListener(new ThumbnailClickListener(slide));
mmsThumbnail.setOnLongClickListener(new ThumbnailSaveListener(slide));
mmsThumbnail.setVisibility(View.VISIBLE);
return;
Iterator<Slide> iterator = slides.iterator();
while (iterator.hasNext()) {
Slide slide = iterator.next();
if (slide.hasImage()) {
mmsThumbnail.setImageBitmap(slide.getThumbnail());
mmsThumbnail.setOnClickListener(new ThumbnailClickListener(slide));
mmsThumbnail.setOnLongClickListener(new ThumbnailSaveListener(slide));
mmsThumbnail.setVisibility(View.VISIBLE);
return;
}
}
}
mmsThumbnail.setVisibility(View.GONE);
}
public void setHandler(Handler failedIconHandler) {
this.failedIconHandler = failedIconHandler;
}
/// Helper Methods
private void checkForAutoInitiate(Recipient recipient, String body, long threadId) {
if (AutoInitiateActivity.isValidAutoInitiateSituation(context, masterSecret, recipient,
body, threadId))
{
AutoInitiateActivity.exemptThread(context, threadId);
private void checkForAutoInitiate(MessageRecord messageRecord) {
if (AutoInitiateActivity.isValidAutoInitiateSituation(context, masterSecret, messageRecord.getRecipients().getPrimaryRecipient(), messageRecord.getBody(), messageRecord.getThreadId())) {
AutoInitiateActivity.exemptThread(context, messageRecord.getThreadId());
Intent intent = new Intent();
intent.setClass(context, AutoInitiateActivity.class);
intent.putExtra("threadId", messageRecord.getThreadId());
intent.putExtra("threadId", threadId);
intent.putExtra("masterSecret", masterSecret);
intent.putExtra("recipient", messageRecord.getRecipients().getPrimaryRecipient());
intent.putExtra("recipient", recipient);
context.startActivity(intent);
}
}
private void setBodyText(MessageRecord messageRecord) {
String body = messageRecord.getBody();
if (messageRecord.isKeyExchange() && messageRecord.isOutgoing()) body = "\n" + getContext().getString(R.string.key_exchange_message2);
else if (messageRecord.isProcessedKeyExchange() && !messageRecord.isOutgoing()) body = "\n" + getContext().getString(R.string.received_and_processed_key_exchange_message);
else if (messageRecord.isStaleKeyExchange()) body = "\n" + getContext().getString(R.string.error_received_stale_key_exchange_message);
else if (messageRecord.isKeyExchange() && !messageRecord.isOutgoing()) body = "\n" + getContext().getString(R.string.received_key_exchange_message_click_to_process);
else if (messageRecord.isOutgoing() && Tag.isTagged(body)) body = Tag.stripTag(body);
bodyText.setText(body, TextView.BufferType.SPANNABLE);
if (messageRecord.isKeyExchange() || messageRecord.getEmphasis()) {
((Spannable)bodyText.getText()).setSpan(new ForegroundColorSpan(context.getResources().getColor(android.R.color.darker_gray)), 0, body.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
((Spannable)bodyText.getText()).setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 0, body.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}
private void setContactPhotoForUserIdentity() {
String configuredContact = PreferenceManager.getDefaultSharedPreferences(context).getString(ApplicationPreferencesActivity.IDENTITY_PREF, null);
Uri selfIdentityContact = ContactIdentityManager.getInstance(context).getSelfIdentityUri();
try {
if (configuredContact != null) {
Recipient recipient = RecipientFactory.getRecipientForUri(context, Uri.parse(configuredContact));
if (recipient != null) {
contactPhoto.setImageBitmap(recipient.getContactPhoto());
return;
}
if (selfIdentityContact!= null) {
Recipient recipient = RecipientFactory.getRecipientForUri(context, selfIdentityContact);
if (recipient != null) {
contactPhoto.setImageBitmap(recipient.getContactPhoto());
return;
}
if (hasLocalNumber()) {
contactPhoto.setImageBitmap(RecipientFactory.getRecipientsFromString(context, getLocalNumber()).getPrimaryRecipient().getContactPhoto());
} else {
contactPhoto.setImageDrawable(context.getResources().getDrawable(R.drawable.ic_contact_picture));
}
} catch (RecipientFormattingException rfe) {
Log.w("ConversationItem", rfe);
}
}
private void setBodyImage(MessageRecord messageRecord) {
final Recipient recipient = messageRecord.getMessageRecipient();
if (!messageRecord.isOutgoing()) {
contactPhoto.setImageBitmap(recipient.getContactPhoto());
contactPhoto.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (recipient.getContactUri() != null) {
QuickContact.showQuickContact(context, contactPhoto, recipient.getContactUri(), QuickContact.MODE_LARGE, null);
} else {
Intent intent = new Intent(Intents.SHOW_OR_CREATE_CONTACT, Uri.fromParts("tel", recipient.getNumber(), null));
context.startActivity(intent);
}
}
});
} else {
setContactPhotoForUserIdentity();
contactPhoto.setImageDrawable(context.getResources().getDrawable(R.drawable.ic_contact_picture));
}
contactPhoto.setVisibility(View.VISIBLE);
}
private void setBody(MessageRecord messageRecord) {
setBodyText(messageRecord);
setBodyImage(messageRecord);
private void setContactPhotoForRecipient(final Recipient recipient) {
contactPhoto.setImageBitmap(recipient.getContactPhoto());
contactPhoto.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (recipient.getContactUri() != null) {
QuickContact.showQuickContact(context, contactPhoto, recipient.getContactUri(), QuickContact.MODE_LARGE, null);
} else {
Intent intent = new Intent(Intents.SHOW_OR_CREATE_CONTACT, Uri.fromParts("tel", recipient.getNumber(), null));
context.startActivity(intent);
}
}
});
contactPhoto.setVisibility(View.VISIBLE);
}
private String getLocalNumber() {
return ((TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE)).getLine1Number();
}
private boolean hasLocalNumber() {
String number = getLocalNumber();
return (number != null) && (number.trim().length() > 0);
}
private void setStatusIcons(MessageRecord messageRecord) {
failedImage.setVisibility(messageRecord.isFailed() ? View.VISIBLE : View.GONE);
secureImage.setVisibility(messageRecord.isSecure() ? View.VISIBLE : View.GONE);
keyImage.setVisibility(messageRecord.isKeyExchange() ? View.VISIBLE : View.GONE);
mmsThumbnail.setVisibility(View.GONE);
mmsDownloadButton.setVisibility(View.GONE);
mmsDownloadingLabel.setVisibility(View.GONE);
if (messageRecord.isFailed()) dateText.setText(R.string.error_sending_message);
else if (messageRecord.isPending()) dateText.setText(R.string.sending);
else dateText.setText(DateUtils.getRelativeTimeSpanString(getContext(),
messageRecord.getDate(),
false));
}
private void setEvents(MessageRecord messageRecord) {
setClickable(messageRecord.isKeyExchange() && !messageRecord.isOutgoing());
if (!messageRecord.isOutgoing() && messageRecord.getRecipients().isSingleRecipient())
checkForAutoInitiate(messageRecord);
}
/// Event handlers
private void handleKeyExchangeClicked() {
Intent intent = new Intent(context, ReceiveKeyActivity.class);
@@ -380,8 +389,8 @@ public class ConversationItem extends LinearLayout {
private void saveToSdCard() {
progressDialog = new ProgressDialog(context);
progressDialog.setTitle(context.getString(R.string.saving_attachment));
progressDialog.setMessage(context.getString(R.string.saving_attachment_to_sd_card));
progressDialog.setTitle(context.getString(R.string.ConversationItem_saving_attachment));
progressDialog.setMessage(context.getString(R.string.ConversationItem_saving_attachment_to_sd_card));
progressDialog.setCancelable(false);
progressDialog.setIndeterminate(true);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
@@ -391,10 +400,10 @@ public class ConversationItem extends LinearLayout {
public boolean onLongClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle(R.string.save_to_sd_card);
builder.setTitle(R.string.ConversationItem_save_to_sd_card);
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setCancelable(true);
builder.setMessage(R.string.this_media_has_been_stored_in_an_encrypted_database_warning);
builder.setMessage(R.string.ConversationItem_this_media_has_been_stored_in_an_encrypted_database_warning);
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
saveToSdCard();
@@ -410,15 +419,15 @@ public class ConversationItem extends LinearLayout {
public void handleMessage(Message message) {
switch (message.what) {
case FAILURE:
Toast.makeText(context, R.string.error_while_saving_attachment_to_sd_card,
Toast.makeText(context, R.string.ConversationItem_error_while_saving_attachment_to_sd_card,
Toast.LENGTH_LONG).show();
break;
case SUCCESS:
Toast.makeText(context, R.string.success_exclamation,
Toast.makeText(context, R.string.ConversationItem_success_exclamation,
Toast.LENGTH_LONG).show();
break;
case WRITE_ACCESS_FAILURE:
Toast.makeText(context, R.string.unable_to_write_to_sd_card_exclamation,
Toast.makeText(context, R.string.ConversationItem_unable_to_write_to_sd_card_exclamation,
Toast.LENGTH_LONG).show();
break;
}
@@ -453,10 +462,10 @@ public class ConversationItem extends LinearLayout {
public void onClick(View v) {
AlertDialog.Builder builder = new AlertDialog.Builder(context);
builder.setTitle(R.string.view_secure_media_question);
builder.setTitle(R.string.ConversationItem_view_secure_media_question);
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setCancelable(true);
builder.setMessage(R.string.this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning);
builder.setMessage(R.string.ConversationItem_this_media_has_been_stored_in_an_encrypted_database_external_viewer_warning);
builder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
fireIntent();
@@ -469,15 +478,16 @@ public class ConversationItem extends LinearLayout {
private class MmsDownloadClickListener implements View.OnClickListener {
public void onClick(View v) {
Log.w("MmsDownloadClickListener", "Content location: " + new String(((MmsMessageRecord)messageRecord).getContentLocation()));
NotificationMmsMessageRecord notificationRecord = (NotificationMmsMessageRecord)messageRecord;
Log.w("MmsDownloadClickListener", "Content location: " + new String(notificationRecord.getContentLocation()));
mmsDownloadButton.setVisibility(View.GONE);
mmsDownloadingLabel.setVisibility(View.VISIBLE);
Intent intent = new Intent(context, SendReceiveService.class);
intent.putExtra("content_location", new String(((MmsMessageRecord)messageRecord).getContentLocation()));
intent.putExtra("message_id", ((MmsMessageRecord)messageRecord).getId());
intent.putExtra("transaction_id", ((MmsMessageRecord)messageRecord).getTransactionId());
intent.putExtra("thread_id", ((MmsMessageRecord)messageRecord).getThreadId());
intent.putExtra("content_location", new String(notificationRecord.getContentLocation()));
intent.putExtra("message_id", notificationRecord.getId());
intent.putExtra("transaction_id", notificationRecord.getTransactionId());
intent.putExtra("thread_id", notificationRecord.getThreadId());
intent.setAction(SendReceiveService.DOWNLOAD_MMS_ACTION);
context.startService(intent);
}

View File

@@ -12,6 +12,7 @@ import android.database.ContentObserver;
import android.os.Bundle;
import android.os.IBinder;
import android.os.Parcelable;
import android.provider.ContactsContract;
import android.util.Log;
import com.actionbarsherlock.app.SherlockFragmentActivity;
@@ -20,7 +21,6 @@ import com.actionbarsherlock.view.MenuInflater;
import com.actionbarsherlock.view.MenuItem;
import org.thoughtcrime.securesms.ApplicationExportManager.ApplicationExportListener;
import org.thoughtcrime.securesms.contacts.ContactAccessor;
import org.thoughtcrime.securesms.crypto.DecryptingQueue;
import org.thoughtcrime.securesms.crypto.IdentityKeyUtil;
import org.thoughtcrime.securesms.crypto.MasterSecret;
@@ -249,7 +249,7 @@ public class ConversationListActivity extends SherlockFragmentActivity
}
};
getContentResolver().registerContentObserver(ContactAccessor.getInstance().getContactsUri(),
getContentResolver().registerContentObserver(ContactsContract.Contacts.CONTENT_URI,
true, observer);
}

View File

@@ -23,9 +23,8 @@ import android.view.ViewGroup;
import android.widget.CursorAdapter;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.MessageRecord;
import org.thoughtcrime.securesms.database.ThreadDatabase;
import org.thoughtcrime.securesms.protocol.Prefix;
import org.thoughtcrime.securesms.database.model.ThreadRecord;
import org.thoughtcrime.securesms.recipients.RecipientFactory;
import org.thoughtcrime.securesms.recipients.Recipients;
@@ -68,28 +67,19 @@ public class ConversationListAdapter extends CursorAdapter {
long count = cursor.getLong(cursor.getColumnIndexOrThrow(ThreadDatabase.MESSAGE_COUNT));
long read = cursor.getLong(cursor.getColumnIndexOrThrow(ThreadDatabase.READ));
MessageRecord message = new MessageRecord(-1, recipients, date, count, read == 1, threadId);
setBody(cursor, message);
ThreadRecord thread = new ThreadRecord(context, recipients, date, count, read == 1, threadId);
setBody(cursor, thread);
((ConversationListItem)view).set(message, batchMode);
((ConversationListItem)view).set(thread, batchMode);
}
protected void filterBody(MessageRecord message, String body) {
protected void filterBody(ThreadRecord thread, String body) {
if (body == null) body = "(No subject)";
if (body.startsWith(Prefix.SYMMETRIC_ENCRYPT) || body.startsWith(Prefix.ASYMMETRIC_ENCRYPT) || body.startsWith(Prefix.ASYMMETRIC_LOCAL_ENCRYPT)) {
message.setBody(context.getString(R.string.encrypted_message_enter_passphrase));
message.setEmphasis(true);
} else if (body.startsWith(Prefix.KEY_EXCHANGE)) {
message.setBody(context.getString(R.string.key_exchange_message));
message.setEmphasis(true);
} else {
message.setBody(body);
}
thread.setBody(body);
}
protected void setBody(Cursor cursor, MessageRecord message) {
filterBody(message, cursor.getString(cursor.getColumnIndexOrThrow(ThreadDatabase.SNIPPET)));
protected void setBody(Cursor cursor, ThreadRecord thread) {
filterBody(thread, cursor.getString(cursor.getColumnIndexOrThrow(ThreadDatabase.SNIPPET)));
}
public void addToBatchSet(long threadId) {

View File

@@ -42,6 +42,7 @@ import org.thoughtcrime.securesms.crypto.MasterSecret;
import org.thoughtcrime.securesms.database.DatabaseFactory;
import org.thoughtcrime.securesms.database.loaders.ConversationListLoader;
import org.thoughtcrime.securesms.recipients.Recipients;
import org.thoughtcrime.securesms.service.MessageNotifier;
import java.util.Set;
@@ -148,8 +149,8 @@ private void initializeSearch(android.widget.SearchView searchView) {
private void handleDeleteAllSelected() {
AlertDialog.Builder alert = new AlertDialog.Builder(getActivity());
alert.setIcon(android.R.drawable.ic_dialog_alert);
alert.setTitle(R.string.delete_threads_question);
alert.setMessage(R.string.are_you_sure_you_wish_to_delete_all_selected_conversation_threads);
alert.setTitle(R.string.ConversationListFragment_delete_threads_question);
alert.setMessage(R.string.ConversationListFragment_are_you_sure_you_wish_to_delete_all_selected_conversation_threads);
alert.setCancelable(true);
alert.setPositiveButton(R.string.delete, new DialogInterface.OnClickListener() {
@@ -160,11 +161,12 @@ private void initializeSearch(android.widget.SearchView searchView) {
if (!selectedConversations.isEmpty()) {
DatabaseFactory.getThreadDatabase(getActivity())
.deleteConversations(selectedConversations);
MessageNotifier.updateNotification(getActivity(), false);
}
}
});
alert.setNegativeButton(R.string.cancel, null);
alert.setNegativeButton(android.R.string.cancel, null);
alert.show();
}

View File

@@ -33,7 +33,7 @@ import android.widget.QuickContactBadge;
import android.widget.RelativeLayout;
import android.widget.TextView;
import org.thoughtcrime.securesms.database.MessageRecord;
import org.thoughtcrime.securesms.database.model.ThreadRecord;
import org.thoughtcrime.securesms.recipients.Recipients;
import java.util.Set;
@@ -84,21 +84,22 @@ public class ConversationListItem extends RelativeLayout {
super(context, attrs);
}
public void set(MessageRecord message, boolean batchMode) {
this.recipients = message.getRecipients();
this.threadId = message.getThreadId();
this.fromView.setText(formatFrom(recipients, message.getCount(), message.getRead()));
public void set(ThreadRecord thread, boolean batchMode) {
this.recipients = thread.getRecipients();
this.threadId = thread.getThreadId();
this.fromView.setText(formatFrom(recipients, thread.getCount(), thread.isRead()));
if (message.isKeyExchange())
this.subjectView.setText(R.string.key_exchange_message, TextView.BufferType.SPANNABLE);
if (thread.isKeyExchange())
this.subjectView.setText(R.string.ConversationListItem_key_exchange_message,
TextView.BufferType.SPANNABLE);
else
this.subjectView.setText(message.getBody(), TextView.BufferType.SPANNABLE);
this.subjectView.setText(thread.getBody(), TextView.BufferType.SPANNABLE);
if (message.getEmphasis())
if (thread.getEmphasis())
((Spannable)this.subjectView.getText()).setSpan(new StyleSpan(android.graphics.Typeface.ITALIC), 0, this.subjectView.getText().length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
if (message.getDate() > 0)
this.dateView.setText(DateUtils.getRelativeTimeSpanString(getContext(), message.getDate(), false));
if (thread.getDate() > 0)
this.dateView.setText(DateUtils.getRelativeTimeSpanString(getContext(), thread.getDate(), false));
if (selectedThreads != null)
this.checkbox.setChecked(selectedThreads.contains(threadId));

View File

@@ -22,8 +22,9 @@ import android.database.Cursor;
import org.thoughtcrime.securesms.crypto.MasterCipher;
import org.thoughtcrime.securesms.crypto.MasterSecret;
import org.thoughtcrime.securesms.crypto.MessageDisplayHelper;
import org.thoughtcrime.securesms.database.MessageRecord;
import org.thoughtcrime.securesms.database.ThreadDatabase;
import org.thoughtcrime.securesms.database.model.ThreadRecord;
import org.thoughtcrime.securesms.util.InvalidMessageException;
/**
* A ConversationListAdapter that decrypts encrypted message bodies.
@@ -43,9 +44,16 @@ public class DecryptingConversationListAdapter extends ConversationListAdapter {
}
@Override
protected void setBody(Cursor cursor, MessageRecord message) {
protected void setBody(Cursor cursor, ThreadRecord thread) {
String body = cursor.getString(cursor.getColumnIndexOrThrow(ThreadDatabase.SNIPPET));
if (body == null || body.equals("")) body = "(No subject)";
MessageDisplayHelper.setDecryptedMessageBody(context, body, message, bodyCipher);
try {
String decryptedBody = MessageDisplayHelper.getDecryptedMessageBody(bodyCipher, body);
thread.setBody(decryptedBody);
} catch (InvalidMessageException ime) {
thread.setBody(context.getString(R.string.MessageDisplayHelper_decryption_error_local_message_corrupted_mac_doesn_t_match_potential_tampering_question));
thread.setEmphasis(true);
}
}
}

View File

@@ -78,7 +78,8 @@ public abstract class KeyScanningActivity extends SherlockActivity {
Dialogs.displayAlert(this, getNotVerifiedTitle(), getNotVerifiedMessage(), android.R.drawable.ic_dialog_alert);
}
} else {
Toast.makeText(this, R.string.no_scanned_key_found_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(this, R.string.KeyScanningActivity_no_scanned_key_found_exclamation,
Toast.LENGTH_LONG).show();
}
}

View File

@@ -75,7 +75,7 @@ public class PassphraseChangeActivity extends PassphraseActivity {
try {
if (!passphrase.equals(passphraseRepeat)) {
Toast.makeText(getApplicationContext(),
R.string.passphrases_dont_match_exclamation,
R.string.PassphraseChangeActivity_passphrases_dont_match_exclamation,
Toast.LENGTH_SHORT).show();
this.newPassphrase.setText("");
this.repeatPassphrase.setText("");
@@ -88,7 +88,8 @@ public class PassphraseChangeActivity extends PassphraseActivity {
setMasterSecret(masterSecret);
}
} catch (InvalidPassphraseException e) {
Toast.makeText(this, R.string.incorrect_old_passphrase_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(this, R.string.PassphraseChangeActivity_incorrect_old_passphrase_exclamation,
Toast.LENGTH_LONG).show();
this.originalPassphrase.setText("");
}
}

View File

@@ -36,14 +36,15 @@ import org.thoughtcrime.securesms.util.MemoryCleaner;
*
* @author Moxie Marlinspike
*/
public class PassphraseCreateActivity extends PassphraseActivity {
private EditText passphraseEdit;
private EditText passphraseRepeatEdit;
private Button okButton;
private Button cancelButton;
private EditText passphraseEdit;
private EditText passphraseRepeatEdit;
private Button okButton;
private Button cancelButton;
public PassphraseCreateActivity() { }
public PassphraseCreateActivity() { }
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -69,7 +70,8 @@ public class PassphraseCreateActivity extends PassphraseActivity {
String passphraseRepeat = this.passphraseRepeatEdit.getText().toString();
if (!passphrase.equals(passphraseRepeat)) {
Toast.makeText(getApplicationContext(), R.string.passphrases_dont_match_exclamation,
Toast.makeText(getApplicationContext(),
R.string.PassphraseCreateActivity_passphrases_dont_match_exclamation,
Toast.LENGTH_SHORT).show();
this.passphraseEdit.setText("");
this.passphraseRepeatEdit.setText("");
@@ -97,8 +99,8 @@ public class PassphraseCreateActivity extends PassphraseActivity {
public void generate() {
progressDialog = new ProgressDialog(PassphraseCreateActivity.this);
progressDialog.setTitle(R.string.generating_keypair);
progressDialog.setMessage(getString(R.string.generating_a_local_encryption_keypair));
progressDialog.setTitle(R.string.PassphraseCreateActivity_generating_keypair);
progressDialog.setMessage(getString(R.string.PassphraseCreateActivity_generating_a_local_encryption_keypair));
progressDialog.setCancelable(false);
progressDialog.setIndeterminate(true);
progressDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);

View File

@@ -68,7 +68,7 @@ public class PassphrasePromptActivity extends PassphraseActivity {
setMasterSecret(masterSecret);
} catch (InvalidPassphraseException ipe) {
Toast.makeText(getApplicationContext(),
R.string.invalid_passphrase_exclamation,
R.string.PassphrasePromptActivity_invalid_passphrase_exclamation,
Toast.LENGTH_SHORT).show();
}
}

View File

@@ -91,18 +91,18 @@ public class ReceiveKeyActivity extends Activity {
}
private void initializeCorruptedKeyText() {
descriptionText.setText(R.string.error_you_have_received_a_corrupted_public_key);
descriptionText.setText(R.string.ReceiveKeyActivity_error_you_have_received_a_corrupted_public_key);
confirmButton.setVisibility(View.GONE);
}
private void initializeBadVersionText() {
descriptionText.setText(R.string.error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol);
descriptionText.setText(R.string.ReceiveKeyActivity_error_you_have_received_a_public_key_from_an_unsupported_version_of_the_protocol);
confirmButton.setVisibility(View.GONE);
}
private void initializeSignatureText() {
if (!keyExchangeMessage.hasIdentityKey()) {
signatureText.setText(R.string.this_key_exchange_message_does_not_include_an_identity_signature);
signatureText.setText(R.string.ReceiveKeyActivity_this_key_exchange_message_does_not_include_an_identity_signature);
return;
}
@@ -110,25 +110,25 @@ public class ReceiveKeyActivity extends Activity {
String identityName = DatabaseFactory.getIdentityDatabase(this).getNameForIdentity(masterSecret, identityKey);
if (identityName == null) {
signatureText.setText(R.string.this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it);
signatureText.setText(R.string.ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_but_you_do_not_yet_trust_it);
} else {
signatureText.setText(String.format(getString(R.string.this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s), identityName));
signatureText.setText(String.format(getString(R.string.ReceiveKeyActivity_this_key_exchange_message_includes_an_identity_signature_which_you_trust_for_s), identityName));
}
}
private void initializeTextForExistingSession() {
if (keyExchangeProcessor.isRemoteKeyExchangeForExistingSession(keyExchangeMessage)) {
descriptionText.setText(String.format(getString(R.string.this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s), recipient.toShortString()));
descriptionText.setText(String.format(getString(R.string.ReceiveKeyActivity_this_is_the_key_that_you_sent_to_start_your_current_encrypted_session_with_s), recipient.toShortString()));
this.confirmButton.setVisibility(View.GONE);
this.verifySessionButton.setVisibility(View.VISIBLE);
this.verifyIdentityButton.setVisibility(View.VISIBLE);
} else if (keyExchangeProcessor.isLocalKeyExchangeForExistingSession(keyExchangeMessage)) {
descriptionText.setText(String.format(getString(R.string.this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s), recipient.toShortString()));
descriptionText.setText(String.format(getString(R.string.ReceiveKeyActivity_this_is_the_key_that_you_received_to_start_your_current_encrypted_session_with_s), recipient.toShortString()));
this.confirmButton.setVisibility(View.GONE);
this.verifySessionButton.setVisibility(View.VISIBLE);
this.verifyIdentityButton.setVisibility(View.VISIBLE);
} else {
descriptionText.setText(String.format(getString(R.string.you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session), recipient.toShortString()));
descriptionText.setText(String.format(getString(R.string.ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_warning_you_already_have_an_encrypted_session), recipient.toShortString()));
this.confirmButton.setVisibility(View.VISIBLE);
this.verifyIdentityButton.setVisibility(View.GONE);
this.verifySessionButton.setVisibility(View.GONE);
@@ -137,11 +137,11 @@ public class ReceiveKeyActivity extends Activity {
private void initializeTextForNewSession() {
if (keyExchangeProcessor.hasInitiatedSession() && !this.sent)
descriptionText.setText(String.format(getString(R.string.you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated), recipient.toShortString()));
descriptionText.setText(String.format(getString(R.string.ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_previously_initiated), recipient.toShortString()));
else if (keyExchangeProcessor.hasInitiatedSession() && this.sent)
descriptionText.setText(String.format(getString(R.string.you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply), recipient.toShortString()));
descriptionText.setText(String.format(getString(R.string.ReceiveKeyActivity_you_have_initiated_a_key_exchange_message_with_s_but_have_not_yet_received_a_reply), recipient.toShortString()));
else if (!keyExchangeProcessor.hasInitiatedSession() && !this.sent)
descriptionText.setText(String.format(getString(R.string.you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session), recipient.toShortString()));
descriptionText.setText(String.format(getString(R.string.ReceiveKeyActivity_you_have_received_a_key_exchange_message_from_s_you_have_no_existing_session), recipient.toShortString()));
}
private void initializeKey() throws InvalidKeyException, InvalidVersionException {

View File

@@ -83,7 +83,7 @@ public class ReviewIdentitiesActivity extends SherlockListActivity {
@Override
public void onCreateContextMenu (ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
menu.add(0, MENU_OPTION_DELETE, Menu.NONE, "Delete");
menu.add(0, MENU_OPTION_DELETE, Menu.NONE, R.string.delete);
}
@Override
@@ -127,17 +127,19 @@ public class ReviewIdentitiesActivity extends SherlockListActivity {
startActivity(viewIntent);
} catch (InvalidKeyException ike) {
Log.w("ReviewIdentitiesActivity", ike);
Toast.makeText(this, R.string.unable_to_view_corrupted_identity_key_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(this, R.string.ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation,
Toast.LENGTH_LONG).show();
} catch (IOException e) {
Log.w("ReviewIdentitiesActivity", e);
Toast.makeText(this, R.string.unable_to_view_corrupted_identity_key_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(this, R.string.ReviewIdentitiesActivity_unable_to_view_corrupted_identity_key_exclamation,
Toast.LENGTH_LONG).show();
}
}
private void deleteIdentity(String name, String keyString) {
AlertDialog.Builder alertDialog = new AlertDialog.Builder(this);
alertDialog.setTitle("Delete identity?");
alertDialog.setMessage("Are you sure that you wish to permanently delete this identity key?");
alertDialog.setTitle(R.string.ReviewIdentitiesActivity_delete_identity);
alertDialog.setMessage(R.string.ReviewIdentitiesActivity_delete_identity_are_you_sure_you_want_to_delete_this_identity_key);
alertDialog.setCancelable(true);
alertDialog.setNegativeButton(R.string.no, null);
alertDialog.setPositiveButton(R.string.yes, new DeleteIdentityListener(name, keyString));
@@ -175,11 +177,11 @@ public class ReviewIdentitiesActivity extends SherlockListActivity {
boolean valid;
String identityKeyString = cursor.getString(cursor.getColumnIndexOrThrow(IdentityDatabase.IDENTITY_KEY));
String identityName = cursor.getString(cursor.getColumnIndexOrThrow(IdentityDatabase.IDENTITY_NAME));
String identityName = cursor.getString(cursor.getColumnIndexOrThrow(IdentityDatabase.IDENTITY_NAME));
try {
String mac = cursor.getString(cursor.getColumnIndexOrThrow(IdentityDatabase.MAC));
valid = masterCipher.verifyMacFor(identityName + identityKeyString, Base64.decode(mac));
valid = masterCipher.verifyMacFor(identityName + identityKeyString, Base64.decode(mac));
identityKey = new IdentityKey(Base64.decode(identityKeyString), 0);
} catch (InvalidKeyException ike) {
Log.w("ReviewIdentitiesActivity",ike);
@@ -190,7 +192,7 @@ public class ReviewIdentitiesActivity extends SherlockListActivity {
}
if (!valid)
identityName = "Invalid Identity!";
identityName = getString(R.string.ReviewIdentitiesActivity_invalid_identity);
((IdentityKeyView)view).set(identityName, identityKeyString);
}

View File

@@ -86,7 +86,7 @@ public class SaveIdentityActivity extends SherlockActivity {
public void onClick(View v) {
if (identityName.getText() == null || identityName.getText().toString().trim().length() == 0) {
Toast.makeText(SaveIdentityActivity.this,
R.string.you_must_specify_a_name_for_this_identity_exclamation,
R.string.SaveIdentityActivity_you_must_specify_a_name_for_this_identity_exclamation,
Toast.LENGTH_LONG).show();
return;
}
@@ -95,16 +95,17 @@ public class SaveIdentityActivity extends SherlockActivity {
DatabaseFactory.getIdentityDatabase(SaveIdentityActivity.this).saveIdentity(masterSecret, identityKey, identityName.getText().toString());
} catch (InvalidKeyException e) {
AlertDialog.Builder builder = new AlertDialog.Builder(SaveIdentityActivity.this);
builder.setTitle(R.string.identity_name_exists_exclamation);
builder.setMessage(R.string.an_identity_key_with_the_specified_name_already_exists);
builder.setPositiveButton(R.string.manage_identities, new DialogInterface.OnClickListener() {
builder.setTitle(R.string.SaveIdentityActivity_identity_name_exists_exclamation);
builder.setMessage(R.string.SaveIdentityActivity_an_identity_key_with_the_specified_name_already_exists);
builder.setPositiveButton(R.string.SaveIdentityActivity_manage_identities,
new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
Intent intent = new Intent(SaveIdentityActivity.this, ReviewIdentitiesActivity.class);
intent.putExtra("master_secret", masterSecret);
startActivity(intent);
}
});
builder.setNegativeButton(R.string.cancel, null);
builder.setNegativeButton(android.R.string.cancel, null);
builder.show();
return;
}

View File

@@ -62,10 +62,11 @@ public class VerifyIdentityActivity extends KeyVerifyingActivity {
protected void handleVerified() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setTitle(R.string.mark_identity_verified_question);
builder.setMessage(R.string.are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified);
builder.setTitle(R.string.VerifyIdentityActivity_mark_identity_verified_question);
builder.setMessage(R.string.VerifyIdentityActivity_are_you_sure_you_have_validated_the_recipients_identity_fingerprint_and_would_like_to_mark_it_as_verified);
builder.setPositiveButton(R.string.mark_verified, new DialogInterface.OnClickListener() {
builder.setPositiveButton(R.string.VerifyIdentityActivity_mark_verified,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
SessionRecord sessionRecord = new SessionRecord(VerifyIdentityActivity.this,
@@ -85,13 +86,13 @@ public class VerifyIdentityActivity extends KeyVerifyingActivity {
}
});
builder.setNegativeButton("Cancel", null);
builder.setNegativeButton(android.R.string.cancel, null);
builder.show();
}
private void initializeLocalIdentityKey() {
if (!IdentityKeyUtil.hasIdentityKey(this)) {
localIdentityFingerprint.setText(R.string.you_do_not_have_an_identity_key);
localIdentityFingerprint.setText(R.string.VerifyIdentityActivity_you_do_not_have_an_identity_key);
return;
}
@@ -103,7 +104,7 @@ public class VerifyIdentityActivity extends KeyVerifyingActivity {
IdentityKey identityKey = sessionRecord.getIdentityKey();
if (identityKey == null) {
remoteIdentityFingerprint.setText(R.string.recipient_has_no_identity_key);
remoteIdentityFingerprint.setText(R.string.VerifyIdentityActivity_recipient_has_no_identity_key);
} else {
remoteIdentityFingerprint.setText(identityKey.getFingerprint());
}
@@ -124,7 +125,9 @@ public class VerifyIdentityActivity extends KeyVerifyingActivity {
@Override
protected void initiateDisplay() {
if (!IdentityKeyUtil.hasIdentityKey(this)) {
Toast.makeText(this, R.string.you_don_t_have_an_identity_key_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(this,
R.string.VerifyIdentityActivity_you_don_t_have_an_identity_key_exclamation,
Toast.LENGTH_LONG).show();
return;
}
@@ -137,7 +140,8 @@ public class VerifyIdentityActivity extends KeyVerifyingActivity {
IdentityKey identityKey = sessionRecord.getIdentityKey();
if (identityKey == null) {
Toast.makeText(this, R.string.recipient_has_no_identity_key_exclamation, Toast.LENGTH_LONG).show();
Toast.makeText(this, R.string.VerifyIdentityActivity_recipient_has_no_identity_key_exclamation,
Toast.LENGTH_LONG).show();
} else {
super.initiateScan();
}
@@ -145,12 +149,12 @@ public class VerifyIdentityActivity extends KeyVerifyingActivity {
@Override
protected String getScanString() {
return getString(R.string.scan_their_key_to_compare);
return getString(R.string.VerifyIdentityActivity_scan_their_key_to_compare);
}
@Override
protected String getDisplayString() {
return getString(R.string.get_my_key_scanned);
return getString(R.string.VerifyIdentityActivity_get_my_key_scanned);
}
@Override
@@ -166,21 +170,21 @@ public class VerifyIdentityActivity extends KeyVerifyingActivity {
@Override
protected String getNotVerifiedMessage() {
return getString(R.string.warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully);
return getString(R.string.VerifyIdentityActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully);
}
@Override
protected String getNotVerifiedTitle() {
return getString(R.string.not_verified_exclamation);
return getString(R.string.VerifyIdentityActivity_not_verified_exclamation);
}
@Override
protected String getVerifiedMessage() {
return getString(R.string.their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well);
return getString(R.string.VerifyIdentityActivity_their_key_is_correct_it_is_also_necessary_to_verify_your_key_with_them_as_well);
}
@Override
protected String getVerifiedTitle() {
return getString(R.string.verified_exclamation);
return getString(R.string.VerifyIdentityActivity_verified_exclamation);
}
}

View File

@@ -107,15 +107,15 @@ public class VerifyImportedIdentityActivity extends KeyScanningActivity {
public void onClick(View v) {
if (identityName.getText() == null || identityName.getText().length() == 0) {
Toast.makeText(VerifyImportedIdentityActivity.this,
R.string.you_must_specify_a_name_for_this_contact_exclamation,
R.string.VerifyImportedIdentityActivity_you_must_specify_a_name_for_this_contact_exclamation,
Toast.LENGTH_LONG);
return;
}
AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(VerifyImportedIdentityActivity.this);
dialogBuilder.setTitle(R.string.save_identity_key_question);
dialogBuilder.setTitle(R.string.VerifyImportedIdentityActivity_save_identity_key_question);
dialogBuilder.setIcon(android.R.drawable.ic_dialog_info);
dialogBuilder.setMessage(String.format(getString(R.string.are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s), identityName.getText()));
dialogBuilder.setMessage(String.format(getString(R.string.VerifyImportedIdentityActivity_are_you_sure_that_you_would_like_to_mark_this_as_a_valid_identity_key_for_all_future_correspondence_with_s), identityName.getText()));
dialogBuilder.setCancelable(true);
dialogBuilder.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
@@ -124,8 +124,8 @@ public class VerifyImportedIdentityActivity extends KeyScanningActivity {
} catch (InvalidKeyException ike) {
Log.w("VerifiedButtonListener", ike);
Dialogs.displayAlert(VerifyImportedIdentityActivity.this,
getString(R.string.error_saving_identity_key_exclamation),
getString(R.string.this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database),
getString(R.string.VerifyImportedIdentityActivity_error_saving_identity_key_exclamation),
getString(R.string.VerifyImportedIdentityActivity_this_identity_key_or_an_identity_key_with_the_same_name_already_exists_please_edit_your_key_database),
android.R.drawable.ic_dialog_alert);
return;
}
@@ -140,12 +140,12 @@ public class VerifyImportedIdentityActivity extends KeyScanningActivity {
@Override
protected String getScanString() {
return getString(R.string.scan_to_compare);
return getString(R.string.VerifyImportedIdentityActivity_scan_to_compare);
}
@Override
protected String getDisplayString() {
return getString(R.string.get_scanned_to_compare);
return getString(R.string.VerifyImportedIdentityActivity_get_scanned_to_compare);
}
@Override
@@ -160,21 +160,21 @@ public class VerifyImportedIdentityActivity extends KeyScanningActivity {
@Override
protected String getNotVerifiedMessage() {
return getString(R.string.warning_the_scanned_key_does_not_match_exclamation);
return getString(R.string.VerifyImportedIdentityActivity_warning_the_scanned_key_does_not_match_exclamation);
}
@Override
protected String getNotVerifiedTitle() {
return getString(R.string.not_verified_exclamation2);
return getString(R.string.VerifyImportedIdentityActivity_not_verified_exclamation);
}
@Override
protected String getVerifiedMessage() {
return getString(R.string.the_scanned_key_matches_exclamation);
return getString(R.string.VerifyImportedIdentityActivity_the_scanned_key_matches_exclamation);
}
@Override
protected String getVerifiedTitle() {
return getString(R.string.verified_exclamation2);
return getString(R.string.VerifyImportedIdentityActivity_verified_exclamation);
}
}

View File

@@ -64,9 +64,10 @@ public class VerifyKeysActivity extends KeyVerifyingActivity {
protected void handleVerified() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setIcon(android.R.drawable.ic_dialog_alert);
builder.setTitle(R.string.mark_session_verified_question);
builder.setMessage(R.string.are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified);
builder.setPositiveButton(R.string.mark_verified2, new DialogInterface.OnClickListener() {
builder.setTitle(R.string.VerifyKeysActivity_mark_session_verified_question);
builder.setMessage(R.string.VerifyKeysActivity_are_you_sure_that_you_have_validated_these_fingerprints_and_would_like_to_mark_this_session_as_verified);
builder.setPositiveButton(R.string.VerifyKeysActivity_mark_verified,
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
SessionRecord sessionRecord = new SessionRecord(VerifyKeysActivity.this, masterSecret,
@@ -77,7 +78,7 @@ public class VerifyKeysActivity extends KeyVerifyingActivity {
}
});
builder.setNegativeButton(R.string.cancel, null);
builder.setNegativeButton(android.R.string.cancel, null);
builder.show();
}
@@ -99,12 +100,12 @@ public class VerifyKeysActivity extends KeyVerifyingActivity {
@Override
protected String getDisplayString() {
return getString(R.string.get_my_fingerprint_scanned);
return getString(R.string.VerifyKeysActivity_get_my_fingerprint_scanned);
}
@Override
protected String getScanString() {
return getString(R.string.scan_their_fingerprint);
return getString(R.string.VerifyKeysActivity_scan_their_fingerprint);
}
@Override
@@ -119,22 +120,22 @@ public class VerifyKeysActivity extends KeyVerifyingActivity {
@Override
protected String getNotVerifiedMessage() {
return getString(R.string.warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2);
return getString(R.string.VerifyKeysActivity_warning_the_scanned_key_does_not_match_please_check_the_fingerprint_text_carefully2);
}
@Override
protected String getNotVerifiedTitle() {
return getString(R.string.not_verified_exclamation3);
return getString(R.string.VerifyKeysActivity_not_verified_exclamation);
}
@Override
protected String getVerifiedMessage() {
return getString(R.string.their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well);
return getString(R.string.VerifyKeysActivity_their_key_is_correct_it_is_also_necessary_to_get_your_fingerprint_scanned_as_well);
}
@Override
protected String getVerifiedTitle() {
return getString(R.string.verified_exclamation3);
return getString(R.string.VerifyKeysActivity_verified_exclamation);
}
private class FingerprintKey implements SerializableKey {

View File

@@ -47,7 +47,7 @@ public class ViewIdentityActivity extends KeyScanningActivity {
private void initializeFingerprint() {
if (identityKey == null) {
identityFingerprint.setText(R.string.you_do_not_have_an_identity_key2);
identityFingerprint.setText(R.string.ViewIdentityActivity_you_do_not_have_an_identity_key);
} else {
identityFingerprint.setText(identityKey.getFingerprint());
}
@@ -79,12 +79,12 @@ public class ViewIdentityActivity extends KeyScanningActivity {
@Override
protected String getScanString() {
return getString(R.string.scan_to_compare2);
return getString(R.string.ViewIdentityActivity_scan_to_compare);
}
@Override
protected String getDisplayString() {
return getString(R.string.get_scanned_to_compare2);
return getString(R.string.ViewIdentityActivity_get_scanned_to_compare);
}
@Override
@@ -99,21 +99,21 @@ public class ViewIdentityActivity extends KeyScanningActivity {
@Override
protected String getNotVerifiedMessage() {
return getString(R.string.warning_the_scanned_key_does_not_match_exclamation2);
return getString(R.string.ViewIdentityActivity_warning_the_scanned_key_does_not_match_exclamation);
}
@Override
protected String getNotVerifiedTitle() {
return getString(R.string.not_verified_exclamation4);
return getString(R.string.ViewIdentityActivity_not_verified_exclamation);
}
@Override
protected String getVerifiedMessage() {
return getString(R.string.the_scanned_key_matches_exclamation2);
return getString(R.string.ViewIdentityActivity_the_scanned_key_matches_exclamation);
}
@Override
protected String getVerifiedTitle() {
return getString(R.string.verified_exclamation4);
return getString(R.string.ViewIdentityActivity_verified_exclamation);
}
}

Some files were not shown because too many files have changed in this diff Show More