OSDN Git Service

fix bug where the default reminders get added in onRestore(), rather than once in...
authorDebajit Ghosh <debajit@google.com>
Sat, 19 Sep 2009 00:55:23 +0000 (17:55 -0700)
committerDebajit Ghosh <debajit@google.com>
Sat, 19 Sep 2009 00:55:23 +0000 (17:55 -0700)
src/com/android/calendar/EditEvent.java

index 25179ab..a3d94e3 100644 (file)
@@ -598,6 +598,8 @@ public class EditEvent extends Activity implements View.OnClickListener,
         setContentView(R.layout.edit_event);
         mAccountManager = AccountManager.get(this);
 
+        boolean newEvent = false;
+
         mFirstDayOfWeek = Calendar.getInstance().getFirstDayOfWeek();
 
         mStartTime = new Time();
@@ -645,6 +647,7 @@ public class EditEvent extends Activity implements View.OnClickListener,
             mInitialValues.put(Events.EVENT_TIMEZONE, timezone);
             mInitialValues.put(Events.CALENDAR_ID, calendarId);
         } else {
+            newEvent = true;
             // We are creating a new event, so set the default from the
             // intent (if specified).
             allDay = intent.getBooleanExtra(EVENT_ALL_DAY, false);
@@ -773,6 +776,11 @@ public class EditEvent extends Activity implements View.OnClickListener,
                 prefs.getString(CalendarPreferenceActivity.KEY_DEFAULT_REMINDER, "0");
         mDefaultReminderMinutes = Integer.parseInt(durationString);
 
+        if (newEvent && mDefaultReminderMinutes != 0) {
+            addReminder(this, this, mReminderItems, mReminderValues,
+                    mReminderLabels, mDefaultReminderMinutes);
+        }
+
         long eventId = (mEventCursor == null) ? -1 : mEventCursor.getLong(EVENT_INDEX_ID);
         ContentResolver cr = getContentResolver();
 
@@ -1032,12 +1040,6 @@ public class EditEvent extends Activity implements View.OnClickListener,
                 mEndTime.set(startMillis + DateUtils.HOUR_IN_MILLIS);
             }
 
-            // New event - set the default reminder
-            if (mDefaultReminderMinutes != 0) {
-                addReminder(this, this, mReminderItems, mReminderValues,
-                        mReminderLabels, mDefaultReminderMinutes);
-            }
-
             // Hide delete button
             mDeleteButton.setVisibility(View.GONE);
         }