Custom Query (48 matches)


Show under each result:

Ticket Summary Owner Type Status Priority Version
#75 Allow instantiation of widgets using new alex defect closed high 0.0

Allow an instance of *Menu to be instantiated using

new Menu(properties)

#130 provide system for publishing and allowing comment on system docs Neil Roberts defect closed high 0.1

the doc system was released for 0.4.0

#208 debugAtAllCosts: dojo.provides race conditions James Burke defect closed high 0.1

In browser_debug.js, dojo.hostenv.loadUri calls dojo.provide(), thus creating an empty package, but the package isn't filled in (with functions definitions, etc.) until much later in writeIncludes().

In particular this leads to a problem in event.js, which does a "if(dojo.eventbrowser?)". The code inside the "if" is executed because dojo.event.browser exists, but breaks because dojo.event.browser doesn't contain the expected functions.

Try loading test_fisheyewidget.html while moving your mouse over the screen (near where the icons are displayed) and then look in the javascript console to see the problem.

#744 dj_eval not evaluating in the global window context in IE James Burke defect closed high 0.3

I am using dojo.require to include a custom module outside of the dojo source tree. In this module, I declare a global (window scoped) variable like so:

var FOO = "bar";

dojo.require will then do an xmlhttprequest to fetch the context of my module and eval it using dj_eval. The problem is that in IE, window.eval will not evaluate the script in the context of the window, but rather in the context of the calling function, in this case dj_eval. So FOO will never be visible outside of my module. A workaround is to declare global variables in required modules like so:

FOO = "bar";

or like so:

window.FOO = "bar";

but this is a subtelty that will likely be lost on most module developers. A better solution will be to fix dj_eval to work right in IE:

function dj_eval(s){

if (dj_global.execScript){

return dj_global.execScript(s, "javascript");

} else if (dj_global.eval){

return dj_global.eval(s);

} else {

return eval(s);



#1125 [patch][cla] dojo.html.overElement() fails for span Bryan Forbes enhancement closed high 0.3


when an inline-element is wrapped, there are cases when html.overElement erroneously returns false. Our setup: we have a longish text, with tooltip-enabled spans:

summer belongs to Greece. September: Develops «Morphoride», a bus map 
through Morphopolis with 32 bus-stops visualized as Panoramas on canvas 
and as quick time movies. October: He finishes Morphopolis and 
Morphoride. Travels to China. Meets his friend 
<SPAN class="blue" id="connect-8-5">
  Dieter Zimmer
  <A href="" dojoType="tooltip" toggleDuration="500" toggle="fade" connectId="connect-8-5" style="display: none">
, professor for industrial design 

some of them end up being wrapped. Holding the mouse over the lower (wrapped) part of the span does nothing, while positioning the mouse above and scrolling down (using the arrow-keys) works, because no onMouseMove-events are triggered.

We have found that this is because html.overElement does not deal with wrapped inline elements.

Here is a proposed Fix, which does not solve all problems (there is still an area to the right of the upper part of the wrapped element where html.overElement returns true, and elements that are not wrapped have a similar problem on the left side), but works well enough for our needs:

--- src/html.js 2006-06-12 23:18:26.000000000 +0200
+++ src/html.js 2006-07-13 16:22:56.434106957 +0200
@@ -497,13 +497,30 @@

    var top = getAbsoluteY(element, true);
-   var bottom = top + getInnerHeight(element);
+    var height = getInnerHeight(element);
+   var bottom = top + height;
    var left = getAbsoluteX(element, true);
-   var right = left + getInnerWidth(element);
+    var width = getInnerWidth(element);
+   var right = left + width;

- return (mouse.x >= left && mouse.x <= right &&
+  var result = (mouse.x >= left && mouse.x <= right &&
    mouse.y >= top && mouse.y <= bottom);
+  if(result) return true;
+  // Check whether we are hovering over the lower part
+  // of a wrapped inline element:
+  var prnt = element.parentNode;
+  if(prnt) {
+    left = dojo.html.getAbsoluteX(prnt, true);
+    height = height / 2.0;
+    top += height;
+    right = left + width;
+    result = (mouse.x >= left && mouse.x <= right &&
+      mouse.y >= top && mouse.y <= bottom);
+  }
+  return result;

 dojo.html.setActiveStyleSheet = function(title){

See the setup and a patched 0.3.1 in action:

I'll get my signed ICLA on the fax tonight hopefully,


Hannes & Maege

#1628 click-dragging across the DatePicker causes error. tk defect closed high 0.3

dojo version 0.31 IE 6.0 & FF

If you button down on one date, then drag across to another date and button up, it causes an error.

here is how I patched it. in widget/html/DatePicker.js - onSetDate

I changed = new Date(year, month,; this.setDate(dojo.widget.DatePicker?.util.toRfcDate(; this.initUI();


var buf =; if(isNaN(buf)) {} else { = new Date(year, month, buf); this.setDate(dojo.widget.DatePicker?.util.toRfcDate(; this.initUI();


Stephen Zabel [email protected]

#1732 generate list of dojo widgets dante task closed high 0.3

Part 3 should contain a list of widgets provide by Dojo. Each widget should link to the API doc section which describes that widget.

#1767 DropDownDatePicker not width enough when using style="font-weight: bold;" Karl Tiedt defect closed high 0.4

The width of the input is not enough to show all the text. Firefox 1.5, Windows.

#1943 editor2 widget not working properly in opera liucougar defect closed high 0.4.1rc1

the buttonl like bold. etc, allow only to set text to bold its not possible to make it normal again. this is a problem from 3.x i think and still persists, checked on opera 9.02 and windows 2003. this renders editor widget not

#2094 test_editor2Dialog.html area too small (FF) liucougar defect closed high 0.4

On firefox, run test_Editor2InsideDialog.html and click either link. The text area is too small; can't type text into the editor

#3354 build 0.9-M2 produces "M2 is not defined" in uncompressed version of dojo.js James Burke defect closed high 0.9


Using the 0.9-M2 as downloaded from:

Testing in firefox on ubuntu 7.04.


Any HTML page referring to the script ../js/dojo/dojo.js.uncompressed yields a "M2 is not defined" on line 109.


Relevant snippet from that file

106 TODOC: HOW TO DOC THIS? 107 dojo.version = { 108 summary: version number of this instance of dojo. 109 major: 0, minor: 9-M2, patch: 0, flag: "", 110 revision: Number("$Rev: 8123 $".match(/[0-9]+/)[0]), 111 toString: function(){ 112 with(dojo.version){ 113 return major + "." + minor + "." + patch + flag + " (" + revision + ")"; String 114 } 115 } 116 }

shows that M2 is interpreted as a variable in the string for the 'minor' property of dojo.version


This could be avoided by defining the property value on line 109 as a string rather then a number/expression. So manually changing

minor: 9-M2


minor: '9-M2'

seems to resolve the issue here and now.

Towards a more fundamental/future-proof resolution:

I'm assuming this version-info is inserted automatically by the release/build system under the 'util' portion of your svn tree. Quickly scanning that I assume the relevant lines inside [util-trunk]/buildscripts/jslib/buildUtil.js are these:

454 Set version number. 455 First, break apart the version string. 456 var verSegments = version.split("."); 457 var majorValue = 0; 458 var minorValue = 0; 459 var patchValue = 0; 460 var flagValue = ""; 461 462 if(verSegments.length > 0 && verSegments[0]){ 463 majorValue = verSegments[0]; 464 } 465 if(verSegments.length > 1 && verSegments[1]){ 466 minorValue = verSegments[1]; 467 } 468 if(verSegments.length > 2 && verSegments[2]){ 469 If the patchValue has a string in it, split 470 it off and store it in the flagValue. 471 var patchSegments = verSegments[2].split(/D/); 472 patchValue = patchSegments[0]; 473 if(patchSegments.length > 1){ 474 flagValue = verSegments[2].substring(patchValue.length, verSegments[2].length); 475 } 476 } 477 if(verSegments.length > 3 && verSegments[3]){ 478 flagValue = verSegments[3]; 479 } 480 481 Do the final version replacement. 482 dojoContents = dojoContents.replace( 483 /major:s*d*,s*minor:s*d*,s*patch:s*d*,s*flag:s*".*?"s*,/g, 484 "major: " + majorValue + ", minor: " + minorValue + ", patch: " + patchValue + ", flag: "" + flag Value + ""," 485 );

My first reflex would be to massage the various major/minor/patchValue variables before insertion, letting them have surrounding quotes when they're not simple numbers.

With something like:

xxValue = makeSafePropertyValue(verSegments[yy]);


function makeSafePropertyValue(value) {

if ("" + value == "" + new Number(value))

return value;

return "'" + value + "'";


#3499 Port DeferredList to 0.9 Dustin Machi defect closed high 0.9

I'm starting to port my code to 0.9 and need DeferredList?. The road map says it will now be part of dojox. Any chance this can be ported soon?


#3941 xhr formToQuery wrong url when multiple inputs have the same name. anonymous defect closed high 0.9

xhr form handling code will not generate proper url when multiple inputs have the same name.

<input type="checkbox" checked name="multi2" value="bing">
<input type="checkbox" checked name="multi2" value="bong">

url will currently be multi2=bong while browser will generate multi2=bing&multi2=bong

the issue is further complicated by fact that current code uses object as an intermediate format and that url has no notion of array.
If we look object->form->object conversion for example:
both objects {"multi2": "bing"} and {"multi2": ["bing"]} will result in same query string multi2=bing .
it is obvious we can not convert this back to object, and code expecting array will break if url holds only one value.

php on server side has a simple naming convention to address this. For multiple values of a parameter:
if parameter name ends with "[]" an array will be created with all values, and "[]" will be stripped from parameter name,
if parameter name doesn't end with "[]" only last value will be used.

The issue goes even further because browser will handle any input with the same name this way, it will simply add the value to url as many times as the input appears.

I've created test case and patch for this issue addressing only checkbox because it is very common usage.

I'm have a version that follows mentioned php convention, but this may be unsuitable for some users.

I've sent a request for becomming a contributor, signed CLA also. alex could you spare some time and answer my email, am I not welcome ?. (sorry for using tracc for this.)

#4121 dijit.layout.layoutChildren should work on a set of raw DOM nodes, not just widgets alex defect closed high 0.9

today, layoutChildren assumes some properties on the children instances which make it impossible to simply pass a property-bag of DOM nodes (say, a dojo.NodeList? instance)

#4145 Integrate OpenAjax hub Adam Peller task closed high 0.9
#4295 Passing response body to error handler when dealing with XHR error code James Burke enhancement closed high 0.9

Normally when doing XHR, if the request is invalid (like if a field is missing or even if there's an incorrect password) I have the API respond with an error code (400 usually) and some JSON as the response body normally containing a reason for the error so the front end can deal with it nicely, like give the user a meaningful message.

However, when using dojo.xhrGet() the response is just an Error object if an error response code is returned, the only way to get to the actual JSON response is to parse ioArgs.xhr.responseText which is horrible compared to just getting the JSON object as the response as is the case with a successful request.

I propose that Dojo return the response body to the error handler as whatever was specified with 'handleAs' rather than forcing the handler to parse it manually from the xmlhttprequest object.

#4296 build error when using packer for optimization James Burke defect closed high 0.9

this happened with current trunk, on Mac OSX and here the error output:

js: "/Users/rsaccon/code/foo/www/static/dev/dojox/encoding/bits.js", line 43: missing name after . operator js: this.byte = this.bit = 0; js: .......... js: "/Users/rsaccon/code/foo/www/static/dev/dojox/encoding/bits.js", line 51: missing name after . operator js: var v = this.buffer[this.byte] >>> (8 - this.bit - w); js: ................................ js: "/Users/rsaccon/code/foo/www/static/dev/dojox/encoding/bits.js", line 56: missing name after . operator js: ++this.byte; js: ............... js: "/Users/rsaccon/code/foo/www/static/dev/dojox/encoding/bits.js", line 64: missing name after . operator js: return this.width - this.byte * 8 - this.bit; js: ............................... js: "/Users/rsaccon/code/foo/www/static/dev/dojox/encoding/bits.js", line 1: Compilation produced 4 syntax errors.

#4327 SingleQuote in content using iframe transport fails James Burke defect closed high 0.9

Having a single quote in a property of content passed to bind posts only text before single quote in IE.

This is caused by way the hidden input is created in IE:

	var tn;
		tn = dojo.doc.createElement("<input type='hidden' name='"+x+"' value='"+content[x]+"'>");
		tn = dojo.doc.createElement("input");
		tn.type = "hidden"; = x;
		tn.value = content[x];

The value should be set after the element is created.

	var tn;
		tn = dojo.doc.createElement("<input type='hidden' name='"+x+"'>");
		tn = dojo.doc.createElement("input");
		tn.type = "hidden"; = x;
	tn.value = content[x];

This bug is also present in 0.4.x. Are we fixing bugs there anymore?

Patch is included.


#4330 xhrGet not working with select multiple in a form James Burke defect closed high 0.9

Passing a form to xhrGet that has a select with the multiple attribute does not send a value for that element.

Some discussion here:

#4337 [patch][cla]Unable to return a custom error from a Deferred Canceller. alex defect closed high 0.9

The deferred documentation says that if the "canceller" returns a custom error, that custom error will be sent to the errback chain. That is essential behavior for generic cancellers.

Right now the cancel call is hacked to always return a new Exception, and the err.dojoType = "cancel" is glued to that exception and passed to the errback chain.

The cancel call should pass the return value from the canceller, or a new Exception if the canceller doesn't return anything, to the errback chain. Deferred that depend on particular values in the Exception should implement a custom canceller to correctly configure their cancel error.

#4338 Parser: allow overriding startup methods bill task closed high 0.9

If function foo() is called by postCreate() etc., then you can define it like

<button dojoType=dijit.form.Button foo="...">

but can't define it like

<button dojoType=dijit.form.Button>
   <script type="dojo/method" event="foo">...

Allow this by changing parser to mixin foo into the parameters to the widget:

  new dijit.form.Button({foo: ...});

for both the first and second case (it's already done for the first case)

#4398 Include LICENSE files with 0.9 code James Burke task closed high 0.9

Need to add the LICENSE files to the 0.9 code.

#4447 dojo.publish throws an exception if you publish to a topic that has no subscribers alex defect closed high 0.9

Not much more to say than the subject.

#4460 Tree example is now nearly fully expanded Dustin Machi defect closed high 0.9

Something changed between 2007-09-13 and 2007-09-14 that makes the tree example start in a nearly fully expanded state. The tree was fully collapsed before the change. The tree example I am looking at is located here

#4481 Invalid UL closure in test html. anonymous defect closed high 0.9

In file:


Invalid UL closure:


<li>Click on one of the buttons below.</li> <li>Save the resulting URL as a bookmark.</li> <li>Close the browser window, or navigate to a different page.</li> <li>Click on the bookmark to jump to that state in the page</li>

--> </p>

Line 129 is wrong.

#4495 Use of assignment equals instead of comparison == James Burke defect closed high 0.9

Loaded dojo.js.uncompressed.js in Aptana IDE and discovered that on line 59 = was used in the while loop rather than the comparison operator ==. Here is the code snippet for search purposes:



console[tn] = function(){};



#4520 hooks to apply label class to treenode Dustin Machi defect closed high 0.9

similar to getIconClass, we need a getLabelClass(item) to customize the look of a label depending on what it is

#4533 Fixing minor HTML markup errors in a few files Jared Jurkiewicz defect closed high 0.9

Fixing minor HTML markup errors in a few files

When browsing dojo with Eclipse, it noted several document markup problems in some files. Simple fixes, therefore making them under this defect.

#4563 Floating Pane does not z-index properly dante defect closed high 0.9

BladeSling?: I dunno.. I do show and hide.. but when I show it doesn't come out on top phiggins_afk: BladeSling?: thinking about it i think it only does the zindex thing on drag phiggins_afk: and click phiggins_afk: not show/hide BladeSling?: It should be changed? phiggins_afk: file a ticket complaining about zindex tracking

The z-index needs to be updated on dijit.byId(FloatingPaneWidget?).show();

#4611 document the dojo API dante defect closed high 0.9

generic ticket (because I can't find one that exists) to ref when making changes to trunk/dojo regarding documentation. 1.0 is right around the corner, so the time is now to bring all your parameters and summaries up to date. there are a lot of undocumented or poorly documented public APIs.

#4644 IE7 Crashes when clearing console Adam Peller defect closed high 0.9

I have a simple HTML page, code below. When I open it in IE7, click the 'Clear' link on the console, its fine.

I then enter a JavaScript? statement (example 'window', 'document') & hit enter, it evaluates and shows the output to the console. But now clicking the 'Clear' link crashes IE7.

    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <script type="text/javascript">djConfig = { isDebug:true }</script>
    <script type="text/javascript" src="js/dojo/dojo/dojo.js"></script>
#4647 dojo back button support logging to console Ben Lowery defect closed high 0.9

logs this to console: checking url done checking

#4687 Scope for attaching deferred callbacks to a deferred lists' call back is incorrect Dustin Machi defect closed high 0.9
#4688 parser choking on odd use of dojo.mixin(dojo.clone(object)) Neil Roberts defect closed high 0.9

line 19 of dijit/form/Textarea.js:

 attributeMap: dojo.mixin(dojo.clone(dijit.form._FormWidget.prototype.attributeMap),
                {style:"styleNode", 'class':"styleNode"}),

parser treats the dojo.clone() call as an object, and seems to be recursing into itself giving style and class attribs to a weird object. You understand as per our discussions.

#4752 checkbox and radio button need a11y documentation davidb task closed high 0.9

There is no a11y documentation - particularly keyboard behavior for the checkbox and radio buttons.

#4769 noir not ready for 1.0 release alex defect closed high 0.9

the 1.0 release buildscripts should exclude dijit/trunk/themes/noir

its doesn't work at all atm.

#4777 Hash handling is inconsistent between browsers, breaking dojo.back Ben Lowery defect closed high 0.9

Firefox / Mozilla automatically decodes the string in the hash when accessing it through window.location.hash. No other browser does, and we need to work around it.

#4806 mail demo fails on IE6 alex defect closed high 0.9

like it says on the tin. The mail demo is bombing out on IE 6 only. Seems require() gets "confused", perhaps WRT dojo's root location?

#4814 doh failures in dojo.number Adam Peller defect closed high 0.9

GROUP "tests.number" has 26 tests to run
 PASSED test: number
 PASSED test: format
 PASSED test: parse
 PASSED test: format_icu4j3_6
 PASSED test: format_patterns
 PASSED test: exponential
 PASSED test: format_quotes
 PASSED test: format_rounding
 PASSED test: format_scientific
 PASSED test: format_perMill
 PASSED test: format_grouping
 PASSED test: format_pad
 runBatchParse() failed: Error: Bundle not found: number in dojo.cldr , locale=en
     ERROR IN:
  (function (t) {var pattern = "00";var str = "0.0";var result = dojo.number.parse(str, {pattern:pattern});var options = {locale:"en"};var passData = ["0", "0.0", "1234567", "1,234,567"];runBatchParse(options, passData, true);var failData = ["00", "012", "0,456", "1,2", ",0", ",1", ",.02", "1,.02", "1,,200", "1,45", "1,45.34", "1234,567", "12,34,567", "1,23,456,7890"];runBatchParse(options, failData, false);options = {pattern:"#,##,##0.#", locale:"en-us"};var mixedPassData = ["12,34,567"];runBatchParse(options, mixedPassData, true);var mixedFailData = ["12,34,56", "12,34,56,"];runBatchParse(options, mixedFailData, false);})
#4818 typo in ItemFileWriteStore tk defect closed high 0.9

identify should be identity.

#4829 tests failing Adam Peller defect closed high 0.9

perhaps something to do with the new throw if something goes wrong in the xhr json code?

#4907 currency format on safari messed up Adam Peller defect closed high 0.9

Running dijit/tests/form/test_validate.html on Safari3/WinXP, The first currency field (Annual Income) on FF2 and IE6 is formatted as "$54,775.53" but on Safari3/Win it is "US$54,775.53"

#4978 Extra "mousemove" in NodeList.js James Burke defect closed high 0.9

In the syntactic sugar section at the bottom of the file, "mousemove" is listed twice.

#5009 dojox: grid -- grid doesnt clean up correctly on destroy() tk defect closed high 0.9

Grid.js is missing: this.inherited(arguments); in its destroy() function... the result of not having this is that you get a build up of DojoX_Grid_X objects in the dijit registry...

#7071 problem opening page with javascript bookmark in Firefox3 anonymous defect closed high 0.4.2

In our special application users can generate bookmarks like this javascript:url="http://localhost:8080/superx/servlet/SuperXmlMaske?tid=17000&Kostentr%C3%A4ger=12080003&Kostentr%C3%A4ger-Sicht=Hauptsicht%20Kostentr%C3%A4ger&untergeordnete%20aufsummieren?=ja&Haushaltsjahr=2002&Zeitraum=monat%3E%3D1%20and%20monat%3C%3D1";%20if%20(window.oeffne)%20oeffne(url);%20else%20self.location.href=url;

it worked fine in Firefox 2 but in Firefox 3, I got an exception reading window.document disallowed in dojo.js line 11958

I'm not sure what the problem was, but adding a try-catch seems to help

this.registerAllWindows=function(_aea){ if(!_aea){ try{



catch (e){return;}

If you have a less dirty solution, let me know.

#246 Offset for return animation after dragging failed anonymous defect closed low 0.2

Even in the regular dnd tests, one can observe that when dragging fails, the object does not exactly to it's original position, but to a position that is one pixel to the right and one pixel below. With div's that have a padding, it is even worse, the padding is ignored entirely, and the offset is wrong by padding-1 to the top left direction.

(Ow, my english sucks, sorry for that :/)

#3186 Editor2 loading using createWidget fails James Burke defect closed low 0.4

I have a function 'includeLibs' that includes some other js files that i use. The includeLibs functions is called after onLoad using dojo.addOnLoad.

In the include libs function i include a js file called form.js that requires Editor2. So the form.js file has the following line:


Now whenever a form is loaded (using ajax) my script searches for editor2 components. If found it calls dojo.widget.createWidget to create an Editor2 component.

But that fails.. In the code below i get the following error message:

"dojo:editor2" widget object has no "create" method and does not appear to implement *Widget"


<textarea form-required="true" form-type="xhtml"
toolbarAlwaysVisible="true" shareToolbar="false"
useActiveX="true" htmlEditing="true"
id="messages/content" name="messages/content" class="form xhtml">
Vul in...

var element=dojo.byId("messages/content");
try {
    var editor=dojo.widget.createWidget(
        "Editor2", {htmlEditing: true},
} catch(e) {
   alert ( e.message );

I noticed this bug when switching from ( i think not sure 0.4.1 ) to 0.4.3

#4796 Textarea: nls en/en-us entries missing anonymous defect closed low 0.9

The test_Textarea.html page is trying to load the following files, which don't exist.

dijit/nls/en/Textarea.js dijit/nls/en-us/Textarea.js

Note: See TracQuery for help on using queries.