var is_short = empty ? Roo.htmleditor.TidyWriter.shortend_elements.indexOf(name) > -1 : false;
+ var i_inline = name == 'BR' ? false : in_inline;
+ if (i_inline && this.lastElementEndsWS()) {
+ i_inline = false;
+ }
- var indentstr = in_inline || this.in_pre ? '' : this.indentstr;
+ var indentstr = i_inline || this.in_pre ? '' : this.indentstr;
+
+ // e_inline = elements that can be inline, but still allow \n before and after?
+ // only 'BR' ??? any others?
+ var e_inline = name == 'BR' ? false : this.in_inline;
// if this element is inline - then don't add stuff beforehand..
- if (!in_inline && !this.in_pre) {
+ if (!e_inline && !this.in_pre) {
this.addLine();
}
},
+
+ lastElementEndsWS : function()
+ {
+ var value = this.html.length > 0 ? this.html[this.html.length-1] : false;
+ if (value === false) {
+ return true;
+ }
+ return value.match(/\s+$/);
+
+ },
+
/**
* Writes the a end element such as </p>.
*