14e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved. 24e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 34e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)// found in the LICENSE file. 44e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 54e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)package org.chromium.chrome.browser; 64e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 74e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)import org.chromium.base.CalledByNative; 84e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)import org.chromium.content.app.ContentApplication; 94e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) 104e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)/** 114e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) * Basic application functionality that should be shared among all browser applications that use 124e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) * chrome layer. 134e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) */ 144e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)public abstract class ChromiumApplication extends ContentApplication { 154e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) /** 164e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) * Opens a protected content settings page, if available. 174e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) */ 184e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) @CalledByNative 194e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles) protected abstract void openProtectedContentSettings(); 201e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 211e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) @CalledByNative 221e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) protected abstract void showSyncSettings(); 231e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) 241e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) @CalledByNative 251320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci protected abstract void showAutofillSettings(); 261320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci 271320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci @CalledByNative 281e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles) protected abstract void showTermsOfServiceDialog(); 295d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) /** 31cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) * Opens the UI to clear browsing data. 32cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) * @param tab The tab that triggered the request. 33cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) */ 34cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) @CalledByNative 35cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) protected abstract void openClearBrowsingData(Tab tab); 36cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) 37cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles) /** 385d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * @return Whether parental controls are enabled. Returning true will disable 395d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) * incognito mode. 405d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) */ 415d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) @CalledByNative 425d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) protected abstract boolean areParentalControlsEnabled(); 435d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) // TODO(yfriedman): This is too widely available. Plumb this through ChromeNetworkDelegate 455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) // instead. 465d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) protected abstract PKCS11AuthenticationManager getPKCS11AuthenticationManager(); 474e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)} 48