     if(!evt){ if(window["event"]){ evt = window.event; } }  if((evt["type"])&&(evt["type"].indexOf("key") == 0)){ evt.keys = this.revKeys;  for(var key in this.keys){ evt[key] = this.keys[key]; } if(evt["type"] == "keydown" && dojo.render.html.ie){ switch(evt.keyCode){ case evt.KEY_SHIFT: case evt.KEY_CTRL: case evt.KEY_ALT: case evt.KEY_CAPS_LOCK: case evt.KEY_LEFT_WINDOW: case evt.KEY_RIGHT_WINDOW: case evt.KEY_SELECT: case evt.KEY_NUM_LOCK: case evt.KEY_SCROLL_LOCK:  case evt.KEY_NUMPAD_0: case evt.KEY_NUMPAD_1: case evt.KEY_NUMPAD_2: case evt.KEY_NUMPAD_3: case evt.KEY_NUMPAD_4: case evt.KEY_NUMPAD_5: case evt.KEY_NUMPAD_6: case evt.KEY_NUMPAD_7: case evt.KEY_NUMPAD_8: case evt.KEY_NUMPAD_9: case evt.KEY_NUMPAD_PERIOD: break; case evt.KEY_NUMPAD_MULTIPLY: case evt.KEY_NUMPAD_PLUS: case evt.KEY_NUMPAD_ENTER: case evt.KEY_NUMPAD_MINUS: case evt.KEY_NUMPAD_DIVIDE: break; case evt.KEY_PAUSE: case evt.KEY_TAB: case evt.KEY_BACKSPACE: case evt.KEY_ENTER: case evt.KEY_ESCAPE: case evt.KEY_PAGE_UP: case evt.KEY_PAGE_DOWN: case evt.KEY_END: case evt.KEY_HOME: case evt.KEY_LEFT_ARROW: case evt.KEY_UP_ARROW: case evt.KEY_RIGHT_ARROW: case evt.KEY_DOWN_ARROW: case evt.KEY_INSERT: case evt.KEY_DELETE: case evt.KEY_F1: case evt.KEY_F2: case evt.KEY_F3: case evt.KEY_F4: case evt.KEY_F5: case evt.KEY_F6: case evt.KEY_F7: case evt.KEY_F8: case evt.KEY_F9: case evt.KEY_F10: case evt.KEY_F11: case evt.KEY_F12: case evt.KEY_F12: case evt.KEY_F13: case evt.KEY_F14: case evt.KEY_F15: case evt.KEY_CLEAR: case evt.KEY_HELP: evt.key = evt.keyCode; break; default: if(evt.ctrlKey || evt.altKey){ var unifiedCharCode = evt.keyCode;  if(unifiedCharCode >= 65 && unifiedCharCode <= 90 && evt.shiftKey == false){ unifiedCharCode += 32; } if(unifiedCharCode >= 1 && unifiedCharCode <= 26 && evt.ctrlKey){ unifiedCharCode += 96; } evt.key = String.fromCharCode(unifiedCharCode); } } } else if(evt["type"] == "keypress"){ if(dojo.render.html.opera){ if(evt.which == 0){ evt.key = evt.keyCode; }else if(evt.which > 0){ switch(evt.which){ case evt.KEY_SHIFT: case evt.KEY_CTRL: case evt.KEY_ALT: case evt.KEY_CAPS_LOCK: case evt.KEY_NUM_LOCK: case evt.KEY_SCROLL_LOCK: break; case evt.KEY_PAUSE: case evt.KEY_TAB: case evt.KEY_BACKSPACE: case evt.KEY_ENTER: case evt.KEY_ESCAPE: evt.key = evt.which; break; default: var unifiedCharCode = evt.which; if((evt.ctrlKey || evt.altKey || evt.metaKey) && (evt.which >= 65 && evt.which <= 90 && evt.shiftKey == false)){ unifiedCharCode += 32; } evt.key = String.fromCharCode(unifiedCharCode); } } }else if(dojo.render.html.ie){  if(!evt.ctrlKey && !evt.altKey && evt.keyCode >= evt.KEY_SPACE){ evt.key = String.fromCharCode(evt.keyCode); } }else if(dojo.render.html.safari){ switch(evt.keyCode){ case 25: evt.key = evt.KEY_TAB; evt.shift = true;break; case 63232: evt.key = evt.KEY_UP_ARROW; break; case 63233: evt.key = evt.KEY_DOWN_ARROW; break; case 63234: evt.key = evt.KEY_LEFT_ARROW; break; case 63235: evt.key = evt.KEY_RIGHT_ARROW; break; case 63236: evt.key = evt.KEY_F1; break; case 63237: evt.key = evt.KEY_F2; break; case 63238: evt.key = evt.KEY_F3; break; case 63239: evt.key = evt.KEY_F4; break; case 63240: evt.key = evt.KEY_F5; break; case 63241: evt.key = evt.KEY_F6; break; case 63242: evt.key = evt.KEY_F7; break; case 63243: evt.key = evt.KEY_F8; break; case 63244: evt.key = evt.KEY_F9; break; case 63245: evt.key = evt.KEY_F10; break; case 63246: evt.key = evt.KEY_F11; break; case 63247: evt.key = evt.KEY_F12; break; case 63250: evt.key = evt.KEY_PAUSE; break; case 63272: evt.key = evt.KEY_DELETE; break; case 63273: evt.key = evt.KEY_HOME; break; case 63275: evt.key = evt.KEY_END; break; case 63276: evt.key = evt.KEY_PAGE_UP; break; case 63277: evt.key = evt.KEY_PAGE_DOWN; break; case 63302: evt.key = evt.KEY_INSERT; break; case 63248: case 63249: case 63289: break; default: evt.key = evt.charCode >= evt.KEY_SPACE ? String.fromCharCode(evt.charCode) : evt.keyCode; } }else{ evt.key = evt.charCode > 0 ? String.fromCharCode(evt.charCode) : evt.keyCode; } } } if(dojo.render.html.ie){ if(!evt.target){ evt.target = evt.srcElement; } if(!evt.currentTarget){ evt.currentTarget = (sender ? sender : evt.srcElement); } if(!evt.layerX){ evt.layerX = evt.offsetX; } if(!evt.layerY){ evt.layerY = evt.offsetY; }    var doc = (evt.srcElement && evt.srcElement.ownerDocument) ? evt.srcElement.ownerDocument : document; var docBody = ((dojo.render.html.ie55)||(doc["compatMode"] == "BackCompat")) ? doc.body : doc.documentElement; if(!evt.pageX){ evt.pageX = evt.clientX + (docBody.scrollLeft || 0) } if(!evt.pageY){ evt.pageY = evt.clientY + (docBody.scrollTop || 0) }  if(evt.type == "mouseover"){ evt.relatedTarget = evt.fromElement; }  if(evt.type == "mouseout"){ evt.relatedTarget = evt.toElement; } this.currentEvent = evt; evt.callListener = this.callListener; evt.stopPropagation = this._stopPropagation; evt.preventDefault = this._preventDefault; } return evt; } 
     if(!evt){ if(window["event"]){ evt = window.event; } }  if((evt["type"])&&(evt["type"].indexOf("key") == 0)){ evt.keys = this.revKeys;  for(var key in this.keys){ evt[key] = this.keys[key]; } if(evt["type"] == "keydown" && dojo.render.html.ie){ switch(evt.keyCode){ case evt.KEY_SHIFT: case evt.KEY_CTRL: case evt.KEY_ALT: case evt.KEY_CAPS_LOCK: case evt.KEY_LEFT_WINDOW: case evt.KEY_RIGHT_WINDOW: case evt.KEY_SELECT: case evt.KEY_NUM_LOCK: case evt.KEY_SCROLL_LOCK:  case evt.KEY_NUMPAD_0: case evt.KEY_NUMPAD_1: case evt.KEY_NUMPAD_2: case evt.KEY_NUMPAD_3: case evt.KEY_NUMPAD_4: case evt.KEY_NUMPAD_5: case evt.KEY_NUMPAD_6: case evt.KEY_NUMPAD_7: case evt.KEY_NUMPAD_8: case evt.KEY_NUMPAD_9: case evt.KEY_NUMPAD_PERIOD: break; case evt.KEY_NUMPAD_MULTIPLY: case evt.KEY_NUMPAD_PLUS: case evt.KEY_NUMPAD_ENTER: case evt.KEY_NUMPAD_MINUS: case evt.KEY_NUMPAD_DIVIDE: break; case evt.KEY_PAUSE: case evt.KEY_TAB: case evt.KEY_BACKSPACE: case evt.KEY_ENTER: case evt.KEY_ESCAPE: case evt.KEY_PAGE_UP: case evt.KEY_PAGE_DOWN: case evt.KEY_END: case evt.KEY_HOME: case evt.KEY_LEFT_ARROW: case evt.KEY_UP_ARROW: case evt.KEY_RIGHT_ARROW: case evt.KEY_DOWN_ARROW: case evt.KEY_INSERT: case evt.KEY_DELETE: case evt.KEY_F1: case evt.KEY_F2: case evt.KEY_F3: case evt.KEY_F4: case evt.KEY_F5: case evt.KEY_F6: case evt.KEY_F7: case evt.KEY_F8: case evt.KEY_F9: case evt.KEY_F10: case evt.KEY_F11: case evt.KEY_F12: case evt.KEY_F12: case evt.KEY_F13: case evt.KEY_F14: case evt.KEY_F15: case evt.KEY_CLEAR: case evt.KEY_HELP: evt.key = evt.keyCode; break; default: if(evt.ctrlKey || evt.altKey){ var unifiedCharCode = evt.keyCode;  if(unifiedCharCode >= 65 && unifiedCharCode <= 90 && evt.shiftKey == false){ unifiedCharCode += 32; } if(unifiedCharCode >= 1 && unifiedCharCode <= 26 && evt.ctrlKey){ unifiedCharCode += 96; } evt.key = String.fromCharCode(unifiedCharCode); } } } else if(evt["type"] == "keypress"){ if(dojo.render.html.opera){ if(evt.which == 0){ evt.key = evt.keyCode; }else if(evt.which > 0){ switch(evt.which){ case evt.KEY_SHIFT: case evt.KEY_CTRL: case evt.KEY_ALT: case evt.KEY_CAPS_LOCK: case evt.KEY_NUM_LOCK: case evt.KEY_SCROLL_LOCK: break; case evt.KEY_PAUSE: case evt.KEY_TAB: case evt.KEY_BACKSPACE: case evt.KEY_ENTER: case evt.KEY_ESCAPE: evt.key = evt.which; break; default: var unifiedCharCode = evt.which; if((evt.ctrlKey || evt.altKey || evt.metaKey) && (evt.which >= 65 && evt.which <= 90 && evt.shiftKey == false)){ unifiedCharCode += 32; } evt.key = String.fromCharCode(unifiedCharCode); } } }else if(dojo.render.html.ie){  if(!evt.ctrlKey && !evt.altKey && evt.keyCode >= evt.KEY_SPACE){ evt.key = String.fromCharCode(evt.keyCode); } }else if(dojo.render.html.safari){ switch(evt.keyCode){ case 25: evt.key = evt.KEY_TAB; evt.shift = true;break; case 63232: evt.key = evt.KEY_UP_ARROW; break; case 63233: evt.key = evt.KEY_DOWN_ARROW; break; case 63234: evt.key = evt.KEY_LEFT_ARROW; break; case 63235: evt.key = evt.KEY_RIGHT_ARROW; break; case 63236: evt.key = evt.KEY_F1; break; case 63237: evt.key = evt.KEY_F2; break; case 63238: evt.key = evt.KEY_F3; break; case 63239: evt.key = evt.KEY_F4; break; case 63240: evt.key = evt.KEY_F5; break; case 63241: evt.key = evt.KEY_F6; break; case 63242: evt.key = evt.KEY_F7; break; case 63243: evt.key = evt.KEY_F8; break; case 63244: evt.key = evt.KEY_F9; break; case 63245: evt.key = evt.KEY_F10; break; case 63246: evt.key = evt.KEY_F11; break; case 63247: evt.key = evt.KEY_F12; break; case 63250: evt.key = evt.KEY_PAUSE; break; case 63272: evt.key = evt.KEY_DELETE; break; case 63273: evt.key = evt.KEY_HOME; break; case 63275: evt.key = evt.KEY_END; break; case 63276: evt.key = evt.KEY_PAGE_UP; break; case 63277: evt.key = evt.KEY_PAGE_DOWN; break; case 63302: evt.key = evt.KEY_INSERT; break; case 63248: case 63249: case 63289: break; default: evt.key = evt.charCode >= evt.KEY_SPACE ? String.fromCharCode(evt.charCode) : evt.keyCode; } }else{ evt.key = evt.charCode > 0 ? String.fromCharCode(evt.charCode) : evt.keyCode; } } } if(dojo.render.html.ie){ if(!evt.target){ evt.target = evt.srcElement; } if(!evt.currentTarget){ evt.currentTarget = (sender ? sender : evt.srcElement); } if(!evt.layerX){ evt.layerX = evt.offsetX; } if(!evt.layerY){ evt.layerY = evt.offsetY; }    var doc = (evt.srcElement && evt.srcElement.ownerDocument) ? evt.srcElement.ownerDocument : document; var docBody = ((dojo.render.html.ie55)||(doc["compatMode"] == "BackCompat")) ? doc.body : doc.documentElement; if(!evt.pageX){ evt.pageX = evt.clientX + (docBody.scrollLeft || 0) } if(!evt.pageY){ evt.pageY = evt.clientY + (docBody.scrollTop || 0) }  if(evt.type == "mouseover"){ evt.relatedTarget = evt.fromElement; }  if(evt.type == "mouseout"){ evt.relatedTarget = evt.toElement; } this.currentEvent = evt; evt.callListener = this.callListener; evt.stopPropagation = this._stopPropagation; evt.preventDefault = this._preventDefault; } return evt; } 
	this.fixEvent = function(/*Event*/evt, /*DOMNode*/sender){		// summary:		//		normalizes properties on the event object including event		//		bubbling methods, keystroke normalization, and x/y positions		// evt: the native event object		// sender: the node to treat as "currentTarget"		if(!evt){			if(window["event"]){				evt = window.event;			}		}				if((evt["type"])&&(evt["type"].indexOf("key") == 0)){ // key events			evt.keys = this.revKeys;			// FIXME: how can we eliminate this iteration?			for(var key in this.keys){				evt[key] = this.keys[key];			}			if(evt["type"] == "keydown" && dojo.render.html.ie){				switch(evt.keyCode){					case evt.KEY_SHIFT:					case evt.KEY_CTRL:					case evt.KEY_ALT:					case evt.KEY_CAPS_LOCK:					case evt.KEY_LEFT_WINDOW:					case evt.KEY_RIGHT_WINDOW:					case evt.KEY_SELECT:					case evt.KEY_NUM_LOCK:					case evt.KEY_SCROLL_LOCK:					// I'll get these in keypress after the OS munges them based on numlock					case evt.KEY_NUMPAD_0:					case evt.KEY_NUMPAD_1:					case evt.KEY_NUMPAD_2:					case evt.KEY_NUMPAD_3:					case evt.KEY_NUMPAD_4:					case evt.KEY_NUMPAD_5:					case evt.KEY_NUMPAD_6:					case evt.KEY_NUMPAD_7:					case evt.KEY_NUMPAD_8:					case evt.KEY_NUMPAD_9:					case evt.KEY_NUMPAD_PERIOD:						break; // just ignore the keys that can morph					case evt.KEY_NUMPAD_MULTIPLY:					case evt.KEY_NUMPAD_PLUS:					case evt.KEY_NUMPAD_ENTER:					case evt.KEY_NUMPAD_MINUS:					case evt.KEY_NUMPAD_DIVIDE:						break; // I could handle these but just pick them up in keypress					case evt.KEY_PAUSE:					case evt.KEY_TAB:					case evt.KEY_BACKSPACE:					case evt.KEY_ENTER:					case evt.KEY_ESCAPE:					case evt.KEY_PAGE_UP:					case evt.KEY_PAGE_DOWN:					case evt.KEY_END:					case evt.KEY_HOME:					case evt.KEY_LEFT_ARROW:					case evt.KEY_UP_ARROW:					case evt.KEY_RIGHT_ARROW:					case evt.KEY_DOWN_ARROW:					case evt.KEY_INSERT:					case evt.KEY_DELETE:					case evt.KEY_F1:					case evt.KEY_F2:					case evt.KEY_F3:					case evt.KEY_F4:					case evt.KEY_F5:					case evt.KEY_F6:					case evt.KEY_F7:					case evt.KEY_F8:					case evt.KEY_F9:					case evt.KEY_F10:					case evt.KEY_F11:					case evt.KEY_F12:					case evt.KEY_F12:					case evt.KEY_F13:					case evt.KEY_F14:					case evt.KEY_F15:					case evt.KEY_CLEAR:					case evt.KEY_HELP:						evt.key = evt.keyCode;						break;					default:						if(evt.ctrlKey || evt.altKey){							var unifiedCharCode = evt.keyCode;							// if lower case but keycode is uppercase, convert it							if(unifiedCharCode >= 65 && unifiedCharCode <= 90 && evt.shiftKey == false){								unifiedCharCode += 32;							}							if(unifiedCharCode >= 1 && unifiedCharCode <= 26 && evt.ctrlKey){								unifiedCharCode += 96; // 001-032 = ctrl+[a-z]							}							evt.key = String.fromCharCode(unifiedCharCode);						}				}			} else if(evt["type"] == "keypress"){				if(dojo.render.html.opera){					if(evt.which == 0){						evt.key = evt.keyCode;					}else if(evt.which > 0){						switch(evt.which){							case evt.KEY_SHIFT:							case evt.KEY_CTRL:							case evt.KEY_ALT:							case evt.KEY_CAPS_LOCK:							case evt.KEY_NUM_LOCK:							case evt.KEY_SCROLL_LOCK:								break;							case evt.KEY_PAUSE:							case evt.KEY_TAB:							case evt.KEY_BACKSPACE:							case evt.KEY_ENTER:							case evt.KEY_ESCAPE:								evt.key = evt.which;								break;							default:								var unifiedCharCode = evt.which;								if((evt.ctrlKey || evt.altKey || evt.metaKey) && (evt.which >= 65 && evt.which <= 90 && evt.shiftKey == false)){									unifiedCharCode += 32;								}								evt.key = String.fromCharCode(unifiedCharCode);						}					}				}else if(dojo.render.html.ie){ // catch some IE keys that are hard to get in keyDown					// key combinations were handled in onKeyDown					if(!evt.ctrlKey && !evt.altKey && evt.keyCode >= evt.KEY_SPACE){						evt.key = String.fromCharCode(evt.keyCode);					}				}else if(dojo.render.html.safari){					switch(evt.keyCode){						case 25: evt.key = evt.KEY_TAB; evt.shift = true;break;						case 63232: evt.key = evt.KEY_UP_ARROW; break;						case 63233: evt.key = evt.KEY_DOWN_ARROW; break;						case 63234: evt.key = evt.KEY_LEFT_ARROW; break;						case 63235: evt.key = evt.KEY_RIGHT_ARROW; break;						case 63236: evt.key = evt.KEY_F1; break;						case 63237: evt.key = evt.KEY_F2; break;						case 63238: evt.key = evt.KEY_F3; break;						case 63239: evt.key = evt.KEY_F4; break;						case 63240: evt.key = evt.KEY_F5; break;						case 63241: evt.key = evt.KEY_F6; break;						case 63242: evt.key = evt.KEY_F7; break;						case 63243: evt.key = evt.KEY_F8; break;						case 63244: evt.key = evt.KEY_F9; break;						case 63245: evt.key = evt.KEY_F10; break;						case 63246: evt.key = evt.KEY_F11; break;						case 63247: evt.key = evt.KEY_F12; break;						case 63250: evt.key = evt.KEY_PAUSE; break;						case 63272: evt.key = evt.KEY_DELETE; break;						case 63273: evt.key = evt.KEY_HOME; break;						case 63275: evt.key = evt.KEY_END; break;						case 63276: evt.key = evt.KEY_PAGE_UP; break;						case 63277: evt.key = evt.KEY_PAGE_DOWN; break;						case 63302: evt.key = evt.KEY_INSERT; break;						case 63248://prtscr						case 63249://scrolllock						case 63289://numlock							break;						default: 							evt.key = evt.charCode >= evt.KEY_SPACE ? String.fromCharCode(evt.charCode) : evt.keyCode;					}				}else{					evt.key = evt.charCode > 0 ? String.fromCharCode(evt.charCode) : evt.keyCode;				}			}		}		if(dojo.render.html.ie){			if(!evt.target){ evt.target = evt.srcElement; }			if(!evt.currentTarget){ evt.currentTarget = (sender ? sender : evt.srcElement); }			if(!evt.layerX){ evt.layerX = evt.offsetX; }			if(!evt.layerY){ evt.layerY = evt.offsetY; }			// FIXME: scroll position query is duped from dojo.html to avoid dependency on that entire module			// DONOT replace the following to use dojo.body(), in IE, document.documentElement should be used			// here rather than document.body			var doc = (evt.srcElement && evt.srcElement.ownerDocument) ? evt.srcElement.ownerDocument : document;			var docBody = ((dojo.render.html.ie55)||(doc["compatMode"] == "BackCompat")) ? doc.body : doc.documentElement;			if(!evt.pageX){ evt.pageX = evt.clientX + (docBody.scrollLeft || 0) }			if(!evt.pageY){ evt.pageY = evt.clientY + (docBody.scrollTop || 0) }			// mouseover			if(evt.type == "mouseover"){ evt.relatedTarget = evt.fromElement; }			// mouseout			if(evt.type == "mouseout"){ evt.relatedTarget = evt.toElement; }			this.currentEvent = evt;			evt.callListener = this.callListener;			evt.stopPropagation = this._stopPropagation;			evt.preventDefault = this._preventDefault;		}		return evt; // Event	}
6315	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/6315/2f1d2cb699c9d9329e8b782b0463156e211cb0f6/struts_dojo.js.uncompressed.js/buggy/src/main/resources/org/apache/struts2/static/dojo/struts_dojo.js.uncompressed.js