diff --git a/HISTORY.md b/HISTORY.md
index bc0d28fc..cd59cf24 100755
--- a/HISTORY.md
+++ b/HISTORY.md
@@ -6,6 +6,7 @@
* morphic: made keyboard handler (more) invisible, thanks, Bernat!
* gui: made remaining synchronous http requests asynch (url: #open, #run)
* morphic, gui: switch to scripts tab when dragging a block into the editor pane
+* blocks: refactored transparency handling for syntax elements
### 2020-07-13
* paint, symbols: new iconic buttons for grow, shrink and flip actions, thanks, Jadga!
diff --git a/snap.html b/snap.html
index 4053f881..7bbf1ee0 100755
--- a/snap.html
+++ b/snap.html
@@ -7,7 +7,7 @@
-
+
diff --git a/src/blocks.js b/src/blocks.js
index 5c8c2d0b..e9b23692 100644
--- a/src/blocks.js
+++ b/src/blocks.js
@@ -148,7 +148,7 @@ CustomCommandBlockMorph, SymbolMorph, ToggleButtonMorph, DialMorph*/
// Global stuff ////////////////////////////////////////////////////////
-modules.blocks = '2020-July-02';
+modules.blocks = '2020-July-15';
var SyntaxElementMorph;
var BlockMorph;
@@ -284,6 +284,7 @@ SyntaxElementMorph.prototype.setScale = function (num) {
SyntaxElementMorph.prototype.setScale(1);
SyntaxElementMorph.prototype.isCachingInputs = false;
+SyntaxElementMorph.prototype.alpha = 1;
// SyntaxElementMorph instance creation:
@@ -302,6 +303,7 @@ SyntaxElementMorph.prototype.init = function () {
this.defaults = [];
this.cachedInputs = null;
+ delete this.alpha;
};
// SyntaxElementMorph accessing:
@@ -4421,7 +4423,7 @@ BlockMorph.prototype.prepareToBeGrabbed = function (hand) {
};
BlockMorph.prototype.justDropped = function () {
- this.alpha = 1;
+ delete this.alpha;
this.allComments().forEach(comment =>
comment.stopFollowing()
);
@@ -5595,7 +5597,7 @@ ReporterBlockMorph.prototype.prepareToBeGrabbed = function (handMorph) {
this.setPosition(oldPos);
}
ReporterBlockMorph.uber.prepareToBeGrabbed.call(this, handMorph);
- this.alpha = 0.85;
+ this.alpha = Math.min(this.alpha, 0.85);
this.cachedSlotSpec = null;
};
@@ -6188,7 +6190,6 @@ function RingMorph() {
RingMorph.prototype.init = function () {
RingMorph.uber.init.call(this);
this.category = 'other';
- this.alpha = RingMorph.prototype.alpha;
this.contrast = RingMorph.prototype.contrast;
this.setExtent(new Point(200, 80));
};
@@ -7968,7 +7969,6 @@ function RingCommandSlotMorph() {
RingCommandSlotMorph.prototype.init = function () {
RingCommandSlotMorph.uber.init.call(this);
this.color = new Color(0, 17, 173);
- this.alpha = RingMorph.prototype.alpha;
this.contrast = RingMorph.prototype.contrast;
};
@@ -11933,7 +11933,6 @@ function RingReporterSlotMorph(isPredicate) {
RingReporterSlotMorph.prototype.init = function (isPredicate) {
RingReporterSlotMorph.uber.init.call(this, isPredicate, true);
- this.alpha = RingMorph.prototype.alpha;
this.contrast = RingMorph.prototype.contrast;
};