Commit Graph

11 Commits (6e21d63943a0b585809908d0da45765e4d05d895)

Author SHA1 Message Date
Danilo Aimini 65e651388c
Add tests for FocusOnParentOfFocusedPrefab. Refactor tests to match, and re-enable disabled tests as the fixture now correctly supports the Prefab EOS. (#7372)
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini daeab4bbb1
Focus Mode | Switch instance referencing in Prefab Focus Handler to use more reliable Instance handles (#7304)
* Add function to Prefab Instances allowing to get a reference to a nested instance by alias.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Refactor the Prefab Focus Handler to use RootAliasPaths to store the reference to the currently focused prefab instance instead of the previous method (entityId of the prefab container).

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Use existing FindNestedInstance method instead of adding new one.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Minor fixes to style and comments

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Removing indexing in GetInstanceReferenceFromRootAliasPath, turn variables into constants where possible.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Modified the Prefab Focus test fixture to ensure the entity hierarchy is generated under the Prefab EOS, allowing tests to work with the new implementation of the focus mode handler.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Ensure RootAliasPath is iterated by reference in GetInstanceReferenceFromRootAliasPath

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini ac959bcc01
Dragging an entity from outside the focused Prefab into it may crash the Editor (#5762)
* Replace Instance References with EntityId of the Prefab Container (WIP)

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Use the invalid entity id for the root instance and get the root instance every time to prevent weird Prefab EOS shenanigans.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Revert unnecessary changes, fix IsOwningPrefabBeingFocused to match previous behavior. Disable some tests that no longer apply correctly due to the testing environment not relying on the Prefab EOS.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Fix minor typo in test comment

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini da3a39a6a0
LYN-7121 | Focus Mode - Make editing a prefab an undoable operation (#4582)
* Refactor the PrefabFocusInterface to differentiate between Public and Internal functions. Introduce PrefabFocusUndo nodes to allow undoing Prefab Edit operations.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Fix selection code to avoid warning message

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Removed changed property from PrefabFocusUndo node

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Switch from size == 0 to empty in EntityOutlinerWidget::OnSelectionChanged

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* condense if check on Prefab Edit context menu item setup

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Correct interface usage in PrefabIntegrationManager (interface was renamed to public)

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Remove rej file that was included by mistake

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Fix missing interface initialization in PrefabFocusTests

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
chiyenteng 23322edde7
Fix Entity id consistency issue & refactor prefab workflows/tests (#4373)
* Fix Entity id consistency issue & refactor prefab workflows/test framework

Signed-off-by: chiyteng <chiyteng@amazon.com>

* Update comments

Signed-off-by: chiyteng <chiyteng@amazon.com>

* Modify CreatePrefab and remove extra spaces

Signed-off-by: chiyteng <chiyteng@amazon.com>

* Address comments

Signed-off-by: chiyteng <chiyteng@amazon.com>

* Refactor prefab instance constructors

Signed-off-by: chiyteng <chiyteng@amazon.com>

* Remove commented out code

Signed-off-by: chiyteng <chiyteng@amazon.com>
4 years ago
Danilo Aimini 225d9d3b3c Fixes to unit tests after merge
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini d3bc7d8f12 Merge branch 'development' of https://github.com/o3de/o3de into daimini/FocusMode/breadcrumbs
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

# Conflicts:
#	Code/Framework/AzToolsFramework/Tests/FocusMode/EditorFocusModeTests.cpp
#	Code/Framework/AzToolsFramework/Tests/Prefab/PrefabFocus/PrefabFocusTests.cpp
4 years ago
Danilo Aimini 8d67f184c8
LYN-7008 | Focus Mode - Selection unit tests (#4357)
* Refactor existing tests and fixtures, split them up in more granular tests, and add more comments.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Refactor test fixture for FocusMode to make it more reusable

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Fixture rename, draft of selection test

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Split SetFocus and ClearFocus tests for Editor Focus Mode

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Move BoundsTestComponent to its own file so that it can be reused in Focus Mode Selection tests

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Making progress on selection test. Test compiles now, but selection doesn't seem to be working.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Removed commented out code from previous iteration.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Move BoundsTestComponent under the UnitTest namespace

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Viewport selection tests + minor fixes.

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>

* Minor fixes

Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini a7f6bfbb50 Fix tests to work with new interface APIs using EditorEntityContextId
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini 80e6a6903a Remove unused CreateEditorEntity function
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago
Danilo Aimini 72110e40cf Add Unit tests for EditorFocusMode and PrefabFocus. Minor change to PrefabFocusHandler to avoid instantiating a new AZ::EntityId() for checks.
Signed-off-by: Danilo Aimini <82231674+AMZN-daimini@users.noreply.github.com>
4 years ago