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 1925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport com.android.contacts.ContactPhotoManager; 2025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 2125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport android.net.Uri; 2225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannimport android.widget.ImageView; 2325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 2425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann/** 2525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * A photo preloader that always uses the "no contact" picture and never executes any real 2625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann * db queries 2725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann */ 2825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmannpublic class MockContactPhotoManager extends ContactPhotoManager { 2925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 303d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki public void loadPhoto(ImageView view, long photoId, boolean hires, boolean darkTheme, 313d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki DefaultImageProvider defaultProvider) { 323d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki defaultProvider.applyDefaultImage(view, hires, darkTheme); 3325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 3425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 3525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 363d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki public void loadPhoto(ImageView view, Uri photoUri, boolean hires, boolean darkTheme, 373d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki DefaultImageProvider defaultProvider) { 383d3a15c465b0c4105148458307a7b50e9b267fd0Makoto Onuki defaultProvider.applyDefaultImage(view, hires, darkTheme); 3925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 4025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 4125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 42f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa public void removePhoto(ImageView view) { 43f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa view.setImageDrawable(null); 44f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa } 45f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa 46f5be9baf49891a2c81b2ca9bef80d86f7e20d8cdDaisuke Miyakawa @Override 4725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann public void pause() { 4825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 4925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 5025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 5125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann public void resume() { 5225d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 5325d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 5425d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 5525d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann public void refreshCache() { 5625d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 5725d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann 5825d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann @Override 5925d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann public void preloadPhotosInBackground() { 6025d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann } 6125d91b36a70474ed05c72a7b06a2dc44a0505476Daniel Lehmann} 62