rem: this.contextMenuDiv.style.left = (x > vp.width - width ? vp.width - width : x) + 'px'; this.contextMenuDiv.style.top = (y - yo > vp.height - height ? vp.height - height + yo : y) + 'px'; 
add: this.contextMenuDiv.style.left = (x > vp.left + vp.width - width ? vp.left + vp.width - width : x) + 'px'; this.contextMenuDiv.style.top = (y > vp.top + vp.height - height ? vp.top + vp.height - height : y) + 'px'; 
context: 	show : function(x, y) {		var vp, width, height, yo;		if (this.html == "")			return;		var html = '';		html += '<a href="#"></a><table border="0" cellpadding="0" cellspacing="0">';		html += this.html;		html += '</table>';		this.contextMenuDiv.innerHTML = html;		// Get dimensions		this.contextMenuDiv.style.display = "block";		width = this.contextMenuDiv.offsetWidth;		height = this.contextMenuDiv.offsetHeight;		this.contextMenuDiv.style.display = "none";		if (tinyMCE.isMSIE && !tinyMCE.isMSIE5_0 && !tinyMCE.isOpera) {			// Setup popup and show			this.pop.document.body.innerHTML = '<div class="contextMenu">' + html + "</div>";			this.pop.document.tinyMCE = tinyMCE;			this.pop.document.contextMenu = this;			this.pop.show(x, y, width, height);		} else {			vp = this.getViewPort();			yo = tinyMCE.isMSIE5_0 ? document.body.scrollTop : self.pageYOffset;			this.contextMenuDiv.style.left = (x > vp.width - width ? vp.width - width : x) + 'px';			this.contextMenuDiv.style.top = (y - yo > vp.height - height ? vp.height - height + yo : y) + 'px';			this.contextMenuDiv.style.display = "block";		}	},
meta: 2801	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/2801/d5e3dd3fd005d20b86115793ad0dde7cfd64dc8c/editor_plugin_src.js/clean/jscripts/tiny_mce/plugins/contextmenu/editor_plugin_src.js