Bug 1873074 Comment 6 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

Hmm, so we have this XUL structure:
```html
<div xmlns="http://www.w3.org/1999/xhtml" id="dialogGrid">
  <div id="titleContainer" class="dialogRow titleContainer"><span class="titleIcon"></span><span id="titleCropper"><span id="titleText">bug1873074.bmoattachments.org</span></span></div>
  <div class="dialogRow" id="infoRow">
[...]
    <div id="infoContainer">
      <xul:description xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="infoTitle">The page at https://bug1873074.bmoattachments.org says:</xul:description>
      <xul:description xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="infoBody" context="contentAreaContextMenu" noinitialfocus="true">Hello</xul:description>
    </div>
  </div>
```

Before and after the behavior-change, devtools shows these box sizes:
* `dialogGrid` is 56px tall
* `titleContainer` is 19px tall, and has margin-bottom of 16px (taken from `--grid-padding`)
* `infoRow` is only 5px tall (perhaps having been shrunk), and it also has the same margin-bottom of 16px from `--grid-padding`.
* Its child `infoContainer` is also 5px tall.

After the regression, the innermost `infoBody` element is also 5px tall; whereas before the change, `infoBody` refuses to shrink and is 17px tall (the height of its text).

That element is only a flex item (i.e. its parent `infoContainer` is only a flex container) due to this linux-specific rule:
https://searchfox.org/mozilla-central/rev/9c509b8feb28c1e76ad41e65bf9fd87ef672b00f/toolkit/themes/shared/commonDialog.css#47-52

If I untick the CSS for that rule in devtools, then the element stops getting clipped because it stops being a flex item and stops caring about the shrinkability change from bug 1822131.

So I guess that linux-specific bit of commonDialog.css is partly responsible here and explains why you can't repro on Windows.
Hmm, so we have this XUL structure:
```html
<div xmlns="http://www.w3.org/1999/xhtml" id="dialogGrid">
  <div id="titleContainer" class="dialogRow titleContainer"><span class="titleIcon"></span><span id="titleCropper"><span id="titleText">bug1873074.bmoattachments.org</span></span></div>
  <div class="dialogRow" id="infoRow">
[...]
    <div id="infoContainer">
      <xul:description xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="infoTitle">The page at https://bug1873074.bmoattachments.org says:</xul:description>
      <xul:description xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="infoBody" context="contentAreaContextMenu" noinitialfocus="true">Hello</xul:description>
    </div>
  </div>
```

Before and after the behavior-change, devtools shows these box sizes:
* `dialogGrid` is 56px tall
* `titleContainer` is 19px tall, and has margin-bottom of 16px (taken from `--grid-padding`)
* `infoRow` is only 5px tall (perhaps having been shrunk), and it also has the same margin-bottom of 16px from `--grid-padding`.
* Its child `infoContainer` is also 5px tall.

After the regression, the innermost `infoBody` element is also 5px tall; whereas before the change, `infoBody` refuses to shrink and is 17px tall (the height of its text).

That element is only a flex item (i.e. its parent `infoContainer` is only a flex container) due to this linux-specific rule:
https://searchfox.org/mozilla-central/rev/9c509b8feb28c1e76ad41e65bf9fd87ef672b00f/toolkit/themes/shared/commonDialog.css#47-52

If I untick the CSS for that rule in devtools, then the element stops getting clipped because it stops being a flex item and stops caring about the shrinkability change from bug 1822131.

~So I guess that linux-specific bit of commonDialog.css is partly responsible here and explains why you can't repro on Windows.~ [EDIT: see next comment]
Hmm, so we have this XUL structure:
```html
<div xmlns="http://www.w3.org/1999/xhtml" id="dialogGrid">
  <div id="titleContainer" class="dialogRow titleContainer"><span class="titleIcon"></span><span id="titleCropper"><span id="titleText">bug1873074.bmoattachments.org</span></span></div>
  <div class="dialogRow" id="infoRow">
[...]
    <div id="infoContainer">
[...]
      <xul:description xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" id="infoBody" context="contentAreaContextMenu" noinitialfocus="true">Hello</xul:description>
    </div>
  </div>
```

Before and after the behavior-change, devtools shows these box sizes:
* `dialogGrid` is 56px tall. It has two children, `titleContainer` and `infoRow`, which use up all 56px of this element's height in their margin-boxes. (see  their sizes below, which add up like so: `19px + 16px + 5px + 16px = 56px`)
* `titleContainer` is `19px` tall, and has margin-bottom of `16px` (taken from `--grid-padding`)
* `infoRow` is only `5px` tall (perhaps having been shrunk), and it also has the same margin-bottom of `16px` from `--grid-padding`.
* Its child `infoContainer` is also `5px` tall (filling its meager height entirely).

The behavior difference is for this^ element's child, which is `infoBody`. After the regression, that innermost `infoBody` element is also 5px tall (and clips its text, since it has `overflow-y: auto;`); whereas before the change, `infoBody` refuses to shrink and is 17px tall (the height of its text).

That element is only a flex item (i.e. its parent `infoContainer` is only a flex container) due to this linux-specific rule:
https://searchfox.org/mozilla-central/rev/9c509b8feb28c1e76ad41e65bf9fd87ef672b00f/toolkit/themes/shared/commonDialog.css#47-52

If I untick the CSS for that rule in devtools, then the element stops getting clipped because it stops being a flex item and stops caring about the shrinkability change from bug 1822131.

~So I guess that linux-specific bit of commonDialog.css is partly responsible here and explains why you can't repro on Windows.~ [EDIT: see next comment]

Back to Bug 1873074 Comment 6