diff --git a/blocks.js b/blocks.js index 445a8e27..6cef5ab9 100644 --- a/blocks.js +++ b/blocks.js @@ -149,7 +149,7 @@ isSnapObject, copy, PushButtonMorph, SpriteIconMorph, Process*/ // Global stuff //////////////////////////////////////////////////////// -modules.blocks = '2016-October-20'; +modules.blocks = '2016-October-24'; var SyntaxElementMorph; var BlockMorph; @@ -7572,6 +7572,10 @@ InputSlotMorph.prototype.reactToEdit = function () { this.contents().clearSelection(); }; +InputSlotMorph.prototype.freshTextEdit = function (aStringOrTextMorph) { + aStringOrTextMorph.selectAll(); +}; + // InputSlotMorph menu: InputSlotMorph.prototype.userMenu = function () { diff --git a/gui.js b/gui.js index da3446d4..9552ebf2 100644 --- a/gui.js +++ b/gui.js @@ -72,7 +72,7 @@ isRetinaSupported, SliderMorph*/ // Global stuff //////////////////////////////////////////////////////// -modules.gui = '2016-October-10'; +modules.gui = '2016-October-24'; // Declarations @@ -3088,8 +3088,10 @@ IDE_Morph.prototype.aboutSnap = function () { + '\nKartik Chandra: Paint Editor' + '\nMichael Ball: Time/Date UI, many bugfixes' + '\nBartosz Leper: Retina Display Support' + + '\nBernat Romagosa: Countless contributions' + '\n"Ava" Yuan Yuan, Dylan Servilla: Graphic Effects' + '\nKyle Hotchkiss: Block search design' + + '\nBrian Brol: Many bugfixes and optimizations' + '\nIan Reynolds: UI Design, Event Bindings, ' + 'Sound primitives' + '\nIvan Motyashov: Initial Squeak Porting' diff --git a/history.txt b/history.txt index 985a57af..8a1ec125 100755 --- a/history.txt +++ b/history.txt @@ -3080,3 +3080,9 @@ http://snap.berkeley.edu/run#cloud:Username=jens&ProjectName=rotation 161021 ------ * Threads: Fixed #1422 + +161024 +------ +* Text Editing Tweaks, thanks, Bernat!! + + diff --git a/morphic.js b/morphic.js index c338fb10..fdf05da6 100644 --- a/morphic.js +++ b/morphic.js @@ -10757,6 +10757,7 @@ WorldMorph.prototype.init = function (aCanvas, fillPage) { this.hand = new HandMorph(this); this.keyboardReceiver = null; this.cursor = null; + this.lastEditedText = null; this.activeMenu = null; this.activeHandle = null; this.virtualKeyboard = null; @@ -11537,6 +11538,11 @@ WorldMorph.prototype.edit = function (aStringOrTextMorph) { this.slide(aStringOrTextMorph); } } + + if (this.lastEditedText !== aStringOrTextMorph) { + aStringOrTextMorph.escalateEvent('freshTextEdit', aStringOrTextMorph); + } + this.lastEditedText = aStringOrTextMorph; }; WorldMorph.prototype.slide = function (aStringOrTextMorph) { @@ -11593,6 +11599,7 @@ WorldMorph.prototype.stopEditing = function () { document.body.removeChild(this.virtualKeyboard); this.virtualKeyboard = null; } + this.lastEditedText = null; this.worldCanvas.focus(); }; diff --git a/store.js b/store.js index cab9f5f4..1dd7bc2d 100644 --- a/store.js +++ b/store.js @@ -61,7 +61,7 @@ normalizeCanvas*/ // Global stuff //////////////////////////////////////////////////////// -modules.store = '2016-August-03'; +modules.store = '2016-October-24'; // XML_Serializer ///////////////////////////////////////////////////////