// Copyright 2013 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef UI_ANDROID_WINDOW_ANDROID_OBSERVER_H_
#define UI_ANDROID_WINDOW_ANDROID_OBSERVER_H_
#include "ui/android/ui_android_export.h"
namespace ui {
class UI_ANDROID_EXPORT WindowAndroidObserver {
public:
virtual void OnRootWindowVisibilityChanged(bool visible) = 0;
virtual void OnAttachCompositor() = 0;
virtual void OnDetachCompositor() = 0;
virtual void OnAnimate(base::TimeTicks frame_begin_time) {}
virtual void OnUnfoldStarted(base::TimeTicks unfold_begin_time) {}
// Note that activity state callbacks will only be made if the WindowAndroid
// has been explicitly subscribed to receive them. The observer instance
// should account for whether or not this is the case.
virtual void OnActivityStopped() = 0;
virtual void OnActivityStarted() = 0;
protected:
virtual ~WindowAndroidObserver() {}
};
} // namespace ui
#endif // UI_ANDROID_WINDOW_ANDROID_OBSERVER_H_