Index: blimp/client/core/android/java/src/org/chromium/blimp/core/BlimpClientContextImpl.java |
diff --git a/blimp/client/core/android/java/src/org/chromium/blimp/core/BlimpClientContextImpl.java b/blimp/client/core/android/java/src/org/chromium/blimp/core/BlimpClientContextImpl.java |
index 8a2eba547360974a564855683709eb5c0d231705..aa0e231f803e13dfb080e2a100bd46bfaf1c89f5 100644 |
--- a/blimp/client/core/android/java/src/org/chromium/blimp/core/BlimpClientContextImpl.java |
+++ b/blimp/client/core/android/java/src/org/chromium/blimp/core/BlimpClientContextImpl.java |
@@ -6,13 +6,14 @@ package org.chromium.blimp.core; |
import android.preference.PreferenceFragment; |
+import org.chromium.base.CommandLine; |
import org.chromium.base.annotations.CalledByNative; |
import org.chromium.base.annotations.JNINamespace; |
+import org.chromium.blimp.core.common.BlimpClientContextInternal; |
import org.chromium.blimp.core.settings.AboutBlimpPreferences; |
import org.chromium.blimp.core.settings.PreferencesUtil; |
import org.chromium.blimp_public.BlimpClientContext; |
import org.chromium.blimp_public.BlimpClientContextDelegate; |
-import org.chromium.blimp_public.BlimpSettingsCallbacks; |
import org.chromium.blimp_public.contents.BlimpContents; |
/** |
@@ -20,8 +21,7 @@ import org.chromium.blimp_public.contents.BlimpContents; |
* BlimpClientContextImpl object. |
*/ |
@JNINamespace("blimp::client") |
-public class BlimpClientContextImpl implements BlimpClientContext { |
- |
+public class BlimpClientContextImpl implements BlimpClientContext, BlimpClientContextInternal { |
// Delegate that contains functions Blimp needed in the embedder. |
private BlimpClientContextDelegate mDelegate; |
@@ -32,13 +32,14 @@ public class BlimpClientContextImpl implements BlimpClientContext { |
* |
* @return BlimpClientContextDelegate, which contains functions we need in embedder. |
*/ |
+ @Override |
public BlimpClientContextDelegate getDelegate() { |
return mDelegate; |
} |
@Override |
- public void setDelegate(BlimpClientContextDelegate delegate) { |
- mDelegate = delegate; |
+ public void initSettingsPage(long nativeBlimpSettingsAndroid) { |
+ nativeInitSettingsPage(mNativeBlimpClientContextImplAndroid, nativeBlimpSettingsAndroid); |
} |
@CalledByNative |
@@ -67,10 +68,20 @@ public class BlimpClientContextImpl implements BlimpClientContext { |
} |
@Override |
- public void attachBlimpPreferences(PreferenceFragment fragment, |
- BlimpSettingsCallbacks callbacks) { |
+ public boolean isBlimpEnabled() { |
+ return PreferencesUtil.isBlimpEnabled() |
+ || CommandLine.getInstance().hasSwitch(BlimpClientSwitches.ENGINE_IP); |
+ } |
+ |
+ @Override |
+ public void attachBlimpPreferences(PreferenceFragment fragment) { |
AboutBlimpPreferences.addBlimpPreferences(fragment); |
- AboutBlimpPreferences.registerCallback(callbacks); |
+ AboutBlimpPreferences.setContext(this); |
David Trainor- moved to gerrit
2016/08/29 05:12:24
What do you think about merging these methods?
xingliu
2016/08/30 04:47:42
Done, there is one function to do these two things
|
+ } |
+ |
+ @Override |
+ public void setDelegate(BlimpClientContextDelegate delegate) { |
+ mDelegate = delegate; |
} |
@Override |
@@ -99,4 +110,6 @@ public class BlimpClientContextImpl implements BlimpClientContext { |
long nativeBlimpClientContextImplAndroid); |
private native void nativeConnectFromJava(long nativeBlimpClientContextImplAndroid); |
+ private native void nativeInitSettingsPage( |
+ long nativeBlimpClientContextImplAndroid, long nativeBlimpSettingsAndroid); |
} |