10c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project/* 20c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * Copyright (C) 2008 The Android Open Source Project 30c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * 40c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License"); 50c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * you may not use this file except in compliance with the License. 60c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * You may obtain a copy of the License at 70c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * 80c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 90c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * 100c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * Unless required by applicable law or agreed to in writing, software 110c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS, 120c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 130c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * See the License for the specific language governing permissions and 140c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project * limitations under the License. 150c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project */ 160c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project 170c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Projectpackage com.android.browser; 180c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project 190c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Projectimport com.android.internal.preference.YesNoPreference; 200c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project 210c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Projectimport android.content.Context; 220c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Projectimport android.util.AttributeSet; 230c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project 240c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Projectclass BrowserYesNoPreference extends YesNoPreference { 250c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project 260c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project // This is the constructor called by the inflater 270c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project public BrowserYesNoPreference(Context context, AttributeSet attrs) { 280c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project super(context, attrs); 290c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project } 300c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project 310c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project @Override 320c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project protected void onDialogClosed(boolean positiveResult) { 330c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project super.onDialogClosed(positiveResult); 340c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project 350c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project if (positiveResult) { 360c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project setEnabled(false); 370c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project 3835e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck BrowserSettings settings = BrowserSettings.getInstance(); 3935e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck if (PreferenceKeys.PREF_PRIVACY_CLEAR_CACHE.equals(getKey())) { 4035e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck settings.clearCache(); 4135e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck settings.clearDatabases(); 4235e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck } else if (PreferenceKeys.PREF_PRIVACY_CLEAR_COOKIES.equals(getKey())) { 4335e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck settings.clearCookies(); 4435e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck } else if (PreferenceKeys.PREF_PRIVACY_CLEAR_HISTORY.equals(getKey())) { 4535e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck settings.clearHistory(); 4635e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck } else if (PreferenceKeys.PREF_PRIVACY_CLEAR_FORM_DATA.equals(getKey())) { 4735e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck settings.clearFormData(); 4835e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck } else if (PreferenceKeys.PREF_PRIVACY_CLEAR_PASSWORDS.equals(getKey())) { 4935e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck settings.clearPasswords(); 5035e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck } else if (PreferenceKeys.PREF_RESET_DEFAULT_PREFERENCES.equals( 510c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project getKey())) { 5235e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck settings.resetDefaultPreferences(); 530c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project setEnabled(true); 5435e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck } else if (PreferenceKeys.PREF_PRIVACY_CLEAR_GEOLOCATION_ACCESS.equals( 55f344d03c0b01d30575ba1ddd1ed340705c6f5a97Steve Block getKey())) { 5635e9dd6283a2d65687104eb0b3a459c02dcb150bJohn Reck settings.clearLocationAccess(); 570c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project } 580c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project } 590c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project } 600c90888c75eed12f6e2e14a9044faf50bd4af8edThe Android Open Source Project} 61