187763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira/* 287763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * Copyright (C) 2011 The Android Open Source Project 387763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * 487763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * Licensed under the Apache License, Version 2.0 (the "License"); 587763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * you may not use this file except in compliance with the License. 687763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * You may obtain a copy of the License at 787763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * 887763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * http://www.apache.org/licenses/LICENSE-2.0 987763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * 1087763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * Unless required by applicable law or agreed to in writing, software 1187763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * distributed under the License is distributed on an "AS IS" BASIS, 1287763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1387763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * See the License for the specific language governing permissions and 1487763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * limitations under the License. 1587763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira */ 1687763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira 1787763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereirapackage com.android.email; 1887763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira 1987763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereiraimport com.android.ex.chips.BaseRecipientAdapter; 2087763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereiraimport com.android.ex.chips.RecipientEditTextView; 2187763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira 2287763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereiraimport android.accounts.Account; 2387763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereiraimport android.content.Context; 2487763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereiraimport android.content.res.Resources; 2587763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereiraimport android.graphics.Bitmap; 2687763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereiraimport android.graphics.BitmapFactory; 2787763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira 2887763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereirapublic class RecipientAdapter extends BaseRecipientAdapter { 2987763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira public RecipientAdapter(Context context, RecipientEditTextView list) { 3087763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira super(context); 3187763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira Resources r = context.getResources(); 3287763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira Bitmap def = BitmapFactory.decodeResource(r, R.drawable.ic_contact_picture); 3387763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira list.setChipDimensions( 3487763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira r.getDrawable(R.drawable.chip_background), 3587763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira r.getDrawable(R.drawable.chip_background_selected), 3687763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira r.getDrawable(R.drawable.chip_background_invalid), 3779198b913f6cf0bc8ad391594d010bffeaa691e4Mindy Pereira r.getDrawable(R.drawable.chip_delete), def, R.layout.more_item, 3887763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira R.layout.chips_alternate_item, 3987763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira r.getDimension(R.dimen.chip_height), 4087763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira r.getDimension(R.dimen.chip_padding), 414693fecab2806ec6134a7eead7f5311f3831cfc3Mindy Pereira r.getDimension(R.dimen.chip_text_size), 424693fecab2806ec6134a7eead7f5311f3831cfc3Mindy Pereira R.layout.copy_chip_dialog_layout); 4387763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira } 4487763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira 4587763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira /** 4687763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * Set the account when known. Causes the search to prioritize contacts from 4787763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira * that account. 4887763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira */ 4987763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira public void setAccount(Account account) { 5087763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira if (account != null) { 5187763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira // TODO: figure out how to infer the contacts account 5287763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira // type from the email account 5387763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira super.setAccount(new android.accounts.Account(account.name, "unknown")); 5487763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira } 5587763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira } 5687763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira 5787763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira @Override 5887763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira protected int getDefaultPhotoResource() { 5987763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira return R.drawable.ic_contact_picture; 6087763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira } 6187763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira 6287763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira @Override 6387763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira protected int getItemLayout() { 6487763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira return R.layout.chips_recipient_dropdown_item; 6587763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira } 6687763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira 6787763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira @Override 689753d2fde1b549ba109a198b6c768280833cd6d0Daisuke Miyakawa protected int getWaitingForDirectorySearchLayout() { 699753d2fde1b549ba109a198b6c768280833cd6d0Daisuke Miyakawa return R.layout.chips_waiting_for_directory_search; 709753d2fde1b549ba109a198b6c768280833cd6d0Daisuke Miyakawa } 7187763f0ae851c76d5e7cf672a6e3acf21705549cMindy Pereira} 72