From 00a024fde2bbcf7a2eb45c6655e3f8aecc60cc1a Mon Sep 17 00:00:00 2001 From: Thijs Wenker Date: Fri, 12 Apr 2019 20:06:32 +0200 Subject: [PATCH] fixing materialTargets, after the rebase --- scripts/system/html/js/entityProperties.js | 26 +++++++++++----------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/scripts/system/html/js/entityProperties.js b/scripts/system/html/js/entityProperties.js index 6a93a84dca..42afbd5849 100644 --- a/scripts/system/html/js/entityProperties.js +++ b/scripts/system/html/js/entityProperties.js @@ -1902,6 +1902,13 @@ function showGroupsForTypes(types) { }); } +function getFirstSelectedID() { + if (selectedEntityIDs.size === 0) { + return null; + } + return selectedEntityIDs.values().next().value; +} + const SUPPORTED_FALLBACK_TYPES = ['number', 'number-draggable', 'rect', 'vec3', 'vec2', 'color']; function getMultiplePropertyValue(originalPropertyName) { @@ -2992,7 +2999,7 @@ function createProperty(propertyData, propertyElementID, propertyName, propertyI */ function parentIDChanged() { - if (selectedEntityProperties.type === "Material") { + if (currentSelections.length === 1 && currentSelections[0].type === "Material") { requestMaterialTarget(); } } @@ -3478,7 +3485,10 @@ function setTextareaScrolling(element) { */ function requestMaterialTarget() { - EventBridge.emitWebEvent(JSON.stringify({ type: 'materialTargetRequest', entityID: selectedEntityProperties.id })); + EventBridge.emitWebEvent(JSON.stringify({ + type: 'materialTargetRequest', + entityID: getFirstSelectedID(), + })); } function setMaterialTargetData(materialTargetData) { @@ -3643,16 +3653,6 @@ function handleEntitySelectionUpdate(selections, isPropertiesToolUpdate) { const multipleSelections = currentSelections.length > 1; const hasSelectedEntityChanged = !areSetsEqual(selectedEntityIDs, previouslySelectedEntityIDs); - // FIXME: do we really want to save userData/materialData here instead of saving it on the blur event of the json editor? - if (hasSelectedEntityChanged) { - if (editor !== null) { - saveUserData(previouslySelectedEntityIDs); - } - if (materialEditor !== null) { - saveMaterialData(previouslySelectedEntityIDs); - } - } - if (selections.length === 0) { deleteJSONEditor(); deleteJSONMaterialEditor(); @@ -4200,7 +4200,7 @@ function loaded() { } } } else if (data.type === 'materialTargetReply') { - if (data.entityID === selectedEntityProperties.id) { + if (data.entityID === getFirstSelectedID()) { setMaterialTargetData(data.materialTargetData); } }