summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/speeddial/AddFavoriteActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/dialer/speeddial/AddFavoriteActivity.java')
-rw-r--r--java/com/android/dialer/speeddial/AddFavoriteActivity.java109
1 files changed, 0 insertions, 109 deletions
diff --git a/java/com/android/dialer/speeddial/AddFavoriteActivity.java b/java/com/android/dialer/speeddial/AddFavoriteActivity.java
deleted file mode 100644
index eea6e840e..000000000
--- a/java/com/android/dialer/speeddial/AddFavoriteActivity.java
+++ /dev/null
@@ -1,109 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.dialer.speeddial;
-
-import android.content.ContentValues;
-import android.net.Uri;
-import android.os.Bundle;
-import android.provider.ContactsContract.Contacts;
-import android.support.annotation.Nullable;
-import android.support.annotation.WorkerThread;
-import android.support.v7.app.AppCompatActivity;
-import android.support.v7.widget.SearchView;
-import android.view.Menu;
-import android.view.MenuItem;
-import android.widget.ImageView;
-import com.android.dialer.common.Assert;
-import com.android.dialer.common.concurrent.DialerExecutorComponent;
-import com.android.dialer.contactsfragment.ContactsFragment;
-import com.android.dialer.contactsfragment.ContactsFragment.OnContactSelectedListener;
-
-/**
- * Activity for selecting a single contact and adding it to favorites.
- *
- * <p>Contacts are displayed using {@link ContactsFragment}. Contacts are searchable via search bar
- * in the toolbar. When a contact is selected, it's uri is passed back in the result data.
- */
-public class AddFavoriteActivity extends AppCompatActivity implements OnContactSelectedListener {
-
- private ContactsFragment contactsFragment;
-
- @Override
- protected void onCreate(@Nullable Bundle bundle) {
- super.onCreate(bundle);
- setContentView(R.layout.add_favorite_activity);
- contactsFragment = ContactsFragment.newAddFavoritesInstance();
- getFragmentManager()
- .beginTransaction()
- .add(R.id.add_favorite_container, contactsFragment, null)
- .commit();
- }
-
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- getMenuInflater().inflate(R.menu.add_favorite_menu, menu);
-
- MenuItem searchItem = menu.findItem(R.id.action_search);
- SearchView searchView = (SearchView) searchItem.getActionView();
- searchView.setOnQueryTextListener(
- new SearchView.OnQueryTextListener() {
- @Override
- public boolean onQueryTextSubmit(String query) {
- if (!searchView.isIconified()) {
- searchView.setIconified(true);
- }
- searchItem.collapseActionView();
- return false;
- }
-
- @Override
- public boolean onQueryTextChange(String s) {
- contactsFragment.updateQuery(s);
- return false;
- }
- });
- return true;
- }
-
- @Override
- public void onContactSelected(ImageView photo, Uri contactUri, long contactId) {
- DialerExecutorComponent.get(this)
- .dialerExecutorFactory()
- .createUiTaskBuilder(
- getFragmentManager(), "mark_contact_favorite", this::markContactStarred)
- .onSuccess(output -> finish())
- .onFailure(this::onContactStarredFailed)
- .build()
- .executeParallel(contactId);
- }
-
- @WorkerThread
- private int markContactStarred(long contactId) {
- // TODO(calderwoodra): For now, we will just mark contacts as starred. This means that contacts
- // will only be able to exist once in favorites until we implement multiple contact avenues.
- ContentValues contentValues = new ContentValues();
- contentValues.put(Contacts.STARRED, 1);
-
- String where = Contacts._ID + " = ?";
- String[] selectionArgs = new String[] {Long.toString(contactId)};
- return getContentResolver().update(Contacts.CONTENT_URI, contentValues, where, selectionArgs);
- }
-
- private void onContactStarredFailed(Throwable throwable) {
- throw Assert.createAssertionFailException(throwable.getMessage());
- }
-}