Commit 7352c303 authored by ianwen's avatar ianwen Committed by Commit bot

Make EnhancedBookmarkBridge initialized with profile

EnhancedBookmarkBridge was previously initialized by a native pointer of
the native BookmarkModel, which was a hack to make it to component
folder.  Now since it has been moved to chrome/browser, it should be
initialized by profile.

BUG=415817

Review URL: https://codereview.chromium.org/598593007

Cr-Commit-Position: refs/heads/master@{#297265}
parent 2e146d74
...@@ -473,13 +473,6 @@ public class BookmarksBridge { ...@@ -473,13 +473,6 @@ public class BookmarksBridge {
nativeEndGroupingUndos(mNativeBookmarksBridge); nativeEndGroupingUndos(mNativeBookmarksBridge);
} }
/**
* A bridge function to BookmarkModelFactory::GetForProfile.
*/
public static long getNativeBookmarkModel(Profile profile) {
return nativeGetNativeBookmarkModel(profile);
}
public static boolean isEditBookmarksEnabled() { public static boolean isEditBookmarksEnabled() {
return nativeIsEditBookmarksEnabled(); return nativeIsEditBookmarksEnabled();
} }
...@@ -644,7 +637,6 @@ public class BookmarksBridge { ...@@ -644,7 +637,6 @@ public class BookmarksBridge {
private native void nativeUndo(long nativeBookmarksBridge); private native void nativeUndo(long nativeBookmarksBridge);
private native void nativeStartGroupingUndos(long nativeBookmarksBridge); private native void nativeStartGroupingUndos(long nativeBookmarksBridge);
private native void nativeEndGroupingUndos(long nativeBookmarksBridge); private native void nativeEndGroupingUndos(long nativeBookmarksBridge);
private static native long nativeGetNativeBookmarkModel(Profile profile);
private static native boolean nativeIsEnhancedBookmarksFeatureEnabled(Profile profile); private static native boolean nativeIsEnhancedBookmarksFeatureEnabled(Profile profile);
private native void nativeLoadEmptyPartnerBookmarkShimForTesting(long nativeBookmarksBridge); private native void nativeLoadEmptyPartnerBookmarkShimForTesting(long nativeBookmarksBridge);
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
package org.chromium.chrome.browser; package org.chromium.chrome.browser;
import org.chromium.base.JNINamespace; import org.chromium.base.JNINamespace;
import org.chromium.chrome.browser.profiles.Profile;
import org.chromium.components.bookmarks.BookmarkId; import org.chromium.components.bookmarks.BookmarkId;
/** /**
...@@ -14,8 +15,8 @@ import org.chromium.components.bookmarks.BookmarkId; ...@@ -14,8 +15,8 @@ import org.chromium.components.bookmarks.BookmarkId;
public final class EnhancedBookmarksBridge { public final class EnhancedBookmarksBridge {
private long mNativeEnhancedBookmarksBridge; private long mNativeEnhancedBookmarksBridge;
public EnhancedBookmarksBridge(long nativeBookmarkModel) { public EnhancedBookmarksBridge(Profile profile) {
mNativeEnhancedBookmarksBridge = nativeInit(nativeBookmarkModel); mNativeEnhancedBookmarksBridge = nativeInit(profile);
} }
public void destroy() { public void destroy() {
...@@ -34,7 +35,7 @@ public final class EnhancedBookmarksBridge { ...@@ -34,7 +35,7 @@ public final class EnhancedBookmarksBridge {
description); description);
} }
private native long nativeInit(long bookmarkModelPointer); private native long nativeInit(Profile profile);
private native void nativeDestroy(long nativeEnhancedBookmarksBridge); private native void nativeDestroy(long nativeEnhancedBookmarksBridge);
......
...@@ -126,14 +126,6 @@ static jlong Init(JNIEnv* env, jobject obj, jobject j_profile) { ...@@ -126,14 +126,6 @@ static jlong Init(JNIEnv* env, jobject obj, jobject j_profile) {
return reinterpret_cast<intptr_t>(delegate); return reinterpret_cast<intptr_t>(delegate);
} }
static jlong GetNativeBookmarkModel(JNIEnv* env,
jclass caller,
jobject j_profile) {
Profile* profile = ProfileAndroid::FromProfileAndroid(j_profile);
BookmarkModel *bookmark_model_ = BookmarkModelFactory::GetForProfile(profile);
return reinterpret_cast<jlong>(bookmark_model_);
}
static jboolean IsEnhancedBookmarksFeatureEnabled(JNIEnv* env, static jboolean IsEnhancedBookmarksFeatureEnabled(JNIEnv* env,
jclass clazz, jclass clazz,
jobject j_profile) { jobject j_profile) {
......
...@@ -5,6 +5,8 @@ ...@@ -5,6 +5,8 @@
#include "chrome/browser/android/enhanced_bookmarks/enhanced_bookmarks_bridge.h" #include "chrome/browser/android/enhanced_bookmarks/enhanced_bookmarks_bridge.h"
#include "base/android/jni_string.h" #include "base/android/jni_string.h"
#include "chrome/browser/bookmarks/bookmark_model_factory.h"
#include "chrome/browser/profiles/profile_android.h"
#include "components/bookmarks/browser/bookmark_model.h" #include "components/bookmarks/browser/bookmark_model.h"
#include "components/bookmarks/browser/bookmark_utils.h" #include "components/bookmarks/browser/bookmark_utils.h"
#include "components/bookmarks/common/android/bookmark_type.h" #include "components/bookmarks/common/android/bookmark_type.h"
...@@ -18,8 +20,9 @@ namespace android { ...@@ -18,8 +20,9 @@ namespace android {
EnhancedBookmarksBridge::EnhancedBookmarksBridge(JNIEnv* env, EnhancedBookmarksBridge::EnhancedBookmarksBridge(JNIEnv* env,
jobject obj, jobject obj,
jlong bookmark_model_ptr) { Profile* profile) {
bookmark_model_ = reinterpret_cast<BookmarkModel*>(bookmark_model_ptr); profile_ = profile;
bookmark_model_ = BookmarkModelFactory::GetForProfile(profile_);
} }
void EnhancedBookmarksBridge::Destroy(JNIEnv*, jobject) { void EnhancedBookmarksBridge::Destroy(JNIEnv*, jobject) {
...@@ -56,9 +59,9 @@ void EnhancedBookmarksBridge::SetBookmarkDescription(JNIEnv* env, ...@@ -56,9 +59,9 @@ void EnhancedBookmarksBridge::SetBookmarkDescription(JNIEnv* env,
base::android::ConvertJavaStringToUTF8(env, description)); base::android::ConvertJavaStringToUTF8(env, description));
} }
static jlong Init(JNIEnv* env, jobject obj, jlong bookmark_model_ptr) { static jlong Init(JNIEnv* env, jobject obj, jobject j_profile) {
return reinterpret_cast<jlong>( return reinterpret_cast<jlong>(new EnhancedBookmarksBridge(
new EnhancedBookmarksBridge(env, obj, bookmark_model_ptr)); env, obj, ProfileAndroid::FromProfileAndroid(j_profile)));
} }
bool RegisterEnhancedBookmarksBridge(JNIEnv* env) { bool RegisterEnhancedBookmarksBridge(JNIEnv* env) {
......
...@@ -6,15 +6,15 @@ ...@@ -6,15 +6,15 @@
#define CHROME_BROWSER_ANDROID_ENHANCED_BOOKMARKS_ENHANCED_BOOKMARKS_BRIDGE_H_ #define CHROME_BROWSER_ANDROID_ENHANCED_BOOKMARKS_ENHANCED_BOOKMARKS_BRIDGE_H_
#include "base/android/jni_android.h" #include "base/android/jni_android.h"
#include "chrome/browser/profiles/profile.h"
class BookmarkModel; #include "components/bookmarks/browser/bookmark_model.h"
namespace enhanced_bookmarks { namespace enhanced_bookmarks {
namespace android { namespace android {
class EnhancedBookmarksBridge { class EnhancedBookmarksBridge {
public: public:
EnhancedBookmarksBridge(JNIEnv* env, jobject obj, jlong bookmark_model_ptr); EnhancedBookmarksBridge(JNIEnv* env, jobject obj, Profile* profile);
void Destroy(JNIEnv*, jobject); void Destroy(JNIEnv*, jobject);
base::android::ScopedJavaLocalRef<jstring> GetBookmarkDescription( base::android::ScopedJavaLocalRef<jstring> GetBookmarkDescription(
...@@ -31,7 +31,7 @@ class EnhancedBookmarksBridge { ...@@ -31,7 +31,7 @@ class EnhancedBookmarksBridge {
private: private:
BookmarkModel* bookmark_model_; // weak BookmarkModel* bookmark_model_; // weak
Profile* profile_; // weak
DISALLOW_COPY_AND_ASSIGN(EnhancedBookmarksBridge); DISALLOW_COPY_AND_ASSIGN(EnhancedBookmarksBridge);
}; };
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment