125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann/* 225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * Copyright (C) 2011 The Android Open Source Project 325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * 425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * Licensed under the Apache License, Version 2.0 (the "License"); 525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * you may not use this file except in compliance with the License. 625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * You may obtain a copy of the License at 725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * 825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * http://www.apache.org/licenses/LICENSE-2.0 925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * 1025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * Unless required by applicable law or agreed to in writing, software 1125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * distributed under the License is distributed on an "AS IS" BASIS, 1225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 1325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * See the License for the specific language governing permissions and 1425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * limitations under the License. 1525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann */ 1625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 1725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannpackage com.android.contacts.tests.mocks; 1825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 1914d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoroimport android.graphics.Bitmap; 2025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport android.net.Uri; 2125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport android.widget.ImageView; 2225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 2379a6b5d3a885bc508b4b98c92a946fe12643c444Chiao Chengimport com.android.contacts.common.ContactPhotoManager; 24e0b2f1e2d01d1ac52ba207dc7ce76971d853298eChiao Cheng 2525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann/** 2625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * A photo preloader that always uses the "no contact" picture and never executes any real 2725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * db queries 2825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann */ 2925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannpublic class MockContactPhotoManager extends ContactPhotoManager { 3025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 312f77c85543e6c497e63cd0e216b70e58c1d13ec3Daniel Lehmann public void loadThumbnail(ImageView view, long photoId, boolean darkTheme, 323d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki DefaultImageProvider defaultProvider) { 332f77c85543e6c497e63cd0e216b70e58c1d13ec3Daniel Lehmann defaultProvider.applyDefaultImage(view, -1, darkTheme); 3425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 3525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 3625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 372f77c85543e6c497e63cd0e216b70e58c1d13ec3Daniel Lehmann public void loadPhoto(ImageView view, Uri photoUri, int requestedExtent, boolean darkTheme, 383d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki DefaultImageProvider defaultProvider) { 392f77c85543e6c497e63cd0e216b70e58c1d13ec3Daniel Lehmann defaultProvider.applyDefaultImage(view, requestedExtent, darkTheme); 4025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 4125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 4225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 43f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa public void removePhoto(ImageView view) { 44f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa view.setImageDrawable(null); 45f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa } 46f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa 47f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa @Override 4825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann public void pause() { 4925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 5025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 5125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 5225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann public void resume() { 5325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 5425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 5525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 5625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann public void refreshCache() { 5725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 5825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 5925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 6014d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoro public void cacheBitmap(Uri photoUri, Bitmap bitmap, byte[] photoBytes) { 6114d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoro } 6214d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoro 6314d2083c4c4c52b0d8b600a93c294af32cd6a826Dave Santoro @Override 6425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann public void preloadPhotosInBackground() { 6525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 6625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann} 67