Inconsistent internal onebox spacing

When two internal links are added to a topic the spacing between them is inconsistent. If no blank line is between the links the spacing is significantly greater than if a blank line is provided.

https://meta.discourse.org/t/discourse-2-0-0-beta4-release-notes/82446
https://meta.discourse.org/t/discourse-2-0-0-beta5-release-notes/83881
https://meta.discourse.org/t/discourse-2-0-0-beta4-release-notes/82446

https://meta.discourse.org/t/discourse-2-0-0-beta5-release-notes/83881

cc @awesomerobot

7 Likes

Oddly enough, when there’s no line between the two we add a <br> to the markup and when there is a line between the two we don’t.

4 Likes

Hmm, what do you recommend to fix?

Ah, I understand why this happens now (bear with me here)…

If I type:

word
word

…I intentionally put a single carriage return there, so it correctly renders as:

<p>
    word
    <br>
    word
</p>

When I type:

word

word

…this is two returns, so the markup is correctly output as two paragraphs:

<p>
    word
</p>
<p>
    word
</p>

But with oneboxes, we’re treating them as they’re input (two strings with a single carriage return) and not as they’re output (two separate HTML elements)…

For example, when I type:

https://meta.discourse.org/t/discourse-2-0-0-beta4-release-notes/82446
https://meta.discourse.org/t/discourse-2-0-0-beta5-release-notes/83881

…the output is:

<aside>
</aside>
<br>
<aside>
</aside>

This is technically correct for the input. I entered two lines with a carriage return between them… but I was required to put that carriage return there for the oneboxes to exist. We shouldn’t count that carriage return because it’s a prerequisite to generate oneboxes. I’m not doing it for the purpose of creating a new line of text (so there shouldn’t be a <br> there).

When I type:

https://meta.discourse.org/t/discourse-2-0-0-beta4-release-notes/82446

https://meta.discourse.org/t/discourse-2-0-0-beta5-release-notes/83881

…the output is:

<aside>
</aside>
<aside>
</aside>

This would be correct if they were two paragraphs, which is how the text is input, but not how it’s output. We should add a <br> here, because I’m adding a space that doesn’t need to be there (intentionally dividing the content).

10 Likes

Still an issue apparently :slight_smile:

3 Likes

Apologies for bringing this one back up but thought I could piggyback off this topic (instead of starting a new one…)

Im sure this is well known but with the onebox internal link, if it’s expanded it looks good- but by default, the view has no formatting.

Before expanding…

When you expand it looks good.

Unless the OP quotes text, shouldn’t the preview hold the formatting - instead of trying to fit as much text as possible into the box?

Or am I missing something and all this is by design?

Correct, there is no formatting before expansion, because otherwise you couldn’t fit much text in there.

2 Likes

Ah I see, I imagine it’s been that way for a while.

IMHO, from a UI perspective, wouldn’t it be “cleaner” to see what post Im getting into , instead of the scrunched up version.

If the OP of the post wants to highlight specfic text , he can quote and it looks great.

I feel like if they’re linking the post, they may want us to click the post, or at least expand and get some context.

From a pure numbers game, I imagine more people would click or expand a post with proper formatting. Just easier to look at.

Lets not forget the majority of discourse users are not coders or programmers. Seeing text bunched up in a box like that is not something they’re used to seeing.

vs

…again, just an opinion.

1 Like