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