Closed Bug 150260 Opened 22 years ago Closed 22 years ago

composer incorrectly inserts <br> at the end of paragraphs while in "paragraph" format

Categories

(SeaMonkey :: Composer, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

VERIFIED WONTFIX

People

(Reporter: null_pointer_us, Assigned: mozeditor)

Details

From Bugzilla Helper:
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.0.0) Gecko/20020530
BuildID:    2002053012

When I pick the "Paragraph" paragraph format and hit enter to add new
paragraphs, composer inserts a <br> tag. This is unintuitive and should be
changed. Composer leaves <br> randomly scattered around the document just before
the ending </p> of some paragraphs, and also at the end of other tags (included
the <hX> tags), leading to a messed up document that can only be fixed by
editing the html code directly.

Reproducible: Always
Steps to Reproduce:
1. Create a new document in Composer. (By default, composer has already created
an unnecessary <br> tag - check the code.)
2. Before typing anything in Composer, change the paragraph format to
"Paragraph." (Note that the unnecessary break tag from the empty document has
moved itself inside the <p> tags.)
3. Type in a line or so of text. (Note that the <br> tag still exists, even
though the <p> tags are not empty.)
4. Press enter twice, because once only inserts a <br> tag. (Note that the
original <br> tag remains in the first paragraph, while the new paragraph now
contains two <br> tags.)
5. Type in another line or so of text.
6. Press enter twice again. (Note that now the second paragraph now contains a
<br> tag between the opening <p> tag and the actual text, resulting in a messed
up document.)
7. Change the paragraph format to "Heading 1."
8. Type in some text for the heading.
9. Press enter once.
10. Change the paragraph forma to "Paragraph."
11. Type in a line or so of text.
12. Press enter. (Note that the preceding paragraph now contains two <br> tags,
and the <body> tags now contain a <br> near the end. Is this random?)

Actual Results:  The document was littered with extra <br> tags.

Expected Results:  Composer should have recognized that the <p> tags are used
for the "Paragraph" style and not inserted the extra <br> tags.

I think that the logic behind the code responsible for handling the conversion
of Composer interface commands to HTML code does not properly consider the tags
which have intrinsic spacing rules, and therefore it  inserts <br> tag wherever
a space occurs in the Normal view. At the very least, the behavior of the <p>
tag ought to be fixed.
-->jfrancis
Assignee: syd → jfrancis
This is intentional.  It is a dedsign decision reflecting our user base, which a 
largely html illiterate and expect a return to generate a new line, not a 
vertical margin (which a new paragraph would create).  It is possible we will 
revisit this decision later but in the meantime just hit a second return when you 
want to split a paragraph.  If you hit two we will remove the first br and then 
split the paragraph.
Status: UNCONFIRMED → RESOLVED
Closed: 22 years ago
Resolution: --- → WONTFIX
verified.
Status: RESOLVED → VERIFIED
I don't think that you understand the problem.

"This is intentional.  It is a dedsign decision reflecting our user base, which a 
largely html illiterate and expect a return to generate a new line, not a 
vertical margin (which a new paragraph would create)."

And that's why the default style is "Body Text." However, when I specifically
select the style called "Paragraph" I expect Composer to generate paragraphs not
newline characters. Having to press Enter twice is a bit of an annoyance, though.

Even if this behavior is intentional, it has little to do with the problem I
reported other than being an indirect cause. The real problem is that while
Composer DOES create new paragraphs when Enter is pressed twice, it still leaves
EXTRA <br> tags littered throughout the document. This can cause Composer's
various views to behave erratically.

Sometimes documents display properly, and sometimes they do not. I can save a
document with the vertical margins displaying just like I want them and then
reopen the *same* document with the vertical margins displayed all messed up.

Sometimes the extra <br> tags simply render the "enter" key useless - you can
sit around all day with your finger pressing the enter key and it will do
NOTHING. And other times Composer will simply not allow you to skip just one
space after a heading, because of the extra <br> tags left littered in between
the heading tags; at these times you can either have zero vertical margins or
two, but never one.

Regardless of whether the pressing-enter-inserts-br behavior is intentional,
Composer should not leave redundant <br> tags littered all over the document. It
REALLY plays havoc with cut+paste editing. Some problems can only be fixed by
directly editing the HTML to remove the incorrectly remaining <br> tags.

This is a serious bug, and somebody ought to look into it.
If you want to talk about other bugs, by all means do so.  But file specific 
(new) bug reports with specific testcases.  The problems you mention should not 
be happenning even if we continue to leave br's at the ends of paragraphs.  
Apples and oranges.
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.