Remove unused strings, fix some lint errors, fix some language confusions

This commit is contained in:
Dominik Schürmann 2014-04-18 20:41:39 +02:00
parent 4a21428e07
commit 19d3fcec7a
23 changed files with 29 additions and 193 deletions

View File

@ -83,6 +83,7 @@ android {
// Do not abort build if lint finds errors
lintOptions {
abortOnError false
checkAllWarnings true
htmlReport true
htmlOutput file("lint-report.html")
}

View File

@ -227,7 +227,7 @@ public class KeychainDatabase extends SQLiteOpenHelper {
@Override
public void onCreate(SQLiteDatabase db) {
// should never happen
assert false;
throw new AssertionError();
}
@Override
public void onDowngrade(SQLiteDatabase db, int old, int nu) {

View File

@ -78,7 +78,7 @@ public class DrawerActivity extends ActionBarActivity {
}
NavItem mItemIconTexts[] = new NavItem[]{
new NavItem("fa-user", getString(R.string.nav_contacts)),
new NavItem("fa-user", getString(R.string.nav_keys)),
new NavItem("fa-lock", getString(R.string.nav_encrypt)),
new NavItem("fa-unlock", getString(R.string.nav_decrypt)),
new NavItem("fa-android", getString(R.string.nav_apps))};

View File

@ -335,7 +335,7 @@ public class EncryptFileFragment extends Fragment {
sendFileIntent.setType("*/*");
sendFileIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse(mOutputFilename));
startActivity(Intent.createChooser(sendFileIntent,
getString(R.string.title_send_file)));
getString(R.string.title_share_file)));
}
}
}

View File

@ -240,7 +240,7 @@ public class EncryptMessageFragment extends Fragment {
sendIntent.putExtra(Intent.EXTRA_TEXT, output);
startActivity(Intent.createChooser(sendIntent,
getString(R.string.title_send_email)));
getString(R.string.title_share_with)));
}
}
}

View File

@ -612,7 +612,7 @@ public class KeyListFragment extends Fragment
if (mCursor.getInt(KeyListFragment.INDEX_HAS_ANY_SECRET) != 0) {
{ // set contact count
int num = mCursor.getCount();
String contactsTotal = getResources().getQuantityString(R.plurals.n_contacts, num, num);
String contactsTotal = getResources().getQuantityString(R.plurals.n_keys, num, num);
holder.mCount.setText(contactsTotal);
holder.mCount.setVisibility(View.VISIBLE);
}

View File

@ -67,7 +67,7 @@ public class PreferencesActivity extends PreferenceActivity {
mKeyServerPreference = (PreferenceScreen) findPreference(Constants.Pref.KEY_SERVERS);
String servers[] = sPreferences.getKeyServers();
mKeyServerPreference.setSummary(getResources().getQuantityString(R.plurals.n_key_servers,
mKeyServerPreference.setSummary(getResources().getQuantityString(R.plurals.n_keyservers,
servers.length, servers.length));
mKeyServerPreference
.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@ -138,7 +138,7 @@ public class PreferencesActivity extends PreferenceActivity {
.getStringArrayExtra(PreferencesKeyServerActivity.EXTRA_KEY_SERVERS);
sPreferences.setKeyServers(servers);
mKeyServerPreference.setSummary(getResources().getQuantityString(
R.plurals.n_key_servers, servers.length, servers.length));
R.plurals.n_keyservers, servers.length, servers.length));
break;
}
@ -175,7 +175,7 @@ public class PreferencesActivity extends PreferenceActivity {
mKeyServerPreference = (PreferenceScreen) findPreference(Constants.Pref.KEY_SERVERS);
String servers[] = sPreferences.getKeyServers();
mKeyServerPreference.setSummary(getResources().getQuantityString(R.plurals.n_key_servers,
mKeyServerPreference.setSummary(getResources().getQuantityString(R.plurals.n_keyservers,
servers.length, servers.length));
mKeyServerPreference
.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@ -201,7 +201,7 @@ public class PreferencesActivity extends PreferenceActivity {
.getStringArrayExtra(PreferencesKeyServerActivity.EXTRA_KEY_SERVERS);
sPreferences.setKeyServers(servers);
mKeyServerPreference.setSummary(getResources().getQuantityString(
R.plurals.n_key_servers, servers.length, servers.length));
R.plurals.n_keyservers, servers.length, servers.length));
break;
}

View File

@ -74,7 +74,7 @@ public class PreferencesKeyServerActivity extends ActionBarActivity implements O
mTitle = (TextView) findViewById(R.id.title);
mSummary = (TextView) findViewById(R.id.summary);
mTitle.setText(R.string.label_key_servers);
mTitle.setText(R.string.label_keyservers);
mEditors = (ViewGroup) findViewById(R.id.editors);
mAdd = findViewById(R.id.add);

View File

@ -17,6 +17,7 @@
package org.sufficientlysecure.keychain.ui.dialog;
import android.annotation.TargetApi;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
@ -308,6 +309,7 @@ public class CreateKeyDialogFragment extends DialogFragment {
}
}
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
private void replaceArrayAdapterContent(ArrayAdapter<CharSequence> arrayAdapter, int stringArrayResourceId) {
final String[] spinnerValuesStringArray = getResources().getStringArray(stringArrayResourceId);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2007 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="100%p" android:toXDelta="0" android:duration="500"/>
<alpha android:fromAlpha="1.0" android:toAlpha="1.0" android:duration="500" />
</set>

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2007 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="-100%p" android:duration="500"/>
<alpha android:fromAlpha="1.0" android:toAlpha="1.0" android:duration="500" />
</set>

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2007 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="-100%p" android:toXDelta="0" android:duration="500"/>
<alpha android:fromAlpha="1.0" android:toAlpha="1.0" android:duration="500" />
</set>

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2007 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<set xmlns:android="http://schemas.android.com/apk/res/android">
<translate android:fromXDelta="0" android:toXDelta="100%p" android:duration="500"/>
<alpha android:fromAlpha="1.0" android:toAlpha="1.0" android:duration="500" />
</set>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -6,7 +6,7 @@
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_height="wrap_content"
android:padding="16dp"
android:orientation="vertical">

View File

@ -18,12 +18,12 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="contact count"
android:text="key count"
android:id="@+id/contacts_num"
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_marginRight="10px"
android:layout_marginRight="8dp"
android:visibility="visible"
android:textColor="@android:color/darker_gray" />

View File

@ -23,7 +23,7 @@
android:layout_centerVertical="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_marginRight="10px"
android:layout_marginRight="8dp"
android:visibility="visible"
android:textColor="@android:color/darker_gray" />

View File

@ -2,8 +2,6 @@
<resources>
<!-- title -->
<string name="title_manage_public_keys">Contacts</string>
<string name="title_manage_secret_keys">Secret Keys</string>
<string name="title_select_recipients">Select Public Key</string>
<string name="title_select_secret_key">Select Secret Key</string>
<string name="title_encrypt">Encrypt</string>
@ -16,17 +14,15 @@
<string name="title_key_server_preference">Keyserver Preference</string>
<string name="title_change_passphrase">Change Passphrase</string>
<string name="title_set_passphrase">Set Passphrase</string>
<string name="title_send_email">"Send Mail…"</string>
<string name="title_send_file">"Send File…"</string>
<string name="title_share_with">Share with…</string>
<string name="title_share_file">Share file with…</string>
<string name="title_encrypt_to_file">Encrypt To File</string>
<string name="title_decrypt_to_file">Decrypt To File</string>
<string name="title_import_keys">Import Keys</string>
<string name="title_export_key">Export Key</string>
<string name="title_export_keys">Export Keys</string>
<string name="title_key_not_found">Key Not Found</string>
<string name="title_key_server_query">Query Keyserver</string>
<string name="title_send_key">Upload to Keyserver</string>
<string name="title_unknown_signature_key">Unknown Signature Key</string>
<string name="title_certify_key">Certify Key</string>
<string name="title_key_details">Key Details</string>
<string name="title_help">Help</string>
@ -47,12 +43,9 @@
<string name="section_decrypt_verify">Decrypt and Verify</string>
<!-- button -->
<string name="btn_sign">Sign</string>
<string name="btn_certify">Certify</string>
<string name="btn_decrypt">Decrypt</string>
<string name="btn_decrypt_verify">Decrypt and Verify</string>
<string name="btn_decrypt_verify_clipboard">From Clipboard</string>
<string name="btn_select_encrypt_keys">Select Recipients</string>
<string name="btn_encrypt_file">Encrypt File</string>
<string name="btn_save">Save</string>
<string name="btn_do_not_save">Cancel</string>
@ -61,7 +54,6 @@
<string name="btn_okay">Okay</string>
<string name="btn_change_passphrase">Change New Passphrase</string>
<string name="btn_set_passphrase">Set New Passphrase</string>
<string name="btn_search">Search</string>
<string name="btn_export_to_server">Upload To Keyserver</string>
<string name="btn_next">Next</string>
<string name="btn_back">Back</string>
@ -76,7 +68,6 @@
<string name="menu_help">Help</string>
<string name="menu_import_from_file">Import from file</string>
<string name="menu_import_from_qr_code">Import from QR Code</string>
<string name="menu_import">Import</string>
<string name="menu_import_from_nfc">Import from NFC</string>
<string name="menu_export_key">Export to file</string>
<string name="menu_delete_key">Delete key</string>
@ -96,7 +87,6 @@
<string name="menu_share_qr_code_fingerprint">with QR Code</string>
<string name="menu_share_nfc">with NFC</string>
<string name="menu_copy_to_clipboard">Copy to clipboard</string>
<string name="menu_sign_key">Sign key</string>
<string name="menu_beam_preferences">Beam settings</string>
<string name="menu_key_edit_cancel">Cancel</string>
<string name="menu_encrypt_to">Encrypt to…</string>
@ -125,7 +115,7 @@
<string name="label_message_compression">Message Compression</string>
<string name="label_file_compression">File Compression</string>
<string name="label_force_v3_signature">Force old OpenPGPv3 Signatures</string>
<string name="label_key_servers">Keyservers</string>
<string name="label_keyservers">Keyservers</string>
<string name="label_key_id">Key ID</string>
<string name="label_creation">Creation</string>
<string name="label_expiry">Expiry</string>
@ -148,25 +138,21 @@
<string name="user_id_no_name">&lt;no name&gt;</string>
<string name="none">&lt;none&gt;</string>
<string name="no_key">&lt;no key&gt;</string>
<string name="no_email">&lt;No Email&gt;</string>
<string name="unknown_status"></string>
<string name="can_encrypt">can encrypt</string>
<string name="can_sign">can sign</string>
<string name="expired">expired</string>
<string name="revoked">revoked</string>
<string name="user_id">User ID</string>
<plurals name="n_contacts">
<item quantity="one">1 contact</item>
<item quantity="other">%d contacts</item>
<plurals name="n_keys">
<item quantity="one">1 key</item>
<item quantity="other">%d keys</item>
</plurals>
<plurals name="n_key_servers">
<plurals name="n_keyservers">
<item quantity="one">%d keyserver</item>
<item quantity="other">%d keyservers</item>
</plurals>
<string name="fingerprint">Fingerprint:</string>
<string name="secret_key">Secret Key:</string>
<!-- choice -->
@ -199,7 +185,6 @@
<!-- sentences -->
<string name="wrong_passphrase">Wrong passphrase.</string>
<string name="using_clipboard_content">Using clipboard content.</string>
<string name="set_a_passphrase">Set a passphrase first.</string>
<string name="no_filemanager_installed">No compatible file manager installed.</string>
<string name="passphrases_do_not_match">The passphrases didn\'t match.</string>
@ -217,12 +202,10 @@
<string name="specify_file_to_encrypt_to">Please specify which file to encrypt to.\nWARNING: File will be overwritten if it exists.</string>
<string name="specify_file_to_decrypt_to">Please specify which file to decrypt to.\nWARNING: File will be overwritten if it exists.</string>
<string name="specify_file_to_export_to">Please specify which file to export to.\nWARNING: File will be overwritten if it exists.</string>
<string name="specify_file_to_export_secret_keys_to">Please specify which file to export to.\nWARNING: You are about to export SECRET keys.\nWARNING: File will be overwritten if it exists.</string>
<string name="key_deletion_confirmation">Do you really want to delete the key \'%s\'?\nYou can\'t undo this!</string>
<string name="key_deletion_confirmation_multi">Do you really want to delete all selected public keys?\nYou can\'t undo this!</string>
<string name="secret_key_deletion_confirmation">Do you really want to delete the SECRET key \'%s\'?\nYou can\'t undo this!</string>
<string name="ask_save_changed_key">You have made changes to the keyring, would you like to save it?</string>
<string name="ask_empty_id_ok">"You have added an empty user ID, are you sure you want to continue?"</string>
<string name="ask_empty_id_ok">You have added an empty user ID, are you sure you want to continue?</string>
<string name="public_key_deletetion_confirmation">Do you really want to delete the public key \'%s\'?\nYou can\'t undo this!</string>
<string name="also_export_secret_keys">Also export secret keys?</string>
@ -256,7 +239,6 @@
<item quantity="other">Found %d keys.</item>
</plurals>
<plurals name="bad_keys_encountered">
<item quantity="one">%d bad secret key ignored. Perhaps you exported with the option\n --export-secret-subkeys\nMake sure you export with\n --export-secret-keys\ninstead.</item>
<item quantity="other">%d bad secret keys ignored. Perhaps you exported with the option\n --export-secret-subkeys\nMake sure you export with\n --export-secret-keys\ninstead.</item>
@ -279,32 +261,22 @@
<string name="error_file_delete_failed">deleting \'%s\' failed</string>
<string name="error_file_not_found">file not found</string>
<string name="error_no_secret_key_found">no suitable secret key found</string>
<string name="error_no_known_encryption_found">no known kind of encryption found</string>
<string name="error_external_storage_not_ready">external storage not ready</string>
<string name="error_invalid_email">invalid email \'%s\'</string>
<string name="error_key_size_minimum512bit">key size must be at least 512bit</string>
<string name="error_master_key_must_not_be_el_gamal">the master key cannot be an ElGamal key</string>
<string name="error_unknown_algorithm_choice">unknown algorithm choice</string>
<string name="error_user_id_needs_a_name">you need to specify a name</string>
<string name="error_user_id_no_email">no email found</string>
<string name="error_user_id_needs_an_email_address">you need to specify an email address</string>
<string name="error_key_needs_a_user_id">need at least one user id</string>
<string name="error_main_user_id_must_not_be_empty">main user id must not be empty</string>
<string name="error_key_needs_master_key">need at least a master key</string>
<string name="error_no_encryption_keys_or_passphrase">no encryption keys or passphrase given</string>
<string name="error_no_signature_passphrase">no passphrase given</string>
<string name="error_no_signature_key">no signature key given</string>
<string name="error_invalid_data">not valid encryption data</string>
<string name="error_corrupt_data">corrupt data</string>
<string name="error_integrity_check_failed">integrity check failed! Data has been modified!</string>
<string name="error_no_symmetric_encryption_packet">couldn\'t find a packet with symmetric encryption</string>
<string name="error_wrong_passphrase">wrong passphrase</string>
<string name="error_saving_keys">error saving some keys</string>
<string name="error_could_not_extract_private_key">could not extract private key</string>
<string name="error_expiry_must_come_after_creation">expiry date must come after creation date</string>
<string name="error_save_first">please save the keyring first</string>
<string name="error_can_not_delete_contact">you can not delete this contact because it is your own.</string>
<string name="error_can_not_delete_contacts">you can not delete the following contacts because they are your own:\n%s</string>
<!-- errors without preceeding Error: -->
<string name="error_only_files_are_supported">Direct binary data without actual file in filesystem is not supported. This is only supported by ACTION_ENCRYPT_STREAM_AND_RETURN.</string>
@ -316,10 +288,6 @@
<string name="error_keyserver_too_many_responses">Too many responses</string>
<string name="error_import_file_no_content">File has no content</string>
<string name="error_generic_report_bug">A generic error occurred, please create a new bug report for OpenKeychain.</string>
<plurals name="error_can_not_delete_info">
<item quantity="one">Please delete it from the \'My Keys\' screen!</item>
<item quantity="other">Please delete them from the \'My Keys\' screen!</item>
</plurals>
<plurals name="error_import_non_pgp_part">
<item quantity="one">part of the loaded file is a valid OpenPGP object but not a OpenPGP key</item>
<item quantity="other">parts of the loaded file are valid OpenPGP objects but not OpenPGP keys</item>
@ -343,7 +311,6 @@
<string name="progress_importing">importing…</string>
<string name="progress_exporting">exporting…</string>
<string name="progress_building_key">building key…</string>
<string name="progress_preparing_master_key">preparing master key…</string>
<string name="progress_certifying_master_key">certifying master key…</string>
<string name="progress_building_master_key">building master ring…</string>
<string name="progress_adding_sub_keys">adding sub keys…</string>
@ -374,7 +341,6 @@
<string name="progress_decompressing_data">decompressing data…</string>
<string name="progress_verifying_integrity">verifying integrity…</string>
<string name="progress_deleting_securely">deleting \'%s\' securely…</string>
<string name="progress_querying">querying…</string>
<!-- action strings -->
<string name="hint_public_keys">Search Public Keys</string>
@ -409,7 +375,6 @@
<!-- Import -->
<string name="import_import">Import selected keys</string>
<string name="import_sign_and_upload">Import, Sign, and upload selected keys</string>
<string name="import_from_clipboard">Import from clipboard</string>
<plurals name="import_qr_code_missing">
@ -480,17 +445,16 @@
<!-- Key view -->
<string name="key_view_action_edit">Edit this key</string>
<string name="key_view_action_encrypt">Encrypt to this contact</string>
<string name="key_view_action_certify">Certify this contact\'s key</string>
<string name="key_view_action_encrypt">Encrypt with this key</string>
<string name="key_view_action_certify">Certify this key</string>
<string name="key_view_tab_main">Info</string>
<string name="key_view_tab_certs">Certifications</string>
<!-- Navigation Drawer -->
<string name="nav_contacts">Keys</string>
<string name="nav_keys">Keys</string>
<string name="nav_encrypt">Sign and Encrypt</string>
<string name="nav_decrypt">Decrypt and Verify</string>
<string name="nav_import">Import Keys</string>
<string name="nav_secret_keys">My Keys</string>
<string name="nav_apps">Registered Apps</string>
<string name="drawer_open">Open navigation drawer</string>
<string name="drawer_close">Close navigation drawer</string>
@ -505,24 +469,17 @@
<string name="decrypt_content_edit_text_hint">Enter ciphertext here to decrypt and/or verify…</string>
<!-- unsorted -->
<string name="show_unknown_signatures">Show unknown signatures</string>
<string name="section_signer_id">Signer</string>
<string name="section_cert">Certificate Details</string>
<string name="label_user_id">User ID</string>
<string name="label_subkey_rank">Subkey Rank</string>
<string name="unknown_uid"><![CDATA[<unknown>]]></string>
<string name="empty_certs">No certificates for this key</string>
<string name="section_uids_to_sign">User IDs to sign</string>
<string name="progress_re_adding_certs">Reapplying certificates</string>
<string name="certs_list_known_secret">Show by known secret keys</string>
<string name="certs_list_known">Show by known public keys</string>
<string name="certs_list_all">Show all certificates</string>
<string name="cert_default">default</string>
<string name="cert_none">none</string>
<string name="cert_casual">casual</string>
<string name="cert_positive">positive</string>
<string name="cert_revoke">revoke</string>
<string name="never">never</string>
<string name="help_tab_wot">Web of Trust</string>
<string name="cert_verify_ok">ok</string>
<string name="cert_verify_failed">failed!</string>

View File

@ -27,6 +27,6 @@
<PreferenceScreen
android:key="keyServers"
android:persistent="false"
android:title="@string/label_key_servers" />
android:title="@string/label_keyservers" />
</PreferenceCategory>
</PreferenceScreen>

View File

@ -1,22 +0,0 @@
<!--
Copyright (C) 2010-2014 Thialfihar <thi@thialfihar.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:hint="@string/hint_public_keys"
android:label="@string/app_name" >
</searchable>

View File

@ -1,22 +0,0 @@
<!--
Copyright (C) 2010-2014 Thialfihar <thi@thialfihar.org>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
-->
<searchable xmlns:android="http://schemas.android.com/apk/res/android"
android:hint="@string/hint_secret_keys"
android:label="@string/app_name" >
</searchable>