Home | History | Annotate | Download | only in android
      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_NEW_TAB_PAGE_PREFS_H_
      6 #define CHROME_BROWSER_ANDROID_NEW_TAB_PAGE_PREFS_H_
      7 
      8 #include <jni.h>
      9 
     10 #include "chrome/browser/profiles/profile.h"
     11 
     12 class NewTabPagePrefs {
     13  public:
     14   explicit NewTabPagePrefs(Profile* profile);
     15   void Destroy(JNIEnv* env, jobject obj);
     16 
     17   jboolean GetCurrentlyOpenTabsCollapsed(JNIEnv* env, jobject obj);
     18   void SetCurrentlyOpenTabsCollapsed(JNIEnv* env,
     19                                      jobject obj,
     20                                      jboolean is_collapsed);
     21 
     22   jboolean GetSnapshotDocumentCollapsed(JNIEnv* env, jobject obj);
     23   void SetSnapshotDocumentCollapsed(JNIEnv* env,
     24                                     jobject obj,
     25                                     jboolean is_collapsed);
     26 
     27   jboolean GetRecentlyClosedTabsCollapsed(JNIEnv* env, jobject obj);
     28   void SetRecentlyClosedTabsCollapsed(JNIEnv* env,
     29                                       jobject obj,
     30                                       jboolean is_collapsed);
     31 
     32   jboolean GetSyncPromoCollapsed(JNIEnv* env, jobject obj);
     33   void SetSyncPromoCollapsed(JNIEnv* env,
     34                              jobject obj,
     35                              jboolean is_collapsed);
     36 
     37   jboolean GetForeignSessionCollapsed(JNIEnv* env,
     38                                       jobject obj,
     39                                       jstring session_tag);
     40   void SetForeignSessionCollapsed(JNIEnv* env, jobject obj,
     41                                   jstring session_tag,
     42                                   jboolean is_collapsed);
     43 
     44   static bool RegisterNewTabPagePrefs(JNIEnv* env);
     45   static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry);
     46  private:
     47   virtual ~NewTabPagePrefs();
     48 
     49   Profile* profile_;  // weak
     50   DISALLOW_COPY_AND_ASSIGN(NewTabPagePrefs);
     51 };
     52 
     53 #endif  // CHROME_BROWSER_ANDROID_NEW_TAB_PAGE_PREFS_H_
     54