Ticket #6575 (closed defect: fixed)

Opened 8 months ago

Last modified 5 months ago

TextArea: failure initializing on FF2

Reported by: bill Owned by:
Priority: normal Milestone: 1.2
Component: Dijit Version: 1.1.0
Severity: normal Keywords:
Cc:

Description (last modified by bill) (diff)

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

Changed 8 months ago by bill

  • description modified (diff)

Changed 8 months ago by bill

  • status changed from new to closed
  • resolution set to fixed

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

Changed 8 months ago by peller

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

Changed 8 months ago by peller

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

Changed 5 months ago by guest

  • status changed from closed to reopened
  • resolution deleted

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, archive.dojotoolkit.org/dojo-2008-07-01).

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, tdedischew@…

Changed 5 months ago by bill

  • status changed from reopened to closed
  • resolution set to fixed

FF 1.5 isn't supported by dojo.

Changed 5 months ago by guest

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

http://dojotoolkit.org/support/faq/what-browsers-does-dojo-support

;)

Changed 5 months ago by guest

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

Note: See TracTickets for help on using tickets.