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

Commit e8b56fbe authored by Yorke Lee's avatar Yorke Lee Committed by Android (Google) Code Review
Browse files

Merge "Clear phone number cache when call log is cleared" into klp-dev

parents 888df858 f2a0756a
Loading
Loading
Loading
Loading
+10 −0
Original line number Original line Diff line number Diff line
@@ -22,6 +22,7 @@ import android.app.DialogFragment;
import android.app.FragmentManager;
import android.app.FragmentManager;
import android.app.ProgressDialog;
import android.app.ProgressDialog;
import android.content.ContentResolver;
import android.content.ContentResolver;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.content.DialogInterface.OnClickListener;
import android.os.AsyncTask;
import android.os.AsyncTask;
@@ -29,11 +30,16 @@ import android.os.Bundle;
import android.provider.CallLog.Calls;
import android.provider.CallLog.Calls;


import com.android.dialer.R;
import com.android.dialer.R;
import com.android.dialer.service.CachedNumberLookupService;
import com.android.dialerbind.ObjectFactory;


/**
/**
 * Dialog that clears the call log after confirming with the user
 * Dialog that clears the call log after confirming with the user
 */
 */
public class ClearCallLogDialog extends DialogFragment {
public class ClearCallLogDialog extends DialogFragment {
    private static final CachedNumberLookupService mCachedNumberLookupService =
            ObjectFactory.newCachedNumberLookupService();

    /** Preferred way to show this dialog */
    /** Preferred way to show this dialog */
    public static void show(FragmentManager fragmentManager) {
    public static void show(FragmentManager fragmentManager) {
        ClearCallLogDialog dialog = new ClearCallLogDialog();
        ClearCallLogDialog dialog = new ClearCallLogDialog();
@@ -43,6 +49,7 @@ public class ClearCallLogDialog extends DialogFragment {
    @Override
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        final ContentResolver resolver = getActivity().getContentResolver();
        final ContentResolver resolver = getActivity().getContentResolver();
        final Context context = getActivity().getApplicationContext();
        final OnClickListener okListener = new OnClickListener() {
        final OnClickListener okListener = new OnClickListener() {
            @Override
            @Override
            public void onClick(DialogInterface dialog, int which) {
            public void onClick(DialogInterface dialog, int which) {
@@ -53,6 +60,9 @@ public class ClearCallLogDialog extends DialogFragment {
                    @Override
                    @Override
                    protected Void doInBackground(Void... params) {
                    protected Void doInBackground(Void... params) {
                        resolver.delete(Calls.CONTENT_URI, null, null);
                        resolver.delete(Calls.CONTENT_URI, null, null);
                        if (mCachedNumberLookupService != null) {
                            mCachedNumberLookupService.clearAllCacheEntries(context);
                        }
                        return null;
                        return null;
                    }
                    }
                    @Override
                    @Override
+8 −0
Original line number Original line Diff line number Diff line
@@ -34,4 +34,12 @@ public interface CachedNumberLookupService {
    public boolean isCacheUri(String uri);
    public boolean isCacheUri(String uri);


    public boolean addPhoto(Context context, String number, byte[] photo);
    public boolean addPhoto(Context context, String number, byte[] photo);

    /**
     * Remove all cached phone number entries from the cache, regardless of how old they
     * are.
     *
     * @param context Valid context
     */
    public void clearAllCacheEntries(Context context);
}
}