浏览代码

minor fixes

/siyaoH-1.17-PlatformMessage
xingweizhu 4 年前
当前提交
68b7aba1
共有 3 个文件被更改,包括 59 次插入11 次删除
  1. 34
      com.unity.uiwidgets/Runtime/gestures/converter.cs
  2. 34
      engine/src/shell/common/shell.cc
  3. 2
      engine/src/shell/common/shell.h

34
com.unity.uiwidgets/Runtime/gestures/converter.cs


using System.Collections.Generic;
using Unity.UIWidgets.foundation;
using Unity.UIWidgets.ui;
using UnityEngine;
namespace Unity.UIWidgets.gestures {
class _PointerState {

switch (datum.change) {
case PointerChange.add: {
D.assert(!_pointers.ContainsKey(datum.device));
_PointerState state = _ensureStateForPointer(datum, position);
D.assert(state.lastPosition == position);
yield return new PointerAddedEvent(

}
}
break;
case PointerChange.remove: {
D.assert(_pointers.ContainsKey(datum.device));
_PointerState state = _pointers[datum.device];
if (state.down) {
yield return new PointerCancelEvent(
timeStamp: timeStamp,
pointer: state.pointer,
kind: kind,
device: datum.device,
position: position
);
}
if (position != state.lastPosition) {
yield return new PointerHoverEvent(
timeStamp: timeStamp,
kind: kind,
device: datum.device,
position: position
);
}
_pointers.Remove(datum.device);
yield return new PointerRemovedEvent(
timeStamp: timeStamp,
kind: kind,
device: datum.device,
position: position
);
break;
}
#if UNITY_EDITOR
// case PointerChange.dragFromEditorMove: {
// _PointerState state = _ensureStateForPointer(datum, position);

34
engine/src/shell/common/shell.cc


// second. Otherwise, the timings of last few frames of an animation may
// never be reported until the next animation starts.
frame_timings_report_scheduled_ = true;
task_runners_.GetRasterTaskRunner()->PostDelayedTask(
[self = weak_factory_gpu_->GetWeakPtr()]() {
if (!self.get()) {
return;
}
self->frame_timings_report_scheduled_ = false;
if (self->UnreportedFramesCount() > 0) {
self->ReportTimings();
}
},
fml::TimeDelta::FromMilliseconds(kBatchTimeInMilliseconds));
task_runners_.GetUITaskRunner()->PostDelayedTask(
[self = this]() {
self->PostReportTiming();
},
fml::TimeDelta::FromMilliseconds(kBatchTimeInMilliseconds)
);
}
void Shell::PostReportTiming()
{
task_runners_.GetRasterTaskRunner()->PostDelayedTask(
[self = weak_factory_gpu_->GetWeakPtr()]() {
if (!self.get()) {
return;
}
self->frame_timings_report_scheduled_ = false;
if (self->UnreportedFramesCount() > 0) {
self->ReportTimings();
}
},
fml::TimeDelta::FromMilliseconds(0));
}
fml::Milliseconds Shell::GetFrameBudget() {

2
engine/src/shell/common/shell.h


void ReportTimings();
void PostReportTiming();
// |PlatformView::Delegate|
void OnPlatformViewCreated(std::unique_ptr<Surface> surface) override;

正在加载...
取消
保存