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

Commit 53213b8a authored by kaiyiz's avatar kaiyiz
Browse files

Dialer: Can't pop up "Select Path" after export contacts to storage.

Dialer's DialtactsActivity did not receive the result that
the MultiPickContactActivity sent when export contacts.
Add the activity result handler to direct to export path dialog.

CRs-Fixed: 775402

Change-Id: Icf3c3f594984f1ed1c93f7899aa5708d1196dc77
parent 708ba340
Loading
Loading
Loading
Loading
+27 −0
Original line number Diff line number Diff line
@@ -65,6 +65,8 @@ import com.android.contacts.common.dialog.ClearFrequentsDialog;
import com.android.contacts.common.interactions.ImportExportDialogFragment;
import com.android.contacts.common.interactions.TouchPointManager;
import com.android.contacts.common.list.OnPhoneNumberPickerActionListener;
import com.android.contacts.common.vcard.ExportVCardActivity;
import com.android.contacts.common.vcard.VCardCommonArguments;
import com.android.contacts.common.widget.FloatingActionButtonController;
import com.android.dialer.activity.TransactionSafeActivity;
import com.android.dialer.calllog.CallLogActivity;
@@ -96,6 +98,7 @@ import com.android.phone.common.animation.AnimationListenerAdapter;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Set;

/**
 * The dialer tab's title is 'phone', a more common name (see strings.xml).
@@ -665,6 +668,30 @@ public class DialtactsActivity extends TransactionSafeActivity implements View.O
                intent.putExtra(Intent.EXTRA_STREAM, uri);
                startActivity(intent);
            }
        } else if (requestCode == ImportExportDialogFragment.SUBACTIVITY_EXPORT_CONTACTS) {
            if (resultCode == RESULT_OK) {
                Bundle result = data.getExtras().getBundle(
                        SimContactsConstants.RESULT_KEY);
                Set<String> keySet = result.keySet();
                Iterator<String> it = keySet.iterator();
                StringBuilder selExportBuilder = new StringBuilder();
                while (it.hasNext()) {
                    String id = it.next();
                    if (0 != selExportBuilder.length()) {
                        selExportBuilder.append(",");
                    }
                    selExportBuilder.append(id);
                }
                selExportBuilder.insert(0, "_id IN (");
                selExportBuilder.append(")");
                Intent exportIntent = new Intent(this,
                        ExportVCardActivity.class);
                exportIntent.putExtra("SelExport", selExportBuilder.toString());
                exportIntent.putExtra(
                        VCardCommonArguments.ARG_CALLING_ACTIVITY,
                        DialtactsActivity.class.getName());
                startActivity(exportIntent);
            }
        }
        super.onActivityResult(requestCode, resultCode, data);
    }