am 84fa35c: AI 148147: Import lots of zh_TW translation changes.

Merge commit '84fa35c2c4802b7cd1e315016c0027f96c5801ea' into donut

* commit '84fa35c2c4802b7cd1e315016c0027f96c5801ea':
  AI 148147: Import lots of zh_TW translation changes.
diff --git a/res/layout/edit_event.xml b/res/layout/edit_event.xml
index eb5886e..352a4ed 100644
--- a/res/layout/edit_event.xml
+++ b/res/layout/edit_event.xml
@@ -289,11 +289,18 @@
             android:layout_height="wrap_content"
             android:gravity="center_vertical|right"
             android:paddingBottom="5dip">
+
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginRight="2dip"
+                android:text="@string/add_new_reminder"/>
+
             <ImageButton android:id="@+id/reminder_add"
                 style="@style/PlusButton"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_marginRight="10dip"
+                android:layout_marginRight="7dip"
                 android:gravity="center_vertical|right"
             />
         </LinearLayout>
diff --git a/res/layout/edit_reminder_item.xml b/res/layout/edit_reminder_item.xml
index 18e45e6..2857255 100644
--- a/res/layout/edit_reminder_item.xml
+++ b/res/layout/edit_reminder_item.xml
@@ -25,13 +25,13 @@
         android:layout_height="wrap_content"
         android:layout_weight="1"
         android:layout_gravity="center_vertical"
+        android:layout_marginRight="2dip"
         android:entries="@array/reminder_minutes_labels"/>
 
     <ImageButton android:id="@+id/reminder_remove"
         style="@style/MinusButton"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:layout_marginRight="2dip"
         android:gravity="center_vertical"
     />
 </LinearLayout>
diff --git a/res/layout/event_info_activity.xml b/res/layout/event_info_activity.xml
index 3a85ac9..3992e80 100644
--- a/res/layout/event_info_activity.xml
+++ b/res/layout/event_info_activity.xml
@@ -185,7 +185,7 @@
             android:layout_width="fill_parent"
             android:layout_height="wrap_content"
             android:paddingLeft="8dip"
-            android:paddingRight="8dip"
+            android:paddingRight="7dip"
             android:paddingTop="5dip"
             android:paddingBottom="1dip">
         
@@ -205,13 +205,21 @@
         <LinearLayout
             android:layout_width="fill_parent"
             android:layout_height="wrap_content"
-            android:gravity="right"
+            android:gravity="center_vertical|right"
+            android:paddingRight="5dip"
             android:paddingBottom="5dip">
+
+            <TextView
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_marginRight="7dip"
+                android:text="@string/add_new_reminder"/>
+
             <ImageButton android:id="@+id/reminder_add"
                 style="@style/PlusButton"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
-                android:layout_marginRight="10dip"
+                android:layout_marginRight="2dip"
             />
         </LinearLayout>
     </LinearLayout>
diff --git a/res/values-de/arrays.xml b/res/values-de/arrays.xml
index aca448c..627872e 100644
--- a/res/values-de/arrays.xml
+++ b/res/values-de/arrays.xml
@@ -72,10 +72,10 @@
     <item>"Samstag"</item>
   </string-array>
   <string-array name="ordinal_labels">
-    <item>"1."</item>
-    <item>"2."</item>
-    <item>"3."</item>
-    <item>"4."</item>
+    <item>"ersten"</item>
+    <item>"zweiten"</item>
+    <item>"dritten"</item>
+    <item>"vierten"</item>
     <item>"letzten"</item>
   </string-array>
   <string-array name="response_labels1">
diff --git a/res/values-de/strings.xml b/res/values-de/strings.xml
index ac13c12..4cc060c 100644
--- a/res/values-de/strings.xml
+++ b/res/values-de/strings.xml
@@ -118,7 +118,7 @@
     <string name="preferences_alerts_type_dialog">"Benachrichtigungen und Hinweise"</string>
     <string name="preferences_alerts_vibrate_title">"Vibration"</string>
     <string name="preferences_alerts_ringtone_title">"Klingelton auswählen"</string>
-    <string name="preferences_default_reminder_title">"Standard-Erinnerungszeit"</string>
+    <string name="preferences_default_reminder_title">"Standarderinnerung"</string>
     <string name="preferences_default_reminder_dialog">"Standard-Erinnerungszeit"</string>
     <string name="preferences_default_reminder_default">"10"</string>
 </resources>
diff --git a/res/values-es/arrays.xml b/res/values-es/arrays.xml
index 21ff75a..ac59e24 100644
--- a/res/values-es/arrays.xml
+++ b/res/values-es/arrays.xml
@@ -63,18 +63,18 @@
     <item>"Público"</item>
   </string-array>
   <string-array name="day_labels">
-    <item>"domingo"</item>
-    <item>"lunes"</item>
-    <item>"martes"</item>
-    <item>"miércoles"</item>
-    <item>"jueves"</item>
-    <item>"viernes"</item>
-    <item>"sábado"</item>
+    <item>"Domingo"</item>
+    <item>"Lunes"</item>
+    <item>"Martes"</item>
+    <item>"Miércoles"</item>
+    <item>"Jueves"</item>
+    <item>"Viernes"</item>
+    <item>"Sábado"</item>
   </string-array>
   <string-array name="ordinal_labels">
-    <item>"primer"</item>
+    <item>"primero"</item>
     <item>"segundo"</item>
-    <item>"tercer"</item>
+    <item>"tercero"</item>
     <item>"cuarto"</item>
     <item>"último"</item>
   </string-array>
diff --git a/res/values-es/strings.xml b/res/values-es/strings.xml
index 8337068..e4a759d 100644
--- a/res/values-es/strings.xml
+++ b/res/values-es/strings.xml
@@ -66,8 +66,8 @@
     <string name="alert_title">"Notificaciones de Calendar"</string>
     <string name="alert_when_label">"Cuándo:"</string>
     <string name="alert_where_label">"Dónde:"</string>
-    <string name="alert_missed_events_single">"(<xliff:g id="REMINDER_COUNT">%s</xliff:g> recordatorios más)"</string>
-    <string name="alert_missed_events_multiple">"(<xliff:g id="REMINDER_COUNT">%s</xliff:g> recordatorios más)"</string>
+    <string name="alert_missed_events_single">"(<xliff:g id="REMINDER_COUNT">%s</xliff:g> más recordatorios)"</string>
+    <string name="alert_missed_events_multiple">"(<xliff:g id="REMINDER_COUNT">%s</xliff:g> más recordatorios)"</string>
     <string name="event_info_title">"Ver evento"</string>
     <string name="event_info_title_invite">"Invitación a un evento"</string>
     <string name="add_new_reminder">"Añadir recordatorio"</string>
@@ -98,9 +98,9 @@
     <string name="dismiss_all_label">"Descartar todos"</string>
     <string name="does_not_repeat">"Evento único"</string>
     <string name="daily">"Cada día"</string>
-    <string name="every_weekday">"Cada día laborable (lunes-viernes)"</string>
+    <string name="every_weekday">"Cada día laboral (lunes-viernes)"</string>
     <string name="weekly">"Cada semana (todos los <xliff:g id="DAYS_OF_WEEK">%s</xliff:g>)"</string>
-    <string name="monthly_on_day_count">"Cada mes (cada <xliff:g id="ORDINAL_NUMBER">%1$s</xliff:g> <xliff:g id="DAY_OF_WEEK">%2$s</xliff:g>)"</string>
+    <string name="monthly_on_day_count">"Cada mes (todos los <xliff:g id="ORDINAL_NUMBER">%1$s</xliff:g><xliff:g id="DAY_OF_WEEK">%2$s</xliff:g>)"</string>
     <string name="monthly_on_day">"Cada mes (el día <xliff:g id="DAY_OF_MONTH">%s</xliff:g>)"</string>
     <string name="yearly">"Cada año (el <xliff:g id="DATES">%s</xliff:g>)"</string>
     <string name="custom">"Personalizado... (no se puede personalizar por teléfono)"</string>
@@ -113,12 +113,12 @@
     <string name="preferences_title">"Ajustes"</string>
     <string name="preferences_general_title">"Configuración de la vista de calendario"</string>
     <string name="preferences_alerts_title">"Configuración de los recordatorios"</string>
-    <string name="preferences_hide_declined_title">"Ocultar eventos rechaz."</string>
-    <string name="preferences_alerts_type_title">"Configurar alertas y notif."</string>
+    <string name="preferences_hide_declined_title">"Ocultar eventos rechazados"</string>
+    <string name="preferences_alerts_type_title">"Configurar notificaciones y alertas"</string>
     <string name="preferences_alerts_type_dialog">"Alertas y notificaciones"</string>
     <string name="preferences_alerts_vibrate_title">"Vibrar"</string>
     <string name="preferences_alerts_ringtone_title">"Seleccionar tono"</string>
-    <string name="preferences_default_reminder_title">"Recordatorio predeterminado"</string>
+    <string name="preferences_default_reminder_title">"Configurar recordatorio predeterminado"</string>
     <string name="preferences_default_reminder_dialog">"Duración predeterminada del recordatorio"</string>
     <string name="preferences_default_reminder_default">"10"</string>
 </resources>
diff --git a/res/values-fr/strings.xml b/res/values-fr/strings.xml
index 2ad1d00..d1f46e1 100644
--- a/res/values-fr/strings.xml
+++ b/res/values-fr/strings.xml
@@ -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="app_label">"Agenda"</string>
+    <string name="app_label">"Google Agenda"</string>
     <string name="calendar_plug"><font fgcolor="#ffffffff">"Bienvenue dans Google Agenda !"</font>" "\n"La solution de Google pour gérer votre emploi du temps en planifiant vos événements de manière plus intuitive, efficace et directe."</string>
     <string name="what_label">"Objet"</string>
     <string name="when_label">"Date"</string>
@@ -27,8 +27,8 @@
     <item quantity="other">"<xliff:g id="COUNT">%d</xliff:g> minutes"</item>
   </plurals>
   <plurals name="Nmins">
-    <item quantity="one">"1 mn"</item>
-    <item quantity="other">"<xliff:g id="COUNT">%d</xliff:g> mn"</item>
+    <item quantity="one">"1 min"</item>
+    <item quantity="other">"<xliff:g id="COUNT">%d</xliff:g> min"</item>
   </plurals>
   <plurals name="Nhours">
     <item quantity="one">"1 heure"</item>
@@ -54,7 +54,7 @@
     <string name="plus_N_more">"(et <xliff:g id="MORE_COUNT">%d</xliff:g> autres…)"</string>
     <string name="calendars_title">"Mes agendas"</string>
     <string name="add_calendars">"Ajouter des agendas"</string>
-    <string name="remove_calendars">"Supprimer des agendas"</string>
+    <string name="remove_calendars">"Supprimer les agendas"</string>
     <string name="event_edit_title">"Détails sur l\'événement"</string>
     <string name="hint_what">"Nom de l\'événement"</string>
     <string name="hint_where">"Lieu de l\'événement"</string>
@@ -92,12 +92,12 @@
     <string name="delete_label">"Supprimer"</string>
     <string name="delete_event_label">"Supprimer l\'événement"</string>
     <string name="save_label">"Enregistrer"</string>
-    <string name="discard_label">"Annuler"</string>
+    <string name="discard_label">"Ignorer"</string>
     <string name="import_label">"Importer"</string>
     <string name="snooze_all_label">"Tout répéter"</string>
     <string name="dismiss_all_label">"Tout supprimer"</string>
     <string name="does_not_repeat">"Événement ponctuel"</string>
-    <string name="daily">"Quotidien"</string>
+    <string name="daily">"Ignorer"</string>
     <string name="every_weekday">"Les jours ouvrables (lun–ven)"</string>
     <string name="weekly">"Hebdomadaire (chaque <xliff:g id="DAYS_OF_WEEK">%s</xliff:g>)"</string>
     <string name="monthly_on_day_count">"Mensuel (chaque <xliff:g id="ORDINAL_NUMBER">%1$s</xliff:g> <xliff:g id="DAY_OF_WEEK">%2$s</xliff:g>)"</string>
@@ -111,7 +111,7 @@
     <string name="delete_title">"Supprimer"</string>
     <string name="change_response_title">"Modifier la réponse"</string>
     <string name="preferences_title">"Paramètres"</string>
-    <string name="preferences_general_title">"Paramètres d\'affichage de l\'agenda"</string>
+    <string name="preferences_general_title">"Paramètre d\'affichage de l\'agenda"</string>
     <string name="preferences_alerts_title">"Paramètres de rappel"</string>
     <string name="preferences_hide_declined_title">"Masquer évén. refusés"</string>
     <string name="preferences_alerts_type_title">"Alertes et notifications"</string>
@@ -119,6 +119,6 @@
     <string name="preferences_alerts_vibrate_title">"Vibreur"</string>
     <string name="preferences_alerts_ringtone_title">"Sélectionner la sonnerie"</string>
     <string name="preferences_default_reminder_title">"Définir le rappel par défaut"</string>
-    <string name="preferences_default_reminder_dialog">"Rappel par défaut"</string>
+    <string name="preferences_default_reminder_dialog">"Intervalle de rappel par défaut"</string>
     <string name="preferences_default_reminder_default">"10"</string>
 </resources>
diff --git a/res/values-it/arrays.xml b/res/values-it/arrays.xml
index ef167d7..66fd63a 100644
--- a/res/values-it/arrays.xml
+++ b/res/values-it/arrays.xml
@@ -51,7 +51,7 @@
   <string-array name="preferences_alert_type_labels">
     <item>"Avviso"</item>
     <item>"Notifica barra di stato"</item>
-    <item>"Disattiva"</item>
+    <item>"Disativa"</item>
   </string-array>
   <string-array name="availability">
     <item>"Occupato"</item>
diff --git a/res/values-pl/strings.xml b/res/values-pl/strings.xml
index 86a02f0..57a154a 100644
--- a/res/values-pl/strings.xml
+++ b/res/values-pl/strings.xml
@@ -51,7 +51,7 @@
     <string name="goto_today">"Dzisiaj"</string>
     <string name="menu_select_calendars">"Moje kalendarze"</string>
     <string name="menu_preferences">"Ustawienia"</string>
-    <string name="plus_N_more">"(i <xliff:g id="MORE_COUNT">%d</xliff:g> więcej…)"</string>
+    <string name="plus_N_more">"(i <xliff:g id="MORE_COUNT">%d</xliff:g> więcej …)"</string>
     <string name="calendars_title">"Moje kalendarze"</string>
     <string name="add_calendars">"Dodaj kalendarze"</string>
     <string name="remove_calendars">"Usuń kalendarze"</string>
@@ -101,7 +101,7 @@
     <string name="every_weekday">"Codziennie (pn-pt)"</string>
     <string name="weekly">"Co tydzień (<xliff:g id="DAYS_OF_WEEK">%s</xliff:g>)"</string>
     <string name="monthly_on_day_count">"Co miesiąc (co <xliff:g id="ORDINAL_NUMBER">%1$s</xliff:g> <xliff:g id="DAY_OF_WEEK">%2$s</xliff:g>)"</string>
-    <string name="monthly_on_day">"Co miesiąc (<xliff:g id="DAY_OF_MONTH">%s</xliff:g>. każdego miesiąca)"</string>
+    <string name="monthly_on_day">"Co miesiąc (<xliff:g id="DAY_OF_MONTH">%s</xliff:g> każdego miesiąca)"</string>
     <string name="yearly">"Co rok (<xliff:g id="DATES">%s</xliff:g>)"</string>
     <string name="custom">"Niestandardowo… (nie można dostosować na telefonie)"</string>
     <string name="modify_event">"Zmień tylko to wydarzenie."</string>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 0e26905..e49015e 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -247,9 +247,9 @@
     <!-- A menu item for deleting an event -->
     <string name="delete_event_label">"Delete event"</string>
     <!-- The button label for saving an event -->
-    <string name="save_label">Save</string>
+    <string name="save_label">Done</string>
     <!-- The button label for discarding changes to an event -->
-    <string name="discard_label">Discard changes</string>
+    <string name="discard_label">Revert</string>
     <!-- The button label for importing events from another source to the phone -->
     <string name="import_label">"Import"</string>
 
diff --git a/src/com/android/calendar/SelectCalendarsActivity.java b/src/com/android/calendar/SelectCalendarsActivity.java
index 44943eb..01037ab 100644
--- a/src/com/android/calendar/SelectCalendarsActivity.java
+++ b/src/com/android/calendar/SelectCalendarsActivity.java
@@ -35,6 +35,7 @@
 import android.view.Window;
 import android.view.MenuItem.OnMenuItemClickListener;
 import android.widget.AdapterView;
+import android.widget.Button;
 import android.widget.CheckBox;
 import android.widget.ListView;
 
@@ -116,6 +117,8 @@
         boolean[] mIsChecked;
         ContentResolver mContentResolver;
         boolean mRemove;
+        private int mCheckedCount;
+        private Button mOkButtonInAddDeleteCalendar;
         
         public ChangeCalendarAction(boolean remove) {
             mContentResolver = SelectCalendarsActivity.this.getContentResolver();
@@ -128,6 +131,13 @@
          */
         public void onClick(DialogInterface dialog, int position, boolean isChecked) {
             mIsChecked[position] = isChecked;
+            if (isChecked) {
+                mCheckedCount++;
+            } else {
+                mCheckedCount--;
+            }
+
+            mOkButtonInAddDeleteCalendar.setEnabled(mCheckedCount > 0);
         }
 
         /*
@@ -136,7 +146,7 @@
          */
         public void onClick(DialogInterface dialog, int which) {
             // If the user cancelled the dialog, then do nothing.
-            if (which == DialogInterface.BUTTON2) {
+            if (which == DialogInterface.BUTTON_NEGATIVE) {
                 return;
             }
             
@@ -179,6 +189,7 @@
                 selection = Calendars.SYNC_EVENTS + "=0";
             }
             ContentResolver cr = getContentResolver();
+            // TODO this can cause ANRs http://b/1736511
             Cursor cursor = cr.query(Calendars.CONTENT_URI, PROJECTION,
                     selection, null /* selectionArgs */,
                     Calendars.DEFAULT_SORT_ORDER);
@@ -192,6 +203,7 @@
             CharSequence[] calendarNames = new CharSequence[count];
             mCalendarIds = new long[count];
             mIsChecked = new boolean[count];
+            mCheckedCount = 0;
             try {
                 int pos = 0;
                 while (cursor.moveToNext()) {
@@ -203,10 +215,13 @@
                 cursor.close();
             }
             
-            builder.setMultiChoiceItems(calendarNames, null, this)
+            AlertDialog dialog = builder.setMultiChoiceItems(calendarNames, null, this)
                 .setPositiveButton(android.R.string.ok, this)
-                .setNegativeButton(android.R.string.cancel, this)
-                .show();
+                .setNegativeButton(android.R.string.cancel, this).create();
+            dialog.show();
+            mOkButtonInAddDeleteCalendar = dialog.getButton(DialogInterface.BUTTON_POSITIVE);
+            mOkButtonInAddDeleteCalendar.setEnabled(false);
+
             return true;
         }
     }