Open Bug 249470 Opened 21 years ago Updated 3 years ago

"Indent" button on mail composer nests in <blockquote> rather than actually indenting

Categories

(Core :: DOM: Editor, enhancement, P5)

enhancement

Tracking

()

People

(Reporter: xtrsports, Unassigned)

References

Details

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040626 Firefox/0.9.1 Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040626 Firefox/0.9.1 When I write a email. I have a signature made from plain text. I also use Stationery for a background. What i do 1:Open new mail. 2:Get background. 3:indent text(move right)button until it clears picture in stationery. 7 times click 4: start typing This only gives me 33 characters to write before it word wraps back. This only happens when you choose to Indent Text(move right). Text message at (#) This does not change from the original install of Thunderbird 0.7.1 Reproducible: Always Steps to Reproduce: 1.Click Write button. 2.Get Background (stationery) 3.click on the INDENT TEXT (Move right) Button Seven times. Yes Seven time gets past my stationery picture. 4.Start typing. you'll notice that you must type actual words when testing this out do not hold down the keyboard button on one key. Actual Results: Text wrap starts wrapping after 33 characters are typed in. Expected Results: Like to be able to type to the far Right of Compose email Screen then have it Wrap back to the start where I last left my Indent Text(move right).
The problem here is that, under Mail, the so-called "indent" button is actually including the selected block of text in a <blockquote> -- and multiple presses of the "indent" yield multiple nested <blockquote>. And a <blockquote> is styled in such a way that the right-hand margin moves inward just as the left- hand margin does. This is the case with Mozilla MailNews as well; but Composer (the HTML editor) handles that button differently, by increasing the left-margin on the block of text. On the other hand: if your image is "background" why are you trying to get past it? The whole idea of a background image is that the text appears on top of it -- it's supposed to be used for a "watermark" style image, not somethign you actually expect the correspondant to look at. You can work around this by manually setting the margin for the text, but the mail composer does not make this easy. Probably the best way is: 1) After opening the message, Select All (Ctrl-A) and then Insert|HTML 2) Insert <div> tags as follows: <div> <--- <br> </div> <--- [signature] 3) Edit the first <div> tag to add a style with the desired margin: <div style="margin-left: 15em;"> Adjust the "15em" value to taste. 4) Click Insert.
Assignee: mscott → sspitzer
Severity: normal → minor
Status: UNCONFIRMED → NEW
Component: Mail Window Front End → MailNews: Composition
Ever confirmed: true
OS: Windows XP → All
Product: Thunderbird → Core
Hardware: PC → All
Summary: Create new Mail with Signature in Plain Text : Plain text does not wrap correctly → "Indent" button on mail composer nests in <blockquote> rather than actually indenting
Version: unspecified → Trunk
sorry for the spam. making bugzilla reflect reality as I'm not working on these bugs. filter on FOOBARCHEESE to remove these in bulk.
Assignee: sspitzer → nobody
QA Contact: composition
Product: Core → MailNews Core
Six years later and the bug is still there. I would like to have the importance of this bug increased from "minor" to "normal", because of the side effects: first of all the indented right margin, for which the workaround is not easy enough for casual users. And it messes with the white space in the message. If you type two lines of text, separated by a return, and then indent one of the lines, a blank line appears between them that wasn't there before. Things like that. Tested with Thunderbird 3.1.6 and SeaMonkey 2.0.10. SeaMonkey's Composer component has a checkbox "Use CSS styles instead of HTML elements and attributes". Would it be difficult to port such functionality over to the Mail component?

This is just how the core editor works (with or without use css enabled)

Component: Composition → DOM: Editor
Product: MailNews Core → Core

Inserting <blockquote> for each indent command is by design for the editor module because Chrome also behave so. Therefore, we cannot change the behavior.

If mail editor wants to behave differently, e.g., wants to use the CSS mode only for indent command, please post a patch.

Severity: minor → S4
Type: defect → enhancement
Priority: -- → P5

Yes, yes, of course.

Do Chrome users find it satisfactory?

Doug

(In reply to doug.kerr@att.net from comment #7)

Do Chrome users find it satisfactory?

It's not matter. Existing web apps may depend on common behavior of browsers. Therefore, it does not make sense to discard common behavior for any web browsers.

Of course the present behavior of Tbird means that some browsers will not render the text the way the originator sees it in Tbird.

And the present behavior does not seem consistent with the accepted definition of the HTML <blockquote> tag.

Doug

(In reply to doug.kerr@att.net from comment #9)

And the present behavior does not seem consistent with the accepted definition of the HTML <blockquote> tag.

It's also not matter. Browsers should not change existing behavior of editing if the behavior is compatible between browsers. Please be aware, this is now marked as "Core", not "Thunderbird", this means that changing behavior could break web apps in the wild, and it won't be acceptable for Firefox. If Thunderbird needs to change the behavior, contributors of Thunderbird should write a patch which takes special behavior only when the editor instance is a mail editor.

(And I read again comment 1, but it's unclear to me that, if this is just a style issue of <blockquote>, it's out of scope of "Core Editor" because it can be specified with CSS in comm-central, and also I'm confused at comment 5, in CSS mode, only margin-left or margin-right is specified.)

The problem is that some email clients interpret material enclosed in HTML <blockquote> tag pairs as being quoted material (as per the definition), and may display it in some way the designers of that email client this is most suitable for that meaning. That is not necessarily indented, and may include other treatment suitable for that meaning. In one case at least it is displayed only as a link, "Click here to read quoted material".

But when I use the Indent button in the composer of Tbird (which encloses the selected text in <blockquote> tags), I just want the material as displayed for the recipient to be indented (like the button is labeled). I do not want it displayed that way that the recipient's email client displays quoted material. A correspondent whose email client (in his iPhone) does that is not at all amused when I send him messages with paragraphs I intend to be rendered indented. (I often do that for a sort-of-parenthetical paragraph perhaps explaining the material just above.)

Do other applications that use this editor code label the button that does this "Indent", or is it labeled (accurately, but perhaps not usefully) "Quoted"?

As to whether I would specify only a left indent or both left and right indents if encoding the indenting explicitly (as called for by the HTML norms), I am just as glad to have this material only indented on the left. But if the Indent button encoded the passage to be indented some arbitrary amount on both left and right, that would be fine for me as well.

Doug

(In reply to Masayuki Nakano [:masayuki] (he/him)(JST, +0900) from comment #11)

I'm confused at comment 5, in CSS mode, only margin-left or margin-right is specified.)

I'm not sure why it happens (or not). I tried the midas demo, and also for css mode indent results in blockquote being applied, not style changes.

I don't understand all the arguments against making the "Indent text" button apply "indent" encoding.

But would it be possible to relabel the "indent text" button as "quoted material" and have another button that does apply indent encoding?

Having the only available button applying <blockquote> encoding causes a serous problem for several of my correspondents.

Does the CSS concept even need to be involved to use the HTML indent encoding? Can it not just be used "topically"? (Works for me when I hand encode it.)

Doug

This is what I do (manually) when I need to be sure that a recipient's email client will render the paragraph as indented:

    <p style="margin:0px 40px"> When in the course of human events.</p>

Doug

You need to log in before you can comment on or make changes to this bug.