Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit be686750 authored by Michael Chan's avatar Michael Chan
Browse files

b/3211571 Refresh the action bar date after resume.

Change-Id: I3dea6266a68ba2b17f12945d2dd0641495670005
parent 34083047
Loading
Loading
Loading
Loading
+3 −2
Original line number Diff line number Diff line
@@ -410,7 +410,7 @@ public class AllInOneActivity extends Activity implements EventHandler,
        updateSecondaryTitleFields(mController.getTime());
        // Make sure the drop-down menu will get its date updated at midnight
        if (mActionBarMenuSpinnerAdapter != null) {
            mActionBarMenuSpinnerAdapter.setMidnightHandler();
            mActionBarMenuSpinnerAdapter.refresh(this);
        }

        if (mControlsMenu != null) {
@@ -441,7 +441,7 @@ public class AllInOneActivity extends Activity implements EventHandler,
        mPaused = true;
        mHomeTime.removeCallbacks(mHomeTimeUpdater);
        if (mActionBarMenuSpinnerAdapter != null) {
            mActionBarMenuSpinnerAdapter.resetMidnightHandler();
            mActionBarMenuSpinnerAdapter.onPause();
        }
        mContentResolver.unregisterContentObserver(mObserver);
        if (isFinishing()) {
@@ -867,6 +867,7 @@ public class AllInOneActivity extends Activity implements EventHandler,
        } else if (mWeekTextView != null && (!mIsTabletConfig || mCurrentView != ViewType.DAY)) {
            mWeekTextView.setVisibility(View.GONE);
        }

        if (mHomeTime != null
                && (mCurrentView == ViewType.DAY || mCurrentView == ViewType.WEEK
                        || mCurrentView == ViewType.AGENDA)
+5 −10
Original line number Diff line number Diff line
@@ -21,10 +21,8 @@ import com.android.calendar.CalendarController.ViewType;
import android.content.Context;
import android.database.DataSetObserver;
import android.os.Handler;
import android.text.TextUtils;
import android.text.format.DateUtils;
import android.text.format.Time;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -32,7 +30,6 @@ import android.widget.SpinnerAdapter;
import android.widget.TextView;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Formatter;
import java.util.Iterator;
import java.util.Locale;
@@ -74,7 +71,6 @@ public class CalendarViewAdapter implements SpinnerAdapter {
    // for the buttons.
    long mMilliTime;
    String mTimeZone;
    private Time mTmpTime;
    long mTodayJulianDay;

    Context mContext;
@@ -86,7 +82,7 @@ public class CalendarViewAdapter implements SpinnerAdapter {
    private Runnable mTimeUpdater = new Runnable() {
        @Override
        public void run() {
            setTimeVars(mContext);
            refresh(mContext);
        }
    };

@@ -104,15 +100,14 @@ public class CalendarViewAdapter implements SpinnerAdapter {
        mFormatter = new Formatter(mStringBuilder, Locale.getDefault());

        // Sets time specific variables and starts a thread for midnight updates
        setTimeVars(context);
        refresh(context);
    }


    // Sets the time zone and today's Julian day to be used by the adapter.
    // Also, notify listener on the change and resets the midnight update thread.
    private void setTimeVars(Context context) {
    public void refresh(Context context) {
        mTimeZone = Utils.getTimeZone(context, mTimeUpdater);
        mTmpTime = new Time(mTimeZone);
        Time time = new Time(mTimeZone);
        long now = System.currentTimeMillis();
        time.set(now);
@@ -123,7 +118,7 @@ public class CalendarViewAdapter implements SpinnerAdapter {

    // Sets a thread to run 1 second after midnight and update the current date
    // This is used to display correctly the date of yesterday/today/tomorrow
    public void setMidnightHandler() {
    private void setMidnightHandler() {
        if (mMidnightHandler == null) {
            mMidnightHandler = new Handler();
        } else {
@@ -139,7 +134,7 @@ public class CalendarViewAdapter implements SpinnerAdapter {
    }

    // Stops the midnight update thread, called by the activity when it is paused.
    public void resetMidnightHandler() {
    public void onPause() {
        if (mMidnightHandler != null) {
            mMidnightHandler.removeCallbacks(mTimeUpdater);
        }