auto import from //depot/cupcake/@132589
The Android Open Source Project [Tue, 3 Mar 2009 22:04:34 +0000 (14:04 -0800)]
res/values-es/strings.xml
res/values-fr/strings.xml
res/values-it/strings.xml
res/values-ja/strings.xml
res/values-nl/strings.xml
res/values-pl/strings.xml
src/com/android/phone/BluetoothHeadsetService.java
src/com/android/phone/CallNotifier.java
src/com/android/phone/DTMFTwelveKeyDialer.java
src/com/android/phone/InCallScreen.java
src/com/android/phone/Ringer.java

index 2de1ab4..99c0242 100644 (file)
@@ -17,7 +17,7 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="contactsIconLabel">"Contactos"</string>
     <string name="contactsFavoritesLabel">"Favoritos"</string>
-    <string name="dialerIconLabel">"Llamar"</string>
+    <string name="dialerIconLabel">"Marcación"</string>
     <string name="emergencyDialerIconLabel">"Marcación de emergencia"</string>
     <string name="phoneIconLabel">"Teléfono"</string>
     <string name="recentCallsIconLabel">"Registro de llamadas"</string>
@@ -30,7 +30,7 @@
     <string name="callFailed_congestion">"Red ocupada"</string>
     <string name="callFailed_noSignal">"No hay señal"</string>
     <string name="callFailed_limitExceeded">"Se ha superado el límite de ACM."</string>
-    <string name="callFailed_powerOff">"Señal móvil desactivada"</string>
+    <string name="callFailed_powerOff">"Radio desconectada"</string>
     <string name="callFailed_simError">"No hay tarjeta SIM o se ha producido un error de tarjeta SIM."</string>
     <string name="callFailed_outOfService">"Área fuera de servicio"</string>
     <string name="callFailed_fdn_only">"Las llamadas salientes están restringidas por FDN."</string>
@@ -54,8 +54,8 @@
     <string name="menu_answerAndHold">"Retener llamada actual"\n"y responder"</string>
     <string name="menu_answerAndEnd">"Finalizar llamada actual"\n"y responder"</string>
     <string name="ok">"Aceptar"</string>
-    <string name="menuButtonHint">"Pulsa la tecla de menú para ver las opciones de llamada."</string>
-    <string name="menuButtonKeyboardDialHint">"Pulsa la tecla de menú para ver las opciones de llamada. Utiliza el teclado para marcar"</string>
+    <string name="menuButtonHint">"Pulsa MENU para ver las opciones de llamada."</string>
+    <string name="menuButtonKeyboardDialHint">"Pulsa MENU para ver las opciones de llamada. \225 Utiliza el teclado para marcar"</string>
     <string name="wait_prompt_str">"¿Deseas enviar los siguientes tonos?"\n</string>
     <string name="send_button">"Enviar"</string>
     <string name="wild_prompt_str">"Sustituir el carácter comodín por"</string>
@@ -72,7 +72,7 @@
     <string name="verifyFailed">"Los códigos PIN de tarjeta SIM introducidos no coinciden. Inténtalo de nuevo."</string>
     <string name="enterPuk">"Introduce el código PUK para desbloquear la tarjeta SIM."</string>
     <string name="badPuk">"El código PUK es incorrecto."</string>
-    <string name="buttonTxtContinue">"Seguir"</string>
+    <string name="buttonTxtContinue">"Continuar"</string>
     <string name="puk_unlocked">"La tarjeta SIM se ha desbloqueado. El teléfono se está desbloqueando..."</string>
     <string name="label_ndp">"PIN de desbloqueo de red de tarjeta SIM"</string>
     <string name="sim_ndp_unlock_text">"Desbloquear"</string>
     <string name="updating_settings">"Actualizando configuración..."</string>
     <string name="response_error">"Respuesta inesperada de la red,"</string>
     <string name="exception_error">"Error en la tarjeta SIM o en la red."</string>
-    <string name="radio_off_error">"Activar la señal móvil antes de ver esta configuración"</string>
+    <string name="radio_off_error">"Activar la radio antes de ver esta configuración"</string>
     <string name="close_dialog">"Aceptar"</string>
     <string name="enable">"Habilitar"</string>
     <string name="disable">"Inhabilitar"</string>
     <string name="registration_done">"Registrado en la red"</string>
     <string name="sum_carrier_select">"Seleccionar un operador de red"</string>
     <string name="sum_search_networks">"Buscar todas las redes disponibles"</string>
-    <string name="select_automatically">"Selección automática"</string>
+    <string name="select_automatically">"Seleccionar automáticamente"</string>
     <string name="sum_select_automatically">"Seleccionar la red preferida de forma automática"</string>
     <string name="register_automatically">"Registrándose de forma automática..."</string>
     <string name="roaming">"Itinerancia de datos"</string>
     <string name="sim_unlock_unlock_text">"Desbloquear"</string>
     <string name="sim_unlock_status_text">"Autenticando PIN..."</string>
     <string name="voicemail_settings_number_label">"Número del buzón de voz"</string>
-    <string name="card_title_dialing">"Llamando"</string>
+    <string name="card_title_dialing">"Llamando\205"</string>
     <string name="card_title_in_progress">"Llamada actual"</string>
     <string name="card_title_conf_call">"Conferencia telefónica"</string>
     <string name="card_title_incoming_call">"Llamada entrante"</string>
     <string name="notification_voicemail_no_vm_number">"Número del buzón de voz desconocido"</string>
     <string name="incall_error_power_off">"Para realizar una llamada, primero debes desactivar el modo Avión."</string>
     <string name="incall_error_emergency_only">"No se ha registrado en la red."</string>
-    <string name="incall_error_no_phone_number_supplied">"No se ha realizado la llamada; el número introducido no es válido."</string>
+    <string name="incall_error_no_phone_number_supplied">"No se ha enviado la llamada; el número introducido no es válido."</string>
     <string name="incall_error_call_failed">"La llamada no se ha enviado."</string>
     <string name="incall_status_dialed_mmi">"Iniciando secuencia MMI..."</string>
     <string name="incall_error_supp_service_unknown">"Servicio no admitido"</string>
     <string name="incall_error_supp_service_reject">"No se ha podido rechazar la llamada."</string>
     <string name="incall_error_supp_service_hangup">"No es posible finalizar las llamadas activas."</string>
     <string name="emergency_enable_radio_dialog_title">"Llamada de emergencia"</string>
-    <string name="emergency_enable_radio_dialog_message">"Activando señal móvil…"</string>
+    <string name="emergency_enable_radio_dialog_message">"Activando radio..."</string>
     <string name="emergency_enable_radio_dialog_retry">"Área fuera de servicio; reintentando..."</string>
-    <string name="dial_emergency_error">"No se ha realizado la llamada; <xliff:g id="NON_EMERGENCY_NUMBER">%s</xliff:g> no es un número de emergencia."</string>
+    <string name="dial_emergency_error">"No se ha enviado la llamada; <xliff:g id="NON_EMERGENCY_NUMBER">%s</xliff:g> no es un número de emergencia."</string>
     <string name="dial_emergency_empty_error">"La llamada no se ha enviado; marca un número de emergencia."</string>
     <string name="dialerKeyboardHintText">"Utilizar teclado para marcar"</string>
     <string name="dtmfDialpadHintText">"Teclado de tonos táctiles"</string>
index 63db6f6..d7032b2 100644 (file)
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="contactsIconLabel">"Contacts"</string>
     <string name="contactsFavoritesLabel">"Favoris"</string>
-    <string name="dialerIconLabel">"Appeler"</string>
+    <string name="dialerIconLabel">"Composer"</string>
     <string name="emergencyDialerIconLabel">"Appels d\'urgence"</string>
     <string name="phoneIconLabel">"Téléphone"</string>
     <string name="recentCallsIconLabel">"Appels"</string>
-    <string name="fdnListLabel">"Liste de numéros autorisés"</string>
+    <string name="fdnListLabel">"Liste des numérotations fixes"</string>
     <string name="unknown">"Inconnu"</string>
     <string name="private_num">"Numéro privé"</string>
     <string name="onHold">"En attente"</string>
     <string name="callFailed_limitExceeded">"Limite ACM dépassée"</string>
     <string name="callFailed_powerOff">"Radio désactivée"</string>
     <string name="callFailed_simError">"Aucune carte SIM ou erreur de carte SIM"</string>
-    <string name="callFailed_outOfService">"Hors zone de couverture"</string>
-    <string name="callFailed_fdn_only">"Les appels sortants sont restreints par la liste de numéros autorisés."</string>
+    <string name="callFailed_outOfService">"En dehors de la zone de couverture"</string>
+    <string name="callFailed_fdn_only">"Les appels sortants sont restreints par la numérotation fixe."</string>
     <string name="callFailed_cb_enabled">"Vous ne pouvez pas passer d\'appels sortants tant que l\'interdiction d\'appel est activée."</string>
     <string name="confCall">"Conférence téléphonique"</string>
     <string name="mmiStarted">"Le code MMI a été lancé."</string>
     <string name="ussdRunning">"Exécution du code USSD..."</string>
     <string name="mmiCancelled">"Code MMI annulé"</string>
     <string name="cancel">"Annuler"</string>
-    <string name="menu_speaker">"Ht. parleur"</string>
+    <string name="menu_speaker">"Haut-parleur"</string>
     <string name="menu_bluetooth">"Bluetooth"</string>
     <string name="menu_mute">"Muet"</string>
-    <string name="menu_hold">"En attente"</string>
+    <string name="menu_hold">"Mettre en attente"</string>
     <string name="menu_endCall">"Raccrocher"</string>
-    <string name="menu_swapCalls">"Permuter"</string>
-    <string name="menu_mergeCalls">"Fusionner"</string>
-    <string name="menu_addCall">"Ajouter"</string>
+    <string name="menu_swapCalls">"Changer les appels"</string>
+    <string name="menu_mergeCalls">"Fusionner les appels"</string>
+    <string name="menu_addCall">"Ajouter un appel"</string>
     <string name="menu_manageConference">"Gérer la conférence téléphonique"</string>
     <string name="menu_showDialpad">"Afficher le clavier"</string>
     <string name="menu_hideDialpad">"Masquer le clavier"</string>
@@ -55,7 +55,7 @@
     <string name="menu_answerAndEnd">"Terminer l\'appel en cours"\n"et répondre"</string>
     <string name="ok">"OK"</string>
     <string name="menuButtonHint">"Appuyez sur \"Menu\" pour afficher les options d\'appel."</string>
-    <string name="menuButtonKeyboardDialHint">"Appuyez sur \"Menu\" pour afficher les options d\'appel • Utilisez le clavier pour composer un numéro"</string>
+    <string name="menuButtonKeyboardDialHint">"Appuyez sur \"Menu\" pour afficher les options d\'appel \225 Utilisez le clavier pour composer un numéro"</string>
     <string name="wait_prompt_str">"Envoyer les tonalités suivantes ?"\n</string>
     <string name="send_button">"Envoyer"</string>
     <string name="wild_prompt_str">"Remplacer le caractère générique par"</string>
     <string name="sum_cfu_disabled">"Désactivé"</string>
     <string name="labelCFB">"Transférer quand la ligne est occupée"</string>
     <string name="messageCFB">"Numéro de renvoi lorsque la ligne est occupée"</string>
-    <string name="sum_cfb_enabled">"Transfert vers le {0}"</string>
+    <string name="sum_cfb_enabled">"Transfert vers le \\\\{0\\\\}"</string>
     <string name="sum_cfb_disabled">"Désactivé"</string>
     <string name="labelCFNRy">"Transférer lorsque vous ne répondez pas"</string>
     <string name="messageCFNRy">"Numéro de renvoi lorsque vous ne répondez pas"</string>
-    <string name="sum_cfnry_enabled">"Transfert vers le {0}"</string>
+    <string name="sum_cfnry_enabled">"Transfert vers le \\\\{0\\\\}"</string>
     <string name="sum_cfnry_disabled">"Désactivé"</string>
-    <string name="labelCFNRc">"Transférer si injoignable"</string>
-    <string name="messageCFNRc">"Numéro de renvoi si injoignable"</string>
+    <string name="labelCFNRc">"Transférer lorsque vous êtes injoignable"</string>
+    <string name="messageCFNRc">"Numéro de renvoi lorsque vous n\'êtes pas joignable"</string>
     <string name="sum_cfnrc_enabled">"Transfert vers le {0}"</string>
     <string name="sum_cfnrc_disabled">"Désactivé"</string>
     <string name="updating_title">"Paramètres d\'appel"</string>
     <string name="vm_changed">"Le numéro de messagerie vocale a été modifié."</string>
     <string name="vm_change_failed">"Échec de la modification du numéro de messagerie vocale."</string>
     <string name="no_change">"Aucune modification n\'a été apportée."</string>
-    <string name="sum_voicemail">"Définir numéro messagerie vocale"</string>
+    <string name="sum_voicemail">"Définir le numéro de la messagerie vocale"</string>
     <string name="mobile_networks">"Paramètres du réseau mobile"</string>
     <string name="label_available">"Réseaux disponibles"</string>
     <string name="load_networks_progress">"Recherche..."</string>
     <string name="sum_carrier_select">"Choisir un opérateur réseau"</string>
     <string name="sum_search_networks">"Chercher tous les réseaux disponibles"</string>
     <string name="select_automatically">"Sélectionner automatiquement"</string>
-    <string name="sum_select_automatically">"Sélectionner automatiquement"</string>
+    <string name="sum_select_automatically">"Sélectionner automatiquement le réseau préféré"</string>
     <string name="register_automatically">"Enregistrement automatique..."</string>
     <string name="roaming">"Itinérance des données"</string>
     <string name="roaming_enable">"Se connecter aux services de données lors de l\'itinérance"</string>
     <string name="roaming_reenable_message">"Vous avez été déconnecté car vous avez quitté votre réseau alors que l\'itinérance des données était désactivée."</string>
     <string name="roaming_turn_it_on_button">"Activer"</string>
     <string name="roaming_warning">"Autoriser l\'itinérance des données ? Des frais d\'itinérance importants peuvent s\'appliquer !"</string>
-    <string name="prefer_2g">"Uniquement les réseaux 2G"</string>
+    <string name="prefer_2g">"Utiliser uniquement les réseaux 2G"</string>
     <string name="prefer_2g_summary">"Économise la batterie"</string>
-    <string name="fdn">"Numéros autorisés"</string>
-    <string name="manage_fdn_list">"Liste de numéros autorisés"</string>
-    <string name="fdn_activation">"Activation des numéros autorisés"</string>
-    <string name="fdn_enabled">"La liste de numéros autorisés est activée."</string>
-    <string name="fdn_disabled">"La liste de numéros autorisés est désactivée."</string>
-    <string name="enable_fdn">"Activer les numéros autorisés"</string>
-    <string name="disable_fdn">"Désactiver les numéros autorisés"</string>
+    <string name="fdn">"Numérotation fixe"</string>
+    <string name="manage_fdn_list">"Liste des numérotations fixes"</string>
+    <string name="fdn_activation">"Activation de la numérotation fixe"</string>
+    <string name="fdn_enabled">"La numérotation fixe est activée."</string>
+    <string name="fdn_disabled">"La numérotation fixe est désactivée."</string>
+    <string name="enable_fdn">"Activer la numérotation fixe"</string>
+    <string name="disable_fdn">"Désactiver la numérotation fixe"</string>
     <string name="change_pin2">"Modifier le code PIN2"</string>
-    <string name="enable_fdn_ok">"Désactiver les numéros autorisés"</string>
-    <string name="disable_fdn_ok">"Activer les numéros autorisés"</string>
-    <string name="sum_fdn">"Gérer la liste de numéros autorisés"</string>
-    <string name="sum_fdn_change_pin">"Modifier le code PIN pour l\'accès aux numéros autorisés"</string>
+    <string name="enable_fdn_ok">"Désactiver la numérotation fixe"</string>
+    <string name="disable_fdn_ok">"Activer la numérotation fixe"</string>
+    <string name="sum_fdn">"Gérer la numérotation fixe"</string>
+    <string name="sum_fdn_change_pin">"Modifier le code PIN pour l\'accès à la numérotation fixe"</string>
     <string name="sum_fdn_manage_list">"Gérer la liste des numéros de téléphone"</string>
     <string name="menu_add">"Ajouter un contact"</string>
     <string name="menu_edit">"Modifier le contact"</string>
     <string name="name">"Nom"</string>
     <string name="number">"Numéro"</string>
     <string name="save">"Enregistrer"</string>
-    <string name="add_fdn_contact">"Ajouter un contact à numéro autorisé"</string>
-    <string name="adding_fdn_contact">"Ajout d\'un contact à numéro autorisé..."</string>
-    <string name="fdn_contact_added">"Le contact à numéro autorisé a été ajouté."</string>
-    <string name="edit_fdn_contact">"Modifier un contact à numéro autorisé"</string>
-    <string name="updating_fdn_contact">"Mise à jour du contact à numéro autorisé…"</string>
-    <string name="fdn_contact_updated">"Contact à numéro autorisé mis à jour."</string>
-    <string name="delete_fdn_contact">"Supprimer le contact à numéro autorisé"</string>
-    <string name="deleting_fdn_contact">"Suppression du contact à numéro autorisé…"</string>
-    <string name="fdn_contact_deleted">"Le contact à numéro autorisé a été supprimé."</string>
+    <string name="add_fdn_contact">"Ajouter un contact à numérotation fixe"</string>
+    <string name="adding_fdn_contact">"Ajout d\'un contact à numérotation fixe..."</string>
+    <string name="fdn_contact_added">"Le contact à numérotation fixe a été ajouté."</string>
+    <string name="edit_fdn_contact">"Modifier un contact à numérotation fixe"</string>
+    <string name="updating_fdn_contact">"Mise à jour du contact à numérotation fixe\205"</string>
+    <string name="fdn_contact_updated">"Contact à numérotation fixe mis à jour."</string>
+    <string name="delete_fdn_contact">"Supprimer le contact à numérotation fixe"</string>
+    <string name="deleting_fdn_contact">"Suppression du contact à numérotation fixe\205"</string>
+    <string name="fdn_contact_deleted">"Le contact à numérotation fixe a été supprimé."</string>
     <string name="pin2_invalid">"Le code PIN2 n\'est pas valide !"</string>
     <string name="fdn_invalid_number">"Le numéro doit comporter 20 chiffres au maximum."</string>
     <string name="simContacts_emptyLoading">"Lecture de la carte SIM…"</string>
     <string name="sim_unlock_unlock_text">"Débloquer"</string>
     <string name="sim_unlock_status_text">"Authentification du code PIN..."</string>
     <string name="voicemail_settings_number_label">"Numéro de la messagerie vocale"</string>
-    <string name="card_title_dialing">"Appel en cours…"</string>
+    <string name="card_title_dialing">"Appel en cours\205"</string>
     <string name="card_title_in_progress">"Appel en cours"</string>
     <string name="card_title_conf_call">"Conférence téléphonique"</string>
     <string name="card_title_incoming_call">"Appel entrant"</string>
     <string name="incall_error_supp_service_hangup">"Impossible de libérer le(s) appel(s)."</string>
     <string name="emergency_enable_radio_dialog_title">"Appel d\'urgence"</string>
     <string name="emergency_enable_radio_dialog_message">"Activation de la radio…"</string>
-    <string name="emergency_enable_radio_dialog_retry">"Hors zone de couverture. Nouvelle tentative..."</string>
+    <string name="emergency_enable_radio_dialog_retry">"En dehors de la zone de couverture. Nouvelle tentative..."</string>
     <string name="dial_emergency_error">"L\'appel n\'a pas été effectué. <xliff:g id="NON_EMERGENCY_NUMBER">%s</xliff:g> n\'est pas un numéro d\'urgence !"</string>
     <string name="dial_emergency_empty_error">"L\'appel n\'a pas été effectué. Veuillez composer un numéro d\'urgence !"</string>
     <string name="dialerKeyboardHintText">"Utilisez le clavier pour composer un numéro."</string>
-    <string name="dtmfDialpadHintText">"Clavier touches sonores"</string>
+    <string name="dtmfDialpadHintText">"Clavier à touches sonores"</string>
     <string name="touchLockText">"Double-cliquez"\n"pour déverrouiller"</string>
     <string name="importSimEntry">"Importer"</string>
     <string name="importAllSimEntries">"Tout importer"</string>
index 311b685..db0bd30 100644 (file)
@@ -17,8 +17,8 @@
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="contactsIconLabel">"Contatti"</string>
     <string name="contactsFavoritesLabel">"Preferiti"</string>
-    <string name="dialerIconLabel">"Telefono"</string>
-    <string name="emergencyDialerIconLabel">"Chiamata di emergenza"</string>
+    <string name="dialerIconLabel">"Dialer"</string>
+    <string name="emergencyDialerIconLabel">"Dialer di emergenza"</string>
     <string name="phoneIconLabel">"Telefono"</string>
     <string name="recentCallsIconLabel">"Reg. chiamate"</string>
     <string name="fdnListLabel">"Elenco FDN"</string>
@@ -30,7 +30,7 @@
     <string name="callFailed_congestion">"Rete occupata"</string>
     <string name="callFailed_noSignal">"Nessun segnale"</string>
     <string name="callFailed_limitExceeded">"Limite ACM superato"</string>
-    <string name="callFailed_powerOff">"Segnale cellulare disattivato"</string>
+    <string name="callFailed_powerOff">"Modulo radio spento"</string>
     <string name="callFailed_simError">"Nessuna SIM o errore della SIM"</string>
     <string name="callFailed_outOfService">"Area non coperta dal servizio"</string>
     <string name="callFailed_fdn_only">"Chiamate in uscita limitate da FDN."</string>
     <string name="cancel">"Annulla"</string>
     <string name="menu_speaker">"Altoparlante"</string>
     <string name="menu_bluetooth">"Bluetooth"</string>
-    <string name="menu_mute">"No audio"</string>
+    <string name="menu_mute">"Disattiva audio"</string>
     <string name="menu_hold">"In attesa"</string>
-    <string name="menu_endCall">"Chiudi"</string>
-    <string name="menu_swapCalls">"Scambia"</string>
-    <string name="menu_mergeCalls">"Unisci"</string>
+    <string name="menu_endCall">"Chiudi chiamata"</string>
+    <string name="menu_swapCalls">"Scambia chiamate"</string>
+    <string name="menu_mergeCalls">"Unisci chiamate"</string>
     <string name="menu_addCall">"Aggiungi chiamata"</string>
     <string name="menu_manageConference">"Gestisci conferenza audio"</string>
-    <string name="menu_showDialpad">"Mostra tastierino"</string>
-    <string name="menu_hideDialpad">"Nascondi tastierino"</string>
+    <string name="menu_showDialpad">"Mostra dialpad"</string>
+    <string name="menu_hideDialpad">"Nascondi dialpad"</string>
     <string name="menu_answerAndHold">"Sospendi chiamata corrente"\n"e rispondi"</string>
     <string name="menu_answerAndEnd">"Chiudi chiamata corrente"\n"e rispondi"</string>
     <string name="ok">"OK"</string>
@@ -81,7 +81,7 @@
     <string name="unlock_failed">"Richiesta di sblocco della rete respinta."</string>
     <string name="unlock_success">"Sblocco della rete riuscito."</string>
     <string name="imei">"IMEI"</string>
-    <string name="labelMore">"Altre impostazioni"</string>
+    <string name="labelMore">"Altre impostazioni chiamate"</string>
     <string name="apn_settings">"Nomi punti di accesso"</string>
     <string name="settings_label">"Impostazioni di rete"</string>
     <string name="voicemail">"Segreteria"</string>
@@ -92,7 +92,7 @@
     <string name="labelCallerId">"ID chiamante"</string>
     <string name="sum_hide_caller_id">"Numero nascosto per chiamate in uscita"</string>
     <string name="sum_show_caller_id">"Numero visualizzato in chiamate in uscita"</string>
-    <string name="sum_default_caller_id">"Usa impostazioni predef. operatore per visualizzare il mio numero in chiamate in uscita"</string>
+    <string name="sum_default_caller_id">"Usa impostazioni predefinite operatore per visualizzare il mio numero in chiamate in uscita"</string>
     <string name="labelCW">"Avviso di chiamata"</string>
     <string name="sum_cw_enabled">"Notifica chiamate in entrata durante telefonata"</string>
     <string name="sum_cw_disabled">"Notifica chiamate in entrata durante telefonata"</string>
     <string name="sum_cfb_disabled">"Disattivato"</string>
     <string name="labelCFNRy">"Devia se non si risponde"</string>
     <string name="messageCFNRy">"Numero se non si risponde"</string>
-    <string name="sum_cfnry_enabled">"Deviazione al numero {0}"</string>
+    <string name="sum_cfnry_enabled">"Deviazione al numero \\\\{0\\\\}"</string>
     <string name="sum_cfnry_disabled">"Disattivato"</string>
     <string name="labelCFNRc">"Devia se non raggiungibile"</string>
     <string name="messageCFNRc">"Numero se non raggiungibile"</string>
-    <string name="sum_cfnrc_enabled">"Deviazione al numero {0}"</string>
+    <string name="sum_cfnrc_enabled">"Deviazione al numero \\\\{0\\\\}"</string>
     <string name="sum_cfnrc_disabled">"Disattivato"</string>
     <string name="updating_title">"Impostazioni chiamate"</string>
     <string name="error_updating_title">"Errore durante aggiornamento impostazioni chiamate"</string>
     <string name="updating_settings">"Aggiornamento impostazioni..."</string>
     <string name="response_error">"Risposta imprevista dalla rete,"</string>
     <string name="exception_error">"Errore di rete o della SIM."</string>
-    <string name="radio_off_error">"Attiva il segnale cellulare per visualizzare queste impostazioni."</string>
+    <string name="radio_off_error">"Accendi il modulo radio prima di visualizzare queste impostazioni."</string>
     <string name="close_dialog">"OK"</string>
     <string name="enable">"Attiva"</string>
     <string name="disable">"Disattiva"</string>
     <string name="sum_select_automatically">"Seleziona automaticamente la rete preferita"</string>
     <string name="register_automatically">"Registrazione automatica..."</string>
     <string name="roaming">"Roaming dati"</string>
-    <string name="roaming_enable">"Connessione a servizi di dati in caso di roaming"</string>
+    <string name="roaming_enable">"Connessione a servizi di dati in roaming"</string>
     <string name="roaming_disable">"Connessione a servizi di dati in roaming"</string>
     <string name="roaming_reenable_message">"Connettività dati persa: hai lasciato la rete del tuo operatore con il roaming dati disattivato."</string>
     <string name="roaming_turn_it_on_button">"Attiva"</string>
-    <string name="roaming_warning">"Consentire il roaming dati? I costi potrebbero essere elevati."</string>
+    <string name="roaming_warning">"Consenti il roaming dati? I costi potrebbero essere elevati."</string>
     <string name="prefer_2g">"Usa solo reti 2G"</string>
     <string name="prefer_2g_summary">"Risparmia batteria"</string>
     <string name="fdn">"Numeri di selezione fissa"</string>
     <string name="sim_unlock_unlock_text">"Sblocca"</string>
     <string name="sim_unlock_status_text">"Autenticazione PIN..."</string>
     <string name="voicemail_settings_number_label">"Numero segreteria"</string>
-    <string name="card_title_dialing">"Chiamata in corso"</string>
+    <string name="card_title_dialing">"Chiamata"</string>
     <string name="card_title_in_progress">"Chiamata corrente"</string>
     <string name="card_title_conf_call">"Conferenza audio"</string>
-    <string name="card_title_incoming_call">"Chiamata in arrivo"</string>
+    <string name="card_title_incoming_call">"Chiamata in entrata"</string>
     <string name="card_title_call_ended">"Chiamata terminata"</string>
     <string name="card_title_on_hold">"In attesa"</string>
     <string name="card_title_hanging_up">"In fase di chiusura"</string>
     <string name="incall_error_supp_service_reject">"Impossibile rifiutare la chiamata."</string>
     <string name="incall_error_supp_service_hangup">"Impossibile riprendere le chiamate."</string>
     <string name="emergency_enable_radio_dialog_title">"Chiamata di emergenza"</string>
-    <string name="emergency_enable_radio_dialog_message">"Attivazione segnale cellulare..."</string>
+    <string name="emergency_enable_radio_dialog_message">"Accensione modulo radio..."</string>
     <string name="emergency_enable_radio_dialog_retry">"Area non coperta dal servizio. Nuovo tentativo..."</string>
     <string name="dial_emergency_error">"Chiamata non inviata. <xliff:g id="NON_EMERGENCY_NUMBER">%s</xliff:g> non è un numero di emergenza."</string>
-    <string name="dial_emergency_empty_error">"Chiamata non inviata. Componi un numero di emergenza."</string>
+    <string name="dial_emergency_empty_error">"Chiamata non inviata. Comporre un numero di emergenza."</string>
     <string name="dialerKeyboardHintText">"Usa tastiera"</string>
-    <string name="dtmfDialpadHintText">"Selezione a toni"</string>
+    <string name="dtmfDialpadHintText">"Tocca tastierino numerico"</string>
     <string name="touchLockText">"Tocca due volte"\n"per sbloccare"</string>
     <string name="importSimEntry">"Importa"</string>
     <string name="importAllSimEntries">"Importa tutti"</string>
index a0b86d1..3ee8a5f 100644 (file)
@@ -25,7 +25,7 @@
     <string name="unknown">"不明"</string>
     <string name="private_num">"番号非通知"</string>
     <string name="onHold">"保留中"</string>
-    <string name="ongoing">"通話中"</string>
+    <string name="ongoing">"現在の通話"</string>
     <string name="callFailed_userBusy">"話し中"</string>
     <string name="callFailed_congestion">"ネットワークがビジーです"</string>
     <string name="callFailed_noSignal">"圏外"</string>
@@ -35,7 +35,7 @@
     <string name="callFailed_outOfService">"圏外"</string>
     <string name="callFailed_fdn_only">"発信番号制限により発信が制限されています。"</string>
     <string name="callFailed_cb_enabled">"発信できません。発信制限がかかっています。"</string>
-    <string name="confCall">"グループ通話"</string>
+    <string name="confCall">"電話会議"</string>
     <string name="mmiStarted">"MMIコードの開始"</string>
     <string name="ussdRunning">"USSDコードを実行中..."</string>
     <string name="mmiCancelled">"MMIコードはキャンセルされました"</string>
     <string name="menu_mute">"ミュート"</string>
     <string name="menu_hold">"保留"</string>
     <string name="menu_endCall">"通話を終了"</string>
-    <string name="menu_swapCalls">"相手切替"</string>
-    <string name="menu_mergeCalls">"グループ通話"</string>
+    <string name="menu_swapCalls">"通話を切り替える"</string>
+    <string name="menu_mergeCalls">"通話をまとめる"</string>
     <string name="menu_addCall">"通話を追加"</string>
-    <string name="menu_manageConference">"グループ通話オプション"</string>
+    <string name="menu_manageConference">"電話会議を管理"</string>
     <string name="menu_showDialpad">"ダイヤルパッドを表示"</string>
     <string name="menu_hideDialpad">"ダイヤルパッドを隠す"</string>
     <string name="menu_answerAndHold">"通話を保留"\n"して応答"</string>
     <string name="fdn_enable_puk2_requested">"パスワードが正しくありません。PIN2を変更して再入力してください。"</string>
     <string name="puk2_requested">"パスワードが正しくありません。SIMがロックされています。PUK2を入力してください。"</string>
     <string name="doneButton">"完了"</string>
-    <string name="caller_manage_header">"グループ通話 <xliff:g id="CONF_CALL_TIME">%s</xliff:g>"</string>
+    <string name="caller_manage_header">"電話会議<xliff:g id="CONF_CALL_TIME">%s</xliff:g>"</string>
     <string name="caller_manage_manage_done_text">"通話に戻る"</string>
     <string name="sim_missing_continueView_text">"SIMカードなしで続ける"</string>
     <string name="sim_missing_msg_text">"SIMカードが見つかりません。SIMカードを携帯電話に挿入してください。"</string>
     <string name="voicemail_settings_number_label">"ボイスメールの番号"</string>
     <string name="card_title_dialing">"発信中"</string>
     <string name="card_title_in_progress">"現在の通話"</string>
-    <string name="card_title_conf_call">"グループ通話"</string>
+    <string name="card_title_conf_call">"電話会議"</string>
     <string name="card_title_incoming_call">"着信"</string>
-    <string name="card_title_call_ended">"通話終了"</string>
+    <string name="card_title_call_ended">"通話の終了"</string>
     <string name="card_title_on_hold">"保留中"</string>
     <string name="card_title_hanging_up">"通話終了"</string>
     <string name="notification_missedCallTitle">"不在着信"</string>
     <string name="notification_missedCallsTitle">"不在着信"</string>
     <string name="notification_missedCallsMsg">"不在着信<xliff:g id="NUM_MISSED_CALLS">%s</xliff:g>件"</string>
     <string name="notification_missedCallTicker">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>さんからの不在着信"</string>
-    <string name="notification_ongoing_call_format">"通話中(<xliff:g id="DURATION">%s</xliff:g>)"</string>
+    <string name="notification_ongoing_call_format">"現在の通話 (<xliff:g id="DURATION">%s</xliff:g>)"</string>
     <string name="notification_on_hold">"保留中"</string>
     <string name="notification_voicemail_title">"新しいボイスメール"</string>
     <string name="notification_voicemail_text_format">"<xliff:g id="VOICEMAIL_NUMBER">%s</xliff:g>にダイヤル"</string>
     <string name="incall_error_supp_service_switch">"通話を切り替えられません。"</string>
     <string name="incall_error_supp_service_separate">"通話を分割できません。"</string>
     <string name="incall_error_supp_service_transfer">"電話を転送できません。"</string>
-    <string name="incall_error_supp_service_conference">"グループ通話を利用できません。"</string>
+    <string name="incall_error_supp_service_conference">"電話会議ができません。"</string>
     <string name="incall_error_supp_service_reject">"着信を拒否できません。"</string>
     <string name="incall_error_supp_service_hangup">"通話を解放できません。"</string>
     <string name="emergency_enable_radio_dialog_title">"緊急呼"</string>
index d53feaa..5f2c584 100644 (file)
@@ -15,7 +15,7 @@
 -->
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="contactsIconLabel">"Contacten"</string>
+    <string name="contactsIconLabel">"Contactpersonen"</string>
     <string name="contactsFavoritesLabel">"Favorieten"</string>
     <string name="dialerIconLabel">"Kiezer"</string>
     <string name="emergencyDialerIconLabel">"Kiezer noodoproep"</string>
@@ -55,7 +55,7 @@
     <string name="menu_answerAndEnd">"Huidige oproep beëindigen"\n" en opnemen"</string>
     <string name="ok">"OK"</string>
     <string name="menuButtonHint">"Druk op \'Menu\' voor oproepopties."</string>
-    <string name="menuButtonKeyboardDialHint">"Druk op \'Menu\' voor oproepopties • Toetsen gebruiken om te bellen"</string>
+    <string name="menuButtonKeyboardDialHint">"Druk op \'Menu\' voor oproepopties  •  Toetsen gebruiken om te bellen"</string>
     <string name="wait_prompt_str">"De volgende tonen verzenden?"\n</string>
     <string name="send_button">"Verzenden"</string>
     <string name="wild_prompt_str">"Het jokerteken vervangen door"</string>
     <string name="no_vm_number_msg">"Er is geen voicemailnummer op de SIM-kaart opgeslagen."</string>
     <string name="add_vm_number_str">"Nummer toevoegen"</string>
     <string name="dialer_emptyListWorking">"Laden..."</string>
-    <string name="enterPin">"Voer de PIN-code in om de SIM-kaart te ontgrendelen."</string>
+    <string name="enterPin">"Voer de PIN-code in om de SIM-kaart te deblokkeren."</string>
     <string name="pinUnlocked">"SIM-kaart gedeblokkeerd"</string>
     <string name="enterNewPin">"Nieuwe SIM PIN-code"</string>
     <string name="verifyNewPin">"Voer de nieuwe SIM PIN-code nogmaals in ter bevestiging"</string>
     <string name="verifyFailed">"De SIM PIN-codes die u heeft ingevoerd, komen niet overeen. Probeer het opnieuw."</string>
-    <string name="enterPuk">"Voer de PUK-code in om de SIM-kaart te ontgrendelen"</string>
+    <string name="enterPuk">"Voer de PUK-code in om de SIM-kaart te deblokkeren"</string>
     <string name="badPuk">"Onjuiste PUK-code!"</string>
     <string name="buttonTxtContinue">"Doorgaan"</string>
     <string name="puk_unlocked">"Uw SIM-kaart is gedeblokkeerd. Uw telefoon wordt gedeblokkeerd..."</string>
-    <string name="label_ndp">"PIN-code voor ontgrendelen SIM-netwerk"</string>
-    <string name="sim_ndp_unlock_text">"ontgrendelen"</string>
+    <string name="label_ndp">"PIN-code voor deblokkeren SIM-netwerk"</string>
+    <string name="sim_ndp_unlock_text">"Deblokkeren"</string>
     <string name="sim_ndp_dismiss_text">"Negeren"</string>
-    <string name="requesting_unlock">"Verzoek om ontgrendelen netwerk..."</string>
-    <string name="unlock_failed">"Verzoek voor ontgrendelen netwerk mislukt."</string>
+    <string name="requesting_unlock">"Verzoek om deblokkeren netwerk..."</string>
+    <string name="unlock_failed">"Verzoek voor deblokkeren netwerk mislukt."</string>
     <string name="unlock_success">"Het netwerk is gedeblokkeerd."</string>
     <string name="imei">"IMEI-nummer"</string>
     <string name="labelMore">"Aanvullende oproepinstellingen"</string>
@@ -92,7 +92,7 @@
     <string name="labelCallerId">"Beller-id"</string>
     <string name="sum_hide_caller_id">"Nummer verborgen bij uitgaande oproepen"</string>
     <string name="sum_show_caller_id">"Nummer weergegeven bij uitgaande oproepen"</string>
-    <string name="sum_default_caller_id">"Gebruik de standaard operator-instellingen om mijn nummer bij uitgaande oproepen weer te geven"</string>
+    <string name="sum_default_caller_id">"Gebruik de standaardoperatorinstellingen om mijn nummer bij uitgaande oproepen weer te geven"</string>
     <string name="labelCW">"Wisselgesprek"</string>
     <string name="sum_cw_enabled">"Inkomende oproepen melden als ik aan het bellen ben"</string>
     <string name="sum_cw_disabled">"Inkomende oproepen melden als ik aan het bellen ben"</string>
     <string name="pin2_invalid">"PIN2-code ongeldig!"</string>
     <string name="fdn_invalid_number">"Nummer mag niet langer zijn dan 20 cijfers."</string>
     <string name="simContacts_emptyLoading">"Lezen vanaf SIM-kaart..."</string>
-    <string name="simContacts_empty">"Geen contacten op uw SIM-kaart."</string>
-    <string name="simContacts_title">"Contacten selecteren om te importeren"</string>
+    <string name="simContacts_empty">"Geen contactpersonen op uw SIM-kaart."</string>
+    <string name="simContacts_title">"Contactpersonen selecteren om te importeren"</string>
     <string name="enable_pin">"SIM PIN-code in-/uitschakelen"</string>
     <string name="change_pin">"SIM PIN-code wijzigen"</string>
     <string name="enter_pin_text">"SIM PIN-code:"</string>
     <string name="sim_missing_continueView_text">"Doorgaan zonder SIM-kaart"</string>
     <string name="sim_missing_msg_text">"Geen SIM-kaart gevonden. Plaats een SIM-kaart in de telefoon."</string>
     <string name="sim_unlock_dismiss_text">"Negeren"</string>
-    <string name="sim_unlock_unlock_text">"Ontgrendelen"</string>
+    <string name="sim_unlock_unlock_text">"Deblokkeren"</string>
     <string name="sim_unlock_status_text">"PIN-code verifiëren..."</string>
     <string name="voicemail_settings_number_label">"Voicemailnummer"</string>
     <string name="card_title_dialing">"Kiezen"</string>
     <string name="touchLockText">"Tik twee keer"\n"om te ontgrendelen"</string>
     <string name="importSimEntry">"Importeren"</string>
     <string name="importAllSimEntries">"Alles importeren"</string>
-    <string name="importingSimContacts">"SIM-contacten importeren"</string>
-    <string name="importToFDNfromContacts">"Importeren uit contacten"</string>
+    <string name="importingSimContacts">"SIM-contactpersonen importeren"</string>
+    <string name="importToFDNfromContacts">"Importeren uit contactpersonen"</string>
 </resources>
index 43bd5df..1934fe3 100644 (file)
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="contactsIconLabel">"Kontakty"</string>
     <string name="contactsFavoritesLabel">"Ulubione"</string>
-    <string name="dialerIconLabel">"Telefon"</string>
-    <string name="emergencyDialerIconLabel">"Numery alarmowe"</string>
+    <string name="dialerIconLabel">"Wybieranie numerów"</string>
+    <string name="emergencyDialerIconLabel">"Wybieranie numerów alarmowych"</string>
     <string name="phoneIconLabel">"Telefon"</string>
     <string name="recentCallsIconLabel">"Dziennik połączeń"</string>
-    <string name="fdnListLabel">"Ustalone numery (FDN)"</string>
+    <string name="fdnListLabel">"Lista numerów wybierania ustalonego (FDN)"</string>
     <string name="unknown">"Nieznany"</string>
     <string name="private_num">"Numer prywatny"</string>
     <string name="onHold">"Oczekujące"</string>
-    <string name="ongoing">"Bieżące połączenie"</string>
+    <string name="ongoing">"Obecne połączenie"</string>
     <string name="callFailed_userBusy">"Linia jest zajęta"</string>
     <string name="callFailed_congestion">"Sieć zajęta"</string>
     <string name="callFailed_noSignal">"Brak sygnału"</string>
@@ -33,7 +33,7 @@
     <string name="callFailed_powerOff">"Radio wyłączone"</string>
     <string name="callFailed_simError">"Brak lub błąd karty SIM"</string>
     <string name="callFailed_outOfService">"Obszar nieobsługiwany"</string>
-    <string name="callFailed_fdn_only">"Połączenia są ograniczone do ustalonych numerów (FDN)."</string>
+    <string name="callFailed_fdn_only">"Połączenia wychodzące są ograniczone przez usługę wybierania ustalonego (FDN)."</string>
     <string name="callFailed_cb_enabled">"Nie można wykonywać połączeń wychodzących, gdy włączona jest blokada dzwonienia."</string>
     <string name="confCall">"Rozmowa konferencyjna"</string>
     <string name="mmiStarted">"Kod MMI został rozpoczęty"</string>
     <string name="cancel">"Anuluj"</string>
     <string name="menu_speaker">"Głośnik"</string>
     <string name="menu_bluetooth">"Bluetooth"</string>
-    <string name="menu_mute">"Wycisz"</string>
+    <string name="menu_mute">"Wyciszenie"</string>
     <string name="menu_hold">"Wstrzymaj"</string>
-    <string name="menu_endCall">"Zakończ"</string>
-    <string name="menu_swapCalls">"Przełącz"</string>
-    <string name="menu_mergeCalls">"Scal"</string>
-    <string name="menu_addCall">"Dodaj poł."</string>
+    <string name="menu_endCall">"Zakończ połączenie"</string>
+    <string name="menu_swapCalls">"Podmień połączenia"</string>
+    <string name="menu_mergeCalls">"Scal połączenia"</string>
+    <string name="menu_addCall">"Dodaj połączenie"</string>
     <string name="menu_manageConference">"Zarządzanie rozmową konferencyjną"</string>
     <string name="menu_showDialpad">"Pokaż panel wybierania numeru"</string>
     <string name="menu_hideDialpad">"Ukryj panel wybierania numeru"</string>
     <string name="menu_answerAndHold">"Zawieś bieżące połączenie"\n"i odpowiedz"</string>
     <string name="menu_answerAndEnd">"Zakończ bieżące połączenie"\n"i odpowiedz"</string>
     <string name="ok">"OK"</string>
-    <string name="menuButtonHint">"Naciśnij Menu, aby zobaczyć opcje połączenia."</string>
-    <string name="menuButtonKeyboardDialHint">"Naciśnij Menu, aby wyświetlić opcje połączenia • Użyj klawiatury, aby wybrać numer"</string>
+    <string name="menuButtonHint">"Naciśnij przycisk Menu, aby zobaczyć opcje połączenia."</string>
+    <string name="menuButtonKeyboardDialHint">"Naciśnij przycisk Menu, aby wyświetlić opcje połączenia  •  Użyj klawiatury, aby wybrać numer"</string>
     <string name="wait_prompt_str">"Wysłać następujące dzwonki?"\n</string>
     <string name="send_button">"Wyślij"</string>
     <string name="wild_prompt_str">"Zastąp symbol wieloznaczny"</string>
@@ -72,7 +72,7 @@
     <string name="verifyFailed">"Wprowadzone kody PIN do karty SIM nie są identyczne. Spróbuj ponownie."</string>
     <string name="enterPuk">"Wprowadź kod PUK, aby odblokować kartę SIM"</string>
     <string name="badPuk">"Błędny kod PUK!"</string>
-    <string name="buttonTxtContinue">"Dalej"</string>
+    <string name="buttonTxtContinue">"Kontynuuj"</string>
     <string name="puk_unlocked">"Karta SIM została odblokowana. Odblokowywanie telefonu..."</string>
     <string name="label_ndp">"Kod PIN do karty SIM odblokowujący sieć"</string>
     <string name="sim_ndp_unlock_text">"Odblokuj"</string>
     <string name="unlock_failed">"Żądanie odblokowania sieci zakończyło się niepowodzeniem."</string>
     <string name="unlock_success">"Sieć została pomyślnie odblokowana."</string>
     <string name="imei">"IMEI"</string>
-    <string name="labelMore">"Dodatkowe ustawienia"</string>
-    <string name="apn_settings">"Punkty dostępowe"</string>
+    <string name="labelMore">"Dodatkowe ustawienia połączenia"</string>
+    <string name="apn_settings">"Nazwy punktu dostępowego"</string>
     <string name="settings_label">"Ustawienia sieci"</string>
     <string name="voicemail">"Poczta głosowa"</string>
     <string name="voicemail_abbreviated">"Poczta głosowa:"</string>
     <string name="networks">"Operatorzy sieci"</string>
     <string name="call_settings">"Ustawienia połączeń"</string>
-    <string name="additional_call_settings">"Dodatkowe ustawienia"</string>
+    <string name="additional_call_settings">"Dodatkowe ustawienia połączenia"</string>
     <string name="labelCallerId">"ID dzwoniącego"</string>
     <string name="sum_hide_caller_id">"Ukrycie numeru podczas rozmów wychodzących"</string>
     <string name="sum_show_caller_id">"Numer wyświetlany w połączeniach wychodzących"</string>
     <string name="sum_default_caller_id">"Użyj domyślnych ustawień operatora, aby wyświetlać mój numer w połączeniach wychodzących"</string>
-    <string name="labelCW">"Połączenia oczekujące"</string>
+    <string name="labelCW">"Połączenie oczekujące"</string>
     <string name="sum_cw_enabled">"Podczas połączenia powiadamiaj mnie o połączeniach przychodzących"</string>
     <string name="sum_cw_disabled">"Podczas połączenia powiadamiaj mnie o połączeniach przychodzących"</string>
     <string name="call_forwarding_settings">"Ustawienia przekierowania połączeń"</string>
-    <string name="labelCF">"Przekierowania połączeń"</string>
-    <string name="labelCFU">"Przekieruj wszystkie"</string>
+    <string name="labelCF">"Przekierowanie połączeń"</string>
+    <string name="labelCFU">"Zawsze przekierowuj"</string>
     <string name="messageCFU">"Zawsze używaj tego numeru"</string>
     <string name="sum_cfu_enabled_indicator">"Przekierowanie wszystkich rozmów"</string>
     <string name="sum_cfu_enabled">"Przekierowanie wszystkich rozmów do {0}"</string>
     <string name="sum_cfu_disabled">"Wyłączone"</string>
-    <string name="labelCFB">"Przekieruj gdy zajęty"</string>
+    <string name="labelCFB">"Przekieruj, gdy zajęty"</string>
     <string name="messageCFB">"Numer, gdy zajęty"</string>
-    <string name="sum_cfb_enabled">"Przekierowanie do {0}"</string>
+    <string name="sum_cfb_enabled">"Przekierowanie do \\\\{0\\\\}"</string>
     <string name="sum_cfb_disabled">"Wyłączone"</string>
-    <string name="labelCFNRy">"Przekieruj gdy nieodebrane"</string>
+    <string name="labelCFNRy">"Przekieruj, gdy nieodebrane"</string>
     <string name="messageCFNRy">"Numer, gdy nieodebrane"</string>
-    <string name="sum_cfnry_enabled">"Przekierowanie do {0}"</string>
+    <string name="sum_cfnry_enabled">"Przekierowanie do \\\\{0\\\\}"</string>
     <string name="sum_cfnry_disabled">"Wyłączone"</string>
-    <string name="labelCFNRc">"Przekieruj gdy nieosiągalny"</string>
+    <string name="labelCFNRc">"Przekieruj, gdy nieosiągalny"</string>
     <string name="messageCFNRc">"Numer, gdy nieosiągalny."</string>
-    <string name="sum_cfnrc_enabled">"Przekierowanie do {0}"</string>
+    <string name="sum_cfnrc_enabled">"Przekierowanie do \\\\{0\\\\}"</string>
     <string name="sum_cfnrc_disabled">"Wyłączone"</string>
     <string name="updating_title">"Ustawienia połączeń"</string>
     <string name="error_updating_title">"Błąd w ustawieniach połączenia"</string>
     <string name="select_automatically">"Wybierz automatycznie"</string>
     <string name="sum_select_automatically">"Wybierz automatycznie preferowaną sieć"</string>
     <string name="register_automatically">"Automatyczne rejestrowanie..."</string>
-    <string name="roaming">"Dane w roamingu"</string>
+    <string name="roaming">"Przesyłanie danych w roamingu"</string>
     <string name="roaming_enable">"Połącz z usługami przesyłu danych podczas roamingu"</string>
     <string name="roaming_disable">"Połącz z usługami przesyłu danych podczas roamingu"</string>
     <string name="roaming_reenable_message">"Utracono łączność danych, ponieważ pozostawiono wyłączony roaming danych w sieci macierzystej."</string>
     <string name="roaming_turn_it_on_button">"Włącz usługę"</string>
-    <string name="roaming_warning">"Czy pozwolić na przesył danych w roamingu? Operator może naliczać wysokie opłaty roamingowe!"</string>
+    <string name="roaming_warning">"Czy pozwolić na wymianę danych w roamingu? Mogą zostać naliczone wysokie opłaty roamingowe!"</string>
     <string name="prefer_2g">"Używaj tylko sieci 2G"</string>
     <string name="prefer_2g_summary">"Oszczędza baterię"</string>
-    <string name="fdn">"Ustalone numery"</string>
-    <string name="manage_fdn_list">"Ustalone numery (FDN)"</string>
-    <string name="fdn_activation">"Aktywacja usługi ustalnych numerów (FDN)"</string>
-    <string name="fdn_enabled">"Włączono tryb ustalonych numerów"</string>
-    <string name="fdn_disabled">"Wyłączono tryb ustalonych numerów"</string>
-    <string name="enable_fdn">"Włącz ustalone numery (FDN)"</string>
-    <string name="disable_fdn">"Wyłącz usługę ustalonych numerów (FDN)"</string>
+    <string name="fdn">"Numery wybierania ustalonego"</string>
+    <string name="manage_fdn_list">"Lista numerów wybierania ustalonego (FDN)"</string>
+    <string name="fdn_activation">"Aktywacja usługi FDN (wybierania ustalonego)"</string>
+    <string name="fdn_enabled">"Numery wybierania ustalonego są włączone"</string>
+    <string name="fdn_disabled">"Numery wybierania ustalonego są wyłączone"</string>
+    <string name="enable_fdn">"Włącz usługę wybierania ustalonego (FDN)"</string>
+    <string name="disable_fdn">"Wyłącz usługę wybierania ustalonego (FDN)"</string>
     <string name="change_pin2">"Zmień PIN2"</string>
     <string name="enable_fdn_ok">"Wyłącz usługę wybierania ustalonego (FDN)"</string>
-    <string name="disable_fdn_ok">"Włącz ustalone numery (FDN)"</string>
-    <string name="sum_fdn">"Zarządzanie ustalonymi numerami"</string>
-    <string name="sum_fdn_change_pin">"Zmień kod PIN pozwalający na zarządzanie ustalonymi numerami (FDN)"</string>
+    <string name="disable_fdn_ok">"Włącz usługę wybierania ustalonego (FDN)"</string>
+    <string name="sum_fdn">"Zarządzanie numerami wybierania ustalonego"</string>
+    <string name="sum_fdn_change_pin">"Zmień kod PIN pozwalający na dostęp do usługi wybierania ustalonego (FDN)"</string>
     <string name="sum_fdn_manage_list">"Zarządzanie listą numerów telefonów"</string>
     <string name="menu_add">"Dodaj kontakt"</string>
     <string name="menu_edit">"Edytuj kontakt"</string>
     <string name="name">"Nazwa"</string>
     <string name="number">"Numer"</string>
     <string name="save">"Zapisz"</string>
-    <string name="add_fdn_contact">"Dodaj kontakt do listy ustalonych numerów."</string>
-    <string name="adding_fdn_contact">"Dodawanie kontaktu do ustalonych numerów…"</string>
-    <string name="fdn_contact_added">"Dodano kontakt do listy ustalonych numerów."</string>
-    <string name="edit_fdn_contact">"Edytuj kontakt z listy ustalonych numerów"</string>
-    <string name="updating_fdn_contact">"Aktualizowanie kontaktu z ustalonych numerów…"</string>
-    <string name="fdn_contact_updated">"Zaktualizowano kontakt z listy ustalonych numerów."</string>
-    <string name="delete_fdn_contact">"Usuń kontakt z listy ustalonych numerów"</string>
-    <string name="deleting_fdn_contact">"Usuwanie kontaktu z listy ustalonych numerów"</string>
-    <string name="fdn_contact_deleted">"Kontakt usunięty z listy ustalonych numerów."</string>
+    <string name="add_fdn_contact">"Dodaj kontakt wybierania ustalonego"</string>
+    <string name="adding_fdn_contact">"Dodawanie kontaktu wybierania ustalonego..."</string>
+    <string name="fdn_contact_added">"Kontakt wybierania ustalonego został dodany."</string>
+    <string name="edit_fdn_contact">"Edytuj kontakt wybierania ustalonego"</string>
+    <string name="updating_fdn_contact">"Aktualizowanie kontaktu wybierania ustalonego..."</string>
+    <string name="fdn_contact_updated">"Kontakt wybierania ustalonego został zaktualizowany."</string>
+    <string name="delete_fdn_contact">"Usuń kontakt wybierania ustalonego"</string>
+    <string name="deleting_fdn_contact">"Usuwanie kontaktu wybierania ustalonego..."</string>
+    <string name="fdn_contact_deleted">"Kontakt wybierania ustalonego został usunięty."</string>
     <string name="pin2_invalid">"Błędny kod PIN2!"</string>
     <string name="fdn_invalid_number">"Numer nie może być dłuższy niż 20 cyfr."</string>
     <string name="simContacts_emptyLoading">"Czytanie z karty SIM..."</string>
     <string name="sim_unlock_status_text">"Uwierzytelnianie kodu PIN..."</string>
     <string name="voicemail_settings_number_label">"Numer poczty głosowej"</string>
     <string name="card_title_dialing">"Wybieranie"</string>
-    <string name="card_title_in_progress">"Bieżące połączenie"</string>
+    <string name="card_title_in_progress">"Obecne połączenie"</string>
     <string name="card_title_conf_call">"Rozmowa konferencyjna"</string>
-    <string name="card_title_incoming_call">"Poł. przychodzące"</string>
+    <string name="card_title_incoming_call">"Połączenie przychodzące"</string>
     <string name="card_title_call_ended">"Połączenie zakończone"</string>
     <string name="card_title_on_hold">"Oczekujące"</string>
     <string name="card_title_hanging_up">"Trwa rozłączanie"</string>
     <string name="notification_missedCallsTitle">"Połączenia nieodebrane"</string>
     <string name="notification_missedCallsMsg">"<xliff:g id="NUM_MISSED_CALLS">%s</xliff:g> nieodebranych połączeń"</string>
     <string name="notification_missedCallTicker">"Nieodebrane połączenie z <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
-    <string name="notification_ongoing_call_format">"Bieżące połączenie (<xliff:g id="DURATION">%s</xliff:g>)"</string>
+    <string name="notification_ongoing_call_format">"Obecne połączenie (<xliff:g id="DURATION">%s</xliff:g>)"</string>
     <string name="notification_on_hold">"Oczekujące"</string>
     <string name="notification_voicemail_title">"Nowa poczta głosowa"</string>
     <string name="notification_voicemail_text_format">"Zadzwoń do <xliff:g id="VOICEMAIL_NUMBER">%s</xliff:g>"</string>
     <string name="dial_emergency_error">"Połączenie niezrealizowane, <xliff:g id="NON_EMERGENCY_NUMBER">%s</xliff:g> nie jest numerem alarmowym!"</string>
     <string name="dial_emergency_empty_error">"Połączenie niezrealizowane, należy wybrać numer alarmowy!"</string>
     <string name="dialerKeyboardHintText">"Aby zadzwonić, użyj klawiatury."</string>
-    <string name="dtmfDialpadHintText">"Dotknij klawiatury"</string>
+    <string name="dtmfDialpadHintText">"Dotykowa klawiatura tonowa"</string>
     <string name="touchLockText">"Dotknij dwukrotnie,"\n" aby odblokować"</string>
     <string name="importSimEntry">"Importuj"</string>
     <string name="importAllSimEntries">"Importuj wszystko"</string>
index 8905cef..bc2f6aa 100644 (file)
@@ -279,7 +279,6 @@ public class BluetoothHeadsetService extends Service {
             } else if (action.equals(BluetoothIntent.DISABLED_ACTION)) {
                 mBtHandsfree.onBluetoothDisabled();
                 mAg.stop();
-                setState(BluetoothHeadset.STATE_DISCONNECTED, BluetoothHeadset.RESULT_FAILURE);
             } else if (action.equals(BluetoothIntent.BOND_STATE_CHANGED_ACTION)) {
                 int bondState = intent.getIntExtra(BluetoothIntent.BOND_STATE,
                                                    BluetoothError.ERROR);
@@ -548,7 +547,7 @@ public class BluetoothHeadsetService extends Service {
                 if (mState == BluetoothHeadset.STATE_CONNECTED ||
                     mState == BluetoothHeadset.STATE_CONNECTING) {
                     Log.w(TAG, "connectHeadset(" + address + "): failed: already in state " +
-                          mState + " with headset " + mHeadsetAddress);
+                          mState + "with headset " + mHeadsetAddress);
                     return false;
                 }
                 if (address == null) {
index 2458f3b..4f527f8 100644 (file)
@@ -48,7 +48,8 @@ public class CallNotifier extends Handler
         implements CallerInfoAsyncQuery.OnQueryCompleteListener {
     private static final String TAG = PhoneApp.LOG_TAG;
 
-    // Enable debug logging for userdebug builds.
+    // this debug flag is now attached to the "userdebuggable" builds
+    // to keep useful logging available.
     private static final boolean DBG =
             (SystemProperties.getInt("ro.debuggable", 0) == 1);
 
@@ -58,9 +59,8 @@ public class CallNotifier extends Handler
     private static final String PHONE_UI_EVENT_MULTIPLE_QUERY =
         "multiple incoming call queries attempted";
 
-    // Maximum time we allow the CallerInfo query to run,
-    // before giving up and falling back to the default ringtone.
-    private static final int RINGTONE_QUERY_WAIT_TIME = 500;  // msec
+    // query timeout period, about 0.5 sec.
+    private static final int RINGTONE_QUERY_WAIT_TIME = 500;
 
     // values used to track the query state
     private static final int CALLERINFO_QUERY_READY = 0;
@@ -73,7 +73,7 @@ public class CallNotifier extends Handler
     private Object mCallerInfoQueryStateGuard = new Object();
 
     // Event used to indicate a query timeout.
-    private static final int RINGER_CUSTOM_RINGTONE_QUERY_TIMEOUT = 100;
+    private static final int RINGER_CUSTOM_RINGTONE_QUERY_COMPLETE = 100;
 
     // Events from the Phone object:
     private static final int PHONE_STATE_CHANGED = 1;
@@ -126,7 +126,7 @@ public class CallNotifier extends Handler
                 if (msg.obj != null && ((AsyncResult) msg.obj).result != null &&
                         ((GSMPhone)((AsyncResult) msg.obj).result).getState() == Phone.State.RINGING
                         && mSilentRingerRequested == false) {
-                    if (DBG) log("RINGING... (PHONE_INCOMING_RING event)");
+                    if (DBG) log("RINGING... ");
                     mRinger.ring();
                 } else {
                     if (DBG) log("RING before NEW_RING, skipping");
@@ -146,16 +146,9 @@ public class CallNotifier extends Handler
                 onUnknownConnectionAppeared((AsyncResult) msg.obj);
                 break;
 
-            case RINGER_CUSTOM_RINGTONE_QUERY_TIMEOUT:
-                // CallerInfo query is taking too long!  But we can't wait
-                // any more, so start ringing NOW even if it means we won't
-                // use the correct custom ringtone.
-                Log.w(TAG, "CallerInfo query took too long; manually starting ringer");
-
-                // In this case we call onCustomRingQueryComplete(), just
-                // like if the query had completed normally.  (But we're
-                // going to get the default ringtone, since we never got
-                // the chance to call Ringer.setCustomRingtoneUri()).
+                // timed out, go directly to playing the ringtone.
+            case RINGER_CUSTOM_RINGTONE_QUERY_COMPLETE:
+                if (DBG) log("time out event detected for callerinfo query");
                 onCustomRingQueryComplete();
                 break;
 
@@ -292,11 +285,11 @@ public class CallNotifier extends Handler
             // if this has already been queried then just ring, otherwise
             // we wait for the alloted time before ringing.
             if (cit.isFinal) {
-                if (DBG) log("- CallerInfo already up to date, using available data");
+                if (DBG) log("callerinfo already up to date, using available data");
                 onQueryComplete(0, this, cit.currentInfo);
             } else {
-                if (DBG) log("- Starting query, posting timeout message.");
-                sendEmptyMessageDelayed(RINGER_CUSTOM_RINGTONE_QUERY_TIMEOUT,
+                if (DBG) log("starting query and setting timeout message.");
+                sendEmptyMessageDelayed(RINGER_CUSTOM_RINGTONE_QUERY_COMPLETE,
                         RINGTONE_QUERY_WAIT_TIME);
             }
             // calls to PhoneUtils.showIncomingCallUi will come after the
@@ -310,7 +303,7 @@ public class CallNotifier extends Handler
                     PHONE_UI_EVENT_MULTIPLE_QUERY);
 
             // In this case, just log the request and ring.
-            if (DBG) log("RINGING... (request to ring arrived while query is running)");
+            if (DBG) log("request to ring arrived while query is running.");
             mRinger.ring();
 
             // in this case, just fall through like before, and call
@@ -320,22 +313,8 @@ public class CallNotifier extends Handler
     }
 
     /**
-     * Performs the final steps of the onNewRingingConnection sequence:
-     * starts the ringer, and launches the InCallScreen to show the
-     * "incoming call" UI.
-     *
-     * Normally, this is called when the CallerInfo query completes (see
-     * onQueryComplete()).  In this case, onQueryComplete() has already
-     * configured the Ringer object to use the custom ringtone (if there
-     * is one) for this caller.  So we just tell the Ringer to start, and
-     * proceed to the InCallScreen.
-     *
-     * But this method can *also* be called if the
-     * RINGTONE_QUERY_WAIT_TIME timeout expires, which means that the
-     * CallerInfo query is taking too long.  In that case, we log a
-     * warning but otherwise we behave the same as in the normal case.
-     * (We still tell the Ringer to start, but it's going to use the
-     * default ringtone.)
+     * Continuation of the onNewRingingConnection method call,
+     * encompassing ringing and any successive actions.
      */
     private void onCustomRingQueryComplete() {
         boolean isQueryExecutionTimeExpired = false;
@@ -348,36 +327,15 @@ public class CallNotifier extends Handler
         if (isQueryExecutionTimeExpired) {
             // There may be a problem with the query here, since the
             // default ringtone is playing instead of the custom one.
-            Log.w(TAG, "CallerInfo query took too long; falling back to default ringtone");
             Checkin.logEvent(mPhone.getContext().getContentResolver(),
                     Checkin.Events.Tag.PHONE_UI,
                     PHONE_UI_EVENT_RINGER_QUERY_ELAPSED);
         }
 
-        // Make sure we still have an incoming call!
-        //
-        // (It's possible for the incoming call to have been disconnected
-        // while we were running the query.  In that case we better not
-        // start the ringer here, since there won't be any future
-        // DISCONNECT event to stop it!)
-        //
-        // Note we don't have to worry about the incoming call going away
-        // *after* this check but before we call mRinger.ring() below,
-        // since in that case we *will* still get a DISCONNECT message sent
-        // to our handler.  (And we will correctly stop the ringer when we
-        // process that event.)
-        if (mPhone.getState() != Phone.State.RINGING) {
-            Log.i(TAG, "onCustomRingQueryComplete: No incoming call! Bailing out...");
-            // Don't start the ringer *or* bring up the "incoming call" UI.
-            // Just bail out.
-            return;
-        }
-
-        // Ring, either with the queried ringtone or default one.
-        if (DBG) log("RINGING... (onCustomRingQueryComplete)");
+        // ring, either with the queried ringtone or default one.
         mRinger.ring();
 
-        // ...and show the InCallScreen.
+        // now display the UI.
         PhoneUtils.showIncomingCallUi();
     }
 
@@ -417,7 +375,6 @@ public class CallNotifier extends Handler
             // PhoneUtils.answerCall(), before the call to phone.acceptCall().)
             // TODO: Confirm that this call really *is* unnecessary, and if so,
             // remove it!
-            if (DBG) log("stopRing()... (OFFHOOK state)");
             mRinger.stopRing();
 
             // put a icon in the status bar
@@ -433,15 +390,15 @@ public class CallNotifier extends Handler
      */
     public void onQueryComplete(int token, Object cookie, CallerInfo ci){
         if (cookie instanceof Long) {
-            if (DBG) log("CallerInfo query complete, posting missed call notification");
+            if (DBG) log("callerinfo query complete, posting missed call notification");
 
             NotificationMgr.getDefault().notifyMissedCall(ci.name, ci.phoneNumber,
                     ci.phoneLabel, ((Long) cookie).longValue());
         } else if (cookie instanceof CallNotifier){
-            if (DBG) log("CallerInfo query complete, updating data");
+            if (DBG) log("callerinfo query complete, updating data");
 
             // get rid of the timeout messages
-            removeMessages(RINGER_CUSTOM_RINGTONE_QUERY_TIMEOUT);
+            removeMessages(RINGER_CUSTOM_RINGTONE_QUERY_COMPLETE);
 
             boolean isQueryExecutionTimeOK = false;
             synchronized (mCallerInfoQueryStateGuard) {
@@ -492,7 +449,6 @@ public class CallNotifier extends Handler
         // foreground or background call disconnects while an incoming call
         // is still ringing, but that's a really rare corner case.
         // It's safest to just unconditionally stop the ringer here.
-        if (DBG) log("stopRing()... (onDisconnect)");
         mRinger.stopRing();
 
         // Check for the various tones we might need to play (thru the
@@ -567,7 +523,7 @@ public class CallNotifier extends Handler
             }
             if (DBG) log("- callLogType: " + callLogType + ", UserData: " + c.getUserData());
 
-            // Get the CallerInfo object and then log the call with it.
+            // get the callerinfo object and then log the call with it.
             {
                 Object o = c.getUserData();
                 final CallerInfo ci;
@@ -701,7 +657,6 @@ public class CallNotifier extends Handler
      */
     void silenceRinger() {
         mSilentRingerRequested = true;
-        if (DBG) log("stopRing()... (silenceRinger)");
         mRinger.stopRing();
     }
 
index 3183682..12ff89e 100644 (file)
 
 package com.android.phone;
 
+
+import com.android.internal.telephony.CallerInfo;
+import com.android.internal.telephony.CallerInfoAsyncQuery;
+import com.android.internal.telephony.Phone;
+import android.widget.SlidingDrawer;
+
 import android.media.AudioManager;
 import android.media.ToneGenerator;
 import android.os.Handler;
@@ -33,16 +39,12 @@ import android.view.View;
 import android.view.WindowManager;
 import android.view.animation.AlphaAnimation;
 import android.view.animation.Animation;
-import android.view.animation.Animation.AnimationListener;
 import android.view.animation.AnimationUtils;
+import android.view.animation.Animation.AnimationListener;
 import android.widget.EditText;
-import android.widget.SlidingDrawer;
+import android.widget.LinearLayout;
 import android.widget.TextView;
 
-import com.android.internal.telephony.CallerInfo;
-import com.android.internal.telephony.CallerInfoAsyncQuery;
-import com.android.internal.telephony.Phone;
-
 import java.util.HashMap;
 
 /**
@@ -57,7 +59,7 @@ public class DTMFTwelveKeyDialer implements
         View.OnKeyListener {
 
     // debug data
-    private static final String LOG_TAG = "DTMFTwelveKeyDialer";
+    private static final String LOG_TAG = "dtmf dialer";
     private static final boolean DBG = false;
 
     // events
@@ -107,14 +109,10 @@ public class DTMFTwelveKeyDialer implements
         mDisplayMap.put(R.id.star, '*');
     }
 
-    // EditText field used to display the DTMF digits sent so far.
-    // - In portrait mode, we use the EditText that comes from
-    //   the full dialpad:
-    private EditText mDialpadDigits;
-    // - In landscape mode, we use a different EditText that's
-    //   built into the InCallScreen:
-    private EditText mInCallDigits;
-    // (Only one of these will be visible at any given point.)
+    // UI elements
+    // Including elements used in the call status, now split
+    // between call state and call timer.
+    private EditText mDigits;
 
     // InCallScreen reference.
     private InCallScreen mInCallScreen;
@@ -148,7 +146,7 @@ public class DTMFTwelveKeyDialer implements
         public boolean onKeyOther(TextView view, Spannable text, KeyEvent event) {
             return false;
         }
-
+        
         /**Return false since we are NOT consuming the input.*/
         public boolean onTrackballEvent(TextView widget, Spannable buffer, MotionEvent event) {
             return false;
@@ -351,7 +349,7 @@ public class DTMFTwelveKeyDialer implements
          * Return true if the keyCode is an accepted modifier key for the
          * dialer (ALT or SHIFT).
          */
-        private boolean isAcceptableModifierKey(int keyCode) {
+        private boolean isAcceptableModifierKey (int keyCode) {
             switch (keyCode) {
                 case KeyEvent.KEYCODE_ALT_LEFT:
                 case KeyEvent.KEYCODE_ALT_RIGHT:
@@ -370,8 +368,6 @@ public class DTMFTwelveKeyDialer implements
         @Override
         public boolean onKeyDown(View view, Editable content,
                                  int keyCode, KeyEvent event) {
-            // if (DBG) log("DTMFKeyListener.onKeyDown, keyCode " + keyCode + ", view " + view);
-
             // find the character
             char c = (char) lookup(event, content);
 
@@ -389,7 +385,7 @@ public class DTMFTwelveKeyDialer implements
                 // code.
                 if (keyOK) {
                     if (DBG) log("DTMFKeyListener reading '" + c + "' from input.");
-                    processDtmf(c);
+                    playTone(c);
                 } else if (DBG) {
                     log("DTMFKeyListener rejecting '" + c + "' from input.");
                 }
@@ -405,7 +401,6 @@ public class DTMFTwelveKeyDialer implements
         @Override
         public boolean onKeyUp(View view, Editable content,
                                  int keyCode, KeyEvent event) {
-            // if (DBG) log("DTMFKeyListener.onKeyUp, keyCode " + keyCode + ", view " + view);
 
             super.onKeyUp(view, content, keyCode, event);
 
@@ -441,7 +436,7 @@ public class DTMFTwelveKeyDialer implements
                 // code.
                 if (ok(getAcceptedChars(), c)) {
                     if (DBG) log("DTMFKeyListener reading '" + c + "' from input.");
-                    processDtmf(c);
+                    playTone(c);
                     return true;
                 } else if (DBG) {
                     log("DTMFKeyListener rejecting '" + c + "' from input.");
@@ -484,7 +479,7 @@ public class DTMFTwelveKeyDialer implements
          * @return The char value of the input event, otherwise
          * 0 if no matching character was found.
          */
-        private char lookup(KeyEvent event) {
+        private char lookup (KeyEvent event) {
             // This code is similar to {@link DialerKeyListener#lookup(KeyEvent, Spannable) lookup}
             int meta = event.getMetaState();
             int number = event.getNumber();
@@ -516,7 +511,7 @@ public class DTMFTwelveKeyDialer implements
     /**
      * Our own handler to take care of the messages from the phone state changes
      */
-    private Handler mHandler = new Handler() {
+    private Handler mHandler = new Handler () {
         @Override
         public void handleMessage(Message msg) {
             switch (msg.what) {
@@ -533,7 +528,7 @@ public class DTMFTwelveKeyDialer implements
     };
 
 
-    public DTMFTwelveKeyDialer(InCallScreen parent) {
+    DTMFTwelveKeyDialer (InCallScreen parent) {
         mInCallScreen = parent;
         mPhone = ((PhoneApp) mInCallScreen.getApplication()).phone;
         mDialerContainer = (SlidingDrawer) mInCallScreen.findViewById(R.id.dialer_container);
@@ -545,21 +540,17 @@ public class DTMFTwelveKeyDialer implements
             mDialerContainer.setOnDrawerCloseListener(this);
         }
 
-        // Set up the EditText widget that displays DTMF digits in
-        // landscape mode.  (This widget belongs to the InCallScreen, as
-        // opposed to mDialpadDigits, which is part of the full dialpad,
-        // and is used in portrait mode.)
-        mInCallDigits = mInCallScreen.getDialerDisplay();
-
-        mDialerKeyListener = new DTMFKeyListener(mInCallDigits);
-        // If the widget exists, set the behavior correctly.
-        if (mInCallDigits != null && InCallScreen.ConfigurationHelper.isLandscape()) {
-            mInCallDigits.setKeyListener(mDialerKeyListener);
-            mInCallDigits.setMovementMethod(new DTMFDisplayMovementMethod());
+        // setup the dialer display reference.
+        EditText display = parent.getDialerDisplay();
+        mDialerKeyListener = new DTMFKeyListener(display);
+        // if the display is visible, set the behaviour correctly.
+        if (display != null && InCallScreen.ConfigurationHelper.isLandscape()) {
+            display.setKeyListener(mDialerKeyListener);
+            display.setMovementMethod(new DTMFDisplayMovementMethod());
 
             // remove the long-press context menus that support
             // the edit (copy / paste / select) functions.
-            mInCallDigits.setLongClickable(false);
+            display.setLongClickable(false);
         }
     }
 
@@ -569,7 +560,7 @@ public class DTMFTwelveKeyDialer implements
      * @param shouldHide if true, hide the display (and disable DTMF tones) immediately;
      * otherwise, re-enable the display.
      */
-    public void hideDTMFDisplay(boolean shouldHide) {
+    void hideDTMFDisplay(boolean shouldHide) {
         DTMFKeyListener.DTMFDisplayAnimation animation = mDialerKeyListener.mDTMFDisplayAnimation;
 
         // if the animation is in place
@@ -597,7 +588,7 @@ public class DTMFTwelveKeyDialer implements
      * At the same time, get rid of listeners since we're not going to
      * be valid anymore.
      */
-    /* package */ void clearInCallScreenReference() {
+    void clearInCallScreenReference() {
         mInCallScreen = null;
         mDialerKeyListener = null;
         if (mDialerContainer != null) {
@@ -607,11 +598,15 @@ public class DTMFTwelveKeyDialer implements
         closeDialer(false);
     }
 
+    LinearLayout getView() {
+        return mDialerView;
+    }
+
     /**
      * Dialer code that runs when the dialer is brought up.
      * This includes layout changes, etc, and just prepares the dialer model for use.
      */
-    private void onDialerOpen() {
+    void onDialerOpen() {
         if (DBG) log("onDialerOpen()...");
 
         // inflate the view.
@@ -628,13 +623,13 @@ public class DTMFTwelveKeyDialer implements
         app.updateWakeState();
 
         // setup the digit display
-        mDialpadDigits = (EditText) mDialerView.findViewById(R.id.dtmfDialerField);
-        mDialpadDigits.setKeyListener(new DTMFKeyListener(null));
-        mDialpadDigits.requestFocus();
+        mDigits = (EditText) mDialerView.findViewById(R.id.dtmfDialerField);
+        mDigits.setKeyListener(new DTMFKeyListener(null));
+        mDigits.requestFocus();
 
         // remove the long-press context menus that support
         // the edit (copy / paste / select) functions.
-        mDialpadDigits.setLongClickable(false);
+        mDigits.setLongClickable(false);
 
         // Check for the presence of the keypad (portrait mode)
         View view = mDialerView.findViewById(R.id.one);
@@ -645,7 +640,7 @@ public class DTMFTwelveKeyDialer implements
             if (DBG) log("landscape mode setup");
             // Adding hint text to the field to indicate that keyboard
             // is needed while in landscape mode.
-            mDialpadDigits.setHint(R.string.dialerKeyboardHintText);
+            mDigits.setHint(R.string.dialerKeyboardHintText);
         }
 
         // setup the local tone generator.
@@ -685,7 +680,7 @@ public class DTMFTwelveKeyDialer implements
      * Dialer code that runs when the dialer is closed.
      * This releases resources acquired when we start the dialer.
      */
-    private void onDialerClose() {
+    public void onDialerClose() {
         if (DBG) log("onDialerClose()...");
 
         // reset back to a short delay for the poke lock.
@@ -759,7 +754,6 @@ public class DTMFTwelveKeyDialer implements
      * catch the back and call buttons to return to the in call activity.
      */
     public boolean onKeyDown(int keyCode, KeyEvent event) {
-        // if (DBG) log("onKeyDown:  keyCode " + keyCode);
         switch (keyCode) {
             // finish for these events
             case KeyEvent.KEYCODE_BACK:
@@ -775,7 +769,6 @@ public class DTMFTwelveKeyDialer implements
      * catch the back and call buttons to return to the in call activity.
      */
     public boolean onKeyUp(int keyCode, KeyEvent event) {
-        // if (DBG) log("onKeyUp:  keyCode " + keyCode);
         return mInCallScreen.onKeyUp(keyCode, event);
     }
 
@@ -791,7 +784,7 @@ public class DTMFTwelveKeyDialer implements
                 case MotionEvent.ACTION_DOWN:
                     // Append the character mapped to this button, to the display.
                     // start the tone
-                    processDtmf(mDisplayMap.get(viewId));
+                    appendDigit(mDisplayMap.get(viewId));
                     break;
                 case MotionEvent.ACTION_UP:
                 case MotionEvent.ACTION_CANCEL:
@@ -809,15 +802,13 @@ public class DTMFTwelveKeyDialer implements
      * Implements View.OnKeyListener for the DTMF buttons.  Enables dialing with trackball/dpad.
      */
     public boolean onKey(View v, int keyCode, KeyEvent event) {
-        // if (DBG) log("onKey:  keyCode " + keyCode + ", view " + v);
-
         if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) {
             int viewId = v.getId();
             if (mDisplayMap.containsKey(viewId)) {
                 switch (event.getAction()) {
                 case KeyEvent.ACTION_DOWN:
                     if (event.getRepeatCount() == 0) {
-                        processDtmf(mDisplayMap.get(viewId));
+                        appendDigit(mDisplayMap.get(viewId));
                     }
                     break;
                 case KeyEvent.ACTION_UP:
@@ -885,28 +876,20 @@ public class DTMFTwelveKeyDialer implements
     }
 
     /**
-     * Processes the specified digit as a DTMF key, by playing the
-     * appropriate DTMF tone, and appending the digit to the EditText
-     * field that displays the DTMF digits sent so far.
+     * update the text area and playback the tone.
      */
-    private final void processDtmf(char c) {
+    private final void appendDigit(char c) {
         // if it is a valid key, then update the display and send the dtmf tone.
         if (PhoneNumberUtils.is12Key(c)) {
             if (DBG) log("updating display and sending dtmf tone for '" + c + "'");
 
-            if (mDialpadDigits != null) {
-                mDialpadDigits.getText().append(c);
+            if (mDigits != null) {
+                mDigits.getText().append(c);
             }
-
-            // Note we *don't* need to manually append this digit to the
-            // landscape-mode EditText field (mInCallDigits), since it
-            // gets key events directly and automatically appends whetever
-            // the user types.
-
-            // Play the tone if it exists.
+            // play the tone if it exists.
             if (mToneMap.containsKey(c)) {
                 // begin tone playback.
-                startTone(c);
+                playTone(c);
             }
         } else if (DBG) {
             log("ignoring dtmf request for '" + c + "'");
@@ -915,58 +898,20 @@ public class DTMFTwelveKeyDialer implements
     }
 
     /**
-     * Clears out the display of "DTMF digits typed so far" that's kept in
-     * either mDialpadDigits or mInCallDigits (depending on whether we're
-     * in portrait or landscape mode.)
-     *
-     * The InCallScreen is responsible for calling this method any time a
-     * new call becomes active (or, more simply, any time a call ends).
-     * This is how we make sure that the "history" of DTMF digits you type
-     * doesn't persist from one call to the next.
-     *
-     * TODO: it might be more elegent if the dialpad itself could remember
-     * the call that we're associated with, and clear the digits if the
-     * "current call" has changed since last time.  (This would require
-     * some unique identifier that's different for each call.  We can't
-     * just use the foreground Call object, since that's a singleton that
-     * lasts the whole life of the phone process.  Instead, maybe look at
-     * the Connection object that comes back from getEarliestConnection()?
-     * Or getEarliestConnectTime()?)
-     *
-     * Or to be even fancier, we could keep a mapping of *multiple*
-     * "active calls" to DTMF strings.  That way you could have two lines
-     * in use and swap calls multiple times, and we'd still remember the
-     * digits for each call.  (But that's such an obscure use case that
-     * it's probably not worth the extra complexity.)
-     */
-    public void clearDigits() {
-        if (DBG) log("clearDigits()...");
-
-        if (mDialpadDigits != null) {
-            mDialpadDigits.setText("");
-        }
-
-        if (mInCallDigits != null) {
-            mInCallDigits.setText("");
-        }
-
-    }
-
-    /**
-     * Starts playing a DTMF tone.  Also begins the local tone playback,
-     * if enabled.
+     * Start playing a DTMF tone, also begin the local tone playback if it is
+     * enabled.
      *
      * @param tone a tone code from {@link ToneGenerator}
      */
-    private void startTone(char tone) {
-        if (DBG) log("startTone()...");
+    void playTone(char tone) {
+        if (DBG) log("starting remote tone.");
         PhoneApp.getInstance().phone.startDtmf(tone);
 
         // if local tone playback is enabled, start it.
         if (mDTMFToneEnabled) {
             synchronized (mToneGeneratorLock) {
                 if (mToneGenerator == null) {
-                    if (DBG) log("startTone: mToneGenerator == null, tone: " + tone);
+                    if (DBG) log("playTone: mToneGenerator == null, tone: " + tone);
                 } else {
                     if (DBG) log("starting local tone " + tone);
                     mToneGenerator.startTone(mToneMap.get(tone));
@@ -976,14 +921,14 @@ public class DTMFTwelveKeyDialer implements
     }
 
     /**
-     * Stops playing the current DTMF tone.
+     * Stop playing the current DTMF tone.
      *
      * The ToneStopper class (similar to that in {@link TwelveKeyDialer#mToneStopper})
      * has been removed in favor of synchronous start / stop calls since tone duration
      * is now a function of the input.
      */
-    private void stopTone() {
-        if (DBG) log("stopTone()...");
+    void stopTone() {
+        if (DBG) log("stopping remote tone.");
         PhoneApp.getInstance().phone.stopDtmf();
 
         // if local tone playback is enabled, stop it.
index ab2889f..e96a2bb 100644 (file)
@@ -1017,7 +1017,7 @@ public class InCallScreen extends Activity
         } else if (hasActiveCall && hasHoldingCall) {
             // Two lines are in use: CALL means "Swap calls".
             if (DBG) log("handleCallKey: both lines in use ==> swap calls.");
-            internalSwapCalls();
+            PhoneUtils.switchHoldingAndActive(mPhone);
         } else if (hasHoldingCall) {
             // There's only one line in use, AND it's on hold.
             // In this case CALL is a shortcut for "unhold".
@@ -1061,9 +1061,8 @@ public class InCallScreen extends Activity
     @Override
     public void onWindowFocusChanged(boolean hasFocus) {
         // the dtmf tones should no longer be played
-        if (DBG) log("onWindowFocusChanged(" + hasFocus + ")...");
+        if (DBG) log("handling key up event...");
         if (!hasFocus && mDialer != null) {
-            if (DBG) log("- onWindowFocusChanged: faking onDialerKeyUp()...");
             mDialer.onDialerKeyUp(null);
         }
     }
@@ -1193,10 +1192,6 @@ public class InCallScreen extends Activity
                 }
                 break;
 
-            case KeyEvent.KEYCODE_MUTE:
-                PhoneUtils.setMute(mPhone, !PhoneUtils.getMute(mPhone));
-                return true;
-
             // Various testing/debugging features, enabled ONLY when DBG == true.
             case KeyEvent.KEYCODE_SLASH:
                 if (DBG) {
@@ -1222,6 +1217,9 @@ public class InCallScreen extends Activity
                     return true;
                 }
                 break;
+            case KeyEvent.KEYCODE_MUTE:
+                PhoneUtils.setMute(mPhone, !PhoneUtils.getMute(mPhone));
+                return true;
         }
 
         if (event.getRepeatCount() == 0 && handleDialerKeyDown(keyCode, event)) {
@@ -1349,11 +1347,6 @@ public class InCallScreen extends Activity
         Connection.DisconnectCause cause = c.getDisconnectCause();
         if (DBG) log("onDisconnect: " + c + ", cause=" + cause);
 
-        // Any time a call disconnects, clear out the "history" of DTMF
-        // digits you typed (to make sure it doesn't persist from one call
-        // to the next.)
-        mDialer.clearDigits();
-
         // Under certain call disconnected states, we want to alert the user
         // with a dialog instead of going through the normal disconnect
         // routine.
@@ -1757,7 +1750,7 @@ public class InCallScreen extends Activity
 
         if (DBG) log("- updateScreen: updating the in-call UI...");
         mCallCard.updateState(mPhone);
-        updateDialpadVisibility();
+        updateDialerDrawer();
         updateMenuButtonHint();
     }
 
@@ -2129,7 +2122,7 @@ public class InCallScreen extends Activity
 
             case R.id.menuSwapCalls:
                 if (DBG) log("onClick: SwapCalls...");
-                internalSwapCalls();
+                PhoneUtils.switchHoldingAndActive(mPhone);
                 break;
 
             case R.id.menuMergeCalls:
@@ -2623,28 +2616,6 @@ public class InCallScreen extends Activity
         PhoneUtils.hangupRingingCall(mPhone);
     }
 
-    /**
-     * InCallScreen-specific wrapper around PhoneUtils.switchHoldingAndActive().
-     */
-    private void internalSwapCalls() {
-        if (DBG) log("internalSwapCalls()...");
-
-        // Any time we swap calls, force the DTMF dialpad to close.
-        // (We want the regular in-call UI to be visible right now, so the
-        // user can clearly see which call is now in the foreground.)
-        mDialer.closeDialer(true);  // do the "closing" animation
-
-        // Also, clear out the "history" of DTMF digits you typed, to make
-        // sure you don't see digits from call #1 while call #2 is active.
-        // (Yes, this does mean that swapping calls twice will cause you
-        // to lose any previous digits from the current call; see the TODO
-        // comment on DTMFTwelvKeyDialer.clearDigits() for more info.)
-        mDialer.clearDigits();
-
-        // Swap the fg and bg calls.
-        PhoneUtils.switchHoldingAndActive(mPhone);
-    }
-
     //
     // "Manage conference" UI.
     //
@@ -2754,7 +2725,7 @@ public class InCallScreen extends Activity
 
         // Update the visibility of the DTMF dialer tab on any state
         // change.
-        updateDialpadVisibility();
+        updateDialerDrawer();
     }
 
     /**
@@ -3008,39 +2979,13 @@ public class InCallScreen extends Activity
     }
 
     /**
-     * Updates the visibility of the DTMF dialpad and the "sliding drawer"
-     * handle, based on the current state of the phone and/or the current
-     * InCallScreenMode.
+     * Updates the DTMF dialer tab based on the current state of the phone
+     * and/or the current InCallScreenMode.
      */
-    private void updateDialpadVisibility() {
-        //
-        // (1) The dialpad itself:
-        //
-        // If an incoming call is ringing, make sure the dialpad is
-        // closed.  (We do this to make sure we're not covering up the
-        // "incoming call" UI, and especially to make sure that the "touch
-        // lock" overlay won't appear.)
-        if (mPhone.getState() == Phone.State.RINGING) {
-            mDialer.closeDialer(false);  // don't do the "closing" animation
-
-            // Also, clear out the "history" of DTMF digits you may have typed
-            // into the previous call (so you don't see the previous call's
-            // digits if you answer this call and then bring up the dialpad.)
-            //
-            // TODO: it would be more precise to do this when you *answer* the
-            // incoming call, rather than as soon as it starts ringing, but
-            // the InCallScreen doesn't keep enough state right now to notice
-            // that specific transition in onPhoneStateChanged().
-            mDialer.clearDigits();
-        }
-
-        //
-        // (2) The "sliding drawer" handle:
-        //
-        // This handle should be visible only if it's OK to actually open
-        // the dialpad.
-        //
+    private void updateDialerDrawer() {
         if (mDialerDrawer != null) {
+            // The sliding drawer tab is visible only when it's OK
+            // to actually use the dialpad.
             int visibility = okToShowDialpad() ? View.VISIBLE : View.GONE;
             mDialerDrawer.setVisibility(visibility);
         }
@@ -3080,7 +3025,7 @@ public class InCallScreen extends Activity
     /**
      * Get the DTMF dialer display field.
      */
-    /* package */ EditText getDialerDisplay() {
+    EditText getDialerDisplay() {
         return mDTMFDisplay;
     }
 
@@ -3609,20 +3554,19 @@ public class InCallScreen extends Activity
                 long now = SystemClock.uptimeMillis();
                 if (DBG) log("- touch lock icon: handling a DOWN event, t = " + now);
 
-                // Look for the double-tap gesture:
-                if (now < mTouchLockLastTouchTime + ViewConfiguration.getDoubleTapTimeout()) {
+                // Look for the double-tap (aka "jump tap") gesture:
+                if (now < mTouchLockLastTouchTime + ViewConfiguration.getJumpTapTimeout()) {
                     if (DBG) log("==> touch lock icon: DOUBLE-TAP!");
                     // This was the 2nd tap of a double-tap gesture.
                     // Take down the touch lock overlay, but post a
                     // message in the future to bring it back later.
                     enableTouchLock(false);
                     resetTouchLockTimer();
+                } else {
+                    // Stash away the current time, since this might
+                    // be the first tap of a double-tap gesture.
+                    mTouchLockLastTouchTime = now;
                 }
-            } else if (event.getAction() == MotionEvent.ACTION_UP) {
-                // Stash away the current time in case this is the first
-                // tap of a double-tap gesture.  (We measure the time from
-                // the first tap's UP to the second tap's DOWN.)
-                mTouchLockLastTouchTime = SystemClock.uptimeMillis();
             }
 
             // And regardless of what just happened, we *always* consume
index 65c6726..98b2059 100644 (file)
@@ -25,21 +25,16 @@ import android.os.Handler;
 import android.os.Looper;
 import android.os.Message;
 import android.os.SystemClock;
-import android.os.SystemProperties;
 import android.os.Vibrator;
-import android.util.Log;
-
 import com.android.internal.telephony.Phone;
+import android.util.Log;
 
 /**
  * Ringer manager for the Phone app.
  */
 public class Ringer {
     private static final String TAG = PhoneApp.LOG_TAG;
-
-    // Enable debug logging for userdebug builds.
-    private static final boolean DBG =
-            (SystemProperties.getInt("ro.debuggable", 0) == 1);
+    private static final boolean DBG = false;
 
     private static final int PLAY_RING_ONCE = 1;
     private static final int STOP_RING = 3;
@@ -181,8 +176,6 @@ public class Ringer {
                 mFirstRingEventTime = -1;
                 mFirstRingStartTime = -1;
                 mRingPending = false;
-            } else {
-                if (DBG) log("- stopRing: null mRingHandler!");
             }
 
             if (mVibratorThread != null) {
@@ -258,7 +251,6 @@ public class Ringer {
                     Ringtone r = null;
                     switch (msg.what) {
                         case PLAY_RING_ONCE:
-                            if (DBG) log("mRingHandler: PLAY_RING_ONCE...");
                             if (mRingtone == null && ! hasMessages(STOP_RING)) {
                                 // create the ringtone with the uri 
                                 if (DBG) log("creating ringtone with uri " + mCustomRingtoneUri);
@@ -282,12 +274,9 @@ public class Ringer {
                             }
                             break;
                         case STOP_RING:
-                            if (DBG) log("mRingHandler: STOP_RING...");
                             r = (Ringtone) msg.obj;
                             if (r != null) {
                                 r.stop();
-                            } else {
-                                if (DBG) log("- STOP_RING with null ringtone!  msg = " + msg);
                             }
                             getLooper().quit();
                             break;