Chromium Code Reviews| Index: chrome/browser/android/vr_shell/ui_scene.cc |
| diff --git a/chrome/browser/android/vr_shell/ui_scene.cc b/chrome/browser/android/vr_shell/ui_scene.cc |
| index 62ebe82cda6be50ad444f0e1139816d37555f7ae..9a6349f098f8e361beb8126e9bff827002344190 100644 |
| --- a/chrome/browser/android/vr_shell/ui_scene.cc |
| +++ b/chrome/browser/android/vr_shell/ui_scene.cc |
| @@ -143,7 +143,7 @@ std::unique_ptr<easing::Easing> ParseEasing(const base::DictionaryValue& dict) { |
| void ApplyAnchoring(const ContentRectangle& parent, |
| XAnchoring x_anchoring, |
| YAnchoring y_anchoring, |
| - ReversibleTransform* transform) { |
| + Transform* transform) { |
| // To anchor a child, use the parent's size to find its edge. |
| float x_offset; |
| switch (x_anchoring) { |
| @@ -330,18 +330,19 @@ void UiScene::HandleCommands(std::unique_ptr<base::ListValue> commands, |
| } |
| } |
| -void UiScene::UpdateTransforms(float screen_tilt, int64_t time_in_micro) { |
| +void UiScene::UpdateTransforms(int64_t time_in_micro) { |
| // Process all animations before calculating object transforms. |
| for (auto& element : ui_elements_) { |
| element->Animate(time_in_micro); |
| } |
| for (auto& element : ui_elements_) { |
| - element->transform.MakeIdentity(); |
| - element->transform.Scale(element->size.x, element->size.y, element->size.z); |
| + Transform transform; |
| + transform.MakeIdentity(); |
| + transform.Scale(element->size.x, element->size.y, element->size.z); |
| element->computed_opacity = 1.0f; |
| - ApplyRecursiveTransforms(*element.get(), &element->transform, |
| + ApplyRecursiveTransforms(*element.get(), &transform, |
| &element->computed_opacity); |
| - element->transform.Rotate(1.0f, 0.0f, 0.0f, screen_tilt); |
|
cjgrant
2017/03/03 21:30:34
Whoa, this looks broken, and the unit tests don't
mthiesse
2017/03/06 17:26:07
THAT explains a lot. I thought recentering was doi
cjgrant
2017/03/06 17:43:34
Oops, disregard, this block is fine.
cjgrant
2017/03/06 17:43:34
Since my original comment was not valid, I need to
mthiesse
2017/03/06 17:46:00
We can follow up offline and make sure I'm not cra
|
| + element->SetTransform(transform); |
| } |
| } |
| @@ -372,7 +373,7 @@ UiScene::UiScene() = default; |
| UiScene::~UiScene() = default; |
| void UiScene::ApplyRecursiveTransforms(const ContentRectangle& element, |
| - ReversibleTransform* transform, |
| + Transform* transform, |
| float* opacity) { |
| transform->Scale(element.scale.x, element.scale.y, element.scale.z); |
| transform->Rotate(element.rotation.x, element.rotation.y, element.rotation.z, |
| @@ -386,6 +387,7 @@ void UiScene::ApplyRecursiveTransforms(const ContentRectangle& element, |
| CHECK(parent != nullptr); |
| ApplyAnchoring(*parent, element.x_anchoring, element.y_anchoring, |
| transform); |
| + |
| ApplyRecursiveTransforms(*parent, transform, opacity); |
| } |
| } |