Re: [csswg-drafts] [css-text-3] Hanging spaces can't be scrollable overflow (#4297)

The CSS Working Group just discussed `hanging spaces`, and agreed to the following:

* `RESOLVED: Hanging spaces are ink overflow by default. UAs may make them scrollable overflow when they think that would be useful.`

<details><summary>The full IRC log of that discussion</summary>
&lt;TabAtkins> Topic: hanging spaces<br>
&lt;astearns> GITHUB: https://github.com/w3c/csswg-drafts/issues/4297<br>
&lt;TabAtkins> florian: We've discussed this before - should hanging spaces be scrollable or ink overflow?<br>
&lt;TabAtkins> florian: Conclusion last time was use-cases for both. Generally they're invisible and unnoticeable, invisible things triggering overflow is bad, so generally it should be ink overflow.<br>
&lt;TabAtkins> florian: But when text-editing, it's bad to move your caret into spaces and not see where you are, because there's no scrollbar and the caret is off the viewport.<br>
&lt;TabAtkins> florian: So I think when not-editing always ink, when editing always scrolalble.<br>
&lt;TabAtkins> florian: Some people objected that when not editting, selection still has value for scrollable overflow so you can see the bounds of your selection.<br>
&lt;TabAtkins> florian: So one possibility is to make that simple distinction. Another is to make a switch for it.<br>
&lt;TabAtkins> florian: I think we had general consensus that the switch is useful, but some, maybe emilio, were uncomfortable with this.<br>
&lt;TabAtkins> emilio: I still think it's weird, but...<br>
&lt;TabAtkins> florian: I think my preference is an automatic behavior that switches based on edittability.<br>
&lt;TabAtkins> florian: If we later think there are more situations, we can always add a proeprty *then* that defaults to "auto". I suspect we won't need it, but we're not locked out.<br>
&lt;TabAtkins> fantasai: I think we should define it as ink overflow, but UA *may* treat it as scrollable when the content is editable or UA thinks user would otherwise like to see it.<br>
&lt;TabAtkins> fantasai: So on static pages it'll never make scrollbars.<br>
&lt;TabAtkins> fantasai: But there's an allowance to improve usability on interactive.<br>
&lt;TabAtkins> koji: Do you remember what we did for hanging punctuation?<br>
&lt;TabAtkins> florian: Don't remember, but I think this should apply to both.<br>
&lt;TabAtkins> stantonm: I think we defined hanging punctuation as ink overflow, but I could be wrong.<br>
&lt;TabAtkins> jfkthame: It says "scrollable" at the top of the issue...<br>
&lt;fantasai> "A hanging glyph is still enclosed inside its parent inline box, is still counted as part of the scrollable overflow region [CSS-OVERFLOW-3], and still participates in text justification"<br>
&lt;TabAtkins> florian: Turns out the spec currently says hanging-punct is always scrollable, and there's a Chrome bug showing this is bad (too much scrollbars).<br>
&lt;TabAtkins> astearns: We might want to say it's ink overflow all the time, and respond to editting as we get bugs.<br>
&lt;TabAtkins> florian: For hanging punct, you don't have more than one punct sitting there, it doesn't overflow much anyway. But spaces, you can have a bunch.<br>
&lt;TabAtkins> heycam: When you're editting text, and ws is collapsed, you also don't get the cursor thru those.<br>
&lt;TabAtkins> heycam: So why is it important to cursor thru these?<br>
&lt;TabAtkins> florian: You can still see your caret in that case, it's not offscreen and invisible.<br>
&lt;TabAtkins> heycam: Why not just move the caret to the next line when it would overflow?<br>
&lt;TabAtkins> astearns: It breaks selection, you want to be able to select those.<br>
&lt;TabAtkins> heycam: You can select them, just not in the middle of them.<br>
&lt;TabAtkins> florian: So, scrollable-always breaks things.<br>
&lt;TabAtkins> florian: One option is "always ink"<br>
&lt;TabAtkins> florian: Second is "ink by defalt, UAs can determine when it shoudl be scrollable"<br>
&lt;TabAtkins> florian: Third is "ink when not editable, scrollable when editable"<br>
&lt;TabAtkins> fantasai: I like the second<br>
&lt;TabAtkins> florian: Hard to test, but maybe doesn't need to be tested.<br>
&lt;TabAtkins> florian: I can live with that.<br>
&lt;TabAtkins> astearns: So proposal is "hanging spaces are ink overflow by default, UAs can choose to make them scrollable overflow when it's useful"<br>
&lt;TabAtkins> [discussion about hanging punct]<br>
&lt;TabAtkins> stantonm: Are there implications about underlines?<br>
&lt;TabAtkins> stantonm: In our world (Kindle) we want puncts to hang outside the box, overlap is fine<br>
&lt;TabAtkins> fantasai: They'll still do that, yes.<br>
&lt;TabAtkins> astearns: Objections?<br>
&lt;TabAtkins> RESOLVED: Hanging spaces are ink overflow by default. UAs may make them scrollable overflow when they think that would be useful.<br>
</details>


-- 
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/4297#issuecomment-578172912 using your GitHub account

Received on Friday, 24 January 2020 15:17:45 UTC