// Copyright 2013 The Chromium Authors. All rights reserved. // 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 OnCompositingDidCommit() = 0; virtual void OnRootWindowVisibilityChanged(bool visible) = 0; virtual void OnAttachCompositor() = 0; virtual void OnDetachCompositor() = 0; virtual void OnVSync(base::TimeTicks frame_time, base::TimeDelta vsync_period) = 0; virtual void OnAnimate(base::TimeTicks frame_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_