Opened 14 years ago

Closed 14 years ago

Last modified 11 years ago

#6575 closed defect (fixed)

TextArea: failure initializing on FF2

Reported by: bill Owned by:
Priority: high Milestone: 1.2
Component: Dijit - Form Version: 1.1.0
Keywords: Cc:
Blocked By: Blocking:

Description (last modified by bill)

When running test_Textarea.html on trunk, I get an initialization error in FF2:

[Exception... "'Error: dijit.form.Textarea template:_iframeEditTitle' when calling method:
[nsIDOMEventListener::handleEvent]" nsresult: "0x8057001c
(NS_ERROR_XPC_JS_THREW_JS_OBJECT)" location: "<unknown>" data: no]

The same test on the 1.1 release runs fine.

Regression from [13325]

Change History (9)

comment:1 Changed 14 years ago by bill

Description: modified (diff)

comment:2 Changed 14 years ago by bill

Resolution: fixed
Status: newclosed

(In [13360]) fix key names in TextArea? nls file. Fixes #6575, refs #6314, #3812, #6538.

comment:3 Changed 14 years ago by Adam Peller

(In [13371]) fix translated Textarea files to use keys that match the code. Refs #6575, #6314, #3812

comment:4 Changed 14 years ago by Adam Peller

(In [13372]) fix translated Textarea files to use keys that match the code. Refs #6575, #6314, #3812

comment:5 Changed 14 years ago by guest

Resolution: fixed
Status: closedreopened

I'm seeing this very same exception in FF1.5 (.0.12) in all recent releases (1.1.0, 1.1.1 current-dev/current-stable,

I think there is code misalignment caused by new FF2.0-specific logic. Manually setting dojo.isFF = 2.0 just prior to requiring dijit solves this particular exception, but leads to others.

I believe the problem is the dijit.form.Textarea templateString: references $(_iframeEditTitle) in all isFF except 3, but only defines that prop later in postMixInProperties if dojo.isFF == 2...:

	templateString: (dojo.isIE || dojo.isSafari || dojo.isFF) ?
				((dojo.isIE || dojo.isSafari || dojo.isFF >= 3) ? '<fieldset id="${id}" class="dijitInline dijitInputField dijitTextArea" dojoAttachPoint="styleNode" waiRole="presentation"><div dojoAttachPoint="editNode,focusNode,eventNode" dojoAttachEvent="onpaste:_changing,oncut:_changing" waiRole="textarea" style="text-decoration:none;display:block;overflow:auto;" contentEditable="true"></div>'
					: '<span id="${id}" class="dijitReset">'+
					'<iframe src="javascript:<html><head><title>${_iframeEditTitle}</title></head><body><script>var _postCreate=window.frameElement?window.frameElement.postCreate:null;if(_postCreate)_postCreate();</script></body></html>"'+
							' dojoAttachPoint="iframe,styleNode" dojoAttachEvent="onblur:_onIframeBlur" class="dijitInline dijitInputField dijitTextArea"></iframe>')
				+ '<textarea name="${name}" value="${value}" dojoAttachPoint="formValueNode" style="display:none;"></textarea>'
				+ ((dojo.isIE || dojo.isSafari || dojo.isFF >= 3) ? '</fieldset>':'</span>')
			: '<textarea id="${id}" name="${name}" value="${value}" dojoAttachPoint="formValueNode,editNode,focusNode,styleNode" class="dijitInputField dijitTextArea">'+dojo.isFF+'</textarea>',

Best regards, [email protected]

comment:6 Changed 14 years ago by bill

Resolution: fixed
Status: reopenedclosed

FF 1.5 isn't supported by dojo.

comment:7 Changed 14 years ago by guest

Fair enough (this is a possibility I considered before reopening), except:


comment:8 Changed 14 years ago by guest

just spoke with phiggins on #dojo and had the faq updated with a note that Dijit's FF2+. thanks, -t

comment:9 Changed 11 years ago by bill

Component: DijitDijit - Form
Note: See TracTickets for help on using tickets.