1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_ANDROID_CHROMIUM_APPLICATION_H_
6#define CHROME_BROWSER_ANDROID_CHROMIUM_APPLICATION_H_
7
8#include <jni.h>
9
10#include "base/basictypes.h"
11
12namespace content {
13class WebContents;
14}
15
16namespace chrome {
17namespace android {
18
19// Represents Android Chromium Application. This is a singleton and
20// provides functions to request browser side actions, such as opening a
21// settings page.
22class ChromiumApplication {
23 public:
24  static bool RegisterBindings(JNIEnv* env);
25
26  // Opens a protected content settings page, if available.
27  static void OpenProtectedContentSettings();
28
29  // Opens the sync settings page.
30  static void ShowSyncSettings();
31
32  // Opens the autofill settings page.
33  static void ShowAutofillSettings();
34
35  // Shows a dialog with the terms of service.
36  static void ShowTermsOfServiceDialog();
37
38  // Open the clear browsing data UI.
39  static void OpenClearBrowsingData(content::WebContents* web_contents);
40
41  // Determines whether parental controls are enabled.
42  static bool AreParentalControlsEnabled();
43
44 private:
45  ChromiumApplication() {}
46  ~ChromiumApplication() {}
47
48  DISALLOW_COPY_AND_ASSIGN(ChromiumApplication);
49};
50
51}  // namespace android
52}  // namespace chrome
53
54#endif  // CHROME_BROWSER_ANDROID_CHROMIUM_APPLICATION_H_
55