{5} Assigned, Active Tickets by Owner (Full Description) (244 matches)

List tickets assigned, group by ticket owner. This report demonstrates the use of full-row display.

Results (1 - 100 of 244)

1 2 3
Ticket Summary Component Milestone Type Severity Created
#18228 [patch][test] dijit BackgroundIframe does not cover scrolled menu popup Dijit 1.14 defect Aug 20, 2014

When opening a popup containing a popup menu with a scroll-bar, part of the background can seep through. Also, when the content is scrolled, the background seeps through the part that was not visible before. See attached screenshots.

The cause of this problem is that the BackgroundIframe? that is attached to the popup wrapper does not cover the entire content of the wrapped node, nor does it cover the scrollbar.

Adding a second wrapper to handle the scrolling leaves the attached BackgroundIframe? inplace and makes sure it also covers the scrollbar. Please look at attached diff for the solution.

#18615 In SelectableLegend, need an option for automatic wrap / multi line support Charting 1.14 defect Jun 25, 2015

I am using dojo charts and added legend as new dojox.charting.widget.SelectableLegend?({

chart: c, outline: false, horizontal: true

}, divLegend.id);

Now if we have many entries or the name of the series parameters are big, legend unable to show all of them. Automatic multi-line support for SelectableLegend? is required.

#18622 Cannot single-select after multi-selecting (dojox/Selection.js) Dojox 1.14 defect Jun 30, 2015

Widgets using dojox/Selection.js, such as dojox/Calendar, suffer from an issue when multi-selecting. Once you've multi-selected an item, the last item cannot be single-selected with left-click.

Steps to reproduce: 1) Pull up a calendar with three items Foo, Bar and Baz. 2) Left-click Foo 3) Control-click Bar 4) Control-click Baz 5) Decide you want to un-select Foo and Bar, and only have Baz selected. So normal-left-click Baz.

Expected: Only Baz is selected. Actual: Foo, Bar, Baz are all selected. You must click on something else (e.g. Foo) then click Baz in order to select Baz only.

Here's a demo: http://jsfiddle.net/inanutshellus/eL7ykcyj/

FWIW, the problem is in dojox/widget/Selection's selectFromEvent function. It does this:

    this.dispatchChange(oldSelectedItem, this.get("selectedItem"), renderer, e);

The problem is that oldSelectedItem and this.get("selectedItem") are Baz. Thus, everyone relying on dispatchChange says "Oh, the old thing was Baz, the new thing is Baz, so no change happened."

Instead, dispatchChange should send all of the previously-selected items, not just the last-selected element.

#18627 Editor/SafePastePlugin: Paste to wrong position onIE11, Edge Editor 1.14 defect Jul 6, 2015
  1. open https://dojotoolkit.org/reference-guide/1.10/dojox/editor/plugins/SafePaste.html#examples in IE11
  1. open Basic Usage Example
  2. clear editor content
  3. type "a 1 b"
  4. mark "b", copy with CTRL+C

6.1 CTRL+V to open SafePasteDialog? 6.2 CTRL+V again to paste "b" into SafePaste? Dialog 6.3 Click Paste button

  1. set cursor to the end

8.1 Press CTRL+V => SafePaste? Dialog opens 8.2 Press CTRL+V to Paste "b" in SafePaste? Dialog 8.3 Click Paste button

=> expected result "a 1 bbb" Current Result is "ab 1 bb"

#18641 Max and min value in line graph nor drawn properly Charting 1.14 defect Jul 14, 2015

I am making a line graph using below details, but the max and min points are not plotted as part of the graph but are being plotted as different points.

var chart;var minValue;var maxValue;chart = new dojox.charting.Chart('defaultPCMchart782824634Id',{ margins: {l: 0,r: 0, t: 0, b: 0}});chart.addAxis('x', {includeZero:false,leftBottom:true,vertical:false,type:'Invisible',fixUpper:'major',fixLower:'major',stroke: {color:'#000000',width :2},labelFunc : function(timeInMilliSeconds){var date=calcLocalTime(timeInMilliSeconds,0.0);var formattedDate=dojo.date.locale.format(date,{locale:'en-us'});return formattedDate;}});chart.addAxis('y', {includeZero:true,leftBottom:true,vertical:true,type:'Invisible',fixUpper:'major',fixLower:'major',stroke: {color:'#000000',width :2},labelFunc: formatAxisLabel});chart.addPlot('procUtilTrendSparkLineByLpar', {type: 'Lines',tension:5, markers:true,hAxis: 'x',vAxis: 'y',styleFunc: function(item) {if(item.y == maxValue){return {stroke: {color:'#F04E37', width:2}, fill: '#F04E37' };}else if(item.y == minValue){return {stroke: {color:'#FFE34F', width:2}, fill: '#FFE34F' };}else {return {stroke: {color:'#EDEDED', width:1}, fill: '#4682b3' };}}});chart.addSeries('procUtilServerUsageTrafficLine',[{x:1436263200000.000,y:0.002,tooltip:null},{x:1436270400000.000,y:0.003,tooltip:null},{x:1436277600000.000,y:0.002,tooltip:null},{x:1436284800000.000,y:0.003,tooltip:null},{x:1436292000000.000,y:0.003,tooltip:null},{x:1436299200000.000,y:0.003,tooltip:null},{x:1436306400000.000,y:0.009,tooltip:null},{x:1436313600000.000,y:0.002,tooltip:null},{x:1436320800000.000,y:0.002,tooltip:null},{x:1436328000000.000,y:0.002,tooltip:null},{x:1436335200000.000,y:0.003,tooltip:null},{x:1436342400000.000,y:0.003,tooltip:null},{x:1436349600000.000,y:0.003,tooltip:null},{x:1436356800000.000,y:0.003,tooltip:null},{x:1436364000000.000,y:null,tooltip:null},{x:1436371200000.000,y:null,tooltip:null},{x:1436378400000.000,y:null,tooltip:null},{x:1436385600000.000,y:null,tooltip:null},{x:1436392800000.000,y:null,tooltip:n

#18736 Double input node in FileInput widget DojoX Form 1.14 defect Oct 16, 2015

Using dojox.form.FileInput? widhet results in doubled input tag. This node:

<input data-dojo-type="dojox.form.FileInput?" id="user_logo" name="user[logo]" />

is expanded to the following block:

<div widgetid="user_logo" class="dijitFileInput ">

<input id="user_logo" class="dijitFileInputReal" dojoattachpoint="fileInput" name="user[logo]" type="file"> <div class="dijitFakeInput">

<input id="user_logo" name="user[logo]" tabindex="0" class="dijitFileInputVisible" dojoattachpoint="focusNode, inputNode" type="text"> <div class="dijitInline dijitFileInputText" dojoattachpoint="titleNode">Browse ...</div> <div class="dijitInline dijitFileInputButton" dojoattachpoint="cancelNode" dojoattachevent="onclick:reset">Cancel</div>



Final block contains 2 input HTML elements with same is and name:

<input id="user_logo" name="user[logo]" type="file" class="dijitFileInputReal" dojoattachpoint="fileInput" > <input id="user_logo" name="user[logo]" type="text" class="dijitFileInputVisible" dojoattachpoint="focusNode, inputNode" tabindex="0" >

Submitting of the form with this HTML block leads to sending incorrect data to form handler and the file is not uploaded to a server.

My workaround:

this.inputNode.setAttribute('name', 'fake-' + this.inputNode.getAttribute('name'));

#18745 Threshold Indicator vertical fill fails Charting 1.14 defect Oct 29, 2015

In the threshold chart, configuring a vertical threshold fails to fill between the lines.

If you change thresholdual to "vertical: true" the fill does not appear as expected. http://archive.dojotoolkit.org/nightly/dojotoolkit/dojox/charting/tests/test_threshold.html

This seems to be due to the fill not properly accounting for the differences between vertical and horizontal cases. The issue may be in Indicator.js:_updateIndicator where the rectangle for linefill is created. It could also be in _renderIndicator, the return may just need to swap x1/x2 and y1/y2 in the vertical case.

#14734 a11yclick event for DOM elements Events 1.15 feature Feb 5, 2012

Description So as to faciliate the rapid development of accesible rich internet applications, providing an "a11yclick" event like

on(node, "a11yclick", handle);

for native DOM elements should expand in the background to

on(node, "click", handle);

on(node, "keypress", function(e){
  if(e.keyCode == keys.ENTER) {

Discussion From the point of view of accessibility, simple click events are not of much use. There must be ways to trigger an action by mouse and keyboard. Rarely are there cases in which only a "click" event is used (although the use of click-events only is a widespread phenomena in the internet). In most cases you have to set up both handlers, for click and keypress (if you want to do it correctly, as the webstandards say). The Dojo toolkit should support the programmer in this task. a11yclick should expand in the background always to a click and keypress handler.

#17175 dom-geometry.normalizeEvent does not normalize offsetX/Y HTML 1.15 defect May 20, 2013

The reference guide and code comments claim that normalizeEvent normalizes offsetX and offsetY. These properties are not provided in Firefox, and they are not normalized by normalizeEvent.

#17191 wrong constraints for parentConstrainedMoveable in a parent with position: absolute; DnD 1.15 defect May 23, 2013

a parentConstrainedMoveable that is in a parent that is absolutely positioned has it's constraints offset by the parent's position - see http://jsbin.com/ajimef/1/edit for an example.

i was expecting that the constraints would not have been affected by the parent's position.

my use case for this was a widget in the center region of a BorderContainer? that has a moveable node constrained to the domNode of the widget. the BC will use absolute positioning to position the domNode which results in the situation you see in the link above.

#17538 [patch] Locale not being set in Windows 8.1 Internationalization 1.15 defect Oct 30, 2013

Dojo is not detecting the locale at startup under Windows 8.1. It is likely due to the OS being responsible for the locale (rather than the browser) although we are unsure as to how to get around it. It is throwing an error:

0x800a138f - JavaScript? runtime error: Unable to set property '$locale' of undefined or null reference

When we run the non minified codebase it seems to be being thrown from:

current.$locale = availableLocales.specificity;

#10774 [patch]Selecting dropped option in dNd MultiSelect widget DnD 1.15 defect minor Feb 22, 2010

Target is created from dijit.form.MultiSelect. Source is defined in markup on the top of div tag using dojo.dnd.Source (from test_dnd.html example).

Expected result:

Drop some item(s) on the select widget. Behavior of dropped item(s)/option(s) does not differ from the behavior of options defined in markup.

Actual result:

Dropped options cannot be selected using Google Chrome. Actually there is a workaround. One needs to set focus on the select widget and then dropped option can be selected/unselected. Problem is not present in FireFox.

Tested in Google Chrome 5.0.322.2 dev and FireFox 3.5.8 on Ubuntu Karmic Koala x64.

#14029 [patch][cla]dojox.mdnd Moveable throwning error Dojox 1.15 defect minor Sep 30, 2011

Moving DnD items when the onDrop event is fired requires you to first un-register them and then re-register them after moved. In this scenario dojox.mdnd.Moveable was throwning an error onMouseUp that 'this.node' is null (destroy was called on unregister).

#9411 Remove dojo.indexOf() call in dojo.NodeList-traverse's _getUniqueAsNodeList Query 1.15 enhancement normal Jun 15, 2009

The for loop in the code fragment below could be further optimized. According to this article loop #3 is faster compared to loop #2. There are other places in dojo where loop #3 could be used instead of loop #2.

	_getUniqueAsNodeList: function(nodes){
		// summary:
		// 		given a list of nodes, make sure only unique
		// 		elements are returned as our NodeList object.
		// 		Does not call _stash().
		var ary = [];
		//Using for loop for better speed.
		for(var i = 0, node; node = nodes[i]; i++){
			//Should be a faster way to do this. dojo.query has a private
			//_zip function that may be inspirational, but there are pathways
			//in query that force nozip?
			if(node.nodeType == 1 && dojo.indexOf(ary, node) == -1){
		return dojo._NodeListCtor._wrap(ary);	 //dojo.NodeList

#10075 Stale dojox.fx.slideBy Parameters fx 1.15 defect normal Oct 10, 2009

It seems that if dojox.fx.slideBy calculates where the node should end up during animation construction.

I attached two tests (A and B). In test A both animations are cached on an instance of the Animation class. CLicking on the blue box slides the node up (Expands it upward). Clicking the orange box slides it down (Actually collapses it downward).

In test B the result is as expected. The node just collapses back down to 0 height.

In test A the node collapses, but moves further than originally expected. It slides 200 units, instead of 100 units.

SIDE NOTE: Should it be possible to do this: var animation = dojox.fx.wipeTo();

And then just set the parameters later, prior to playing the animation?

#10077 dojox.fx.wipeTo Cannot Wipe to 0 width fx 1.15 defect normal Oct 10, 2009

This does not work:

var currentNodeWipeOutParameters =

{ node: "currentNode", height: 100, width: 0, duration: 300


var currentNodeWipeOutAnimation =



But this does:

var currentNodeWipeOutParameters =

{ node: "currentNode", height: 100, width: 1, duration: 300


var currentNodeWipeOutAnimation =



Applied to this node:

<div id="currentNode"

style=" background-color: black;

top: 200px; left: 100px; width: 100px; height: 100px; position: absolute;">


#10536 [test case] dojox.json.ref: resolveJson should merge attributes from $ref objects to index instances Dojox 1.15 enhancement normal Dec 18, 2009

Suppose we have a partially loaded object in the index, e.g.

index["1"] = {a: 2, _loadObject: ...}

Now, in a subsequent JSON message, the same id is used in another reference, but with different eagerly-provided attributes, e.g.

{$ref: "1", b: 3}

Currently, resolveJson will not add attribute "b" to the instance already in the index, so the information about attribute "b" is essentially lost. I believe it is a common use case to supply references to the same object with different eagerly-provided attributes in each reference.

Attached is a patch to dojox/json/tests/ref.js that includes a small test case for this issue.

#10724 dojo.position return different values on WebKit based platforms HTML 1.15 defect normal Feb 5, 2010


  • Create a group shape -> shape = owner.createGroup();
  • transform the shape (x, y) ->

shape.setTransform(null); var matrix = { xx: 1.0, yy: 1.0, dx: 100, dy: 100 }; shape.setTransform(matrix);

  • Query for it's position -> dojo.position(shape.rawNode, true);

In FireFox? it returns the translated value relative to it's parent. In WebKit? browsers (Safari / Chrome) it is unchanged.

#11190 dojo.date.locale.parse handles 'S' token incorrectly Date 1.15 defect normal May 21, 2010

according to http://www.unicode.org/reports/tr35/tr35-4.html#Date_Format_Patterns 'S' is supposed to be "Fractional Second - rounds to the count of letters" but it is currently always being handled as milliseconds only.

if you look carefully at something like this

dojo.date.locale.parse("2010-05-21 09:39:03.455229", {datePattern: 'yyyy-MM-dd', timePattern: 'HH:mm:ss.SSSSSS'})

you will find that it's treating '455229' as milliseconds which then becomes equivalent to 455.229 seconds and so in firefox (didn't try other browsers) the resulting time becomes 9:46:38.229.

there is a note in dojo.date.locale.parse (line 446)

	// Check for overflow.  The Date() constructor normalizes things like April 32nd...
	//TODO: why isn't this done for times as well?

but i couldn't find an open bug so since i've stumbled across this problem i thought i'd open a ticket.

the same problem also causes

dojo.date.locale.parse("2010-05-21 09:39:03.4", {datePattern: 'yyyy-MM-dd', timePattern: 'HH:mm:ss.S'})

to treat the '4' as milliseconds rather than as tenths and so the time ends up with 03.004 seconds when it should be 03.4 seconds.

the way the code is currently, the 'S' token is only handled properly when it is used as 'SSS'.

currently i work around it by using a timePattern like 'HH:mm:ss.X' which causes all the fractions of a second to be ignored since 'X' (or any other token not having meaning) will be ignored. this works out ok because i don't really care about fractions of a second (or seconds) except for when they overflow and throw off the minutes.

#14078 [patch] [cla] dojo.hash doesn't work on IE for sites using document.domain Core 1.15 defect normal Oct 10, 2011

Some corporate sites use document.domain to become allow cross-site access between frames with different host names but same domain name. When used together with dojo.hash, this throws a Permission Denied error in IE 6-8 as these are using the IE workaround with a hidden iframe.

What's happening is that the page is then on another security domain than the hidden iframe, and the page is not allowed to access the window.location property on the iframe. Example:

    document.domain = "dojotoolkit.org";
    <iframe src="www.dojotoolkit.org/dojo/resources/blank.html">

The error can be verified with the following test case when deploying on a sub-domain such as www.dojotoolkit.org:

<!DOCTYPE html>
<!-- This test to be served on www.dojotoolkit.org and opened in IE 6/7/8 -->
			document.domain = "dojotoolkit.org";
		<script src="dojo/1.6.1/dojo/dojo.js"></script>

			dojo.ready(function() {

The solution is to make sure the hidden iframe sets the same document.domain as its parent page.

I have provided a patch that supplies the desired domain as a parameter to the iframe, and then also makes sure to wait for onload in the iframe before doing anything with it, to make sure that the domain has been set.

We are currently running with this tweak in production on 1.6.1 so it would be great to see it included in 1.6.2.

#16944 portable gesture events Events 2.0 feature Mar 30, 2013

dojox/gesture only works on webkit browsers. It depends on evt.touches[] being defined, which is not defined for Microsoft Surface events. We should have a module with synthetic gesture events that works on all touch devices.

On Microsoft, you should use MSGesture* events for tracking zoom, rotation, etc. See http://blogs.msdn.com/b/ie/archive/2011/09/20/touch-input-for-ie10-and-metro-style-apps.aspx for details.

If you need to define some non-standard gesture behavior, then you would have to monitor MSPointerMove events, but that's quite different from touchmove events because IIUC each finger on the screen generates independent MSPointerMove events, rather than having a single touchmove event with information about each finger. Thus, the code and API of dojox/gesture/Base likely needs to be redesigned.

#13214 enhance builder to execute subset rebuild BuildSystem 2.0 enhancement normal Jun 9, 2011

The v1.6- has the option buildLayers that allowed just rebuilding certain layers. This option could result in errors if changes were made to the code outside the layers directed to rebuild.

The 1.7+ builder should be enhanced to write out an internal state of a build (say a big file including all resources in various states of transition), and then have an update option where it reads the previous internal state, finds any changes in the sources, and then outputs a new, clean build. This should make builds during dev go much faster.

Adrian Vasiliu (2 matches)

Ticket Summary Component Milestone Type Severity Created
#18814 dojox/mobile/RadioButton: dot-circle misalignment for selected radio buttons on some browsers DojoX Mobile 1.14 defect Mar 16, 2016

The rendering of dojox/mobile/RadioButton shows in some browsers a misalignment between the internal dot marking that a radio button is selected and the external circle. See attached screenshot.

Reproduced with current 1.10 branch (future 1.10.5) on :

  • FF 38.5 ESR / Win7 (also hurts with Dojo 1.10.1).
  • Safari / iOS 9.2.1 (iPhone 6) (also hurts with Dojo 1.10.1).
  • Chrome / Nexus 5 / Android 6.0.1 (does NOT hurt with Dojo 1.10.1 where selected radios show a checkmark, not a blue dot...)

Does not hurt on Chrome / Win7 and IE11 / Win7.

Note that version field of this ticket is set to 1.10.4 because there's no available option for current 1.10 branch or future 1.10.5.

#18815 dojox/mobile/RadioButton: circle misaligned with label on some browsers DojoX Mobile 1.14 defect Mar 16, 2016

The rendering of dojox/mobile/RadioButton shows in some browsers a vertical misalignment between the circle of each radio and the label near it. This holds regardless the selection state of the radio button. See attached screenshot.

How to reproduce: open for instance dojox/mobile/tests/testFormLayout.html and check the rendering of the RadioButton?.

Reproduced with current 1.10 branch (future 1.10.5) but also with Dojo 1.10.1 on :

  • IE11 / Win7
  • FF 38.5 / Win7
  • FF 45.0.2 / Mac OS X 10.11.4

For comparison, the issue does NOT hurt Chrome 48 / Win7, Chrome 49 / Mac OS X 10.11.4, Safari / Mac OS X 10.11.4.

Bryan Forbes (2 matches)

Ticket Summary Component Milestone Type Severity Created
#16483 dojox.io.windowName broken in IE10 Dojox 1.15 defect Dec 18, 2012


When I make a cross domain GET (From Http -> To Https) call using windowName in IE10 I don't get any results back. The frame.contentWindow.name upon onload is the blank page url: https://mydomain/dojo18/dojo/resources/blank.html#0 and not the returned string from the request page. I tested my example in FF, IE9, and Chrome all are ok.

sample code:

var dfd = windowName.send("GET", {

url: "https://mydomain/dojo18/datatest.jsp", handleAs:"text"

}); dfd.addBoth(function(result){




#18385 "dojo/text" not work on Windows Phone 8 platform. Core 1.15 defect Nov 25, 2014

On Windows Phone 8 platform when using "dojo/text" to load local resource, dojo will automatically choose normal XMLHttpRequest object(through new XMLHttpRequest()) to perform the AJAX call. While for some reason this seems not worked by default and we need change to Microsoft specific object instead(ActiveXObject("Microfost.XMLHTTP"))

I managed to make dojo/text works as expected on WP8 by replacing the XHR object to "Microfost.XMLHTTP", but I don't think this is a good workaround since it's not official fix and may bring unexpected behaviors.

Test sample code (with other devices it works):

require(dojo/text!something.html?, function(something){

something = contents of something.html


Note: this issue only happends within WP8 app(through Cordova for example), the "dojo/text" feature works normally if you use system embeded IE directly.

Evan (1 match)

Ticket Summary Component Milestone Type Severity Created
#16676 dojox/gesture/tap causes later events to fail on Android < 4.1 and IOS Dojox 1.14 defect Feb 5, 2013

When an application listens to tap events, for example:

 on(node, tap.hold, handler);

no "click" events are fired after that on the node.

This can be reproduced with the attached test case (modified version of dojox\gesture\tests\test_gesture.html): on a mobile browser (for example an iphone/ipad), press and release over the inner/outer node, no "click" log is displayed, whereas it is correctly displayed on a desktop browser, or an Android 4.1+ device.

What causes this is the preventDefault() call in dojox/gesture/Base::_process. On most mobile OS's, this has the effect that the browser will not perform its default action of (among others) firing a "click" after a "touchstart"/"touchend" sequence. Android 4.1, on the other hand, still fires a click even if preventDefault() was called.

Feneric (2 matches)

Ticket Summary Component Milestone Type Severity Created
#14640 svg2gfx.xsl fails to detect exsl:node-set capability DojoX GFX 1.15 defect normal Jan 18, 2012


while debugging svg2gfx in Eclipse Indigo using Xalan 2.7.1 as processor, gradient stop colors weren't processed correctly, but a message "exslt:node-set is required for processing the style attribute." is thrown in line 698 (within <xsl:template match="@style">). Xalan, however, does support this extension; at least, the stop colors do get processed fine when changing the test condition in line 681 from

<xsl:when test="function-available('exsl:node-set')">


<xsl:when test="function-available('exsl:nodeSet')">.

Please find attached the file I was working on when stepping into this issue.

#11427 Incremental Improvements to svg2gfx.xsl DojoX GFX 1.15 enhancement minor Jul 7, 2010

I have attached a patch to svg2gfx.xsl that removes some of the unnecessary trailing commas left by the conversion. It does not (yet) remove all of them, just the simple cases with elements.

bill (14 matches)

Ticket Summary Component Milestone Type Severity Created
#16791 [Patch CLA] dijit/form/Select: Support placeHolder for empty selects Dijit - Form 1.14 enhancement Mar 4, 2013


There is currently no way to specify some kind of placeholder text for empty selects (as it is easily possible for FilteringSelects by textbox's placeHolder attribute). The added patch adds such capabilities.


My problem was, that _setDisplay is not called for initially empty selects. So I added some code to startup(). Or should rather _FormSelectWidget's _setValue be changed?

#17803 Select set("options", ...) doesn't work Dijit - Form 1.14 defect Mar 22, 2014

If I set data manually, selected value is not displayed. I must call startup() method after setting.

<select id="select" data-dojo-type="dijit/form/Select" name="values"></select>

var data = [{label: "Label 1", value: 1}, {label: "Label 2", value: 2, selected : true}]; var select = registry.byId("select"); select.set("options", data);

#18559 Dijit/Dialog sticks to mouse after right click on header in Chrome Dijit 1.14 defect Apr 14, 2015

If you do a right click on a dialog in Chrome, the Dialog sticks to the mouse (like when you're dragging it). This can be tested in http://livedocs.dojotoolkit.org/dijit/Dialog, and just run the first sample. Then right click on the head of the dialog, and then outside of the (browser) context menu.

I cannot reproduce this in Firefox or Internet Explorer.

Dojo version 1.10.4 Chrome Version 41.0.2272.118 (64-bit) OS: Ubuntu 14

#10819 [patch][cla][needs update to AMD] add function to return selected value in a checkbox/radio Dijit - Form 1.14 enhancement normal Mar 5, 2010

Currently there is no API method that allows to return the selected value of a radio button or of a checkbox easily. One must use dojo.query/filter/map. While it seems I was able to obtain one recipe to obtain the said information or another, a built in method that allowed to do that would be very convenient and more straight forward to use to the average user. I believe Karl Tiedt/tk/Tekky has a patch handy that would allow to return the selected value in a radio/checkbox. JR

#15104 auto-detect border-box box model HTML 1.15 enhancement Mar 29, 2012

setMarginBox has incorrect results on an element with box-sizing: border-box,

in firefox 10, shrinks the box by the size of padding + border in chrome 19, it also moves the box.

open the attached file in a browser and call box("a") through box("c") in the console.

#17659 ValidationTextBox: don't fire onchange when trimmed value hasn't changed Dijit - Form 1.15 defect Jan 6, 2014

Don't fire the onchange event when only pasting \t to ValidationTextBox?.

#18101 popup.js miscalculates height unless position == "above", "below" Dijit 1.15 defect Jun 20, 2014

dijit/popup#open() has code to limit the height of a popup so it fits within the viewport. It works well in the common case where the positions to try are the default ["below", "below-alt", "above", "above-alt"].

However, if the positions are just ["below"], then it may make the dropdown too tall. See the popup.html test case, the "show tall drop down" button, after making your browser window small enough so that the button is near the bottom.

That button is configured to always put the drop down below the button, even when there's more room above the button than below it. However, this code in popup.js calculates the maximum height for the dropdown under the assumption that position == above *or* below:

maxHeight = Math.floor(Math.max(aroundPos.y, viewport.h - (aroundPos.y + aroundPos.h)));

Looks like it's also wrong when the position is "left" or "right" because in that case, it will make the height smaller than necessary.

#18145 _HasDropDown: provide a maxWidth property Dijit 1.15 enhancement Jul 1, 2014

The forceWidth and autoWidth properties do not cover all usability cases. In some of this cases it has been necessary to limit, with autoWidth property enabled, the drop-down horizontal extent inside a viewport and avoid going beyond the right edge.

#18150 dojo/touch still emits synthetic click after touchstart/touchend.preventDefault() Events 1.15 defect Jul 7, 2014

Calling evt.preventDefault() on a touchstart, touchmove, or touchend event generally cancels the click event from occurring. Albeit, as documented in #15878, that didn't happen on Android 4.1.

However, dojo/touch still fires a synthetic click when the touchstart, touchmove, or touchend were prevented.

Seems like a bug, but it's hard to change because judging from #15878, dojox/mobile is depending on this behavior. Likewise, the code added in #17816 depends on it too.

#18238 TooltipDialog + dojox/layout/ContentPane loads drop-down content twice on first show Dijit 1.15 defect Aug 23, 2014

When clicking on the button to display the drop-down, the dijit/form/DropDownButton#isLoaded method is called by dijit/_HasDropDown to determine how to interact with the drop-down component. When this method returns true, the drop-down is simply shown and its _onShow method is called. When this method returns false, DropDownButton#loadDropDown is called instead, which calls the refresh method of the drop-down component, which in the case of ContentPane? causes it to load its content.

Once the content is loaded, ContentPane#_onShow is called. When refreshOnShow is false, this is fine, because _onShow doesn’t do anything extra. However, when refreshOnShow is true, TooltipDialog#refresh gets called again, triggering the duplicate request. This only happens the first request because the DropDownButton#isLoaded method returns true for subsequent clicks on the drop-down button. It also only occurs with the dojox ContentPane? because it introduces an asynchronous rendering codepath. Whereas the default content setter operates synchronously from the time the XHR completes and the time the content is actually rendered, and therefore ContentPane#_xhrDfd exists to prevent the duplicate call to refresh, dojox ContentPane?’s content setter performs additional asynchronous operations (parsing and loading modules), and so the XHR object is deleted (because the XHR is done) before the content is “shown”.

PR forthcoming, since there are zero non-robot tests for this component, and I don’t have time to write something from scratch.

#18303 Regression : onkeypress not triggered on Firefox if focus is on an input Field Dijit - Form 1.15 defect Oct 7, 2014

I noticed a regression since V1.10.0, on Firefox only. The onkeypress connected on document (or on window) does not trigger when the focus is in an input field. If focus is outside an inout field, it works fine. Works fine with IE and Chrome. Also worked fine on V1.9.3. (I tested with V1.10.1 : issue still exists)

Here is a js exemple. Try and add a validationTextBox :

if focus in the textbox, then onkeypress is not triggered if focus outside the textbox, then onkeypress is not triggered

      var onKeyPressFunc = function(event) {
console.log("onKeyPressFunc Window for key '"+event.keyChar+"'");
        if(event.ctrlKey && event.keyChar == 's'){
        } else if (event.keyCode==dojo.keys.F1 && ! event.keyChar) {
      dojo.connect(document, "onkeypress", null, onKeyPressFunc);

#18325 FilteringSelect shows a validation error for async stores when pressing enter in IE Dijit 1.15 defect Oct 21, 2014

When using an asynchronous store in Internet Explorer, when you enter a valid value in a FilteringSelect?, and press enter before the async store has completed its query, the FilteringSelect? shows a validation error. This is readily reproducible in all versions of Internet Explorer (that I have tested) with the test_FilteringSelect.html, by entering a valid state in the "Artificially slowed-down data store" FilteringSelect?, and quickly pressing enter.

The problem is due to the fact that when you press enter in a textbox in IE, it will immediately move focus to the submit button of the form. Normally, the enter key will end up triggering a _AutoCompleteMixin#_setBlurValue call from _onKey. However, when the enter causes a change in focus, a blur event also triggers the _setBlurValue method call a second time. The _setBlurValue method is not prepared to handle two rapid sequential calls. The this.item value is expected to be undefined if the fetch for the item is in process, but the line https://github.com/dojo/dijit/blob/master/form/_AutoCompleterMixin.js#L335 sets item to null, so the second time through, item is null and this is understood to mean that the fetch has completed and not found any matching item, and triggers the _refreshState method which then performs validation while the fetch is actually still in flight.

As far as I can tell, the correct solution here is simply to remove line 335 (this.item = null) from _AutoCompleterMixin.js, so that the item is still undefined, denoting that it is still in flight. With this line removed, the issues seems to be resolved and all the other tests seem to work properly.

#13769 [patch][cla]Circular dependency in dojo/dom-attr HTML 1.15 defect major Aug 29, 2011

I'm seeing a circular dependency in dojo/dom-attr. Here is the dependency chain :


#11145 TextArea: placeHolder parameter does not work for dijit.form.SimpleTextarea widgets Dijit - Form 2.0 defect normal May 14, 2010

Hi, in the release notes it says that the placeholder HTML5 parameter has been implemented for all textbox widgets. dijit.form.SimpleTextarea is a textbox widgets but the placeholder parameter doesn't seem to be working for it. See attached test file. This ticket should be assigned to LiuCougar.

bpayton (1 match)

Ticket Summary Component Milestone Type Severity Created
#17801 [patch][cla] Convert dojox/image/* and dojox/widget/RollingList to AMD DojoX Widgets 1.15 defect Mar 21, 2014


cjolif (3 matches)

Ticket Summary Component Milestone Type Severity Created
#17381 [cla][partial pr] Incorrect (asymmetric) margins with rotation option set for labels Charting 1.15 enhancement Aug 14, 2013

The chart's margins are calculated incorrectly if tick labels are rotated. Sample code demonstrating the issue is attached.


#12548 [patch][ccla]Chart: Legend is not ordered correctly with Clustered Horizontal Bar chart Charting 1.15 defect normal Mar 28, 2011

(1) Use dojox.charting.widget.Legend to add legend to Clustered Horizontal Bar Chart.

(2) The visually order of legend is not correct, the legend show with a reversed order of the bars.

Please look at the attached charting image.

#14648 Enhance dojox.charting widget markup to respect latest standards (AMD MID, data-* attributes) Charting 1.15 enhancement normal Jan 20, 2012

Currently the dojox.charting.widget.Chart does itself the "parsing" of its sub elements and does not support:

1/ data-dojo-type, data-dojo-props attributes

2/ mid when a class is expected in an attribute (includes theme attribute at Chart level, see also: http://bugs.dojotoolkit.org/ticket/13778#comment:30)

Also maybe the widget should leverage parser markupFactory feature instead of doing the parsing in buildRenderering.

Colin Snover (1 match)

Ticket Summary Component Milestone Type Severity Created
#17155 The content of a flattened _ROOT nls bundle is not taken into account Loader 1.15 defect May 15, 2013

We found something very strange regarding how dojo treat nls modules included in a _Root flattened bundle compare to the case of _<locale> flattened bundles. For example, my dojo build does not have "en" or "en_us" included in the generated locales. So, when the page loads up with "en" or "en_us" locale, dojo will fallback to load the _Root flattened bundle for the nls. Compare to other locale, e.g., fr, which is one of the generated locales, when page loads up with "fr" locale, dojo will load the _fr flattened bundle, and not the individual files. However, whenever dojo falls back to use the _Root nls flattened bundle, it does not seem to recognize the nls modules inside the layer _ROOT, in fact, it tries to load individual nls file again.

From what I see in the dojo/i18n code, the problem seems to be due to the fact that, in the case the current locale is not in the list of the preloaded locales, the i18n plugin will load the _ROOT bundle, and a root bundle contained in a flattened bundle is cached in the loader cache with a mid like "myapp/nls/mybundle/ROOT" (done in the i18n.preload() function). But then, when a require for this bundle is done, (e.g requiredojo/i18n!myapp/nls/mybundle?), the i18n plugin will falls back to its "new 1.7 default" behavior implemented in doLoad(). Which means, it first requires the root bundle before iterating over the possible locales:

doLoad = function(require, bundlePathAndName, bundlePath, bundleName, locale, load){
  require([bundlePathAndName], function(root){
    var current = lang.clone(root.root),
	availableLocales = getAvailableLocales(!root._v1x && root, locale, bundlePath, bundleName);
    require(availableLocales, function(){

The problem here is that the root bundle is loaded using its "original" mid (aka "myapp/nls/mybundle") instead of the one used during the preload phase (aka "myapp/nls/bundle/ROOT").

To summarize, it seems to me there's an inconsistency in the ways a root bundle is identified when it is loaded via a preloaded flattened bundle (cached using the "myapp/nls/bundle/ROOT" id) and when it is loaded during the fallback path in doLoad().

Dasa Paddock (1 match)

Ticket Summary Component Milestone Type Severity Created
#18129 [patch][cla] multiple dojo instance does not work as expected when using layers Loader 1.14 defect Jun 26, 2014

Let's consider the following config:

map: {
    'application1': {
        'dojo': 'dojo1.9'
    'application2': {
        'dojo': 'dojo1.10'
packages: [
        name: 'application1',
        location '/apps/1'
        name: 'dojo1.9',
        location '/apps/1/dojo'
        name: 'application2',
        location '/apps/2'
        name: 'dojo1.10',
        location '/apps/2/dojo'

Consider now that application1 is loaded first. In this application you have a button that load application2.

When I use non-builded code, requiring dojo/string from application2/myWidget load the file '/apps/2/dojo/string.js' as expected.

However, if application1 is a layer and application2 is also a layer, then requiring dojo/string from application2/myWidget resolve as '/apps/1/dojo/string.js'

This is due to the exclusion of mapProg in getModuleInfo: the change: https://github.com/dojo/dojo/commit/1d414f3b24fe22cc8f3ae8c3326d9693d3e70d47 the bug: #17475 the reason of that choice is described here : https://bugs.dojotoolkit.org/ticket/17475#comment:6

As a result: if the application1's layer does not contains the module required by application2, then it will be loaded from the separate file (it resolve to the right URL, but the layer become useless). Even worse if application1's layer contains the module it loads it from here, but the version might be totally different!

I think the maps should always be passed.

Note: it affect dojo 1.8+

dg (13 matches)

Ticket Summary Component Milestone Type Severity Created
#18458 dojox.calendar.calendar startTimeAttr not work Dojox 1.14 defect Jan 16, 2015

it works perfect in the following case.

var store = new Observable(new Memory({data: [

new Calendar({
	decodeDate: function(s){return stamp.fromISOString(s);},
	encodeDate: function(d){return stamp.toISOString(d);},

but it fail once I change the startTimeAttr and endTimeAttr like this.

var store = new Observable(new Memory({data: [

new Calendar({
	startTimeAttr: "begin",
	endTimeAttr: "end",
	decodeDate: function(s){return stamp.fromISOString(s);},
	encodeDate: function(d){return stamp.toISOString(d);}

#18596 dojox/Calendar next/previous buttons break when used with minDate/maxDate Dojox 1.14 defect May 28, 2015

There's some strange behavior with the next/previous buttons on the Month view when you use minDate/maxDate.

If you click Next, the view stops changing (which is desirable). If you click Next again, however, you'll notice it now takes you 2 clicks of the Previous button to be able to change months again.

For example:

Let's say December is the last viewable month, and you're currently on NOV.

NEXT DEC  <-- You hit the max, and can't continue. This is desired.
PREV DEC  <-- PREV at this point should send you back to NOV
PREV NOV  <-- After a second PREV you go to NOV

     NOV  <-- Another example to show it gets progressively worse as you click.
NEXT DEC  <-- Must click PREV 4 times to get to NOV. Should be 1.

I have an example of the behavior here:


There's also a proposed solution there (uncomment line 31).

#18662 dojox/calendar/SimpleColumnView creates wrong Date-objects Dojox 1.14 defect Aug 11, 2015

when constructing the column labels (line 1231), a new Date() is constructed - instead the newDate() function from ViewBase? or the dateClassObj (as in _layoutTimeIndicator-function) should be used to allow custom date-object-types

var d = this.newDate(new Date());

we are using the calender in a timezone-aware environment (we are not using the client timezone). therefore we are using a custom date implementation (via datePackage) which correctly handles setHours() etc.

#18663 dojox/calendar/Calendar should propagate datePackage to views Dojox 1.14 enhancement Aug 12, 2015

If a custom datePackage has been set, it's value should be automatically propagated to the nested Views.

#18688 dojox/calendar/CalendarBase constructor handles properties oddly Dojox 1.14 defect Aug 31, 2015

The constructor function for dojox/calendar/CalendarBase reads some values from args (for example, look in dojox/calendar/CalendarBase.js.uncompressed.js around line 295 and following, and see that we're reading DatePackage? from args. But what if we wanted to sublcass Calendar, and the subclass declaration provided a value for DatePackage? -- it wouldn't be picked up here.

On IRC, kgf suggested doing this in "postMixInProperties".

#18764 dojox/calendar/MatrixView Error after inserting new Item in store Dojox 1.14 defect Dec 6, 2015

After inserting a new item in the observable memorystore while the calendar is open on a hidden tab in my tabContainer I click on the calendartab and while its coming into view my browser console shows an error in line 680 of src-version of MatrixView?:

var d = renderData.dates[i][0];

I fixed this by switching the array indices into what I think is the correct order:

var d = renderData.dates[0][i];

I didn't dig into this deeper, so I would appreciate if this bugfix could be confirmed by someone more experienced in troubleshooting dojox/calendar.


#16987 dojox.calendar.Calendar, cannot declare a '1-col' columnView from 'endDate' and 'startDate' data-dojo-props DojoX Widgets 1.15 defect Apr 9, 2013


Currently the dojox.calendar.Calendar cannot be configured with startDate and endDate properties such that it results in one-column columnView.

In the following code, endDate == startDate. We can reasonably expect that the columnView displays only one column.

<div data-dojo-id="calendar"

data-dojo-type="dojox.calendar.Calendar" data-dojo-props="startDate: new Date(2013,0,1), endDate: new Date(2013,0,1)"></div>

But the columnView displays 2 columns.

I found that dojox.calendar.CalendarBase? increments the "endDate" property twice (instead of once): [1] at line 379 _validateProperties(), [2] at line 499 computeTimeInterval()

Hope that it will help.


Claude Guyomard

#17009 dojox.calendar class files vs. common conventions Classes implement DojoX Widgets 1.15 enhancement Apr 11, 2013

Many class/mixin definition files in dojox.calendar do not conform the following (http://livedocs.dojotoolkit.org/dojo/_base/declare#common-conventions) :

The class name (first argument of declare()) is omitted in new development. This ensures that the global namespace does not become polluted with classes and reduces the chances of name collisions. Classes in Dojo Toolkit introduced prior to Dojo 1.7 will include the class name for backwards compatability reasons.

#17289 dijit.layout.ContentPane breaks render of dojox.calendar.MatrixView Dojox 1.15 defect Jun 30, 2013

I am inserting a dojox.calendar.MatrixView? within a TabContainer/ContentPane?. When the page loads, the first Tab container displays a dojox.calendar/SimpleColumnView, but when I click on the second tab (containing a dojox.calendar.MatrxView?), dojo becomes unresponsive with the following alerts:

Script: https://parkes-ops.atnf.csiro.au/PORTAL/dev/jslib/dojo/dojo/dojo.js:58

Also seen at lines 126, 423, ...

A bare-bones example of the issue is attached.

Thanks for your time. Cheers, Stacy.

#17479 dojox.Calendar doesn't deal with possible failure while puting an item in a store Dojox 1.15 defect Sep 30, 2013

To be more specific: in order to perform some validation while modifying(dragging, resizing) an event(item) in a dojox.Calendar, I tried to override Store's "put" function and add the validating code there. However, I see no possibility to notify the Calendar that data has not been correctly updated in the store. Moreover, in


I spotted something as simple as: store.put(storeItem),

which, at first glance, have no concern about whether the data has been updated or not. Consequently, if "put" call fails (for example returns null), the visual item in the calendar remains modified, but will be "decoupled" from the store (no more drag and drop for it).

Is this an impossible scenario or a wrong approach on my side?

Kind Regards, Razvan.

#18087 dojox.calendar.Calendar event columnHeaderClick wont't work on iPad Dojox 1.15 defect Jun 12, 2014


the event of the columnView from dojox.calendar.Calendar won't work with safari on iPad. tested with iPad 1 iOS 5. testable with current 1.10 release http://archive.dojotoolkit.org/nightly/dojotoolkit/dojox/calendar/tests/calendar.html with a click on a day-column

best, wuhi

#18330 Chrome Timezone and daylight saving time change day Core 1.15 defect Oct 24, 2014

From what i've seen this is happening only in chrome. My situation is the one related on #8521. I'm opening this for another thing but i think it's related. To reproduce: Broser: Chrome

  1. Set your time zone to Brasilia.
  2. Go to http://demos.dojotoolkit.org/demos/calendar/demo.html

And if we try to select the days where the daylight saving time starts we will problems. Some days: 2014-10-19 2015-10-18 2015-10-16

#17010 Should dojox.calendar class declarations specify the class name ? Dojox 2.0 enhancement Apr 11, 2013

Many class/mixin definition files in dojox.calendar do not conform the following (http://livedocs.dojotoolkit.org/dojo/_base/declare#common-conventions) :

The class name (first argument of declare()) is omitted in new development. This ensures that the global namespace does not become polluted with classes and reduces the chances of name collisions. Classes in Dojo Toolkit introduced prior to Dojo 1.7 will include the class name for backwards compatability reasons.

dylan (38 matches)

Ticket Summary Component Milestone Type Severity Created
#18991 Port 18871 to 1.10 Core 1.13.1 defect Mar 20, 2017

Creating port request per Dylan's comment on 18871. We would be adding this to 1.10.4.

#17729 dojox/form/manager/_NodeMixin::unregisterNodeDescendants() is broken DojoX Form 1.14 defect Feb 13, 2014

Line 208 is incorrect, as 'node' refers to the top-level node passed to the function, not to the input, select, textarea or button node passes by query() to the map function.

207 query("input, select, textarea, button", node).

208 map(function(n){ return domAttr.get(node, "name")
null; }).

A suggested fix is:

207 query("input, select, textarea, button", node).

208 map(function(n){ return domAttr.get(n, "name")
null; }).

#18057 xhr.del (dojo/request/xhr) doesn't automatically handle json response IO 1.14 defect May 28, 2014

Hi all,

When I use this code for example:

    handleAs : "json",
    headers : {
      "Accept": "application/javascript, application/json"
  function (data) {
    var rowId = json.parse(data)[0].id; // why json.parse is needed !!!! 

I need to use json.parse because data is a string.

This is different as in xhr.get or xhr.put because response data in those cases are automatically parsed.

For my point of view, as handleAs is set to 'json', the automatic parsing functionnality must be made in xhr.del.

Thx for your answer

#18386 No way to set progress callbacks for xhr.upload when using dojo/request/xhr IO 1.14 defect Nov 25, 2014

https://bugs.dojotoolkit.org/ticket/13375 mentioned that this support was in dojo/request/xhr but I took a look at the code today and found no way to add a progress callback to the xhr.upload object.

#18397 Text selection prevented after mouse down on dojox/mdnd/Moveable object Dojox 1.14 defect Dec 3, 2014

To reproduce, go to http://jsfiddle.net/nicknisi/8h364x90/1/ and drag one of the Moveable objects. Then, try and select text on the page. It looks like dojox/mdnd/Moveable stops selection on mouse down but then doesn't clear that listener afterwards.

#18551 [patch] Lines always show in dojox.charting.action2d.MouseIndicator Charting 1.14 defect Apr 10, 2015

Trying to add a MouseIndicator? with lines: false doesn't change anything. Lines keep showing up.

It is fixed by changing line 144 of MouseIndicator?.js from this:

this.chart.addPlot(this._uName, {type: IndicatorElement, inter: this });


this.chart.addPlot(this._uName, {type: IndicatorElement, inter: this, lines: this.opt.lines});

but I think further changes should be made to completely fix this issue.

#18697 PortletInGridContainerColumns - DND Error in IE. DojoX Widgets 1.14 defect Sep 7, 2015

DND Error in IE.

In the example "https://github.com/dojo/dojox/blob/master/widget/tests/test_PortletInGridContainerColumns.html" for a portlet within a Bordercontainer (For the use with IE it has to be delivered by a webserver). In Firefox and Chrome the DND-Event works as it should:

  • Click on the portlet an keep the Mousebutton pressed to move the portlet around.
  • Release the Musebutton to drop the portlet at that place.

IE (version 11) shows a strange behaviour:

  • the portlet sticks to the cursor even after releasing the the mousebutton.
  • I need to click again to drop the portlet

With Dojo < 1.8 it does work within IE without any issues.

#18759 dojox.xml.parser.parse can not run outside browser - not applicable for nodeJS Dojox 1.14 defect Nov 25, 2015

hi, I would like to use dojox.xml.parser.parse utility, but in NodeJS. I had a look at its code, and its instantiating DOMParsers from the browsers. Unlike statements in dojotoolkit.org, this means that not all of its utilities are applicable to all runtimes.

simply have a look at the dojo/xml/parser.js implementation...

#18782 config.js uses wrong prefix when has('dojo-config-api') is falsy Core 1.14 defect Jan 22, 2016

In dojo/_base/config.js, the branch that's taken if has('dojo-config-api') uses 'config' to prefix configuration properties added to has but these properties are expected to be prefixed with 'config-'.

Link to the offending lines: https://github.com/dojo/dojo/blob/1d32043df68bce115d324efcf2838f4cc6beb3d2/_base/config.js#L159-L171

#18894 EnterKeyHandling forgets line indentation upon new line Editor 1.14 defect Sep 27, 2016

When in DIV mode the enterkeyhandling forgets line indentation upon new line. I was able to fix this by adding the code below to the handleEnterKey function :

if (this.editor.queryCommandState("justifyleft")) {

newblock.align = "left";

} else if (this.editor.queryCommandState("justifyright")) {

newblock.align = "right";

} else {

newblock.align = "center";


#18904 dojox/html/_base.js should consume getObject() from lang Dojox 1.14 defect Oct 7, 2016


https://bugs.dojotoolkit.org/changeset/25850/legacy moved methods from dojo/_base/kernel (ex. dojo) to dojo/_base/lang.

In http://svn.dojotoolkit.org/src/tags/release-1.9.0/dojox/html/_base.js, the following can be found :

var html = kernel.getObject("dojox.html", true);

=> kernel.getObject == undefined

Suggestion 1:

Write instead : var html = lang.getObject("dojox.html", true);


Suggestion 2:

Once you replaced 'kernel' by 'lang'. You may wonder whether the dependency to 'dojo/_base/kernel' is still necessary in dojox/html/_base.js

Enjoy your day,


#18977 Tree and wipeIn/wipeOut-based Toggler anim erratic when started while previous anim in progress fx 1.14 defect Feb 21, 2017

Tree behaves erratically (that is, the animation jumps in various ways) when a node's +/- button is clicked while a previous expand or collapse is in progress. Toggler also behaves erratically (discontinuities, and attributes being animated out-of-sync with other attributes) when showFunc/hideFunc are set to wipeIn/wipeOut. I'll give recipes to reproduce some specific bad behaviors below.

My basic premise is that both of these widgets's animations should be continous in all cases, no matter in what crazy way the user clicks around on them, and so any discontinuities in their animations is a bug.

The discontinuities in both widgets apparently began with this commit, 6 years ago:


commit 944f8ad4c8dd3314b97f9ce8e015cad6db8ec96b Author: Douglas Hays <[email protected]…> Date: Fri Mar 25 23:51:19 2011 +0000

Fixes #12177. Duplicate cleanup handler for both onStop and onEnd. Added automated test. git-svn-id: http://svn.dojotoolkit.org/src/dojo/[email protected] 560b804f-0ae3-0310-86f3-f6aa0a117693

My recipe to reproduce these problems is based on the first Tree example and third (last) Toggler example from the docs. I'm starting from the 1.7 docs, since that's the doc version whose code is most compatible with dojo&dijit as they have changed over the past 6 years:

https://dojotoolkit.org/reference-guide/1.7/dijit/Tree.html#a-programmatic-tree https://dojotoolkit.org/reference-guide/1.7/dojo/fx/Toggler.html#example-2-toggle-a-dom-node-with-custom-animation-functions

(note that the "example-2" is really example 3; that has since been fixed on the Toggler doc page). I lengthened the animation durations to 2 seconds in both examples; I've attached the two modified examples.

To demonstrate various bad behavious, first save the two examples I attached, and put up-to-date dojo&dijit repos in the appropriate places so they can be found by the example pages (i.e. put them under ../_stat

#18545 [meta] intern tests abort in the middle Core 1.14 defect Apr 3, 2015

This is from running using proxyUrl to run the tests from a mac against a Windows 7 VM:

mac:dojo bill$ npm run test-local

> [email protected] test-local /ws/trunk/dojo
> intern-runner config=tests/dojo.intern.local

Listening on
Starting tunnel...
Initialised chrome 41.0.2272.118 on XP
Test main - dojo/text - no X-Requested-With header FAILED on chrome 41.0.2272.118 on XP:
CancelError: Timeout reached on main - dojo/text - no X-Requested-With header
Error: Timeout reached on main - dojo/text - no X-Requested-With header
  at Error  <native>
  at new ErrorCtor  <__intern/node_modules/dojo/errors/create.js:13:21>
  at <__intern/lib/Test.js:178:38>
TypeError: Cannot read property '1' of undefined
  at publishInSequence  <node_modules/intern-geezer/lib/createProxy.js:50:13>
  at IncomingMessage.<anonymous>  <node_modules/intern-geezer/lib/createProxy.js:74:6>
  at IncomingMessage.EventEmitter.emit  <events.js:92:17>
  at <_stream_readable.js:920:16>
  at process._tickCallback  <node.js:415:13>

npm ERR! [email protected] test-local: `intern-runner config=tests/dojo.intern.local`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the [email protected] test-local script.
npm ERR! This is most likely a problem with the dojo package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     intern-runner config=tests/dojo.intern.local
npm ERR! You can get their info via:
npm ERR!     npm owner ls dojo
npm ERR! There is likely additional logging output above.
npm ERR! System Darwin 14.1.0
npm ERR! command "node" "/usr/local/bin/npm" "run" "test-local"
npm ERR! cwd /ws/trunk/dojo
npm ERR! node -v v0.10.26
npm ERR! npm -v 1.4.3
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /ws/trunk/dojo/npm-debug.log
npm ERR! not ok code 0

#18920 dojox.mobile.Carousel infinite loop DojoX Mobile 1.14 defect Nov 16, 2016

It is possible for an infinite loop to occur in onComplete at the line (Carousel.js:285):

for(i = 0; i < nPages; i++){

due to nPages being Infinity.

This happens if the width of the carousel is less than the width specified for it's items. This can happen as the carousel resizes with the page, and the area for it is smaller than the width specified for items when creating the carousel.

The cause is this.numVisible being set to 0 in 'resize' due to this.itemWidth > this.domNode.offsetWidth the line:

var num = Math.floor(this.domNode.offsetWidth / this.itemWidth);

this.numVisible is used to calculate nPages making it Infinity in this case.

In Chrome (54) this causes it to max out CPU with continually growing memory use. The only way to stop it is to kill it in Task Manager. You cannot reload or navigate to a different page.

#18940 Error on programatticaly load of dojox.charting.widget.chart DojoX Widgets 1.14 defect Dec 19, 2016


Store is defined by dojo.data.itemFileReadStore or dojox.data.QueryReadStore?.

Error: dojo/parser::parse() error TypeError?: Cannot read property 'sort' of undefined.

#18967 TabContainer regression Dijit 1.14 defect Jan 26, 2017

Comments from Ken Feldt on the mailing list:

I have an application with tabs that was working with dojo 1.10.6, but broke with dojo 1.11.2 and beyond...

The problem involves some mathjax (a mathematic rendering engine) that is dynamically building one of the tabs.

At: https://read.electricbook.net/book/guest/1

  • click example problem 1 - 1 (along left side) --- actually any of the sample problems will do
  • you will see the mathjax message along the bottom of a 'curtain' that is raised when all rendering is complete
  • you see three tabs - Problem Statement, Solution, and e-Blink

That is how it is supposed to work (dojo 1.10.6)

Try the same thing with https://staging.electricbook.net/book/guest/1

  • you see the tabs start to draw OK, but once the math rendering is complete, the tab content seems to be shifted up signficantly. By clicking the third tab (e-Blink) all three tab content areas snap back into place

I will be happy to make some type of change to the code - but I thought I would just ask the question to see if anyone else has this problem.

Oh and....

The dojo page http://dojotoolkit.org/download/ identifies the googleapis server for 1.11.3 as the script reference to use in pages that want

to download from a remote server

The 'other downloads page' (http://download.dojotoolkit.org/) states 1.12.1 is the latest stable release, and as the latest prerelease The google api download page has neither - it holds the latest as 1.11.2


Will it be safe to point my code to http://download.dojotoolkit.org/release-1.12.1/dojo-release-1.12.1/ ?


And then confirmed from Nick Fenwick:

I cannot reproduce the error with a test case, I tried using TabContainer? and StackContainer?. However, our production app definitely has a similar problem to Ken's.

For now I'm having to put this into our main CSS file:

.dijitHidden {

visibility: inherit; display: none;

} .dijitVisible {

visibility: inherit;


Hopefully someone can see from Ken's online example what the problem is? I can see now that the position:absolute is supposed to remove the elements from the document flow and visibility:hidden makes them invisible, which certainly does work in the test cases I created, but fails for me and Ken in our production app.

#16309 dom-class::add() does not work on SVG elements Core 1.14 defect Nov 8, 2012

Using dom-class::add() on a SVG node such as <g> does not work, because add() uses node[className] instead of node[className].baseVal on line 163.

I'm not sure if this is a bug or an enhancement, but if I use element.setAttribute() instead it works fine, so I would expect add() to work too, since add() is expected to replace setAttribute().

#17853 dojo/request/node doesn't emit notify events IO 1.14 defect Apr 8, 2014

It appears that dojo/request/node does not emit any events using dojo/request/notify.

#18072 dojo/request/node response encoding IO 1.14 defect Jun 4, 2014

Found that the data coming from the server do not match the encoding. Executes the query over:

Code highlighting:

var _bind = function (url, content) {
    return request(url, {
        headers:         {
            "Content-Length": Buffer.byteLength(content),
            "Content-Type": "text/plain;charset=UTF-8",
            "Accept-Encoding": "UTF-8",
            "User-Agent": "E",
            "Accept-Charset": "UTF-8"
        formData:        undefined,
        data:            content,
        query:           "",
        handleAs:        "text",
        method:          "POST"


Code highlighting:

<?xml version="1.0"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="..." xmlns:xsi="..." xmlns:SOAP-ENC="...">
        <SOAP-ENV:Body SOAP-ENC:encodingStyle="...">
                <NS1:GetAvailableHotelListResponse xmlns:NS1="urn:webservice-electrasoft-ru:types-twsReservationServiceIntf-ItwsReservationService">
                        <return xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="xsd:string[2119]">
                                <item>Ате��ика Гамма курорт</item>
                                <item>Горная Грузия 12 дней</item>
                                <item>Georgia 3_5дней</item>
                                <item>Новотель Шереметьево</item>

What a � character?

I thought about it a little: http://nodejs.org/api/http.html#http_http_request_options_callback

In the end, making a small change in the dojo/request/node:

Code highlighting:

      req.on('response', function(clientResponse){

After that I got the desired result:

Code highlighting:

<?xml version="1.0"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="..." xmlns:xsi="..." xmlns:SOAP-ENC="...">
        <SOAP-ENV:Body SOAP-ENC:encodingStyle="...">
                <NS1:GetAvailableHotelListResponse xmlns:NS1="urn:webservice-electrasoft-ru:types-twsReservationServiceIntf-ItwsReservationService">
                        <return xsi:type="SOAP-ENC:Array" SOAP-ENC:arrayType="xsd:string[2119]">
                                <item>Ателика Гамма курорт</item>
                                <item>Горная Грузия 12 дней</item>
                                <item>Georgia 3_5дней</item>
                                <item>Новотель Шереметьево</item>

I'm not sure about the competence of the decision, but would love to see any result on this issue in the upcoming version.

Thank you very much! ..sorry my poor English

#18234 [regression] JSON-RPC-2.0 with unnamed parameters is broken RPC 1.14 defect Aug 21, 2014

The fix for ticket #16153 breaks our JAVA and C++-based JSON-RPC services, which are based on JSON-RPC 2.0 but do not support named method parameters.

According to


the client must issue a call with ordered parameters.

However, a call with an object containing the first parameter and an 'undefined' key is issued.

It turns out, that the code in Service.js does not check, whether the parameters in the SMD specify a name. Hence, na named parameter call is unconditionally enforced, when 'namedParams: true' is set in the envelopeRegistry.

#18274 dojox/editor/plugins/LocalImage fileMask does not work correctly Editor 1.14 defect Sep 18, 2014

Say you have an editor, and you're using the LocalImage? plugin, and you specify a fileMask value of '*.jpg;*.png'

If you enter a URL for an image:


the fileMask says that the file extension is invalid. To work correctly, the code that checks the mask needs to strip off everything after the question mark.

For example:


#18450 Update committer workflow to reference running tests with Intern Documentation 1.14 defect Jan 11, 2015

Should http://livedocs.dojotoolkit.org/developer/github be updated to reference instructions for running Intern (for Dojo core tests) before committing?

#18587 [patch][needs test] JS Error during load of iframe with style "display:none" in Firefox HTML 1.14 defect May 4, 2015

During load of an iframe with "display:none" a js error occurs cause getComputedStyle returns null for elements in this iframe.

Error occurs in dojo/hccss.js line 32

Following change in dojo/dom-style.js line 49 fix the problem:

- node.ownerDocument.defaultView.getComputedStyle(node, null) || {} : {};
+ (node.ownerDocument.defaultView.getComputedStyle(node, null) || {}) : {};

#18708 Client-Side XSS Bug in Grid Filter DojoX Grid 1.14 defect Sep 16, 2015

I noticed this bug in 1.9.7, but other versions may be affected as well.

When you use a filter with an EnhancedGrid?, you can insert some JavaScript? as the value and it will be executed. This is because the value is being displayed at the top of the Filter dialog and isn't properly escaped.

#18729 Google's CDN - "latest" version pointers no longer work Documentation 1.14 defect Oct 6, 2015

See this page - https://developers.google.com/speed/libraries/#troubleshooting

Since 1.8.3 (ish), the automatic pointers no longer function. Consequently, specification of "1.9" or "1.10" won't work at all, and "1" still points to "1.6.1".

I'd suggest removal of the section recommending this usage, and aligning with Google's recommendation - specific version usage.

#18912 check for isWindow in scroll for FF not correct Dojox 1.14 defect Oct 18, 2016

FF at somepoint added a scrollTo function on elements returns by dom.byId(). this causes this check to return an element is a window in FF.



isWindow = args["win"] == window.self

be a better check?

#18922 dojo/request/node does not trigger notify.onsend Events 1.14 defect Nov 22, 2016

The following code should trigger an breakpoint - it does not.

], function (node, notify) {
    'use strict';

    notify('send', function () {


Recommendation to add the following to line 72 of dojo/request/node

    util.notify.emit('send', response, def.cancel);

#18949 Select-Tag doesn't show Options, because it gets prevented (by gesture) H a p p y N e w Y e a r Dojox 1.14 enhancement Dec 29, 2016

dojox/gesture/Base.js ln:268

<select>-Tag is missing in following code. Would you Please include it until next release?

// invoking gesture.press()|move()|release()|cancel()
// #16900: same condition as in dojo/touch, to avoid breaking the editing of input fields.
	if ((e.target.tagName != "INPUT" || e.target.type == "radio" || e.target.type == "checkbox")
        && e.target.tagName != "TEXTAREA") {

I simple took previous code inside the following condition.

if (e.target.tagName != "SELECT") {


Now my select-tags show their options, again.

#18956 invalid out-of-date-check in dojo/store/Observable Data 1.14 defect Jan 17, 2017

following scenario:

observable-json-rest store with one active, observed query.

a array of updates flys in by e.g. cometd.

var store = Observable(new JsonRest({..}));

on("message",function(data) {
  array.forEach(data,function(item) {

while processing the messages, on certain updates, the application logic triggers a new query on the store...(in my case, a dgrid starts to preload new pages of items)

var result = store.query(....);
result.observe(function() {
  //do something...

the store then triggers an async server request. the store.notify() loop still continues to update the store.

when the query-result is available, I get following error in the console.

Query is out of date, you must observe() the query prior to any data modifications

If you take a look at the dojo/store/Observable implementation:

-) store.revision is updated on every store.notify() call

-) the query-updaters are called on every store.notify() call, but use

when(results, function(resultsArray){
...process updates...

therefore, the actual processing of the notification may also be async. in the meantime, N more notifies may cause the store.revision to be bumped up.

when the result is finally ready, the query-revision may never be up-to-date, even though the result.observe() setup is always correct.

IMO the check for the revision should be performed immediately when the updater is invoked.

queryUpdaters.push(queryUpdater = function(changed, existingId){

	if(++queryRevision != revision){
		throw new Error("Query is out of date, you must observe() the query prior to any data modifications");
	when(results, function(resultsArray){
		var atEnd = resultsArray.length != options.count;

#18964 dojox scrollableview in android devices is not working DojoX Mobile 1.14 defect Jan 24, 2017

dojox/mobile/ScrollableView (1.10+) in a cordova application have some scroll issues, which I have started observing recently and its only happening in android phones. We are currently using widget-based architecture. Even some of the store apps are facing this issue. Even we tested the below url of dojo and we are facing the same issue when we inspect it in chrome and view it in mobile mode (adding it for reference) http://demos.dojotoolkit.org/demos/mobileGallery/demo-ios7.html Please resolve/update/suggest on the above issue.

#18966 Label placement in StackedBars and StackedColumns Charting 1.14 defect Jan 25, 2017

Ever since 1.11.1 label placement in the StackedBars? and StackedColumns? is centered based on the chart origin instead of the bar/column shape origin. In 1.10.4 the labels were placed as expected. I found this as I am trying to update an existing application.

#18981 Child popup closes parent popup when mouse left click duration reaches certain threshold value Dijit 1.14 defect Feb 22, 2017

Received this issue via email as trac was flagging it as spam:

Inside a tooltip dialog that is opened using a popup, I have a button that opens a color picker also using popup. If I click a color cell rapidly the color picker closes, and the parent dialog remains opened. If I hold the mouse button for a longer period of time on a color cell, when I release the mouse, the color picker popup closes and then the parent tooltip dialog closes along with it.

This issue does not occur if I debug the code and put a breakpoint in the color picker popup onExecute() method. Pausing the execution seems to prevent propagation of the close event to the parent popup.

Below is my code to open the color picker - where fontTextColorNode is a button in a parent popup dialog.

            on(this.fontTextColorNode, "click", function (event) {


                var myPalette = new ColorPalette(


                    palette: "7x10",

                    onChange: function (val) {


                        console.log("selected color", myPalette.value);


                        that._set("color", myPalette.value);


                        formElementController.setPropertyValue(that.parentWidgetId, "color", myPalette.value);




                myPalette.on("blur", function () {





                    parent: that,

                    popup: myPalette,

                    around: that.fontTextColorNode,

                    orient: ["below"],

                    onExecute: function () {



                        console.log("closed myPalette");


                    onCancel: function () {






#18983 Mouse click activating DropDownButton: unable to use arrow keys for navigation Dijit 1.14 defect Feb 27, 2017

When using a mouse click a DropDownButton? that has a Menu associated with it, one cannot use the arrow keys to highlight the menu items.

After some analysis, I noticed this changed occurred for Dojo 1.9 (and later releases), and appears to be backported to a version of 1.8 (1.8.10 has same behavior as later releases). Using 1.7.5, the better (IMO) behavior occurs where one can use the arrow keys as keyboard focus is switched to the menu raised.

Examing the source, it appears the changes for ticket #11800,


is the culprit behind the behavior change.

Comparing with traditional applications, the behavior in 1.7 (and earlier) is consistent: regardless if menu was raised by a mouse click or a keyboard event, the keyboard can be used to navigate menu items. The newer behavior is not consistent with common practice.

Looking at the description of for #11800, I think the solution adopted goes contrary to behavior intent. First line of #11800 description:

If you right click on a page in Firefox, you get a context menu where no item is highlighted. The arrow keys still work; hitting down arrow hightlights the first item...

Note that, "arrow keys still work." With the code changes, they no longer do so. I think the original submitter was not asking for arrow key selection to no longer work, just that there is no initial item highlight.

Another related behavior change that occured between 1.8.x and 1.9.x is arrow key navigation does not work in 1.9 and later even if you hover mouse over a menu item. In versions 1.8 and prior, click to popup/dropdown menu, move mouse over first item. You can then use arrow keys move highlight to other menu items. In 1.9, this is no longer the case.

I have not been able to find the specific code changes between 1.8 and 1.9 that lead to this behavioral change.

This change a behavior goes contrary to normal GUI based applications. For example, in native GUI apps, arrow-key-based higlighting of a menu item will always work, regardless of how the menu was raised or how a menu item was highlighted (e.g. mouse hover).

The following messages to the mailing list were posted months ago regarding this issue, but no responses received: http://mail.dojotoolkit.org/pipermail/dojo-interest/2016-September/085272.html http://mail.dojotoolkit.org/pipermail/dojo-interest/2016-September/085274.html

#18984 Tree keydown event handling is flaky Events 1.14 defect Mar 3, 2017

Five out of the six ways I know of to make a keydown event handler on a Tree seem to be unreliable, starting in dojo 1.9.1. This was observed using chrome version "57.0.2987.74 beta (64-bit)" on a macbook pro, using dojo 1.9.1, 1.9.10, 1.10.1, 1.10.7, 1.11.1, 1.11.3, 1.12.1. (It seems to work properly in 1.8.13.)

I'll attach a test program that demonstrates, using key handlers connected in various ways.

I didn't bother with anything involving dojo.connect(), since that's deprecated. And I didn't set tree.onKey*, since that apparently prevents tree.on(...) and on(tree, ...) from working. That leaves six other ways to do it (I think):

  • (A) Tree ctor params.onKey* = function(e){...}
  • (B) tree.on('key*', function(e){...})
  • (C) on(tree, 'key*', function(e){...})
  • (D) on(tree.domNode, 'key*', function(e){...})
  • (E) tree.domNode.onkey* = function(e){...}
  • (F) tree.domNode.addEventListener('key*', function(e){...})

Only (A) seems to work reliably. To demonstrate, load the page and do the following:

  1. Click anywhere on the tree to give it keyboard focus
  2. Press-and-quickly-release the 'j' key
  3. A quarter-second later, press-and-quickly-release the space bar.

Console output is as follows. Note the missing handler calls (B)-(F) on the keydown of the Space bar.

    (+3.209525s) (A) tree ctor params.onKeyDown: KeyJ
    (+0.000840s)  (B) tree.on 'keydown' callback: KeyJ
    (+0.000380s)   (C) on tree 'keydown' callback: KeyJ
    (+0.000385s)    (D) on tree.domNode 'keydown' callback: KeyJ
    (+0.000330s)     (E) tree.domNode.onkeydown: KeyJ
    (+0.000280s)      (F) tree.domNode.addEventListener 'keydown' callback: KeyJ
    (+0.001215s) (A) tree ctor params.onKeyPress: KeyJ
    (+0.001900s)  (B) tree.on 'keypress' callback: KeyJ
    (+0.000445s)   (C) on tree 'keypress' callback: KeyJ
    (+0.000320s)    (D) on tree.domNode 'keypress' callback: KeyJ
    (+0.000285s)     (E) tree.domNode.onkeypress: KeyJ

#18994 DropDownList pupup is in the wrong position on Windows 10 touchscreen laptop. Dijit 1.14 defect Apr 1, 2017

This problem is occurs on a Windows 10 touchscreen laptop.
There is a dropDownList on a page.

1.After the page is initialized,click the dropDownList using the touchscreen,and the menu pops up.
2.Use two fingers to zoom in the page,and move the dropDownList using the touchscreen.
3.Click the dropDownList using the touchscreen,and the popup is in the wrong position.

After step 2,the origin position has been changed,dojo should have recalculated the origin position,but in fact it didn’t do that,so that there is a origin offset.
I can't show real information in our product,but I made a picture to explain more clearly.

#11212 [patch]dojox.validate.isUrl doesn't validate certain urls correctly Dojox 1.14 defect normal May 25, 2010

It looks like dojox.validate.isUrl doesn't return true if a url has multiple symbols in a row, even if the url is valid. For example, it returns false on all of the following:

http://www.mysite.com/#bla http://www.mysite.com/?bla=x http://www.mysite.com/bla/?x=y http://www.mysite.com/bla/#x

The key there is the ending slash, followed immediately by either a ? or #.

#11435 dojox.validate.regexp.url is too specific with fragment identifiers Dojox 1.14 defect normal Jul 13, 2010

The fragment identifier is validated as such:


These days any character is used in the fragment identifier, for example the #! combo supported by Google. Also, URLs simply ending in # are treated as being invalid.

Can we change it to this instead?


#11794 [patch] Added method "getWidgetPosition" for GridContainer DojoX Layout 1.14 enhancement normal Sep 28, 2010

The GridContainerLite? has a new method which can be used to get the position in a column easily.

This is very important when one wants to save the order of widgets in the grid.

It might be left to discuss whether one should return an array a la { column: widget.column, pos: <pos here> }. Because as of now, one needs to call <widget>.column separately to get the column the widget is in.

I have pushed to GitHub?. This can be found here:


1 2 3
Note: See TracReports for help on using and creating reports.