OLD | NEW |
---|---|
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef UI_ANDROID_WINDOW_ANDROID_H_ | 5 #ifndef UI_ANDROID_WINDOW_ANDROID_H_ |
6 #define UI_ANDROID_WINDOW_ANDROID_H_ | 6 #define UI_ANDROID_WINDOW_ANDROID_H_ |
7 | 7 |
8 #include <jni.h> | 8 #include <jni.h> |
9 #include <memory> | |
9 #include <vector> | 10 #include <vector> |
10 | 11 |
11 #include "base/android/jni_weak_ref.h" | 12 #include "base/android/jni_weak_ref.h" |
12 #include "base/android/scoped_java_ref.h" | 13 #include "base/android/scoped_java_ref.h" |
13 #include "base/observer_list.h" | 14 #include "base/observer_list.h" |
14 #include "base/time/time.h" | 15 #include "base/time/time.h" |
15 #include "ui/android/ui_android_export.h" | 16 #include "ui/android/ui_android_export.h" |
17 #include "ui/gfx/android/device_display_info.h" | |
16 #include "ui/gfx/geometry/vector2d_f.h" | 18 #include "ui/gfx/geometry/vector2d_f.h" |
17 | 19 |
18 namespace ui { | 20 namespace ui { |
19 | 21 |
20 class WindowAndroidCompositor; | 22 class WindowAndroidCompositor; |
21 class WindowAndroidObserver; | 23 class WindowAndroidObserver; |
22 | 24 |
23 // Android implementation of the activity window. | 25 // Android implementation of the activity window. |
24 class UI_ANDROID_EXPORT WindowAndroid { | 26 class UI_ANDROID_EXPORT WindowAndroid { |
25 public: | 27 public: |
(...skipping 30 matching lines...) Expand all Loading... | |
56 void RequestVSyncUpdate(); | 58 void RequestVSyncUpdate(); |
57 void SetNeedsAnimate(); | 59 void SetNeedsAnimate(); |
58 void OnVSync(JNIEnv* env, | 60 void OnVSync(JNIEnv* env, |
59 jobject obj, | 61 jobject obj, |
60 jlong time_micros, | 62 jlong time_micros, |
61 jlong period_micros); | 63 jlong period_micros); |
62 void Animate(base::TimeTicks begin_frame_time); | 64 void Animate(base::TimeTicks begin_frame_time); |
63 void OnActivityPaused(JNIEnv* env, jobject obj); | 65 void OnActivityPaused(JNIEnv* env, jobject obj); |
64 void OnActivityResumed(JNIEnv* env, jobject obj); | 66 void OnActivityResumed(JNIEnv* env, jobject obj); |
65 | 67 |
68 std::shared_ptr<gfx::DeviceDisplayInfo> GetDeviceDisplayInfo(); | |
jdduke (slow)
2015/06/16 15:01:28
I'd prefer this not be a shared reference. Can we
gsennton
2015/06/17 11:40:36
Done.
| |
69 void UpdateDeviceDisplayInfo(); | |
70 | |
66 private: | 71 private: |
67 ~WindowAndroid(); | 72 ~WindowAndroid(); |
68 | 73 |
74 // TODO ScopedJavaLocalRef ok? | |
75 base::android::ScopedJavaLocalRef<jobject> GetJavaContext(); | |
76 | |
69 base::android::ScopedJavaGlobalRef<jobject> java_window_; | 77 base::android::ScopedJavaGlobalRef<jobject> java_window_; |
70 gfx::Vector2dF content_offset_; | 78 gfx::Vector2dF content_offset_; |
71 WindowAndroidCompositor* compositor_; | 79 WindowAndroidCompositor* compositor_; |
72 | 80 |
73 base::ObserverList<WindowAndroidObserver> observer_list_; | 81 base::ObserverList<WindowAndroidObserver> observer_list_; |
82 std::shared_ptr<gfx::DeviceDisplayInfo> device_display_info_; | |
74 | 83 |
75 DISALLOW_COPY_AND_ASSIGN(WindowAndroid); | 84 DISALLOW_COPY_AND_ASSIGN(WindowAndroid); |
76 }; | 85 }; |
77 | 86 |
78 } // namespace ui | 87 } // namespace ui |
79 | 88 |
80 #endif // UI_ANDROID_WINDOW_ANDROID_H_ | 89 #endif // UI_ANDROID_WINDOW_ANDROID_H_ |
OLD | NEW |