function insertBr() {
				var brElm, extraBr, marker;

				if (container && container.nodeType == 3 && offset >= container.nodeValue.length) {
					// Insert extra BR element at the end block elements
					if (!tinymce.isIE && !hasRightSideBr()) {
						brElm = dom.create('br');
						rng.insertNode(brElm);
						rng.setStartAfter(brElm);
						rng.setEndAfter(brElm);
						extraBr = true;
					}
				}

				brElm = dom.create('br');
				rng.insertNode(brElm);

				// Rendering modes below IE8 doesn't display BR elements in PRE unless we have a \n before it
				if (tinymce.isIE && parentBlockName == 'PRE' && (!documentMode || documentMode < 8)) {
					brElm.parentNode.insertBefore(dom.doc.createTextNode('\r'), brElm);
				}

				// Insert temp marker and scroll to that
				marker = dom.create('span', {}, '&nbsp;');
				brElm.parentNode.insertBefore(marker, brElm);
				selection.scrollIntoView(marker);
				dom.remove(marker);

				if (!extraBr) {
					rng.setStartAfter(brElm);
					rng.setEndAfter(brElm);
				} else {
					rng.setStartBefore(brElm);
					rng.setEndBefore(brElm);
				}

				selection.setRng(rng);
				undoManager.add();
			}
function insertBr() {
				var brElm, extraBr, marker;

				if (container && container.nodeType == 3 && offset >= container.nodeValue.length) {
					
					if (!tinymce.isIE && !hasRightSideBr()) {
						brElm = dom.create('br');
						rng.insertNode(brElm);
						rng.setStartAfter(brElm);
						rng.setEndAfter(brElm);
						extraBr = true;
					}
				}

				brElm = dom.create('br');
				rng.insertNode(brElm);

				
				if (tinymce.isIE && parentBlockName == 'PRE' && (!documentMode || documentMode < 8)) {
					brElm.parentNode.insertBefore(dom.doc.createTextNode('\r'), brElm);
				}

				
				marker = dom.create('span', {}, '&nbsp;');
				brElm.parentNode.insertBefore(marker, brElm);
				selection.scrollIntoView(marker);
				dom.remove(marker);

				if (!extraBr) {
					rng.setStartAfter(brElm);
					rng.setEndAfter(brElm);
				} else {
					rng.setStartBefore(brElm);
					rng.setEndBefore(brElm);
				}

				selection.setRng(rng);
				undoManager.add();
			}
function insertBr ( ) { var brElm , extraBr , marker ; if ( container && container . nodeType == 3 && offset >= container . nodeValue . length ) { // Insert extra BR element at the end block elements
 if ( ! tinymce . isIE && ! hasRightSideBr ( ) ) { brElm = dom . create ( 'br' ) ; rng . insertNode ( brElm ) ; rng . setStartAfter ( brElm ) ; rng . setEndAfter ( brElm ) ; extraBr = true ; } } brElm = dom . create ( 'br' ) ; rng . insertNode ( brElm ) ; // Rendering modes below IE8 doesn't display BR elements in PRE unless we have a \n before it
 if ( tinymce . isIE && parentBlockName == 'PRE' && ( ! documentMode || documentMode < 8 ) ) { brElm . parentNode . insertBefore ( dom . doc . createTextNode ( '\r' ) , brElm ) ; } // Insert temp marker and scroll to that
 marker = dom . create ( 'span' , { } , '&nbsp;' ) ; brElm . parentNode . insertBefore ( marker , brElm ) ; selection . scrollIntoView ( marker ) ; dom . remove ( marker ) ; if ( ! extraBr ) { rng . setStartAfter ( brElm ) ; rng . setEndAfter ( brElm ) ; } else { rng . setStartBefore ( brElm ) ; rng . setEndBefore ( brElm ) ; } selection . setRng ( rng ) ; undoManager . add ( ) ; }
Inserts a BR element if the forced_root_block option is set to false or empty string
Inserts a BR element if the forced_root_block option is set to false or empty string