diff --git a/interface/resources/qml/hifi/commerce/purchases/PurchasedItem.qml b/interface/resources/qml/hifi/commerce/purchases/PurchasedItem.qml index 13dc3cb37f..b2338d08de 100644 --- a/interface/resources/qml/hifi/commerce/purchases/PurchasedItem.qml +++ b/interface/resources/qml/hifi/commerce/purchases/PurchasedItem.qml @@ -731,7 +731,7 @@ Item { } HiFiGlyphs { id: rezIcon; - text: (root.buttonGlyph)[itemTypesArray.indexOf(root.itemType)]; + text: root.isInstalled ? "" : (root.buttonGlyph)[itemTypesArray.indexOf(root.itemType)]; anchors.right: rezIconLabel.left; anchors.rightMargin: 2; anchors.verticalCenter: parent.verticalCenter; diff --git a/scripts/system/edit.js b/scripts/system/edit.js index 0789e1fac2..96ffd18aef 100644 --- a/scripts/system/edit.js +++ b/scripts/system/edit.js @@ -1086,15 +1086,19 @@ function mouseReleaseEvent(event) { } } -function wasTabletClicked(event) { +function wasTabletOrEditHandleClicked(event) { var rayPick = Camera.computePickRay(event.x, event.y); - var tabletIDs = getMainTabletIDs(); - if (tabletIDs.length === 0) { - return false; - } else { - var result = Overlays.findRayIntersection(rayPick, true, getMainTabletIDs()); - return result.intersects; + var result = Overlays.findRayIntersection(rayPick, true); + if (result.intersects) { + var overlayID = result.overlayID; + var tabletIDs = getMainTabletIDs(); + if (tabletIDs.indexOf(overlayID) >= 0) { + return true; + } else if (selectionDisplay.isEditHandle(overlayID)) { + return true; + } } + return false; } function mouseClickEvent(event) { @@ -1102,8 +1106,8 @@ function mouseClickEvent(event) { var result, properties, tabletClicked; if (isActive && event.isLeftButton) { result = findClickedEntity(event); - tabletClicked = wasTabletClicked(event); - if (tabletClicked) { + tabletOrEditHandleClicked = wasTabletOrEditHandleClicked(event); + if (tabletOrEditHandleClicked) { return; } diff --git a/scripts/system/libraries/entitySelectionTool.js b/scripts/system/libraries/entitySelectionTool.js index c9a15875f1..96a3b2b015 100644 --- a/scripts/system/libraries/entitySelectionTool.js +++ b/scripts/system/libraries/entitySelectionTool.js @@ -658,6 +658,7 @@ SelectionDisplay = (function() { selectionBox, iconSelectionBox ]; + var maximumHandleInAllOverlays = handleCloner; overlayNames[handleTranslateXCone] = "handleTranslateXCone"; overlayNames[handleTranslateXCylinder] = "handleTranslateXCylinder"; @@ -781,6 +782,12 @@ SelectionDisplay = (function() { return Math.abs(position.x) <= box.dimensions.x / 2 && Math.abs(position.y) <= box.dimensions.y / 2 && Math.abs(position.z) <= box.dimensions.z / 2; } + + that.isEditHandle = function(overlayID) { + var overlayIndex = allOverlays.indexOf(overlayID); + var maxHandleIndex = allOverlays.indexOf(maximumHandleInAllOverlays); + return overlayIndex >= 0 && overlayIndex <= maxHandleIndex; + }; // FUNCTION: MOUSE PRESS EVENT that.mousePressEvent = function (event) {