{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
#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.

#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.

#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.

#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.

#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).

#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.

#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.

#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.

#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;

#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.

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
#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.

#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.

bill (14 matches)

Ticket Summary Component Milestone Type Severity Created
#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

#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.

#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 :


#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.

#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?

#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?.

#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);

#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.

#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

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
#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.

#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.


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
#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.

#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.

#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

#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.


dylan (38 matches)

Ticket Summary Component Milestone Type Severity Created
#4782 [patch][ccla]IFrame relative offset problem in dojo.coords() HTML 1.15 defect normal Oct 18, 2007

It seems that when I want to use/draw a widget inside an IFrame Dojo (version 0.9.0) does not take into account the relative position of the IFrame in the parent page. This causes popups like Tooltips to appear outside of the IFrame. This testcase should demonstrate the behaviour:

<script type='text/javascript'
djConfig=' isDebug: true, usePlainJson: true' src='dojo/dojo.js'></script>

<script type='text/javascript'>
dojo.addOnLoad(function init() {
  window.frames["frm"].document.write("<html><body><div id='tip0'>hover</div></body></html>");
  var id = window.frames["frm"].document.getElementById('tip0');
  var c = dojo.coords(id);
  console.log("x: " + c["x"] + "  y: " + c["y"]);
<body class="tundra">
  <iframe name="frm" id="frm" width="300" height="300" frameborder="0"
    scrolling="yes" style="position:absolute;left:200px;top:200px;"></iframe>

The (x,y) coordinates of the element should take into account the IFrame offset.

Thank you!

  • Amir

#8919 [patch] Charts within different documents throw an error DojoX GFX 1.15 defect normal Mar 18, 2009

When you have two dojox.charts each within its own iFrame, the second one throws an error, because the measuringNode in dojox.gfx._base._getTextBox is on the wrong document.

I tested this with Dojo 1.2.3, but the affected file _base.js is unchanged at the respective place in HEAD (as of today).

(also affected seems to be dojox/sketch/Annotation.js)

Solution: if the currently stored measuringNode (for finding out the DPI used) is on a different document than dojo.doc, throw it away and create a new one.

Throwing away the old node is necessary, as otherwise you would create additional measuringNodes on each document each time you switch back and forth between the documents. An alternative would be to set an id and retrieve the node back by id, or store the measuringNodes in an associative container where the document is the key.

#9263 dijit.layout.ContentPane doesn't allow replacing invalid content when setter fails Dijit 1.15 defect normal May 7, 2009

Currently, the _onError(type, err, consoleText) method of dijit.layout.ContentPane? will never show the message returned from onContentError due to the way it is written. It current looks like this:

var errText = this['on' + type + 'Error'].call(this, err);
	console.error(consoleText, err);
}else if(errText){// a empty string won't change current content
	this._setContent(errText, true);

The problem is that when there is, for example, a requires error, the html setter always returns consoleText.

Instead, I think the else should be removed, and the functions should look like this:

	console.error(consoleText, err);
var errText = this['on' + type + 'Error'].call(this, err);
if(errText){// a empty string won't change current content
	this._setContent(errText, true);

This will allow for more robust error handling.

#9884 [patch] [cla] Layout-aware Toolbar DojoX Widgets 1.15 enhancement normal Sep 14, 2009

This is a feature suggestion, for either dijit.Toolbar or a dojox variant, where the toolbar can push items that dont fit in the available space into a dropdown menu, similar is spirit to the recent TabContainer? enhancements.

I'm attaching a zip with a prototype. It shows a widget that can map Button widgets to MenuItem? widgets, and implements the layout-widget interface to allow re-drawing the toolbar to fit.

Further work is needed to support different toolbar child-types, like seperators, dropdown buttons.

Also, its been suggested that there should be an option to either create menu items for all toolbar items, or to only create them for toolbar items that are hidden.

#10347 [patch][cla] dojox.date.Timezone - add support for guessing browser timezone Dojox 1.15 enhancement normal Nov 16, 2009

Would be nice to have support for guessing the browser's timezone. This can be done by grouping based off of key offsets

#10348 [patch][cla] dojox.date.Timezone - add support for forcing the timezone to be displayed Dojox 1.15 enhancement normal Nov 16, 2009

Even if the locale doesn't contain the timezone in the timeFormat string, add it according to locale rules

#10349 [patch][cla] dojox.date.Timezone - add a djConfig variable for formatting *all* times according to timezone Dojox 1.15 enhancement normal Nov 16, 2009

something like

djConfig.dojoxTimezone = "America/Denver"

would format all times using the America/Denver? timezone.

#10352 New DateTime Picker control Dijit 1.15 enhancement normal Nov 16, 2009

This control will function more like a dijit.form.DateTextBox. it includes Date selection and Time picker. Right now there is no support for different formats and no tests are being developed yet. I would appreciate if users can suggest me with necessary improvements.

#10369 [patch][cla] dojox.date.Timezone - make parameters optional to getTzInfo Dojox 1.15 enhancement normal Nov 19, 2009

If date is missing, use current time, if timezone is missing, guess the current timezone (see #10347 for the current timezone guessing)

#10644 dojox.form.BusyButton label can't be changed permanently DojoX Form 1.15 defect normal Jan 19, 2010

BusyButton? makes a copy of the label at postCreate and each time the cancel method is called it restores that copy overwriting any change you could do to the button's label.

Attached are two patches, one with a possible fix and another with a test for this.

#10691 windowName transport is not working on HTTPS to HTTP configuration using FireFox Dojox 1.15 defect normal Jan 29, 2010

dojox.io.windowName.send fails to POST data when the local host is https and the remote host is http in Firefox. I believe this is happening because FireFox? is displaying a warning message to the user about sending unencrypted data from an encrypted site. FireFox? uses the about:blank location while waiting for the user’s input to this warning message. The windowName transport then tries to navigate back to the local domain and grab the data out of about:blanks’s window name, which doesn’t exist . I think this is a simple fix. It looks like this case is already handled for every browser except FF

Take a look at the following code from windowName’s onload function:

if(!dojo.isMoz && frame.contentWindow.location =='about:blank'){

opera and safari will do an onload for about:blank first, we can ignore this first onload



I think all that needs to be done here is to remove the isMoz condition.

if(frame.contentWindow.location =='about:blank'){

opera and safari will do an onload for about:blank first, we can ignore this first onload



OS - Windows Browser version - Firefox 3.5 Dojo Build - 1.2.3

#11009 [patch][cla][needs AMD conversion] coyotepoint-patch:chartImage-Require gif image support in charting Charting 1.15 enhancement normal Apr 20, 2010

Issue-In charting I was unable to show gif image instead of SVG.

Resolution- I created Custom.js with help of Default.js.I am assuming i'll get addSeries data in following format.

{x:6,y:4,image:'./images/alert.red.gif',width:20,height:20,tooltip:'tooltip message'}

I am attaching patch file as well as original code with testing html file.

#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?


#11525 Legend image for plot on graph shows nothing DojoX Widgets 1.15 defect normal Aug 3, 2010

The legend in version 1.5.0 isn't displaying properly under certain conditions. For example, add a plot to any graph like (must have lines: false for error to appear):

NOTE: the series description shows up in the legend but no image.

chart1.addPlot("test", {type: "Default", lines: false, markers: true});

See attached test.html file.

#11709 [patch][ccla][needs AMD conversion] Chart 2D: Axis Break Charting 1.15 enhancement normal Sep 9, 2010

Axis breaking allows user to manually specify a break in the chart axis, it's useful when there are some items are far too larger than most other items in a chart, it makes possible to see the difference between smaller items much more clearly.

chart.addAxis("y", {
vertical: true,
breakAt: {from: 150,to: 980},

And there is one testcase in the patch

#11758 dojox GridContainer DragHandle Problem DojoX Layout 1.15 defect normal Sep 20, 2010


GridContainer? with DragHandle? doesn't work properly when child ContentPane? contents set by href.

I attached the test case you can compare set('content', '...') and set('href', '...') behavior differenence.

#11785 [patch] ThumbnailPicker does not scroll to "next" page if last image on current page ends exactly at the right side of the scroller Dojox 1.15 defect normal Sep 27, 2010

In one of my test cases I have noticed, that the ThumbnailPicker? would not scroll to the "next" page due to a special situation which can occur quite often:

If on the current page the last image is the last yet loaded image and ends exactly with the right border of the scrollable area the widget does not scroll to the next page because


is never called as the if statement within the for loop in the _next function never evaluates to true.

I fixed this in my project with the following two changes:

1.) Add a this._showThumbs(this._thumbs.length - 1); after the for loop in _next()

2.) remove the already questioned if statement from _showThumbs() in line 376 (the one with the FIXME: WTF ...)

This removes the problem with the special situation and as far as I could test the widget (and this was pretty much) does not have any other side effects.

#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:


#12164 Browser back button has iframe history for dojo.io.iframe IO 1.15 defect normal Jan 15, 2011

After uploading files by dojo.io.iframe the browser requires some extra back-button presses to get to the previous page. The number of presses is the same as the number of files uploaded. This seems to be related to the iframe having it's own history.

I have hacked this for myself by deleting the iframe after the file has uploaded, thereby deleting the history; But I don't think this is the 'right' way (I have limited javascript experience).

NB dojo.io.iframe does multiple file uploads (queued?) that this will probably break..

window.dojoIoIframe=null; dojo.body().removeChild(dojo.io.iframe._frame); dojo.io.iframe._frame=null;

This is a problem in Firefox 3.68 and IE 8.0 for me.

#12182 Dojox.charting.DataChart doesn't support x,y coordinants from server Charting 1.15 defect normal Jan 19, 2011

It appears that DataChart?.js has some typecasting that causes x,y coordinate data to not work even though they work in Chart2D.

Lines 400 (ar.push(Number(field));), 411 (this.seriesData[nm].push(Number(field));), and 413 (this.seriesDataBk[nm].push(Number(field));) all use a typecast to Number() which causes series that are in the format of {x:3,y:4} to not work in DataChart?.

Removing the Number conversion around field seems to fix the problem although for safety it may be better to check the data to see if it's a coordinate if so then cast both x and y to numbers, if not cast the whole object.

#12327 Allow dojo.Animation to have a duration of zero or throw an error Core 1.14 defect minor Feb 21, 2011

If I setup an animation, e.g. using dojo.animatePropery(args) with args.duration = 0 I'm getting into a division by zero situation in the _cycle method. In my case I got a height of NaNpx which gave an error on the console in IE and failed silently in other browsers.

Why would you start an animation with duration = 0? Seems stupid but in my case the code intended to have all the corresponding callback called without a visually recognizable effect (of course only for a certain condition while the other branch of the code sets a number greater than zero as the duration). What I'm trying to say: It might happen so lets fix it.

In the _cycle method you get either a value for the step of Infinity or NaN depending if some milliseconds passed since "starting" the animation. Infinity is not a problem because step gets normalized to 1 then. NaN is not caught and passed on until it is written to the DOM in a way.

Attached patch checks if duration is 0 before division.

#12346 missing node on overlay after _handleSend() DojoX Form 1.15 defect normal Feb 24, 2011

dojox.form.FileInputAuto?._handleSend() removes this.overlay.firstChild (that was previously changed to display the upload message) but never restores the original blank text node ("&nbsp;). Thus, when _sendFile() is invoked another time (if an error occurred at first attempt), it will fail trying to remove a missing node.

I would suggest to change:

	_handleSend: function(data,ioArgs){
		// summary: The callback to toggle the progressbar, and fire the user-defined callback

		// innerHTML throws errors in IE! so use DOM manipulation instead

		// ...


	_handleSend: function(data,ioArgs){
		// summary: The callback to toggle the progressbar, and fire the user-defined callback

		// innerHTML throws errors in IE! so use DOM manipulation instead

		// ...

#12599 dijit.Editor in dojox.layout.TableContainer resize/layout bug DojoX Layout 1.14 defect normal Apr 4, 2011

When a dijit.Editor is placed in a dojox.layout.TableContainer, an exception is raised, because the editor's layout method expects a "_contentBox" attribute to be set on the instance, but in this case it is not (see attached test case).

The Editor seems to assume that the layout widget will call its resize method and pass in an argument; the TableContainer calls resize without passing in any arguments.

We've worked around this in our code with the following:

editor.resize = function () {
        editor, arguments);

#12633 dojox.form.MonthTextBox ignores min/max constraint DojoX Form 1.15 defect normal Apr 10, 2011

dojox.form.MonthTextBox (as well as other dojox date pickers) ignores min/max constraint

#12634 dojox.form.MonthTextBox ignores datePattern constraint DojoX Form 1.15 defect normal Apr 10, 2011

The only output dojox.form.MonthTextBox? is capable of producing is the month selected on the widget.

But the widget itself allows to choose not just a month but a year. There is no way for the year chosen by the user to be propagated to the widget output.

If you're allowing users to choose year in the widget you should allow the year to be retrieved from the widget instead of ignoring it.

The logical way to do that would be via datePattern. It is hardcoded to 'MM' but even if you change it to anything else it doesn't work because even the hardcoded pattern seems to be ignored by the widget.

#12716 Selection error in dojox.widget.RollingList DojoX Widgets 1.15 defect normal Apr 19, 2011

When I link my FireFox version 4.0 to:


and click "North America", the first item ("Africa") stays highlighted (though it does open the correct secondary pane).

When I then click "United States of America", I get an error in FireBug: "ret is null" with a pointer to RollingList.xd.js (line 8)

Similar behaviors in IE 8. And it's also happening to me when I try to use the RollingList on my local pages using dojo 1.5 or 1.6.

I hope I gave enough information; and I hope I adequately searched the existing bugs. This is my first bug report.

#12747 Nested object serialization with objectToQuery IO 1.15 defect normal Apr 22, 2011

Apparently dojo has no ability by default to serialize regular nested objects via dojo.objectToQuery.

Right now doing this:

dojo.objectToQuery({user: {username: 'lyle', password: 'testing'}});

will generate the query:

user=[Object object]

This is useless to everybody. The generally accepted solution is the following:


This is how PHP and Rails expect nested objects, and it's how Zend and Rails build their forms by default. This is also how jQuery serializes nested objects.

This may not be the perfect solution, but you shouldn't get garbage when you put nested objects into objectToQuery.

Also, I noticed that in an older version of node.js this syntax was expected for nested objects, but at some point it has changed to no longer accept it in the way I've outlined. I don't know why that is but I'm plenty curious.

#12930 ref.js resolveJSON schema look fails for object id's with [ or / characters Dojox 1.15 defect normal May 13, 2011

In the ref.js, resolveJSON method, it makes use of a regular expression to find what I believe is the prefix for the absolute id, it then uses this to lookup the schema in this list of schemas. This code is shown below:

if(args.schemas && (!(it instanceof Array)) && // won't try on arrays to do prototypes, plus it messes with queries 
(val = id.match(/^(.+\/)[^\.\[]*$/))){ 
    schema = args.schemas[val[1]];

If the object id contains a ',?' or '/' character, the result of the regular expression val[1], does not represent the prefix of the absolute id and the regular expression fails. So an id of the form:


Would fail to have its prefix detected, and its schema would not be picked up.

Would it be possible to enchance this so such object id, would succefully resolve. I probally am missing a larger designer here, but in this scenario, could the prefix parameter that is passed in not be used to do the schema lookup as opposed to cracking the id with this regular expression?

#12982 GridContainer offsets column index when manually organized DojoX Layout 1.15 defect normal May 18, 2011

When creating a manually organized dojox.layout.GridContainer? (isAutoOrganized: false) programmatically to place widgets in specific columns the error "Unable to insert child in GridContainer?" appears in the console for widgets placed in column 0.

It appears the addChild method assumes a zero-based column index, but the _organizeChildrenManually method assumes a one-based column and thus subtracts 1 from the column before calling _insertChild to re-arrange child widgets.

Another effect is that it's impossible to place widgets in the last column.

Example to reproduce:

dojo.addOnLoad(function() {

var cpane1 = new dijit.layout.ContentPane?({ title:"cpane1", content: "Content Pane 1 : Drag Me !" }),

cpane2 = new dijit.layout.ContentPane?({ title:"cpane2", content: "Content Pane 2 : Drag Me !" }), cpane3 = new dijit.layout.ContentPane?({ title:"cpane3", content: "Content Pane 3 : Drag Me !" });

var gridContainer = new dojox.layout.GridContainer?({

nbZones: 3, isAutoOrganized: false

}, dojo.byId("rootNode"));

gridContainer.addChild(cpane1, 0, 0); gridContainer.addChild(cpane2, 1, 0); gridContainer.addChild(cpane3, 2, 0); gridContainer.startup();


#13021 Body text selection broken after GridContainer drag and drop DojoX Layout 1.15 defect critical May 20, 2011

After clicking or dragging a TitlePane? in a GridContainer?, text selection for the document body no longer works until the browser is refreshed.


1) Open demo example above 2) Select portlet text - works fine 3) Click/Drag? titlepane 4) Select portlet text - no longer works

To resolve this, remove line 90 in dojox/mdnd/Moveable.js or restore onselectstart.


Text selection does not occur with this line removed, so it is not necessary.

#13071 ThumbnailPicker reload html as image Dojox 1.15 defect normal May 25, 2011

At template (source:dojox/trunk/image/resources/[email protected]),

<img src="" dojoAttachPoint="navPrevImg"/>
<img src="" dojoAttachPoint="navNextImg"/>

so empty img src cause reloading html as image. It should be src="${_blankGif}".

#13143 [patch] dojo.dnd.Moveable publishing before updating DnD 1.15 defect normal Jun 1, 2011

in dojo.dnd.Moveable onMoveStart and onMoveStop, addClass and removeClass are called AFTER the publish. The problem is that some widgets like Dialog use those classes to check if the item is moving or not, checking if body has a class dojoMove for example.

In some cases, due to some race conditions, onMoveStop publishes, a subscriber is triggered, call a function which checks dojo.body classes, and find dojoMove, then do not do the expected modifications. Tha happens because the removeClass is done after the publish.

        onMoveStart: function(/* dojo.dnd.Mover */ mover){
                // summary:
                //              called before every move operation
                dojo.publish("/dnd/move/start", [mover]);
                dojo.addClass(dojo.body(), "dojoMove");
                dojo.addClass(this.node, "dojoMoveItem");
        onMoveStop: function(/* dojo.dnd.Mover */ mover){
                // summary:
                //              called after every move operation
                dojo.publish("/dnd/move/stop", [mover]);
                dojo.removeClass(dojo.body(), "dojoMove");
                dojo.removeClass(this.node, "dojoMoveItem");

The solution would be to simply do the css modifications BEFORE publishing, which is also more logical. To solve this, we just need to modify the code like this :

        onMoveStart: function(/* dojo.dnd.Mover */ mover){
                // summary:
                //              called before every move operation
                dojo.addClass(dojo.body(), "dojoMove");
                dojo.addClass(this.node, "dojoMoveItem");
                dojo.publish("/dnd/move/start", [mover]);
        onMoveStop: function(/* dojo.dnd.Mover */ mover){
                // summary:
                //              called after every move operation
                dojo.removeClass(dojo.body(), "dojoMove");
                dojo.removeClass(this.node, "dojoMoveItem");
                dojo.publish("/dnd/move/stop", [mover]);

#13303 [patch][cla] FloatingPane defect on resize browser window (on FF) DojoX Layout 1.15 defect normal Jun 24, 2011

I create a floating pane; show it; then move it to another position (via mouse). Now I resize the browser window (via mouse) (or maximize it, or restore it from maximize). The floating pane return to its original position This not happen when I minimize and restore browser window.

I'm using 1.6.1 and FF5. This noo happen in 1.6 (from Google CDN) This not happen in IE8

I attach file (copied from your example doc)

#13357 ObjectStore: isItem(item) could also test for identity Data 1.15 defect minor Jul 3, 2011

Checking if object is a data.store.item in ObjectStore.isItem() could also use getIdentity(item) to determine if it belongs, e.g:

return (typeof item == 'object') && item && !(item instanceof Date) && this.getIdenty(item);

#13724 _insertAfter can be removed in dom-construct HTML 1.15 enhancement normal Aug 18, 2011

the following line:

_insertAfter(node, refNode);

can be replaced with:

_insertBefore(node, refNode.nextSibling);

this works correctly even if refNode is the last element

#13958 Add HTML5 history support to dojo.hash Core 1.15 enhancement normal Sep 20, 2011

I've been working on adding HTML5 history support to dojo.hash to enable RESTful URLs in Ajax applications. I've come up with a set of overrides to dojo.hash that enable this to work in my app, but I'm wondering if there's value in pushing this into dojo so that the greater community can benefit.

Here's a blog post describing the solution:


#14379 [patch][cla] GridContainerLite - publish restriction only on keyboard event DojoX Layout 1.15 defect normal Dec 3, 2011

In testGridContainerLite.html a function is connected to "/dojox/layout/gridContainer/moveRestriction", which is only publish on keyboard event.

This patch add publish from mdnd and then !gridContainerLite resend it.

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