From d811809a25e3b60d076ceda81cc545b104d1e34f Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Mon, 12 Feb 2018 08:24:31 +0100 Subject: [PATCH 01/16] Localisation updates from https://translatewiki.net. --- msg/json/ja.json | 2 -- msg/json/nb.json | 1 - msg/json/pl.json | 1 - msg/json/zh-hant.json | 1 - 4 files changed, 5 deletions(-) diff --git a/msg/json/ja.json b/msg/json/ja.json index 825f7bed9..a21cbfe47 100644 --- a/msg/json/ja.json +++ b/msg/json/ja.json @@ -170,7 +170,6 @@ "MATH_ROUND_OPERATOR_ROUND": "四捨五入", "MATH_ROUND_OPERATOR_ROUNDUP": "切り上げ", "MATH_ROUND_OPERATOR_ROUNDDOWN": "切り捨て", - "MATH_ONLIST_HELPURL": "", "MATH_ONLIST_OPERATOR_SUM": "リストの合計", "MATH_ONLIST_TOOLTIP_SUM": "リストの数値を足して返す。", "MATH_ONLIST_OPERATOR_MIN": "リストの最小値", @@ -330,7 +329,6 @@ "LISTS_REVERSE_HELPURL": "https://github.com/google/blockly/wiki/Lists#reversing-a-list", "LISTS_REVERSE_MESSAGE0": "%1を逆順に", "LISTS_REVERSE_TOOLTIP": "リストのコピーを逆順にする。", - "ORDINAL_NUMBER_SUFFIX": "", "VARIABLES_GET_TOOLTIP": "この変数の値を返します。", "VARIABLES_GET_CREATE_SET": "'セット%1を作成します。", "VARIABLES_SET": "セット %1 宛先 %2", diff --git a/msg/json/nb.json b/msg/json/nb.json index 4686a1d41..9bad100a0 100644 --- a/msg/json/nb.json +++ b/msg/json/nb.json @@ -172,7 +172,6 @@ "MATH_ROUND_OPERATOR_ROUND": "avrunding", "MATH_ROUND_OPERATOR_ROUNDUP": "rund opp", "MATH_ROUND_OPERATOR_ROUNDDOWN": "rund ned", - "MATH_ONLIST_HELPURL": "", "MATH_ONLIST_OPERATOR_SUM": "summen av listen", "MATH_ONLIST_TOOLTIP_SUM": "Returner summen av alle tallene i listen.", "MATH_ONLIST_OPERATOR_MIN": "minimum av listen", diff --git a/msg/json/pl.json b/msg/json/pl.json index 1b45ae580..c41168e73 100644 --- a/msg/json/pl.json +++ b/msg/json/pl.json @@ -295,7 +295,6 @@ "LISTS_GET_INDEX_FIRST": "pierwszy", "LISTS_GET_INDEX_LAST": "ostatni", "LISTS_GET_INDEX_RANDOM": "losowy", - "LISTS_GET_INDEX_TAIL": "", "LISTS_INDEX_FROM_START_TOOLTIP": "%1 to pierwszy element.", "LISTS_INDEX_FROM_END_TOOLTIP": "%1 to ostatni element.", "LISTS_GET_INDEX_TOOLTIP_GET_FROM": "Zwraca element z konkretnej pozycji na liście.", diff --git a/msg/json/zh-hant.json b/msg/json/zh-hant.json index 40d260b9c..cb0c71c72 100644 --- a/msg/json/zh-hant.json +++ b/msg/json/zh-hant.json @@ -214,7 +214,6 @@ "TEXT_CHARAT_FIRST": "取得 第一個字元", "TEXT_CHARAT_LAST": "取得 最後一個字元", "TEXT_CHARAT_RANDOM": "取得 任意字元", - "TEXT_CHARAT_TAIL": "", "TEXT_CHARAT_TOOLTIP": "返回位於指定位置的字元。", "TEXT_GET_SUBSTRING_TOOLTIP": "返回指定的部分文字。", "TEXT_GET_SUBSTRING_INPUT_IN_TEXT": "在字串", From 9d01adf26935d508e841cbd6f58cef33fe63d308 Mon Sep 17 00:00:00 2001 From: Rachel Fenichel Date: Tue, 13 Feb 2018 13:03:14 -0800 Subject: [PATCH 02/16] Rebuild --- blockly_accessible_compressed.js | 24 ++++++++++---------- blockly_accessible_uncompressed.js | 35 ++++++++++++++++-------------- blockly_compressed.js | 24 ++++++++++---------- blockly_uncompressed.js | 35 ++++++++++++++++-------------- msg/json/en.json | 2 +- 5 files changed, 65 insertions(+), 55 deletions(-) diff --git a/blockly_accessible_compressed.js b/blockly_accessible_compressed.js index c2ce5f5ca..9ce6def69 100644 --- a/blockly_accessible_compressed.js +++ b/blockly_accessible_compressed.js @@ -1163,7 +1163,8 @@ Blockly.WorkspaceSvg=function(a,b,c){Blockly.WorkspaceSvg.superClass_.constructo this.grid_=this.options.gridPattern?new Blockly.Grid(a.gridPattern,a.gridOptions):null;Blockly.Variables&&Blockly.Variables.flyoutCategory&&this.registerToolboxCategoryCallback(Blockly.VARIABLE_CATEGORY_NAME,Blockly.Variables.flyoutCategory);Blockly.VariablesDynamic&&Blockly.VariablesDynamic.flyoutCategory&&this.registerToolboxCategoryCallback(Blockly.VARIABLE_DYNAMIC_CATEGORY_NAME,Blockly.VariablesDynamic.flyoutCategory);Blockly.Procedures&&Blockly.Procedures.flyoutCategory&&this.registerToolboxCategoryCallback(Blockly.PROCEDURE_CATEGORY_NAME, Blockly.Procedures.flyoutCategory)};goog.inherits(Blockly.WorkspaceSvg,Blockly.Workspace);Blockly.WorkspaceSvg.prototype.resizeHandlerWrapper_=null;Blockly.WorkspaceSvg.prototype.rendered=!0;Blockly.WorkspaceSvg.prototype.isFlyout=!1;Blockly.WorkspaceSvg.prototype.isMutator=!1;Blockly.WorkspaceSvg.prototype.resizesEnabled_=!0;Blockly.WorkspaceSvg.prototype.scrollX=0;Blockly.WorkspaceSvg.prototype.scrollY=0;Blockly.WorkspaceSvg.prototype.startScrollX=0;Blockly.WorkspaceSvg.prototype.startScrollY=0; Blockly.WorkspaceSvg.prototype.dragDeltaXY_=null;Blockly.WorkspaceSvg.prototype.scale=1;Blockly.WorkspaceSvg.prototype.trashcan=null;Blockly.WorkspaceSvg.prototype.scrollbar=null;Blockly.WorkspaceSvg.prototype.currentGesture_=null;Blockly.WorkspaceSvg.prototype.blockDragSurface_=null;Blockly.WorkspaceSvg.prototype.workspaceDragSurface_=null;Blockly.WorkspaceSvg.prototype.useWorkspaceDragSurface_=!1;Blockly.WorkspaceSvg.prototype.isDragSurfaceActive_=!1; -Blockly.WorkspaceSvg.prototype.lastRecordedPageScroll_=null;Blockly.WorkspaceSvg.prototype.flyoutButtonCallbacks_={};Blockly.WorkspaceSvg.prototype.toolboxCategoryCallbacks_={};Blockly.WorkspaceSvg.prototype.inverseScreenCTM_=null;Blockly.WorkspaceSvg.prototype.getInverseScreenCTM=function(){return this.inverseScreenCTM_};Blockly.WorkspaceSvg.prototype.updateInverseScreenCTM=function(){var a=this.getParentSvg().getScreenCTM();a&&(this.inverseScreenCTM_=a.inverse())}; +Blockly.WorkspaceSvg.prototype.lastRecordedPageScroll_=null;Blockly.WorkspaceSvg.prototype.flyoutButtonCallbacks_={};Blockly.WorkspaceSvg.prototype.toolboxCategoryCallbacks_={};Blockly.WorkspaceSvg.prototype.targetWorkspace=null;Blockly.WorkspaceSvg.prototype.inverseScreenCTM_=null;Blockly.WorkspaceSvg.prototype.getInverseScreenCTM=function(){return this.inverseScreenCTM_}; +Blockly.WorkspaceSvg.prototype.updateInverseScreenCTM=function(){var a=this.getParentSvg().getScreenCTM();a&&(this.inverseScreenCTM_=a.inverse())}; Blockly.WorkspaceSvg.prototype.getSvgXY=function(a){var b=0,c=0,d=1;if(goog.dom.contains(this.getCanvas(),a)||goog.dom.contains(this.getBubbleCanvas(),a))d=this.scale;do{var e=Blockly.utils.getRelativeXY(a);if(a==this.getCanvas()||a==this.getBubbleCanvas())d=1;b+=e.x*d;c+=e.y*d;a=a.parentNode}while(a&&a!=this.getParentSvg());return new goog.math.Coordinate(b,c)};Blockly.WorkspaceSvg.prototype.getOriginOffsetInPixels=function(){return Blockly.utils.getInjectionDivXY_(this.svgBlockCanvas_)}; Blockly.WorkspaceSvg.prototype.setResizeHandlerWrapper=function(a){this.resizeHandlerWrapper_=a}; Blockly.WorkspaceSvg.prototype.createDom=function(a){this.svgGroup_=Blockly.utils.createSvgElement("g",{"class":"blocklyWorkspace"},null);a&&(this.svgBackground_=Blockly.utils.createSvgElement("rect",{height:"100%",width:"100%","class":a},this.svgGroup_),"blocklyMainBackground"==a&&this.grid_&&(this.svgBackground_.style.fill="url(#"+this.grid_.getPatternId()+")"));this.svgBlockCanvas_=Blockly.utils.createSvgElement("g",{"class":"blocklyBlockCanvas"},this.svgGroup_);this.svgBubbleCanvas_=Blockly.utils.createSvgElement("g", @@ -1185,8 +1186,8 @@ Blockly.WorkspaceSvg.prototype.setVisible=function(a){this.scrollbar&&this.scrol Blockly.WorkspaceSvg.prototype.traceOn=function(){console.warn("Deprecated call to traceOn, delete this.")};Blockly.WorkspaceSvg.prototype.highlightBlock=function(a,b){if(void 0===b){for(var c=0,d;d=this.highlightedBlocks_[c];c++)d.setHighlighted(!1);this.highlightedBlocks_.length=0}if(d=a?this.getBlockById(a):null)(a=void 0===b||b)?-1==this.highlightedBlocks_.indexOf(d)&&this.highlightedBlocks_.push(d):goog.array.remove(this.highlightedBlocks_,d),d.setHighlighted(a)}; Blockly.WorkspaceSvg.prototype.paste=function(a){if(this.rendered&&!(a.getElementsByTagName("block").length>=this.remainingCapacity())){this.currentGesture_&&this.currentGesture_.cancel();Blockly.Events.disable();try{var b=Blockly.Xml.domToBlock(a,this),c=parseInt(a.getAttribute("x"),10),d=parseInt(a.getAttribute("y"),10);if(!isNaN(c)&&!isNaN(d)){this.RTL&&(c=-c);do{a=!1;for(var e=this.getAllBlocks(),f=0,g;g=e[f];f++){var h=g.getRelativeToSurfaceXY();if(1>=Math.abs(c-h.x)&&1>=Math.abs(d-h.y)){a=!0; break}}if(!a){var k=b.getConnections_(!1);f=0;for(var n;n=k[f];f++)if(n.closest(Blockly.SNAP_RADIUS,new goog.math.Coordinate(c,d)).connection){a=!0;break}}a&&(c=this.RTL?c-Blockly.SNAP_RADIUS:c+Blockly.SNAP_RADIUS,d+=2*Blockly.SNAP_RADIUS)}while(a);b.moveBy(c,d)}}finally{Blockly.Events.enable()}Blockly.Events.isEnabled()&&!b.isShadow()&&Blockly.Events.fire(new Blockly.Events.BlockCreate(b));b.select()}}; -Blockly.WorkspaceSvg.prototype.refreshToolboxSelection_=function(){var a=this.isFlyout?this.targetWorkspace:this;a&&!a.currentGesture_&&a.toolbox_&&a.toolbox_.flyout_&&a.toolbox_.refreshSelection()};Blockly.WorkspaceSvg.prototype.renameVariableById=function(a,b){Blockly.WorkspaceSvg.superClass_.renameVariableById.call(this,a,b);this.refreshToolboxSelection_()};Blockly.WorkspaceSvg.prototype.deleteVariableById=function(a){Blockly.WorkspaceSvg.superClass_.deleteVariableById.call(this,a);this.refreshToolboxSelection_()}; -Blockly.WorkspaceSvg.prototype.createVariable=function(a,b,c){a=Blockly.WorkspaceSvg.superClass_.createVariable.call(this,a,b,c);this.refreshToolboxSelection_();return a};Blockly.WorkspaceSvg.prototype.recordDeleteAreas=function(){this.deleteAreaTrash_=this.trashcan?this.trashcan.getClientRect():null;this.deleteAreaToolbox_=this.flyout_?this.flyout_.getClientRect():this.toolbox_?this.toolbox_.getClientRect():null}; +Blockly.WorkspaceSvg.prototype.refreshToolboxSelection=function(){var a=this.isFlyout?this.targetWorkspace:this;a&&!a.currentGesture_&&a.toolbox_&&a.toolbox_.flyout_&&a.toolbox_.refreshSelection()};Blockly.WorkspaceSvg.prototype.renameVariableById=function(a,b){Blockly.WorkspaceSvg.superClass_.renameVariableById.call(this,a,b);this.refreshToolboxSelection()};Blockly.WorkspaceSvg.prototype.deleteVariableById=function(a){Blockly.WorkspaceSvg.superClass_.deleteVariableById.call(this,a);this.refreshToolboxSelection()}; +Blockly.WorkspaceSvg.prototype.createVariable=function(a,b,c){a=Blockly.WorkspaceSvg.superClass_.createVariable.call(this,a,b,c);this.refreshToolboxSelection();return a};Blockly.WorkspaceSvg.prototype.recordDeleteAreas=function(){this.deleteAreaTrash_=this.trashcan?this.trashcan.getClientRect():null;this.deleteAreaToolbox_=this.flyout_?this.flyout_.getClientRect():this.toolbox_?this.toolbox_.getClientRect():null}; Blockly.WorkspaceSvg.prototype.isDeleteArea=function(a){a=new goog.math.Coordinate(a.clientX,a.clientY);return this.deleteAreaTrash_&&this.deleteAreaTrash_.contains(a)?Blockly.DELETE_AREA_TRASH:this.deleteAreaToolbox_&&this.deleteAreaToolbox_.contains(a)?Blockly.DELETE_AREA_TOOLBOX:Blockly.DELETE_AREA_NONE};Blockly.WorkspaceSvg.prototype.onMouseDown_=function(a){var b=this.getGesture(a);b&&b.handleWsStart(a,this)}; Blockly.WorkspaceSvg.prototype.startDrag=function(a,b){a=Blockly.utils.mouseToSvg(a,this.getParentSvg(),this.getInverseScreenCTM());a.x/=this.scale;a.y/=this.scale;this.dragDeltaXY_=goog.math.Coordinate.difference(b,a)};Blockly.WorkspaceSvg.prototype.moveDrag=function(a){a=Blockly.utils.mouseToSvg(a,this.getParentSvg(),this.getInverseScreenCTM());a.x/=this.scale;a.y/=this.scale;return goog.math.Coordinate.sum(this.dragDeltaXY_,a)}; Blockly.WorkspaceSvg.prototype.isDragging=function(){return null!=this.currentGesture_&&this.currentGesture_.isDragging()};Blockly.WorkspaceSvg.prototype.isDraggable=function(){return!!this.scrollbar};Blockly.WorkspaceSvg.prototype.onMouseWheel_=function(a){this.currentGesture_&&this.currentGesture_.cancel();var b=-a.deltaY/50,c=Blockly.utils.mouseToSvg(a,this.getParentSvg(),this.getInverseScreenCTM());this.zoom(c.x,c.y,b);a.preventDefault()}; @@ -1260,9 +1261,10 @@ Blockly.Warning.prototype.drawIcon_=function(a){Blockly.utils.createSvgElement(" Blockly.Warning.textToDom_=function(a){var b=Blockly.utils.createSvgElement("text",{"class":"blocklyText blocklyBubbleText",y:Blockly.Bubble.BORDER_WIDTH},null);a=a.split("\n");for(var c=0;c=this.remainingCapacity())){this.currentGesture_&&this.currentGesture_.cancel();Blockly.Events.disable();try{var b=Blockly.Xml.domToBlock(a,this),c=parseInt(a.getAttribute("x"),10),d=parseInt(a.getAttribute("y"),10);if(!isNaN(c)&&!isNaN(d)){this.RTL&&(c=-c);do{a=!1;for(var e=this.getAllBlocks(),f=0,g;g=e[f];f++){var h=g.getRelativeToSurfaceXY();if(1>=Math.abs(c-h.x)&&1>=Math.abs(d-h.y)){a=!0; break}}if(!a){var k=b.getConnections_(!1);f=0;for(var n;n=k[f];f++)if(n.closest(Blockly.SNAP_RADIUS,new goog.math.Coordinate(c,d)).connection){a=!0;break}}a&&(c=this.RTL?c-Blockly.SNAP_RADIUS:c+Blockly.SNAP_RADIUS,d+=2*Blockly.SNAP_RADIUS)}while(a);b.moveBy(c,d)}}finally{Blockly.Events.enable()}Blockly.Events.isEnabled()&&!b.isShadow()&&Blockly.Events.fire(new Blockly.Events.BlockCreate(b));b.select()}}; -Blockly.WorkspaceSvg.prototype.refreshToolboxSelection_=function(){var a=this.isFlyout?this.targetWorkspace:this;a&&!a.currentGesture_&&a.toolbox_&&a.toolbox_.flyout_&&a.toolbox_.refreshSelection()};Blockly.WorkspaceSvg.prototype.renameVariableById=function(a,b){Blockly.WorkspaceSvg.superClass_.renameVariableById.call(this,a,b);this.refreshToolboxSelection_()};Blockly.WorkspaceSvg.prototype.deleteVariableById=function(a){Blockly.WorkspaceSvg.superClass_.deleteVariableById.call(this,a);this.refreshToolboxSelection_()}; -Blockly.WorkspaceSvg.prototype.createVariable=function(a,b,c){a=Blockly.WorkspaceSvg.superClass_.createVariable.call(this,a,b,c);this.refreshToolboxSelection_();return a};Blockly.WorkspaceSvg.prototype.recordDeleteAreas=function(){this.deleteAreaTrash_=this.trashcan?this.trashcan.getClientRect():null;this.deleteAreaToolbox_=this.flyout_?this.flyout_.getClientRect():this.toolbox_?this.toolbox_.getClientRect():null}; +Blockly.WorkspaceSvg.prototype.refreshToolboxSelection=function(){var a=this.isFlyout?this.targetWorkspace:this;a&&!a.currentGesture_&&a.toolbox_&&a.toolbox_.flyout_&&a.toolbox_.refreshSelection()};Blockly.WorkspaceSvg.prototype.renameVariableById=function(a,b){Blockly.WorkspaceSvg.superClass_.renameVariableById.call(this,a,b);this.refreshToolboxSelection()};Blockly.WorkspaceSvg.prototype.deleteVariableById=function(a){Blockly.WorkspaceSvg.superClass_.deleteVariableById.call(this,a);this.refreshToolboxSelection()}; +Blockly.WorkspaceSvg.prototype.createVariable=function(a,b,c){a=Blockly.WorkspaceSvg.superClass_.createVariable.call(this,a,b,c);this.refreshToolboxSelection();return a};Blockly.WorkspaceSvg.prototype.recordDeleteAreas=function(){this.deleteAreaTrash_=this.trashcan?this.trashcan.getClientRect():null;this.deleteAreaToolbox_=this.flyout_?this.flyout_.getClientRect():this.toolbox_?this.toolbox_.getClientRect():null}; Blockly.WorkspaceSvg.prototype.isDeleteArea=function(a){a=new goog.math.Coordinate(a.clientX,a.clientY);return this.deleteAreaTrash_&&this.deleteAreaTrash_.contains(a)?Blockly.DELETE_AREA_TRASH:this.deleteAreaToolbox_&&this.deleteAreaToolbox_.contains(a)?Blockly.DELETE_AREA_TOOLBOX:Blockly.DELETE_AREA_NONE};Blockly.WorkspaceSvg.prototype.onMouseDown_=function(a){var b=this.getGesture(a);b&&b.handleWsStart(a,this)}; Blockly.WorkspaceSvg.prototype.startDrag=function(a,b){var c=Blockly.utils.mouseToSvg(a,this.getParentSvg(),this.getInverseScreenCTM());c.x/=this.scale;c.y/=this.scale;this.dragDeltaXY_=goog.math.Coordinate.difference(b,c)};Blockly.WorkspaceSvg.prototype.moveDrag=function(a){a=Blockly.utils.mouseToSvg(a,this.getParentSvg(),this.getInverseScreenCTM());a.x/=this.scale;a.y/=this.scale;return goog.math.Coordinate.sum(this.dragDeltaXY_,a)}; Blockly.WorkspaceSvg.prototype.isDragging=function(){return null!=this.currentGesture_&&this.currentGesture_.isDragging()};Blockly.WorkspaceSvg.prototype.isDraggable=function(){return!!this.scrollbar};Blockly.WorkspaceSvg.prototype.onMouseWheel_=function(a){this.currentGesture_&&this.currentGesture_.cancel();var b=-a.deltaY/50,c=Blockly.utils.mouseToSvg(a,this.getParentSvg(),this.getInverseScreenCTM());this.zoom(c.x,c.y,b);a.preventDefault()}; @@ -1264,9 +1265,10 @@ Blockly.Warning.prototype.drawIcon_=function(a){Blockly.utils.createSvgElement(" Blockly.Warning.textToDom_=function(a){var b=Blockly.utils.createSvgElement("text",{"class":"blocklyText blocklyBubbleText",y:Blockly.Bubble.BORDER_WIDTH},null);a=a.split("\n");for(var c=0;c", - "lastupdated": "2018-02-08 15:48:36.801901", + "lastupdated": "2018-02-13 13:02:03.983111", "locale": "en", "messagedocumentation" : "qqq" }, From 32b7a8ea6bb936f331d39d9ee48981d2bc677737 Mon Sep 17 00:00:00 2001 From: Andrew n marshall Date: Tue, 13 Feb 2018 15:01:33 -0800 Subject: [PATCH 03/16] Remove forceRerender() from FieldDropDown. Errantly forced whole block to rerender, including fields that had not yet been initialized. Fixes #1609 --- core/field_dropdown.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/core/field_dropdown.js b/core/field_dropdown.js index 367e338b7..3ecca22ba 100644 --- a/core/field_dropdown.js +++ b/core/field_dropdown.js @@ -131,8 +131,6 @@ Blockly.FieldDropdown.prototype.init = function() { ' ' + Blockly.FieldDropdown.ARROW_CHAR)); Blockly.FieldDropdown.superClass_.init.call(this); - // Make sure the arrow gets rendered. - this.forceRerender(); }; /** From 832e8df91d5d19882e05806c32d38ca832ae09be Mon Sep 17 00:00:00 2001 From: Rachel Fenichel Date: Tue, 13 Feb 2018 17:16:53 -0800 Subject: [PATCH 04/16] rebuild --- blockly_accessible_compressed.js | 3 +-- blockly_compressed.js | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/blockly_accessible_compressed.js b/blockly_accessible_compressed.js index 9ce6def69..efc0733a7 100644 --- a/blockly_accessible_compressed.js +++ b/blockly_accessible_compressed.js @@ -1452,8 +1452,7 @@ Blockly.FieldColour.prototype.setValue=function(a){this.sourceBlock_&&Blockly.Ev Blockly.FieldColour.COLUMNS=7;Blockly.FieldColour.prototype.setColours=function(a){this.colours_=a;return this};Blockly.FieldColour.prototype.setColumns=function(a){this.columns_=a;return this}; Blockly.FieldColour.prototype.showEditor_=function(){Blockly.WidgetDiv.show(this,this.sourceBlock_.RTL,Blockly.FieldColour.widgetDispose_);var a=Blockly.utils.getViewportBBox(),b=this.getScaledBBox_(),c=this.createWidget_(),d=goog.style.getSize(c.getElement());Blockly.WidgetDiv.positionWithAnchor(a,b,d,this.sourceBlock_.RTL);var e=this;Blockly.FieldColour.changeEventKey_=goog.events.listen(c,goog.ui.ColorPicker.EventType.CHANGE,function(a){a=a.target.getSelectedColor()||"#000000";Blockly.WidgetDiv.hide(); e.sourceBlock_&&(a=e.callValidator(a));null!==a&&e.setValue(a)})};Blockly.FieldColour.prototype.createWidget_=function(){var a=new goog.ui.ColorPicker;a.setSize(this.columns_||Blockly.FieldColour.COLUMNS);a.setColors(this.colours_||Blockly.FieldColour.COLOURS);a.render(Blockly.WidgetDiv.DIV);a.setSelectedColor(this.getValue());return a};Blockly.FieldColour.widgetDispose_=function(){Blockly.FieldColour.changeEventKey_&&goog.events.unlistenByKey(Blockly.FieldColour.changeEventKey_);Blockly.Events.setGroup(!1)};Blockly.FieldDropdown=function(a,b){this.menuGenerator_=a;this.trimOptions_();a=this.getOptions()[0];Blockly.FieldDropdown.superClass_.constructor.call(this,a[1],b)};goog.inherits(Blockly.FieldDropdown,Blockly.Field);Blockly.FieldDropdown.fromJson=function(a){return new Blockly.FieldDropdown(a.options)};Blockly.FieldDropdown.CHECKMARK_OVERHANG=25;Blockly.FieldDropdown.MAX_MENU_HEIGHT=300;Blockly.FieldDropdown.ARROW_CHAR=goog.userAgent.ANDROID?"\u25bc":"\u25be"; -Blockly.FieldDropdown.prototype.CURSOR="default";Blockly.FieldDropdown.prototype.value_="";Blockly.FieldDropdown.prototype.imageElement_=null;Blockly.FieldDropdown.prototype.imageJson_=null; -Blockly.FieldDropdown.prototype.init=function(){this.fieldGroup_||(this.arrow_=Blockly.utils.createSvgElement("tspan",{},null),this.arrow_.appendChild(document.createTextNode(this.sourceBlock_.RTL?Blockly.FieldDropdown.ARROW_CHAR+" ":" "+Blockly.FieldDropdown.ARROW_CHAR)),Blockly.FieldDropdown.superClass_.init.call(this),this.forceRerender())}; +Blockly.FieldDropdown.prototype.CURSOR="default";Blockly.FieldDropdown.prototype.value_="";Blockly.FieldDropdown.prototype.imageElement_=null;Blockly.FieldDropdown.prototype.imageJson_=null;Blockly.FieldDropdown.prototype.init=function(){this.fieldGroup_||(this.arrow_=Blockly.utils.createSvgElement("tspan",{},null),this.arrow_.appendChild(document.createTextNode(this.sourceBlock_.RTL?Blockly.FieldDropdown.ARROW_CHAR+" ":" "+Blockly.FieldDropdown.ARROW_CHAR)),Blockly.FieldDropdown.superClass_.init.call(this))}; Blockly.FieldDropdown.prototype.showEditor_=function(){Blockly.WidgetDiv.show(this,this.sourceBlock_.RTL,null);var a=this.createMenu_();this.addEventListeners_(a);this.positionMenu_(a)};Blockly.FieldDropdown.prototype.addEventListeners_=function(a){this.addActionListener_(a);this.addTouchStartListener_(a);this.addTouchEndListener_(a)}; Blockly.FieldDropdown.prototype.addActionListener_=function(a){var b=this;goog.events.listen(a,goog.ui.Component.EventType.ACTION,function(a){if(a=a.target)b.onItemSelected(this,a);Blockly.WidgetDiv.hideIfOwner(b);Blockly.Events.setGroup(!1)})};Blockly.FieldDropdown.prototype.addTouchStartListener_=function(a){a.getHandler().listen(a.getElement(),goog.events.EventType.TOUCHSTART,function(a){this.getOwnerControl(a.target).handleMouseDown(a)})}; Blockly.FieldDropdown.prototype.addTouchEndListener_=function(a){a.getHandler().listen(a.getElement(),goog.events.EventType.TOUCHEND,function(a){this.getOwnerControl(a.target).performActionInternal(a)})}; diff --git a/blockly_compressed.js b/blockly_compressed.js index 3ffa273eb..9dd214a33 100644 --- a/blockly_compressed.js +++ b/blockly_compressed.js @@ -1461,8 +1461,7 @@ Blockly.FieldColour.prototype.setValue=function(a){this.sourceBlock_&&Blockly.Ev Blockly.FieldColour.COLUMNS=7;Blockly.FieldColour.prototype.setColours=function(a){this.colours_=a;return this};Blockly.FieldColour.prototype.setColumns=function(a){this.columns_=a;return this}; Blockly.FieldColour.prototype.showEditor_=function(){Blockly.WidgetDiv.show(this,this.sourceBlock_.RTL,Blockly.FieldColour.widgetDispose_);var a=Blockly.utils.getViewportBBox(),b=this.getScaledBBox_(),c=this.createWidget_(),d=goog.style.getSize(c.getElement());Blockly.WidgetDiv.positionWithAnchor(a,b,d,this.sourceBlock_.RTL);var e=this;Blockly.FieldColour.changeEventKey_=goog.events.listen(c,goog.ui.ColorPicker.EventType.CHANGE,function(a){a=a.target.getSelectedColor()||"#000000";Blockly.WidgetDiv.hide(); e.sourceBlock_&&(a=e.callValidator(a));null!==a&&e.setValue(a)})};Blockly.FieldColour.prototype.createWidget_=function(){var a=new goog.ui.ColorPicker;a.setSize(this.columns_||Blockly.FieldColour.COLUMNS);a.setColors(this.colours_||Blockly.FieldColour.COLOURS);a.render(Blockly.WidgetDiv.DIV);a.setSelectedColor(this.getValue());return a};Blockly.FieldColour.widgetDispose_=function(){Blockly.FieldColour.changeEventKey_&&goog.events.unlistenByKey(Blockly.FieldColour.changeEventKey_);Blockly.Events.setGroup(!1)};Blockly.FieldDropdown=function(a,b){this.menuGenerator_=a;this.trimOptions_();var c=this.getOptions()[0];Blockly.FieldDropdown.superClass_.constructor.call(this,c[1],b)};goog.inherits(Blockly.FieldDropdown,Blockly.Field);Blockly.FieldDropdown.fromJson=function(a){return new Blockly.FieldDropdown(a.options)};Blockly.FieldDropdown.CHECKMARK_OVERHANG=25;Blockly.FieldDropdown.MAX_MENU_HEIGHT=300;Blockly.FieldDropdown.ARROW_CHAR=goog.userAgent.ANDROID?"\u25bc":"\u25be"; -Blockly.FieldDropdown.prototype.CURSOR="default";Blockly.FieldDropdown.prototype.value_="";Blockly.FieldDropdown.prototype.imageElement_=null;Blockly.FieldDropdown.prototype.imageJson_=null; -Blockly.FieldDropdown.prototype.init=function(){this.fieldGroup_||(this.arrow_=Blockly.utils.createSvgElement("tspan",{},null),this.arrow_.appendChild(document.createTextNode(this.sourceBlock_.RTL?Blockly.FieldDropdown.ARROW_CHAR+" ":" "+Blockly.FieldDropdown.ARROW_CHAR)),Blockly.FieldDropdown.superClass_.init.call(this),this.forceRerender())}; +Blockly.FieldDropdown.prototype.CURSOR="default";Blockly.FieldDropdown.prototype.value_="";Blockly.FieldDropdown.prototype.imageElement_=null;Blockly.FieldDropdown.prototype.imageJson_=null;Blockly.FieldDropdown.prototype.init=function(){this.fieldGroup_||(this.arrow_=Blockly.utils.createSvgElement("tspan",{},null),this.arrow_.appendChild(document.createTextNode(this.sourceBlock_.RTL?Blockly.FieldDropdown.ARROW_CHAR+" ":" "+Blockly.FieldDropdown.ARROW_CHAR)),Blockly.FieldDropdown.superClass_.init.call(this))}; Blockly.FieldDropdown.prototype.showEditor_=function(){Blockly.WidgetDiv.show(this,this.sourceBlock_.RTL,null);var a=this.createMenu_();this.addEventListeners_(a);this.positionMenu_(a)};Blockly.FieldDropdown.prototype.addEventListeners_=function(a){this.addActionListener_(a);this.addTouchStartListener_(a);this.addTouchEndListener_(a)}; Blockly.FieldDropdown.prototype.addActionListener_=function(a){var b=this;goog.events.listen(a,goog.ui.Component.EventType.ACTION,function(a){if(a=a.target)b.onItemSelected(this,a);Blockly.WidgetDiv.hideIfOwner(b);Blockly.Events.setGroup(!1)})};Blockly.FieldDropdown.prototype.addTouchStartListener_=function(a){a.getHandler().listen(a.getElement(),goog.events.EventType.TOUCHSTART,function(a){this.getOwnerControl(a.target).handleMouseDown(a)})}; Blockly.FieldDropdown.prototype.addTouchEndListener_=function(a){a.getHandler().listen(a.getElement(),goog.events.EventType.TOUCHEND,function(a){this.getOwnerControl(a.target).performActionInternal(a)})}; From f34f2507d9e4120ded6bf17c24b2c9afa30ed05d Mon Sep 17 00:00:00 2001 From: Andrew n marshall Date: Wed, 14 Feb 2018 16:15:43 -0800 Subject: [PATCH 05/16] Updateing Closure to 20180204.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index f7c1192d6..d843adfd5 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,7 @@ "unused": true }, "dependencies": { - "google-closure-library": "^20171203.0.0", + "google-closure-library": "^20180204.0.0", "install": "^0.8.8", "npm": "^4.4.4", "webdriverio": "^4.6.2" From c8b5efa079550e0c42722f775e810176a1ef6ac0 Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Thu, 15 Feb 2018 09:45:25 +0100 Subject: [PATCH 06/16] Localisation updates from https://translatewiki.net. --- msg/json/ia.json | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/msg/json/ia.json b/msg/json/ia.json index 0e64be9c0..bd37d68ed 100644 --- a/msg/json/ia.json +++ b/msg/json/ia.json @@ -2,7 +2,8 @@ "@metadata": { "authors": [ "McDutchie", - "Karmwiki" + "Karmwiki", + "Fanjiayi" ] }, "VARIABLES_DEFAULT_NAME": "cosa", @@ -28,8 +29,9 @@ "CHANGE_VALUE_TITLE": "Cambiar valor:", "RENAME_VARIABLE": "Renominar variabile...", "RENAME_VARIABLE_TITLE": "Renominar tote le variabiles '%1' a:", - "NEW_VARIABLE": "Nove variabile...", + "NEW_VARIABLE": "Crear variabile...", "NEW_VARIABLE_TITLE": "Nomine del nove variabile:", + "VARIABLE_ALREADY_EXISTS": "A variabile named '%1' already exists.", "COLOUR_PICKER_HELPURL": "https://ia.wikipedia.org/wiki/Color", "COLOUR_PICKER_TOOLTIP": "Elige un color del paletta.", "COLOUR_RANDOM_TITLE": "color aleatori", @@ -71,6 +73,9 @@ "CONTROLS_IF_IF_TOOLTIP": "Adde, remove o reordina sectiones pro reconfigurar iste bloco \"si\".", "CONTROLS_IF_ELSEIF_TOOLTIP": "Adder un condition al bloco \"si\".", "CONTROLS_IF_ELSE_TOOLTIP": "Adder un condition final de reserva al bloco \"si\".", + "IOS_OK": "OK", + "IOS_CANCEL": "Cancellar", + "IOS_ERROR": "Error", "LOGIC_COMPARE_TOOLTIP_EQ": "Retornar ver si le duo entratas es equal.", "LOGIC_COMPARE_TOOLTIP_NEQ": "Retornar ver si le duo entratas non es equal.", "LOGIC_COMPARE_TOOLTIP_LT": "Retornar ver si le prime entrata es minor que le secunde.", From acbf4fb4cc463a87d5e476ed23e2c4588834fc8e Mon Sep 17 00:00:00 2001 From: Andrew n marshall Date: Fri, 16 Feb 2018 11:06:13 -0800 Subject: [PATCH 07/16] Test images for new test blocks. (#1630) --- media/test_200px.png | Bin 0 -> 2165 bytes media/test_30px.png | Bin 0 -> 1127 bytes media/test_50px.png | Bin 0 -> 1590 bytes media/test_a.png | Bin 0 -> 778 bytes media/test_b.png | Bin 0 -> 769 bytes media/test_c.png | Bin 0 -> 856 bytes media/test_d.png | Bin 0 -> 738 bytes media/test_e.png | Bin 0 -> 393 bytes media/test_f.png | Bin 0 -> 343 bytes media/test_g.png | Bin 0 -> 1169 bytes media/test_h.png | Bin 0 -> 313 bytes media/test_i.png | Bin 0 -> 200 bytes media/test_j.png | Bin 0 -> 453 bytes media/test_k.png | Bin 0 -> 612 bytes media/test_l.png | Bin 0 -> 254 bytes media/test_m.png | Bin 0 -> 1044 bytes 16 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 media/test_200px.png create mode 100644 media/test_30px.png create mode 100644 media/test_50px.png create mode 100644 media/test_a.png create mode 100644 media/test_b.png create mode 100644 media/test_c.png create mode 100644 media/test_d.png create mode 100644 media/test_e.png create mode 100644 media/test_f.png create mode 100644 media/test_g.png create mode 100644 media/test_h.png create mode 100644 media/test_i.png create mode 100644 media/test_j.png create mode 100644 media/test_k.png create mode 100644 media/test_l.png create mode 100644 media/test_m.png diff --git a/media/test_200px.png b/media/test_200px.png new file mode 100644 index 0000000000000000000000000000000000000000..a08e2fa6854355fe5008f404c00475076506d08b GIT binary patch literal 2165 zcmb_edpOgJ8~<+0C6}pRVY%d1ITZ?LA<89UE^~>+nCc{jY%Y=OY$^9fbo4VMwQ@T) z&f3Ou*-{Y)=P=`7OvFKqgfz|1d7j_zoaa2hzs~cV_jxbR=b!g|-p?PO_s#S`Ix5Pk z$pHYMh;Xv^+O8eHhphB=uJxrp+%7w!?GWCw+m<97l(CI>MmYIJ1AzRV-vb1YOJD#X ztBSC<^^Pl95V%)rUftKejDsJ#%RqZGLx-NytKkz@N_|c^`AVyebJ3&1gb)Y)~E{|btGw(W^pUiR`u7Q^iSw27>2T~B zwv@U5uabkp706)u%dxh#i0cc%_-h>WFRdilbF&Y6$C z9__ynLo;3)V=rh`s&o_5JIaO?l=IciSUv)Yg^&Y`;QmG0y(9z}*UlytZGw!0oKOfQ z$M8I44avlR0tULNU5vfhQXbnYvC`Kt(FQ+u2kPIE=mfeE9ivmAw^SYZH(K{ z`Xn7=jnFGacHf!v5XE^V5bCjW)81p;sfjxZ>1rW+@^Q-5k!s`Ii08}?$@R=HQcIVF z>6~H{QRy?w&M<_GP>fi&K@sK&N6pkJw1h!oKSx9y2U$b#4(u9%Ljk!Lq6J3Aj;0mb z6u9T>qp8tm5wN)1(-js4!!De4VlIdl=GRtG6eE6H{w7Li!>(;LKylP@CDAB+IGfY_ zZL4*pd!12RIUjltS~AD|bopaSGYweO7wi*R!UmW~xrs4Xw?sl2(pMsaL1S*5n!UAo zVD|Z((Z`7f&CjNmS~;O&y`_7u;faJ}AZrkQrxg%T?00tV^?MF$-)Y#unw!@yN>P2; zCmv=tB4-5AS3vZNJj$WpS8`yK>IyV?do?VQP9CMmk0%>GNK}rKGq?Q`wk0E^ZQ|Ie zW&mzHV9SjoLtO8}=iQwlDgnLE1CZol{BTNC$)RKcyR~hND%AqE8jLEgaJp0=9c{5d zwdeuL4hfEz@UcQ<-yl7liuf|b_mxfqjgmi!2G6%}j4v)6%hIX8HDpQN0 z>fU`Dvm=iDDRT)o+#4k>>V8k=-3V)oaV`z8r56)atE^$?ogmtqdUVnW`Y8T6_sdyI zab~0CqSw{+{tpG0z0BA0)6^55a!iJG~Zm{Z)lGkK!BBg+lRz|J>dLy8?Ul$ib3TX#QD-!eN{ zOO6eCeTs9zWF$T=Yt?0ok-h0*vF=^ySH8jW(I;9uY08VO7B)hIU(7^+53UM#EfZri z7m{oC|72haHUi2bSyiv!{q&96iO@BQ@vRGYqHFW10u-^2D&MOKdpKTo^`D0k5tEOGGK4V)q zroY~FUD3kMmKLFr0|qw@=mA<{AINV}XrIA3cFfen7nLNJ?-RH3a=C#8RqtPu-?K|l z3;`|r(iqM5OHxpr_sYuAF#KuMDIlt?P*UY*(cBT^6F&*Sc?*M$$3>tG&)oTwfh#Mc z&6z1zB+UcTvyu)ENl|?B;^8)(wHj#;Gf?n|O3ZwRp+8)n&c_Zg@vz|5P;GyG&ULZ; z^}gCC3m{Yif4JHRL@XVrp?6`RbzXEnvJbBPGP0iBp=nQVQJQI%Jf8lliy8L(i}d|t zApe@~&m|!hvO}|crbJOFW6pYXVimsox5sdO;ohG`_K&jpg?KPBy~Vx4hjt9}DrZ>R z+Hum(RD1T=(>cRc<9811y~nk^I0Ppm=BfO@A=!B7BHWkb{)b`*rcT9^T3&7L_*1;S zt~$6eJ=ugl1=*5sFdPNTKsN9_%Q?Zk@)KQ^&hG)sJR72+wQDHpsrtne`5Y->*>KeLdIQgwQq!U5WZA4(DJmeve%g> zuJa>DBJeL`w>OKunAqo?29>4cS;_r?V?KeA0x>8yK`LLKC{BRJE9y!qWc-&<5ae%z zPwkP_DtVyU+(~Z)sJ$xRM5Ds_&trVRux<-*#57Fa^Z(Ux`)>dc4oG{d-Njq~0oVH2 ACjbBd literal 0 HcmV?d00001 diff --git a/media/test_30px.png b/media/test_30px.png new file mode 100644 index 0000000000000000000000000000000000000000..bf2532b79776a92488d1cef9ba8ec828c1fcf21b GIT binary patch literal 1127 zcmeAS@N?(olHy`uVBq!ia0vp^av;pX1|+Qw)-3{3jKx9jP7LeL$-D$|I14-?iy0WW zg+Z8+Vb&Z8pn}NEkcg59UmvUF{9L`nl>DSry^7odplSvNn+hu+GdHy)QK2F?C$HG5 z!d3~a!V1U+3F|8Y3;nDA{o-C@9zzrKDK}xwt{K19`Se z86_nJR{Hwo<>h+i#(Mch>H3D2mX`VkM*2oZx=P7{9O-#x!EwNQn0$BtH5O0c3d|4@L;p!@;Rg)$-uz0+|$J|#DjP3 z)ScZTfdcKvllKM)ulI0u5kBZ)a3g`$)Y#yXgTR?1_Rc+50>qEFL>PQI;80*FaOF<6 zaG+0_Ie*o?>d>#hWba;n$+NuGGwPN4-M2fsHH3v*?t0H( z@#3=7?JhBuP#vk({0H4$zjK#cZu>3bf6IJA$)BV18@3wocROYV-#1L|F-=!F`f6QZ zs@OHvt7VV8Pi(Z@F{|7qug84T#?)Kw1$O7{+V*mYKghUe-dQ{0_pB4XyI$>>wc3WfOxx7fBj7l`v67OLQ$zQ8nh`6Y{-lRrCb`Q~k3 zeU~+h|4*B5!WzqGWDvXw{%>f;O9)85Q<&p_c+sKrF>Vxf5P?dDSr?H@$m`f0!a)icX? zPXql@9zHdjpxwvbZ*@$gc+vXXfqy!WB-L;E|G;8q75lmmOL?cPyB514x5w!CoyJwO zZY=-DI`4Jnhdb*Ihj&~(`*=OW@pA__E4ZHV&Dm38{VB!g`?hz-=dqr@-dq1^<)2ZK|Plu6$a9_y?B01O79b zjvMe1AfjnEK zjFOT9D}DX)@^Za$W4-*MbbUihOG|wNBYh(yU7!lx;>x^|#0uTKVr7USFmqf|i<65o z3raHc^AtelCMM;Vme?vOfh>Xph&xL%(-1c06+^uR^q@XSM&D4+Kp$>4P^%3{)XKjo zGZknv$b36P8?Z_gF{nK@`XI}Z90TzwSQO}0J1!f2c(B=V`5aP@WME(^^K@|x$zXju z!@Hj+P~`Y=1C^eNUXG6*X}XW5PUuMKINxAuotUeyQ^VfhbEK(dE2rSb2_6FR2begO z?(sY}{Zk+N-F}@{XnA;esc*T($^GZ|J}*7LbN#AUjg9Xv$M7=#n)S@(=JB^4cYgb- z*Ey_w$Nw_w+V7joh2mEHj9($||&4Q45GbIZNldKPQA z_Ralr>(AWl%VKYxIk{$P(%u5+8|rsNJz8$6nniat`^`5y87yKpN4jf=9uN1CCK>CO zSASIdB~N@Io*3O&xczjQ*MaXjjQdadKAx#8C}bt#c2l9wYlnV~z&-BoEGcUgN+J$C z=b7tJ=yN*j;m6dCmOT{#b7ps`9CUwJyz2e)uG%GX9myBh&z<2q-?XcM@%hzzDm`4v zOwS)qO0ebk;2Zh3Ims>CF)7Tefz}tFEuP|pP z&w{0gW;pmH8M8exoE*oxKkn7quBVY^`-L7ATNiF{XWb@TC2qLF%+u0v{SE7r3syHh zo|&JSF)3Gk*3UETCij&t`mi^vKbp=e^ixeo%%f?hni&7?@I%gxPv*0~dlJL3&qm-Q zv(GWD#?A+G-z@zQ(qL0|Y4wBao++(K*&CE(9z0BV;Mw)}PMY;3U^G3O`1bP`<05`D z<%~-SVVq}tX200Xb?u<6uw_+BrO4}#-MNvSJLZcoR{Xxew^vEEvEHp#$a6CL@&`({ zn|6HjJ)U#3KYjbsLdWL5$yyeEhxfebdeSSnzUTI{jr>MjJ*9=#+jOt!MRy24W;5D3 zck9|cUfT{H&plo=$7zp`BF~$Yoqcnke44;`eO0RCl?YCuJ^vy;^Bwyi zy5>ag!IP6!tQvS0F-&5OGfmmUxk2g1IjM;!S`1V_>^hju?mEF{&c5?r)A;0TyypuZ zeKBK?>w`H{MHMe`7IHN@pP2pfLvQlK;2A(`C#f=8v|l;GE}HVs>g7Mx)0Zs6Qts6i zZ>YWOdXa%Ii>HkHjYx*taGyQCzsMq2w(q*;HrQ`pa+2@QE`I+AA{Z!KAS zxA&mU<7ctnc6>2U%QtPmq|AH3Uh9re&9kU=Y5xV& U@Wm>r`=G+y)78&qol`;+0ODY>x&QzG literal 0 HcmV?d00001 diff --git a/media/test_a.png b/media/test_a.png new file mode 100644 index 0000000000000000000000000000000000000000..b0706daac5fe77d8ed98cd8f76aea2cc7c4ccbd1 GIT binary patch literal 778 zcmV+l1NHogP)-4hrs2Fr=LRs1D*B6kh(sba^J1|W zN=oVC0kljJgpj&bzOifIKWmzh|va*6st`nY)7JRw(6|yW-Iw1twR`Krv^bPyF-yhsR zGo0?b3>Fs`sT`i?5ekG*&X>;*U}Q^(jz+<8oCUyp(|dN_7HmgqI|W5is60UsP)KX% z2hg^xk6tE|!De>T;`z*d#?lLsNCf@GzM9752vE+K5ekIB^E?%oBnj6abzAbiH#(6_ zCM|J72(*lIFF3vn3TX|(bF1wVLI4R!&d`f73}b6lq9{U=B$&MYORCB4lgu=#Xny0t z&d!b_c_SkpkK^^HSMc3oESl{WxV2rkqn15e0Gw=BmSu#)VR$^Ay2s??Bz0{qd$w%B z_m4WB-I~Je>@1ZS4u`ST`vGmi_PTeROQ_gW_rWl~ORgvihDL`l@N~er0#3H8swz_3 zDOZaFfcKskOG`^s%*mdq3LJbsK$MMQe0-crT3=sxY$ChytBIGFmo3_uFoxihpgq9e z`#l`#$F`FO#(Eq2*3;4j{K!{qwLj;weGLESxb**mD}XD2pN)1Usm9hrfdBvi07*qo IM6N<$g0Y2ULI3~& literal 0 HcmV?d00001 diff --git a/media/test_b.png b/media/test_b.png new file mode 100644 index 0000000000000000000000000000000000000000..3798fe746ca476ae27e057e1ea76fdd5b1866a41 GIT binary patch literal 769 zcmV+c1OEJpP)F|7{Gt(`ezMw7PT}(hr*}`HigN`Y7|?%bcn)=3hAIEB}EYgvF*W?An@Q}gCRA- zL(nm!NFufgGQz|LEl8n8A#|m5R7hNxwL`FAtGna6;l&T;^8NkszW2U2FCpJuyU039 z;(8X}006K=GWw@xS)31;PL`Bm#j+_aegMY?x>+6~OtVhikwFUo*rfDSY*h=onBLD>b0b1X^04FpzH;4S} zc00kZV^Q<1`4}dqSjZ~hi=rs8#jh0rAh-}f5QHTK3S~O8bXy^4+x|-N5)19|vFI-hGdr?l(x11c1Zg zKoA7Fsw+slc8bK5@N#i!L290j%#vaps1*b;DoW{rt^KmR zY$RuAVJ+NjDkkCz2nY9=E*`6_`@3KRU<2R}nY`d=Z%E2@00000NkvXXu0mjfLWFMK literal 0 HcmV?d00001 diff --git a/media/test_c.png b/media/test_c.png new file mode 100644 index 0000000000000000000000000000000000000000..86b5c834e12a15271d759fafbe414b84864e3d94 GIT binary patch literal 856 zcmV-e1E>6nP)g*F% zJEhVBtcJHWd`x?L`<6YLrV$E-0MKBRmt}gCOMaVyR z=-C5{ideZnO8l2!De(DdZEejS;L*f5AC{MF8SeM{3H0{iJW)@%T(RYR^7sdQKYTBH zfW?Zo`GG)yKyM$Vr%q#Yk`Gc!MuV63yO^Fa`&9 z76722wvLXD4wK*6*-2w{RYnlYk!j{`-?Xgf7RjEkt%^d$K5k#TMup&@rlw}ix7+P_ zJRTyy|AzYG53s8MTR|bVyl3Y^G7%>>HOZ1T#NpY08J}OE@ZI;e%*aW%lqL*=*-IC> z5crm+rY2K;Y;25RFi0pATKim1rxRJ0@p`>TlEld~ZI=5$T7XO-Qb|?SlmHo>0}fH7 zI%J?91h$3Z;KFEcGhyExG1tALlD?*V7TO_{3HYN=nq8%b(?!U3!3zqjY}{GK1r!&A|C^}#k} zl%kxA?*jlR<&0aKDN>1OL4~Re4aEaUC8D&%J{MFdG(OCMmQ!dBH&b({d2ay!H8C+! z5JVslAQ%kteEbOqPuTMUDe4S3olZtaN11;6inFF|mS^6vwVBG9ld}W6H9tR(&*wvu zBmmml+OS%!ba!{B#o25&Y&IJvj|Z=R43qs53Z+W6WjZS zzrbiT;_-Oc*w{#m@9*#DcGo#pre9~RSx^TgNupA3-I@3*Ljzh`*|MJI(d0+s@msjv zZY&l{8bmxEXKd~(+NRcwnnjrbg;Is#_({g*5)2IuW%%80H}RP_vhz^XA=Eat^6dQw zL{Ut$TPzm3E}tj4^rN%@0JSYP1VPBKx3{;mzVfs50IJ$L!r^d+-E20qnTVAhK&jTS zu&|JKe9-~cqf2yjbd(Pux%eH2!;xVR27_oCkChf6wHD(~cq-#&gn#dZ+GH*rKx!?< za_}jS2M5sUbZI`X*UO6T2uigkBd?&FP)^C^2+3dHXx{$Ky}3F-_OgbFVs7(q0;Je#^(eGg+h5PDoGNNNQ6Kjz@oxH%~2~2 zXD;TITOs!`Nv*|*ewxgy0D#J9qO$rRYLhwZS!a`M2UJ>p-aFW<%Kk6d2iOPr3+v9* U*kM)ZE&u=k07*qoM6N<$f<=B^VE_OC literal 0 HcmV?d00001 diff --git a/media/test_e.png b/media/test_e.png new file mode 100644 index 0000000000000000000000000000000000000000..2070b06b06c001c905a9928e1246f5a3f6eae9d8 GIT binary patch literal 393 zcmV;40e1e0P)E#K68mkkqk^&mhbrq}awP z>9i1o#iC2Ryg*`Zh9QsxQ_bQ0AM+oW8DlW|fke&99Nq!|fRe{FoxI^Y{wyBe(V(ac z)d60g9&yms3Iq5rI>^>;bpQb1oP$!Dd$?s;@E^vRzGieFO`hk$ahyLKdVK)C@8kUP z7JBzM)w8&k-J8+?Q50cLokwSBy=(-4CU<}kg0JZWAMekpo;P7pHr0oa zv1-CV7zglw!I2xe4d3@OXP)OF+V2W?G`j-; zz&S^fBx(Shb1YxiXqi^#yxkep3kZS$U8~{$0S(ZAQeS}(LJhz$C_X+l|0S+EKNKQ_U##okR#>U0~G~@(9prxe+v&Fzi=TDKJTZulq zK;t9j5ls7kpzF=&IeGG=X3ppH;qiEoB#GEc30awWtVI2k?#ZOHvlFM&iN#_`>WiX? z)oSJNp<~z|enYbpnjP>5Mmcn(jNaZ}P4J$c9=b&r%kwpqo7yNX+E1~tkFvt2(X*G~ zAFuPN^gcSBj{5rgq+KW!LZ74Kn{U6w@{nESQ*{U8@hCr!pJ8NlnA+M}P4KhtUBFg- zY|~2>js%cze#pq^FnxV}NRq_DpE;Bi?nf|M$<8utOyJJa1P!eT&Ye4_Qu6tHJlEL9 zQ?+kx8hj1@z$mxozo(+ODP_?0P~CyW-~{dMZ)=o19uJR}zmisP0JF)4*~=fhP+-G! z>h*eQZEa0{*VWbGbUHOp8U8&^U1joHm536F1c}TU+S=MwMmn92OBcVxw7Xj4P@k30 z${iEopd~p*uPv|?zOL~D(ACvNO_}3A-|Hs@qZLV#G)AH*Qu}0#<(0oQbJkN{=leaZarofuX5zICvZ3% zD*4>p9DRL#lovIqO9PlK230<{*=!s*aDe&XuY7UY!`)bva5O+@b(YZT zEDOQwjL&?+(T-o_JdQ1qNrJ=q9{m`#MIPO zQdU(}g~Q>{l;uby!tvwBkv^WFy0k^(Yr}>l90@Rf>mnVmzkti-QkB?rF*G!U$K&DV zZ$>ICjVX0D?TFysnNIt^rla#^+S}VTXL~;;Cnu34iNV1^rYAC}G(Wp(fB3%y;9i*y zE>E!-oM8U%E7qVcr2Xld)V&Sn3^Tw75+>dZ1Ks+AN$kXkF*JDd<`5Mw$ jS-RNqACm_JcAUUJrJ|!B-3!#?00000NkvXXu0mjf*my+Z literal 0 HcmV?d00001 diff --git a/media/test_h.png b/media/test_h.png new file mode 100644 index 0000000000000000000000000000000000000000..33cbb44c89a6265abb2d6653179b25c1ef964db6 GIT binary patch literal 313 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFfw?$IEF;DCi7g$`g`7>p&?U2 zSH6^i83?$|4)))VPY6A8@YLx8=MMQ^2nhO;TzX*N@5z#H-o72PNEkd_{an^L HB{Ts5e%F8& literal 0 HcmV?d00001 diff --git a/media/test_i.png b/media/test_i.png new file mode 100644 index 0000000000000000000000000000000000000000..cf4d90c8b90c9910995c9e8b42d054bc0cb7671d GIT binary patch literal 200 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=ffJeoq(2kcie~pUZiF&l@x}WGd*& zmohK|0k`F>d$skAp>rlro!&UPb@n&Dh~j*s=DmAummTpHWGhWnzGdCe*w~o({@z}V zKg*V>wKbcspOka1VR>U9dyiGZ6~@JU5~T-LFuTbbykgiC?ZVD4Cu70BqDa~><;T>d tj@2A5FCJ&?<2v{x<1iPS4KG*=1B0!|3NfqdeL$x%c)I$ztaD0e0sswSM&JMd literal 0 HcmV?d00001 diff --git a/media/test_j.png b/media/test_j.png new file mode 100644 index 0000000000000000000000000000000000000000..81da54444ba9d9771108e7bff7a67f7fd19969ec GIT binary patch literal 453 zcmV;$0XqJPP)u9x4rWD?ZU$|c3)ZPsj0Y0DzWyl9fss zQc2SEIjv4u%&mro& zGfof$a2$v2^%%JRW#ZiffQjT|A}caZ9*-bA2^gCmRry3wg!_%g1T~31#{hBRngD(( v_xhl+NvGexRP#_uGU?W$=DG literal 0 HcmV?d00001 diff --git a/media/test_k.png b/media/test_k.png new file mode 100644 index 0000000000000000000000000000000000000000..5f80a823045ce992e41c6e610bfe98bb1dccaab4 GIT binary patch literal 612 zcmV-q0-ODbP)w^5oA&d-a{fg2)*ney?B_ELQgHc(2Lhz zcJrX2g&u@KKu{2bLLmNK$84H{VO^nmYFTXJmOt1_zqkBe@;;xyd%xt(?W{fhjVUHH zP54Xz0M6SLkB0+vjttueE=DQLhr*5%?wg1I1THUJK3$-5WZ?a^ueKB1{5(0yD2?xX z7~F_D!dW$jWt>4^lzP2xxlX6kj`zO%`4QK%w@@yZEp@jUNI!j(X`+r@k+jLigx7tfxfTCMt)@U#XN!wV4D zEVj3Dz9l>_!dQd~M8elDI4PkhiYE!*+b|ZP@F>0kLWm~`SB=Oit4j&A8X5=)09Zaw zqjtT$m4m=$5sOe~7icz{o+M1uw2UQ_Nfat2TZuWlgNfcZ(D<=u3tGQ=XW}hRrq$E% yq4UXc{KB~??#1tpe{5|9{%59sE|>|-1pWYwvI-0y4qI0M0000)daAGroLKXx_Wmwr$6Yui`vzPM@}vgH#^Ax3@a* zhp(?M&-HcrDz}T++8igaxyc&5Y6xWSu}ZkYxR_6(fPF%U?BeDxUrO4Zg|C-bm3HR9 zN;Us`^BkKd%P+TaRaDT^J7MgO+w&d+v04>5SU`njxgN@xNA&YNKE literal 0 HcmV?d00001 diff --git a/media/test_m.png b/media/test_m.png new file mode 100644 index 0000000000000000000000000000000000000000..b9b3385bd3b038ff5dec975900809aacfad2ba07 GIT binary patch literal 1044 zcmV+v1nc{WP)6vw|_!2&kaV1C$9q=qzp<|Y-3#bT%*{6TbqV&EVB1dEG{%*9iw6rR-7k(&d6TvL%srI@j3 zG>X5q6T(Lc_(?lKG#X_tkW41=wADm+#QB!mEyNNDgu`KGTo43QG;OqiMz;e&5SYmT z;C8!l``%sr(rhr}j}KLdqBt^N5Ckatm<}9vIwRX}*!uc99ye-~zoKghe0&v=NMvMg zFc`$K(@AuY5TNQh78Vx93J3;+h$RvzwOfS$=Xz~y^@a(8KwNV|z;DNGEH5wr=OUsg z;s>>2j$fRf;<;}I@pzn=cXV__A71nt^;ikF~WmDo0^^gd8e z7~~g=MZDt=pja#t{$UVJ0To?i(x1!azJ=mIBsm*!H;Scx9{DB+wC@E z*=!a!eSUatcI@x(6Kf8GXbPw@04$fwn6>f%fE)ffstf6K8lQdhHPY!cQT@aF4=_LN z!JORzS(Y(ugCLp${yL#wKv|Y?(dhyJT$pm=yX|jLtyYOStE;QT*r?uk@87f9P$(3L zIfEdY0$2bR3I+IhI{<*^INbF4kD_q(0SN8_fXF=b)l#eE}>06-6PcH*Csc zL8#G0CX*rjk|bft>u1g%W&r3P!(mtN3t$0QE|=lvc`6YAmb`wV3!|zx?22QOx{lFk z6bHv`SPTG%C&;o4fpG*zRo*|JV|RBKfj|I~Bq715-mr7_N$NoYfRe6bLOg%rWxme- zm2>O-+XT^rR?#&)Qu}YhMW+iNdAuV9l-eykJE}8d6KDU7&IJ7L1-t^{Q=oYq+tG6X O0000 Date: Thu, 15 Feb 2018 17:18:23 -0800 Subject: [PATCH 08/16] Delete extra variables at the end of a procedure argument edit --- blocks/procedures.js | 70 ++++++++++++++++++++++++++++++-------------- core/mutator.js | 24 +++++++++++++++ 2 files changed, 72 insertions(+), 22 deletions(-) diff --git a/blocks/procedures.js b/blocks/procedures.js index 8e890a767..c69b38d3c 100644 --- a/blocks/procedures.js +++ b/blocks/procedures.js @@ -217,8 +217,7 @@ Blockly.Blocks['procedures_defnoreturn'] = { while (paramBlock) { var varName = paramBlock.getFieldValue('NAME'); this.arguments_.push(varName); - var variable = Blockly.Variables.getOrCreateVariablePackage( - this.workspace, null, varName, ''); + var variable = this.workspace.getVariable(varName, ''); this.argumentVarModels_.push(variable); this.paramIds_.push(paramBlock.id); paramBlock = paramBlock.nextConnection && @@ -469,6 +468,15 @@ Blockly.Blocks['procedures_mutatorarg'] = { */ init: function() { var field = new Blockly.FieldTextInput('x', this.validator_); + // Hack: override showEditor to do just a little bit more work. + // We don't have a good place to hook into the start of a text edit. + var oldShowEditorFn = field.showEditor_.bind(field); + var newShowEditorFn = function() { + this.createdVariables_ = []; + oldShowEditorFn(); + }; + field.showEditor_ = newShowEditorFn.bind(field); + this.appendDummyInput() .appendField(Blockly.Msg.PROCEDURES_MUTATORARG_TITLE) .appendField(field, 'NAME'); @@ -478,43 +486,61 @@ Blockly.Blocks['procedures_mutatorarg'] = { this.setTooltip(Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP); this.contextMenu = false; + // Get a handle on the parent workspace. + // TODO: Do I need to delete this during dispose? + this.outerWs_ = Blockly.Mutator.findParentWs(this.workspace); // Create the default variable when we drag the block in from the flyout. // Have to do this after installing the field on the block. - field.onFinishEditing_ = this.createNewVar_; + field.onFinishEditing_ = this.deleteIntermediateVars_; + // Create an empty list so onFinishEditing_ has something to look at, even + // though the editor was never opened. + field.createdVariables_ = []; field.onFinishEditing_('x'); }, /** - * Obtain a valid name for the procedure. + * Obtain a valid name for the procedure argument. Create a variable if + * necessary. * Merge runs of whitespace. Strip leading and trailing whitespace. * Beyond this, all names are legal. - * @param {string} newVar User-supplied name. + * @param {string} varName User-supplied name. * @return {?string} Valid name, or null if a name was not specified. * @private - * @this Blockly.Block + * @this Blockly.FieldTextInput */ - validator_: function(newVar) { - newVar = newVar.replace(/[\s\xa0]+/g, ' ').replace(/^ | $/g, ''); - return newVar || null; + validator_: function(varName) { + varName = varName.replace(/[\s\xa0]+/g, ' ').replace(/^ | $/g, ''); + if (!varName) { + return null; + } + var model = this.sourceBlock_.outerWs_.getVariable(varName, ''); + if (model && model.name != varName) { + // Rename the variable (case change) + this.outerWs_.renameVarById(model.getId(), varName); + } + if (!model) { + model = this.sourceBlock_.outerWs_.createVariable(varName, ''); + if (model && this.createdVariables_) { + this.createdVariables_.push(model); + } + } + return varName; }, /** * Called when focusing away from the text field. - * Creates a new variable with this name. + * Deletes all variables that were created as the user typed their intended + * variable name. * @param {string} newText The new variable name. * @private * @this Blockly.FieldTextInput */ - createNewVar_: function(newText) { - var source = this.sourceBlock_; - if (source && source.workspace && source.workspace.options && - source.workspace.options.parentWorkspace) { - var workspace = source.workspace.options.parentWorkspace; - var variableType = ''; - var variable = workspace.getVariable(newText, variableType); - // If there is a case change, rename the variable. - if (variable && variable.name !== newText) { - workspace.renameVariableById(variable.getId(), newText); - } else { - workspace.createVariable(newText, variableType); + deleteIntermediateVars_: function(newText) { + if (!this.sourceBlock_.outerWs_) { + return; + } + for (var i = 0; i < this.createdVariables_.length; i++) { + var model = this.createdVariables_[i]; + if (model.name != newText) { + this.sourceBlock_.outerWs_.deleteVariableById(model.getId()); } } } diff --git a/core/mutator.js b/core/mutator.js index 1446c48ab..a57727ae2 100644 --- a/core/mutator.js +++ b/core/mutator.js @@ -415,6 +415,30 @@ Blockly.Mutator.reconnect = function(connectionChild, block, inputName) { return false; }; +/** + * Get the parent workspace of a workspace that is inside a mutator, taking into + * account whether it is a flyout. + * @param {?Blockly.Workspace} workspace The workspace that is inside a mutator. + * @return {?Blockly.Workspace} The mutator's parent workspace or null. + * @package + */ +Blockly.Mutator.findParentWs = function(workspace) { + var outerWs = null; + if (workspace && workspace.options) { + var parent = workspace.options.parentWorkspace; + // If we were in a flyout in a mutator, need to go up two levels to find + // the actual parent. + if (workspace.isFlyout) { + if (parent && parent.options) { + outerWs = parent.options.parentWorkspace; + } + } else if (parent) { + outerWs = parent; + } + } + return outerWs; +}; + // Export symbols that would otherwise be renamed by Closure compiler. if (!goog.global['Blockly']) { goog.global['Blockly'] = {}; From bb3b14bf6807b3e5d860ed066489a978457b5458 Mon Sep 17 00:00:00 2001 From: Rachel Fenichel Date: Fri, 16 Feb 2018 11:02:03 -0800 Subject: [PATCH 09/16] Cleanup --- blocks/procedures.js | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) diff --git a/blocks/procedures.js b/blocks/procedures.js index c69b38d3c..1874ee1d0 100644 --- a/blocks/procedures.js +++ b/blocks/procedures.js @@ -470,12 +470,12 @@ Blockly.Blocks['procedures_mutatorarg'] = { var field = new Blockly.FieldTextInput('x', this.validator_); // Hack: override showEditor to do just a little bit more work. // We don't have a good place to hook into the start of a text edit. - var oldShowEditorFn = field.showEditor_.bind(field); + field.oldShowEditorFn_ = field.showEditor_; var newShowEditorFn = function() { this.createdVariables_ = []; - oldShowEditorFn(); + this.oldShowEditorFn_(); }; - field.showEditor_ = newShowEditorFn.bind(field); + field.showEditor_ = newShowEditorFn; this.appendDummyInput() .appendField(Blockly.Msg.PROCEDURES_MUTATORARG_TITLE) @@ -486,9 +486,6 @@ Blockly.Blocks['procedures_mutatorarg'] = { this.setTooltip(Blockly.Msg.PROCEDURES_MUTATORARG_TOOLTIP); this.contextMenu = false; - // Get a handle on the parent workspace. - // TODO: Do I need to delete this during dispose? - this.outerWs_ = Blockly.Mutator.findParentWs(this.workspace); // Create the default variable when we drag the block in from the flyout. // Have to do this after installing the field on the block. field.onFinishEditing_ = this.deleteIntermediateVars_; @@ -508,17 +505,18 @@ Blockly.Blocks['procedures_mutatorarg'] = { * @this Blockly.FieldTextInput */ validator_: function(varName) { + var outerWs = Blockly.Mutator.findParentWs(this.sourceBlock_.workspace); varName = varName.replace(/[\s\xa0]+/g, ' ').replace(/^ | $/g, ''); if (!varName) { return null; } - var model = this.sourceBlock_.outerWs_.getVariable(varName, ''); + var model = outerWs.getVariable(varName, ''); if (model && model.name != varName) { // Rename the variable (case change) - this.outerWs_.renameVarById(model.getId(), varName); + outerWs.renameVarById(model.getId(), varName); } if (!model) { - model = this.sourceBlock_.outerWs_.createVariable(varName, ''); + model = outerWs.createVariable(varName, ''); if (model && this.createdVariables_) { this.createdVariables_.push(model); } @@ -534,13 +532,14 @@ Blockly.Blocks['procedures_mutatorarg'] = { * @this Blockly.FieldTextInput */ deleteIntermediateVars_: function(newText) { - if (!this.sourceBlock_.outerWs_) { + var outerWs = Blockly.Mutator.findParentWs(this.sourceBlock_.workspace); + if (!outerWs) { return; } for (var i = 0; i < this.createdVariables_.length; i++) { var model = this.createdVariables_[i]; if (model.name != newText) { - this.sourceBlock_.outerWs_.deleteVariableById(model.getId()); + outerWs.deleteVariableById(model.getId()); } } } From b2cfaf155e0493a22899f131f86742650249223b Mon Sep 17 00:00:00 2001 From: Rachel Fenichel Date: Fri, 16 Feb 2018 11:15:10 -0800 Subject: [PATCH 10/16] Rebuild --- blockly_accessible_compressed.js | 3 +- blockly_compressed.js | 3 +- blocks_compressed.js | 85 ++++++++++++++++---------------- msg/json/en.json | 2 +- 4 files changed, 48 insertions(+), 45 deletions(-) diff --git a/blockly_accessible_compressed.js b/blockly_accessible_compressed.js index efc0733a7..f68db4e25 100644 --- a/blockly_accessible_compressed.js +++ b/blockly_accessible_compressed.js @@ -1227,7 +1227,8 @@ Blockly.Mutator.prototype.setVisible=function(a){if(a!=this.isVisible())if(Block this.updateColour()}else this.svgDialog_=null,this.workspace_.dispose(),this.rootBlock_=this.workspace_=null,this.bubble_.dispose(),this.bubble_=null,this.workspaceHeight_=this.workspaceWidth_=0,this.sourceListener_&&(this.block_.workspace.removeChangeListener(this.sourceListener_),this.sourceListener_=null)}; Blockly.Mutator.prototype.workspaceChanged_=function(){if(!this.workspace_.isDragging())for(var a=this.workspace_.getTopBlocks(!1),b=0,c;c=a[b];b++){var d=c.getRelativeToSurfaceXY(),e=c.getHeightWidth();20>d.y+e.height&&c.moveBy(0,20-e.height-d.y)}if(this.rootBlock_.workspace==this.workspace_){Blockly.Events.setGroup(!0);c=this.block_;a=(a=c.mutationToDom())&&Blockly.Xml.domToText(a);b=c.rendered;c.rendered=!1;c.compose(this.rootBlock_);c.rendered=b;c.initSvg();b=(b=c.mutationToDom())&&Blockly.Xml.domToText(b); if(a!=b){Blockly.Events.fire(new Blockly.Events.BlockChange(c,"mutation",null,a,b));var f=Blockly.Events.getGroup();setTimeout(function(){Blockly.Events.setGroup(f);c.bumpNeighbours_();Blockly.Events.setGroup(!1)},Blockly.BUMP_DELAY)}c.rendered&&c.render();this.workspace_.isDragging()||this.resizeBubble_();Blockly.Events.setGroup(!1)}};Blockly.Mutator.prototype.getFlyoutMetrics_=function(){return{viewHeight:this.workspaceHeight_,viewWidth:this.workspaceWidth_,absoluteTop:0,absoluteLeft:0}}; -Blockly.Mutator.prototype.dispose=function(){this.block_.mutator=null;Blockly.Icon.prototype.dispose.call(this)};Blockly.Mutator.reconnect=function(a,b,c){if(!a||!a.getSourceBlock().workspace)return!1;c=b.getInput(c).connection;var d=a.targetBlock();return d&&d!=b||c.targetConnection==a?!1:(c.isConnected()&&c.disconnect(),c.connect(a),!0)};goog.global.Blockly||(goog.global.Blockly={});goog.global.Blockly.Mutator||(goog.global.Blockly.Mutator={});goog.global.Blockly.Mutator.reconnect=Blockly.Mutator.reconnect;Blockly.Extensions={};Blockly.Extensions.ALL_={};Blockly.Extensions.register=function(a,b){if(!goog.isString(a)||goog.string.isEmptyOrWhitespace(a))throw Error('Error: Invalid extension name "'+a+'"');if(Blockly.Extensions.ALL_[a])throw Error('Error: Extension "'+a+'" is already registered.');if(!goog.isFunction(b))throw Error('Error: Extension "'+a+'" must be a function');Blockly.Extensions.ALL_[a]=b}; +Blockly.Mutator.prototype.dispose=function(){this.block_.mutator=null;Blockly.Icon.prototype.dispose.call(this)};Blockly.Mutator.reconnect=function(a,b,c){if(!a||!a.getSourceBlock().workspace)return!1;c=b.getInput(c).connection;var d=a.targetBlock();return d&&d!=b||c.targetConnection==a?!1:(c.isConnected()&&c.disconnect(),c.connect(a),!0)}; +Blockly.Mutator.findParentWs=function(a){var b=null;if(a&&a.options){var c=a.options.parentWorkspace;a.isFlyout?c&&c.options&&(b=c.options.parentWorkspace):c&&(b=c)}return b};goog.global.Blockly||(goog.global.Blockly={});goog.global.Blockly.Mutator||(goog.global.Blockly.Mutator={});goog.global.Blockly.Mutator.reconnect=Blockly.Mutator.reconnect;Blockly.Extensions={};Blockly.Extensions.ALL_={};Blockly.Extensions.register=function(a,b){if(!goog.isString(a)||goog.string.isEmptyOrWhitespace(a))throw Error('Error: Invalid extension name "'+a+'"');if(Blockly.Extensions.ALL_[a])throw Error('Error: Extension "'+a+'" is already registered.');if(!goog.isFunction(b))throw Error('Error: Extension "'+a+'" must be a function');Blockly.Extensions.ALL_[a]=b}; Blockly.Extensions.registerMixin=function(a,b){if(!goog.isObject(b))throw Error('Error: Mixin "'+a+'" must be a object');Blockly.Extensions.register(a,function(){this.mixin(b)})}; Blockly.Extensions.registerMutator=function(a,b,c,d){var e='Error when registering mutator "'+a+'": ';Blockly.Extensions.checkHasFunction_(e,b.domToMutation,"domToMutation");Blockly.Extensions.checkHasFunction_(e,b.mutationToDom,"mutationToDom");var f=Blockly.Extensions.checkMutatorDialog_(b,e);if(c&&!goog.isFunction(c))throw Error('Extension "'+a+'" is not a function');Blockly.Extensions.register(a,function(){f&&this.setMutator(new Blockly.Mutator(d));this.mixin(b);c&&c.apply(this)})}; Blockly.Extensions.apply=function(a,b,c){var d=Blockly.Extensions.ALL_[a];if(!goog.isFunction(d))throw Error('Error: Extension "'+a+'" not found.');if(c)Blockly.Extensions.checkNoMutatorProperties_(a,b);else var e=Blockly.Extensions.getMutatorProperties_(b);d.apply(b);if(c)Blockly.Extensions.checkBlockHasMutatorProperties_('Error after applying mutator "'+a+'": ',b);else if(!Blockly.Extensions.mutatorPropertiesMatch_(e,b))throw Error('Error when applying extension "'+a+'": mutation properties changed when applying a non-mutator extension.'); diff --git a/blockly_compressed.js b/blockly_compressed.js index 9dd214a33..49d43c8ff 100644 --- a/blockly_compressed.js +++ b/blockly_compressed.js @@ -1231,7 +1231,8 @@ Blockly.Mutator.prototype.setVisible=function(a){if(a!=this.isVisible())if(Block this.updateColour()}else this.svgDialog_=null,this.workspace_.dispose(),this.rootBlock_=this.workspace_=null,this.bubble_.dispose(),this.bubble_=null,this.workspaceHeight_=this.workspaceWidth_=0,this.sourceListener_&&(this.block_.workspace.removeChangeListener(this.sourceListener_),this.sourceListener_=null)}; Blockly.Mutator.prototype.workspaceChanged_=function(){if(!this.workspace_.isDragging())for(var a=this.workspace_.getTopBlocks(!1),b=0,c;c=a[b];b++){var d=c.getRelativeToSurfaceXY(),e=c.getHeightWidth();20>d.y+e.height&&c.moveBy(0,20-e.height-d.y)}if(this.rootBlock_.workspace==this.workspace_){Blockly.Events.setGroup(!0);c=this.block_;a=(a=c.mutationToDom())&&Blockly.Xml.domToText(a);b=c.rendered;c.rendered=!1;c.compose(this.rootBlock_);c.rendered=b;c.initSvg();b=(b=c.mutationToDom())&&Blockly.Xml.domToText(b); if(a!=b){Blockly.Events.fire(new Blockly.Events.BlockChange(c,"mutation",null,a,b));var f=Blockly.Events.getGroup();setTimeout(function(){Blockly.Events.setGroup(f);c.bumpNeighbours_();Blockly.Events.setGroup(!1)},Blockly.BUMP_DELAY)}c.rendered&&c.render();this.workspace_.isDragging()||this.resizeBubble_();Blockly.Events.setGroup(!1)}};Blockly.Mutator.prototype.getFlyoutMetrics_=function(){return{viewHeight:this.workspaceHeight_,viewWidth:this.workspaceWidth_,absoluteTop:0,absoluteLeft:0}}; -Blockly.Mutator.prototype.dispose=function(){this.block_.mutator=null;Blockly.Icon.prototype.dispose.call(this)};Blockly.Mutator.reconnect=function(a,b,c){if(!a||!a.getSourceBlock().workspace)return!1;c=b.getInput(c).connection;var d=a.targetBlock();return d&&d!=b||c.targetConnection==a?!1:(c.isConnected()&&c.disconnect(),c.connect(a),!0)};goog.global.Blockly||(goog.global.Blockly={});goog.global.Blockly.Mutator||(goog.global.Blockly.Mutator={});goog.global.Blockly.Mutator.reconnect=Blockly.Mutator.reconnect;Blockly.Extensions={};Blockly.Extensions.ALL_={};Blockly.Extensions.register=function(a,b){if(!goog.isString(a)||goog.string.isEmptyOrWhitespace(a))throw Error('Error: Invalid extension name "'+a+'"');if(Blockly.Extensions.ALL_[a])throw Error('Error: Extension "'+a+'" is already registered.');if(!goog.isFunction(b))throw Error('Error: Extension "'+a+'" must be a function');Blockly.Extensions.ALL_[a]=b}; +Blockly.Mutator.prototype.dispose=function(){this.block_.mutator=null;Blockly.Icon.prototype.dispose.call(this)};Blockly.Mutator.reconnect=function(a,b,c){if(!a||!a.getSourceBlock().workspace)return!1;c=b.getInput(c).connection;var d=a.targetBlock();return d&&d!=b||c.targetConnection==a?!1:(c.isConnected()&&c.disconnect(),c.connect(a),!0)}; +Blockly.Mutator.findParentWs=function(a){var b=null;if(a&&a.options){var c=a.options.parentWorkspace;a.isFlyout?c&&c.options&&(b=c.options.parentWorkspace):c&&(b=c)}return b};goog.global.Blockly||(goog.global.Blockly={});goog.global.Blockly.Mutator||(goog.global.Blockly.Mutator={});goog.global.Blockly.Mutator.reconnect=Blockly.Mutator.reconnect;Blockly.Extensions={};Blockly.Extensions.ALL_={};Blockly.Extensions.register=function(a,b){if(!goog.isString(a)||goog.string.isEmptyOrWhitespace(a))throw Error('Error: Invalid extension name "'+a+'"');if(Blockly.Extensions.ALL_[a])throw Error('Error: Extension "'+a+'" is already registered.');if(!goog.isFunction(b))throw Error('Error: Extension "'+a+'" must be a function');Blockly.Extensions.ALL_[a]=b}; Blockly.Extensions.registerMixin=function(a,b){if(!goog.isObject(b))throw Error('Error: Mixin "'+a+'" must be a object');Blockly.Extensions.register(a,function(){this.mixin(b)})}; Blockly.Extensions.registerMutator=function(a,b,c,d){var e='Error when registering mutator "'+a+'": ';Blockly.Extensions.checkHasFunction_(e,b.domToMutation,"domToMutation");Blockly.Extensions.checkHasFunction_(e,b.mutationToDom,"mutationToDom");var f=Blockly.Extensions.checkMutatorDialog_(b,e);if(c&&!goog.isFunction(c))throw Error('Extension "'+a+'" is not a function');Blockly.Extensions.register(a,function(){f&&this.setMutator(new Blockly.Mutator(d));this.mixin(b);c&&c.apply(this)})}; Blockly.Extensions.apply=function(a,b,c){var d=Blockly.Extensions.ALL_[a];if(!goog.isFunction(d))throw Error('Error: Extension "'+a+'" not found.');if(c)Blockly.Extensions.checkNoMutatorProperties_(a,b);else var e=Blockly.Extensions.getMutatorProperties_(b);d.apply(b);if(c)Blockly.Extensions.checkBlockHasMutatorProperties_('Error after applying mutator "'+a+'": ',b);else if(!Blockly.Extensions.mutatorPropertiesMatch_(e,b))throw Error('Error when applying extension "'+a+'": mutation properties changed when applying a non-mutator extension.'); diff --git a/blocks_compressed.js b/blocks_compressed.js index 3801eb507..43dec4b2a 100644 --- a/blocks_compressed.js +++ b/blocks_compressed.js @@ -10,7 +10,7 @@ Blockly.defineBlocksWithJsonArray([{type:"lists_create_empty",message0:"%{BKY_LI message0:"%{BKY_LISTS_REVERSE_MESSAGE0}",args0:[{type:"input_value",name:"LIST",check:"Array"}],output:"Array",inputsInline:!0,colour:"%{BKY_LISTS_HUE}",tooltip:"%{BKY_LISTS_REVERSE_TOOLTIP}",helpUrl:"%{BKY_LISTS_REVERSE_HELPURL}"},{type:"lists_isEmpty",message0:"%{BKY_LISTS_ISEMPTY_TITLE}",args0:[{type:"input_value",name:"VALUE",check:["String","Array"]}],output:"Boolean",colour:"%{BKY_LISTS_HUE}",tooltip:"%{BKY_LISTS_ISEMPTY_TOOLTIP}",helpUrl:"%{BKY_LISTS_ISEMPTY_HELPURL}"},{type:"lists_length", message0:"%{BKY_LISTS_LENGTH_TITLE}",args0:[{type:"input_value",name:"VALUE",check:["String","Array"]}],output:"Number",colour:"%{BKY_LISTS_HUE}",tooltip:"%{BKY_LISTS_LENGTH_TOOLTIP}",helpUrl:"%{BKY_LISTS_LENGTH_HELPURL}"}]); Blockly.Blocks.lists_create_with={init:function(){this.setHelpUrl(Blockly.Msg.LISTS_CREATE_WITH_HELPURL);this.setColour(Blockly.Blocks.lists.HUE);this.itemCount_=3;this.updateShape_();this.setOutput(!0,"Array");this.setMutator(new Blockly.Mutator(["lists_create_with_item"]));this.setTooltip(Blockly.Msg.LISTS_CREATE_WITH_TOOLTIP)},mutationToDom:function(){var a=document.createElement("mutation");a.setAttribute("items",this.itemCount_);return a},domToMutation:function(a){this.itemCount_=parseInt(a.getAttribute("items"), -10);this.updateShape_()},decompose:function(a){var b=a.newBlock("lists_create_with_container");b.initSvg();for(var c=b.getInput("STACK").connection,e=0;e\u200f",GTE:"\u200f\u2265\u200f"},b=this.getField("OP");if(b){b=b.getOptions();for(var c=0;c\u200f",GTE:"\u200f\u2265\u200f"},b=this.getField("OP");if(b){b=b.getOptions();for(var c=0;cd;d++){var f=1==d?b:c;f&&!f.outputConnection.checkType_(e)&&(Blockly.Events.setGroup(a.group),e===this.prevParentConnection_?(this.unplug(),e.getSourceBlock().bumpNeighbours_()):(f.unplug(),f.bumpNeighbours_()),Blockly.Events.setGroup(!1))}this.prevParentConnection_= -e}};Blockly.Extensions.registerMixin("logic_ternary",Blockly.Constants.Logic.LOGIC_TERNARY_ONCHANGE_MIXIN);Blockly.Blocks.loops={};Blockly.Constants.Loops={};Blockly.Constants.Loops.HUE=120;Blockly.Blocks.loops.HUE=Blockly.Constants.Loops.HUE; +Blockly.Constants.Logic.LOGIC_TERNARY_ONCHANGE_MIXIN={prevParentConnection_:null,onchange:function(a){var b=this.getInputTargetBlock("THEN"),c=this.getInputTargetBlock("ELSE"),d=this.outputConnection.targetConnection;if((b||c)&&d)for(var e=0;2>e;e++){var f=1==e?b:c;f&&!f.outputConnection.checkType_(d)&&(Blockly.Events.setGroup(a.group),d===this.prevParentConnection_?(this.unplug(),d.getSourceBlock().bumpNeighbours_()):(f.unplug(),f.bumpNeighbours_()),Blockly.Events.setGroup(!1))}this.prevParentConnection_= +d}};Blockly.Extensions.registerMixin("logic_ternary",Blockly.Constants.Logic.LOGIC_TERNARY_ONCHANGE_MIXIN);Blockly.Blocks.loops={};Blockly.Constants.Loops={};Blockly.Constants.Loops.HUE=120;Blockly.Blocks.loops.HUE=Blockly.Constants.Loops.HUE; Blockly.defineBlocksWithJsonArray([{type:"controls_repeat_ext",message0:"%{BKY_CONTROLS_REPEAT_TITLE}",args0:[{type:"input_value",name:"TIMES",check:"Number"}],message1:"%{BKY_CONTROLS_REPEAT_INPUT_DO} %1",args1:[{type:"input_statement",name:"DO"}],previousStatement:null,nextStatement:null,colour:"%{BKY_LOOPS_HUE}",tooltip:"%{BKY_CONTROLS_REPEAT_TOOLTIP}",helpUrl:"%{BKY_CONTROLS_REPEAT_HELPURL}"},{type:"controls_repeat",message0:"%{BKY_CONTROLS_REPEAT_TITLE}",args0:[{type:"field_number",name:"TIMES", value:10,min:0,precision:1}],message1:"%{BKY_CONTROLS_REPEAT_INPUT_DO} %1",args1:[{type:"input_statement",name:"DO"}],previousStatement:null,nextStatement:null,colour:"%{BKY_LOOPS_HUE}",tooltip:"%{BKY_CONTROLS_REPEAT_TOOLTIP}",helpUrl:"%{BKY_CONTROLS_REPEAT_HELPURL}"},{type:"controls_whileUntil",message0:"%1 %2",args0:[{type:"field_dropdown",name:"MODE",options:[["%{BKY_CONTROLS_WHILEUNTIL_OPERATOR_WHILE}","WHILE"],["%{BKY_CONTROLS_WHILEUNTIL_OPERATOR_UNTIL}","UNTIL"]]},{type:"input_value",name:"BOOL", check:"Boolean"}],message1:"%{BKY_CONTROLS_REPEAT_INPUT_DO} %1",args1:[{type:"input_statement",name:"DO"}],previousStatement:null,nextStatement:null,colour:"%{BKY_LOOPS_HUE}",helpUrl:"%{BKY_CONTROLS_WHILEUNTIL_HELPURL}",extensions:["controls_whileUntil_tooltip"]},{type:"controls_for",message0:"%{BKY_CONTROLS_FOR_TITLE}",args0:[{type:"field_variable",name:"VAR",variable:null},{type:"input_value",name:"FROM",check:"Number",align:"RIGHT"},{type:"input_value",name:"TO",check:"Number",align:"RIGHT"},{type:"input_value", @@ -90,30 +90,31 @@ Blockly.Constants.Math.LIST_MODES_MUTATOR_EXTENSION=function(){this.getField("OP Blockly.Blocks.procedures_defnoreturn={init:function(){var a=new Blockly.FieldTextInput("",Blockly.Procedures.rename);a.setSpellcheck(!1);this.appendDummyInput().appendField(Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE).appendField(a,"NAME").appendField("","PARAMS");this.setMutator(new Blockly.Mutator(["procedures_mutatorarg"]));(this.workspace.options.comments||this.workspace.options.parentWorkspace&&this.workspace.options.parentWorkspace.options.comments)&&Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT&& this.setCommentText(Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT);this.setColour(Blockly.Blocks.procedures.HUE);this.setTooltip(Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP);this.setHelpUrl(Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL);this.arguments_=[];this.argumentVarModels_=[];this.setStatements_(!0);this.statementConnection_=null},setStatements_:function(a){this.hasStatements_!==a&&(a?(this.appendStatementInput("STACK").appendField(Blockly.Msg.PROCEDURES_DEFNORETURN_DO),this.getInput("RETURN")&&this.moveInputBefore("STACK", "RETURN")):this.removeInput("STACK",!0),this.hasStatements_=a)},updateParams_:function(){for(var a=!1,b={},c=0;c", - "lastupdated": "2018-02-13 13:02:03.983111", + "lastupdated": "2018-02-16 11:14:06.797856", "locale": "en", "messagedocumentation" : "qqq" }, From f7636176a2c9d03c713bb9788f1f729ee1d78bf0 Mon Sep 17 00:00:00 2001 From: Rachel Fenichel Date: Fri, 16 Feb 2018 16:10:33 -0800 Subject: [PATCH 11/16] Disable pointer events for the february release --- core/touch.js | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/core/touch.js b/core/touch.js index 8aad46b08..816e8d618 100644 --- a/core/touch.js +++ b/core/touch.js @@ -48,13 +48,7 @@ Blockly.Touch.touchIdentifier_ = null; * @type {Object} */ Blockly.Touch.TOUCH_MAP = {}; -if (window.PointerEvent) { - Blockly.Touch.TOUCH_MAP = { - 'mousedown': ['pointerdown'], - 'mousemove': ['pointermove'], - 'mouseup': ['pointerup', 'pointercancel'] - }; -} else if (goog.events.BrowserFeature.TOUCH_ENABLED) { +if (goog.events.BrowserFeature.TOUCH_ENABLED) { Blockly.Touch.TOUCH_MAP = { 'mousedown': ['touchstart'], 'mousemove': ['touchmove'], From e2dae1b1c7150ccfe005fb38485f3db149fb700b Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Mon, 19 Feb 2018 08:54:44 +0100 Subject: [PATCH 12/16] Localisation updates from https://translatewiki.net. --- msg/json/lb.json | 1 + 1 file changed, 1 insertion(+) diff --git a/msg/json/lb.json b/msg/json/lb.json index ecdc6fd7b..54118f009 100644 --- a/msg/json/lb.json +++ b/msg/json/lb.json @@ -128,6 +128,7 @@ "LISTS_SET_INDEX_TOOLTIP_SET_RANDOM": "Setzt en zoufällegt Element an eng Lëscht.", "LISTS_SET_INDEX_TOOLTIP_INSERT_LAST": "Setzt d'Element um Enn vun enger Lëscht derbäi.", "LISTS_SET_INDEX_TOOLTIP_INSERT_RANDOM": "Setzt d'Element op eng zoufälleg Plaz an d'Lëscht dobäi.", + "LISTS_SORT_TITLE": "%1 %2 %3 zortéieren", "LISTS_SORT_TYPE_NUMERIC": "numeresch", "LISTS_SORT_TYPE_TEXT": "alphabetesch", "LISTS_REVERSE_HELPURL": "https://github.com/google/blockly/wiki/Lists#reversing-a-list", From 65acdd68c6c3363ae6951719accebc5a90395ab8 Mon Sep 17 00:00:00 2001 From: Rachel Fenichel Date: Tue, 20 Feb 2018 10:38:46 -0800 Subject: [PATCH 13/16] Rebuild --- blockly_accessible_compressed.js | 2 +- blockly_accessible_uncompressed.js | 2 ++ blockly_compressed.js | 2 +- blockly_uncompressed.js | 2 ++ 4 files changed, 6 insertions(+), 2 deletions(-) diff --git a/blockly_accessible_compressed.js b/blockly_accessible_compressed.js index f68db4e25..135a8e64d 100644 --- a/blockly_accessible_compressed.js +++ b/blockly_accessible_compressed.js @@ -896,7 +896,7 @@ goog.ui.tree.TreeControl.prototype.handleMouseEvent_=function(a){goog.log.fine(t goog.ui.tree.TreeControl.prototype.handleKeyEvent=function(a){var b;(b=this.typeAhead_.handleNavigation(a)||this.selectedItem_&&this.selectedItem_.onKeyDown(a)||this.typeAhead_.handleTypeAheadChar(a))&&a.preventDefault();return b};goog.ui.tree.TreeControl.prototype.getNodeFromEvent_=function(a){for(var b=a.target;null!=b;){if(a=goog.ui.tree.BaseNode.allNodes[b.id])return a;if(b==this.getElement())break;b=b.parentNode}return null}; goog.ui.tree.TreeControl.prototype.createNode=function(a){return new goog.ui.tree.TreeNode(a||goog.html.SafeHtml.EMPTY,this.getConfig(),this.getDomHelper())};goog.ui.tree.TreeControl.prototype.setNode=function(a){this.typeAhead_.setNodeInMap(a)};goog.ui.tree.TreeControl.prototype.removeNode=function(a){this.typeAhead_.removeNodeFromMap(a)};goog.ui.tree.TreeControl.prototype.clearTypeAhead=function(){this.typeAhead_.clear()};goog.ui.tree.TreeControl.defaultConfig=goog.ui.tree.BaseNode.defaultConfig; var Blockly={};Blockly.Blocks=Object(null); -Blockly.Touch={};Blockly.Touch.touchIdentifier_=null;Blockly.Touch.TOUCH_MAP={};window.PointerEvent?Blockly.Touch.TOUCH_MAP={mousedown:["pointerdown"],mousemove:["pointermove"],mouseup:["pointerup","pointercancel"]}:goog.events.BrowserFeature.TOUCH_ENABLED&&(Blockly.Touch.TOUCH_MAP={mousedown:["touchstart"],mousemove:["touchmove"],mouseup:["touchend","touchcancel"]});Blockly.longPid_=0; +Blockly.Touch={};Blockly.Touch.touchIdentifier_=null;Blockly.Touch.TOUCH_MAP={};goog.events.BrowserFeature.TOUCH_ENABLED&&(Blockly.Touch.TOUCH_MAP={mousedown:["touchstart"],mousemove:["touchmove"],mouseup:["touchend","touchcancel"]});Blockly.longPid_=0; Blockly.longStart_=function(a,b){Blockly.longStop_();a.changedTouches&&1!=a.changedTouches.length||(Blockly.longPid_=setTimeout(function(){a.changedTouches&&(a.button=2,a.clientX=a.changedTouches[0].clientX,a.clientY=a.changedTouches[0].clientY);b&&b.handleRightClick(a)},Blockly.LONGPRESS))};Blockly.longStop_=function(){Blockly.longPid_&&(clearTimeout(Blockly.longPid_),Blockly.longPid_=0)};Blockly.Touch.clearTouchIdentifier=function(){Blockly.Touch.touchIdentifier_=null}; Blockly.Touch.shouldHandleEvent=function(a){return!Blockly.Touch.isMouseOrTouchEvent(a)||Blockly.Touch.checkTouchIdentifier(a)};Blockly.Touch.getTouchIdentifierFromEvent=function(a){return void 0!=a.pointerId?a.pointerId:a.changedTouches&&a.changedTouches[0]&&void 0!=a.changedTouches[0].identifier&&null!=a.changedTouches[0].identifier?a.changedTouches[0].identifier:"mouse"}; Blockly.Touch.checkTouchIdentifier=function(a){var b=Blockly.Touch.getTouchIdentifierFromEvent(a);return void 0!=Blockly.Touch.touchIdentifier_&&null!=Blockly.Touch.touchIdentifier_?Blockly.Touch.touchIdentifier_==b:"mousedown"==a.type||"touchstart"==a.type||"pointerdown"==a.type?(Blockly.Touch.touchIdentifier_=b,!0):!1};Blockly.Touch.setClientFromTouch=function(a){if(goog.string.startsWith(a.type,"touch")){var b=a.changedTouches[0];a.clientX=b.clientX;a.clientY=b.clientY}}; diff --git a/blockly_accessible_uncompressed.js b/blockly_accessible_uncompressed.js index 086cb8c25..133323c39 100644 --- a/blockly_accessible_uncompressed.js +++ b/blockly_accessible_uncompressed.js @@ -122,6 +122,7 @@ goog.addDependency("../../../" + dir + "/core/warning.js", ['Blockly.Warning'], goog.addDependency("../../../" + dir + "/core/widgetdiv.js", ['Blockly.WidgetDiv'], ['Blockly.Css', 'goog.dom', 'goog.dom.TagName', 'goog.style']); goog.addDependency("../../../" + dir + "/core/workspace.js", ['Blockly.Workspace'], ['Blockly.VariableMap', 'goog.array', 'goog.math']); goog.addDependency("../../../" + dir + "/core/workspace_audio.js", ['Blockly.WorkspaceAudio'], []); +goog.addDependency("../../../" + dir + "/core/workspace_comment.js", ['Blockly.WorkspaceComment'], ['Blockly.Bubble', 'Blockly.Icon', 'goog.userAgent']); goog.addDependency("../../../" + dir + "/core/workspace_drag_surface_svg.js", ['Blockly.WorkspaceDragSurfaceSvg'], ['Blockly.utils', 'goog.asserts', 'goog.math.Coordinate']); goog.addDependency("../../../" + dir + "/core/workspace_dragger.js", ['Blockly.WorkspaceDragger'], ['goog.math.Coordinate', 'goog.asserts']); goog.addDependency("../../../" + dir + "/core/workspace_svg.js", ['Blockly.WorkspaceSvg'], ['Blockly.ConnectionDB', 'Blockly.constants', 'Blockly.Gesture', 'Blockly.Grid', 'Blockly.Options', 'Blockly.ScrollbarPair', 'Blockly.Touch', 'Blockly.Trashcan', 'Blockly.VariablesDynamic', 'Blockly.Workspace', 'Blockly.WorkspaceAudio', 'Blockly.WorkspaceDragSurfaceSvg', 'Blockly.Xml', 'Blockly.ZoomControls', 'goog.array', 'goog.dom', 'goog.math.Coordinate', 'goog.userAgent']); @@ -1784,6 +1785,7 @@ goog.require('Blockly.Warning'); goog.require('Blockly.WidgetDiv'); goog.require('Blockly.Workspace'); goog.require('Blockly.WorkspaceAudio'); +goog.require('Blockly.WorkspaceComment'); goog.require('Blockly.WorkspaceDragSurfaceSvg'); goog.require('Blockly.WorkspaceDragger'); goog.require('Blockly.WorkspaceSvg'); diff --git a/blockly_compressed.js b/blockly_compressed.js index 49d43c8ff..d8878a006 100644 --- a/blockly_compressed.js +++ b/blockly_compressed.js @@ -900,7 +900,7 @@ goog.ui.tree.TreeControl.prototype.handleMouseEvent_=function(a){goog.log.fine(t goog.ui.tree.TreeControl.prototype.handleKeyEvent=function(a){var b;(b=this.typeAhead_.handleNavigation(a)||this.selectedItem_&&this.selectedItem_.onKeyDown(a)||this.typeAhead_.handleTypeAheadChar(a))&&a.preventDefault();return b};goog.ui.tree.TreeControl.prototype.getNodeFromEvent_=function(a){for(var b=a.target;null!=b;){if(a=goog.ui.tree.BaseNode.allNodes[b.id])return a;if(b==this.getElement())break;b=b.parentNode}return null}; goog.ui.tree.TreeControl.prototype.createNode=function(a){return new goog.ui.tree.TreeNode(a||goog.html.SafeHtml.EMPTY,this.getConfig(),this.getDomHelper())};goog.ui.tree.TreeControl.prototype.setNode=function(a){this.typeAhead_.setNodeInMap(a)};goog.ui.tree.TreeControl.prototype.removeNode=function(a){this.typeAhead_.removeNodeFromMap(a)};goog.ui.tree.TreeControl.prototype.clearTypeAhead=function(){this.typeAhead_.clear()};goog.ui.tree.TreeControl.defaultConfig=goog.ui.tree.BaseNode.defaultConfig; var Blockly={};Blockly.Blocks=Object(null); -Blockly.Touch={};Blockly.Touch.touchIdentifier_=null;Blockly.Touch.TOUCH_MAP={};window.PointerEvent?Blockly.Touch.TOUCH_MAP={mousedown:["pointerdown"],mousemove:["pointermove"],mouseup:["pointerup","pointercancel"]}:goog.events.BrowserFeature.TOUCH_ENABLED&&(Blockly.Touch.TOUCH_MAP={mousedown:["touchstart"],mousemove:["touchmove"],mouseup:["touchend","touchcancel"]});Blockly.longPid_=0; +Blockly.Touch={};Blockly.Touch.touchIdentifier_=null;Blockly.Touch.TOUCH_MAP={};goog.events.BrowserFeature.TOUCH_ENABLED&&(Blockly.Touch.TOUCH_MAP={mousedown:["touchstart"],mousemove:["touchmove"],mouseup:["touchend","touchcancel"]});Blockly.longPid_=0; Blockly.longStart_=function(a,b){Blockly.longStop_();a.changedTouches&&1!=a.changedTouches.length||(Blockly.longPid_=setTimeout(function(){a.changedTouches&&(a.button=2,a.clientX=a.changedTouches[0].clientX,a.clientY=a.changedTouches[0].clientY);b&&b.handleRightClick(a)},Blockly.LONGPRESS))};Blockly.longStop_=function(){Blockly.longPid_&&(clearTimeout(Blockly.longPid_),Blockly.longPid_=0)};Blockly.Touch.clearTouchIdentifier=function(){Blockly.Touch.touchIdentifier_=null}; Blockly.Touch.shouldHandleEvent=function(a){return!Blockly.Touch.isMouseOrTouchEvent(a)||Blockly.Touch.checkTouchIdentifier(a)};Blockly.Touch.getTouchIdentifierFromEvent=function(a){return void 0!=a.pointerId?a.pointerId:a.changedTouches&&a.changedTouches[0]&&void 0!=a.changedTouches[0].identifier&&null!=a.changedTouches[0].identifier?a.changedTouches[0].identifier:"mouse"}; Blockly.Touch.checkTouchIdentifier=function(a){var b=Blockly.Touch.getTouchIdentifierFromEvent(a);return void 0!=Blockly.Touch.touchIdentifier_&&null!=Blockly.Touch.touchIdentifier_?Blockly.Touch.touchIdentifier_==b:"mousedown"==a.type||"touchstart"==a.type||"pointerdown"==a.type?(Blockly.Touch.touchIdentifier_=b,!0):!1};Blockly.Touch.setClientFromTouch=function(a){if(goog.string.startsWith(a.type,"touch")){var b=a.changedTouches[0];a.clientX=b.clientX;a.clientY=b.clientY}}; diff --git a/blockly_uncompressed.js b/blockly_uncompressed.js index 911bb5b51..ab693314d 100644 --- a/blockly_uncompressed.js +++ b/blockly_uncompressed.js @@ -96,6 +96,7 @@ goog.addDependency("../../../" + dir + "/core/warning.js", ['Blockly.Warning'], goog.addDependency("../../../" + dir + "/core/widgetdiv.js", ['Blockly.WidgetDiv'], ['Blockly.Css', 'goog.dom', 'goog.dom.TagName', 'goog.style']); goog.addDependency("../../../" + dir + "/core/workspace.js", ['Blockly.Workspace'], ['Blockly.VariableMap', 'goog.array', 'goog.math']); goog.addDependency("../../../" + dir + "/core/workspace_audio.js", ['Blockly.WorkspaceAudio'], []); +goog.addDependency("../../../" + dir + "/core/workspace_comment.js", ['Blockly.WorkspaceComment'], ['Blockly.Bubble', 'Blockly.Icon', 'goog.userAgent']); goog.addDependency("../../../" + dir + "/core/workspace_drag_surface_svg.js", ['Blockly.WorkspaceDragSurfaceSvg'], ['Blockly.utils', 'goog.asserts', 'goog.math.Coordinate']); goog.addDependency("../../../" + dir + "/core/workspace_dragger.js", ['Blockly.WorkspaceDragger'], ['goog.math.Coordinate', 'goog.asserts']); goog.addDependency("../../../" + dir + "/core/workspace_svg.js", ['Blockly.WorkspaceSvg'], ['Blockly.ConnectionDB', 'Blockly.constants', 'Blockly.Gesture', 'Blockly.Grid', 'Blockly.Options', 'Blockly.ScrollbarPair', 'Blockly.Touch', 'Blockly.Trashcan', 'Blockly.VariablesDynamic', 'Blockly.Workspace', 'Blockly.WorkspaceAudio', 'Blockly.WorkspaceDragSurfaceSvg', 'Blockly.Xml', 'Blockly.ZoomControls', 'goog.array', 'goog.dom', 'goog.math.Coordinate', 'goog.userAgent']); @@ -1757,6 +1758,7 @@ goog.require('Blockly.Warning'); goog.require('Blockly.WidgetDiv'); goog.require('Blockly.Workspace'); goog.require('Blockly.WorkspaceAudio'); +goog.require('Blockly.WorkspaceComment'); goog.require('Blockly.WorkspaceDragSurfaceSvg'); goog.require('Blockly.WorkspaceDragger'); goog.require('Blockly.WorkspaceSvg'); From 71eea776707e777a1c011e184b45e65abb49f54e Mon Sep 17 00:00:00 2001 From: Rachel Fenichel Date: Tue, 20 Feb 2018 13:18:48 -0800 Subject: [PATCH 14/16] Serialize variable IDs in procedure definitions --- blocks/procedures.js | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/blocks/procedures.js b/blocks/procedures.js index 1874ee1d0..cb2cec226 100644 --- a/blocks/procedures.js +++ b/blocks/procedures.js @@ -132,9 +132,11 @@ Blockly.Blocks['procedures_defnoreturn'] = { if (opt_paramIds) { container.setAttribute('name', this.getFieldValue('NAME')); } - for (var i = 0; i < this.arguments_.length; i++) { + for (var i = 0; i < this.argumentVarModels_.length; i++) { var parameter = document.createElement('arg'); - parameter.setAttribute('name', this.arguments_[i]); + var argModel = this.argumentVarModels_[i]; + parameter.setAttribute('name', argModel.name); + parameter.setAttribute('varId', argModel.getId()); if (opt_paramIds && this.paramIds_) { parameter.setAttribute('paramId', this.paramIds_[i]); } @@ -158,9 +160,10 @@ Blockly.Blocks['procedures_defnoreturn'] = { for (var i = 0, childNode; childNode = xmlElement.childNodes[i]; i++) { if (childNode.nodeName.toLowerCase() == 'arg') { var varName = childNode.getAttribute('name'); + var varId = childNode.getAttribute('varId'); this.arguments_.push(varName); var variable = Blockly.Variables.getOrCreateVariablePackage( - this.workspace, null, varName, ''); + this.workspace, varId, varName, ''); this.argumentVarModels_.push(variable); } } From f51a789fe51945155c2053df5c06b405ca5bf23b Mon Sep 17 00:00:00 2001 From: Rachel Fenichel Date: Tue, 20 Feb 2018 14:26:33 -0800 Subject: [PATCH 15/16] Rebuild blocks --- blocks_compressed.js | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/blocks_compressed.js b/blocks_compressed.js index 43dec4b2a..578206ac8 100644 --- a/blocks_compressed.js +++ b/blocks_compressed.js @@ -33,7 +33,7 @@ this.removeInput("ORDINAL",!0);a?(this.appendValueInput("AT").setCheck("Number") Blockly.Blocks.lists_getSublist={init:function(){this.WHERE_OPTIONS_1=[[Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_START,"FROM_START"],[Blockly.Msg.LISTS_GET_SUBLIST_START_FROM_END,"FROM_END"],[Blockly.Msg.LISTS_GET_SUBLIST_START_FIRST,"FIRST"]];this.WHERE_OPTIONS_2=[[Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_START,"FROM_START"],[Blockly.Msg.LISTS_GET_SUBLIST_END_FROM_END,"FROM_END"],[Blockly.Msg.LISTS_GET_SUBLIST_END_LAST,"LAST"]];this.setHelpUrl(Blockly.Msg.LISTS_GET_SUBLIST_HELPURL);this.setColour(Blockly.Blocks.lists.HUE); this.appendValueInput("LIST").setCheck("Array").appendField(Blockly.Msg.LISTS_GET_SUBLIST_INPUT_IN_LIST);this.appendDummyInput("AT1");this.appendDummyInput("AT2");Blockly.Msg.LISTS_GET_SUBLIST_TAIL&&this.appendDummyInput("TAIL").appendField(Blockly.Msg.LISTS_GET_SUBLIST_TAIL);this.setInputsInline(!0);this.setOutput(!0,"Array");this.updateAt_(1,!0);this.updateAt_(2,!0);this.setTooltip(Blockly.Msg.LISTS_GET_SUBLIST_TOOLTIP)},mutationToDom:function(){var a=document.createElement("mutation"),b=this.getInput("AT1").type== Blockly.INPUT_VALUE;a.setAttribute("at1",b);b=this.getInput("AT2").type==Blockly.INPUT_VALUE;a.setAttribute("at2",b);return a},domToMutation:function(a){var b="true"==a.getAttribute("at1");a="true"==a.getAttribute("at2");this.updateAt_(1,b);this.updateAt_(2,a)},updateAt_:function(a,b){this.removeInput("AT"+a);this.removeInput("ORDINAL"+a,!0);b?(this.appendValueInput("AT"+a).setCheck("Number"),Blockly.Msg.ORDINAL_NUMBER_SUFFIX&&this.appendDummyInput("ORDINAL"+a).appendField(Blockly.Msg.ORDINAL_NUMBER_SUFFIX)): -this.appendDummyInput("AT"+a);var c=new Blockly.FieldDropdown(this["WHERE_OPTIONS_"+a],function(c){var e="FROM_START"==c||"FROM_END"==c;if(e!=b){var d=this.sourceBlock_;d.updateAt_(a,e);d.setFieldValue(c,"WHERE"+a);return null}});this.getInput("AT"+a).appendField(c,"WHERE"+a);1==a&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"));Blockly.Msg.LISTS_GET_SUBLIST_TAIL&&this.moveInputBefore("TAIL",null)}}; +this.appendDummyInput("AT"+a);var c=new Blockly.FieldDropdown(this["WHERE_OPTIONS_"+a],function(c){var d="FROM_START"==c||"FROM_END"==c;if(d!=b){var f=this.sourceBlock_;f.updateAt_(a,d);f.setFieldValue(c,"WHERE"+a);return null}});this.getInput("AT"+a).appendField(c,"WHERE"+a);1==a&&(this.moveInputBefore("AT1","AT2"),this.getInput("ORDINAL1")&&this.moveInputBefore("ORDINAL1","AT2"));Blockly.Msg.LISTS_GET_SUBLIST_TAIL&&this.moveInputBefore("TAIL",null)}}; Blockly.Blocks.lists_sort={init:function(){this.jsonInit({message0:Blockly.Msg.LISTS_SORT_TITLE,args0:[{type:"field_dropdown",name:"TYPE",options:[[Blockly.Msg.LISTS_SORT_TYPE_NUMERIC,"NUMERIC"],[Blockly.Msg.LISTS_SORT_TYPE_TEXT,"TEXT"],[Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE,"IGNORE_CASE"]]},{type:"field_dropdown",name:"DIRECTION",options:[[Blockly.Msg.LISTS_SORT_ORDER_ASCENDING,"1"],[Blockly.Msg.LISTS_SORT_ORDER_DESCENDING,"-1"]]},{type:"input_value",name:"LIST",check:"Array"}],output:"Array",colour:Blockly.Blocks.lists.HUE, tooltip:Blockly.Msg.LISTS_SORT_TOOLTIP,helpUrl:Blockly.Msg.LISTS_SORT_HELPURL})}}; Blockly.Blocks.lists_split={init:function(){var a=this,b=new Blockly.FieldDropdown([[Blockly.Msg.LISTS_SPLIT_LIST_FROM_TEXT,"SPLIT"],[Blockly.Msg.LISTS_SPLIT_TEXT_FROM_LIST,"JOIN"]],function(b){a.updateType_(b)});this.setHelpUrl(Blockly.Msg.LISTS_SPLIT_HELPURL);this.setColour(Blockly.Blocks.lists.HUE);this.appendValueInput("INPUT").setCheck("String").appendField(b,"MODE");this.appendValueInput("DELIM").setCheck("String").appendField(Blockly.Msg.LISTS_SPLIT_WITH_DELIMITER);this.setInputsInline(!0); @@ -90,14 +90,14 @@ Blockly.Constants.Math.LIST_MODES_MUTATOR_EXTENSION=function(){this.getField("OP Blockly.Blocks.procedures_defnoreturn={init:function(){var a=new Blockly.FieldTextInput("",Blockly.Procedures.rename);a.setSpellcheck(!1);this.appendDummyInput().appendField(Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE).appendField(a,"NAME").appendField("","PARAMS");this.setMutator(new Blockly.Mutator(["procedures_mutatorarg"]));(this.workspace.options.comments||this.workspace.options.parentWorkspace&&this.workspace.options.parentWorkspace.options.comments)&&Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT&& this.setCommentText(Blockly.Msg.PROCEDURES_DEFNORETURN_COMMENT);this.setColour(Blockly.Blocks.procedures.HUE);this.setTooltip(Blockly.Msg.PROCEDURES_DEFNORETURN_TOOLTIP);this.setHelpUrl(Blockly.Msg.PROCEDURES_DEFNORETURN_HELPURL);this.arguments_=[];this.argumentVarModels_=[];this.setStatements_(!0);this.statementConnection_=null},setStatements_:function(a){this.hasStatements_!==a&&(a?(this.appendStatementInput("STACK").appendField(Blockly.Msg.PROCEDURES_DEFNORETURN_DO),this.getInput("RETURN")&&this.moveInputBefore("STACK", "RETURN")):this.removeInput("STACK",!0),this.hasStatements_=a)},updateParams_:function(){for(var a=!1,b={},c=0;c Date: Fri, 9 Mar 2018 13:55:52 -0800 Subject: [PATCH 16/16] Rebuilding master to address #1691 (#1692) --- blockly_accessible_uncompressed.js | 23 +++++++++++++++++++---- blockly_uncompressed.js | 23 +++++++++++++++++++---- msg/js/ia.js | 10 +++++----- msg/js/ja.js | 4 ++-- msg/js/lb.js | 2 +- msg/js/nb.js | 2 +- msg/js/pl.js | 2 +- msg/js/zh-hant.js | 2 +- msg/json/en.json | 2 +- 9 files changed, 50 insertions(+), 20 deletions(-) diff --git a/blockly_accessible_uncompressed.js b/blockly_accessible_uncompressed.js index 133323c39..612ccab5b 100644 --- a/blockly_accessible_uncompressed.js +++ b/blockly_accessible_uncompressed.js @@ -122,7 +122,6 @@ goog.addDependency("../../../" + dir + "/core/warning.js", ['Blockly.Warning'], goog.addDependency("../../../" + dir + "/core/widgetdiv.js", ['Blockly.WidgetDiv'], ['Blockly.Css', 'goog.dom', 'goog.dom.TagName', 'goog.style']); goog.addDependency("../../../" + dir + "/core/workspace.js", ['Blockly.Workspace'], ['Blockly.VariableMap', 'goog.array', 'goog.math']); goog.addDependency("../../../" + dir + "/core/workspace_audio.js", ['Blockly.WorkspaceAudio'], []); -goog.addDependency("../../../" + dir + "/core/workspace_comment.js", ['Blockly.WorkspaceComment'], ['Blockly.Bubble', 'Blockly.Icon', 'goog.userAgent']); goog.addDependency("../../../" + dir + "/core/workspace_drag_surface_svg.js", ['Blockly.WorkspaceDragSurfaceSvg'], ['Blockly.utils', 'goog.asserts', 'goog.math.Coordinate']); goog.addDependency("../../../" + dir + "/core/workspace_dragger.js", ['Blockly.WorkspaceDragger'], ['goog.math.Coordinate', 'goog.asserts']); goog.addDependency("../../../" + dir + "/core/workspace_svg.js", ['Blockly.WorkspaceSvg'], ['Blockly.ConnectionDB', 'Blockly.constants', 'Blockly.Gesture', 'Blockly.Grid', 'Blockly.Options', 'Blockly.ScrollbarPair', 'Blockly.Touch', 'Blockly.Trashcan', 'Blockly.VariablesDynamic', 'Blockly.Workspace', 'Blockly.WorkspaceAudio', 'Blockly.WorkspaceDragSurfaceSvg', 'Blockly.Xml', 'Blockly.ZoomControls', 'goog.array', 'goog.dom', 'goog.math.Coordinate', 'goog.userAgent']); @@ -305,6 +304,23 @@ goog.addDependency("debug/logrecordserializer_test.js", ['goog.debug.logRecordSe goog.addDependency("debug/relativetimeprovider.js", ['goog.debug.RelativeTimeProvider'], []); goog.addDependency("debug/tracer.js", ['goog.debug.StopTraceDetail', 'goog.debug.Trace'], ['goog.array', 'goog.asserts', 'goog.debug.Logger', 'goog.iter', 'goog.log', 'goog.structs.Map', 'goog.structs.SimplePool']); goog.addDependency("debug/tracer_test.js", ['goog.debug.TraceTest'], ['goog.array', 'goog.debug.Trace', 'goog.testing.jsunit', 'goog.testing.recordFunction']); +goog.addDependency("debug_loader_integration_tests/deps.js", [], []); +goog.addDependency("debug_loader_integration_tests/integrationtestcommon.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_googmodule_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_googmoduledln_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_googmodulewithdeps_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_provide_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_providewithdeps_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/deps.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/googmodule.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/googmoduledln.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/googmodulerequiresgoogmodule.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/googmodulerequiresprovide.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/provide.js", ['test.js.Provide'], []); +goog.addDependency("debug_loader_integration_tests/testdata/providerequiresprovide.js", ['test.js.ProvideRequiresProvide'], ['test.js.Provide']); +goog.addDependency("debug_loader_integration_tests/testdata/providrequiresgoogmoduledln.js", ['test.js.ProvideRequiresGoogModuleDLN'], ['test.js.GoogModuleDLN']); +goog.addDependency("debug_loader_integration_tests/testdata/providrequiresgoogmoduleget.js", ['test.js.ProvideRequiresGoogModuleGet'], ['test.js.GoogModule']); +goog.addDependency("debug_loader_integration_tests/testdata/testutils.js", [], []); goog.addDependency("defineclass_test.js", ['goog.defineClassTest'], ['goog.testing.jsunit']); goog.addDependency("delegate/delegateregistry.js", [], []); goog.addDependency("delegate/delegateregistry_test.js", [], ['goog.testing.jsunit']); @@ -783,7 +799,7 @@ goog.addDependency("labs/mock/verificationmode.js", ['goog.labs.mock.verificatio goog.addDependency("labs/mock/verificationmode_test.js", [], []); goog.addDependency("labs/net/image.js", ['goog.labs.net.image'], ['goog.Promise', 'goog.events.EventHandler', 'goog.events.EventType', 'goog.net.EventType', 'goog.userAgent']); goog.addDependency("labs/net/image_test.js", ['goog.labs.net.imageTest'], ['goog.labs.net.image', 'goog.string', 'goog.testing.TestCase', 'goog.testing.jsunit', 'goog.testing.recordFunction']); -goog.addDependency("labs/net/webchannel.js", ['goog.net.WebChannel'], ['goog.events', 'goog.events.Event']); +goog.addDependency("labs/net/webchannel.js", ['goog.net.WebChannel'], ['goog.events', 'goog.events.Event', 'goog.net.XmlHttpFactory']); goog.addDependency("labs/net/webchannel/basetestchannel.js", ['goog.labs.net.webChannel.BaseTestChannel'], ['goog.labs.net.webChannel.Channel', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.requestStats', 'goog.net.WebChannel']); goog.addDependency("labs/net/webchannel/channel.js", ['goog.labs.net.webChannel.Channel'], []); goog.addDependency("labs/net/webchannel/channelrequest.js", ['goog.labs.net.webChannel.ChannelRequest'], ['goog.Timer', 'goog.async.Throttle', 'goog.events.EventHandler', 'goog.labs.net.webChannel.Channel', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.environment', 'goog.labs.net.webChannel.requestStats', 'goog.net.ErrorCode', 'goog.net.EventType', 'goog.net.WebChannel', 'goog.net.XmlHttp', 'goog.object', 'goog.string', 'goog.userAgent']); @@ -795,7 +811,7 @@ goog.addDependency("labs/net/webchannel/forwardchannelrequestpool.js", [], []); goog.addDependency("labs/net/webchannel/forwardchannelrequestpool_test.js", [], []); goog.addDependency("labs/net/webchannel/netutils.js", ['goog.labs.net.webChannel.netUtils'], ['goog.Uri', 'goog.labs.net.webChannel.WebChannelDebug']); goog.addDependency("labs/net/webchannel/requeststats.js", ['goog.labs.net.webChannel.requestStats', 'goog.labs.net.webChannel.requestStats.Event', 'goog.labs.net.webChannel.requestStats.ServerReachability', 'goog.labs.net.webChannel.requestStats.ServerReachabilityEvent', 'goog.labs.net.webChannel.requestStats.Stat', 'goog.labs.net.webChannel.requestStats.StatEvent', 'goog.labs.net.webChannel.requestStats.TimingEvent'], ['goog.events.Event', 'goog.events.EventTarget']); -goog.addDependency("labs/net/webchannel/webchannelbase.js", ['goog.labs.net.webChannel.WebChannelBase'], ['goog.Uri', 'goog.array', 'goog.asserts', 'goog.async.run', 'goog.debug.TextFormatter', 'goog.json', 'goog.labs.net.webChannel.BaseTestChannel', 'goog.labs.net.webChannel.Channel', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.ConnectionState', 'goog.labs.net.webChannel.ForwardChannelRequestPool', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.Wire', 'goog.labs.net.webChannel.WireV8', 'goog.labs.net.webChannel.netUtils', 'goog.labs.net.webChannel.requestStats', 'goog.log', 'goog.net.WebChannel', 'goog.net.XhrIo', 'goog.net.rpc.HttpCors', 'goog.object', 'goog.string', 'goog.structs', 'goog.structs.CircularBuffer']); +goog.addDependency("labs/net/webchannel/webchannelbase.js", ['goog.labs.net.webChannel.WebChannelBase'], ['goog.Uri', 'goog.array', 'goog.asserts', 'goog.async.run', 'goog.debug.TextFormatter', 'goog.json', 'goog.labs.net.webChannel.BaseTestChannel', 'goog.labs.net.webChannel.Channel', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.ConnectionState', 'goog.labs.net.webChannel.ForwardChannelRequestPool', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.Wire', 'goog.labs.net.webChannel.WireV8', 'goog.labs.net.webChannel.netUtils', 'goog.labs.net.webChannel.requestStats', 'goog.log', 'goog.net.WebChannel', 'goog.net.XhrIo', 'goog.net.XmlHttpFactory', 'goog.net.rpc.HttpCors', 'goog.object', 'goog.string', 'goog.structs', 'goog.structs.CircularBuffer']); goog.addDependency("labs/net/webchannel/webchannelbase_test.js", ['goog.labs.net.webChannel.webChannelBaseTest'], ['goog.Timer', 'goog.array', 'goog.dom', 'goog.functions', 'goog.json', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.ForwardChannelRequestPool', 'goog.labs.net.webChannel.WebChannelBase', 'goog.labs.net.webChannel.WebChannelBaseTransport', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.Wire', 'goog.labs.net.webChannel.netUtils', 'goog.labs.net.webChannel.requestStats', 'goog.labs.net.webChannel.requestStats.Stat', 'goog.structs.Map', 'goog.testing.MockClock', 'goog.testing.PropertyReplacer', 'goog.testing.asserts', 'goog.testing.jsunit']); goog.addDependency("labs/net/webchannel/webchannelbasetransport.js", ['goog.labs.net.webChannel.WebChannelBaseTransport'], ['goog.asserts', 'goog.events.EventTarget', 'goog.json', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.WebChannelBase', 'goog.log', 'goog.net.WebChannel', 'goog.net.WebChannelTransport', 'goog.object', 'goog.string', 'goog.string.path']); goog.addDependency("labs/net/webchannel/webchannelbasetransport_test.js", ['goog.labs.net.webChannel.webChannelBaseTransportTest'], ['goog.events', 'goog.functions', 'goog.json', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.WebChannelBase', 'goog.labs.net.webChannel.WebChannelBaseTransport', 'goog.net.WebChannel', 'goog.testing.PropertyReplacer', 'goog.testing.jsunit']); @@ -1785,7 +1801,6 @@ goog.require('Blockly.Warning'); goog.require('Blockly.WidgetDiv'); goog.require('Blockly.Workspace'); goog.require('Blockly.WorkspaceAudio'); -goog.require('Blockly.WorkspaceComment'); goog.require('Blockly.WorkspaceDragSurfaceSvg'); goog.require('Blockly.WorkspaceDragger'); goog.require('Blockly.WorkspaceSvg'); diff --git a/blockly_uncompressed.js b/blockly_uncompressed.js index ab693314d..4ac812501 100644 --- a/blockly_uncompressed.js +++ b/blockly_uncompressed.js @@ -96,7 +96,6 @@ goog.addDependency("../../../" + dir + "/core/warning.js", ['Blockly.Warning'], goog.addDependency("../../../" + dir + "/core/widgetdiv.js", ['Blockly.WidgetDiv'], ['Blockly.Css', 'goog.dom', 'goog.dom.TagName', 'goog.style']); goog.addDependency("../../../" + dir + "/core/workspace.js", ['Blockly.Workspace'], ['Blockly.VariableMap', 'goog.array', 'goog.math']); goog.addDependency("../../../" + dir + "/core/workspace_audio.js", ['Blockly.WorkspaceAudio'], []); -goog.addDependency("../../../" + dir + "/core/workspace_comment.js", ['Blockly.WorkspaceComment'], ['Blockly.Bubble', 'Blockly.Icon', 'goog.userAgent']); goog.addDependency("../../../" + dir + "/core/workspace_drag_surface_svg.js", ['Blockly.WorkspaceDragSurfaceSvg'], ['Blockly.utils', 'goog.asserts', 'goog.math.Coordinate']); goog.addDependency("../../../" + dir + "/core/workspace_dragger.js", ['Blockly.WorkspaceDragger'], ['goog.math.Coordinate', 'goog.asserts']); goog.addDependency("../../../" + dir + "/core/workspace_svg.js", ['Blockly.WorkspaceSvg'], ['Blockly.ConnectionDB', 'Blockly.constants', 'Blockly.Gesture', 'Blockly.Grid', 'Blockly.Options', 'Blockly.ScrollbarPair', 'Blockly.Touch', 'Blockly.Trashcan', 'Blockly.VariablesDynamic', 'Blockly.Workspace', 'Blockly.WorkspaceAudio', 'Blockly.WorkspaceDragSurfaceSvg', 'Blockly.Xml', 'Blockly.ZoomControls', 'goog.array', 'goog.dom', 'goog.math.Coordinate', 'goog.userAgent']); @@ -279,6 +278,23 @@ goog.addDependency("debug/logrecordserializer_test.js", ['goog.debug.logRecordSe goog.addDependency("debug/relativetimeprovider.js", ['goog.debug.RelativeTimeProvider'], []); goog.addDependency("debug/tracer.js", ['goog.debug.StopTraceDetail', 'goog.debug.Trace'], ['goog.array', 'goog.asserts', 'goog.debug.Logger', 'goog.iter', 'goog.log', 'goog.structs.Map', 'goog.structs.SimplePool']); goog.addDependency("debug/tracer_test.js", ['goog.debug.TraceTest'], ['goog.array', 'goog.debug.Trace', 'goog.testing.jsunit', 'goog.testing.recordFunction']); +goog.addDependency("debug_loader_integration_tests/deps.js", [], []); +goog.addDependency("debug_loader_integration_tests/integrationtestcommon.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_googmodule_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_googmoduledln_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_googmodulewithdeps_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_provide_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/legacy_require_tests_providewithdeps_test.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/deps.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/googmodule.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/googmoduledln.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/googmodulerequiresgoogmodule.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/googmodulerequiresprovide.js", [], []); +goog.addDependency("debug_loader_integration_tests/testdata/provide.js", ['test.js.Provide'], []); +goog.addDependency("debug_loader_integration_tests/testdata/providerequiresprovide.js", ['test.js.ProvideRequiresProvide'], ['test.js.Provide']); +goog.addDependency("debug_loader_integration_tests/testdata/providrequiresgoogmoduledln.js", ['test.js.ProvideRequiresGoogModuleDLN'], ['test.js.GoogModuleDLN']); +goog.addDependency("debug_loader_integration_tests/testdata/providrequiresgoogmoduleget.js", ['test.js.ProvideRequiresGoogModuleGet'], ['test.js.GoogModule']); +goog.addDependency("debug_loader_integration_tests/testdata/testutils.js", [], []); goog.addDependency("defineclass_test.js", ['goog.defineClassTest'], ['goog.testing.jsunit']); goog.addDependency("delegate/delegateregistry.js", [], []); goog.addDependency("delegate/delegateregistry_test.js", [], ['goog.testing.jsunit']); @@ -757,7 +773,7 @@ goog.addDependency("labs/mock/verificationmode.js", ['goog.labs.mock.verificatio goog.addDependency("labs/mock/verificationmode_test.js", [], []); goog.addDependency("labs/net/image.js", ['goog.labs.net.image'], ['goog.Promise', 'goog.events.EventHandler', 'goog.events.EventType', 'goog.net.EventType', 'goog.userAgent']); goog.addDependency("labs/net/image_test.js", ['goog.labs.net.imageTest'], ['goog.labs.net.image', 'goog.string', 'goog.testing.TestCase', 'goog.testing.jsunit', 'goog.testing.recordFunction']); -goog.addDependency("labs/net/webchannel.js", ['goog.net.WebChannel'], ['goog.events', 'goog.events.Event']); +goog.addDependency("labs/net/webchannel.js", ['goog.net.WebChannel'], ['goog.events', 'goog.events.Event', 'goog.net.XmlHttpFactory']); goog.addDependency("labs/net/webchannel/basetestchannel.js", ['goog.labs.net.webChannel.BaseTestChannel'], ['goog.labs.net.webChannel.Channel', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.requestStats', 'goog.net.WebChannel']); goog.addDependency("labs/net/webchannel/channel.js", ['goog.labs.net.webChannel.Channel'], []); goog.addDependency("labs/net/webchannel/channelrequest.js", ['goog.labs.net.webChannel.ChannelRequest'], ['goog.Timer', 'goog.async.Throttle', 'goog.events.EventHandler', 'goog.labs.net.webChannel.Channel', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.environment', 'goog.labs.net.webChannel.requestStats', 'goog.net.ErrorCode', 'goog.net.EventType', 'goog.net.WebChannel', 'goog.net.XmlHttp', 'goog.object', 'goog.string', 'goog.userAgent']); @@ -769,7 +785,7 @@ goog.addDependency("labs/net/webchannel/forwardchannelrequestpool.js", [], []); goog.addDependency("labs/net/webchannel/forwardchannelrequestpool_test.js", [], []); goog.addDependency("labs/net/webchannel/netutils.js", ['goog.labs.net.webChannel.netUtils'], ['goog.Uri', 'goog.labs.net.webChannel.WebChannelDebug']); goog.addDependency("labs/net/webchannel/requeststats.js", ['goog.labs.net.webChannel.requestStats', 'goog.labs.net.webChannel.requestStats.Event', 'goog.labs.net.webChannel.requestStats.ServerReachability', 'goog.labs.net.webChannel.requestStats.ServerReachabilityEvent', 'goog.labs.net.webChannel.requestStats.Stat', 'goog.labs.net.webChannel.requestStats.StatEvent', 'goog.labs.net.webChannel.requestStats.TimingEvent'], ['goog.events.Event', 'goog.events.EventTarget']); -goog.addDependency("labs/net/webchannel/webchannelbase.js", ['goog.labs.net.webChannel.WebChannelBase'], ['goog.Uri', 'goog.array', 'goog.asserts', 'goog.async.run', 'goog.debug.TextFormatter', 'goog.json', 'goog.labs.net.webChannel.BaseTestChannel', 'goog.labs.net.webChannel.Channel', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.ConnectionState', 'goog.labs.net.webChannel.ForwardChannelRequestPool', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.Wire', 'goog.labs.net.webChannel.WireV8', 'goog.labs.net.webChannel.netUtils', 'goog.labs.net.webChannel.requestStats', 'goog.log', 'goog.net.WebChannel', 'goog.net.XhrIo', 'goog.net.rpc.HttpCors', 'goog.object', 'goog.string', 'goog.structs', 'goog.structs.CircularBuffer']); +goog.addDependency("labs/net/webchannel/webchannelbase.js", ['goog.labs.net.webChannel.WebChannelBase'], ['goog.Uri', 'goog.array', 'goog.asserts', 'goog.async.run', 'goog.debug.TextFormatter', 'goog.json', 'goog.labs.net.webChannel.BaseTestChannel', 'goog.labs.net.webChannel.Channel', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.ConnectionState', 'goog.labs.net.webChannel.ForwardChannelRequestPool', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.Wire', 'goog.labs.net.webChannel.WireV8', 'goog.labs.net.webChannel.netUtils', 'goog.labs.net.webChannel.requestStats', 'goog.log', 'goog.net.WebChannel', 'goog.net.XhrIo', 'goog.net.XmlHttpFactory', 'goog.net.rpc.HttpCors', 'goog.object', 'goog.string', 'goog.structs', 'goog.structs.CircularBuffer']); goog.addDependency("labs/net/webchannel/webchannelbase_test.js", ['goog.labs.net.webChannel.webChannelBaseTest'], ['goog.Timer', 'goog.array', 'goog.dom', 'goog.functions', 'goog.json', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.ForwardChannelRequestPool', 'goog.labs.net.webChannel.WebChannelBase', 'goog.labs.net.webChannel.WebChannelBaseTransport', 'goog.labs.net.webChannel.WebChannelDebug', 'goog.labs.net.webChannel.Wire', 'goog.labs.net.webChannel.netUtils', 'goog.labs.net.webChannel.requestStats', 'goog.labs.net.webChannel.requestStats.Stat', 'goog.structs.Map', 'goog.testing.MockClock', 'goog.testing.PropertyReplacer', 'goog.testing.asserts', 'goog.testing.jsunit']); goog.addDependency("labs/net/webchannel/webchannelbasetransport.js", ['goog.labs.net.webChannel.WebChannelBaseTransport'], ['goog.asserts', 'goog.events.EventTarget', 'goog.json', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.WebChannelBase', 'goog.log', 'goog.net.WebChannel', 'goog.net.WebChannelTransport', 'goog.object', 'goog.string', 'goog.string.path']); goog.addDependency("labs/net/webchannel/webchannelbasetransport_test.js", ['goog.labs.net.webChannel.webChannelBaseTransportTest'], ['goog.events', 'goog.functions', 'goog.json', 'goog.labs.net.webChannel.ChannelRequest', 'goog.labs.net.webChannel.WebChannelBase', 'goog.labs.net.webChannel.WebChannelBaseTransport', 'goog.net.WebChannel', 'goog.testing.PropertyReplacer', 'goog.testing.jsunit']); @@ -1758,7 +1774,6 @@ goog.require('Blockly.Warning'); goog.require('Blockly.WidgetDiv'); goog.require('Blockly.Workspace'); goog.require('Blockly.WorkspaceAudio'); -goog.require('Blockly.WorkspaceComment'); goog.require('Blockly.WorkspaceDragSurfaceSvg'); goog.require('Blockly.WorkspaceDragger'); goog.require('Blockly.WorkspaceSvg'); diff --git a/msg/js/ia.js b/msg/js/ia.js index 896bf4045..d83422754 100644 --- a/msg/js/ia.js +++ b/msg/js/ia.js @@ -74,9 +74,9 @@ goog.require('Blockly.Msg'); /** @export */ Blockly.Msg.EXTERNAL_INPUTS = "Entrata externe"; /** @export */ Blockly.Msg.HELP = "Adjuta"; /** @export */ Blockly.Msg.INLINE_INPUTS = "Entrata interne"; -/** @export */ Blockly.Msg.IOS_CANCEL = "Cancel"; // untranslated -/** @export */ Blockly.Msg.IOS_ERROR = "Error"; // untranslated -/** @export */ Blockly.Msg.IOS_OK = "OK"; // untranslated +/** @export */ Blockly.Msg.IOS_CANCEL = "Cancellar"; +/** @export */ Blockly.Msg.IOS_ERROR = "Error"; +/** @export */ Blockly.Msg.IOS_OK = "OK"; /** @export */ Blockly.Msg.IOS_PROCEDURES_ADD_INPUT = "+ Add Input"; // untranslated /** @export */ Blockly.Msg.IOS_PROCEDURES_ALLOW_STATEMENTS = "Allow statements"; // untranslated /** @export */ Blockly.Msg.IOS_PROCEDURES_DUPLICATE_INPUTS_ERROR = "This function has duplicate inputs."; // untranslated @@ -284,7 +284,7 @@ goog.require('Blockly.Msg'); /** @export */ Blockly.Msg.NEW_COLOUR_VARIABLE = "Create colour variable..."; // untranslated /** @export */ Blockly.Msg.NEW_NUMBER_VARIABLE = "Create number variable..."; // untranslated /** @export */ Blockly.Msg.NEW_STRING_VARIABLE = "Create string variable..."; // untranslated -/** @export */ Blockly.Msg.NEW_VARIABLE = "Nove variabile..."; +/** @export */ Blockly.Msg.NEW_VARIABLE = "Crear variabile..."; /** @export */ Blockly.Msg.NEW_VARIABLE_TITLE = "Nomine del nove variabile:"; /** @export */ Blockly.Msg.NEW_VARIABLE_TYPE_TITLE = "New variable type:"; // untranslated /** @export */ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated @@ -396,7 +396,7 @@ goog.require('Blockly.Msg'); /** @export */ Blockly.Msg.VARIABLES_SET_CREATE_GET = "Crear 'prender %1'"; /** @export */ Blockly.Msg.VARIABLES_SET_HELPURL = "https://github.com/google/blockly/wiki/Variables#set"; // untranslated /** @export */ Blockly.Msg.VARIABLES_SET_TOOLTIP = "Mitte iste variabile al valor del entrata."; -/** @export */ Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variable named '%1' already exists."; // untranslated +/** @export */ Blockly.Msg.VARIABLE_ALREADY_EXISTS = "A variabile named '%1' already exists."; /** @export */ Blockly.Msg.VARIABLE_ALREADY_EXISTS_FOR_ANOTHER_TYPE = "A variable named '%1' already exists for another type: '%2'."; // untranslated /** @export */ Blockly.Msg.PROCEDURES_DEFRETURN_TITLE = Blockly.Msg.PROCEDURES_DEFNORETURN_TITLE; /** @export */ Blockly.Msg.CONTROLS_IF_IF_TITLE_IF = Blockly.Msg.CONTROLS_IF_MSG_IF; diff --git a/msg/js/ja.js b/msg/js/ja.js index 79e8e589d..b831828f5 100644 --- a/msg/js/ja.js +++ b/msg/js/ja.js @@ -228,7 +228,7 @@ goog.require('Blockly.Msg'); /** @export */ Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "×"; /** @export */ Blockly.Msg.MATH_NUMBER_HELPURL = "https://ja.wikipedia.org/wiki/数"; /** @export */ Blockly.Msg.MATH_NUMBER_TOOLTIP = "数です。"; -/** @export */ Blockly.Msg.MATH_ONLIST_HELPURL = ""; +/** @export */ Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated /** @export */ Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "リストの平均"; /** @export */ Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "リストの最大値"; /** @export */ Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "リストの中央値"; @@ -287,7 +287,7 @@ goog.require('Blockly.Msg'); /** @export */ Blockly.Msg.NEW_VARIABLE = "変数の作成…"; /** @export */ Blockly.Msg.NEW_VARIABLE_TITLE = "新しい変数の名前:"; /** @export */ Blockly.Msg.NEW_VARIABLE_TYPE_TITLE = "New variable type:"; // untranslated -/** @export */ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; +/** @export */ Blockly.Msg.ORDINAL_NUMBER_SUFFIX = ""; // untranslated /** @export */ Blockly.Msg.PROCEDURES_ALLOW_STATEMENTS = "ステートメントを許可"; /** @export */ Blockly.Msg.PROCEDURES_BEFORE_PARAMS = "対象:"; /** @export */ Blockly.Msg.PROCEDURES_CALLNORETURN_HELPURL = "https://ja.wikipedia.org/wiki/サブルーチン"; diff --git a/msg/js/lb.js b/msg/js/lb.js index 49bc81d83..9f449bc6a 100644 --- a/msg/js/lb.js +++ b/msg/js/lb.js @@ -160,7 +160,7 @@ goog.require('Blockly.Msg'); /** @export */ Blockly.Msg.LISTS_SORT_HELPURL = "https://github.com/google/blockly/wiki/Lists#sorting-a-list"; // untranslated /** @export */ Blockly.Msg.LISTS_SORT_ORDER_ASCENDING = "ascending"; // untranslated /** @export */ Blockly.Msg.LISTS_SORT_ORDER_DESCENDING = "descending"; // untranslated -/** @export */ Blockly.Msg.LISTS_SORT_TITLE = "sort %1 %2 %3"; // untranslated +/** @export */ Blockly.Msg.LISTS_SORT_TITLE = "%1 %2 %3 zortéieren"; /** @export */ Blockly.Msg.LISTS_SORT_TOOLTIP = "Sort a copy of a list."; // untranslated /** @export */ Blockly.Msg.LISTS_SORT_TYPE_IGNORECASE = "alphabetic, ignore case"; // untranslated /** @export */ Blockly.Msg.LISTS_SORT_TYPE_NUMERIC = "numeresch"; diff --git a/msg/js/nb.js b/msg/js/nb.js index 3631b7b9a..48563070c 100644 --- a/msg/js/nb.js +++ b/msg/js/nb.js @@ -228,7 +228,7 @@ goog.require('Blockly.Msg'); /** @export */ Blockly.Msg.MATH_MULTIPLICATION_SYMBOL = "x"; /** @export */ Blockly.Msg.MATH_NUMBER_HELPURL = "https://en.wikipedia.org/wiki/Number"; /** @export */ Blockly.Msg.MATH_NUMBER_TOOLTIP = "Et tall."; -/** @export */ Blockly.Msg.MATH_ONLIST_HELPURL = ""; +/** @export */ Blockly.Msg.MATH_ONLIST_HELPURL = ""; // untranslated /** @export */ Blockly.Msg.MATH_ONLIST_OPERATOR_AVERAGE = "gjennomsnittet av listen"; /** @export */ Blockly.Msg.MATH_ONLIST_OPERATOR_MAX = "maksimum av liste"; /** @export */ Blockly.Msg.MATH_ONLIST_OPERATOR_MEDIAN = "medianen til listen"; diff --git a/msg/js/pl.js b/msg/js/pl.js index 977233dfe..4a30c8a99 100644 --- a/msg/js/pl.js +++ b/msg/js/pl.js @@ -104,7 +104,7 @@ goog.require('Blockly.Msg'); /** @export */ Blockly.Msg.LISTS_GET_INDEX_LAST = "ostatni"; /** @export */ Blockly.Msg.LISTS_GET_INDEX_RANDOM = "losowy"; /** @export */ Blockly.Msg.LISTS_GET_INDEX_REMOVE = "usuń"; -/** @export */ Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; +/** @export */ Blockly.Msg.LISTS_GET_INDEX_TAIL = ""; // untranslated /** @export */ Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FIRST = "Zwraca pierwszy element z listy."; /** @export */ Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_FROM = "Zwraca element z konkretnej pozycji na liście."; /** @export */ Blockly.Msg.LISTS_GET_INDEX_TOOLTIP_GET_LAST = "Zwraca ostatni element z listy."; diff --git a/msg/js/zh-hant.js b/msg/js/zh-hant.js index 808ce9b7c..cdc1822ed 100644 --- a/msg/js/zh-hant.js +++ b/msg/js/zh-hant.js @@ -332,7 +332,7 @@ goog.require('Blockly.Msg'); /** @export */ Blockly.Msg.TEXT_CHARAT_HELPURL = "https://github.com/google/blockly/wiki/Text#extracting-text"; // untranslated /** @export */ Blockly.Msg.TEXT_CHARAT_LAST = "取得 最後一個字元"; /** @export */ Blockly.Msg.TEXT_CHARAT_RANDOM = "取得 任意字元"; -/** @export */ Blockly.Msg.TEXT_CHARAT_TAIL = ""; +/** @export */ Blockly.Msg.TEXT_CHARAT_TAIL = ""; // untranslated /** @export */ Blockly.Msg.TEXT_CHARAT_TITLE = "在文字 %1 %2"; /** @export */ Blockly.Msg.TEXT_CHARAT_TOOLTIP = "返回位於指定位置的字元。"; /** @export */ Blockly.Msg.TEXT_COUNT_HELPURL = "https://github.com/google/blockly/wiki/Text#counting-substrings"; diff --git a/msg/json/en.json b/msg/json/en.json index 66715fcf4..4e03a6b24 100644 --- a/msg/json/en.json +++ b/msg/json/en.json @@ -1,7 +1,7 @@ { "@metadata": { "author": "Ellen Spertus ", - "lastupdated": "2018-02-16 11:14:06.797856", + "lastupdated": "2018-03-06 15:07:55.902880", "locale": "en", "messagedocumentation" : "qqq" },