| Index: chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java b/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java
|
| index f0c1a978799229ae4b2e77285ac99fd1371d8e25..34f842f7173180160dbf0be881cdf8d9403a2db5 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/bookmark/BookmarksBridge.java
|
| @@ -207,6 +207,29 @@ public class BookmarksBridge {
|
| }
|
|
|
| /**
|
| + * Schedules a runnable to run after the bookmark model is loaded. If the
|
| + * model is already loaded, executes the runnable immediately.
|
| + * @return Whether the given runnable is executed synchronously.
|
| + */
|
| + public boolean runAfterBookmarkModelLoaded(final Runnable runnable) {
|
| + if (isBookmarkModelLoaded()) {
|
| + runnable.run();
|
| + return true;
|
| + }
|
| + addObserver(new BookmarkModelObserver() {
|
| + @Override
|
| + public void bookmarkModelLoaded() {
|
| + removeObserver(this);
|
| + runnable.run();
|
| + }
|
| + @Override
|
| + public void bookmarkModelChanged() {
|
| + }
|
| + });
|
| + return false;
|
| + }
|
| +
|
| + /**
|
| * @return A BookmarkItem instance for the given BookmarkId.
|
| * <code>null</code> if it doesn't exist.
|
| */
|
|
|