| Index: content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
|
| diff --git a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
|
| index d0ac836bf30b8771f9f217e6664c4d219ed7e02d..1aba5bba6b1015a8737ac533d0a4db7fc94b94d2 100644
|
| --- a/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
|
| +++ b/content/public/android/java/src/org/chromium/content/browser/ContentViewCore.java
|
| @@ -485,6 +485,7 @@ public class ContentViewCore
|
| private ViewAndroid mViewAndroid;
|
|
|
| private SmartClipDataListener mSmartClipDataListener = null;
|
| + private ObserverList<ContainerViewObserver> mContainerViewObservers;
|
|
|
| // This holds the state of editable text (e.g. contents of <input>, contenteditable) of
|
| // a focused element.
|
| @@ -544,6 +545,7 @@ public class ContentViewCore
|
|
|
| mEditable = Editable.Factory.getInstance().newEditable("");
|
| Selection.setSelection(mEditable, 0);
|
| + mContainerViewObservers = new ObserverList<ContainerViewObserver>();
|
| }
|
|
|
| /**
|
| @@ -815,11 +817,22 @@ public class ContentViewCore
|
| mContainerView.setWillNotDraw(false); // TODO(epenner): Remove (http://crbug.com/436689)
|
| mContainerView.setClickable(true);
|
| mViewAndroidDelegate.updateCurrentContainerView();
|
| + for (ContainerViewObserver observer : mContainerViewObservers) {
|
| + observer.onContainerViewChanged(mContainerView);
|
| + }
|
| } finally {
|
| TraceEvent.end("ContentViewCore.setContainerView");
|
| }
|
| }
|
|
|
| + public void addContainerViewObserver(ContainerViewObserver observer) {
|
| + mContainerViewObservers.addObserver(observer);
|
| + }
|
| +
|
| + public void removeContainerViewObserver(ContainerViewObserver observer) {
|
| + mContainerViewObservers.removeObserver(observer);
|
| + }
|
| +
|
| @CalledByNative
|
| void onNativeContentViewCoreDestroyed(long nativeContentViewCore) {
|
| assert nativeContentViewCore == mNativeContentViewCore;
|
| @@ -930,6 +943,7 @@ public class ContentViewCore
|
| mGestureStateListeners.clear();
|
| ScreenOrientationListener.getInstance().removeObserver(this);
|
| mPositionObserver.clearListener();
|
| + mContainerViewObservers.clear();
|
| }
|
|
|
| private void unregisterAccessibilityContentObserver() {
|
|
|