提交 a0903039 编写于 作者: A Adam Barth

Rename scheduleFrame/setBeginFrameCallback

These are now scheduleFrame/setFrameCallback. Also, update schduler.dart to not
poke at sky.window, which is now always null.

Fixes #178

R=ianh@google.com

Review URL: https://codereview.chromium.org/1214943005.
上级 a6f809b3
...@@ -915,8 +915,8 @@ sky_core_files = [ ...@@ -915,8 +915,8 @@ sky_core_files = [
"script/dom_dart_state.cc", "script/dom_dart_state.cc",
"script/dom_dart_state.h", "script/dom_dart_state.h",
"script/monitor.h", "script/monitor.h",
"view/BeginFrameCallback.h",
"view/EventCallback.h", "view/EventCallback.h",
"view/FrameCallback.h",
"view/View.cpp", "view/View.cpp",
"view/View.h", "view/View.h",
] ]
...@@ -999,8 +999,8 @@ core_idl_files = get_path_info([ ...@@ -999,8 +999,8 @@ core_idl_files = get_path_info([
"painting/PictureRecorder.idl", "painting/PictureRecorder.idl",
"painting/RRect.idl", "painting/RRect.idl",
"painting/Shader.idl", "painting/Shader.idl",
"view/BeginFrameCallback.idl",
"view/EventCallback.idl", "view/EventCallback.idl",
"view/FrameCallback.idl",
"view/View.idl", "view/View.idl",
], ],
"abspath") "abspath")
......
...@@ -2,17 +2,17 @@ ...@@ -2,17 +2,17 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#ifndef SKY_ENGINE_CORE_VIEW_BEGINFRAMECALLBACK_H_ #ifndef SKY_ENGINE_CORE_VIEW_FRAMECALLBACK_H_
#define SKY_ENGINE_CORE_VIEW_BEGINFRAMECALLBACK_H_ #define SKY_ENGINE_CORE_VIEW_FRAMECALLBACK_H_
namespace blink { namespace blink {
class BeginFrameCallback { class FrameCallback {
public: public:
virtual ~BeginFrameCallback() { } virtual ~FrameCallback() { }
virtual bool handleEvent(double highResTime) = 0; virtual bool handleEvent(double highResTime) = 0;
}; };
} }
#endif // SKY_ENGINE_CORE_VIEW_BEGINFRAMECALLBACK_H_ #endif // SKY_ENGINE_CORE_VIEW_FRAMECALLBACK_H_
...@@ -2,6 +2,6 @@ ...@@ -2,6 +2,6 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
callback interface BeginFrameCallback { callback interface FrameCallback {
boolean handleEvent(double highResTime); boolean handleEvent(double highResTime);
}; };
...@@ -42,9 +42,9 @@ void View::setMetricsChangedCallback(PassOwnPtr<VoidCallback> callback) ...@@ -42,9 +42,9 @@ void View::setMetricsChangedCallback(PassOwnPtr<VoidCallback> callback)
m_metricsChangedCallback = callback; m_metricsChangedCallback = callback;
} }
void View::setBeginFrameCallback(PassOwnPtr<BeginFrameCallback> callback) void View::setFrameCallback(PassOwnPtr<FrameCallback> callback)
{ {
m_beginFrameCallback = callback; m_frameCallback = callback;
} }
void View::scheduleFrame() void View::scheduleFrame()
...@@ -67,10 +67,10 @@ void View::handleInputEvent(PassRefPtr<Event> event) ...@@ -67,10 +67,10 @@ void View::handleInputEvent(PassRefPtr<Event> event)
void View::beginFrame(base::TimeTicks frameTime) void View::beginFrame(base::TimeTicks frameTime)
{ {
if (!m_beginFrameCallback) if (!m_frameCallback)
return; return;
double frameTimeMS = (frameTime - base::TimeTicks()).InMillisecondsF(); double frameTimeMS = (frameTime - base::TimeTicks()).InMillisecondsF();
m_beginFrameCallback->handleEvent(frameTimeMS); m_frameCallback->handleEvent(frameTimeMS);
} }
} // namespace blink } // namespace blink
...@@ -9,8 +9,8 @@ ...@@ -9,8 +9,8 @@
#include "base/time/time.h" #include "base/time/time.h"
#include "sky/engine/core/html/VoidCallback.h" #include "sky/engine/core/html/VoidCallback.h"
#include "sky/engine/core/painting/Picture.h" #include "sky/engine/core/painting/Picture.h"
#include "sky/engine/core/view/BeginFrameCallback.h"
#include "sky/engine/core/view/EventCallback.h" #include "sky/engine/core/view/EventCallback.h"
#include "sky/engine/core/view/FrameCallback.h"
#include "sky/engine/public/platform/sky_display_metrics.h" #include "sky/engine/public/platform/sky_display_metrics.h"
#include "sky/engine/tonic/dart_wrappable.h" #include "sky/engine/tonic/dart_wrappable.h"
#include "sky/engine/wtf/PassRefPtr.h" #include "sky/engine/wtf/PassRefPtr.h"
...@@ -35,7 +35,7 @@ public: ...@@ -35,7 +35,7 @@ public:
void setMetricsChangedCallback(PassOwnPtr<VoidCallback> callback); void setMetricsChangedCallback(PassOwnPtr<VoidCallback> callback);
void setBeginFrameCallback(PassOwnPtr<BeginFrameCallback> callback); void setFrameCallback(PassOwnPtr<FrameCallback> callback);
void scheduleFrame(); void scheduleFrame();
void setDisplayMetrics(const SkyDisplayMetrics& metrics); void setDisplayMetrics(const SkyDisplayMetrics& metrics);
...@@ -49,7 +49,7 @@ private: ...@@ -49,7 +49,7 @@ private:
SkyDisplayMetrics m_displayMetrics; SkyDisplayMetrics m_displayMetrics;
OwnPtr<EventCallback> m_eventCallback; OwnPtr<EventCallback> m_eventCallback;
OwnPtr<VoidCallback> m_metricsChangedCallback; OwnPtr<VoidCallback> m_metricsChangedCallback;
OwnPtr<BeginFrameCallback> m_beginFrameCallback; OwnPtr<FrameCallback> m_frameCallback;
RefPtr<Picture> m_picture; RefPtr<Picture> m_picture;
}; };
......
...@@ -14,6 +14,6 @@ interface View { ...@@ -14,6 +14,6 @@ interface View {
void setEventCallback(EventCallback callback); void setEventCallback(EventCallback callback);
void setMetricsChangedCallback(VoidCallback callback); void setMetricsChangedCallback(VoidCallback callback);
void setBeginFrameCallback(BeginFrameCallback callback); void setFrameCallback(FrameCallback callback);
void scheduleFrame(); void scheduleFrame();
}; };
...@@ -88,6 +88,6 @@ void beginFrame(double timeStamp) { ...@@ -88,6 +88,6 @@ void beginFrame(double timeStamp) {
} }
void main() { void main() {
sky.view.setBeginFrameCallback(beginFrame); sky.view.setFrameCallback(beginFrame);
sky.view.scheduleFrame(); sky.view.scheduleFrame();
} }
...@@ -35,6 +35,6 @@ void beginFrame(double timeStamp) { ...@@ -35,6 +35,6 @@ void beginFrame(double timeStamp) {
} }
void main() { void main() {
view.setBeginFrameCallback(beginFrame); view.setFrameCallback(beginFrame);
view.scheduleFrame(); view.scheduleFrame();
} }
...@@ -43,6 +43,6 @@ void main() { ...@@ -43,6 +43,6 @@ void main() {
layoutRoot.rootElement = block; layoutRoot.rootElement = block;
view.setBeginFrameCallback(beginFrame); view.setFrameCallback(beginFrame);
view.scheduleFrame(); view.scheduleFrame();
} }
...@@ -69,5 +69,5 @@ bool handleEvent(Event event) { ...@@ -69,5 +69,5 @@ bool handleEvent(Event event) {
void main() { void main() {
image_cache.load(url1).then(handleImageLoad); image_cache.load(url1).then(handleImageLoad);
view.setEventCallback(handleEvent); view.setEventCallback(handleEvent);
view.setBeginFrameCallback(beginFrame); view.setFrameCallback(beginFrame);
} }
...@@ -24,6 +24,6 @@ void beginFrame(double timeStamp) { ...@@ -24,6 +24,6 @@ void beginFrame(double timeStamp) {
} }
void main() { void main() {
view.setBeginFrameCallback(beginFrame); view.setFrameCallback(beginFrame);
view.scheduleFrame(); view.scheduleFrame();
} }
...@@ -27,18 +27,14 @@ void _beginFrame(double timeStamp) { ...@@ -27,18 +27,14 @@ void _beginFrame(double timeStamp) {
} }
void init() { void init() {
assert(sky.window == null); sky.view.setFrameCallback(_beginFrame);
sky.view.setBeginFrameCallback(_beginFrame);
} }
void addPersistentFrameCallback(Callback callback) { void addPersistentFrameCallback(Callback callback) {
assert(sky.window == null);
_persistentCallbacks.add(callback); _persistentCallbacks.add(callback);
} }
int requestAnimationFrame(Callback callback) { int requestAnimationFrame(Callback callback) {
if (sky.window != null)
return sky.window.requestAnimationFrame(callback);
int id = _nextCallbackId++; int id = _nextCallbackId++;
_transientCallbacks[id] = callback; _transientCallbacks[id] = callback;
ensureVisualUpdate(); ensureVisualUpdate();
...@@ -46,13 +42,10 @@ int requestAnimationFrame(Callback callback) { ...@@ -46,13 +42,10 @@ int requestAnimationFrame(Callback callback) {
} }
void cancelAnimationFrame(int id) { void cancelAnimationFrame(int id) {
if (sky.window != null)
return sky.window.cancelAnimationFrame(id);
_transientCallbacks.remove(id); _transientCallbacks.remove(id);
} }
void ensureVisualUpdate() { void ensureVisualUpdate() {
assert(sky.window == null);
if (_haveScheduledVisualUpdate) if (_haveScheduledVisualUpdate)
return; return;
sky.view.scheduleFrame(); sky.view.scheduleFrame();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册